:root{--ink:#1b1f24;--muted:#5a6370;--line:#d9dee4;--bg:#fff;--soft:#f5f7f9;--accent:#1d4e89;--yes:#e9f4ec;--yesb:#2e7d4f;--no:#fbeceb;--nob:#b3412f;--warn:#fff6db;--warnb:#a87300;--com:#f3effa;--comb:#6a4c9c}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;font-size:1.0625rem}
.wrap{max-width:52rem;margin:0 auto;padding:0 1rem}
a{color:var(--accent)}a:focus-visible{outline:3px solid #f2b400;outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.site-header{background:var(--accent);color:#fff;padding:.8rem 0}
.site-header .wrap{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:baseline}
.brand{color:#fff;font-weight:800;font-size:1.3rem;text-decoration:none}
.tag{opacity:.9;font-size:.95rem}
.banner{background:var(--soft);border-bottom:1px solid var(--line);font-size:.92rem;padding:.6rem 0}
main{padding:1.5rem 1rem 3rem}
h1{font-size:1.9rem;line-height:1.2;margin:.2rem 0 1rem}
h1 .sub{display:block;font-size:1.05rem;font-weight:500;color:var(--muted);margin-top:.35rem}
h2{font-size:1.35rem;margin:2rem 0 .75rem}
h3{font-size:1.02rem;margin:0 0 .4rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
.lede{font-size:1.15rem}
.howto{background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:.25rem 1.25rem .75rem;margin:1.5rem 0}
.howto h2{margin-top:1rem}
.group h2{border-bottom:2px solid var(--ink);padding-bottom:.3rem;display:flex;gap:.6rem;align-items:center}
.count{font-size:.85rem;background:var(--ink);color:#fff;border-radius:999px;padding:.05rem .55rem}
.mlist{list-style:none;padding:0;margin:0}
.mlist li{border-bottom:1px solid var(--line)}
.mlist a{display:block;padding:.75rem .25rem;text-decoration:none;color:var(--ink)}
.mlist a:hover .ml{text-decoration:underline}
.ml{display:block;font-weight:700;color:var(--accent)}.ms{display:block;color:var(--muted);font-size:.95rem}
.pill{display:inline-block;font-size:.75rem;font-weight:700;background:var(--warn);color:#6b4a00;border:1px solid var(--warnb);border-radius:999px;padding:0 .5rem;margin:0 0 .6rem .25rem}
.notice{border-left:6px solid var(--warnb);background:var(--warn);padding:.75rem 1rem;border-radius:6px;margin:1rem 0}
.notice-h{font-weight:800;margin:0 0 .35rem;color:#6b4a00}
.notice p:last-child{margin-bottom:0}
.crumbs{font-size:.9rem;margin-bottom:.75rem}
.kicker{margin:0;color:var(--muted);font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}
.block{margin:1.5rem 0}
blockquote.title{margin:0;padding:.9rem 1rem;background:var(--soft);border-left:4px solid var(--accent);font-family:Georgia,"Times New Roman",serif;font-size:1rem;overflow-wrap:anywhere}
.src-note{font-size:.85rem;color:var(--muted);margin:.4rem 0 0}
.block-note{display:block}
.yesno{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}
@media (max-width:640px){.yesno{grid-template-columns:1fr}h1{font-size:1.55rem}}
.yn{border-radius:8px;padding:.85rem 1rem;border:1px solid}
.yn p{margin:0}
.yes{background:var(--yes);border-color:var(--yesb)}.yes h3{color:var(--yesb)}
.no{background:var(--no);border-color:var(--nob)}.no h3{color:var(--nob)}
.flag{font-size:.88rem;font-weight:600;background:var(--warn);border:1px dashed var(--warnb);padding:.4rem .6rem;border-radius:6px;margin:.6rem 0 0}
dl.meta{margin:1.5rem 0;display:grid;gap:.75rem}
dl.meta dt{font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
dl.meta dd{margin:.15rem 0 0}
.fiscal li,.sources li{margin:.35rem 0}
.commentary{margin-top:2.5rem;background:var(--com);border:2px dashed var(--comb);border-radius:10px;padding:1rem 1.25rem}
.commentary-label{margin:0 0 .25rem;color:var(--comb);font-size:1.1rem;text-transform:uppercase;letter-spacing:.05em}
.commentary-note{font-size:.85rem;color:var(--muted);margin:0 0 .75rem}
.placeholder{color:var(--muted);font-style:italic}
.site-footer{border-top:1px solid var(--line);background:var(--soft);font-size:.9rem;padding:1rem 0 2rem}
@media print{.site-header,.banner,.skip{display:none}.commentary{border-style:solid}}
.howlist li{margin:.4rem 0}.cite{font-size:.82rem;color:var(--muted)}
