:root{color-scheme:light;--surface: #fcfcfb;--surface-2: #f4f3f0;--page: #f9f9f7;--shell: #ffffff;--ink: #0b0b0b;--ink-2: #52514e;--muted: #898781;--grid: #e1e0d9;--axis: #c3c2b7;--border: rgba(11, 11, 11, .1);--border-strong: rgba(11, 11, 11, .18);--overlay: rgba(11, 11, 11, .38);--wash: rgba(11, 11, 11, .04);--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-7: #4a3aa7;--series-8: #e34948;--tone-negative: #e34948;--tone-neutral: #898781;--tone-positive: #2a78d6;--tone-unscored: #c3c2b7;--tone-midpoint: #f0efec;--map-good: #008300;--seq-100: #cde2fb;--seq-200: #9ec5f4;--seq-300: #6da7ec;--seq-400: #3987e5;--seq-500: #256abf;--seq-600: #184f95;--seq-700: #0d366b;--heat-1: #1a9850;--heat-2: #66bd63;--heat-3: #d9ef8b;--heat-4: #fee08b;--heat-5: #fdae61;--heat-6: #f46d43;--heat-7: #a50026;--status-good: #0ca30c;--status-warning: #fab219;--status-serious: #ec835a;--status-critical: #d03b3b;--status-good-text: #006300;--node-source: #2a78d6;--node-issue: #eb6834;--node-district: #1baf7a;--font: system-ui, -apple-system, "Segoe UI", "Noto Sans Devanagari", "Nirmala UI", sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;--radius: 10px;--radius-sm: 7px;--radius-lg: 14px;--shadow-1: 0 1px 2px rgba(11, 11, 11, .05);--shadow-2: 0 8px 26px rgba(11, 11, 11, .1);--shadow-3: 0 18px 48px rgba(11, 11, 11, .16);--sidebar-w: 238px;--topbar-h: 58px}@media(prefers-color-scheme:dark){:root:where(:not([data-theme=light])){color-scheme:dark;--surface: #1a1a19;--surface-2: #232322;--page: #0d0d0d;--shell: #151514;--ink: #ffffff;--ink-2: #c3c2b7;--muted: #898781;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .2);--overlay: rgba(0, 0, 0, .62);--wash: rgba(255, 255, 255, .05);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767;--tone-negative: #e3554f;--tone-neutral: #898781;--tone-positive: #3987e5;--tone-unscored: #4d4d4a;--tone-midpoint: #383835;--map-good: #199e70;--seq-100: #184f95;--seq-200: #1c5cab;--seq-300: #256abf;--seq-400: #2a78d6;--seq-500: #3987e5;--seq-600: #6da7ec;--seq-700: #9ec5f4;--status-good-text: #0ca30c;--node-source: #3987e5;--node-issue: #d95926;--node-district: #199e70;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 8px 26px rgba(0, 0, 0, .5);--shadow-3: 0 18px 48px rgba(0, 0, 0, .6)}}:root[data-theme=dark]{color-scheme:dark;--surface: #1a1a19;--surface-2: #232322;--page: #0d0d0d;--shell: #151514;--ink: #ffffff;--ink-2: #c3c2b7;--muted: #898781;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .2);--overlay: rgba(0, 0, 0, .62);--wash: rgba(255, 255, 255, .05);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767;--tone-negative: #e3554f;--tone-neutral: #898781;--tone-positive: #3987e5;--tone-unscored: #4d4d4a;--tone-midpoint: #383835;--map-good: #199e70;--seq-100: #184f95;--seq-200: #1c5cab;--seq-300: #256abf;--seq-400: #2a78d6;--seq-500: #3987e5;--seq-600: #6da7ec;--seq-700: #9ec5f4;--status-good-text: #0ca30c;--node-source: #3987e5;--node-issue: #d95926;--node-district: #199e70;--shadow-1: 0 1px 2px rgba(0, 0, 0, .4);--shadow-2: 0 8px 26px rgba(0, 0, 0, .5);--shadow-3: 0 18px 48px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;letter-spacing:-.012em;font-weight:650}p{margin:0 0 10px}a{color:var(--series-1);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%}[hidden]{display:none!important}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--series-1);outline-offset:2px;border-radius:4px}::selection{background:color-mix(in srgb,var(--series-1) 24%,transparent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.tnum{font-variant-numeric:tabular-nums}.app{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100%}.sidebar{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;background:var(--shell);border-right:1px solid var(--border);overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:15px 16px 13px;border-bottom:1px solid var(--border)}.brand-mark{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:8px;font-size:17px;background:color-mix(in srgb,var(--series-1) 12%,transparent);border:1px solid color-mix(in srgb,var(--series-1) 26%,transparent)}.brand-text{min-width:0}.brand-text strong{display:block;font-size:.845rem;font-weight:660;letter-spacing:-.01em;white-space:nowrap}.brand-text span{display:block;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.075em}.nav{padding:10px 8px;flex:1}.nav-group+.nav-group{margin-top:14px}.nav-label{font-size:.635rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);padding:0 8px 5px}.nav-item{display:flex;align-items:center;gap:9px;padding:7px 9px;margin-bottom:1px;border-radius:var(--radius-sm);color:var(--ink-2);font-size:.855rem;font-weight:500;text-decoration:none;cursor:pointer;border:1px solid transparent}.nav-item:hover{background:var(--wash);color:var(--ink);text-decoration:none}.nav-item.active{background:color-mix(in srgb,var(--series-1) 11%,transparent);border-color:color-mix(in srgb,var(--series-1) 24%,transparent);color:var(--ink);font-weight:600}.nav-item .ico{width:17px;text-align:center;flex:none;font-size:.95rem}.nav-item .count,.topnav-tab .count{margin-left:auto;font-size:.68rem;font-variant-numeric:tabular-nums;color:var(--muted);background:var(--wash);padding:1px 6px;border-radius:999px}.nav-item .count.alarm,.topnav-tab .count.alarm{background:color-mix(in srgb,var(--status-critical) 16%,transparent);color:var(--status-critical);font-weight:700}.sidebar-foot{padding:10px;border-top:1px solid var(--border);display:grid;gap:8px}.who{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:var(--radius-sm);background:var(--wash)}.avatar{width:27px;height:27px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:.72rem;font-weight:700;background:color-mix(in srgb,var(--series-7) 18%,transparent);color:var(--ink)}.who-text{min-width:0;flex:1}.who-text b{display:block;font-size:.78rem;font-weight:600}.who-text span{display:block;font-size:.66rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.main{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);display:flex;align-items:center;gap:12px;padding:0 22px;background:color-mix(in srgb,var(--page) 86%,transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border-bottom:1px solid var(--border)}.topbar h1{font-size:1.03rem;font-weight:650}@media(min-width:1900px){.topbar{padding:0 28px}}@media(min-width:2400px){.topbar{padding:0 34px}}.topbar .sub{font-size:.735rem;color:var(--muted)}.topbar-spacer{flex:1}.topnav{align-self:stretch;margin-bottom:-1px;display:flex;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none}.topnav::-webkit-scrollbar{display:none}.topnav-tab{flex:none;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border-bottom:2px solid transparent;color:var(--ink-2);font-size:.86rem;font-weight:520;white-space:nowrap;text-decoration:none}.topnav-tab:hover{color:var(--ink);background:var(--wash);text-decoration:none}.topnav-tab.active{color:var(--ink);font-weight:640;border-bottom-color:var(--series-1)}.topnav-tab .ico{font-size:.95rem}.topbar-title{min-width:0;text-align:right}.topbar-title .sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1300px){.topbar-title .sub{display:none}}.content{padding:18px 22px 56px;width:100%}.stack,.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-wide-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.grid-wide-right{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr)}@media(min-width:1900px){:root{--sidebar-w: 262px}.content{padding:20px 28px 64px}.grid{gap:16px}.grid-2.wide-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-wide-left{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr)}}@media(min-width:2400px){:root{--sidebar-w: 288px}.content{padding:22px 34px 70px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-wide-left{grid-template-columns:minmax(0,2.1fr) minmax(0,1fr)}}@media(max-width:1500px){.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1300px){.grid-5,.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1080px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.sidebar.open{display:flex;position:fixed;inset:0 auto 0 0;z-index:60;width:260px;box-shadow:var(--shadow-3)}.grid-2,.grid-3,.grid-wide-left,.grid-wide-right{grid-template-columns:minmax(0,1fr)}}@media(max-width:760px){.grid-5,.grid-4{grid-template-columns:minmax(0,1fr)}.card-head{flex-wrap:wrap}.card-head .card-actions{flex:0 1 auto;flex-wrap:wrap;min-width:0}.content{padding:14px 12px 48px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);min-width:0}.card-head{display:flex;align-items:flex-start;gap:10px;padding:13px 15px 0}.card-head.bordered{padding-bottom:12px;border-bottom:1px solid var(--border)}.card-title{font-size:.9rem;font-weight:640;letter-spacing:-.008em}.card-sub{font-size:.735rem;color:var(--muted);margin-top:2px;line-height:1.45}.card-actions{margin-left:auto;display:flex;gap:6px;align-items:center;flex:none}.card-body{padding:12px 15px 14px;min-width:0}.card-body.flush{padding:0}.card-foot{padding:9px 15px;border-top:1px solid var(--border);font-size:.735rem;color:var(--muted);display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.stat{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1)}.stat-accent{height:3px;width:100%}.stat-inner{padding:12px 14px 13px}.stat-label{display:flex;align-items:center;gap:6px;font-size:.685rem;text-transform:uppercase;letter-spacing:.075em;color:var(--muted);font-weight:600}.stat-value{font-size:2rem;font-weight:660;line-height:1.06;margin-top:6px;letter-spacing:-.022em;overflow-wrap:anywhere}.stat-value.mid{font-size:1.42rem}.stat-value.small{font-size:1.06rem;line-height:1.24}.stat-sub{font-size:.745rem;color:var(--ink-2);margin-top:3px}.stat-delta{display:inline-flex;align-items:center;gap:3px;font-size:.735rem;font-weight:640;margin-top:5px}.stat-delta.up{color:var(--status-good-text)}.stat-delta.down{color:var(--status-critical)}.stat-delta.flat{color:var(--muted)}.stat-viz{margin-top:9px;height:30px}.stat-viz svg{display:block;width:100%;height:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 13px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:.82rem;font-weight:570;cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.btn:hover:not(:disabled){background:var(--wash)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--series-1);border-color:var(--series-1);color:#fff}.btn.primary:hover:not(:disabled){background:color-mix(in srgb,var(--series-1) 86%,#000)}.btn.danger{color:var(--status-critical);border-color:color-mix(in srgb,var(--status-critical) 40%,transparent)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover:not(:disabled){background:var(--wash)}.btn.sm{padding:4px 9px;font-size:.755rem}.btn.icon{padding:6px 8px}.btn.block{width:100%}.field{display:grid;gap:4px;min-width:0}.field>label{font-size:.7rem;font-weight:620;color:var(--ink-2);display:flex;align-items:center;gap:5px}.field .hint{font-size:.7rem;color:var(--muted)}.input,.select,.textarea{width:100%;padding:7px 10px;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-size:.83rem}.textarea{resize:vertical;min-height:74px;font-family:inherit}.input:disabled,.select:disabled{opacity:.55}.mono{font-family:var(--mono);font-size:.78rem}.switch{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.8rem;font-weight:540;-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;pointer-events:none}.switch .track{width:34px;height:19px;border-radius:999px;flex:none;background:var(--axis);position:relative;transition:background .13s ease}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;transition:transform .13s ease;box-shadow:0 1px 2px #0000004d}.switch input:checked+.track{background:var(--series-1)}.switch input:checked+.track:after{transform:translate(15px)}.switch input:focus-visible+.track{outline:2px solid var(--series-1);outline-offset:2px}.segmented{display:inline-flex;padding:2px;gap:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm)}.segmented button{border:none;background:none;cursor:pointer;padding:4px 11px;border-radius:5px;font-size:.775rem;font-weight:560;color:var(--ink-2)}.segmented button:hover{color:var(--ink)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);font-weight:640;box-shadow:var(--shadow-1)}.filterbar{position:sticky;top:var(--topbar-h);z-index:25;background:color-mix(in srgb,var(--page) 92%,transparent);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border-bottom:1px solid var(--border);padding:10px 22px;display:flex;flex-wrap:wrap;gap:9px;align-items:flex-end}@media(min-width:1900px){.filterbar{padding:11px 28px}}@media(min-width:2400px){.filterbar{padding:12px 34px}}@media(max-width:760px){.filterbar{padding:10px 12px}}.filterbar .field{min-width:128px}.filterbar .grow{flex:1 1 190px}.filterbar .spacer{flex:1}.presets{display:flex;gap:4px;flex-wrap:wrap}.preset{border:1px solid var(--border-strong);background:var(--surface);border-radius:999px;padding:4px 10px;font-size:.755rem;cursor:pointer;color:var(--ink-2);font-weight:550}.preset:hover{background:var(--wash);color:var(--ink)}.preset[aria-pressed=true]{border-color:var(--series-1);color:var(--ink);background:color-mix(in srgb,var(--series-1) 12%,transparent);font-weight:640}.chipset{display:flex;flex-wrap:wrap;gap:5px}.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border-strong);border-radius:999px;padding:3px 9px;font-size:.745rem;background:var(--surface);color:var(--ink-2);cursor:pointer;font-weight:540}.chip:hover{background:var(--wash);color:var(--ink)}.chip[aria-pressed=true]{border-color:var(--series-1);color:var(--ink);font-weight:620;background:color-mix(in srgb,var(--series-1) 12%,transparent)}.chip .x{color:var(--muted);font-weight:700}.chip.readonly{cursor:default}.tag{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--border);border-radius:5px;padding:1px 6px;font-size:.7rem;color:var(--ink-2);background:var(--surface-2);white-space:nowrap}.tag .dot{width:7px;height:7px;border-radius:50%;flex:none}.tone-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:.73rem;font-weight:620;white-space:nowrap;border:1px solid var(--border)}.tone-pill .dot{width:8px;height:8px;border-radius:50%;flex:none}.tone-negative{background:color-mix(in srgb,var(--tone-negative) 13%,transparent)}.tone-neutral{background:color-mix(in srgb,var(--tone-neutral) 15%,transparent)}.tone-positive{background:color-mix(in srgb,var(--tone-positive) 13%,transparent)}.tone-unscored{background:var(--surface-2)}.severity{display:inline-flex;align-items:center;gap:5px;font-size:.71rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:2px 8px;border-radius:5px;border:1px solid currentColor}.severity.critical{color:var(--status-critical)}.severity.serious{color:var(--status-serious)}.severity.warning{color:var(--status-warning)}.severity.info{color:var(--muted)}.severity.good{color:var(--status-good-text)}.caveat{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-left:3px solid var(--series-1);border-radius:var(--radius-sm);background:var(--surface);padding:10px 14px;color:var(--ink-2);font-size:.795rem;line-height:1.5}.caveat b{color:var(--ink)}.caveat .ico{font-size:1rem;line-height:1.3}.caveat.compact{padding:8px 12px;font-size:.755rem}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:.81rem}table.data th{text-align:left;font-size:.685rem;font-weight:680;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:8px 11px;border-bottom:1px solid var(--grid);white-space:nowrap;background:var(--surface);position:sticky;top:0}table.data th.num,table.data td.num{text-align:right;font-variant-numeric:tabular-nums}table.data td{padding:8px 11px;border-bottom:1px solid var(--grid)}table.data tbody tr:last-child td{border-bottom:none}table.data tbody tr.clickable{cursor:pointer}table.data tbody tr.clickable:hover{background:var(--wash)}table.data td.tight{padding:5px 11px}table.data caption{caption-side:bottom;text-align:left;padding:8px 11px;font-size:.72rem;color:var(--muted)}.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable:hover{color:var(--ink)}.sortable .arrow{margin-left:3px;color:var(--series-1)}.article-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(292px,1fr))}@media(min-width:2000px){.article-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.article-card{display:flex;flex-direction:column;overflow:hidden;cursor:pointer;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);transition:border-color .12s ease,transform .12s ease;text-align:left;padding:0;font:inherit;color:inherit}.article-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.article-thumb{height:128px;background:var(--surface-2);position:relative;overflow:hidden;flex:none}.article-thumb img{width:100%;height:100%;object-fit:cover;display:block}.article-thumb .fallback{width:100%;height:100%;display:grid;place-items:center;font-size:1.9rem;font-weight:700;color:var(--muted);background:linear-gradient(140deg,var(--surface-2),var(--surface))}.article-thumb .lang{position:absolute;top:7px;left:7px;background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.article-body{padding:11px 12px 12px;display:grid;gap:7px;flex:1}.article-title{font-size:.875rem;font-weight:600;line-height:1.33;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:.72rem;color:var(--muted)}.article-meta .pub{font-weight:620;color:var(--ink-2)}.article-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.article-body>.tone-pill{justify-self:start}.scrim{position:fixed;inset:0;z-index:90;background:var(--overlay);animation:fade .13s ease}.drawer{position:fixed;top:0;right:0;bottom:0;z-index:100;width:min(660px,100%);background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-3);display:flex;flex-direction:column;animation:slide-in .18s cubic-bezier(.22,1,.36,1)}.drawer-head{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:12px}.drawer-body{padding:16px 18px 40px;overflow-y:auto;flex:1}.drawer-foot{padding:11px 18px;border-top:1px solid var(--border);display:flex;gap:8px;align-items:center}.modal-wrap{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.modal{width:min(560px,100%);max-height:86vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3);animation:pop .15s cubic-bezier(.22,1,.36,1)}@keyframes fade{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(24px);opacity:0}}@keyframes pop{0%{transform:scale(.97);opacity:0}}.toasts{position:fixed;bottom:18px;right:18px;z-index:200;display:grid;gap:8px;width:min(360px,calc(100vw - 36px))}.toast{display:flex;gap:9px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--series-1);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);padding:10px 12px;font-size:.81rem;animation:slide-in .16s ease}.toast.error{border-left-color:var(--status-critical)}.toast.success{border-left-color:var(--status-good)}.toast .msg{flex:1}.toast b{display:block;margin-bottom:1px}.empty{display:grid;gap:7px;place-items:center;text-align:center;padding:40px 20px;color:var(--muted)}.empty .ico{font-size:1.9rem}.empty b{color:var(--ink);font-size:.92rem}.empty p{max-width:420px;font-size:.81rem}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--wash) 50%,var(--surface-2) 75%);background-size:220% 100%;animation:shimmer 1.3s linear infinite;border-radius:var(--radius-sm)}@keyframes shimmer{to{background-position:-220% 0}}.stale{opacity:.55;transition:opacity .14s ease;pointer-events:none}.spinner{width:14px;height:14px;flex:none;border:2px solid color-mix(in srgb,currentColor 26%,transparent);border-top-color:currentColor;border-radius:50%;animation:spin .72s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.progress{height:5px;border-radius:999px;background:var(--surface-2);overflow:hidden}.progress>span{display:block;height:100%;background:var(--series-1);border-radius:999px;transition:width .24s ease}.meter{height:7px;border-radius:999px;overflow:hidden;background:var(--seq-100)}.meter>span{display:block;height:100%;border-radius:999px}.kv{display:grid;gap:7px}.kv-row{display:flex;align-items:baseline;gap:10px;font-size:.805rem;padding-bottom:6px;border-bottom:1px solid var(--grid)}.kv-row:last-child{border-bottom:none;padding-bottom:0}.kv-row .k{color:var(--muted);min-width:130px;flex:none;font-size:.755rem}.kv-row .v{color:var(--ink);font-weight:550;overflow-wrap:anywhere}.pager{display:flex;align-items:center;gap:8px;justify-content:center}.pager .page-of{font-size:.78rem;color:var(--muted);font-variant-numeric:tabular-nums}.rule{height:1px;background:var(--grid);border:none;margin:4px 0}.log{font-family:var(--mono);font-size:.735rem;line-height:1.65;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;max-height:260px;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere}.log .at{color:var(--muted)}.login{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(1100px 480px at 12% -8%,color-mix(in srgb,var(--series-1) 12%,transparent),transparent),radial-gradient(900px 420px at 92% 108%,color-mix(in srgb,var(--series-3) 10%,transparent),transparent),var(--page)}.login-card{width:min(1000px,100%);display:grid;grid-template-columns:1.06fr 1fr;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);overflow:hidden}.login-pitch{padding:34px 32px;border-right:1px solid var(--border);background:linear-gradient(170deg,var(--surface),var(--surface-2));display:flex;flex-direction:column;gap:16px}.login-pitch h2{font-size:1.42rem;line-height:1.24;letter-spacing:-.02em}.login-pitch .lede{color:var(--ink-2);font-size:.87rem;line-height:1.55}.login-points{display:grid;gap:9px;margin-top:2px}.login-points li{display:flex;gap:9px;align-items:flex-start;font-size:.815rem;color:var(--ink-2)}.login-points .ico{flex:none}.login-form{padding:34px 32px;display:grid;gap:13px;align-content:center}@media(max-width:860px){.login-card{grid-template-columns:minmax(0,1fr)}.login-pitch{border-right:none;border-bottom:1px solid var(--border)}}.alert-inline{border:1px solid color-mix(in srgb,var(--status-critical) 40%,transparent);background:color-mix(in srgb,var(--status-critical) 9%,transparent);color:var(--ink);border-radius:var(--radius-sm);padding:9px 12px;font-size:.8rem;display:flex;gap:8px;align-items:flex-start}.chart{position:relative;width:100%}.chart svg{display:block;width:100%;overflow:visible}.chart-legend{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:9px;font-size:.755rem;color:var(--ink-2)}.chart-legend .item{display:inline-flex;align-items:center;gap:6px}.chart-legend .swatch{width:11px;height:11px;border-radius:3px;flex:none}.chart-legend .line-key{width:15px;height:2px;border-radius:2px;flex:none}.tooltip{position:absolute;z-index:40;pointer-events:none;min-width:128px;max-width:260px;background:var(--surface);border:1px solid var(--axis);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);padding:8px 10px;font-size:.755rem;transform:translate(-50%,calc(-100% - 11px))}.tooltip .tt-head{font-weight:660;color:var(--ink);margin-bottom:5px;font-size:.78rem;overflow-wrap:anywhere}.tooltip .tt-row{display:flex;align-items:center;gap:7px;line-height:1.7}.tooltip .tt-row .key{width:14px;height:2px;border-radius:2px;flex:none}.tooltip .tt-row .val{font-weight:660;color:var(--ink);font-variant-numeric:tabular-nums;min-width:26px}.tooltip .tt-row .name{color:var(--ink-2)}.tooltip .tt-note{color:var(--muted);margin-top:5px;font-size:.71rem}.axis-label{font-size:10.5px;fill:var(--muted)}.value-label{font-size:11px;fill:var(--ink-2);font-weight:600}.value-label.inside{fill:#fff}.grid-line{stroke:var(--grid);stroke-width:1}.axis-line,.baseline{stroke:var(--axis);stroke-width:1}.crosshair{stroke:var(--axis);stroke-width:1;pointer-events:none}.hit{fill:transparent;cursor:pointer}.heat-cell{stroke:var(--surface);stroke-width:2}.heat-cell.focus{stroke:var(--ink);stroke-width:1.5}.heat-scale{display:flex;align-items:center;gap:7px;font-size:.72rem;color:var(--muted)}.heat-scale .ramp{display:flex;gap:2px}.heat-scale .ramp i{width:17px;height:9px;border-radius:2px}.map-district{stroke:var(--surface);stroke-width:1.5px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.map-district:focus{outline:none}.map-outline{fill:none;stroke:var(--ink);stroke-width:1.5px;stroke-linejoin:round;vector-effect:non-scaling-stroke;pointer-events:none}.map-outline.selected{stroke-width:2.75px}.map-label{pointer-events:none}.map-name,.map-value{fill:var(--ink);paint-order:stroke;stroke-linejoin:round;stroke:color-mix(in oklab,var(--surface) 60%,transparent);stroke-width:2.5px}.map-name{font-size:11px;font-weight:620}.map-value{font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.map-flag{fill:var(--status-critical);stroke:var(--surface);stroke-width:2}.map-flag-mark{font-size:10px;font-weight:800;fill:#fff}.map-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.map-legend .heat-scale{flex-wrap:wrap}.map-legend .heat-scale>span{white-space:nowrap}.map-wrap{position:relative}.map-clear{position:absolute;top:0;right:0;z-index:5;display:inline-flex;align-items:center;gap:9px;padding:6px 6px 6px 12px;border:none;border-radius:999px;background:var(--ink);color:var(--surface);font:inherit;font-size:.8rem;font-weight:620;box-shadow:var(--shadow-2);cursor:pointer}.map-clear-x{padding:3px 10px;border-radius:999px;background:color-mix(in oklab,var(--surface) 20%,transparent)}.map-clear:hover .map-clear-x{background:color-mix(in oklab,var(--surface) 34%,transparent)}.map-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;color:var(--muted)}.map-legend-item i{width:17px;height:9px;border-radius:2px}.map-flag-key{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--status-critical);color:#fff;font-size:9px;font-weight:800}.node-label{font-size:10.5px;fill:var(--ink-2);pointer-events:none}.node-mark{stroke:var(--surface);stroke-width:2;cursor:pointer}.node-mark.dim{opacity:.28}.node-mark.sel{stroke:var(--ink);stroke-width:2.5}.edge-line{stroke:var(--ink);pointer-events:none}.table-toggle{display:inline-flex;align-items:center;gap:5px;font-size:.735rem;color:var(--muted);background:none;border:1px solid var(--border);border-radius:5px;padding:3px 8px;cursor:pointer}.table-toggle:hover{color:var(--ink);background:var(--wash)}.table-toggle[aria-pressed=true]{color:var(--ink);border-color:var(--border-strong)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.headline{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);overflow:hidden}.headline-lead{padding:15px 18px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,var(--surface-2),var(--surface))}.headline-lead .eyebrow{font-size:.665rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:660;margin-bottom:5px}.headline-lead p{margin:0;font-size:1.14rem;line-height:1.45;font-weight:560;letter-spacing:-.012em;color:var(--ink)}.findings{display:grid;grid-template-columns:repeat(var(--findings, 4),minmax(0,1fr))}.finding{padding:13px 18px 15px;border-right:1px solid var(--border);text-align:left;background:none;font:inherit;color:inherit;display:grid;gap:5px;align-content:start}.finding:last-child{border-right:none}@media(max-width:1440px){.findings{grid-template-columns:repeat(2,minmax(0,1fr))}.finding:nth-child(2n){border-right:none}.finding:nth-child(n+3){border-top:1px solid var(--border)}}.finding.clickable{cursor:pointer}.finding.clickable:hover{background:var(--wash)}.finding .tag-line{display:flex;align-items:center;gap:6px;font-size:.665rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--muted)}.finding .tag-line .dot{width:7px;height:7px;border-radius:50%;flex:none}.finding.warning .tag-line{color:var(--status-serious)}.finding.critical .tag-line{color:var(--status-critical)}.finding.good .tag-line{color:var(--status-good-text)}.finding p{margin:0;font-size:.845rem;line-height:1.55;color:var(--ink-2)}.finding .go{font-size:.72rem;color:var(--series-1);font-weight:600}@media(max-width:780px){.findings{grid-template-columns:minmax(0,1fr)}.finding{border-right:none}.finding:nth-child(n+2){border-top:1px solid var(--border)}}.entity-row{display:grid;grid-template-columns:minmax(190px,36ch) 52px minmax(80px,1fr) 62px;gap:11px;align-items:center;padding:9px 2px;border-bottom:1px solid var(--grid);width:100%;text-align:left;background:none;border-top:none;border-left:none;border-right:none;font:inherit;color:inherit;cursor:pointer}.entity-row:last-child{border-bottom:none}.entity-row:hover{background:var(--wash)}.entity-name{min-width:0}.entity-name b{display:block;font-size:.845rem;font-weight:620}.entity-name>span{font-size:.705rem;color:var(--muted)}.entity-row .n{font-size:1.05rem;font-weight:660;text-align:right;font-variant-numeric:tabular-nums}.entity-row .tone-cell{font-size:.78rem;text-align:right;font-variant-numeric:tabular-nums}@media(max-width:620px){.entity-row{grid-template-columns:1fr 52px}.entity-row .bar-cell,.entity-row .tone-cell{display:none}}.brand-mark.has-logo{width:40px;height:40px;background:#fff;border-color:color-mix(in srgb,var(--fg) 14%,transparent);border-radius:10px;padding:1px;overflow:hidden}.brand-mark.has-logo img{display:block;width:100%;height:100%;object-fit:contain}.state-switch{position:relative;padding:0 8px 2px}.state-switch-trigger{width:100%;display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;cursor:pointer;background:color-mix(in srgb,var(--fg) 4%,transparent);border:1px solid color-mix(in srgb,var(--fg) 10%,transparent);color:inherit;font:inherit;text-align:left}.state-switch-trigger:hover{background:color-mix(in srgb,var(--fg) 7%,transparent)}.state-switch-label{flex:1;min-width:0}.state-switch-eyebrow{display:block;font-size:.6rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.state-switch-name{display:block;font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.state-switch-caret{color:var(--muted);font-size:.7rem}.state-switch.open .state-switch-caret{transform:rotate(180deg)}.state-switch-scrim{position:fixed;inset:0;z-index:40}.state-switch-menu{position:absolute;z-index:41;left:8px;right:8px;top:calc(100% - 2px);margin:0;padding:4px;list-style:none;background:var(--surface);border-radius:9px;border:1px solid var(--border);box-shadow:0 10px 26px #0000002e}.state-switch-menu button{width:100%;display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:6px;cursor:pointer;background:none;border:0;color:inherit;font:inherit;font-size:.82rem;text-align:left}.state-switch-menu button:hover{background:color-mix(in srgb,var(--fg) 7%,transparent)}.state-switch-menu button.current{font-weight:600;cursor:default}.state-switch-menu-label{flex:1;min-width:0}.state-switch-menu-label small{display:block;font-size:.66rem;color:var(--muted);font-weight:400}.state-switch-mark{font-size:15px;line-height:1;flex:none}
