:root{--bg:#0a1428;--panel:#111f38;--ink:#eef2f8;--mut:#9fb0c8;--acc:#f5c518;--acc2:#ffb020;--line:rgba(255,255,255,.09);--rad:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Segoe UI,-apple-system,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.68;font-size:16.5px;-webkit-font-smoothing:antialiased}
.w{max-width:1040px;margin:0 auto;padding:0 18px}
a{color:var(--acc);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%}
h1,h2,h3,h4{line-height:1.25;color:var(--ink);font-weight:800}
h1{font-size:2.15rem;margin:.2em 0 .35em}h2{font-size:1.5rem;margin:0 0 .5em}h3{font-size:1.15rem}h4{font-size:1.02rem;margin:.2em 0 .4em}
em{color:var(--acc);font-style:normal}
.hd{background:#111f38;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(6px)}
.hdin{display:flex;align-items:center;gap:16px;height:62px}
.lg img{height:30px;width:auto;display:block}
.nv{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto;font-size:14px}
.nv a{color:var(--mut);padding:6px 9px;border-radius:8px}.nv a:hover,.nv a[aria-current]{color:var(--ink);background:rgba(255,255,255,.06);text-decoration:none}
.cta{background:linear-gradient(135deg,var(--acc),var(--acc2));color:#141207;font-weight:800;padding:10px 18px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.cta:hover{text-decoration:none;filter:brightness(1.06)}
.hero{background:radial-gradient(1100px 520px at 82% -12%,#f5c51826,transparent),linear-gradient(180deg,#0c1830,#0a1428);padding:52px 0 40px;border-bottom:1px solid var(--line)}
.kick{display:inline-block;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);font-weight:800;background:#f5c51818;padding:5px 12px;border-radius:999px;margin-bottom:12px}
.dek{color:var(--mut);font-size:1.12rem;max-width:60ch;margin:.2em 0 1.2em}
.hb{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.gh{border:1px solid var(--line);color:var(--ink);padding:10px 18px;border-radius:999px;font-weight:700}.gh:hover{border-color:var(--acc);text-decoration:none}
.byl{color:var(--mut);font-size:13.5px;margin:0}.byl strong{color:var(--ink)}
.ribbon{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:22px}
.ribbon>div{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}
.ribbon b{display:block;font-size:1.35rem;color:var(--acc)}.ribbon span{color:var(--mut);font-size:13px}
.band{padding:26px 0}.band:nth-child(even){background:#111f3855}
.rd{max-width:780px;margin:0 auto}
.rd p,.zbody p{margin:.6em 0}
.zz{padding:22px 0;border-bottom:1px solid var(--line)}
.zzin{display:grid;grid-template-columns:64px 1fr;gap:18px;align-items:start}
.mark span{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;background:#f5c51818;color:var(--acc);font-weight:800;font-size:1.1rem}
ul,ol{padding-left:1.25em}li{margin:.3em 0}
ol.steps{list-style:none;counter-reset:s;padding-left:0}
ol.steps li{counter-increment:s;position:relative;padding:8px 0 8px 44px;border-bottom:1px dashed var(--line)}
ol.steps li:before{content:counter(s);position:absolute;left:0;top:6px;width:30px;height:30px;border-radius:50%;background:var(--acc);color:#141207;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.9rem}
.def{background:var(--panel);border-left:3px solid var(--acc);border-radius:0 10px 10px 0;padding:12px 16px;margin:14px 0}.def b{color:var(--acc)}
.note{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--acc);border-radius:10px;padding:14px 16px;margin:16px 0}
.note.warn{border-left-color:#ff7a4d}.note.alt{border-left-color:#ffb020}
.note h4{margin-top:0;color:var(--ink)}
.mf{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}
.mf>div{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--panel)}
.mf .myth h4{color:#ff7a4d}.mf .fact h4{color:#43d089}
.tw{overflow-x:auto;margin:16px 0}
table{border-collapse:collapse;width:100%;font-size:14.5px;min-width:420px}
th,td{border:1px solid var(--line);padding:9px 12px;text-align:left}
thead th{background:#f5c51818;color:var(--ink)}tbody th{background:var(--panel);width:34%}
tbody tr:nth-child(even){background:#111f3855}
details{border:1px solid var(--line);border-radius:10px;padding:2px 14px;margin:10px 0;background:var(--panel)}
summary{cursor:pointer;font-weight:700;padding:10px 0}details p{margin-top:0}
figure{margin:20px 0}figcaption{color:var(--mut)}
.ft{background:#111f38;border-top:1px solid var(--line);padding:34px 0 24px;margin-top:20px;font-size:14.5px}
.fg{display:grid;grid-template-columns:1.6fr 1fr;gap:26px}
.fg h4{color:var(--ink)}.fg a{display:block;color:var(--mut);padding:3px 0}
.so{display:flex;gap:10px;margin-top:12px}.so svg{width:26px;height:26px}
.lgl{border-top:1px solid var(--line);margin-top:24px;padding-top:16px;color:var(--mut);font-size:12.8px}
/* ---- RAIL layout: sticky TOC sidebar + content ---- */
.rail-hd .subnav{border-top:1px solid var(--line);background:#111f38}
.subnav .w{display:flex;gap:4px;overflow-x:auto;padding:6px 18px;font-size:13.5px}
.subnav a{color:var(--mut);white-space:nowrap;padding:6px 10px;border-radius:8px}.subnav a:hover{color:var(--ink);background:rgba(255,255,255,.06);text-decoration:none}
.hero-rail{padding:38px 0 26px}
.shell{display:grid;grid-template-columns:250px 1fr;gap:34px;align-items:start;padding:8px 18px 0}
.rail{position:sticky;top:80px}
.railin{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}
.rlabel{display:block;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-bottom:10px;font-weight:800}
.railin nav{display:flex;flex-direction:column;gap:2px}
.railin nav a{color:var(--mut);font-size:14px;padding:7px 10px;border-radius:8px;border-left:2px solid transparent}
.railin nav a:hover{color:var(--ink);border-left-color:var(--acc);background:rgba(255,255,255,.06);text-decoration:none}
.rcta{display:block;text-align:center;margin-top:14px}
.main{min-width:0;max-width:760px}
article.rl{border-bottom:1px solid var(--line);padding:8px 0 22px;margin-bottom:6px}
article.rl h2{display:flex;align-items:baseline;gap:12px;scroll-margin-top:120px}
.rn{color:var(--acc);font-size:1rem;font-weight:800;font-variant-numeric:tabular-nums;opacity:.85}
/* ---- ZZ layout: split hero ---- */
.hero-split{padding:44px 0 34px}
.hsplit{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center}
.hs-img img{border-radius:16px;border:1px solid var(--line);box-shadow:0 16px 44px rgba(0,0,0,.35);width:100%}
@media(max-width:860px){.shell{grid-template-columns:1fr}.rail{position:static}.railin nav{flex-direction:row;flex-wrap:wrap}.hsplit{grid-template-columns:1fr}.hs-img{order:-1}}
@media(max-width:720px){.fg{grid-template-columns:1fr}.mf{grid-template-columns:1fr}.nv{display:none}h1{font-size:1.7rem}.zzin{grid-template-columns:1fr}.mark span{width:40px;height:40px}}
