:root{--bg: #0f1419;--panel: #171d26;--panel-2: #1e2733;--text: #e6edf3;--muted: #8b98a5;--line: #2b3644;--accent: #4c8bf5;--warn-bg: #7a1d1d;--warn-fg: #ffe3e3;--zero: #4ea1ff;--null: #8b98a5;--not-offered: #d98b3a;--candidate: #d9b13a;--needs: #d98b3a;--missing: #b06b6b;--confirmed: #3ba55d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code{background:var(--panel-2);padding:0 .3em;border-radius:3px}.banner{position:sticky;top:0;z-index:10;background:var(--warn-bg);color:var(--warn-fg);font-weight:700;letter-spacing:.04em;text-align:center;padding:8px 12px;border-bottom:2px solid #a33}.mode-indicator{background:#24303f;color:#cfe0f5;text-align:center;padding:5px 12px;font-size:12px;border-bottom:1px solid var(--line)}.app-body{display:flex;align-items:flex-start}.nav{position:sticky;top:38px;align-self:flex-start;width:210px;min-width:210px;padding:12px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--line);height:calc(100vh - 38px);overflow:auto}.nav-link{padding:6px 10px;border-radius:6px;color:var(--muted)}.nav-link:hover{background:var(--panel);text-decoration:none}.nav-link.active{background:var(--panel-2);color:var(--text);font-weight:600}.content{flex:1;padding:18px 24px;min-width:0}h1{font-size:20px;margin:0 0 12px}h2{font-size:15px;margin:20px 0 8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.lede,.disclosure,.legend-note{color:var(--muted)}.filterbar{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:14px}fieldset{border:1px solid var(--line);border-radius:8px;padding:10px 12px}legend{color:var(--muted);font-size:12px;padding:0 6px}.filter-field{display:inline-flex;flex-direction:column;gap:3px;margin:0 10px 8px 0;font-size:12px;color:var(--muted)}.filter-field input,.filter-field select{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:5px 7px}.filters-current{background:var(--panel)}.disclosure{font-size:12px;max-width:320px;margin:4px 0 0}button{background:var(--panel-2);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:6px 12px;cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}.data-table{width:100%;border-collapse:collapse;margin:8px 0;display:block;overflow-x:auto}.data-table th,.data-table td{text-align:left;padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table thead th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}.fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px 24px}.field dt{color:var(--muted);font-size:12px}.field dd{margin:0 0 6px;word-break:break-word}.counts{border-collapse:collapse}.counts th,.counts td{padding:3px 12px 3px 0;text-align:left}.cell-zero{color:var(--zero);font-weight:600}.cell-null{color:var(--null);font-style:italic}.cell-not_offered{color:var(--not-offered);font-weight:600}.badge{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid}.badge-candidate{color:var(--candidate);border-color:var(--candidate)}.badge-needs_confirmation{color:var(--needs);border-color:var(--needs)}.badge-missing{color:var(--missing);border-color:var(--missing)}.badge-confirmed{color:var(--confirmed);border-color:var(--confirmed)}.badge-neutral{color:var(--muted);border-color:var(--line)}.pagination{display:flex;align-items:center;gap:12px;margin:10px 0;color:var(--muted)}.list-meta{display:flex;gap:16px;color:var(--muted);font-size:12px;margin:4px 0}.snapshot-tag{color:var(--muted)}.state{padding:16px;border-radius:8px;margin:10px 0}.state-loading{color:var(--muted)}.state-empty{color:var(--muted);background:var(--panel)}.state-error{background:#3a1d1d;color:#ffd7d7}.error-detail{font-family:ui-monospace,monospace;font-size:12px;margin-top:6px}.legend{margin-top:24px;border:1px solid var(--line);border-radius:8px;padding:8px 12px}.legend summary{cursor:pointer;color:var(--muted)}.legend ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:4px 20px}.crumbs{margin:0 0 8px}.coverage-cards{display:flex;gap:16px;flex-wrap:wrap;margin:8px 0 16px}.coverage-card{border:1px solid var(--line);border-radius:8px;padding:12px 16px;background:var(--panel);min-width:240px}.coverage-card h2{margin:0 0 6px;color:var(--muted)}.coverage-summary{margin:0;font-size:15px}.coverage-summary strong{color:var(--text)}
