/* ============================================================
   Yaaqo Design System v2 — Premium Dark × Glass × Bento
   Generated per UI-UX-Pro-Max methodology (DESIGN_SYSTEM.md)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@600;700;800&family=Inter:wght@400;500;600&display=swap');

:root{
  color-scheme:dark;
  --bg:#0B0B10; --bg-2:#101018;
  --surface:rgba(255,255,255,.045);
  --surface-2:rgba(255,255,255,.07);
  --solid:#15151E; --solid-2:#1A1A26;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.16);
  --txt:#F5F5F7; --mut:#A3A3AF; --dim:#71717F;
  --acc:#FF5C38; --acc-2:#FF8F5A; --gold:#FFC24B;
  --ok:#34D399; --err:#F87171; --info:#7DB8FF;
  --grad:linear-gradient(135deg,#FF5C38 0%,#FF8F5A 100%);
  --glow:0 8px 40px rgba(255,92,56,.35);
  --r-lg:20px; --r-md:14px; --r-sm:10px;
  --font-d:'Sora',system-ui,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;
  --font-b:'Inter',system-ui,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
  --nav-h:64px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--txt);font:15px/1.65 var(--font-b);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-2;
  background:radial-gradient(900px 500px at 85% -10%,rgba(255,92,56,.10),transparent 60%),
             radial-gradient(700px 420px at -10% 25%,rgba(125,184,255,.05),transparent 60%),
             radial-gradient(800px 500px at 50% 110%,rgba(255,194,75,.04),transparent 60%)}
::selection{background:rgba(255,92,56,.35)}
a{color:var(--acc-2);text-decoration:none;transition:color .2s}
a:hover{color:#FFB08A}
img{max-width:100%;display:block}
iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:var(--r-md)}
:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:4px}

/* ---------- top nav ---------- */
.topnav{position:sticky;top:0;z-index:60;height:var(--nav-h);
  display:flex;align-items:center;gap:22px;padding:0 max(20px,4vw);
  background:rgba(11,11,16,.72);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font:800 1.35rem/1 var(--font-d);color:var(--txt);letter-spacing:-.5px}
.brand:hover{color:var(--txt)}
.brand .logo{width:30px;height:30px;border-radius:9px;background:var(--grad);display:grid;place-items:center;
  font:800 15px var(--font-d);color:#fff;box-shadow:var(--glow)}
.topnav nav{display:flex;gap:4px}
.topnav nav a{color:var(--mut);font-weight:500;padding:8px 14px;border-radius:99px;cursor:pointer;transition:.2s}
.topnav nav a:hover{color:var(--txt);background:var(--surface-2)}
.search{flex:1;max-width:360px;position:relative}
.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--dim)}
.search input{width:100%;padding:9.5px 14px 9.5px 38px;border-radius:99px;border:1px solid var(--line);
  background:var(--surface);color:var(--txt);font:500 .92rem var(--font-b);transition:.2s}
.search input:focus{border-color:var(--acc);outline:none;box-shadow:0 0 0 3px rgba(255,92,56,.15)}
.search input::placeholder{color:var(--dim)}
.nav-actions{margin-left:auto;display:flex;gap:10px;align-items:center;flex-shrink:1;min-width:0}
.hero{overflow:hidden}
.hero .aurora{max-width:100vw}
@media(max-width:768px){
  .topnav{flex-wrap:wrap;gap:8px;padding:8px 12px;height:auto;min-height:var(--nav-h)}
  .topnav nav{display:none}
  .search{order:3;max-width:none;flex-basis:100%}
  .nav-actions{margin-left:auto;flex-wrap:nowrap;gap:6px;overflow:hidden}
  .nav-actions .btn{display:none}
  .nav-actions .dd{flex-shrink:0}
  .switcher{max-width:72px;font-size:.7rem;padding:5px 6px}
  .hero{padding:50px 0 30px}
  .hero .aurora{width:100%;left:0;transform:none}
  main{padding:0 14px 70px}
  .grid{grid-template-columns:1fr;padding:0}
  .authbox{margin:30px auto;padding:20px}
  .doc{padding:18px}
  .cols{grid-template-columns:1fr}
  .bento>*{grid-column:span 6}
  .steps{grid-template-columns:1fr}
}
/* custom dropdown (glass panel - full control, no native popup) */
.dd{position:relative}
.dd-btn{display:inline-flex;align-items:center;gap:6px}
.dd-btn:focus-visible{outline:2px solid var(--acc)}
.dd-cur{font-weight:700;letter-spacing:.5px}
.dd-panel{position:absolute;top:calc(100% + 8px);right:0;z-index:80;min-width:190px;max-height:320px;overflow:auto;
  display:none;flex-direction:column;gap:2px;padding:8px;
  background:rgba(21,21,30,.92);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--line-2);border-radius:var(--r-md);
  box-shadow:0 18px 60px rgba(0,0,0,.6)}
