:root{color-scheme:dark light;--bg:#070a12;--panel:#101624;--ink:#eef4ff;--muted:#a9b6cc;--line:#273249;--accent:#27c6dc;--warn:#f6c35b;--max:760px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.65}a{color:var(--accent);text-underline-offset:.16em}header,main,footer{width:min(calc(100% - 2rem),var(--max));margin-inline:auto}header{padding:2rem 0 1rem;border-bottom:1px solid var(--line)}header a{text-decoration:none;font-weight:800}header p{margin:.35rem 0 0;color:var(--muted)}main{padding:2rem 0 4rem}h1{font-size:clamp(2rem,7vw,3.25rem);line-height:1.08;margin:0 0 .75rem}h2{font-size:1.35rem;line-height:1.25;margin:2.25rem 0 .65rem}h3{font-size:1.05rem;margin:1.5rem 0 .35rem}p,li{max-width:72ch}.meta,.muted{color:var(--muted)}.callout{padding:1rem 1.1rem;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:.7rem;background:var(--panel)}.warning{border-left-color:var(--warn)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.8rem;margin:1.5rem 0}.card{display:block;padding:1rem;border:1px solid var(--line);border-radius:.8rem;background:var(--panel);color:var(--ink);text-decoration:none}.card strong{display:block}.card span{display:block;color:var(--muted);font-size:.9rem;margin-top:.25rem}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;vertical-align:top;padding:.7rem;border:1px solid var(--line)}th{background:var(--panel)}code{font-size:.9em}footer{padding:1.5rem 0 3rem;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}.legal-nav{display:flex;flex-wrap:wrap;gap:.7rem 1rem;margin-top:1rem}.toc{padding:1rem 1.2rem;border:1px solid var(--line);border-radius:.8rem;background:var(--panel)}@media(prefers-color-scheme:light){:root{--bg:#f7f9fc;--panel:#fff;--ink:#101827;--muted:#516078;--line:#d7dfeb;--accent:#087f91;--warn:#9d6300}}@media(max-width:580px){table{display:block;overflow-x:auto}header{padding-top:1.25rem}}
