:root{--bg:#fff;--fg:#16181d;--muted:#5b6472;--line:#e2e6ec;--accent:#0b5fa5;
--accent-soft:#eaf2fa;--card:#f7f9fb}
@media(prefers-color-scheme:dark){:root{--bg:#12151a;--fg:#e8ebf0;--muted:#9aa4b2;
--line:#262c36;--accent:#6db3f2;--accent-soft:#18222e;--card:#171b22}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);line-height:1.6;
font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.wrap{max-width:60rem;margin:0 auto;padding:0 1.25rem}
header{border-bottom:1px solid var(--line);padding:.9rem 0;margin-bottom:2rem}
header .wrap{display:flex;gap:1rem;align-items:baseline;flex-wrap:wrap}
header a.brand{font-weight:700;font-size:1.05rem;color:var(--fg);text-decoration:none}
header nav{color:var(--muted);font-size:.9rem}
a{color:var(--accent)}
h1{font-size:clamp(1.5rem,4vw,2.1rem);line-height:1.25;margin:0 0 .4rem}
h2{font-size:1.2rem;margin:2.5rem 0 .75rem}
.sub{color:var(--muted);margin:0 0 2rem}
.stats{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));
margin:0 0 2rem}
.stat{background:var(--card);border:1px solid var(--line);border-radius:.5rem;padding:.85rem 1rem}
.stat .k{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
.stat .v{font-size:1.55rem;font-weight:650;font-variant-numeric:tabular-nums}
.stat.hero{background:var(--accent-soft);border-color:var(--accent)}
figure{margin:0 0 1rem}
svg{width:100%;height:auto;display:block}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;min-width:26rem;font-variant-numeric:tabular-nums}
th,td{text-align:right;padding:.5rem .7rem;border-bottom:1px solid var(--line);
white-space:nowrap}
th:first-child,td:first-child{text-align:left;white-space:normal}
thead th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
tbody tr:hover{background:var(--card)}
.note{color:var(--muted);font-size:.86rem;border-left:3px solid var(--line);
padding:.1rem 0 .1rem .9rem;margin:1rem 0}
.grid{display:grid;gap:.5rem 1.25rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));
padding:0;list-style:none;margin:0}
.grid li{border-bottom:1px solid var(--line);padding:.4rem 0}
.crumbs{font-size:.85rem;color:var(--muted);margin:0 0 1rem}
footer{margin-top:4rem;border-top:1px solid var(--line);padding:1.5rem 0 3rem;
color:var(--muted);font-size:.85rem}
footer p{margin:.35rem 0}