/* VetriPath, combined design system (Cool blue primary + Amber accent + Sharp corners). Shared across pages. */
:root{
  --ink:#1D293D; --body:#364050; --muted:#6C727E; --line:#E6E8EE; --line2:#D6D9E0;
  --page:#F7F7FB; --card:#fff; --navy:#0B1120;
  --primary:#5B5BEF; --primary-d:#4848E0; --primary-sub:#EAEAFB; --primary-100:#DADAF9;
  --accent:#D97706; --accent-d:#B45309; --accent-bg:#FEF3C7; --accent-soft:#FFFAEC;
  --success:#15935E; --success-bg:#E4F4EC; --danger:#DC2626; --danger-bg:#FEE2E2; --warning:#B45309; --warning-bg:#FEF3C7;
  --r-btn:8px; --r-card:10px; --hl-bg:var(--primary-100);
  --gutter:24px;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;}
/* Offset anchor targets so the sticky header doesn't cover them on jump/scroll. */
[id]{scroll-margin-top:88px;}
.cdetail [id]{scroll-margin-top:140px;}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{font-family:'Inter',system-ui,sans-serif;background:var(--page);color:var(--body);-webkit-font-smoothing:antialiased;line-height:1.6;}
/* Form controls don't inherit font-family by default — force Inter everywhere. */
input,button,select,textarea{font-family:inherit;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{color:var(--ink);letter-spacing:-0.025em;margin:0;line-height:1.12;}
.wrap{width:90%;max-width:1600px;margin:0 auto;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:15px;border-radius:var(--r-btn);padding:13px 22px;cursor:pointer;border:1.5px solid transparent;transition:.15s;white-space:nowrap;font-family:inherit;}
.btn-primary{background:var(--primary);color:#fff;}
.btn-primary:hover{background:var(--primary-d);}
.btn-outline{background:#fff;color:var(--ink);border-color:var(--line2);}
.btn-outline:hover{border-color:var(--primary);color:var(--primary);}
.btn-ghost{background:transparent;color:var(--body);}
.btn-ghost:hover{background:var(--primary-sub);color:var(--primary-d);}
.btn-danger{background:var(--danger);color:#fff;}
.btn-lg{padding:15px 28px;font-size:16px;}
.btn-sm{padding:9px 15px;font-size:13.5px;}
.btn-block{width:100%;}
.btn[disabled]{opacity:.5;pointer-events:none;}

.kicker{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--primary-d);}
.head{max-width:680px;}
.head h2{font-size:clamp(26px,4.5vw,38px);font-weight:900;margin-top:12px;letter-spacing:-.035em;}
.head p{color:var(--muted);font-size:16px;margin:13px 0 0;}
.center{text-align:center;margin-left:auto;margin-right:auto;}
.muted{color:var(--muted);}
.mono{font-family:var(--mono);}

.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;line-height:1.4;white-space:nowrap;}
.badge-primary{background:var(--primary-sub);color:var(--primary-d);}
.badge-accent{background:var(--accent-bg);color:var(--accent-d);}
.badge-success{background:var(--success-bg);color:var(--success);}
.badge-danger{background:var(--danger-bg);color:var(--danger);}
.badge-neutral{background:var(--line);color:var(--body);}

.card{background:var(--card);border:1px solid var(--line2);border-radius:var(--r-card);}

/* header */
header{position:sticky;top:0;z-index:30;background:rgba(247,247,251,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 1px 8px rgba(29,41,61,.04);}
.nav{height:68px;display:flex;align-items:center;gap:18px;}
.nav .logo{height:26px;}
.nav-links{display:none;gap:2px;margin-left:18px;}
.nav-links a{padding:9px 14px;border-radius:8px;font-size:14px;font-weight:600;color:var(--body);cursor:pointer;}
.nav-links a:hover{background:#fff;color:var(--primary);}
.nav-cta{margin-left:auto;}
.menu-btn{margin-left:auto;background:none;border:none;color:var(--ink);cursor:pointer;display:flex;}

/* user menu dropdown (shared header, native <details>) */
.usermenu{position:relative;}
.usermenu>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border:1px solid var(--line2);border-radius:999px;background:#fff;font-size:14px;font-weight:700;color:var(--ink);}
.usermenu>summary::-webkit-details-marker{display:none;}
.usermenu>summary:hover{border-color:var(--primary);}
.usermenu .uav{width:28px;height:28px;border-radius:50%;background:var(--primary-sub);color:var(--primary-d);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;flex:none;}
.usermenu .uname{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.usermenu .umenu{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;background:#fff;border:1px solid var(--line2);border-radius:12px;box-shadow:0 14px 34px rgba(29,41,61,.16);padding:6px;z-index:40;}
.usermenu .umenu a,.usermenu .umenu button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:8px;font-size:14px;font-weight:600;color:var(--body);background:none;border:none;cursor:pointer;text-align:left;}
.usermenu .umenu a:hover,.usermenu .umenu button:hover{background:var(--page);color:var(--primary);}
.usermenu .umenu a svg,.usermenu .umenu button svg{width:16px;height:16px;}
.usermenu .umenu form{margin:4px 0 0;border-top:1px solid var(--line);padding-top:4px;}

/* footer */
footer{background:#fff;border-top:1px solid var(--line);color:var(--muted);}
.foot{display:grid;grid-template-columns:1fr;gap:30px;}
footer .foot{padding-top:50px;padding-bottom:26px;}
footer .lg{height:25px;}
.foot p{font-size:14px;margin:14px 0 0;max-width:300px;line-height:1.7;}
.foot h4{color:var(--ink);font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px;}
.foot a{display:block;font-size:14px;margin-bottom:9px;color:var(--muted);}
.foot a:hover{color:var(--primary);}
.socials{display:flex;gap:10px;margin-top:16px;}
.socials span{width:36px;height:36px;border-radius:8px;background:var(--page);border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;color:var(--body);}
.soc{display:flex;gap:10px;margin-top:18px;}
.soc a{width:38px;height:38px;border-radius:50%;border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;color:var(--muted);margin:0;}
.soc a:hover{color:var(--primary);border-color:var(--primary);}
.soc a svg{width:17px;height:17px;}
.foot .ci{display:flex;gap:9px;align-items:flex-start;font-size:14px;color:var(--muted);margin-bottom:10px;}
.foot .ci svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--primary-d);}
.copy{border-top:1px solid var(--line);padding:18px var(--gutter);text-align:center;font-size:13px;}
.copy .heart{color:#e8553f;}

@media(min-width:880px){
  :root{--gutter:40px;}
  .nav-links{display:flex;}
  .menu-btn{display:none;}
  .foot{grid-template-columns:1.6fr 1fr 1fr;}
}

/* ── Content pages (course catalogue + detail) ── */
.backlink{display:inline-block;color:var(--primary-d);font-weight:700;font-size:13px;text-decoration:none;}
.backlink:hover{text-decoration:underline;}
/* Catalogue filter pills + grid + card (per kit/page-courses.html) */
.cat-grid{display:grid;grid-template-columns:1fr;gap:20px;}
@media(min-width:620px){.cat-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:980px){.cat-grid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1240px){.cat-grid{grid-template-columns:repeat(4,1fr);}}
.mc{border:1px solid var(--line2);border-radius:var(--r-card);overflow:hidden;background:#fff;text-decoration:none;display:flex;flex-direction:column;transition:.15s;}
.mc:hover{border-color:var(--primary);box-shadow:0 10px 24px rgba(29,41,61,.09);transform:translateY(-2px);}
.mc .t{position:relative;aspect-ratio:1/1;background:linear-gradient(135deg,#7E7FF0,#312D84);display:flex;align-items:center;justify-content:center;}
.mc .t .play{width:50px;height:50px;border-radius:50%;background:#fff;color:var(--primary);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(11,17,32,.22);}
.mc .t .tag{position:absolute;top:10px;left:10px;background:#fff;color:var(--ink);font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;}
.mc .t.cs{background:linear-gradient(135deg,#AEB3C2,#515862);}
.mc .t.cs .thumb-img{filter:grayscale(.65) brightness(.92);}
.mc .t .soon{position:absolute;top:10px;right:10px;z-index:1;background:var(--accent);color:#fff;font-size:11px;font-weight:800;padding:4px 10px;border-radius:999px;}
.mc .thumb-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.mc .b{padding:18px;display:flex;flex-direction:column;flex:1;}
.mc h3{font-size:16px;font-weight:800;line-height:1.3;color:var(--ink);margin:0;}
.prow{display:flex;align-items:baseline;gap:10px;margin:16px 0;flex-wrap:wrap;}
.prow .price{font-size:23px;font-weight:900;color:var(--ink);letter-spacing:-.02em;}
.prow .was{font-size:14px;font-weight:700;color:var(--muted);text-decoration:line-through;}
.prow .save{font-size:11.5px;font-weight:800;color:var(--accent-d);background:var(--accent-bg);padding:3px 9px;border-radius:999px;}
.mc .b .btn{margin-top:auto;}
.mc .mcprog{margin:12px 0 4px;}
.mc .mcbar{height:7px;border-radius:99px;background:var(--line);overflow:hidden;}
.mc .mcbar span{display:block;height:100%;background:var(--success);border-radius:99px;transition:width .3s;}
.mc .mcpct{font-size:12px;color:var(--muted);margin-top:7px;margin-bottom:12px;font-weight:600;}
.section-block{border:1px solid var(--line);border-radius:var(--r-card);padding:16px 18px;margin-bottom:12px;background:var(--card);}
.section-title{font-size:15px;font-weight:700;color:var(--ink);margin:0 0 10px;}
.video-list{list-style:none;margin:0;padding:0;}
.video-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);}
.video-row:first-child{border-top:none;}
.video-title{font-size:14px;color:var(--body);}
/* Payment result page (per kit/page-payment.html), scoped under .payresult */
.payresult .pay{display:flex;justify-content:center;padding:48px 0 64px;}
.payresult .rcard{width:100%;max-width:560px;border:1px solid var(--line2);border-radius:var(--r-card);background:#fff;padding:30px;}
.payresult .ptop{display:flex;flex-direction:column;align-items:center;text-align:center;}
.payresult .picon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;margin-bottom:16px;}
.payresult .picon.ok{background:var(--success-bg);color:var(--success);}
.payresult .picon.no{background:var(--danger-bg);color:var(--danger);}
.payresult .status{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;}
.payresult .status.ok{color:var(--success);}
.payresult .status.no{color:var(--danger);}
.payresult .ptop h1{font-size:22px;font-weight:800;letter-spacing:-.02em;line-height:1.25;color:var(--ink);}
.payresult .alert{display:flex;gap:11px;border-radius:var(--r-card);padding:14px 16px;font-size:14px;line-height:1.55;margin-top:22px;}
.payresult .alert i{width:18px;height:18px;flex:none;margin-top:1px;}
.payresult .alert.ok{background:var(--success-bg);color:var(--success);}
.payresult .alert.danger{background:var(--danger-bg);color:var(--danger);}
.payresult .reasons{margin:22px 0 0;}
.payresult .reasons h3{font-size:15px;font-weight:800;color:var(--ink);}
.payresult .reasons ul{margin:12px 0 0;padding-left:20px;color:var(--body);font-size:14px;line-height:1.8;}
.payresult .actions{display:flex;flex-direction:column;gap:10px;margin-top:24px;}
@media(min-width:560px){.payresult .actions{flex-direction:row;}.payresult .actions .btn{flex:1;}}

/* 404 / empty / error states (per kit/page-states.html), scoped under .state */
.state{min-height:calc(100vh - 68px - 320px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px var(--gutter);position:relative;overflow:hidden;}
.state .orb{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;}
.state .o1{top:-120px;right:-60px;width:320px;height:320px;background:radial-gradient(circle,rgba(91,91,239,.14),transparent 70%);}
.state .badge404{font-size:clamp(88px,20vw,150px);font-weight:900;letter-spacing:-.06em;line-height:1;color:var(--primary);position:relative;}
.state .badge404 .mk{height:.62em;display:inline-block;vertical-align:-.06em;margin:0 .02em;}
.state .sicon{width:92px;height:92px;border-radius:22px;display:flex;align-items:center;justify-content:center;margin-bottom:26px;position:relative;}
.state .sicon.err{background:var(--danger-bg);color:var(--danger);}
.state .sicon.emp{background:var(--primary-sub);color:var(--primary-d);}
.state h1{font-size:clamp(26px,4.4vw,34px);font-weight:900;letter-spacing:-.03em;margin-top:24px;position:relative;}
.state p{color:var(--muted);font-size:16px;line-height:1.6;margin:14px 0 28px;max-width:440px;position:relative;}
.sbtns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;position:relative;}

/* Course detail (per kit/page-course.html), scoped under .cdetail */
.cdetail .crumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);font-weight:600;padding:20px 0 0;flex-wrap:wrap;}
.cdetail .crumb a{color:var(--primary-d);}
.cdetail .crumb i{width:14px;height:14px;color:var(--line2);}
.cdetail .detail{padding-top:14px;padding-bottom:56px;}
.cdetail .title h1{font-size:clamp(28px,5vw,40px);font-weight:900;letter-spacing:-.035em;margin:14px 0 0;line-height:1.1;}
.cdetail .meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px;color:var(--muted);font-size:14px;font-weight:600;}
.cdetail .meta span{display:inline-flex;align-items:center;gap:6px;}
.cdetail .meta i{width:16px;height:16px;}
.cdetail .tabs{display:flex;gap:4px;overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-btn);margin-top:30px;position:sticky;top:80px;background:#fff;z-index:10;padding:2px 6px 0;box-shadow:0 6px 16px rgba(29,41,61,.06);}
.cdetail .tabs a{padding:12px 14px;font-size:14px;font-weight:700;color:var(--muted);white-space:nowrap;border-bottom:2px solid transparent;cursor:pointer;text-decoration:none;}
.cdetail .tabs a.on{color:var(--primary-d);border-color:var(--primary);}
/* Sticky in-page nav built from the course's Quick Navigation links */
.cdetail .cnav{display:flex;gap:4px;overflow-x:auto;position:sticky;top:80px;z-index:10;background:#fff;border:1px solid var(--line);border-radius:var(--r-btn);padding:6px;box-shadow:0 6px 16px rgba(29,41,61,.06);margin-top:26px;}
.cdetail .cnav a{padding:8px 14px;font-size:13.5px;font-weight:700;color:var(--muted);white-space:nowrap;border-radius:6px;text-decoration:none;transition:.15s;}
.cdetail .cnav a:hover{background:var(--primary-sub);color:var(--primary-d);}
.cdetail .pcard{border:1px solid var(--line2);border-radius:var(--r-card);overflow:hidden;background:#fff;}
.cdetail .pthumb{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#7E7FF0,#312D84);display:flex;align-items:center;justify-content:center;}
.cdetail .pthumb-img{width:100%;height:100%;object-fit:cover;display:block;}
.cdetail .pthumb .pv{width:100%;height:100%;border:0;display:block;}
.cdetail .pthumb .play{width:58px;height:58px;border-radius:50%;background:#fff;color:var(--primary);display:flex;align-items:center;justify-content:center;}
.cdetail .pthumb .lbl{position:absolute;bottom:10px;left:12px;color:#fff;font-size:12px;font-weight:600;background:rgba(0,0,0,.4);padding:4px 9px;border-radius:6px;}
.cdetail .pbody{padding:20px;}
.cdetail .pprice{display:flex;align-items:baseline;gap:10px;}
.cdetail .pprice b{font-size:30px;font-weight:900;color:var(--ink);letter-spacing:-.02em;}
.cdetail .pprice s{color:var(--muted);font-size:16px;}
.cdetail .pprice .save{font-size:12px;font-weight:800;color:var(--accent-d);background:var(--accent-bg);padding:3px 8px;border-radius:6px;}
.cdetail .pnote{display:flex;align-items:center;justify-content:center;gap:7px;font-size:13px;color:var(--body);font-weight:600;margin-top:14px;}
.cdetail .pnote i{width:16px;height:16px;color:var(--success);}
.cdetail .incl{list-style:none;padding:18px 0 0;margin:16px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:11px;}
.cdetail .incl li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--body);}
.cdetail .incl i{width:18px;height:18px;color:var(--primary);flex:none;}
.cdetail .cc-h2{font-size:clamp(22px,3.4vw,28px);font-weight:800;margin:44px 0 0;}
.cdetail .cc-sum{color:var(--muted);margin:8px 0 0;font-size:14px;font-weight:600;}
.cdetail .acc{border:1px solid var(--line2);border-radius:var(--r-card);overflow:hidden;background:#fff;margin-top:10px;}
.cdetail .acc summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 18px;font-weight:800;color:var(--ink);font-size:15px;}
.cdetail .acc summary::-webkit-details-marker{display:none;}
.cdetail .acc summary .chev{margin-left:auto;color:var(--muted);transition:.2s;width:20px;height:20px;}
.cdetail .acc[open] summary .chev{transform:rotate(180deg);}
.cdetail .acc .les{display:flex;align-items:center;gap:12px;padding:11px 18px;border-top:1px solid var(--line);font-size:14px;color:var(--body);}
.cdetail .acc .les i.li{width:18px;height:18px;color:var(--muted);flex:none;}
.cdetail .acc .les .dur{margin-left:auto;font-family:var(--mono);font-size:12.5px;color:var(--muted);}
.cdetail .only-desktop{display:none;}
@media(min-width:880px){
  .cdetail .only-desktop{display:block;}
  .cdetail .only-mobile{display:none;}
  .cdetail .detail .grid{display:grid;grid-template-columns:minmax(0,1fr) 348px;gap:44px;align-items:start;}
  .cdetail .aside-inner{position:sticky;top:88px;}
}

/* Rendered markdown (course About, legal) */
.prose{color:var(--body);font-size:15px;line-height:1.75;}
.prose h1{font-size:22px;font-weight:800;color:var(--ink);margin:24px 0 10px;letter-spacing:-.02em;}
.prose h2{font-size:19px;font-weight:800;color:var(--ink);margin:26px 0 10px;letter-spacing:-.02em;}
.prose h3{font-size:16px;font-weight:800;color:var(--ink);margin:20px 0 6px;}
.prose h1:first-child,.prose h2:first-child,.prose h3:first-child{margin-top:0;}
.prose p{margin:0 0 12px;}
.prose ul,.prose ol{margin:0 0 14px;padding-left:22px;}
.prose li{margin:6px 0;}
.prose li::marker{color:var(--primary);}
.prose a{color:var(--primary-d);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.prose strong{color:var(--ink);font-weight:700;}
.prose code{background:var(--primary-sub);color:var(--primary-d);padding:2px 6px;border-radius:6px;font-size:.9em;}
.prose blockquote{border-left:3px solid var(--line2);margin:14px 0;padding:2px 0 2px 16px;color:var(--muted);}
.prose hr{border:none;border-top:1px solid var(--line);margin:24px 0;}
/* tables (match the design's table.pl); scroll on narrow screens */
.prose .table-wrap,.prose table{margin:18px 0;}
.prose table{width:100%;border-collapse:collapse;font-size:14px;border:1px solid var(--line2);border-radius:var(--r-card);overflow:hidden;}
.prose thead th{background:var(--primary);color:#fff;text-align:left;padding:11px 14px;font-weight:700;white-space:nowrap;}
.prose th{padding:11px 14px;text-align:left;color:var(--ink);}
.prose td{padding:11px 14px;border-top:1px solid var(--line);color:var(--body);vertical-align:top;}
.prose tbody tr:nth-child(even){background:var(--primary-sub);}

/* Course-detail prose is a touch larger, with divider headings (per design) */
.cdetail .prose{font-size:16px;line-height:1.8;}
.cdetail .prose h2{font-size:clamp(20px,3vw,26px);margin:34px 0 0;padding-bottom:10px;border-bottom:1px solid var(--line);}
.cdetail .prose h3{font-size:18px;margin:24px 0 0;}
.cdetail .prose p{margin:14px 0 0;}

/* Account page (/me), scoped under .acct; .inp/.checkbox/.ok-msg from auth.css */
.acct .tabbar{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:28px;overflow-x:auto;}
.acct .tabbar a{display:flex;align-items:center;gap:8px;padding:12px 14px;font-size:14px;font-weight:700;color:var(--muted);border-bottom:2px solid transparent;white-space:nowrap;}
.acct .tabbar a.on{color:var(--primary-d);border-color:var(--primary);}
.acct .tabbar svg{width:16px;height:16px;}
.acct .panel{border:1px solid var(--line2);border-radius:var(--r-card);background:#fff;padding:26px;}
.acct .avrow{display:flex;align-items:center;gap:16px;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:22px;}
.acct .av{width:64px;height:64px;border-radius:50%;background:var(--primary-sub);color:var(--primary-d);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:26px;flex:none;text-transform:uppercase;}
.acct .avrow .nm{font-size:18px;font-weight:800;color:var(--ink);}
.acct .avrow .em{color:var(--muted);font-size:14px;}
.acct .fgrid{display:grid;grid-template-columns:1fr;gap:18px;}
@media(min-width:720px){.acct .fgrid{grid-template-columns:1fr 1fr;}}
.acct .fl{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:6px;}
.acct .inp.ro{background:var(--page);}
.acct .inp.ro input{color:var(--muted);}
.acct .hint{font-size:12px;color:var(--muted);margin-top:6px;display:flex;align-items:center;gap:8px;}
.acct .orow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);flex-wrap:wrap;}
.acct .orow:first-child{padding-top:0;}
.acct .orow:last-child{border-bottom:none;padding-bottom:0;}
.acct .ot{font-weight:800;color:var(--ink);font-size:15px;}
.acct a.ot:hover{color:var(--primary);}
.acct .om{color:var(--muted);font-size:12.5px;margin-top:4px;}
.acct .oside{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
.acct .oa{color:var(--ink);font-size:15px;}
.acct .ost{font-size:11.5px;font-weight:800;padding:4px 10px;border-radius:999px;}
.acct .st-completed{background:var(--success-bg);color:var(--success);}
.acct .st-pending{background:var(--accent-bg);color:var(--accent-d);}
.acct .st-failed,.acct .st-refunded{background:var(--danger-bg);color:var(--danger);}

/* Purchase-card progress (owners): completed lessons out of total */
.pcard .cprog{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);}
.pcard .cbar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;}
.pcard .cbar span{display:block;height:100%;background:var(--success);border-radius:99px;transition:width .3s;min-width:8px;}
.pcard .cpct{font-size:12.5px;color:var(--muted);margin-top:9px;font-weight:600;text-align:center;}
