:root{--bg:#fff;--fg:#1a2233;--muted:#5b6472;--line:#e6e9ef;--brand:#1d6fe0;--high:#c0392b;--low:#1e8f4e;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--fg);background:var(--bg)}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
.nav{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line)}
.logo{font-weight:700;font-size:19px;color:var(--fg)}
.nav nav a{margin-left:16px;color:var(--muted)}
.wrap{max-width:860px;margin:0 auto;padding:24px 20px 60px}
.crumb{font-size:13px;color:var(--muted);margin-bottom:12px}
h1{font-size:30px;line-height:1.25;margin:.2em 0 .4em}
h2{font-size:22px;margin:1.6em 0 .5em}
.lede{font-size:18px;color:var(--muted)}
.data-note{border-left:4px solid var(--brand);background:#f5f9ff;padding:12px 14px;margin:18px 0 22px;color:#334155;font-size:14px}
.data-note strong{color:var(--fg)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:20px 0}
.card{border:1px solid var(--line);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:4px}
.card .label{font-size:13px;color:var(--muted)}
.card .value{font-size:26px;font-weight:700}
.card .value small{font-size:14px;font-weight:400;color:var(--muted)}
.cmp{font-size:13px}
.cmp.high{color:var(--high)}
.cmp.low{color:var(--low)}
.cmp.neutral{color:var(--muted)}
.ad-slot{min-height:90px;margin:22px 0;border:1px dashed var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#b8c0cc;font-size:12px}
.ad-slot:empty::before{content:"Ad"}
details{border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin:8px 0}
summary{cursor:pointer;font-weight:600}
.data-table{width:100%;border-collapse:collapse;margin:16px 0}
.data-table th,.data-table td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);font-size:14px}
.data-table th{background:#f7f9fc}
.city-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px}
.state-list{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.state-list a{border:1px solid var(--line);border-radius:20px;padding:5px 14px}
.source{font-size:12px;color:var(--muted);margin-top:28px;border-top:1px solid var(--line);padding-top:12px}
.foot{border-top:1px solid var(--line);padding:24px 20px;text-align:center;color:var(--muted);font-size:13px}
.foot nav{margin-top:6px}
.foot a{color:var(--muted)}
