/* Generated by tools/sync_public_hub_ui.mjs from database-worker/public/states.html (its inline <style> block). Do not edit. */
.hub-states * { box-sizing:border-box; }
.hub-states a { color:var(--gold); }
.hub-states p { margin:0 0 8px; }
.hub-states .hint { color:var(--faint); font-size:11.5px; }
.hub-states h1 { font-size:24px; margin:6px 0 4px; }
.hub-states .lede { color:var(--muted); font-size:13px; margin:0 0 18px; max-width:70ch; }
.hub-states .view-toggle { display:inline-flex; border:1px solid var(--control-border); border-radius:6px;
                 overflow:hidden; margin:0 0 16px; }
.hub-states .view-toggle button { background:transparent; border:0; cursor:pointer; color:var(--muted);
                        font:inherit; font-size:12.5px; padding:6px 14px; min-height:32px; }
.hub-states .view-toggle button + button { border-left:1px solid var(--border); }
.hub-states .view-toggle button[aria-pressed="true"] { background:var(--gold-fill); color:var(--on-gold); font-weight:600; }
.hub-states .view-toggle button:disabled { opacity:.5; cursor:not-allowed; }
.hub-states .metric-select { margin:0 0 14px; font-size:12.5px; color:var(--muted); display:flex;
                   align-items:center; gap:8px; flex-wrap:wrap; }
.hub-states .metric-select select { font:inherit; background:var(--panel); color:var(--text);
                          border:1px solid var(--control-border); border-radius:5px; padding:5px 8px; }
.hub-states .legend { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--muted); margin:0 0 12px;
            flex-wrap:wrap; }
.hub-states .legend .scale { width:120px; height:10px; border-radius:5px; }
.hub-states .side-switch { display:flex; flex-wrap:wrap; gap:6px; margin:0 0 12px; }
.hub-states .side-switch button { font:inherit; font-size:12.5px; padding:4px 12px; min-height:30px; border-radius:999px;
                        border:1px solid var(--border-strong); background:var(--panel); color:var(--muted);
                        cursor:pointer; white-space:nowrap; }
.hub-states .side-switch button:hover { color:var(--text); border-color:var(--control-border); }
.hub-states .side-switch button[aria-pressed="true"] { background:var(--gold-fill); border-color:var(--gold-fill);
                                             color:var(--on-gold); font-weight:600; }
.hub-states .plain-table { width:100%; border-collapse:collapse; font-size:12.5px; }
.hub-states .plain-table th,
.hub-states .plain-table td { padding:7px 9px; border-bottom:1px solid var(--border); text-align:right; }
.hub-states .plain-table th:first-child,
.hub-states .plain-table td:first-child { text-align:left; }
.hub-states .plain-table thead th { font-size:10.5px; letter-spacing:.6px; text-transform:uppercase; color:var(--faint); }
.hub-states .plain-table thead th button { all:unset; cursor:pointer; user-select:none; display:inline-flex; align-items:center; }
.hub-states .plain-table thead th button:hover { color:var(--text); }
.hub-states .plain-table tbody tr:hover { background:var(--panel2); }
.hub-states .plain-table a { color:var(--text); text-decoration:none; }
.hub-states .plain-table a:hover { color:var(--gold); }
.hub-states .table-scroll { overflow-x:auto; border:1px solid var(--border); border-radius:8px; }
.hub-states #mapView[hidden],
.hub-states #tableView[hidden] { display:none; }
.hub-states .map-host { width:100%; }
.hub-states .map-host svg.usm-svg { width:100%; height:auto; display:block; overflow:hidden; }
.hub-states .usm-path { stroke:var(--panel); stroke-width:1.2; fill:var(--panel2); }
.hub-states .usm-path.zero { fill:var(--panel2); }
.hub-states a.usm-state { cursor:pointer; }
.hub-states a.usm-state:hover .usm-path,
.hub-states a.usm-state:focus-visible .usm-path { stroke:var(--gold); stroke-width:2.2; }
.hub-states a.usm-state:focus-visible { outline:2px solid var(--gold); outline-offset:1px; }
.hub-states .usm-label { font-size:15px; font-weight:700; fill:var(--text); text-anchor:middle;
               paint-order:stroke; stroke:var(--panel); stroke-width:3px; stroke-linejoin:round;
               pointer-events:none; }
.hub-states .usm-label-callout { font-size:13px; text-anchor:start; }
.hub-states .usm-leader { stroke:var(--faint); stroke-width:1; fill:none; }
.hub-states .usm-marker { fill:var(--gold); stroke:var(--panel); stroke-width:1; }
.hub-states .compact-only { display:none; }
@media (max-width:480px) {
.hub-states .usm-leader,
.hub-states .usm-label-callout { display:none; }
.hub-states .compact-only { display:block; }
}
.hub-states .map-tip { position:fixed; z-index:50; max-width:280px; padding:7px 10px; border-radius:6px;
              background:var(--text); color:var(--panel); font-size:12px; line-height:1.4;
              pointer-events:none; }
.hub-states .state { color:var(--muted); font-size:13.5px; padding:10px 2px; }
.hub-states .state.error { color:var(--anti-text); display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.hub-states .state.error button { background:var(--panel2); color:var(--text); font:inherit; border:1px solid var(--control-border);
                        border-radius:5px; padding:5px 12px; min-height:24px; cursor:pointer; }
.hub-states .state.error button:hover { border-color:var(--gold); color:var(--gold); }
.hub-states [hidden] { display:none !important; }
.hub-states .vh { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden;
        clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.hub-states a:focus-visible,
.hub-states button:focus-visible,
.hub-states select:focus-visible,
.hub-states [tabindex]:focus-visible {
    outline:2px solid var(--gold); outline-offset:2px; border-radius:3px; }
@media (prefers-reduced-motion: reduce) {
.hub-states *,
.hub-states *::before,
.hub-states *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important;
                             transition-duration:.01ms !important; }
}