.dd.open .dd-panel{display:flex;animation:ddIn .18s var(--ease)}
.dd-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;
  padding:9px 12px;border:none;border-radius:8px;background:transparent;color:var(--txt);
  font:500 .88rem var(--font-b);cursor:pointer;transition:background .15s,color .15s}
.dd-opt:hover,.dd-opt:focus-visible{background:var(--surface-2);color:var(--acc-2);outline:none}
.dd-opt.sel{color:var(--acc);background:rgba(255,92,56,.10)}
.dd-opt.sel::after{content:"✓";font-weight:700;margin-left:auto}
.dd-sub{color:var(--dim);font-size:.8rem}
@keyframes ddIn{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.dd.open .dd-panel{animation:none}}

/* legacy native select fallback (if any remain) */
.switcher{padding:6px 8px;border-radius:9px;border:1px solid var(--line);background:var(--surface);
  color:var(--mut);font:600 .8rem var(--font-b);cursor:pointer;max-width:120px;transition:.2s;
  appearance:none;-webkit-appearance:none}
.switcher:hover{border-color:var(--line-2);color:var(--txt)}
.switcher:focus-visible{outline:2px solid var(--acc)}
.switcher option{background:#15151E;color:#F5F5F7}
@media(max-width:900px){.switcher{max-width:86px;font-size:.72rem}}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:10px 22px;border-radius:99px;border:1px solid var(--line-2);
  background:var(--surface);color:var(--txt);cursor:pointer;
  font:600 .93rem var(--font-b);transition:transform .18s var(--ease),border-color .2s,background .2s,box-shadow .2s;
  overflow:hidden;white-space:nowrap}
.btn:hover{border-color:var(--acc);transform:translateY(-1px);box-shadow:0 4px 20px rgba(255,92,56,.18)}
.btn:active{transform:scale(.97)}
.btn.primary{background:var(--grad);border-color:transparent;color:#fff;box-shadow:var(--glow)}
.btn.primary:hover{filter:brightness(1.08);box-shadow:0 10px 44px rgba(255,92,56,.45)}
.btn.primary::after{content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.35) 50%,transparent 60%);
  transform:translateX(-120%);transition:transform .6s var(--ease)}
.btn.primary:hover::after{transform:translateX(120%)}
.btn.ghost{background:transparent;border-color:var(--line)}
.btn.sm{padding:6px 14px;font-size:.85rem}
.btn.lg{padding:14px 30px;font-size:1rem}
.btn[disabled]{opacity:.4;cursor:not-allowed;transform:none!important}

/* ---------- layout ---------- */
main{max-width:1200px;margin:0 auto;padding:0 max(20px,4vw) 90px}
.hero{position:relative;text-align:center;padding:110px 0 70px;overflow:visible}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:99px;
  border:1px solid var(--line-2);background:var(--surface);color:var(--mut);font:500 .82rem var(--font-b);
  margin-bottom:26px;animation:rise .7s var(--ease) both}
