:root{--fg:#1d2125;--muted:#5c6670;--bg:#fff;--line:#dfe3e8;--accent:#1c5fb8;--soft:#f4f6f8}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--fg);background:var(--bg)}
a{color:var(--accent)}
a:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid #f59f00;outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:1}
header.top,footer.bottom,main{max-width:60rem;margin:0 auto;padding:0 16px}
header.top{display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center;padding-top:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
header.top .brand{font-weight:700;text-decoration:none;color:var(--fg);font-size:1.1rem;margin-right:auto}
header.top nav a{margin-left:12px}
main{padding-top:8px;padding-bottom:32px}
h1{font-size:1.6rem;line-height:1.25;margin:16px 0 4px}
h2{font-size:1.2rem;margin:28px 0 8px}
h3{font-size:1rem;margin:20px 0 6px}
.lede{color:var(--muted);margin:0 0 12px}
.draft{background:#fff3bf;border:1px solid #f59f00;padding:8px 12px;border-radius:6px;font-weight:600}
.button{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:10px 16px;border-radius:6px;font-weight:600}
form.search{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
form.search input{flex:1 1 14rem;font:inherit;padding:10px;border:1px solid #8a949e;border-radius:6px}
form.search button{font:inherit;padding:10px 16px;border:0;border-radius:6px;background:var(--accent);color:#fff;font-weight:600}
dl.facts{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;gap:4px 16px;margin:0}
dl.facts dt{color:var(--muted)}dl.facts dd{margin:0}
.chips{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.chip{display:inline-block;border-radius:999px;padding:1px 9px;font-size:.85rem;font-weight:600;white-space:nowrap}
.cite{font-size:.75em;vertical-align:super;line-height:0;margin-left:1px;text-decoration:none}
.period{color:var(--muted);font-size:.85rem}
.kind{display:inline-block;width:.7em;height:.7em;border-radius:2px;margin-right:6px;vertical-align:baseline;background:var(--k)}
.table{overflow-x:auto}
table{border-collapse:collapse;width:100%;font-size:.95rem}
th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-weight:600;background:var(--soft)}
.bar{display:flex;height:14px;border-radius:3px;overflow:hidden;margin:6px 0;max-width:30rem}
.bar span{display:block}
ul.cols{columns:16rem;padding-left:18px}
ol.sources{padding-left:22px;font-size:.9rem}ol.sources li{margin:4px 0}
.note{color:var(--muted);font-style:italic;font-size:.9rem;margin:6px 0}
table.trend{width:auto;min-width:16rem}table.trend caption{text-align:left;color:var(--muted);font-size:.85rem;padding:4px 0}
ol.sources details{margin:2px 0 6px}ol.sources summary{cursor:pointer;color:var(--accent)}
ol.sources blockquote{margin:4px 0 4px 8px;padding-left:10px;border-left:3px solid var(--line);color:var(--muted)}
.todo{border:1px dashed #8a949e;padding:8px 12px;border-radius:6px;color:var(--muted)}
footer.bottom{border-top:1px solid var(--line);padding-top:12px;padding-bottom:24px;color:var(--muted);font-size:.85rem}
@media (min-width:40rem){h1{font-size:2rem}}
.k-grammar{--k:#7048e8}
.k-independent{--k:#d6336c}
.k-secondary{--k:#1c7ed6}
.k-primary{--k:#2b8a3e}
.k-special{--k:#e67700}
.k-nursery{--k:#0ca678}
.k-other{--k:#868e96}
.b0{background:#c73232;color:#ffffff}
.b1{background:#c75032;color:#ffffff}
.b2{background:#c76d32;color:#111111}
.b3{background:#c78b32;color:#111111}
.b4{background:#c7a932;color:#111111}
.b5{background:#c7c732;color:#111111}
.b6{background:#a9c732;color:#111111}
.b7{background:#8bc732;color:#111111}
.b8{background:#6dc732;color:#111111}
.b9{background:#50c732;color:#111111}
.b10{background:#32c732;color:#111111}
.q1{background:#c73232}
.q2{background:#c76d32}
.q3{background:#c7c732}
.q4{background:#8bc732}
.q5{background:#32c732}
