:root[data-theme=light]{color-scheme:light;--page: #f9f9f7;--surface: #fcfcfb;--text-1: #0b0b0b;--text-2: #52514e;--muted: #898781;--grid: #e1e0d9;--baseline: #c3c2b7;--border: rgba(11, 11, 11, .1);--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--seq-250: #86b6ef;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--good-text: #006300;--wash: rgba(11, 11, 11, .045);--accent-wash: rgba(42, 120, 214, .1)}:root[data-theme=dark]{color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--text-1: #ffffff;--text-2: #c3c2b7;--muted: #898781;--grid: #2c2c2a;--baseline: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--seq-250: #184f95;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--good-text: #0ca30c;--wash: rgba(255, 255, 255, .06);--accent-wash: rgba(57, 135, 229, .16)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--page);color:var(--text-1);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px;line-height:1.45}a{color:var(--series-1);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-1);border-radius:6px;padding:5px 12px}button:hover:not(:disabled){background:var(--wash)}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--series-1);border-color:var(--series-1);color:#fff}button.primary:hover:not(:disabled){filter:brightness(1.08);background:var(--series-1)}button.danger{color:var(--critical);border-color:var(--critical)}button.danger:hover:not(:disabled){background:#d03b3b14}button.ghost{border-color:transparent;background:transparent;color:var(--text-2)}button.ghost:hover:not(:disabled){background:var(--wash);color:var(--text-1)}button.small{padding:2px 8px;font-size:12px;border-radius:5px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--series-1);outline-offset:1px}input[type=text],input[type=password],input[type=number],input[type=search],select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:5px 9px}input::placeholder{color:var(--muted)}.app{max-width:1280px;margin:0 auto;padding:0 20px 48px}.topbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--grid);margin-bottom:18px}.topbar .brand{font-weight:650;font-size:16px;letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.topbar nav{display:flex;gap:2px;flex-wrap:wrap}.topbar nav a{color:var(--text-2);padding:5px 10px;border-radius:6px}.topbar nav a:hover{background:var(--wash);text-decoration:none;color:var(--text-1)}.topbar nav a.active{background:var(--accent-wash);color:var(--text-1);font-weight:550}.topbar .spacer{flex:1}.topbar .tools{display:flex;align-items:center;gap:8px}h1{font-size:20px;font-weight:650;margin:4px 0 16px;letter-spacing:-.01em}h2{font-size:15px;font-weight:600;margin:0 0 10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.grid{display:grid;gap:14px}.grid.tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.grid.cards{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.grid.charts{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.mt{margin-top:14px}.muted{color:var(--muted)}.sub{color:var(--text-2);font-size:12.5px}.mono{font-variant-numeric:tabular-nums}.tile .label{color:var(--text-2);font-size:12.5px}.tile .value{font-size:26px;font-weight:600;margin-top:2px}.tile .hint{color:var(--muted);font-size:12px;margin-top:2px}.pill{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:550;border:1px solid var(--border);color:var(--text-2);white-space:nowrap}.pill .dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex:none}.pill.good{color:var(--good-text);border-color:#0ca30c66}.pill.good .dot{background:var(--good)}.pill.warning{border-color:#fab2198c}.pill.warning .dot{background:var(--warning)}.pill.serious{border-color:#ec835a8c}.pill.serious .dot{background:var(--serious)}.pill.critical{color:var(--critical);border-color:#d03b3b73}.pill.critical .dot{background:var(--critical)}.pill.info{border-color:#2a78d666}.pill.info .dot{background:var(--series-1)}.target-card .head{display:flex;align-items:baseline;gap:8px}.target-card .head .name{font-weight:600}.target-card .meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}.target-card .meta div .k{color:var(--muted);font-size:11.5px}.target-card .meta div .v{font-size:14px;font-weight:550}.meter{height:6px;border-radius:3px;background:var(--accent-wash);margin-top:10px;overflow:hidden}.meter>div{height:100%;border-radius:3px;background:var(--series-1);transition:width .6s ease}.target-card .actions{display:flex;gap:6px;margin-top:10px}.target-card .err{color:var(--critical);font-size:12px;margin-top:6px;word-break:break-word}.feed{max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.feed .ev{display:flex;gap:8px;align-items:baseline;padding:3px 6px;border-radius:5px;font-size:12.5px}.feed .ev:hover{background:var(--wash)}.feed .ev .t{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.feed .ev .k{flex:none;font-size:11px;font-weight:600;padding:0 6px;border-radius:4px;border:1px solid var(--border);color:var(--text-2)}.feed .ev .k.good{color:var(--good-text);border-color:#0ca30c66}.feed .ev .k.warn{border-color:#fab21999}.feed .ev .k.serious{color:var(--serious);border-color:#ec835a8c}.feed .ev .k.crit{color:var(--critical);border-color:#d03b3b73}.feed .ev .m{color:var(--text-2);word-break:break-word}.tablewrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:13px}table.data th,table.data td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--grid)}table.data th{color:var(--text-2);font-weight:600;font-size:12px;white-space:nowrap;position:sticky;top:0;background:var(--surface);z-index:1}table.data th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.data th.sortable:hover{color:var(--text-1)}table.data td.num,table.data th.num{text-align:right;font-variant-numeric:tabular-nums}table.data tbody tr:hover{background:var(--wash)}table.data td .title{font-weight:500;word-break:break-word}.pager{display:flex;gap:8px;align-items:center;margin-top:12px;flex-wrap:wrap}.seg{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.seg button{border:none;border-radius:0;padding:2px 8px;font-size:12px;background:transparent;color:var(--text-2)}.seg button+button{border-left:1px solid var(--border)}.seg button.on.approve{background:#0ca30c24;color:var(--good-text);font-weight:600}.seg button.on.reject{background:#d03b3b1f;color:var(--critical);font-weight:600}.seg button.on.hold{background:#fab2192e;color:var(--text-1);font-weight:600}.badge-eligible{color:var(--good-text);font-weight:550;font-size:12px}.badge-excluded{color:var(--muted);font-size:12px}.bulkbar{display:flex;gap:10px;align-items:center;padding:8px 12px;background:var(--accent-wash);border:1px solid var(--border);border-radius:8px;margin:10px 0;flex-wrap:wrap}.chart-card .chead{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}.chart-card .chead h2{margin:0}.chart-card .chead .spacer{flex:1}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--text-2);margin:2px 0 6px}.legend .key{display:inline-flex;align-items:center;gap:6px}.legend .key .sw{width:10px;height:10px;border-radius:2px;flex:none}.legend .key .ln{width:14px;height:2px;border-radius:1px;flex:none}.chart-svg{display:block;width:100%}.chart-svg text{font-family:system-ui,-apple-system,Segoe UI,sans-serif}.viz-tip{position:absolute;pointer-events:none;z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:7px;padding:7px 10px;font-size:12px;box-shadow:0 4px 14px #0000002e;min-width:110px;max-width:260px}.viz-tip .tt{color:var(--muted);font-size:11px;margin-bottom:3px}.viz-tip .trow{display:flex;align-items:center;gap:7px}.viz-tip .trow .ln{width:12px;height:2.5px;border-radius:1px;flex:none}.viz-tip .trow .v{font-weight:600}.viz-tip .trow .n{color:var(--text-2)}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.field label{display:block;font-size:12.5px;color:var(--text-2);margin-bottom:3px;font-weight:550}.field .desc{font-size:11.5px;color:var(--muted);margin-top:3px}.field input,.field select,.field textarea{width:100%}.field.dirty input{border-color:var(--series-1)}.msg{padding:8px 12px;border-radius:7px;font-size:13px;margin-top:10px}.msg.ok{background:#0ca30c1a;color:var(--good-text)}.msg.err{background:#d03b3b1a;color:var(--critical)}.gate{min-height:70vh;display:flex;align-items:center;justify-content:center}.gate .card{width:380px;max-width:92vw}.gate h1{margin-top:0}.filters{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin-bottom:12px}.filters .field{min-width:130px}@media(max-width:720px){.app{padding:0 10px 40px}.grid.charts{grid-template-columns:1fr}}