.hero .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--ok);animation:pulse 2s infinite}
.hero h1{font:800 clamp(2.5rem,7vw,4.6rem)/1.06 var(--font-d);letter-spacing:-2px;
  background:linear-gradient(180deg,#fff 30%,#C9C9D4);-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:rise .7s .08s var(--ease) both}
.hero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .sub{max-width:640px;margin:22px auto 0;color:var(--mut);font-size:1.12rem;
  animation:rise .7s .16s var(--ease) both}
.hero .cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:38px;
  animation:rise .7s .24s var(--ease) both}
.hero .aurora{position:absolute;top:-140px;left:50%;transform:translateX(-50%);width:820px;height:420px;z-index:-1;
  background:radial-gradient(closest-side,rgba(255,92,56,.16),transparent 70%);
  filter:blur(38px);animation:breathe 12s ease-in-out infinite;pointer-events:none}
.hero.small{text-align:left;padding:56px 0 30px}
.hero.small .aurora{left:10%;width:520px;height:300px}

/* ---------- sections ---------- */
section{padding:44px 0}
h2.sec{font:700 clamp(1.5rem,3.4vw,2.2rem)/1.2 var(--font-d);letter-spacing:-.8px;margin-bottom:6px}
.sec-sub{color:var(--mut);margin-bottom:26px}

/* ---------- bento grid ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}
.bento>*{min-width:0}
.b-3{grid-column:span 3}.b-2{grid-column:span 2}.b-4{grid-column:span 4}.b-6{grid-column:span 6}
@media(max-width:980px){.b-3,.b-2,.b-4{grid-column:span 6}}

/* ---------- glass cards ---------- */
.card{position:relative;display:flex;flex-direction:column;gap:8px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px;color:var(--txt);backdrop-filter:blur(8px);
  transition:transform .28s var(--ease),border-color .28s,box-shadow .28s;
  animation:rise .6s var(--ease) both}
.card:hover{transform:translateY(-4px);border-color:var(--line-2);
  box-shadow:0 14px 44px rgba(0,0,0,.45),0 0 0 1px rgba(255,92,56,.14),0 8px 30px rgba(255,92,56,.10)}
a.card:hover{text-decoration:none}
.card h3{font:700 1.08rem/1.3 var(--font-d);letter-spacing:-.3px}
.card .meta{display:flex;align-items:center;gap:8px;color:var(--mut);font-size:.84rem}
.card p{color:#C4C4CE;font-size:.92rem}
.card.locked{opacity:.8}
.card .thumb{border-radius:var(--r-md);margin:-6px -6px 6px;aspect-ratio:16/9;overflow:hidden;
  background:linear-gradient(135deg,var(--solid-2),var(--solid));display:grid;place-items:center;color:var(--dim)}
.badge{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;
  background:rgba(255,194,75,.12);color:var(--gold);border:1px solid rgba(255,194,75,.25);
  font:600 .72rem/1 var(--font-b);letter-spacing:.4px;padding:5px 12px;border-radius:99px;
  text-transform:uppercase;flex-wrap:wrap}
.badge.hot{background:rgba(255,92,56,.12);color:var(--acc-2);border-color:rgba(255,92,56,.3)}
.badge.ok{background:rgba(52,211,153,.1);color:var(--ok);border-color:rgba(52,211,153,.25)}
.badge.err{background:rgba(248,113,113,.1);color:var(--err);border-color:rgba(248,113,113,.3)}

/* ---------- steps / value props ---------- */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;counter-reset:step}
.step{counter-increment:step;position:relative;padding:26px 22px 22px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  animation:rise .6s var(--ease) both}
.step::before{content:"0" counter(step);position:absolute;top:18px;right:20px;
  font:800 2.2rem/1 var(--font-d);color:rgba(255,255,255,.06);letter-spacing:-1px}
.step .icon{width:46px;height:46px;border-radius:13px;background:rgba(255,92,56,.12);
  display:grid;place-items:center;color:var(--acc);margin-bottom:16px}
.step h3{font:700 1.02rem var(--font-d);margin-bottom:6px}
.step p{color:var(--mut);font-size:.92rem}

/* ---------- tiers ---------- */
.tiers{display:flex;flex-direction:column;gap:14px}
.tier{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:22px;transition:.25s var(--ease)}
.tier:hover{border-color:rgba(255,194,75,.35)}
.tier .price{display:flex;align-items:baseline;gap:6px;margin-bottom:8px}
.tier .price strong{font:800 2rem/1 var(--font-d);letter-spacing:-1px;color:var(--gold)}
.tier .price span{color:var(--dim);font-size:.88rem}
.tier p{color:var(--mut);font-size:.92rem;margin-bottom:14px}

/* ---------- posts ---------- */
.post{max-width:760px;margin:0 auto;animation:rise .5s var(--ease) both}
.post h1{font:700 clamp(1.6rem,4vw,2.4rem)/1.2 var(--font-d);letter-spacing:-1px;margin-bottom:10px}
.post .meta{display:flex;align-items:center;gap:10px;color:var(--mut);font-size:.9rem;margin-bottom:22px}
.postbody{white-space:pre-wrap;color:#D8D8E0;line-height:1.75}
.post-actions{display:flex;gap:10px;margin-top:32px}
.lockbox{position:relative;text-align:center;background:var(--surface);border:1px dashed var(--line-2);
  border-radius:var(--r-lg);padding:56px 28px;margin-top:22px;overflow:hidden}
.lockbox .icon{width:56px;height:56px;margin:0 auto 16px;border-radius:16px;
  background:rgba(255,194,75,.1);display:grid;place-items:center;color:var(--gold)}
.lockbox h2{font:700 1.3rem var(--font-d)}
.lockbox p{color:var(--mut);margin-top:8px}

/* ---------- auth ---------- */
.authbox{max-width:400px;margin:70px auto;position:relative;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:36px;backdrop-filter:blur(10px);animation:rise .5s var(--ease) both}
.authbox::before{content:"";position:absolute;top:-1px;left:24px;right:24px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,92,56,.6),transparent)}
.authbox h1{font:700 1.5rem var(--font-d);margin-bottom:4px}
.authbox .hint{color:var(--dim);font-size:.86rem;margin-bottom:22px}
.authbox input{width:100%;padding:12px 15px;margin-bottom:12px;border-radius:var(--r-md);
  border:1px solid var(--line);background:rgba(0,0,0,.25);color:var(--txt);
  font:500 .95rem var(--font-b);transition:.2s}
