:root{
  --bg:#F3F6F8; --surface:#FFFFFF; --surface-2:#E7EEF2;
  --text:#14202A; --text-muted:#52616E; --border:#D3DEE6;
  --accent:#16956F; --accent-ink:#0E6E51; --gold:#9A6A00;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0B0E12; --surface:#131820; --surface-2:#1A212B;
    --text:#E6EDF3; --text-muted:#93A1B1; --border:#263040;
    --accent:#5BE0B3; --accent-ink:#8FF0CD; --gold:#F2C96B;
  }
}
*{box-sizing:border-box}
html,body{margin:0; padding:0}
body{background:var(--bg); color:var(--text); font:16px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}
h1,h2,h3{font-weight:700; letter-spacing:-0.01em; text-wrap:balance}
.wrap{max-width:760px; margin:0 auto; padding:48px 16px 80px}
.wordmark{font-weight:800; font-size:1.6rem; letter-spacing:1px; color:var(--text); text-decoration:none}
.wordmark span{color:var(--accent)}
.kicker{color:var(--text-muted); font-size:0.8rem; margin-top:4px; text-transform:uppercase; letter-spacing:0.08em; font-weight:700}
h1.title{font-size:2.1rem; margin:20px 0 6px; line-height:1.2}
.updated{color:var(--text-muted); font-size:0.92rem; margin-bottom:32px}
.lede{background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:20px 22px; margin-bottom:36px}
.lede p{margin:0 0 12px} .lede p:last-child{margin-bottom:0}
nav.toc{background:var(--surface-2); border-radius:14px; padding:20px 24px; margin-bottom:44px}
nav.toc .toc-title{font-weight:700; font-size:0.85rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:10px}
nav.toc ol{margin:0; padding-left:1.3em; columns:2; column-gap:28px}
nav.toc li{margin-bottom:6px; break-inside:avoid}
nav.toc a{color:var(--accent-ink); text-decoration:none; font-size:0.94rem}
@media (max-width:560px){ nav.toc ol{columns:1} }
section{margin-bottom:40px; scroll-margin-top:20px}
h2{font-size:1.3rem; margin:0 0 8px; display:flex; align-items:baseline; gap:10px}
h2 .num{color:var(--accent); font-variant-numeric:tabular-nums}
p{margin:0 0 14px; max-width:68ch}
ul,ol{margin:0 0 14px; padding-left:1.4em}
li{margin-bottom:6px}
.card{background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:16px 18px; margin:14px 0}
.card.warn{border-left:4px solid var(--gold)}
.card p:last-child{margin-bottom:0}
.table-wrap{overflow-x:auto; margin:14px 0 20px}
table{width:100%; border-collapse:collapse; font-size:0.92rem; background:var(--surface); border:1px solid var(--border)}
th,td{text-align:left; padding:10px 12px; border-bottom:1px solid var(--border); vertical-align:top}
th{background:var(--surface-2); font-size:0.8rem; text-transform:uppercase; letter-spacing:0.04em; color:var(--text-muted)}
a{color:var(--accent-ink)}
a:focus-visible{outline:2px solid var(--accent); outline-offset:2px}
.btn{display:inline-block; background:var(--accent); color:#062018; text-decoration:none; border-radius:10px; padding:12px 18px; font-weight:700}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; margin:24px 0 36px}
footer.legal-nav{color:var(--text-muted); font-size:0.88rem; text-align:center}
footer.legal-nav nav{display:flex; flex-wrap:wrap; justify-content:center; gap:6px 16px; margin-bottom:10px}
footer.legal-nav a{color:var(--text-muted)}
footer.legal-nav a[aria-current="page"]{color:var(--accent-ink); font-weight:700}
