/* ============================================================================
   DASHSUPPORT.TEAM — THE SOFT REBUILD
   Neumorphic · Elegant · Less is more. The Apple of crypto deserves porcelain.
   THESIS: complexity is the enemy of adoption. Every surface here is calm,
   sculpted, and quiet — and the one thing that matters glows.
   Light = porcelain daylight (default). Dark = graphite night. One electric
   cyan current, spent only where attention belongs.
   ============================================================================ */
:root{
  /* PORCELAIN — the daylight material */
  --bg:#E6EAF1;
  --bg-2:#EBEFF5;
  --surface:#EEF2F8;
  --ink:#182335;
  --ink-2:#2A3A52;
  --muted:#35465F;
  --accent:#0A5AA0;          /* headline accent — ink-safe blue */
  --link:#08497E;            /* body links — deeper still */
  --dash:#008CE7;            /* the Dash blue — fills, never small text */
  --cyan:#00C2E0;            /* the electric current — glow, never text */
  --glow:rgba(0,194,224,.5);
  --glow-soft:rgba(0,194,224,.22);
  --hi:rgba(255,255,255,.92);            /* neumorphic top-light */
  --lo:rgba(146,161,187,.44);            /* neumorphic under-shadow */
  --lo-2:rgba(146,161,187,.28);
  --raise:-8px -8px 20px var(--hi), 10px 10px 26px var(--lo);
  --raise-sm:-5px -5px 12px var(--hi), 6px 6px 16px var(--lo-2);
  --well:inset 5px 5px 12px var(--lo), inset -5px -5px 12px var(--hi);
  --well-sm:inset 3px 3px 8px var(--lo-2), inset -3px -3px 8px var(--hi);
  --line:rgba(24,35,53,.08);
  --maxw:1060px;
  --col:760px;
  --ease:cubic-bezier(.22,1,.36,1);
  --r:26px;
  --r-lg:34px;
}
[data-theme="dark"]{
  /* GRAPHITE NIGHT — soft, never black */
  --bg:#22262C;
  --bg-2:#1F2329;
  --surface:#262B32;
  --ink:#F2F5F9;
  --ink-2:#D9E0E9;
  --muted:#C3CDDA;
  --accent:#7BE3EA;
  --link:#7CC4FF;
  --cyan:#22D3EE;
  --glow:rgba(34,211,238,.55);
  --glow-soft:rgba(34,211,238,.2);
  --hi:rgba(255,255,255,.05);
  --lo:rgba(0,0,0,.55);
  --lo-2:rgba(0,0,0,.4);
  --raise:-6px -6px 16px var(--hi), 9px 9px 22px var(--lo);
  --raise-sm:-4px -4px 10px var(--hi), 6px 6px 14px var(--lo-2);
  --well:inset 5px 5px 12px var(--lo), inset -4px -4px 10px var(--hi);
  --well-sm:inset 3px 3px 8px var(--lo-2), inset -3px -3px 8px var(--hi);
  --line:rgba(220,232,245,.09);
}

/* ---------- base ---------- */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Inter','Sora',system-ui,-apple-system,sans-serif;
  background:var(--bg);color:var(--ink);font-size:18px;line-height:1.7;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  transition:background .6s var(--ease),color .6s var(--ease);
}
h1,h2,h3,.pill,.brand,.tagline,.mini-k{font-family:'Sora',system-ui,sans-serif}
::selection{background:rgba(0,140,231,.22);color:var(--ink)}
a{color:inherit}
[id]{scroll-margin-top:110px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--dash);outline-offset:4px;border-radius:10px}
img{max-width:100%}

/* ---------- layout & breath ---------- */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.col{max-width:var(--col);margin-left:auto;margin-right:auto}
section{padding:clamp(90px,14vh,170px) 0;position:relative}
.breath{padding:clamp(60px,9vh,120px) 0}
main{position:relative;z-index:2}

/* ---------- the quiet backdrop: one soft light, one whisper of current ---------- */
.sky{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(90% 60% at 50% -10%,rgba(0,140,231,.07),transparent 60%),
             radial-gradient(70% 50% at 85% 110%,rgba(0,194,224,.06),transparent 55%)}
[data-theme="dark"] .sky{
  background:radial-gradient(90% 60% at 50% -10%,rgba(34,211,238,.05),transparent 60%),
             radial-gradient(70% 50% at 85% 110%,rgba(0,140,231,.05),transparent 55%)}

/* ---------- nav: one floating porcelain pill ---------- */
nav{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:50;
  display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:100px;
  background:var(--bg-2);box-shadow:var(--raise-sm);max-width:calc(100vw - 24px);
  transition:box-shadow .5s var(--ease),background .6s var(--ease)}
.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:12.5px;letter-spacing:.1em;
  text-decoration:none;color:var(--ink);padding:6px 8px 6px 6px;border-radius:100px;flex:none}
.brand .mark{width:30px;height:30px;display:block}
.brand .tx{font-weight:400;color:var(--ink-2)}
.nav-links{display:flex;align-items:center;gap:2px}
.nav-links a.l{font-size:13.5px;font-weight:600;letter-spacing:.02em;color:var(--ink-2);text-decoration:none;
  padding:9px 13px;border-radius:100px;transition:color .3s,box-shadow .3s,background .3s}
.nav-links a.l:hover{color:var(--ink)}
.nav-links a.l.on{color:var(--ink);box-shadow:var(--well-sm);background:var(--bg)}
.nav-links a.cta{font-size:13px;font-weight:700;color:#fff;text-decoration:none;padding:10px 17px;border-radius:100px;
  background:linear-gradient(145deg,#19A4F5,#0074C2);
  box-shadow:0 8px 20px -8px rgba(0,140,231,.65),inset 0 1px 0 rgba(255,255,255,.35);
  transition:transform .3s var(--ease),box-shadow .3s}
.nav-links a.cta:hover{transform:translateY(-1px)}
.nav-links a.cta:active{transform:translateY(1px)}
.nav-toggle{display:none;width:42px;height:42px;border:0;background:var(--bg);cursor:pointer;border-radius:50%;
  box-shadow:var(--raise-sm);position:relative;color:var(--ink);flex:none}
.nav-toggle span{position:absolute;left:12px;right:12px;height:2px;border-radius:2px;background:currentColor;top:50%;
  transition:transform .4s var(--ease),opacity .3s}
.nav-toggle span:nth-child(1){transform:translateY(-5px)}
.nav-toggle span:nth-child(3){transform:translateY(5px)}
nav.open .nav-toggle span:nth-child(1){transform:rotate(45deg)}
nav.open .nav-toggle span:nth-child(2){opacity:0}
nav.open .nav-toggle span:nth-child(3){transform:rotate(-45deg)}
.nav-scrim{position:fixed;inset:0;z-index:38;background:rgba(20,26,36,.4);opacity:0;pointer-events:none;transition:opacity .4s}
body.nav-open .nav-scrim{opacity:1;pointer-events:auto}

/* the mode switch — a real neumorphic toggle, sun to moon */
.mode-toggle{width:58px;height:32px;border:0;border-radius:100px;cursor:pointer;flex:none;position:relative;
  background:var(--bg);box-shadow:var(--well-sm);transition:background .5s;padding:0;margin-left:4px}
.mode-toggle .knob{position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;
  background:linear-gradient(145deg,#FFFFFF,#DDE4EE);box-shadow:2px 2px 6px rgba(120,136,160,.5);
  display:flex;align-items:center;justify-content:center;color:#0A5AA0;
  transition:transform .45s var(--ease),background .5s,color .5s}
[data-theme="dark"] .mode-toggle .knob{transform:translateX(26px);background:linear-gradient(145deg,#2E343C,#22262C);color:#7BE3EA;box-shadow:2px 2px 6px rgba(0,0,0,.6)}
.mode-toggle svg{width:15px;height:15px}
.mode-toggle .ic-sun{display:block}
.mode-toggle .ic-moon{display:none}
[data-theme="dark"] .mode-toggle .ic-sun{display:none}
[data-theme="dark"] .mode-toggle .ic-moon{display:block}

/* ---------- type scale — few words, let them land ---------- */
h1{font-size:clamp(40px,7vw,74px);font-weight:800;line-height:1.02;letter-spacing:-.03em;color:var(--ink)}
h1 em,h2 em{font-style:normal;color:var(--accent)}
h2{font-size:clamp(30px,4.6vw,48px);font-weight:700;line-height:1.08;letter-spacing:-.024em;color:var(--ink)}
h3{font-size:21px;font-weight:700;letter-spacing:-.012em;color:var(--ink)}
.tagline{font-size:clamp(16px,2.2vw,21px);font-weight:600;color:var(--accent);letter-spacing:.005em;line-height:1.5}
.lede{font-size:clamp(17px,2vw,20px);color:var(--ink-2);line-height:1.75;font-weight:400}
.mini-k{font-size:12px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--accent);
  display:inline-flex;align-items:center;gap:10px}
.mini-k .cur{width:30px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--dash),var(--cyan));
  background-size:200% 100%;animation:current 3.2s linear infinite}
@keyframes current{from{background-position:0% 0}to{background-position:200% 0}}
.center{text-align:center}
.center .mini-k{justify-content:center}
.statement{font-size:clamp(24px,4vw,40px);font-weight:300;line-height:1.25;letter-spacing:-.018em;color:var(--ink);text-align:center}
.statement b,.statement strong{font-weight:700;color:var(--accent)}
.whisper{font-size:15px;color:var(--muted);letter-spacing:.02em;text-align:center}

/* ---------- the sculpted material ---------- */
.neu{background:var(--surface);border-radius:var(--r);box-shadow:var(--raise);
  transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.neu-sm{background:var(--surface);border-radius:20px;box-shadow:var(--raise-sm);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.neu-in{background:var(--bg);border-radius:20px;box-shadow:var(--well)}
a.neu,a.neu-sm{text-decoration:none;display:block}
.neu:hover,a.neu-sm:hover{transform:translateY(-4px)}
.neu:active,a.neu-sm:active{transform:translateY(1px);box-shadow:var(--raise-sm)}

/* THE AURA — the one charged thing on each page breathes with current */
.aura{box-shadow:var(--raise),0 0 0 1px var(--glow-soft),0 0 40px -8px var(--glow);
  animation:auraBreath 4.2s var(--ease) infinite}
@keyframes auraBreath{
  0%,100%{box-shadow:var(--raise),0 0 0 1px var(--glow-soft),0 0 34px -10px var(--glow)}
  50%{box-shadow:var(--raise),0 0 0 1px var(--glow-soft),0 0 58px -8px var(--glow)}}

/* ---------- pills (buttons) — raised invitation, inset commitment ---------- */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 30px;
  border-radius:100px;border:0;cursor:pointer;text-decoration:none;font-family:'Sora';font-size:15px;font-weight:700;
  letter-spacing:.01em;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.pill:active{transform:translateY(1px) scale(.985)}
.pill-primary{color:#fff;background:linear-gradient(145deg,#19A4F5,#0074C2);
  box-shadow:0 14px 30px -10px rgba(0,140,231,.7),inset 0 1px 0 rgba(255,255,255,.4)}
.pill-primary:hover{transform:translateY(-2px);box-shadow:0 20px 40px -12px rgba(0,140,231,.85),inset 0 1px 0 rgba(255,255,255,.4)}
.pill-soft{color:var(--ink);background:var(--surface);box-shadow:var(--raise-sm)}
.pill-soft:hover{transform:translateY(-2px);color:var(--accent)}
.pill svg{width:19px;height:19px;flex:none}
.cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.chip{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent);background:var(--bg);
  box-shadow:var(--well-sm);border-radius:100px;padding:8px 15px}

/* ---------- hero ---------- */
.hero{min-height:88svh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:130px 24px 70px;position:relative}
.hero .emblem{width:clamp(120px,22vw,168px);margin-bottom:26px;filter:drop-shadow(0 14px 30px rgba(0,140,231,.3))}
.hero h1{margin:14px 0 16px}
.hero .tagline{max-width:640px;margin:0 auto}
.hero .cta-row{margin-top:42px}
.scrollcue{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:30px;height:48px;border-radius:100px;
  box-shadow:var(--well-sm);display:flex;justify-content:center;padding-top:9px}
.scrollcue i{width:4px;height:9px;border-radius:4px;background:var(--cyan);animation:cueDrop 2.4s var(--ease) infinite}
@keyframes cueDrop{0%{transform:translateY(0);opacity:0}25%{opacity:1}70%{opacity:1}100%{transform:translateY(18px);opacity:0}}

/* ---------- reveals — a soft rise, then stillness ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* ---------- team grid (the five doors) ---------- */
.teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;margin-top:14px}
.team{padding:30px 24px;text-align:center;color:inherit}
.team .t-ic{width:54px;height:54px;margin:0 auto 16px;border-radius:50%;background:var(--bg);box-shadow:var(--well-sm);
  display:flex;align-items:center;justify-content:center;color:var(--accent);transition:color .4s,box-shadow .4s}
.team:hover .t-ic{color:var(--cyan);box-shadow:var(--well-sm),0 0 24px -6px var(--glow)}
.team .t-ic svg{width:24px;height:24px}
.team h3{font-size:18px;margin-bottom:6px}
.team p{font-size:14px;color:var(--muted);line-height:1.55}
.team .t-go{display:inline-block;margin-top:12px;font-size:13px;font-weight:700;color:var(--accent)}

/* ---------- trio cards (the standard page card) ---------- */
.trio{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
.tcard{padding:34px 30px;text-align:center}
.tcard h3{margin-bottom:10px}
.tcard p{font-size:15.5px;color:var(--ink-2);line-height:1.65}
.tcard .t-ic{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;background:var(--bg);box-shadow:var(--well-sm);
  display:flex;align-items:center;justify-content:center;color:var(--accent)}
.tcard .t-ic svg{width:26px;height:26px}

/* ---------- FAQ — Demystified ---------- */
.faq-search{width:100%;font-family:inherit;font-size:16px;color:var(--ink);border:0;border-radius:100px;
  padding:16px 24px;outline:none;background:var(--bg);box-shadow:var(--well)}
.faq-search::placeholder{color:var(--muted)}
.faq{margin-top:26px}
.qa{background:var(--surface);border-radius:20px;box-shadow:var(--raise-sm);margin-bottom:14px;overflow:hidden;
  transition:box-shadow .4s var(--ease)}
.qa.open{box-shadow:var(--raise-sm),0 0 30px -10px var(--glow)}
.qa button{width:100%;background:none;border:0;color:var(--ink);font-family:'Sora';cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 24px;text-align:left;
  font-size:16.5px;font-weight:600;transition:color .3s}
.qa button:hover{color:var(--accent)}
.qa .sign-pm{flex:none;width:30px;height:30px;border-radius:50%;background:var(--bg);box-shadow:var(--well-sm);position:relative}
.qa .sign-pm::before,.qa .sign-pm::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  background:var(--accent);transition:.4s var(--ease)}
.qa .sign-pm::before{width:12px;height:2px}
.qa .sign-pm::after{width:2px;height:12px}
.qa.open .sign-pm::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.qa .ans{max-height:0;opacity:0;transition:max-height .5s var(--ease),opacity .5s,padding .5s;padding:0 24px}
.qa.open .ans{max-height:600px;opacity:1;padding:0 24px 22px}
.qa .ans p{font-size:15.5px;color:var(--ink-2);line-height:1.7}
.qa .ans a{color:var(--link);text-decoration:none;border-bottom:1px solid rgba(8,73,126,.3)}
[data-theme="dark"] .qa .ans a{border-bottom-color:rgba(124,196,255,.35)}
.faq-empty{display:none;margin:20px auto 0;text-align:center;color:var(--muted);font-size:15px}
.faq-empty a{color:var(--link)}

/* ---------- resources — every essential, quietly ---------- */
.res-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}
.res-group{padding:26px 26px 18px}
.res-group h3{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;
  display:flex;align-items:center;gap:9px}
.res-group h3 .d{width:6px;height:6px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--glow)}
.res-list a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 2px;
  border-top:1px solid var(--line);text-decoration:none;transition:padding .3s var(--ease)}
.res-list a:first-child{border-top:0}
.res-list a:hover{padding-left:8px}
.res-list .nm{font-size:15px;font-weight:600;color:var(--ink);transition:color .3s}
.res-list a:hover .nm{color:var(--accent)}
.res-list .ds{font-size:12.5px;color:var(--muted);text-align:right;flex:1}
.res-list .ar{color:var(--muted);font-size:13px;transition:transform .3s,color .3s}
.res-list a:hover .ar{color:var(--cyan);transform:translateX(3px)}
.dc-live{display:inline-block;width:6px;height:6px;border-radius:50%;background:#2BC48A;margin-right:6px;vertical-align:middle;
  box-shadow:0 0 0 0 rgba(43,196,138,.5);animation:pip 2.6s ease-out infinite}
#discordCount{color:var(--accent);font-weight:700;font-variant-numeric:tabular-nums}
.dc-count{display:none}
#discordLink.has-count .dc-count{display:inline}
#discordLink.has-count .dc-fallback{display:none}
@keyframes pip{0%{box-shadow:0 0 0 0 rgba(43,196,138,.5)}70%{box-shadow:0 0 0 9px rgba(43,196,138,0)}100%{box-shadow:0 0 0 0 rgba(43,196,138,0)}}

