:root{--bg:#070913;--card:#0b1026;--line:#1e293b;--ink:#f1f5f9;--muted:#94a3b8;--faint:#64748b;--brand:#6366f1;--brand2:#818cf8}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--brand2)}a:hover{color:#a5b4fc}.wrap{max-width:860px;margin:0 auto;padding:0 16px}
header{border-bottom:1px solid var(--line);background:#0a0d1e}header .wrap{display:flex;align-items:center;justify-content:space-between;height:60px;gap:12px}
.logo{font-weight:800;font-size:19px;color:#fff;text-decoration:none;white-space:nowrap}.logo span{color:var(--brand2)}
.btn{display:inline-block;background:var(--brand);color:#fff!important;text-decoration:none;font-weight:600;font-size:14px;padding:10px 16px;border-radius:12px}.btn:hover{background:#4f46e5}
nav.crumbs{font-size:13px;color:var(--faint);margin:20px 0 4px}nav.crumbs a{color:var(--muted);text-decoration:none}
h1{font-size:clamp(26px,5vw,36px);line-height:1.2;margin:8px 0 12px}h2{font-size:21px;margin:36px 0 12px;padding-top:8px;border-top:1px solid var(--line)}
.lead{color:#cbd5e1}.muted{color:var(--muted)}.small{font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.chip{font-size:13px;padding:3px 10px;border-radius:999px;background:#111735;border:1px solid #2a3360;color:#c7d2fe}
ol.qs{padding-left:22px}ol.qs li{margin:0 0 16px}ol.qs li strong{display:block;color:#fff;font-weight:600}ol.qs li p{margin:4px 0 0;color:var(--muted);font-size:14.5px}
.cta{margin:32px 0;padding:22px;border-radius:18px;background:linear-gradient(135deg,#1e1b4b,#0b1026);border:1px solid #3730a3}
.cta h2{border:0;margin:0 0 6px;padding:0;font-size:20px}.cta p{margin:0 0 14px;color:#cbd5e1}
.toc{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 18px;font-size:14px}.toc a{text-decoration:none}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px 18px}.grid a{text-decoration:none;font-size:14.5px}
footer{margin-top:48px;border-top:1px solid var(--line);padding:22px 0 40px;font-size:13px;color:var(--faint)}footer a{color:var(--muted)}
input.search{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #334155;background:var(--card);color:var(--ink);font-size:15px}
details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 16px;margin:10px 0}summary{cursor:pointer;font-weight:600}