:root{
  --ink:#0B0E14; --panel:#141A26; --panel-2:#1B2433; --line:#27324a;
  --text:#E7ECF4; --muted:#93A0B7; --faint:#61708c;
  --azure:#5B8CFF; --azure-soft:#31406b; --gold:#F2B84B; --good:#43D6A3;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --sans:"IBM Plex Sans",system-ui,sans-serif;
  --disp:"Chakra Petch","IBM Plex Sans",system-ui,sans-serif;
  --maxw:820px;
}
*{box-sizing:border-box}
body{margin:0;background:var(--ink);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--azure);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:24px}
header{position:sticky;top:0;z-index:20;background:rgba(11,14,20,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:15px}
.brand{font-family:var(--disp);font-weight:700;font-size:19px;letter-spacing:-.01em;display:flex;align-items:center;gap:10px;color:inherit}
.brand .dot{width:10px;height:10px;border-radius:50%;background:var(--azure);box-shadow:0 0 14px var(--azure)}
.brand b{color:var(--azure)}
.back{font-family:var(--mono);font-size:13px;color:var(--muted)}
main{padding-block:44px 72px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--azure)}
h1{font-family:var(--disp);font-weight:600;font-size:34px;line-height:1.1;margin:.35em 0 .15em}
.updated{font-family:var(--mono);font-size:13px;color:var(--faint);margin-bottom:8px}
.note{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:8px;padding:12px 16px;font-size:14px;color:var(--muted);margin:22px 0}
h2{font-family:var(--disp);font-weight:600;font-size:20px;margin:34px 0 6px;scroll-margin-top:80px}
h3{font-family:var(--disp);font-weight:600;font-size:16px;margin:20px 0 4px;color:var(--text)}
p,li{color:#c7d0e0}
ul,ol{padding-left:22px}
li{margin:5px 0}
.toc{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 20px;margin:26px 0}
.toc div{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:8px}
.toc ol{margin:0;columns:2;column-gap:30px}
.toc a{color:var(--muted)}
code{font-family:var(--mono);font-size:.92em;background:var(--panel-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px;color:var(--text)}
strong{color:var(--text)}
footer{border-top:1px solid var(--line);margin-top:20px;padding-block:34px;color:var(--faint);font-size:13.5px}
footer a{color:var(--muted)}
.footlinks{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px}
@media(max-width:640px){.toc ol{columns:1}h1{font-size:27px}}