.authbox input:focus{border-color:var(--acc);outline:none;box-shadow:0 0 0 3px rgba(255,92,56,.15)}
.authbox .alt{margin-top:16px;font-size:.9rem;color:var(--mut);text-align:center}

/* ---------- tables ---------- */
.tblwrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}
.tbl{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px}
.tbl th{text-align:left;color:var(--dim);font:600 .74rem/1 var(--font-b);text-transform:uppercase;
  letter-spacing:.8px;padding:14px 16px;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl td{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:none}
.tbl tbody tr{transition:background .15s}
.tbl tbody tr:hover{background:var(--surface-2)}

/* ---------- shop / product ---------- */
.product .buy{display:flex;gap:8px;margin-top:14px}
.product .variant{flex:1;min-width:0;padding:9px 12px;border-radius:var(--r-sm);border:1px solid var(--line);
  background:rgba(0,0,0,.25);color:var(--txt);font:500 .88rem var(--font-b);cursor:pointer}
.product .price{font:700 1.3rem var(--font-d);color:var(--gold)}
.cartfoot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;
  padding:18px 0;position:sticky;bottom:0;background:rgba(11,11,16,.85);backdrop-filter:blur(12px);
  border-top:1px solid var(--line);margin-top:16px}

/* ---------- docs ---------- */
.doc{max-width:780px;margin:0 auto;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-lg);padding:38px;animation:rise .5s var(--ease) both}
.doc h1{font:700 1.9rem var(--font-d);letter-spacing:-.8px;margin:6px 0 14px}
.doc h2{font:700 1.25rem var(--font-d);color:var(--acc-2);margin:26px 0 10px;display:flex;align-items:center;gap:10px}
.doc h3{font:600 1.05rem var(--font-d);margin:18px 0 8px}
.doc p{color:#C9C9D3;margin:10px 0}
.doc ul{margin:12px 0 12px 4px;list-style:none}
.doc li{position:relative;padding-left:26px;margin:8px 0;color:#C9C9D3}
.doc li::before{content:"";position:absolute;left:4px;top:.62em;width:8px;height:8px;border-radius:3px;
  background:var(--grad)}
.doc code{background:rgba(0,0,0,.35);border:1px solid var(--line);padding:2px 8px;border-radius:6px;
  font:500 .86rem ui-monospace,'Cascadia Code',Consolas,monospace;color:var(--gold)}

/* ---------- account ---------- */
.cols{display:grid;grid-template-columns:1.9fr 1.1fr;gap:28px}
@media(max-width:900px){.cols{grid-template-columns:1fr}}
.stat{display:flex;align-items:center;gap:14px;padding:18px;border-radius:var(--r-md);
  background:var(--surface);border:1px solid var(--line)}
.stat .n{font:800 1.6rem/1 var(--font-d);letter-spacing:-.5px}
.stat .l{color:var(--dim);font-size:.8rem;text-transform:uppercase;letter-spacing:.6px}

/* ---------- admin ---------- */
.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}
.admin-side{position:sticky;top:0;height:100vh;padding:22px 14px;border-right:1px solid var(--line);
  background:var(--bg-2);display:flex;flex-direction:column;gap:4px}
.admin-side .brand{margin:0 8px 22px}
.admin-side a{display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:var(--r-sm);
  color:var(--mut);font:500 .92rem var(--font-b);cursor:pointer;transition:.18s}
.admin-side a:hover,.admin-side a.on{color:var(--txt);background:var(--surface-2)}
.admin-side a.on{box-shadow:inset 2px 0 0 var(--acc)}
.admin-main{padding:30px max(24px,3.5vw);min-width:0}
.admin-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:26px}
.admin-head h1{font:700 1.5rem var(--font-d);letter-spacing:-.5px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:28px}
.kpi{position:relative;overflow:hidden;padding:22px;border-radius:var(--r-lg);
  background:var(--surface);border:1px solid var(--line)}