/* ---------- film ---------- */
.film-stage{position:relative;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--raise);aspect-ratio:16/9;background:#10141A}
.film-video{width:100%;height:100%;display:block;object-fit:cover;cursor:pointer}
.film-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%) scale(.9);width:74px;height:74px;border-radius:50%;
  border:0;background:rgba(238,242,248,.9);color:#0A5AA0;cursor:pointer;display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:.4s var(--ease);box-shadow:0 14px 40px -10px rgba(0,0,0,.5)}
.film-play svg{width:26px;height:26px;margin-left:3px}
.film-stage.paused .film-play{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}
.film-stage.paused .film-video{filter:brightness(.72)}
.film-controls{position:absolute;z-index:3;right:16px;bottom:16px;display:inline-flex;gap:10px}
.film-btn{width:42px;height:42px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  text-decoration:none;border:0;background:rgba(238,242,248,.85);color:#182335;transition:transform .3s var(--ease)}
.film-btn:hover{transform:translateY(-2px)}
.film-btn svg{width:18px;height:18px}
.film-btn .ic-sound{display:none}
.film-stage.sound #filmMute .ic-sound{display:block}
.film-stage.sound #filmMute .ic-muted{display:none}

/* ---------- details (collapsed depth — click to open, never to overwhelm) ---------- */
details.fold{background:var(--surface);border-radius:var(--r);box-shadow:var(--raise-sm);margin:14px 0;overflow:hidden}
details.fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:20px 26px;
  font-family:'Sora';font-size:16px;font-weight:700;color:var(--ink);transition:color .3s}
details.fold>summary::-webkit-details-marker{display:none}
details.fold>summary:hover{color:var(--accent)}
details.fold>summary .pm{margin-left:auto;flex:none;width:30px;height:30px;border-radius:50%;background:var(--bg);
  box-shadow:var(--well-sm);position:relative}
details.fold>summary .pm::before,details.fold>summary .pm::after{content:"";position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%);background:var(--accent);transition:.35s var(--ease)}
details.fold>summary .pm::before{width:12px;height:2px}
details.fold>summary .pm::after{width:2px;height:12px}
details.fold[open]>summary .pm::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}
.fold-body{padding:4px 26px 26px}
.fold-body p{font-size:15.5px;color:var(--ink-2);line-height:1.7;margin-bottom:12px}

/* ---------- forms ---------- */
.subform{display:flex;flex-direction:column;gap:14px;text-align:left}
.subform label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.subform input,.subform textarea{width:100%;font-family:inherit;font-size:15.5px;color:var(--ink);border:0;border-radius:16px;
  padding:15px 18px;background:var(--bg);box-shadow:var(--well-sm);outline:none;transition:box-shadow .3s}
.subform input:focus,.subform textarea:focus{box-shadow:var(--well-sm),0 0 0 2px var(--glow-soft)}
.subform textarea{min-height:110px;resize:vertical}
.subform .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.subform input::placeholder,.subform textarea::placeholder{color:var(--muted)}

