:root{
  --bg:#fbfaf7; --surface:#ffffff; --ink:#1c1b19; --muted:#5d5a54; --line:#dcd8cf;
  --accent:#1f4e6b; --accent-ink:#ffffff;
  --q1:#1f4e6b; --q2:#4f7f9c; --q3:#b59a63; --q4:#8a5a3b;
  --range:#1f4e6b; --track:#e7e3d9;
  --flag:#8a2f1e;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#161513; --surface:#1e1d1a; --ink:#ece9e2; --muted:#a39f95; --line:#37352f;
    --accent:#8fbad3; --accent-ink:#10202b;
    --q1:#8fbad3; --q2:#6d9bb7; --q3:#c9b27a; --q4:#c58b66;
    --range:#8fbad3; --track:#34322c; --flag:#e0907c;
  }
}
:root[data-theme="dark"]{
  --bg:#161513; --surface:#1e1d1a; --ink:#ece9e2; --muted:#a39f95; --line:#37352f;
  --accent:#8fbad3; --accent-ink:#10202b;
  --q1:#8fbad3; --q2:#6d9bb7; --q3:#c9b27a; --q4:#c58b66;
  --range:#8fbad3; --track:#34322c; --flag:#e0907c;
}
*{box-sizing:border-box}
html{font-size:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.wrap{max-width:72rem;margin:0 auto;padding:0 1rem}
header.site{border-bottom:1px solid var(--line);background:var(--surface)}
header.site .wrap{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:baseline;padding-top:.9rem;padding-bottom:.9rem}
.brand{font-weight:700;font-size:1.15rem;text-decoration:none;color:var(--ink)}
nav.main{display:flex;flex-wrap:wrap;gap:.25rem 1rem;font-size:.95rem}
nav.main a{text-decoration:none;padding:.15rem 0;border-bottom:2px solid transparent}
nav.main a[aria-current="page"]{border-bottom-color:var(--accent);font-weight:600}
main{padding:1.5rem 0 3rem}
h1{font-size:1.75rem;line-height:1.25;margin:.2rem 0 .6rem}
h2{font-size:1.25rem;margin:2rem 0 .6rem}
h3{font-size:1.05rem;margin:1.4rem 0 .4rem}
p,li{max-width:46rem}
.lede{font-size:1.1rem;color:var(--muted);max-width:46rem}
.tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 1.25rem;padding:0;list-style:none}
.tabs a{display:block;padding:.35rem .75rem;border:1px solid var(--line);border-radius:.4rem;text-decoration:none;background:var(--surface);color:var(--ink);font-size:.95rem}
.tabs a[aria-current="page"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.tabs .n{color:var(--muted);font-size:.85em}
.tabs a[aria-current="page"] .n{color:inherit;opacity:.85}
.legend{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;font-size:.9rem;color:var(--muted);margin:.5rem 0 1rem;padding:0;list-style:none}
.note{border-left:3px solid var(--line);padding:.1rem 0 .1rem .9rem;color:var(--muted);max-width:46rem}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:.5rem;background:var(--surface)}
table.rank{border-collapse:collapse;width:100%;min-width:62rem;font-size:.92rem}
table.rank caption{text-align:left;padding:.6rem .75rem;color:var(--muted);font-size:.9rem}
table.rank th,table.rank td{padding:.5rem .6rem;border-top:1px solid var(--line);text-align:left;vertical-align:middle}
table.rank thead th{border-top:0;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);white-space:nowrap}
table.rank tbody th{font-weight:600}
table.rank td.num,table.rank th.num{text-align:right;font-variant-numeric:tabular-nums}
.band{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}
.band i{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;background:var(--c)}
.band.q1 i{--c:var(--q1)} .band.q2 i{--c:var(--q2)} .band.q3 i{--c:var(--q3)} .band.q4 i{--c:var(--q4)}
.pillars{display:flex;gap:.3rem}
.dot{display:inline-block;width:.85rem;height:.85rem;border-radius:.2rem;background:var(--c)}
.dot.q1{--c:var(--q1)} .dot.q2{--c:var(--q2)} .dot.q3{--c:var(--q3)} .dot.q4{--c:var(--q4)}
.range{display:flex;align-items:center;gap:.5rem;white-space:nowrap}
.range svg{display:block;flex:none}
.range .track{fill:var(--track)} .range .bar{fill:var(--range);opacity:.55} .range .med{fill:var(--range)}
.flag{color:var(--flag);font-size:.85rem}
.muted{color:var(--muted)}
.small{font-size:.85rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem;margin:1.25rem 0}
.card{border:1px solid var(--line);border-radius:.5rem;background:var(--surface);padding:1rem}
.card h2{margin:.1rem 0 .3rem;font-size:1.1rem}
.card p{margin:.2rem 0}
table.plain{border-collapse:collapse;margin:1rem 0;font-size:.93rem;max-width:100%}
table.plain th,table.plain td{border:1px solid var(--line);padding:.4rem .6rem;vertical-align:top;text-align:left}
table.plain th{background:var(--surface)}
.prose table{display:block;overflow-x:auto}
.prose blockquote{margin:1rem 0;border-left:3px solid var(--accent);padding:.1rem 1rem;color:var(--muted)}
.prose code{background:var(--surface);border:1px solid var(--line);border-radius:.25rem;padding:0 .25rem;font-size:.9em}
footer.site{border-top:1px solid var(--line);background:var(--surface);padding:1.25rem 0;font-size:.88rem;color:var(--muted)}
footer.site p{max-width:60rem;margin:.3rem 0}
.skip{position:absolute;left:-999px}
.skip:focus{left:1rem;top:1rem;background:var(--accent);color:var(--accent-ink);padding:.4rem .7rem;z-index:5}
@media (max-width:40rem){h1{font-size:1.45rem}}
table.rank tbody th,table.rank thead th:first-child{position:sticky;left:0;background:var(--surface);z-index:1;box-shadow:1px 0 0 var(--line)}

.glance-t{width:100%;max-width:46rem}
.glance-t th{width:12rem;font-weight:600;background:var(--surface)}
.pill{display:inline-block;margin:.1rem .9rem .1rem 0;white-space:nowrap}
tr.pillar-row th{background:var(--bg);font-size:.95rem;border-top:2px solid var(--line)}
table.measures tbody th[scope="row"]{font-weight:500}
tr.me th,tr.me td{background:color-mix(in srgb,var(--accent) 9%,var(--surface))}
tr.avg th,tr.avg td{font-style:italic;color:var(--muted)}
section{margin-top:1.5rem}
.azlist{columns:2 18rem;column-gap:2rem;padding-left:1.1rem}
.azlist li{break-inside:avoid;margin:.15rem 0}