.kpi::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(255,92,56,.14),transparent)}
.kpi .n{font:800 2.1rem/1 var(--font-d);letter-spacing:-1px;margin:10px 0 4px}
.kpi .l{color:var(--dim);font:600 .76rem/1 var(--font-b);text-transform:uppercase;letter-spacing:.8px}
.kpi.gold .n{color:var(--gold)}
.kpi.ok .n{color:var(--ok)}
.row-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.admin-side{position:static;height:auto;flex-direction:row;overflow-x:auto;padding:12px}.admin-side .brand{display:none}.admin-side a{white-space:nowrap}}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--line);margin-top:40px;padding:34px max(20px,4vw);
  display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;color:var(--dim);font-size:.9rem}
.foot nav{display:flex;gap:18px;flex-wrap:wrap}
.foot a{color:var(--mut)}.foot a:hover{color:var(--txt)}

/* ---------- feedback ---------- */
.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);z-index:99;
  display:flex;align-items:center;gap:10px;padding:13px 22px;border-radius:var(--r-md);
  background:var(--solid-2);border:1px solid var(--line-2);color:var(--txt);
  box-shadow:0 14px 50px rgba(0,0,0,.5);opacity:0;animation:toastIn .35s var(--ease) forwards}
.toast.err{border-color:rgba(248,113,113,.4)}
@keyframes toastIn{to{opacity:1;transform:translateX(-50%) translateY(0)}}
.empty{display:grid;place-items:center;gap:12px;padding:60px 20px;text-align:center;color:var(--mut)}
.empty svg{opacity:.35}
.skeleton{border-radius:var(--r-md);background:linear-gradient(100deg,var(--solid) 40%,var(--solid-2) 50%,var(--solid) 60%);
  background-size:200% 100%;animation:shimmer 1.4s infinite}