/* ---------- the prompt viewer (Dasha's mind, folded) ---------- */
.prompt-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;flex-wrap:wrap}
.prompt-copy{font-family:'Sora';font-size:12px;letter-spacing:.08em;font-weight:700;text-transform:uppercase;color:#fff;
  cursor:pointer;border:0;padding:10px 18px;border-radius:100px;background:linear-gradient(145deg,#19A4F5,#0074C2);
  box-shadow:0 8px 18px -8px rgba(0,140,231,.6);transition:transform .3s}
.prompt-copy:hover{transform:translateY(-1px)}
.prompt-copy.done{background:linear-gradient(145deg,#34C98E,#1FA46E)}
.prompt-pre{margin:0;max-height:420px;overflow:auto;padding:20px 22px;border-radius:18px;background:var(--bg);box-shadow:var(--well);
  font-family:'IBM Plex Mono',ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.7;color:var(--ink-2);
  white-space:pre-wrap;word-break:break-word}
.prompt-pre::-webkit-scrollbar{width:9px}
.prompt-pre::-webkit-scrollbar-thumb{background:var(--lo);border-radius:9px}

/* sources fold list */
.src-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.source{display:block;text-decoration:none;padding:16px 18px;border-radius:16px;background:var(--bg);box-shadow:var(--well-sm);
  transition:box-shadow .35s var(--ease)}
.source:hover{box-shadow:var(--well-sm),0 0 20px -8px var(--glow)}
.source .sd{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700;margin-bottom:5px}
.source .sn{font-size:14.5px;font-weight:700;color:var(--ink)}
.source .sw{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.5}

/* ---------- design systems hub ---------- */
.ds-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:26px}
.ds-card{padding:30px;display:flex;flex-direction:column;gap:14px}
.ds-card h3{font-size:20px}
.ds-card .ds-by{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700}
.ds-card p{font-size:15px;color:var(--ink-2);line-height:1.6}
.ds-actions{display:flex;gap:10px;margin-top:auto;padding-top:6px}
.ds-btn{flex:1;text-align:center;font-family:'Sora';font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:none;
  border:0;cursor:pointer;padding:12px 0;border-radius:100px;background:var(--surface);box-shadow:var(--raise-sm);
  transition:transform .3s var(--ease),color .3s}
.ds-btn:hover{transform:translateY(-2px);color:var(--accent)}
.ds-btn:active{transform:translateY(1px)}
/* the specimen — each system speaks in its own material */
.spec{height:74px;border-radius:16px;display:flex;align-items:center;justify-content:center;gap:12px;overflow:hidden;position:relative}
.spec b{font-family:'Sora';font-size:15px;letter-spacing:.02em}
.spec i{width:14px;height:14px;border-radius:50%;flex:none}
.spec-dash{background:#FFFFFF;box-shadow:inset 0 0 0 1px #E3E8EF}
.spec-dash b{color:#012060}.spec-dash i{background:#008CE7}
.spec-d3{background:#0F1114}.spec-d3 b{color:#F4F6F9;text-shadow:0 0 18px rgba(34,211,238,.6)}
.spec-d3 i{background:#22D3EE;box-shadow:0 0 12px #22D3EE}
.spec-neu{background:#E6EAF1;box-shadow:inset 0 0 0 1px rgba(146,161,187,.25)}
.spec-neu b{color:#182335}
.spec-neu i{background:#E6EAF1;box-shadow:-3px -3px 7px #fff,4px 4px 9px rgba(146,161,187,.55)}
.spec-sym{background:linear-gradient(145deg,#101623,#1B2438)}
.spec-sym b{color:#EAF1FF}.spec-sym i{background:transparent;border:2px solid #E8C46B;border-radius:50%}
.spec-motus{background:#12151B}
.spec-motus b{color:#DFF6FA}
.spec-motus i{background:#22D3EE;animation:motusOrbit 2.6s var(--ease) infinite}
@keyframes motusOrbit{0%,100%{transform:translateX(-14px)}50%{transform:translateX(14px)}}
/* viewer sheet */
.ds-sheet{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center;padding:22px}
.ds-sheet.on{display:flex}
.ds-sheet .ds-back{position:absolute;inset:0;background:rgba(16,22,32,.5);backdrop-filter:blur(6px)}
.ds-panel{position:relative;width:min(860px,100%);max-height:86svh;display:flex;flex-direction:column;
  background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--raise);overflow:hidden}
.ds-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 26px;border-bottom:1px solid var(--line)}
.ds-panel-head h3{font-size:18px}
.ds-close{width:38px;height:38px;border-radius:50%;border:0;background:var(--bg);box-shadow:var(--raise-sm);cursor:pointer;
  color:var(--ink);font-size:17px;line-height:1;transition:transform .3s}
.ds-close:hover{transform:rotate(90deg)}
.ds-doc{padding:24px 30px 34px;overflow:auto;font-size:15.5px;line-height:1.75;color:var(--ink-2)}
.ds-doc h1,.ds-doc h2,.ds-doc h3{color:var(--ink);margin:22px 0 10px;line-height:1.2}
.ds-doc h1{font-size:26px}.ds-doc h2{font-size:20px}.ds-doc h3{font-size:16.5px}
.ds-doc p{margin-bottom:12px}
.ds-doc ul{margin:0 0 12px 22px}
.ds-doc li{margin-bottom:6px}
.ds-doc code{font-family:'IBM Plex Mono',monospace;font-size:.85em;background:var(--bg);box-shadow:var(--well-sm);
  border-radius:6px;padding:2px 7px;color:var(--accent)}
.ds-doc blockquote{border-left:3px solid var(--cyan);padding-left:16px;margin:14px 0;color:var(--ink-2);font-style:italic}

/* ---------- pulse ---------- */
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px}
.stat{padding:30px 24px;text-align:center}
.stat .num{font-family:'Sora';font-size:clamp(36px,6vw,54px);font-weight:800;letter-spacing:-.03em;color:var(--ink)}
.stat .lab{margin-top:8px;font-size:13px;letter-spacing:.06em;color:var(--muted)}
.panel{padding:28px}
.panel h3{font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}
.bar{display:flex;align-items:center;gap:12px;margin:10px 0}
.bar .name{flex:none;width:120px;font-size:13.5px;color:var(--ink-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bar .track{flex:1;height:12px;border-radius:100px;background:var(--bg);box-shadow:var(--well-sm);overflow:hidden}
.bar .fill{height:100%;border-radius:100px;background:linear-gradient(90deg,var(--dash),var(--cyan));
  box-shadow:0 0 12px -2px var(--glow);width:0;transition:width 1.1s var(--ease)}
.bar .val{flex:none;width:40px;text-align:right;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.reach{display:flex;flex-wrap:wrap;gap:9px}
.reach span{font-size:12.5px;color:var(--accent);background:var(--bg);box-shadow:var(--well-sm);border-radius:100px;padding:7px 14px}
.hist-axis{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.quiet-note{font-size:14px;line-height:1.6;color:var(--ink-2)}
.pulse-upd{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-2)}
.pulse-upd .beat{width:6px;height:6px;border-radius:50%;background:#2BC48A;box-shadow:0 0 0 0 rgba(43,196,138,.5);animation:pip 2.4s ease-out infinite}

/* ---------- proposal ---------- */
.ask-line{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:16px 4px;border-top:1px solid var(--line);flex-wrap:wrap}
.ask-line:first-child{border-top:0}
.ask-line .k{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.ask-line .v{font-family:'Sora';font-size:17px;font-weight:700;color:var(--ink)}
.tbd{display:inline-block;font-size:.82em;font-weight:700;letter-spacing:.03em;color:#8A5A00;background:rgba(232,180,90,.16);
  border-radius:8px;padding:2px 10px;white-space:nowrap}
[data-theme="dark"] .tbd{color:#F0D48C;background:rgba(232,196,107,.13)}
.check{display:flex;gap:16px;align-items:flex-start;padding:16px 2px;border-top:1px solid var(--line)}
.check:first-child{border-top:0}
.check .cx{flex:none;width:30px;height:30px;border-radius:50%;background:var(--bg);box-shadow:var(--well-sm);
  display:flex;align-items:center;justify-content:center;color:var(--accent);margin-top:2px}
.check .cx svg{width:14px;height:14px}
.check h3{font-size:16.5px;margin-bottom:3px}
.check p{font-size:14.5px;color:var(--ink-2);line-height:1.6}

/* ---------- the X card — one calm porcelain plate ---------- */
.xcard{display:flex;align-items:center;gap:18px;max-width:520px;margin:0 auto;padding:20px 24px;border-radius:24px;
  text-decoration:none;background:var(--surface);box-shadow:var(--raise-sm);
  transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.xcard:hover{transform:translateY(-3px);box-shadow:var(--raise-sm),0 0 34px -10px var(--glow)}
.xcard-ic{flex:none;width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;
  background:var(--bg);box-shadow:var(--well-sm)}
.xcard-ic svg{width:20px;height:20px;fill:var(--ink)}
.xcard-body{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}
.xcard-k{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:700}
.xcard-h{font-family:'Sora';font-size:19px;font-weight:800;color:var(--ink)}
.xcard-s{font-size:13.5px;color:var(--muted);line-height:1.45}
.xcard-go{flex:none;margin-left:auto;color:var(--accent);font-size:18px;transition:transform .3s var(--ease)}
.xcard:hover .xcard-go{transform:translate(3px,-3px)}

/* ---------- footer ---------- */
footer{padding:70px 24px 90px;text-align:center}
footer .brand{justify-content:center;margin:0 auto 26px;display:flex}
.eco{display:flex;gap:8px 26px;flex-wrap:wrap;justify-content:center;margin:28px auto 18px}
.eco a{font-size:13.5px;color:var(--muted);text-decoration:none;transition:color .3s}
.eco a:hover{color:var(--accent)}
footer .meta{font-size:12px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
footer .ftag{margin-top:10px;font-size:14px;color:var(--ink-2);letter-spacing:.03em}

/* ---------- THE ONE DOOR ---------- */
.fab1{position:fixed;right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:55;
  opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .5s var(--ease),transform .5s var(--ease)}
.fab1.show{opacity:1;transform:none;pointer-events:auto}
.fab1-btn{display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 17px 0 13px;border-radius:100px;
  text-decoration:none;background:var(--surface);box-shadow:var(--raise-sm);
  transition:box-shadow .5s var(--ease),transform .3s var(--ease)}
.fab1-btn:hover{transform:translateY(-1px)}
.fab1-btn:active{transform:translateY(1px) scale(.98)}
.fab1-btn.ai{box-shadow:var(--raise-sm),0 0 24px -8px var(--glow)}
.fab1-btn.hu{box-shadow:var(--raise-sm),0 0 24px -8px rgba(232,180,90,.55)}
.f1-orb{position:relative;width:20px;height:20px;flex:none}
.f1-orb i{position:absolute;border-radius:50%}
.f1-orb i:first-child{inset:6px;background:var(--cyan);box-shadow:0 0 10px var(--glow);transition:background .6s,box-shadow .6s}
.f1-orb i:last-child{width:4px;height:4px;top:0;left:50%;margin-left:-2px;background:var(--cyan);
  transform-origin:2px 10px;animation:f1orbit 3.4s linear infinite;transition:opacity .5s}
@keyframes f1orbit{to{transform:rotate(360deg)}}
.fab1-btn.hu .f1-orb i:first-child{background:#E2B45C;box-shadow:0 0 12px rgba(232,180,90,.8);animation:f1breath 2.8s ease-in-out infinite}
.fab1-btn.hu .f1-orb i:last-child{opacity:0}
@keyframes f1breath{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}
.f1-lab{font-family:'Sora';font-size:12.5px;font-weight:700;color:var(--ink);white-space:nowrap;
  transition:opacity .32s var(--ease),transform .32s var(--ease)}
.fab1-btn.swap .f1-lab{opacity:0;transform:translateY(6px)}
nav.open ~ .fab1{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.f1-orb i:last-child{animation:none;opacity:0}.fab1-btn.hu .f1-orb i:first-child{animation:none}}

/* ============ DASHA CHAT (the live widget — classes owned by dasha-chat.js) ============ */
.dchat{position:relative;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--raise);
  display:flex;flex-direction:column;max-width:880px;margin:0 auto;overflow:hidden}
.dchat.full{max-width:980px;min-height:calc(100svh - 260px)}
.dchat-head{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}
.dchat-head .dot-live{width:9px;height:9px;border-radius:50%;background:#2BC48A;box-shadow:0 0 0 0 rgba(43,196,138,.5);animation:pip 2.6s ease-out infinite;flex:none}
.dchat-head .ttl{font-family:'Sora';font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--ink)}
.dchat-head .sub{font-size:11.5px;color:var(--muted)}
.dchat-head .spacer{flex:1}
.dchat-new{font-family:'Sora';font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);
  background:var(--surface);border:0;box-shadow:var(--raise-sm);border-radius:100px;padding:9px 15px;cursor:pointer;transition:.3s}
.dchat-new:hover{color:var(--accent);transform:translateY(-1px)}
.dchat-log{flex:1;overflow-y:auto;padding:22px 20px;display:flex;flex-direction:column;gap:14px;min-height:300px;max-height:520px;scroll-behavior:smooth}
.dchat.full .dchat-log{max-height:none}
.dchat-log::-webkit-scrollbar{width:9px}
.dchat-log::-webkit-scrollbar-thumb{background:var(--lo);border-radius:9px}
.dmsg{max-width:86%;padding:14px 18px;border-radius:20px;font-size:15px;line-height:1.65;color:var(--ink-2);word-break:break-word}
.dmsg.user{align-self:flex-end;background:linear-gradient(145deg,#19A4F5,#0074C2);color:#fff;border-bottom-right-radius:8px;
  box-shadow:0 10px 22px -10px rgba(0,140,231,.6)}
.dmsg.dasha{align-self:flex-start;background:var(--bg);box-shadow:var(--well-sm);border-bottom-left-radius:8px}
.dmsg.dasha b{color:var(--ink);font-weight:700}
.dmsg.dasha a{color:var(--link);text-decoration:none;border-bottom:1px solid rgba(8,73,126,.3)}
[data-theme="dark"] .dmsg.dasha a{border-bottom-color:rgba(124,196,255,.35)}
.dmsg.dasha pre{margin:10px 0;padding:14px 16px;border-radius:14px;background:#141922;overflow-x:auto;
  font-family:'IBM Plex Mono',ui-monospace,Menlo,monospace;font-size:12.5px;line-height:1.6;color:#D7E6F5}
.dmsg.dasha code.inl{font-family:'IBM Plex Mono',monospace;font-size:.88em;background:var(--surface);box-shadow:var(--well-sm);border-radius:6px;padding:1px 7px;color:var(--accent)}
.dmsg.err{align-self:center;background:rgba(214,92,60,.1);color:#A34224;font-size:13.5px;box-shadow:none}
[data-theme="dark"] .dmsg.err{color:#FFB59A}
.dtools{display:flex;flex-wrap:wrap;gap:6px;margin:-2px 0 10px}
.dtool{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;color:var(--accent);
  background:var(--surface);box-shadow:var(--well-sm);border-radius:100px;padding:5px 11px}
.dtool.deep{color:#8A5A00;background:rgba(232,180,90,.14);box-shadow:none}
[data-theme="dark"] .dtool.deep{color:#F0D48C}
.dfb{display:flex;align-items:center;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line);flex-wrap:wrap}
.dfb-gap{flex:1;min-width:4px}
.alt{font-family:inherit;font-size:12px;font-weight:600;color:var(--accent);background:var(--surface);border:0;
  box-shadow:var(--raise-sm);border-radius:100px;padding:7px 14px;cursor:pointer;transition:.25s var(--ease)}
.alt:hover{transform:translateY(-1px)}
.alt:active{transform:translateY(0)}
.fbb{font-family:inherit;font-size:13px;line-height:1;background:var(--surface);border:0;box-shadow:var(--raise-sm);
  border-radius:10px;padding:6px 10px;cursor:pointer;transition:.25s;opacity:.8}
.fbb:hover:not(:disabled){opacity:1;transform:translateY(-1px)}
.fbt{font-size:11.5px;color:var(--accent)}
.fbwhy{display:flex;gap:6px;margin-top:8px;align-items:center}
.fbwhy input{flex:1;font-family:inherit;font-size:13px;color:var(--ink);background:var(--bg);box-shadow:var(--well-sm);
  border:0;border-radius:12px;padding:9px 12px;outline:none}
.fbwhy input::placeholder{color:var(--muted)}
.fbwhy button{font-family:'Sora';font-size:11.5px;font-weight:700;color:#fff;border:0;border-radius:12px;
  padding:9px 14px;cursor:pointer;background:linear-gradient(145deg,#19A4F5,#0074C2)}
.dthinkt{align-self:center;font-size:12px;color:var(--muted);letter-spacing:.05em;margin-left:4px}
.dthink{align-self:flex-start;display:inline-flex;gap:6px;padding:15px 18px;align-items:center}
.dthink i{width:7px;height:7px;border-radius:50%;background:var(--dash);animation:dth 1.2s ease-in-out infinite}
.dthink i:nth-child(2){animation-delay:.16s}.dthink i:nth-child(3){animation-delay:.32s}
@keyframes dth{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}
.dchat-hello{align-self:center;text-align:center;max-width:480px;padding:16px 0;color:var(--ink-2);font-size:14.5px;line-height:1.65}
.dchat-hello b{color:var(--ink);font-weight:700}
.dchips{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin-top:14px}
.dchip{font-family:inherit;font-size:12.5px;font-weight:600;color:var(--accent);background:var(--surface);border:0;
  box-shadow:var(--raise-sm);border-radius:100px;padding:8px 15px;cursor:pointer;transition:.3s}
.dchip:hover{transform:translateY(-1px)}
.dchip.lost{color:#8A5A00;background:rgba(232,180,90,.14);box-shadow:var(--raise-sm)}
[data-theme="dark"] .dchip.lost{color:#F0D48C;background:rgba(232,196,107,.12)}
.dchat-input{display:flex;gap:10px;padding:14px 16px;border-top:1px solid var(--line);align-items:flex-end}
.dchat-input textarea{flex:1;font-family:inherit;font-size:15.5px;color:var(--ink);background:var(--bg);box-shadow:var(--well-sm);
  border:0;border-radius:18px;padding:14px 17px;outline:none;resize:none;min-height:52px;max-height:150px;line-height:1.5;transition:box-shadow .3s}
.dchat-input textarea:focus{box-shadow:var(--well-sm),0 0 0 2px var(--glow-soft)}
.dchat-send{flex:none;width:52px;height:52px;border-radius:50%;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,#19A4F5,#0074C2);box-shadow:0 10px 24px -8px rgba(0,140,231,.65),inset 0 1px 0 rgba(255,255,255,.35);
  transition:.35s var(--ease)}
.dchat-send:hover{transform:translateY(-2px)}
.dchat-send:disabled{opacity:.45;cursor:default;transform:none}
.dchat-send svg{width:21px;height:21px}
.dchat-foot{display:flex;gap:8px 18px;flex-wrap:wrap;justify-content:center;padding:0 16px 14px;font-size:11.5px;color:var(--muted)}
.dchat-foot a{color:var(--muted);text-decoration:none;border-bottom:1px solid var(--line)}
.dchat-foot a:hover{color:var(--accent)}
.dsessions{display:flex;gap:8px;padding:10px 16px 0;flex-wrap:wrap}
.dsess{font-family:inherit;font-size:11.5px;color:var(--ink-2);background:var(--surface);border:0;box-shadow:var(--raise-sm);
  border-radius:100px;padding:7px 13px;cursor:pointer;transition:.3s;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dsess.on{color:var(--accent);box-shadow:var(--well-sm)}
.dsess.del{color:var(--muted)}

/* ---------- responsive ---------- */
@media(max-width:940px){
  .nav-links{position:fixed;top:74px;right:12px;z-index:49;flex-direction:column;align-items:stretch;gap:8px;
    padding:18px;border-radius:26px;background:var(--bg-2);box-shadow:var(--raise);width:min(300px,calc(100vw - 24px));
    opacity:0;transform:translateY(-8px) scale(.98);pointer-events:none;transition:opacity .35s var(--ease),transform .4s var(--ease)}
  nav.open .nav-links{opacity:1;transform:none;pointer-events:auto}
  .nav-links a.l{font-size:16px;padding:13px 16px;text-align:center}
  .nav-links a.cta{text-align:center;justify-content:center;display:inline-flex;padding:14px}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center}
}
@media(max-width:560px){
  body{font-size:17px}
  .wrap{padding:0 18px}
  section{padding:clamp(70px,11vh,110px) 0}
  .hero{padding:120px 18px 60px;min-height:82svh}
  .cta-row{flex-direction:column;align-items:stretch;max-width:340px;margin-left:auto;margin-right:auto}
  .pill{justify-content:center}
  .teams{grid-template-columns:1fr 1fr}
  .subform .row{grid-template-columns:1fr}
  .stat-row{grid-template-columns:1fr 1fr}
  nav{top:10px}
}
@media(max-width:380px){.teams{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.2s!important}
  .aura{animation:none;box-shadow:var(--raise),0 0 0 1px var(--glow-soft),0 0 40px -8px var(--glow)}
}

/* ============================================================
   REFINEMENT ROUND — the mobile truth pass + deeper motion.
   Every fix is a promise: nothing squished, nothing off-screen,
   everything placed with intent and moving with cadence.
   ============================================================ */

/* the emblem keeps its soul — never squished */
.hero .emblem{height:auto;aspect-ratio:auto}

/* --- mobile nav: one full-width porcelain bar, everything inside, everything placed --- */
@media(max-width:940px){
  nav{left:12px;right:12px;transform:none;justify-content:flex-start;padding:8px 10px;max-width:none}
  .brand{flex:none;padding-right:4px}
  .mode-toggle{margin-left:auto;flex:none}
  .nav-toggle{margin-left:10px;flex:none}
  /* the menu: a centered sheet that unfolds beneath the bar */
  .nav-links{top:78px;left:12px;right:12px;width:auto;align-items:stretch;gap:6px;padding:16px;
    transform-origin:top center}
  .nav-links a.l{text-align:center}
  .nav-links a.cta{display:flex;justify-content:center}
  /* each item arrives on its own beat — motion with cadence */
  .nav-links a{opacity:0;transform:translateY(-8px);transition:opacity .4s var(--ease),transform .45s var(--ease),color .3s,box-shadow .3s,background .3s}
  nav.open .nav-links a{opacity:1;transform:none}
  nav.open .nav-links a:nth-child(1){transition-delay:.04s}
  nav.open .nav-links a:nth-child(2){transition-delay:.08s}
  nav.open .nav-links a:nth-child(3){transition-delay:.12s}
  nav.open .nav-links a:nth-child(4){transition-delay:.16s}
  nav.open .nav-links a:nth-child(5){transition-delay:.20s}
  nav.open .nav-links a:nth-child(6){transition-delay:.24s}
  nav.open .nav-links a:nth-child(7){transition-delay:.28s}
}

/* --- /dasha: the chat wakes up to the full screen — immersive, never squeezed --- */
.chat-shell{padding:14px;border-radius:var(--r-lg)}
@media(max-width:720px){
  .chat-wrap{padding:0 8px}
  .chat-shell{padding:6px;border-radius:24px}
  .dchat{border-radius:20px}
  .dchat.full{min-height:calc(100svh - 150px)}
  .dchat.full .dchat-log{min-height:calc(100svh - 330px);padding:16px 12px}
  .dmsg{max-width:94%;font-size:15.5px;padding:13px 15px}
  .dchat-head{padding:14px 16px}
  .dchat-input{padding:12px 10px}
}

/* --- /pulse: the columns yield on small screens — nothing ever leaves the screen --- */
.pulse-cols{display:grid;grid-template-columns:1.3fr 1fr;gap:26px;margin-top:26px}
@media(max-width:720px){
  .pulse-cols{grid-template-columns:1fr;gap:18px}
  .bar .name{width:96px;font-size:13px}
  .stat .num{font-size:clamp(32px,9vw,44px)}
}

/* --- folds breathe better on small screens --- */
@media(max-width:560px){
  details.fold>summary{padding:18px 18px;font-size:15px}
  .fold-body{padding:4px 16px 22px}
  .src-list{grid-template-columns:1fr}
}

/* ============================================================
   THE DESIGN HUB, DEEPENED — each specimen performs its own soul.
   ============================================================ */
.spec{height:96px}
/* Dash.org — the InstantSend beat: one second, felt */
.spec-dash i{position:relative}
.spec-dash i::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #008CE7;
  animation:dashPing 1s cubic-bezier(0,.6,.4,1) infinite}
@keyframes dashPing{0%{transform:scale(1);opacity:.8}100%{transform:scale(2.6);opacity:0}}
/* D3 Distinct — light is spent: the one glow, breathing */
.spec-d3 i{animation:d3breath 3.2s var(--ease) infinite}
@keyframes d3breath{0%,100%{box-shadow:0 0 10px #22D3EE}50%{box-shadow:0 0 26px #22D3EE,0 0 50px rgba(34,211,238,.5)}}
/* Neumorphic — the press: invitation, commitment, release */
.spec-neu i{animation:neuPress 3s var(--ease) infinite}
@keyframes neuPress{0%,100%{box-shadow:-3px -3px 7px #fff,4px 4px 9px rgba(146,161,187,.55)}
  50%{box-shadow:inset 2px 2px 5px rgba(146,161,187,.5),inset -2px -2px 5px #fff;transform:scale(.94)}}
/* Symbolic — the ring closes: meaning completed by attention */
.spec-sym i{animation:symTurn 6s linear infinite;border-style:dashed}
@keyframes symTurn{to{transform:rotate(360deg)}}
/* Motus — anticipation, action, settle (never linear) */
.spec-motus i{animation:motusMove 2.8s var(--ease) infinite}
@keyframes motusMove{0%,100%{transform:translateX(-16px) scale(1)}12%{transform:translateX(-19px) scale(.92)}
  55%{transform:translateX(16px) scale(1.06)}70%{transform:translateX(14px) scale(1)}}
/* per-system meta rows */
.ds-meta{display:flex;flex-direction:column;gap:5px;margin-top:2px}
.ds-meta span{font-size:12.5px;color:var(--muted);display:flex;gap:8px;align-items:baseline}
.ds-meta b{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700;flex:none}
/* the values strip — design, the Dash way */
.dv-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px}
.dvx{padding:26px 24px;text-align:center}
.dvx .dv-n{font-family:Sora;font-size:26px;font-weight:800;color:var(--accent);letter-spacing:-.02em}
.dvx p{font-size:14px;color:var(--ink-2);line-height:1.6;margin-top:8px}

/* ============================================================
   EVOLUTION ROUND — the living previews, the mantra ladder,
   the skill stack, the no-brainer. Bold, simple, in motion.
   ============================================================ */

/* --- LIVE APP PREVIEWS — a different Dash dapp, in each design language, every visit --- */
.app-prev{display:flex;flex-direction:column;gap:8px}
.ap-frame{border-radius:18px;overflow:hidden;min-height:190px;display:flex;flex-direction:column;
  justify-content:space-between;padding:18px;position:relative;transition:transform .4s var(--ease)}
.app-prev:hover .ap-frame{transform:translateY(-2px)}
.ap-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.ap-name{font-family:Sora;font-weight:800;font-size:16px;letter-spacing:-.01em}
.ap-dots{display:flex;gap:4px}
.ap-dots i{width:5px;height:5px;border-radius:50%;opacity:.5}
.ap-tag{font-size:12.5px;line-height:1.45;margin-top:4px}
.ap-mid{display:flex;align-items:baseline;gap:8px;margin:10px 0}
.ap-stat{font-family:Sora;font-weight:800;font-size:24px;letter-spacing:-.02em}
.ap-lab{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.ap-btn{align-self:flex-start;font-family:Sora;font-size:12.5px;font-weight:700;padding:9px 16px;border-radius:100px}
.ap-say{font-size:12.5px;color:var(--muted);font-style:italic;text-align:center;line-height:1.5}
.ap-roll{align-self:center;font-family:Sora;font-size:11.5px;font-weight:700;color:var(--accent);
  background:var(--surface);border:0;box-shadow:var(--raise-sm);border-radius:100px;padding:7px 14px;
  cursor:pointer;transition:transform .3s var(--ease)}
.ap-roll:hover{transform:translateY(-1px) rotate(0deg)}
.ap-roll:active{transform:translateY(1px)}
.ap-frame.rolling{animation:apSwap .5s var(--ease)}
@keyframes apSwap{0%{opacity:1;transform:translateY(0)}35%{opacity:0;transform:translateY(6px)}65%{opacity:0;transform:translateY(-6px)}100%{opacity:1;transform:translateY(0)}}
/* the five skins — each preview wears its system honestly */
.ap-dash{background:#FFFFFF;box-shadow:inset 0 0 0 1px #E3E8EF}
.ap-dash .ap-name,.ap-dash .ap-stat{color:#012060}
.ap-dash .ap-tag{color:#3A4A5E}.ap-dash .ap-lab{color:#3A4A5E}
.ap-dash .ap-dots i{background:#008CE7}
.ap-dash .ap-btn{background:#008CE7;color:#fff}
.ap-d3{background:#0F1114}
.ap-d3 .ap-name,.ap-d3 .ap-stat{color:#F4F6F9}
.ap-d3 .ap-tag{color:#DCE3EC}.ap-d3 .ap-lab{color:#9FD6DD}
.ap-d3 .ap-dots i{background:#22D3EE;box-shadow:0 0 6px #22D3EE}
.ap-d3 .ap-btn{background:transparent;color:#7BE3EA;box-shadow:inset 0 0 0 1px rgba(34,211,238,.5),0 0 18px -4px rgba(34,211,238,.6)}
.ap-neu{background:#E6EAF1}
.ap-neu .ap-name,.ap-neu .ap-stat{color:#182335}
.ap-neu .ap-tag{color:#35465F}.ap-neu .ap-lab{color:#35465F}
.ap-neu .ap-dots i{background:#E6EAF1;box-shadow:-2px -2px 4px #fff,2px 2px 5px rgba(146,161,187,.55);opacity:1}
.ap-neu .ap-btn{background:#E6EAF1;color:#0A5AA0;box-shadow:-4px -4px 9px #fff,5px 5px 11px rgba(146,161,187,.5)}
.ap-sym{background:linear-gradient(150deg,#101623,#1B2438)}
.ap-sym .ap-name,.ap-sym .ap-stat{color:#EAF1FF}
.ap-sym .ap-tag{color:#C9D6EE}.ap-sym .ap-lab{color:#C9D6EE}
.ap-sym .ap-dots i{background:transparent;border:1px solid #E8C46B;opacity:1}
.ap-sym .ap-btn{background:transparent;color:#F0D48C;box-shadow:inset 0 0 0 1px rgba(232,196,107,.55)}
.ap-motus{background:#12151B}
.ap-motus .ap-name,.ap-motus .ap-stat{color:#DFF6FA}
.ap-motus .ap-tag{color:#BFD9E2}.ap-motus .ap-lab{color:#9FD6DD}
.ap-motus .ap-dots i{background:#22D3EE;animation:motusMove 2.8s var(--ease) infinite;opacity:1}
.ap-motus .ap-btn{background:#22D3EE;color:#06222A}

/* --- THE MANTRA LADDER (Build page) — a cadence you can climb --- */
.ladder{max-width:420px;margin:0 auto;display:flex;flex-direction:column;gap:16px;position:relative}
.ladder::before{content:"";position:absolute;left:50%;top:10px;bottom:10px;width:2px;transform:translateX(-50%);
  background:linear-gradient(180deg,transparent,var(--dash) 15%,var(--cyan) 85%,transparent);opacity:.35;border-radius:2px}
.rung{position:relative;text-align:center;padding:20px 26px;font-family:Sora;font-weight:700;
  font-size:clamp(18px,2.6vw,23px);letter-spacing:-.01em;color:var(--ink)}
.rung small{display:block;font-family:Inter;font-weight:400;font-size:13px;color:var(--muted);margin-top:4px;letter-spacing:.02em}
.rung.repeat{color:var(--accent)}
.rung.repeat .loop{display:inline-block;margin-left:8px;animation:loopTurn 4s var(--ease) infinite}
@keyframes loopTurn{0%,60%{transform:rotate(0)}90%,100%{transform:rotate(360deg)}}

/* --- HER SKILL STACK — forty abilities, folded with grace --- */
.stack-group{margin-bottom:18px}
.stack-group h4{font-family:Sora;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);
  margin-bottom:10px;display:flex;align-items:center;gap:8px}
.stack-group h4 i{font-style:normal;font-size:11px;color:var(--muted);letter-spacing:0;text-transform:none}
.skill-row{display:flex;align-items:baseline;gap:12px;padding:8px 2px;border-top:1px solid var(--line)}
.skill-row:first-of-type{border-top:0}
.skill-row code{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--accent);flex:none;min-width:150px}
.skill-row span{font-size:13.5px;color:var(--ink-2);line-height:1.5}
@media(max-width:560px){.skill-row{flex-direction:column;gap:2px}.skill-row code{min-width:0}}

/* --- the no-brainer (proposal) --- */
.nb{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.nb-col{padding:28px 26px}
.nb-col h3{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.nb-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.nb-col li{font-size:15px;color:var(--ink-2);line-height:1.55;padding-left:24px;position:relative}
.nb-col li::before{content:"";position:absolute;left:2px;top:7px;width:8px;height:8px;border-radius:50%}
.nb-risk li::before{background:var(--bg);box-shadow:var(--well-sm)}
.nb-gain li::before{background:var(--cyan);box-shadow:0 0 10px var(--glow)}
@media(max-width:720px){.nb{grid-template-columns:1fr}}
/* the proposal doorway on /support */
.prop-door{display:inline-flex;align-items:center;gap:12px;text-decoration:none;padding:16px 26px;border-radius:100px;
  background:var(--surface);box-shadow:var(--raise-sm);font-family:'Sora';font-weight:700;font-size:15px;color:var(--ink);
  transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.prop-door:hover{transform:translateY(-2px);box-shadow:var(--raise-sm),0 0 30px -10px var(--glow)}
.prop-door .go{color:var(--accent);transition:transform .3s var(--ease)}
.prop-door:hover .go{transform:translateX(3px)}

/* --- THE FOUNDRY marks: the building block she teaches + how she'd wire it --- */
.ap-block{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;
  padding:5px 10px;border-radius:100px;opacity:.9}
.ap-dash .ap-block{color:#0A5AA0;box-shadow:inset 0 0 0 1px #C9D9EA}
.ap-d3 .ap-block{color:#7BE3EA;box-shadow:inset 0 0 0 1px rgba(34,211,238,.4)}
.ap-neu .ap-block{color:#0A5AA0;box-shadow:inset 2px 2px 5px rgba(146,161,187,.4),inset -2px -2px 5px #fff}
.ap-sym .ap-block{color:#F0D48C;box-shadow:inset 0 0 0 1px rgba(232,196,107,.45)}
.ap-motus .ap-block{color:#22D3EE;box-shadow:inset 0 0 0 1px rgba(34,211,238,.35)}
.ap-note{display:block;margin-top:5px;font-family:'IBM Plex Mono',monospace;font-size:11px;font-style:normal;
  color:var(--muted);letter-spacing:.01em}

/* ============================================================
   THE DAPP PLAYGROUND — full interactive simulations.
   Each skin exports its soul as variables; the engines wear them.
   ============================================================ */
.ap-dash{--sk-bg:#FFFFFF;--sk-ink:#012060;--sk-sub:#3A4A5E;--sk-ac:#008CE7;--sk-acInk:#FFFFFF;--sk-well:#F0F4F9;--sk-line:#E3E8EF}
.ap-d3{--sk-bg:#0F1114;--sk-ink:#F4F6F9;--sk-sub:#DCE3EC;--sk-ac:#22D3EE;--sk-acInk:#06222A;--sk-well:#171B20;--sk-line:rgba(220,232,245,.12)}
.ap-neu{--sk-bg:#E6EAF1;--sk-ink:#182335;--sk-sub:#35465F;--sk-ac:#0A5AA0;--sk-acInk:#FFFFFF;--sk-well:#EDF1F6;--sk-line:rgba(24,35,53,.1)}
.ap-sym{--sk-bg:#141B2C;--sk-ink:#EAF1FF;--sk-sub:#C9D6EE;--sk-ac:#E8C46B;--sk-acInk:#2A1F04;--sk-well:#1B2438;--sk-line:rgba(232,196,107,.2)}
.ap-motus{--sk-bg:#12151B;--sk-ink:#DFF6FA;--sk-sub:#BFD9E2;--sk-ac:#22D3EE;--sk-acInk:#06222A;--sk-well:#181D25;--sk-line:rgba(34,211,238,.16)}

.sim-sheet{position:fixed;inset:0;z-index:95;display:none;align-items:center;justify-content:center;padding:18px}
.sim-sheet.on{display:flex}
.sim-back{position:absolute;inset:0;background:rgba(14,19,28,.55);backdrop-filter:blur(7px)}
.sim-panel{position:relative;width:min(1080px,100%);max-height:92svh;display:flex;flex-direction:column;
  background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--raise);overflow:hidden}
.sim-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line)}
.sim-head h3{font-size:17px;margin-bottom:4px}
.sim-app{flex:1;overflow:auto;padding:26px;background:var(--sk-bg);color:var(--sk-ink);min-height:340px;
  transition:background .4s,color .4s}
.sim-main{max-width:660px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
.sim-hero{text-align:center;padding:10px 0}
.sim-lab{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sk-sub)}
.sim-big{font-family:'Sora';font-size:clamp(30px,5vw,44px);font-weight:800;letter-spacing:-.02em;color:var(--sk-ink)}
.sim-big i{font-style:normal;font-size:.45em;font-weight:700;color:var(--sk-sub)}
.sim-sub{font-size:13.5px;color:var(--sk-sub);line-height:1.6}
.sim-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.sim-row.center{justify-content:center}
.sim-in{flex:1;min-width:110px;font-family:inherit;font-size:16px;color:var(--sk-ink);background:var(--sk-well);
  border:1px solid var(--sk-line);border-radius:14px;padding:13px 16px;outline:none}
.sim-in.wide{flex:2}
.sim-at{font-family:'Sora';font-weight:800;font-size:22px;color:var(--sk-ac)}
.sim-act{border:0;cursor:pointer;font-size:14px !important;padding:13px 22px !important;background:var(--sk-ac) !important;
  color:var(--sk-acInk) !important;box-shadow:none !important;border-radius:100px;font-family:'Sora';font-weight:700;
  transition:transform .3s var(--ease)}
.sim-act:hover{transform:translateY(-1px)}
.sim-act:active{transform:translateY(1px)}
.sim-act:disabled{opacity:.5}
.sim-mini{border:0;cursor:pointer;font-size:12px !important;padding:8px 14px !important;background:var(--sk-ac) !important;
  color:var(--sk-acInk) !important;box-shadow:none !important;border-radius:100px;font-family:'Sora';font-weight:700}
.sim-mini.ghost{background:transparent !important;color:var(--sk-ac) !important;box-shadow:inset 0 0 0 1px var(--sk-ac) !important}
.sim-stage{display:flex;gap:8px;flex-wrap:wrap;min-height:30px}
.sim-badge{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.04em;padding:6px 12px;border-radius:100px}
.sim-badge.wait{color:var(--sk-sub);box-shadow:inset 0 0 0 1px var(--sk-line);animation:simPulse 1s ease-in-out infinite}
.sim-badge.lock{color:var(--sk-acInk);background:var(--sk-ac)}
.sim-badge.warn{color:#8A5A00;background:rgba(232,180,90,.2)}
@keyframes simPulse{0%,100%{opacity:.5}50%{opacity:1}}
.sim-list{display:flex;flex-direction:column;gap:8px}
.sim-li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13.5px;color:var(--sk-sub);
  padding:10px 14px;background:var(--sk-well);border:1px solid var(--sk-line);border-radius:12px}
.sim-li-b{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--sk-ac)}
.sim-doc{font-family:'IBM Plex Mono',monospace;font-size:12px;line-height:1.7;color:var(--sk-sub);white-space:pre-wrap;
  background:var(--sk-well);border:1px solid var(--sk-line);border-radius:14px;padding:16px 18px;overflow-x:auto}
.sim-id{flex:1;min-width:150px;text-align:center;padding:16px;background:var(--sk-well);border:1px solid var(--sk-line);border-radius:16px}
.sim-wallets{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}
.sim-mono{font-family:'IBM Plex Mono',monospace;font-size:.9em}
.sim-prop{padding:14px 0;border-top:1px solid var(--sk-line)}
.sim-prop:first-of-type{border-top:0}
.sim-prop-t{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14.5px;color:var(--sk-ink);margin-bottom:8px}
.sim-prop-t span{font-size:12.5px;color:var(--sk-sub)}
.sim-track{position:relative;height:10px;border-radius:100px;background:var(--sk-well);border:1px solid var(--sk-line);overflow:visible}
.sim-fill{height:100%;border-radius:100px;background:var(--sk-sub);opacity:.5;transition:width .6s var(--ease),background .4s}
.sim-fill.ok{background:var(--sk-ac);opacity:1}
.sim-thresh{position:absolute;left:50%;top:-4px;bottom:-4px;width:2px;background:var(--sk-ink);opacity:.4}
.sim-prop-b{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap;font-size:12px;color:var(--sk-sub)}
.sim-dots{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;padding:6px 0}
.sim-dots i{width:11px;height:11px;border-radius:50%;background:var(--sk-ac);opacity:0;animation:dotIn .5s var(--ease) forwards}
@keyframes dotIn{from{opacity:0;transform:scale(.3)}to{opacity:.85;transform:scale(1)}}
.sim-teach{padding:16px 24px 18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.sim-teach-k{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.sim-teach p{font-size:14.5px;color:var(--ink-2);line-height:1.6;margin:0}
.sim-teach p.pop{animation:teachPop .5s var(--ease)}
@keyframes teachPop{0%{opacity:.3;transform:translateY(4px)}100%{opacity:1;transform:none}}
.sim-ask{font-family:'Sora';font-size:12.5px;font-weight:700;color:var(--accent);text-decoration:none;margin-top:6px}
.sim-launch{border:0;cursor:pointer;font-family:'Sora';font-size:12px;font-weight:800;padding:9px 16px;border-radius:100px;
  color:#fff;background:linear-gradient(145deg,#19A4F5,#0074C2);box-shadow:0 8px 18px -8px rgba(0,140,231,.6);
  transition:transform .3s var(--ease)}
.sim-launch:hover{transform:translateY(-1px)}
.sim-launch:active{transform:translateY(1px)}
.ds-prevrow{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap}
@media(max-width:640px){.sim-panel{max-height:96svh}.sim-app{padding:18px 14px}.sim-sheet{padding:8px}}
@media(max-width:940px){nav.open .nav-links a:nth-child(8){transition-delay:.32s}}

/* --- the community signal: rate her designs; she reads every vote before her next mint --- */
.fv-row{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:2px}
.fv-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;border:0;cursor:pointer;padding:7px 13px;
  border-radius:100px;background:var(--surface);box-shadow:var(--raise-sm);color:var(--ink-2);
  font-family:'Sora';font-weight:700;transition:transform .3s var(--ease),box-shadow .3s}
.fv-btn i{font-style:normal;font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.fv-btn:hover{transform:translateY(-1px)}
.fv-btn:active{transform:translateY(1px)}
.fv-btn.cast{box-shadow:var(--well-sm),0 0 18px -6px var(--glow);color:var(--accent)}
.fv-btn.done{opacity:.55;pointer-events:none}
.fv-note{font-size:11.5px;border:0;cursor:pointer;background:none;color:var(--accent);font-family:'Sora';
  font-weight:700;text-decoration:underline;text-underline-offset:3px;padding:6px 4px}
.sim-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}

/* --- view-on-demand: the dapp preview unfolds only when asked --- */
.ap-reveal{width:100%;margin-top:2px;color:#fff !important;
  background:linear-gradient(145deg,#19A4F5,#0074C2);box-shadow:0 10px 22px -10px rgba(0,140,231,.7)}
.ap-reveal:hover{color:#fff !important}
.app-prev[hidden]{display:none}
.app-prev.open{animation:prevUnfold .6s var(--ease)}
@keyframes prevUnfold{0%{opacity:0;transform:translateY(10px) scale(.98)}100%{opacity:1;transform:none}}


/* ============================================================
   THE DAPP SKINS — five authentic design languages.
   Each system dresses the whole device: chrome, controls, motion.
   A designer should recognize the system without being told.
   ============================================================ */

/* ---- ? ---- */
.ap-d3{--d3-ground:#0F1114;--d3-plate:#171B20;--d3-bone:#F4F6F9;--d3-cur:#22D3EE;--d3-line:rgba(244,246,249,.10);--d3-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace}
.ap-d3 .dv{background:radial-gradient(120% 70% at 50% -10%,#1B2128 0%,var(--d3-ground) 62%);color:var(--d3-bone);font-family:Inter,"Helvetica Neue",system-ui,sans-serif;border:1px solid var(--d3-line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;position:relative}
.ap-d3 .dv::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(34,211,238,.07),transparent 22%);z-index:3}
.ap-d3 .dv-bar{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--d3-line);background:linear-gradient(180deg,rgba(244,246,249,.05),transparent)}
.ap-d3 .dv-ttl{flex:1;font-size:11px;font-family:var(--d3-mono);text-transform:uppercase;letter-spacing:.22em;color:var(--d3-bone)}
.ap-d3 .dv-dots{display:flex;gap:5px}
.ap-d3 .dv-dots i{width:4px;height:4px;border-radius:50%;background:rgba(244,246,249,.45)}
.ap-d3 .dv-dots i:first-child{background:var(--d3-cur);box-shadow:0 0 10px var(--d3-cur)}
.ap-d3 .dv-ava{width:30px;height:30px;border-radius:50%;background:var(--d3-plate);border:1px solid rgba(34,211,238,.55);box-shadow:inset 0 0 12px rgba(34,211,238,.35)}
.ap-d3 .dv-body{flex:1;overflow-y:auto;padding:22px 18px 26px;display:flex;flex-direction:column;gap:18px}
.ap-d3 .dv-tabs{display:flex;border-top:1px solid var(--d3-line);background:#12161A}
.ap-d3 .dv-tab{flex:1;padding:13px 4px;text-align:center;font-family:var(--d3-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(244,246,249,.62);border-top:2px solid transparent;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.ap-d3 .dv-tab:hover{color:var(--d3-bone);background:rgba(244,246,249,.04)}
.ap-d3 .dv-tab.on{color:var(--d3-cur);border-top-color:var(--d3-cur);background:linear-gradient(180deg,rgba(34,211,238,.16),transparent);animation:d3-breathe 3.4s ease-in-out infinite}
@keyframes d3-breathe{0%,100%{box-shadow:inset 0 3px 20px -6px rgba(34,211,238,.55)}50%{box-shadow:inset 0 3px 30px -4px rgba(34,211,238,.95)}}
@keyframes d3-pulse{0%,100%{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.25)}}
.ap-d3 .sim-hero{text-align:center;padding:26px 12px 22px;border-bottom:1px solid var(--d3-line)}
.ap-d3 .sim-lab{display:block;font-family:var(--d3-mono);font-size:9px;letter-spacing:.34em;text-transform:uppercase;color:var(--d3-cur);margin-bottom:10px}
.ap-d3 .sim-big{display:block;font-size:60px;line-height:.92;font-weight:200;letter-spacing:-.045em;color:var(--d3-bone);text-shadow:0 0 34px rgba(34,211,238,.4)}
.ap-d3 .sim-big i{font-style:normal;font-size:15px;font-family:var(--d3-mono);letter-spacing:.12em;color:var(--d3-cur);margin-left:8px;vertical-align:super}
.ap-d3 .sim-sub{display:block;margin-top:12px;font-size:13px;color:rgba(244,246,249,.86);line-height:1.5}
.ap-d3 .sim-row{display:flex;gap:10px;align-items:center}
.ap-d3 .sim-row.center{justify-content:center}
.ap-d3 .sim-in{flex:1;min-width:0;background:#0B0E11;border:1px solid var(--d3-line);border-radius:2px;padding:12px 13px;color:var(--d3-bone);font-family:var(--d3-mono);font-size:12.5px;letter-spacing:.04em;transition:border-color .2s,box-shadow .25s}
.ap-d3 .sim-in.wide{flex:2}
.ap-d3 .sim-in::placeholder{color:rgba(244,246,249,.5)}
.ap-d3 .sim-in:focus{outline:none;border-color:var(--d3-cur);box-shadow:0 0 0 1px var(--d3-cur),0 0 26px -4px rgba(34,211,238,.75)}
.ap-d3 .sim-act{border:1px solid var(--d3-cur);background:linear-gradient(180deg,rgba(34,211,238,.22),rgba(34,211,238,.06));color:#EAFDFF;font-family:var(--d3-mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;padding:13px 22px;border-radius:2px;cursor:pointer;box-shadow:0 0 22px -6px rgba(34,211,238,.7),inset 0 1px 0 rgba(255,255,255,.14);transition:box-shadow .22s,transform .12s,background .22s}
.ap-d3 .sim-act:hover{background:linear-gradient(180deg,rgba(34,211,238,.4),rgba(34,211,238,.14));box-shadow:0 0 44px -4px rgba(34,211,238,.95),inset 0 1px 0 rgba(255,255,255,.22)}
.ap-d3 .sim-act:active{transform:translateY(1px);box-shadow:0 0 12px -4px rgba(34,211,238,.6),inset 0 2px 8px rgba(0,0,0,.5)}
.ap-d3 .sim-mini{border:1px solid var(--d3-line);background:var(--d3-plate);color:var(--d3-bone);font-family:var(--d3-mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;padding:9px 13px;border-radius:2px;cursor:pointer;transition:border-color .2s,box-shadow .2s,color .2s,transform .1s}
.ap-d3 .sim-mini:hover{border-color:var(--d3-cur);color:var(--d3-cur);box-shadow:0 0 20px -6px rgba(34,211,238,.8)}
.ap-d3 .sim-mini:active{transform:translateY(1px)}
.ap-d3 .sim-mini.ghost{background:transparent;color:rgba(244,246,249,.8)}
.ap-d3 .sim-badge{display:inline-flex;align-items:center;gap:7px;font-family:var(--d3-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;padding:6px 11px;border-radius:2px;border:1px solid var(--d3-line);background:var(--d3-plate);color:rgba(244,246,249,.88)}
.ap-d3 .sim-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.ap-d3 .sim-badge.wait{color:var(--d3-cur);border-color:rgba(34,211,238,.5)}
.ap-d3 .sim-badge.wait::before{animation:d3-pulse 1.4s ease-in-out infinite;box-shadow:0 0 10px var(--d3-cur)}
.ap-d3 .sim-badge.lock{color:#7DFFC4;border-color:rgba(125,255,196,.45);box-shadow:0 0 22px -8px rgba(125,255,196,.8)}
.ap-d3 .sim-badge.warn{color:#FFC46B;border-color:rgba(255,196,107,.45)}
.ap-d3 .sim-list{display:flex;flex-direction:column;border-top:1px solid var(--d3-line)}
.ap-d3 .sim-li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 2px;border-bottom:1px solid var(--d3-line);font-size:13.5px;color:var(--d3-bone);transition:background .2s,box-shadow .2s}
.ap-d3 .sim-li:hover{background:rgba(34,211,238,.07);box-shadow:inset 2px 0 0 var(--d3-cur)}
.ap-d3 .sim-li-b{font-family:var(--d3-mono);font-size:11px;letter-spacing:.06em;color:rgba(244,246,249,.78)}
.ap-d3 .sim-doc{background:#0A0D10;border:1px solid var(--d3-line);border-left:2px solid var(--d3-cur);border-radius:2px;padding:14px;font-family:var(--d3-mono);font-size:11.5px;line-height:1.72;color:#CFEFF6;white-space:pre-wrap;word-break:break-word;overflow-x:auto}
.ap-d3 .sim-id{background:linear-gradient(150deg,var(--d3-plate),#0D1013);border:1px solid var(--d3-line);border-radius:4px;padding:16px;box-shadow:inset 0 1px 0 rgba(244,246,249,.09),0 0 40px -20px rgba(34,211,238,.9)}
.ap-d3 .sim-at{color:var(--d3-cur);font-family:var(--d3-mono);font-weight:700;margin-right:2px;text-shadow:0 0 12px rgba(34,211,238,.9)}
.ap-d3 .sim-prop{padding:16px 0;border-bottom:1px solid var(--d3-line)}
.ap-d3 .sim-prop-t{display:flex;justify-content:space-between;gap:10px;font-size:14px;font-weight:600;color:var(--d3-bone);margin-bottom:12px}
.ap-d3 .sim-track{position:relative;height:5px;background:rgba(244,246,249,.09);border-radius:1px;overflow:visible}
.ap-d3 .sim-fill{height:100%;background:rgba(244,246,249,.4);border-radius:1px;transition:background .3s,box-shadow .3s}
.ap-d3 .sim-fill.ok{background:var(--d3-cur);box-shadow:0 0 18px rgba(34,211,238,.95)}
.ap-d3 .sim-thresh{position:absolute;top:-4px;width:1px;height:13px;background:var(--d3-bone);opacity:.85}
.ap-d3 .sim-prop-b{display:flex;justify-content:space-between;margin-top:10px;font-family:var(--d3-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(244,246,249,.8)}
.ap-d3 .sim-dots{display:flex;flex-wrap:wrap;gap:6px}
.ap-d3 .sim-dots i{width:8px;height:8px;border-radius:50%;background:rgba(244,246,249,.16);border:1px solid var(--d3-line)}
.ap-d3 .sim-dots i.on{background:var(--d3-cur);border-color:var(--d3-cur);box-shadow:0 0 12px var(--d3-cur)}

/* ---- ? ---- */
.ap-sym{--nav:#141B2C;--nav2:#1B2438;--ink:#EAF1FF;--ink2:#C9D7F2;--gold:#E8C46B;--rule:rgba(234,241,255,.15);--mono:ui-monospace,"SFMono-Regular",Menlo,monospace}
.ap-sym .dv{background:radial-gradient(120% 90% at 50% -10%,#1B2438 0%,#141B2C 58%);color:var(--ink);font-family:system-ui,"Segoe UI",Inter,sans-serif;border:1px solid var(--rule);border-radius:3px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.ap-sym .dv-bar{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--rule);background:rgba(20,27,44,.7)}
.ap-sym .dv-ttl{flex:1;font-size:10px;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--ink)}
.ap-sym .dv-dots{font-size:12px;letter-spacing:.32em;color:var(--ink2);line-height:1}
.ap-sym .dv-ava{width:26px;height:26px;border-radius:50%;border:1px solid var(--rule);background:transparent;box-shadow:inset 0 0 0 3px var(--nav),inset 0 0 0 4px rgba(234,241,255,.10);flex:none}
.ap-sym .dv-body{flex:1;overflow-y:auto;padding:26px 22px 34px;position:relative}
.ap-sym .dv-tabs{display:flex;border-top:1px solid var(--rule);background:rgba(20,27,44,.85)}
.ap-sym .dv-tab{flex:1;padding:14px 4px 13px;text-align:center;font-size:9px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--ink2);border-top:1px solid transparent;cursor:pointer;transition:color .25s,border-color .25s,transform .18s}
.ap-sym .dv-tab:hover{color:var(--ink)}
.ap-sym .dv-tab:active{transform:translateY(1px)}
.ap-sym .dv-tab.on{color:var(--ink);border-top-color:var(--ink)}
.ap-sym .sim-hero{position:relative;text-align:center;padding:44px 0 40px;margin-bottom:10px}
.ap-sym .sim-hero::before{content:"";position:absolute;top:50%;left:50%;width:186px;height:186px;margin:-93px 0 0 -93px;border:1px solid rgba(232,196,107,.24);border-radius:50%;animation:sym-breathe 7s ease-in-out infinite;pointer-events:none}
.ap-sym .sim-hero::after{content:"";position:absolute;left:50%;bottom:26px;width:26px;height:1px;margin-left:-13px;background:var(--gold);opacity:.7}
.ap-sym .sim-lab{font-size:9px;font-weight:600;letter-spacing:.36em;text-transform:uppercase;color:var(--ink2)}
.ap-sym .sim-big{position:relative;font-size:48px;font-weight:200;line-height:1;letter-spacing:-.02em;color:var(--gold);margin:16px 0 12px;text-shadow:0 0 26px rgba(232,196,107,.34)}
.ap-sym .sim-big i{font-style:normal;font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ink2);margin-left:8px;text-shadow:none}
.ap-sym .sim-sub{font-size:12px;letter-spacing:.05em;color:var(--ink2);line-height:1.65}
.ap-sym .sim-row{display:flex;align-items:center;gap:12px;margin:18px 0}
.ap-sym .sim-row.center{justify-content:center}
.ap-sym .sim-in{flex:1;min-width:0;background:transparent;border:0;border-bottom:1px solid var(--rule);border-radius:0;color:var(--ink);font-size:13px;font-family:var(--mono);letter-spacing:.06em;padding:9px 2px;outline:0;transition:border-color .3s,box-shadow .3s}
.ap-sym .sim-in.wide{flex:2}
.ap-sym .sim-in::placeholder{color:#A9B8D8}
.ap-sym .sim-in:focus{border-bottom-color:var(--gold);box-shadow:0 1px 12px -6px rgba(232,196,107,.9)}
.ap-sym .sim-act{background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:999px;padding:11px 26px;font-size:9.5px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;cursor:pointer;transition:background .28s,color .28s,box-shadow .28s,transform .12s}
.ap-sym .sim-act:hover{background:var(--gold);color:var(--nav);box-shadow:0 0 30px -6px rgba(232,196,107,.62)}
.ap-sym .sim-act:active{transform:scale(.965);box-shadow:0 0 0 0 rgba(232,196,107,0)}
.ap-sym .sim-act:focus-visible{outline:1px solid var(--ink);outline-offset:3px}
.ap-sym .sim-mini{background:transparent;color:var(--ink);border:1px solid var(--rule);border-radius:999px;padding:8px 16px;font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:border-color .25s,color .25s,transform .12s}
.ap-sym .sim-mini:hover{border-color:var(--ink);color:var(--ink)}
.ap-sym .sim-mini:active{transform:scale(.96)}
.ap-sym .sim-mini.ghost{border-color:transparent;color:var(--ink2)}
.ap-sym .sim-mini.ghost:hover{border-color:var(--rule);color:var(--ink)}
.ap-sym .sim-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--rule);border-radius:999px;padding:5px 12px;font-size:9px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--ink)}
.ap-sym .sim-badge::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink2)}
.ap-sym .sim-badge.wait::before{background:transparent;border:1px solid var(--ink2);animation:sym-pulse 1.9s ease-in-out infinite}
.ap-sym .sim-badge.lock{border-color:var(--gold);color:var(--gold)}
.ap-sym .sim-badge.lock::before{background:var(--gold);box-shadow:0 0 10px rgba(232,196,107,.8)}
.ap-sym .sim-badge.warn{border-style:dashed}
.ap-sym .sim-list{display:flex;flex-direction:column;border-top:1px solid var(--rule);margin:20px 0}
.ap-sym .sim-li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 2px;border-bottom:1px solid var(--rule);font-size:13px;letter-spacing:.03em;color:var(--ink);transition:background .25s,transform .2s}
.ap-sym .sim-li:hover{background:rgba(234,241,255,.04);transform:translateX(2px)}
.ap-sym .sim-li-b{font-family:var(--mono);font-size:11px;letter-spacing:.07em;color:var(--ink2);white-space:nowrap}
.ap-sym .sim-doc{font-family:var(--mono);font-size:11.5px;line-height:1.8;color:#D6E4FF;background:rgba(27,36,56,.9);border:1px solid var(--rule);border-left:1px solid var(--gold);border-radius:0;padding:15px 16px;margin:18px 0;white-space:pre-wrap;word-break:break-word;overflow-x:auto}
.ap-sym .sim-id{position:relative;border:1px solid var(--rule);border-radius:2px;padding:18px 18px 16px;margin:18px 0;font-size:12.5px;letter-spacing:.04em;color:var(--ink);line-height:1.7}
.ap-sym .sim-id::after{content:"";position:absolute;top:14px;right:14px;width:16px;height:16px;border:1px solid var(--rule);border-radius:50%}
.ap-sym .sim-prop{padding:18px 2px;border-bottom:1px solid var(--rule)}
.ap-sym .sim-prop-t{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12.5px;font-weight:600;letter-spacing:.05em;color:var(--ink)}
.ap-sym .sim-track{position:relative;height:2px;background:rgba(234,241,255,.14);margin:16px 0 12px}
.ap-sym .sim-fill{height:100%;background:rgba(234,241,255,.5);transition:transform .5s,background .4s,box-shadow .4s}
.ap-sym .sim-fill.ok{background:var(--gold);box-shadow:0 0 14px rgba(232,196,107,.65)}
.ap-sym .sim-thresh{position:absolute;top:-5px;width:1px;height:12px;background:var(--ink);opacity:.85}
.ap-sym .sim-prop-b{display:flex;justify-content:space-between;gap:10px;font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink2)}
.ap-sym .sim-dots{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.ap-sym .sim-dots i{display:block;width:8px;height:8px;border:1px solid rgba(234,241,255,.4);border-radius:50%;background:transparent;transition:background .25s,transform .25s}
.ap-sym .sim-dots i:hover{background:var(--ink);transform:scale(1.35)}
.ap-sym .sim-at{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--ink2);margin-right:1px}
@keyframes sym-breathe{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.035)}}
@keyframes sym-pulse{0%,100%{opacity:.35}50%{opacity:1}}

/* ---- ? ---- */
.ap-motus .dv{--mo-cy:#22D3EE;--mo-tx:#DFF6FA;position:relative;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(120% 60% at 50% 0%,#19202A 0%,#12151B 55%,#0C0F14 100%);color:var(--mo-tx);font:15px/1.45 "Inter",system-ui,-apple-system,sans-serif;border:1px solid #22303B;border-radius:20px;box-shadow:0 0 0 1px rgba(34,211,238,.08),0 24px 60px rgba(0,0,0,.55)}
.ap-motus .dv::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;z-index:6;pointer-events:none;background:linear-gradient(90deg,rgba(34,211,238,0),#7DF3FF,rgba(34,211,238,0)) no-repeat;background-size:38% 100%;animation:mot-run 1.05s linear infinite}
@keyframes mot-run{from{background-position:-40% 0}to{background-position:140% 0}}
@keyframes mot-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes mot-ring{0%,100%{box-shadow:0 0 0 0 rgba(34,211,238,.55)}70%{box-shadow:0 0 0 9px rgba(34,211,238,0)}}
@keyframes mot-slide{from{background-position:0% 0}to{background-position:200% 0}}
@keyframes mot-blip{0%,100%{opacity:.28;transform:scale(.82)}45%{opacity:1;transform:scale(1.15)}}
@keyframes mot-wait{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(34,211,238,.4)}50%{opacity:.62;box-shadow:0 0 14px 2px rgba(34,211,238,.25)}}
@keyframes mot-sheen{from{background-position:-140% 0}to{background-position:240% 0}}
.ap-motus .dv-bar{display:flex;align-items:center;gap:12px;padding:14px 16px;background:rgba(12,15,20,.92);border-bottom:1px solid rgba(34,211,238,.22)}
.ap-motus .dv-ttl{flex:1;font-size:12.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--mo-tx)}
.ap-motus .dv-dots{display:flex;align-items:center;gap:4px;font-weight:900;letter-spacing:.22em;font-size:16px;line-height:1;color:var(--mo-cy);cursor:pointer;transition:transform .3s cubic-bezier(.34,-.5,.3,1.5),filter .3s ease}
.ap-motus .dv-dots:hover{transform:translateX(2px);filter:drop-shadow(0 0 6px rgba(34,211,238,.8))}
.ap-motus .dv-dots>*{width:4px;height:4px;border-radius:50%;background:currentColor}
.ap-motus .dv-ava{width:30px;height:30px;border-radius:50%;background:conic-gradient(from 0deg,#22D3EE,#7DF3FF,#1187A3,#22D3EE);border:1px solid rgba(223,246,250,.35);animation:mot-ring 2.1s ease-out infinite}
.ap-motus .dv-body{flex:1;min-height:0;overflow-y:auto;padding:18px 16px 22px;display:flex;flex-direction:column;gap:14px}
.ap-motus .dv-tabs{display:flex;gap:2px;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:#0A0D12;border-top:1px solid rgba(34,211,238,.2)}
.ap-motus .dv-tab{position:relative;flex:1;padding:9px 4px;text-align:center;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#A9DCE8;cursor:pointer;border-radius:8px;transition:color .28s ease,background .28s ease,transform .34s cubic-bezier(.34,-.5,.3,1.5)}
.ap-motus .dv-tab:hover{color:var(--mo-tx);background:rgba(34,211,238,.09);transform:translateY(-2px)}
.ap-motus .dv-tab.on{color:var(--mo-cy);text-shadow:0 0 12px rgba(34,211,238,.55)}
.ap-motus .dv-tab.on::after{content:"";position:absolute;left:18%;right:18%;bottom:2px;height:2px;border-radius:2px;background:linear-gradient(90deg,rgba(34,211,238,0),#7DF3FF,rgba(34,211,238,0)) repeat;background-size:200% 100%;animation:mot-slide 1s linear infinite}
.ap-motus .sim-hero{text-align:center;padding:14px 0 6px;animation:mot-float 4.6s ease-in-out infinite}
.ap-motus .sim-lab{font-size:10px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:var(--mo-cy)}
.ap-motus .sim-big{margin:6px 0 4px;font-size:46px;font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--mo-tx);background:linear-gradient(100deg,#DFF6FA 20%,#7DF3FF 42%,#DFF6FA 64%) repeat;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:mot-slide 2.4s linear infinite}
.ap-motus .sim-big i{font-style:normal;font-size:.34em;font-weight:700;letter-spacing:.12em;margin-left:7px;-webkit-text-fill-color:var(--mo-cy)}
.ap-motus .sim-sub{font-size:12.5px;color:#A8E9F2}
.ap-motus .sim-row{display:flex;align-items:center;gap:10px}
.ap-motus .sim-row.center{justify-content:center}
.ap-motus .sim-in{flex:1;min-width:0;padding:11px 13px;background:#0A0E13;border:1px solid #26353F;border-radius:10px;color:var(--mo-tx);font:600 13px/1.2 ui-monospace,"SF Mono",Menlo,monospace;letter-spacing:.02em;transition:border-color .3s ease,box-shadow .3s ease,transform .3s cubic-bezier(.34,-.5,.3,1.5)}
.ap-motus .sim-in.wide{flex:2}
.ap-motus .sim-in::placeholder{color:#7FBFCE}
.ap-motus .sim-in:focus{outline:none;border-color:var(--mo-cy);box-shadow:0 0 0 3px rgba(34,211,238,.16),0 0 18px rgba(34,211,238,.2);transform:translateY(-1px)}
.ap-motus .sim-act{position:relative;overflow:hidden;padding:12px 20px;border:0;border-radius:11px;background:linear-gradient(180deg,#5EE7FA,#22D3EE 60%,#12AFCB);color:#04161C;font:800 12px/1 "Inter",system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 20px rgba(34,211,238,.3),inset 0 1px 0 rgba(255,255,255,.4);transition:transform .34s cubic-bezier(.34,-.55,.28,1.55),box-shadow .34s ease,filter .2s ease}
.ap-motus .sim-act::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.75) 50%,transparent 65%) no-repeat;background-size:60% 100%;background-position:-70% 0;animation:mot-sheen 2.6s linear infinite}
.ap-motus .sim-act:hover{transform:translateY(-3px) scale(1.025);box-shadow:0 12px 30px rgba(34,211,238,.45),inset 0 1px 0 rgba(255,255,255,.55);filter:brightness(1.08)}
.ap-motus .sim-act:active{transform:translateY(2px) scale(.955);box-shadow:0 2px 8px rgba(34,211,238,.35),inset 0 3px 10px rgba(0,0,0,.35);transition-duration:.09s}
.ap-motus .sim-act:focus-visible{outline:2px solid #DFF6FA;outline-offset:2px}
.ap-motus .sim-mini{padding:8px 14px;border:1px solid var(--mo-cy);border-radius:9px;background:rgba(34,211,238,.1);color:var(--mo-tx);font:700 11px/1 "Inter",system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:transform .3s cubic-bezier(.34,-.5,.3,1.5),background .25s ease,border-color .25s ease,box-shadow .25s ease}
.ap-motus .sim-mini:hover{background:rgba(34,211,238,.24);transform:translateY(-2px);box-shadow:0 6px 16px rgba(34,211,238,.25)}
.ap-motus .sim-mini:active{transform:translateY(1px) scale(.96);transition-duration:.09s}
.ap-motus .sim-mini.ghost{border-color:#31434F;background:transparent;color:#BDECF5}
.ap-motus .sim-mini.ghost:hover{border-color:var(--mo-cy);background:rgba(34,211,238,.12)}
.ap-motus .sim-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;font:800 10px/1 "Inter",system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;border:1px solid currentColor;background:rgba(34,211,238,.08);color:var(--mo-cy)}
.ap-motus .sim-badge.wait{color:#7DF3FF;animation:mot-wait 1.05s ease-in-out infinite}
.ap-motus .sim-badge.lock{color:#3DECB4;background:rgba(61,236,180,.12);box-shadow:0 0 16px rgba(61,236,180,.28)}
.ap-motus .sim-badge.warn{color:#FFC44D;background:rgba(255,196,77,.12)}
.ap-motus .sim-list{display:flex;flex-direction:column;gap:8px}
.ap-motus .sim-li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;background:linear-gradient(90deg,rgba(34,211,238,.1),rgba(20,25,32,.9) 40%);border:1px solid #1F2B34;border-left:2px solid var(--mo-cy);border-radius:10px;font-size:13px;font-weight:600;transition:transform .35s cubic-bezier(.34,-.4,.3,1.4),border-color .3s ease,box-shadow .3s ease}
.ap-motus .sim-li:hover{transform:translateX(5px);border-color:var(--mo-cy);box-shadow:-6px 0 18px rgba(34,211,238,.2)}
.ap-motus .sim-li-b{font:600 11.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.05em;color:#A8E9F2}
.ap-motus .sim-doc{padding:13px 14px;background:#080B10;border:1px solid #1E2A33;border-left:2px solid var(--mo-cy);border-radius:10px;font:12px/1.7 ui-monospace,Menlo,monospace;color:#A9F1FF;white-space:pre-wrap;word-break:break-word;overflow-x:auto}
.ap-motus .sim-id{position:relative;overflow:hidden;padding:15px;border:1px solid rgba(34,211,238,.35);border-radius:14px;background:linear-gradient(115deg,#151C25,#0D1218 55%,#101A21);box-shadow:inset 0 1px 0 rgba(223,246,250,.08)}
.ap-motus .sim-id::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 40%,rgba(125,243,255,.16) 50%,transparent 60%) no-repeat;background-size:70% 100%;animation:mot-sheen 3.4s linear infinite}
.ap-motus .sim-prop{padding:14px;background:#131920;border:1px solid #212D36;border-radius:12px;transition:border-color .3s ease,transform .35s cubic-bezier(.34,-.4,.3,1.4)}
.ap-motus .sim-prop:hover{border-color:rgba(34,211,238,.55);transform:translateY(-2px)}
.ap-motus .sim-prop-t{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;font-size:13.5px;font-weight:700;color:var(--mo-tx)}
.ap-motus .sim-track{position:relative;height:8px;border-radius:99px;background:#1B242C;box-shadow:inset 0 0 0 1px rgba(34,211,238,.14)}
.ap-motus .sim-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#12AFCB,#7DF3FF,#12AFCB) repeat;background-size:200% 100%;box-shadow:0 0 14px rgba(34,211,238,.5);animation:mot-slide 1.1s linear infinite}
.ap-motus .sim-fill.ok{background-image:linear-gradient(90deg,#1FB98A,#6BFFD0,#1FB98A);box-shadow:0 0 16px rgba(61,236,180,.55)}
.ap-motus .sim-thresh{position:absolute;top:-4px;bottom:-4px;width:2px;border-radius:2px;background:#DFF6FA;box-shadow:0 0 10px rgba(223,246,250,.9);animation:mot-wait 2.2s ease-in-out infinite}
.ap-motus .sim-prop-b{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;font:600 11.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.05em;color:#A8E9F2}
.ap-motus .sim-dots{display:flex;flex-wrap:wrap;gap:6px}
.ap-motus .sim-dots i{width:9px;height:9px;border-radius:3px;background:var(--mo-cy);box-shadow:0 0 8px rgba(34,211,238,.5);animation:mot-blip 1.6s ease-in-out infinite}
.ap-motus .sim-dots i:nth-child(3n){animation-delay:.2s}
.ap-motus .sim-dots i:nth-child(3n+1){animation-delay:.4s}
.ap-motus .sim-dots i:nth-child(5n){animation-delay:.6s}
.ap-motus .sim-at{display:inline-block;margin-right:2px;font-weight:900;color:var(--mo-cy);text-shadow:0 0 10px rgba(34,211,238,.6);animation:mot-float 2.2s ease-in-out infinite}

/* ---- ? ---- */
.ap-dash{--dash:#008CE7;--dash-d:#0071C5;--dash-t:#01549B;--ink:#012060;--ink2:#3A4A5E;--line:#E3E8EF}
.ap-dash *{box-sizing:border-box}
.ap-dash .dv{display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--line);border-radius:30px;overflow:hidden;color:var(--ink);font-family:-apple-system,"Segoe UI",Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.ap-dash .dv-bar{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#fff;border-bottom:1px solid var(--line)}
.ap-dash .dv-ttl{flex:1;font-size:19px;font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.ap-dash .dv-dots{display:flex;align-items:center;gap:4px;color:var(--ink2);font-size:15px;line-height:1;letter-spacing:2px;cursor:pointer}
.ap-dash .dv-dots i{display:block;width:4px;height:4px;border-radius:50%;background:var(--ink2)}
.ap-dash .dv-ava{flex:none;width:34px;height:34px;border-radius:50%;background:linear-gradient(140deg,#008CE7,#0057A8);box-shadow:0 0 0 3px #E8F4FD}
.ap-dash .dv-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:18px 16px 22px;background:#F5F8FB}
.ap-dash .dv-body::-webkit-scrollbar{width:6px}
.ap-dash .dv-body::-webkit-scrollbar-thumb{background:#D4DFEA;border-radius:999px}
.ap-dash .sim-hero{text-align:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px 18px}
.ap-dash .sim-lab{font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--dash-t)}
.ap-dash .sim-big{margin:9px 0 6px;font-size:48px;font-weight:700;line-height:1.04;letter-spacing:-.035em;color:var(--ink)}
.ap-dash .sim-big i{margin-left:6px;font-style:normal;font-size:16px;font-weight:700;letter-spacing:0;color:var(--dash-t)}
.ap-dash .sim-sub{font-size:13px;line-height:1.55;color:var(--ink2)}
.ap-dash .sim-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.ap-dash .sim-row.center{justify-content:center}
.ap-dash .sim-in{flex:1;min-width:0;padding:13px 15px;background:#fff;border:1px solid var(--line);border-radius:14px;font-family:inherit;font-size:14px;font-weight:600;color:var(--ink);transition:border-color .18s ease,box-shadow .18s ease}
.ap-dash .sim-in.wide{flex:2}
.ap-dash .sim-in::placeholder{color:#5A6B80;font-weight:500}
.ap-dash .sim-in:hover{border-color:#C7D6E5}
.ap-dash .sim-in:focus{outline:0;border-color:var(--dash);box-shadow:0 0 0 4px rgba(0,140,231,.16)}
.ap-dash .sim-act,.ap-dash .sim-mini{font-family:inherit;border:0;border-radius:999px;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .12s ease}
.ap-dash .sim-act{padding:14px 28px;background:var(--dash-d);color:#fff;font-size:15px;font-weight:700;letter-spacing:-.01em}
.ap-dash .sim-act:hover{background:#005FA8;box-shadow:0 0 0 4px rgba(0,140,231,.18);transform:translateY(-1px)}
.ap-dash .sim-act:active{background:#004C88;box-shadow:none;transform:translateY(0) scale(.985)}
.ap-dash .sim-mini{padding:9px 16px;background:#E8F4FD;color:var(--dash-t);font-size:12px;font-weight:700}
.ap-dash .sim-mini:hover{background:#D2E8FA;box-shadow:0 0 0 3px rgba(0,140,231,.14)}
.ap-dash .sim-mini:active{transform:scale(.96);box-shadow:none}
.ap-dash .sim-mini.ghost{background:#fff;border:1px solid var(--line);color:var(--ink2)}
.ap-dash .sim-mini.ghost:hover{background:#fff;border-color:var(--dash);color:var(--dash-t)}
.ap-dash .sim-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:999px;background:#E8F4FD;color:var(--dash-t);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.ap-dash .sim-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.ap-dash .sim-badge.wait{background:#FFF4E0;color:#8A5200}
.ap-dash .sim-badge.wait::before{animation:apdash-pulse 1.4s ease-in-out infinite}
.ap-dash .sim-badge.lock{background:#E4F7EC;color:#06663A}
.ap-dash .sim-badge.warn{background:#FDEDEC;color:#A31D1D}
.ap-dash .sim-list{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.ap-dash .sim-li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-top:1px solid #EEF3F8;font-size:13.5px;font-weight:600;color:var(--ink);transition:background-color .16s ease}
.ap-dash .sim-li:first-child{border-top:0}
.ap-dash .sim-li:hover{background:#F6FBFF}
.ap-dash .sim-li-b{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:11.5px;font-weight:500;letter-spacing:-.01em;color:var(--ink2)}
.ap-dash .sim-doc{padding:14px 16px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--dash);border-radius:14px;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:12px;line-height:1.65;color:var(--ink);white-space:pre-wrap;overflow-x:auto}
.ap-dash .sim-id{display:flex;align-items:center;flex-wrap:wrap;gap:11px;padding:15px 16px;background:#fff;border:1px solid var(--line);border-radius:18px;font-size:13.5px;font-weight:600;color:var(--ink)}
.ap-dash .sim-id::before{content:"";flex:none;width:36px;height:36px;border-radius:50%;background:linear-gradient(140deg,#008CE7,#0057A8)}
.ap-dash .sim-at{color:var(--dash-d);font-weight:800}
.ap-dash .sim-prop{padding:16px;background:#fff;border:1px solid var(--line);border-radius:18px}
.ap-dash .sim-prop-t{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:14.5px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.ap-dash .sim-track{position:relative;height:8px;border-radius:999px;background:#E7EEF6;overflow:hidden}
.ap-dash .sim-fill{height:100%;border-radius:999px;background:var(--dash);transition:background-color .3s ease,box-shadow .3s ease}
.ap-dash .sim-fill.ok{background:#0FA36B}
.ap-dash .sim-thresh{position:absolute;top:0;width:2px;height:100%;background:var(--ink);opacity:.9}
.ap-dash .sim-prop-b{display:flex;justify-content:space-between;gap:10px;margin-top:11px;font-size:12px;font-weight:600;color:var(--ink2)}
.ap-dash .sim-dots{display:flex;flex-wrap:wrap;gap:7px}
.ap-dash .sim-dots i{display:block;width:10px;height:10px;border-radius:50%;background:var(--dash);opacity:.2;animation:apdash-tick 2.8s ease-in-out infinite}
.ap-dash .sim-dots i:nth-child(3n+2){animation-delay:.35s}
.ap-dash .sim-dots i:nth-child(3n){animation-delay:.7s}
.ap-dash .dv-tabs{display:flex;gap:4px;padding:8px 8px 12px;background:#fff;border-top:1px solid var(--line)}
.ap-dash .dv-tab{flex:1;padding:10px 4px;border-radius:14px;text-align:center;font-size:11px;font-weight:700;color:var(--ink2);cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .12s ease}
.ap-dash .dv-tab:hover{background:#F2F7FC;color:var(--ink)}
.ap-dash .dv-tab:active{transform:scale(.97)}
.ap-dash .dv-tab.on{background:#E8F4FD;color:var(--dash-t)}
@keyframes apdash-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.7)}}
@keyframes apdash-tick{0%,100%{opacity:.2;transform:scale(1)}45%{opacity:1;transform:scale(1.18)}}

/* ---- ? ---- */
.ap-neu{--po:#E6EAF1;--ink:#182335;--ink2:#2B394E;--acc:#0A5AA0;--acc2:#06457C;--lt:#FFFFFF;--sh:rgba(146,161,187,.5);--up:6px 6px 13px var(--sh),-6px -6px 13px var(--lt);--up2:10px 10px 22px var(--sh),-8px -8px 20px var(--lt);--dn:inset 5px 5px 11px var(--sh),inset -5px -5px 11px var(--lt);--dn2:inset 8px 8px 17px var(--sh),inset -7px -7px 15px var(--lt);font-family:ui-rounded,"SF Pro Rounded",-apple-system,"Segoe UI",system-ui,sans-serif;font-weight:500;font-size:15px;line-height:1.5;color:var(--ink);-webkit-font-smoothing:antialiased}
.ap-neu .dv,.ap-neu .dv *{border:0;outline:0;box-sizing:border-box}
.ap-neu .dv{background:var(--po);border-radius:34px;padding:16px 14px;display:flex;flex-direction:column;gap:14px;overflow:hidden;box-shadow:var(--up2)}
.ap-neu .dv-bar{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:22px;background:var(--po);box-shadow:var(--up)}
.ap-neu .dv-ttl{flex:1;font-size:16px;font-weight:800;letter-spacing:.01em;color:var(--ink);text-shadow:-1px -1px 0 var(--lt),1px 1px 1px rgba(146,161,187,.45)}
.ap-neu .dv-dots{width:34px;height:34px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:15px;letter-spacing:1px;color:var(--acc2);background:var(--po);cursor:pointer;box-shadow:var(--up);transition:box-shadow .22s,transform .16s cubic-bezier(.2,.8,.3,1)}
.ap-neu .dv-dots:hover{box-shadow:var(--up2)}
.ap-neu .dv-dots:active{transform:scale(.94);box-shadow:var(--dn)}
.ap-neu .dv-ava{width:38px;height:38px;flex:none;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800;color:#fff;background:linear-gradient(145deg,#1272C6,#07508F);box-shadow:5px 5px 11px rgba(10,60,110,.32),-5px -5px 11px var(--lt),inset -2px -2px 5px rgba(255,255,255,.28)}
.ap-neu .dv-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;padding:18px 16px;display:flex;flex-direction:column;gap:16px;border-radius:26px;background:var(--po);box-shadow:inset 6px 6px 13px var(--sh),inset -5px -5px 12px var(--lt)}
.ap-neu .dv-body::-webkit-scrollbar{width:8px}
.ap-neu .dv-body::-webkit-scrollbar-thumb{border-radius:99px;background:#C6D0E0}
.ap-neu .dv-tabs{display:flex;gap:8px;padding:8px;border-radius:24px;background:var(--po);box-shadow:var(--up)}
.ap-neu .dv-tab{flex:1;text-align:center;padding:11px 6px;border-radius:17px;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--ink2);background:var(--po);cursor:pointer;transition:box-shadow .24s,transform .16s cubic-bezier(.2,.8,.3,1),color .2s}
.ap-neu .dv-tab:hover{color:var(--acc2);box-shadow:3px 3px 8px var(--sh),-3px -3px 8px var(--lt)}
.ap-neu .dv-tab:active{transform:scale(.96);box-shadow:var(--dn)}
.ap-neu .dv-tab.on{color:var(--acc2);box-shadow:var(--dn);text-shadow:1px 1px 0 var(--lt)}
.ap-neu .sim-hero{text-align:center;padding:26px 18px;border-radius:26px;background:var(--po);box-shadow:var(--dn2)}
.ap-neu .sim-lab{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--acc2)}
.ap-neu .sim-big{margin:8px 0 4px;font-size:46px;font-weight:800;line-height:1.04;letter-spacing:-.025em;color:var(--ink);text-shadow:-1px -1px 0 var(--lt),2px 2px 3px rgba(146,161,187,.5)}
.ap-neu .sim-big i{font-style:normal;margin-left:7px;font-size:16px;font-weight:800;letter-spacing:.06em;color:var(--acc2);text-shadow:none}
.ap-neu .sim-sub{font-size:13px;font-weight:600;color:var(--ink2)}
.ap-neu .sim-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ap-neu .sim-row.center{justify-content:center}
.ap-neu .sim-in{flex:1;min-width:0;padding:13px 16px;border-radius:16px;background:var(--po);color:var(--ink);font-family:inherit;font-size:14px;font-weight:600;box-shadow:var(--dn);transition:box-shadow .25s}
.ap-neu .sim-in.wide{flex:2}
.ap-neu .sim-in::placeholder{color:#46536A;font-weight:500}
.ap-neu .sim-in:focus{box-shadow:var(--dn),0 0 0 4px rgba(10,90,160,.2),0 0 14px rgba(10,90,160,.22)}
.ap-neu .sim-act{padding:14px 26px;border-radius:18px;font-family:inherit;font-size:14px;font-weight:800;letter-spacing:.05em;color:#fff;cursor:pointer;background:linear-gradient(145deg,#1268B8,#074E8B);box-shadow:6px 6px 14px rgba(10,60,110,.34),-5px -5px 12px var(--lt),inset -1px -1px 3px rgba(255,255,255,.22);transition:box-shadow .24s,transform .16s cubic-bezier(.2,.8,.3,1),filter .2s}
.ap-neu .sim-act:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:9px 11px 22px rgba(10,60,110,.36),-7px -7px 16px var(--lt),inset -1px -1px 3px rgba(255,255,255,.26)}
.ap-neu .sim-act:active{transform:translateY(2px) scale(.985);filter:brightness(.97);box-shadow:inset 6px 6px 12px rgba(4,38,70,.55),inset -3px -3px 8px rgba(255,255,255,.16)}
.ap-neu .sim-mini{padding:10px 16px;border-radius:14px;font-family:inherit;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--acc2);background:var(--po);cursor:pointer;box-shadow:var(--up);transition:box-shadow .24s,transform .16s cubic-bezier(.2,.8,.3,1),color .2s}
.ap-neu .sim-mini:hover{color:var(--acc);transform:translateY(-1px);box-shadow:var(--up2)}
.ap-neu .sim-mini:active{transform:translateY(1px) scale(.96);box-shadow:var(--dn)}
.ap-neu .sim-mini.ghost{color:var(--ink2);box-shadow:var(--dn)}
.ap-neu .sim-mini.ghost:hover{color:var(--acc2);transform:none;box-shadow:inset 3px 3px 7px var(--sh),inset -3px -3px 7px var(--lt)}
.ap-neu .sim-mini.ghost:active{transform:scale(.97);box-shadow:var(--dn2)}
.ap-neu .sim-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:99px;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--ink2);background:var(--po);box-shadow:var(--dn)}
.ap-neu .sim-badge.wait{color:#6B3F00;animation:apneu-hold 2.6s ease-in-out infinite}
.ap-neu .sim-badge.lock{color:#0A5537;box-shadow:var(--up);text-shadow:-1px -1px 0 var(--lt)}
.ap-neu .sim-badge.warn{color:#8A2E10}
@keyframes apneu-hold{50%{box-shadow:inset 2px 2px 6px var(--sh),inset -2px -2px 6px var(--lt)}}
.ap-neu .sim-list{display:flex;flex-direction:column;gap:12px}
.ap-neu .sim-li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-radius:18px;font-size:13px;font-weight:700;color:var(--ink);background:var(--po);box-shadow:var(--up);transition:box-shadow .24s,transform .18s cubic-bezier(.2,.8,.3,1)}
.ap-neu .sim-li:hover{transform:translateY(-2px);box-shadow:var(--up2)}
.ap-neu .sim-li:active{transform:translateY(1px);box-shadow:var(--dn)}
.ap-neu .sim-li-b{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:11px;font-weight:600;color:var(--acc2)}
.ap-neu .sim-doc{padding:16px 18px;border-radius:20px;color:var(--ink);background:var(--po);font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:12px;line-height:1.7;white-space:pre-wrap;word-break:break-word;box-shadow:var(--dn2)}
.ap-neu .sim-id{display:flex;align-items:center;gap:12px;padding:15px 18px;border-radius:22px;font-size:13px;font-weight:700;color:var(--ink);word-break:break-all;background:var(--po);box-shadow:var(--up)}
.ap-neu .sim-at{display:inline-grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;font-size:14px;font-weight:800;color:var(--acc2);background:var(--po);box-shadow:var(--dn)}
.ap-neu .sim-prop{display:flex;flex-direction:column;gap:11px;padding:16px 18px;border-radius:22px;background:var(--po);box-shadow:var(--up);transition:box-shadow .24s,transform .18s}
.ap-neu .sim-prop:hover{transform:translateY(-2px);box-shadow:var(--up2)}
.ap-neu .sim-prop-t{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;font-weight:800;color:var(--ink)}
.ap-neu .sim-track{position:relative;height:14px;border-radius:99px;background:var(--po);box-shadow:inset 4px 4px 9px var(--sh),inset -3px -3px 7px var(--lt)}
.ap-neu .sim-fill{height:100%;border-radius:99px;background:linear-gradient(145deg,#1268B8,#07508F);box-shadow:2px 2px 5px rgba(10,60,110,.4),inset -1px -1px 3px rgba(255,255,255,.32);transition:background .3s,box-shadow .3s}
.ap-neu .sim-fill.ok{background:linear-gradient(145deg,#12885A,#0A5537);box-shadow:2px 2px 5px rgba(10,70,50,.4),inset -1px -1px 3px rgba(255,255,255,.32)}
.ap-neu .sim-thresh{position:absolute;top:-4px;bottom:-4px;width:5px;border-radius:99px;background:var(--po);box-shadow:2px 0 4px var(--sh),-2px 0 4px var(--lt)}
.ap-neu .sim-prop-b{display:flex;justify-content:space-between;gap:10px;font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:11px;font-weight:700;color:var(--ink2)}
.ap-neu .sim-dots{display:flex;flex-wrap:wrap;gap:9px;padding:14px;border-radius:20px;background:var(--po);box-shadow:var(--dn)}
.ap-neu .sim-dots i{width:12px;height:12px;border-radius:50%;background:var(--po);box-shadow:2px 2px 4px var(--sh),-2px -2px 4px var(--lt);transition:transform .2s cubic-bezier(.2,.8,.3,1),background .25s,box-shadow .25s}
.ap-neu .sim-dots i.on,.ap-neu .sim-dots i:hover{transform:scale(1.3);background:linear-gradient(145deg,#1268B8,#07508F);box-shadow:2px 2px 5px rgba(10,60,110,.4),-2px -2px 5px var(--lt)}


/* ============================================================
   THE READER — a design system deserves the whole surface.
   Above every layer; on mobile it takes the full screen.
   ============================================================ */
.ds-sheet{z-index:96}
.ds-panel{max-height:88dvh}
.ds-panel-head{flex:0 0 auto;position:sticky;top:0;z-index:2;background:var(--surface)}
.ds-doc{flex:1 1 auto;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
/* while reading, the page chrome retires — nothing competes with the words */
body.reading nav,body.reading .fab1{opacity:0;pointer-events:none;transition:opacity .3s var(--ease)}
@media(max-width:760px){
  .ds-sheet{padding:0;align-items:stretch}
  .ds-panel{width:100%;height:100dvh;max-height:100dvh;border-radius:0}
  .ds-panel-head{padding:calc(14px + env(safe-area-inset-top)) 16px 14px}
  .ds-panel-head h3{font-size:16px;line-height:1.25}
  .ds-doc{padding:20px 20px calc(40px + env(safe-area-inset-bottom));font-size:16px;line-height:1.8}
  .ds-doc h1{font-size:23px}.ds-doc h2{font-size:19px}.ds-doc h3{font-size:16px}
  .ds-doc pre,.ds-doc code{font-size:12.5px;word-break:break-word;white-space:pre-wrap}
}


/* ============================================================
   THE IMMERSIVE APP — on mobile the dapp owns the screen.
   ============================================================ */
.sim-panel{max-height:92dvh}
.dv{align-self:stretch}
.dv-body{display:flex;flex-direction:column}
.sim-main{flex:1}
@media(max-width:760px){
  /* chrome compresses so the app can breathe */
  .sim-head{padding:calc(8px + env(safe-area-inset-top)) 12px 8px;gap:8px}
  .sim-head h3{font-size:14px;line-height:1.25;margin:0 0 2px;
    display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
  .sim-head .ap-block{font-size:9px;padding:3px 8px;
    display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
  .ds-close{width:32px;height:32px;font-size:13px}
  /* the app: edge to edge, full remaining height */
  .sim-app{padding:0;display:block}
  .dv{max-width:none;height:100%;border-radius:0;min-height:0}
  .dv-body{padding:14px 14px 16px;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .dv-bar{padding:12px 14px}
  .dv-tabs{padding-bottom:env(safe-area-inset-bottom)}
  /* the lesson: one line, tap to open — never eats the app */
  .sim-teach{max-height:none;padding:10px 14px calc(10px + env(safe-area-inset-bottom));cursor:pointer;position:relative}
  .sim-teach .sim-teach-k{font-size:9px}
  .sim-teach p{font-size:13px;line-height:1.5;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:none}
  .sim-teach.open p{-webkit-line-clamp:unset;overflow:auto;max-height:34dvh}
  .sim-teach .sim-foot{margin-top:6px}
  .sim-teach .sim-ask{font-size:11.5px}
  .sim-teach::after{content:"tap";position:absolute;top:10px;right:14px;font-size:9px;letter-spacing:.12em;
    text-transform:uppercase;color:var(--accent);opacity:.75}
  .sim-teach.open::after{content:"close"}
  /* bigger touch targets inside every skin */
  .sim-act{padding:13px 20px !important;font-size:13px !important}
  .sim-mini{padding:9px 13px !important}
  .sim-in{padding:12px 13px !important;font-size:15px !important}
  .sim-big{font-size:clamp(30px,9vw,42px) !important}
}
@media(max-width:400px){
  .dv-tab{font-size:9.5px;padding:10px 2px}
  .dv-body{padding:12px 11px 14px}
}

/* the lesson strip stays a whisper on mobile — the app is the point */
@media(max-width:760px){
  .sim-teach .sim-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px;flex-wrap:wrap}
  .sim-teach .fv-row{gap:5px}
  .sim-teach .fv-btn{padding:5px 9px;font-size:11px}
  .sim-teach .fv-note{font-size:11px}
  .sim-teach p{font-size:12.5px;line-height:1.45}
}

/* ---- the live ballot widget (/pulse) ---- */
.gov{padding:28px 26px;border-radius:var(--r)}
.gv-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
.gv-s{text-align:center;padding:16px 8px;border-radius:16px;box-shadow:var(--well-sm)}
.gv-s b{display:block;font-family:'Sora';font-size:clamp(26px,5vw,38px);font-weight:800;color:var(--accent);line-height:1}
.gv-s i{display:block;font-style:normal;font-size:12px;color:var(--muted);margin-top:6px;letter-spacing:.02em}
.gv-h{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2);margin:6px 0 8px}
.gv-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:12px;text-decoration:none;
  color:var(--ink);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.gv-row:hover{box-shadow:var(--raise-sm);transform:translateY(-1px)}
.gv-t{font-size:14.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-pass{flex:none;font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:600;color:#0a7d4b}
.gv-short{flex:none;font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--muted)}
[data-theme="dark"] .gv-pass{color:#5fe3a0}

/* ---- her X feed (/pulse) ---- */
.xfeed{display:flex;flex-direction:column;gap:14px;max-width:640px;margin-left:auto;margin-right:auto}
.xp{display:block;padding:18px 20px;border-radius:18px;text-decoration:none;color:var(--ink);
  transition:box-shadow .35s var(--ease),transform .35s var(--ease)}
.xp:hover{transform:translateY(-2px);box-shadow:var(--raise-sm),0 0 30px -14px var(--glow)}
.xp-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.xp-kind{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600}
.xp-kind.reply{color:var(--muted)}
.xp-ago{font-size:12px;color:var(--muted-2)}
.xp-text{font-size:15px;line-height:1.55;color:var(--ink-2);white-space:pre-wrap;word-break:break-word}
.xp-text a{color:var(--link);text-decoration:none}
.xp-go{margin-top:12px;font-size:12.5px;font-weight:600;color:var(--accent);opacity:0;transform:translateX(-4px);transition:.3s var(--ease)}
.xp:hover .xp-go{opacity:1;transform:none}
@media(max-width:560px){.gv-stats{gap:8px}.gv-s{padding:12px 4px}}
.xp{cursor:pointer}
.xp:focus-visible{outline:2px solid var(--dash);outline-offset:3px}

.embed-snip{font-family:'IBM Plex Mono',monospace;font-size:12.5px;line-height:1.6;color:var(--ink);background:var(--surface);box-shadow:var(--well-sm);border-radius:12px;padding:14px 16px;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:0}
.embed-snip code,.embed-line code{font-family:'IBM Plex Mono',monospace;color:var(--accent)}
.emb-n{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:15px;color:var(--accent);background:var(--surface);box-shadow:var(--well-sm);margin-bottom:16px}
.emb-facts{display:grid;grid-template-columns:1fr 1fr;gap:13px 28px}
.emb-fact{display:flex;gap:11px;align-items:flex-start;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.emb-ck{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-top:1px;border-radius:50%;color:var(--accent);font-size:12px;font-weight:700;background:var(--surface);box-shadow:var(--raise-sm)}
@media(max-width:640px){.emb-facts{grid-template-columns:1fr;gap:12px}}

/* ===== v2.6 IMAGINE — the dropdown, the roster, the budget, the phases, the visions ===== */

/* the Support dropdown — one calm tab holding the org's inner doors */
.nav-drop{position:relative;display:flex;align-items:center}
.nd-btn{display:inline-flex;align-items:center;gap:6px;font-family:inherit;font-size:13.5px;font-weight:600;letter-spacing:.02em;color:var(--ink-2);background:none;border:0;cursor:pointer;padding:9px 13px;border-radius:100px;transition:color .3s,box-shadow .3s,background .3s}
.nd-btn:hover,.nav-drop.open .nd-btn{color:var(--ink)}
.nd-btn.on{color:var(--ink);box-shadow:var(--well-sm);background:var(--bg)}
.nd-ch{width:11px;height:11px;flex:0 0 auto;transition:transform .32s var(--ease)}
.nav-drop.open .nd-ch,.nav-drop:hover .nd-ch,.nav-drop:focus-within .nd-ch{transform:rotate(180deg)}
.nd-menu{position:absolute;top:calc(100% + 10px);left:50%;min-width:198px;background:var(--surface);border-radius:18px;box-shadow:var(--raise);padding:10px;opacity:0;visibility:hidden;transform:translateX(-50%) translateY(-8px);transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s;z-index:60}
.nav-drop.open .nd-menu,.nav-drop:hover .nd-menu,.nav-drop:focus-within .nd-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.nd-item{display:flex;align-items:baseline;gap:8px;padding:11px 14px;border-radius:12px;font-size:14px;font-weight:600;color:var(--ink-2);text-decoration:none;transition:color .25s,box-shadow .25s,background .25s}
.nd-item:hover{color:var(--accent);box-shadow:var(--well-sm);background:var(--bg)}
.nd-item small{font-size:11.5px;font-weight:500;color:var(--ink-2);opacity:.75}
@media(max-width:940px){
  .nav-drop{flex-direction:column;align-items:stretch}
  .nd-btn{width:100%;justify-content:center;font-size:16px;padding:13px 16px}
  .nd-ch{transform:rotate(180deg)}
  .nd-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;background:none;padding:0 0 4px;min-width:0}
  .nd-item{text-align:center;justify-content:center;font-size:15px;padding:11px}
}

/* the roster — real people, verifiable */
.roster{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left}
.ro{padding:28px 26px}
.ro-head{display:flex;align-items:center;gap:16px}
.ro-ava{width:72px;height:72px;border-radius:50%;object-fit:cover;box-shadow:var(--raise-sm);flex:0 0 auto}
.ro-mono{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Sora',sans-serif;font-weight:800;font-size:22px;color:var(--accent);box-shadow:var(--well-sm);flex:0 0 auto}
.ro h3{font-size:18px;line-height:1.25;margin:0}
.ro-role{display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-top:5px}
.ro p{font-size:14px;line-height:1.62;color:var(--ink-2);margin-top:14px}
.ro-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.ro-links a{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:500;color:var(--accent);text-decoration:none;padding:6px 11px;border-radius:9px;box-shadow:var(--well-sm);transition:box-shadow .25s,transform .25s}
.ro-links a:hover{box-shadow:var(--raise-sm);transform:translateY(-1px)}
.ro-evo{margin-top:14px;padding:12px 14px;border-radius:12px;box-shadow:var(--well-sm);font-size:13px;line-height:1.6;color:var(--ink-2)}
.ro-evo b{color:var(--accent)}
.ro-mantra{margin-top:14px;font-size:13px;font-style:italic;color:var(--ink-2)}
@media(max-width:900px){.roster{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}}

/* the budget — where every Dash goes, felt not just listed */
.bud-row{display:grid;grid-template-columns:86px 1fr;gap:16px;align-items:start;padding:16px 0;border-bottom:1px solid var(--lo-2)}
.bud-row:last-child{border-bottom:0}
.bud-amt{font-family:'Sora',sans-serif;font-weight:800;font-size:24px;color:var(--accent);line-height:1.1}
.bud-amt small{display:block;font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:500;letter-spacing:.08em;color:var(--ink-2);margin-top:3px}
.bud-what b{display:block;font-size:15px;color:var(--ink);margin-bottom:4px}
.bud-what p{font-size:13.5px;line-height:1.6;color:var(--ink-2);margin:0}
.bud-track{height:9px;border-radius:6px;box-shadow:var(--well-sm);overflow:hidden;position:relative;margin-top:10px}
.bud-fill{position:absolute;inset:0 auto 0 0;width:0;border-radius:6px;background:linear-gradient(90deg,var(--dash),#00C2E0);transition:width 1.3s var(--ease) .25s}
.reveal.in .bud-fill{width:var(--w,50%)}
.bud-sum{margin-top:18px;font-size:14px;color:var(--ink-2);line-height:1.65}
.bud-sum b{color:var(--accent)}

/* the phases — five teams, grown like a network */
.phases{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left}
.ph{padding:28px 26px;position:relative}
.ph-num{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:var(--accent)}
.ph h3{font-size:17px;margin-top:10px}
.ph ul{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:9px}
.ph ul li{font-size:13.5px;line-height:1.55;color:var(--ink-2);padding-left:16px;position:relative}
.ph ul li::before{content:'';position:absolute;left:0;top:.55em;width:7px;height:7px;border-radius:50%;box-shadow:var(--well-sm)}
.ph ul li b{color:var(--ink)}
@media(max-width:900px){.phases{grid-template-columns:1fr}}

/* imagine-with-dasha — every team page opens a door to the commons */
.imag-cmd{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:14px;font-weight:600;color:var(--accent);background:var(--surface);box-shadow:var(--well-sm);padding:10px 18px;border-radius:12px;margin-top:16px}
.imag-note{font-size:13px;line-height:1.6;color:var(--ink-2);max-width:520px;margin:14px auto 0}
.imag-chip{margin-top:18px}

/* dream-with-dasha — the visions stream on the pulse. Team hues, text-safe both modes. */
:root{--vz-support:#0A5AA0;--vz-dream:#A56A10;--vz-build:#5B4BC4;--vz-design:#B93E77;--vz-growth:#1E7E62;--vz-dao:#0A7C8E}
[data-theme=dark]{--vz-support:#4FB3F5;--vz-dream:#F0C063;--vz-build:#A99BF5;--vz-design:#F08CBB;--vz-growth:#5AD3AC;--vz-dao:#54D6E8}
.vz-support{--tc:var(--vz-support)}.vz-dream{--tc:var(--vz-dream)}.vz-build{--tc:var(--vz-build)}.vz-design{--tc:var(--vz-design)}.vz-growth{--tc:var(--vz-growth)}.vz-dao{--tc:var(--vz-dao)}
.dwd-team{margin-top:30px}
.dwd-h{display:flex;align-items:center;gap:10px;font-family:'Sora',sans-serif;font-weight:700;font-size:16px;color:var(--ink)}
.dwd-dot{width:10px;height:10px;border-radius:50%;background:var(--tc);box-shadow:0 0 10px color-mix(in srgb,var(--tc) 45%,transparent)}
.dwd-n{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:500;color:var(--ink-2)}
.vz-card{position:relative;background:var(--surface);border-radius:16px;box-shadow:var(--raise-sm);padding:20px 22px 18px 26px;margin-top:14px}
.vz-card::before{content:'';position:absolute;left:10px;top:16px;bottom:16px;width:3px;border-radius:3px;background:var(--tc);opacity:.8}
.vz-t{font-family:'Sora',sans-serif;font-weight:700;font-size:15px;color:var(--ink);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.vz-score{font-family:'Sora',sans-serif;font-weight:800;font-size:13px;color:var(--tc);white-space:nowrap}
.vz-quote{font-size:14.5px;line-height:1.65;color:var(--ink-2);margin-top:8px}
.vz-refl{font-size:13px;line-height:1.6;font-style:italic;color:var(--ink-2);margin-top:10px;padding-top:10px;border-top:1px solid var(--lo-2)}
.vz-refl b{font-style:normal;color:var(--tc)}
.vz-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:12px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ink-2)}
.vz-meta .t{padding:3px 9px;border-radius:8px;box-shadow:var(--well-sm);color:var(--tc);font-weight:500}
.vz-meta .ch{padding:3px 9px;border-radius:8px;box-shadow:var(--well-sm)}
.vz-star{color:var(--tc);font-size:12px}
.vz-tip{margin-top:10px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--ink-2);word-break:break-all}
.vz-tip b{color:var(--tc);font-weight:600}
.dwd-cta{margin-top:34px}

/* ===== v2.6.1 ASCENSION — clean roster, huge chat, momentum ladder, roots & awards ===== */

/* THE ROSTER, RE-CUT — stacked head reads clean at every width; no cramped columns ever */
.ro-head{display:block}
.ro-ava,.ro-mono{margin-bottom:16px}
.ro h3{font-size:19px;line-height:1.3}
.ro-role{margin-top:7px;font-size:10.5px;letter-spacing:.08em;line-height:1.7}
.roster{gap:24px}
@media(max-width:1020px){.roster{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}}

/* SYMMETRY LAW — five team cards ride 5-across, or stack single-file. Never 3+2. */
.teams{grid-template-columns:repeat(5,1fr)}
@media(max-width:1080px){.teams{grid-template-columns:1fr;max-width:480px;margin-left:auto;margin-right:auto}}

/* THE CHAT, ASCENDED — big by default, fullscreen on demand */
.dchat.full{max-width:1080px;min-height:calc(100svh - 190px)}
.dchat-log{max-height:none;min-height:380px}
.chat-wrap{max-width:1120px;margin:0 auto}
.dchat-tool{width:36px;height:36px;border:0;border-radius:50%;background:var(--bg);box-shadow:var(--raise-sm);color:var(--accent);font-family:'Sora',sans-serif;font-weight:700;font-size:15px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;margin-right:8px;transition:box-shadow .28s,transform .28s,color .28s}
.dchat-tool:hover{transform:translateY(-1px);box-shadow:var(--raise-sm),0 0 16px rgba(0,140,231,.3)}
.dchat-tool:active{transform:translateY(1px);box-shadow:var(--well-sm)}
.dchat-fsw.dchat-fs{position:fixed;inset:0;z-index:300;background:var(--bg);display:flex;padding:clamp(8px,2vw,22px)}
.dchat-fsw.dchat-fs .dchat{max-width:1280px;width:100%;margin:auto;height:calc(100svh - clamp(16px,4vw,44px));min-height:0;display:flex;flex-direction:column}
.dchat-fsw.dchat-fs .dchat-log{max-height:none;min-height:0}
body.dchat-lock{overflow:hidden}

/* HER NEXT MOVES — tappable, glowing softly, never shouting */
.dnext{margin:4px 0 6px 4px}
.dnext-k{display:block;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:9px}
.dnext-row{display:flex;flex-wrap:wrap;gap:9px}
.dnext-row button{font-family:'Inter',sans-serif;font-size:13px;font-weight:600;color:var(--accent);text-align:left;background:var(--surface);border:0;border-radius:100px;padding:9px 16px;cursor:pointer;box-shadow:var(--raise-sm);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}
.dnext-row button:hover{transform:translateY(-1px);box-shadow:var(--raise-sm),0 0 18px rgba(0,140,231,.28)}
.dnext-row button:active{transform:translateY(1px);box-shadow:var(--well-sm)}

/* THE FEED, CURATED — headers + engagement + the hot aura */
.xf-h{display:flex;align-items:baseline;gap:10px;font-family:'Sora',sans-serif;font-weight:700;font-size:16px;color:var(--ink);margin-bottom:6px}
.xf-n{font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:500;color:var(--ink-2)}
.xf-spark{color:#00A6C4;font-size:15px}
[data-theme=dark] .xf-spark{color:#54D6E8}
.xp-eng{display:flex;gap:16px;margin-top:11px;font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--ink-2)}
.xp.hot{box-shadow:var(--raise),0 0 26px rgba(0,194,224,.14)}
.xp.hot .xp-eng{color:var(--accent);font-weight:500}

/* THE MOMENTUM LADDER — one team at a time, each rung lit by the current */
.pline{position:relative;max-width:660px;margin:0 auto;padding-left:36px}
.pline::before{content:'';position:absolute;left:12px;top:14px;bottom:14px;width:2px;border-radius:2px;background:linear-gradient(180deg,var(--dash),#00C2E0);opacity:.45}
.pl-step{position:relative;padding:24px 26px;margin-bottom:20px;text-align:left}
.pl-step:last-child{margin-bottom:0}
.pl-step::before{content:'';position:absolute;left:-30px;top:30px;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#00C2E0,var(--dash));box-shadow:0 0 14px rgba(0,140,231,.5)}
.pl-k{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--accent);text-transform:uppercase}
.pl-step h3{font-size:16.5px;margin-top:8px}
.pl-step p{font-size:13.5px;line-height:1.62;color:var(--ink-2);margin-top:8px}
.pl-step p b{color:var(--ink)}

/* THE VISION & THE ROOTS — every team page grows from meaning */
.vcard{padding:32px 34px;text-align:center}
.vh{font-family:'Sora',sans-serif;font-weight:600;font-size:clamp(17px,2.4vw,21px);line-height:1.55;color:var(--ink);margin-top:14px}
.vh em{font-style:normal;color:var(--accent)}
.roots{list-style:none;max-width:620px;margin:30px auto 0;display:flex;flex-direction:column;gap:13px;text-align:left}
.roots li{position:relative;padding-left:28px;font-size:15px;line-height:1.65;color:var(--ink-2)}
.roots li::before{content:'';position:absolute;left:0;top:.42em;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#00C2E0,var(--dash));box-shadow:0 0 10px rgba(0,140,231,.4)}
.roots li b{color:var(--ink)}

/* THE DASH DESIGN AWARDS — one gold seal, earned not decorated */
.award{max-width:560px;margin:36px auto 0;padding:32px 30px;text-align:center}
.aw-seal{width:58px;height:58px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:var(--well-sm),0 0 22px color-mix(in srgb,var(--vz-dream) 30%,transparent)}
.award p{font-size:14.5px;line-height:1.7;color:var(--ink-2)}
.award p b{color:var(--vz-dream)}

/* LIVING SURFACES — interactive cards breathe under the hand, within the threshold */
.team,.ro,.ph,.pl-step,.vz-card,.tcard{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.team:hover,.ro:hover,.ph:hover,.pl-step:hover,.vz-card:hover,.tcard:hover{transform:translateY(-3px);box-shadow:var(--raise),0 0 24px rgba(0,140,231,.1)}
.imag-cmd{animation:cmdGlow 3.6s ease-in-out infinite alternate}
@keyframes cmdGlow{from{box-shadow:var(--well-sm),0 0 10px rgba(0,140,231,.14)}to{box-shadow:var(--well-sm),0 0 20px rgba(0,140,231,.32)}}
@media(prefers-reduced-motion:reduce){
  .team,.ro,.ph,.pl-step,.vz-card,.tcard{transition:none}
  .team:hover,.ro:hover,.ph:hover,.pl-step:hover,.vz-card:hover,.tcard:hover{transform:none}
  .imag-cmd{animation:none}
}

/* ===== THE SYMMETRY LAW — a grid is either perfectly even or single-file. NEVER 2+1, NEVER 3+2. ===== */
.trio{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.trio{grid-template-columns:1fr;max-width:520px;margin-left:auto;margin-right:auto}}
.res-groups{grid-template-columns:1fr 1fr}
@media(max-width:720px){.res-groups{grid-template-columns:1fr}}
.ds-grid{grid-template-columns:1fr;max-width:780px;margin-left:auto;margin-right:auto}
.stat-row{grid-template-columns:repeat(3,1fr)}
@media(max-width:700px){.stat-row{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}}

/* THE ROSTER, WIDE — one generous row per person. Cards are never sticks. */
.roster{grid-template-columns:1fr;max-width:760px;margin-left:auto;margin-right:auto;gap:20px}
.ro{padding:28px 32px}
.ro-head{display:flex;align-items:center;gap:20px}
.ro-ava,.ro-mono{margin-bottom:0}
.ro h3{font-size:20px}
.ro-role{font-size:11px;letter-spacing:.1em}
@media(max-width:560px){.ro{padding:24px 22px}.ro-head{flex-direction:column;align-items:flex-start;gap:14px}}

/* THE CHAT, DOMINANT — she owns the room */
.dchat.full{max-width:1200px;min-height:calc(100svh - 120px)}
.chat-wrap{max-width:1260px}
@media(max-width:940px){.dchat.full{min-height:calc(100svh - 96px)}}

/* THE SPLIT — headers step out of the center; the page breathes off-axis */
.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start;text-align:left}
.split .sh .mini-k{justify-content:flex-start}
.split .sh h2,.split .sh .statement{text-align:left}
.split .sh p{text-align:left}
@media(max-width:880px){.split{grid-template-columns:1fr;gap:26px}}
.split .vcard{text-align:left}
.split .roots{margin:6px 0 0;max-width:none}
.split .sc .lede,.split .sc .whisper{text-align:left;margin-left:0;margin-right:0;max-width:none}

/* LIVING LIGHT — the current breathes through the key nodes and words */
.pl-step::before{animation:nodeBreathe 3.8s ease-in-out infinite alternate}
@keyframes nodeBreathe{from{box-shadow:0 0 8px rgba(0,140,231,.35)}to{box-shadow:0 0 18px rgba(0,194,224,.6)}}
.statement b,.statement em,h2 em{text-shadow:0 0 22px rgba(0,140,231,.25)}
[data-theme=dark] .statement b,[data-theme=dark] .statement em,[data-theme=dark] h2 em{text-shadow:0 0 26px rgba(84,214,232,.35)}
@media(prefers-reduced-motion:reduce){.pl-step::before{animation:none}}