@keyframes shimmer{to{background-position:-200% 0}}
.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--acc);
  animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- animations ---------- */
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes breathe{0%,100%{opacity:.7;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.12)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;
    transition-duration:.001s!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
  .hero .aurora{animation:none}
}

/* ---------- responsive ---------- */
@media(max-width:768px){
  .topnav{gap:12px}
  .topnav nav{display:none}
  .search{max-width:none}
  .hero{padding:70px 0 40px}
  .grid{grid-template-columns:1fr}
  .authbox{margin:40px auto;padding:26px}
  .doc{padding:24px}
}

/* ============================================================
   v2.5 design enhancement layer — visual hierarchy & polish
   (appended; all v2 selectors preserved)
   ============================================================ */

/* live pill breathing animation */
.live-dot{animation:livePulse 1.6s ease-in-out infinite}
@keyframes livePulse{0%,100%{box-shadow:0 0 0 0 rgba(225,29,72,.5)}50%{box-shadow:0 0 0 6px rgba(225,29,72,0)}}
@media (prefers-reduced-motion: reduce){.live-dot{animation:none}}

/* card: media zoom + gradient border glow on hover */
.card .thumb{overflow:hidden}
.card .thumb svg{transition:transform .45s var(--ease)}
.card:hover .thumb svg{transform:scale(1.12)}
.card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(135deg,rgba(255,92,56,.08),transparent 45%);opacity:0;transition:opacity .3s}
.card:hover::after{opacity:1}

/* section titles: gradient bar prefix */
.sec{display:flex;align-items:center;gap:10px}
.sec::before{content:"";width:4px;height:1.05em;border-radius:2px;background:var(--grad);flex-shrink:0}

/* post body typography upgrade */
.postbody{font-size:1.02rem;line-height:1.85;color:#D6D6DE}
.postbody a{text-decoration:underline;text-decoration-color:rgba(255,143,90,.4);text-underline-offset:3px}
.postbody a:hover{text-decoration-color:var(--acc-2)}
.postbody strong{color:var(--txt)}

/* studio container + chart */
.studio-wrap{max-width:980px;margin:0 auto;padding:0 18px 60px}
.chart{display:flex;align-items:flex-end;gap:3px;height:96px;padding:6px 4px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}
.chart div{transition:filter .2s}
.chart div:hover{filter:brightness(1.35)}

/* buttons: subtle size hierarchy */
.btn.sm{padding:6px 14px;font-size:.82rem}
.btn.lg{padding:14px 30px;font-size:1.02rem}

/* hero sub + eyebrow polish */
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:99px;
  background:var(--surface);border:1px solid var(--line);color:var(--mut);font:600 .8rem var(--font-b)}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 12px var(--acc)}

/* tables: first-column emphasis + hover cursor */
.tbl td:first-child{color:var(--txt);font-weight:500}
.tbl tbody tr{cursor:default}

/* skeleton shimmer utility */
.skel{position:relative;overflow:hidden;background:var(--solid-2);border-radius:var(--r-md);min-height:60px}
.skel::after{content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);animation:skel 1.4s infinite}
@keyframes skel{to{transform:translateX(100%)}}
@media (prefers-reduced-motion: reduce){.skel::after{animation:none}}

/* images in post cards: fixed ratio, cover */
.card img{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-md)}

/* focus ring consistency for inputs */
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--acc);outline-offset:0;border-color:var(--acc)}

/* studio/kpi number gradient text */
.kpi .n{background:linear-gradient(135deg,#fff 30%,#B9B9C6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
