:root{--bg: #0e0d0b;--bg-deep: #0b0a08;--surface: #161410;--raised: #1d1a14;--overlay: #242017;--border: #2a261e;--border-soft: #221f19;--text: #ede8da;--text-2: #9a937f;--text-3: #6e6a5e;--amber: #ffb224;--amber-bright: #ffc24b;--amber-deep: #f5a716;--amber-soft: rgba(255, 178, 36, .13);--amber-glow: rgba(255, 178, 36, .18);--gain: #3dd68c;--gain-soft: rgba(61, 214, 140, .12);--loss: #ff6b6b;--loss-soft: rgba(255, 107, 107, .12);--grade-a: #3dd68c;--grade-b: #a8e05f;--grade-c: #facc15;--grade-d: #fb923c;--grade-f: #ff6b6b;--grade-ink: #12100c;--btn-ink: #1a1304;--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--font-body: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius: 12px;--radius-sm: 8px;--tape-h: 0px}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;color:var(--text);font:400 14px/1.55 var(--font-body);-webkit-font-smoothing:antialiased;background:radial-gradient(1100px 520px at 16% -12%,rgba(255,178,36,.055),transparent 62%),radial-gradient(900px 460px at 96% -4%,rgba(61,214,140,.03),transparent 58%),var(--bg);background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgba(237,232,218,.028) 1px,transparent 1.2px);background-size:24px 24px}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}::selection{background:#ffb2244d;color:#fff8ea}a{color:var(--amber);text-decoration:none}a:hover{color:var(--amber-bright);text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:2px solid rgba(255,178,36,.6);outline-offset:2px;border-radius:4px}*{scrollbar-width:thin;scrollbar-color:var(--overlay) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--overlay);border-radius:99px;border:2px solid var(--bg)}*::-webkit-scrollbar-track{background:transparent}.app{display:flex;min-height:100vh}.sidebar{width:234px;flex-shrink:0;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:22px 14px 16px;background:linear-gradient(180deg,#14110c,#100f0c 55%,#0e0d0b);border-right:1px solid var(--border-soft)}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 20px}.brand svg{flex-shrink:0;filter:drop-shadow(0 0 8px var(--amber-glow))}.brand-name{font:italic 600 21px/1 var(--font-display);letter-spacing:.01em;color:var(--text)}.brand-sub{margin-top:5px;font:500 9px/1 var(--font-mono);letter-spacing:.22em;color:var(--amber);text-transform:uppercase}.navgroup{margin-top:14px}.navgroup-label{padding:0 10px 7px;font:500 9.5px/1 var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:1px;border-radius:var(--radius-sm);border-left:2px solid transparent;color:var(--text-2);font-size:13.5px;font-weight:500;transition:background .15s ease,color .15s ease,transform .15s ease}.sidebar nav a svg{opacity:.75;transition:opacity .15s ease}.sidebar nav a:hover{background:var(--raised);color:var(--text);text-decoration:none;transform:translate(2px)}.sidebar nav a:hover svg{opacity:1}.sidebar nav a.active{background:var(--amber-soft);border-left-color:var(--amber);color:var(--amber-bright)}.sidebar nav a.active svg{opacity:1}.llm{margin-top:auto;display:flex;align-items:center;gap:8px;padding:10px;border-top:1px solid var(--border-soft);font:500 10px/1.4 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);overflow-wrap:anywhere}.llm-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3);flex-shrink:0}.llm-dot.on{background:var(--gain);box-shadow:0 0 8px #3dd68cb3}.llm-dot.off{background:var(--loss);box-shadow:0 0 8px #ff6b6bb3}.tape{position:sticky;top:0;z-index:50;overflow:hidden;border-bottom:1px solid var(--border-soft);background:#100e0bd1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.tape-track{display:flex;width:max-content;animation:tape-scroll 48s linear infinite}.tape:hover .tape-track{animation-play-state:paused}.tape-half{display:flex;align-items:center;gap:34px;padding:8px 17px}.tape-item{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font:500 11.5px var(--font-mono);color:var(--text-2)}.tape-item b{color:var(--text);font-weight:600;letter-spacing:.04em}.tape-item .up{color:var(--gain)}@keyframes tape-scroll{to{transform:translate(-50%)}}.main{flex:1;min-width:0}.content{padding:26px 36px 48px;max-width:1180px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.content>*{animation:rise .45s cubic-bezier(.22,.9,.35,1) both}.content>*:nth-child(2){animation-delay:45ms}.content>*:nth-child(3){animation-delay:90ms}.content>*:nth-child(4){animation-delay:135ms}.content>*:nth-child(5){animation-delay:.18s}.content>*:nth-child(6){animation-delay:225ms}.content>*:nth-child(7){animation-delay:.27s}.content>*:nth-child(n+8){animation-delay:315ms}.pagehead{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:22px}.kicker{font:500 10px/1 var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--amber);margin-bottom:9px}.kicker:before{content:"◆ ";font-size:8px}.kicker a{color:inherit}.pagehead h2{margin:0;font:600 31px/1.1 var(--font-display);font-optical-sizing:auto;letter-spacing:.005em;color:var(--text)}.pagesub{margin:8px 0 0;max-width:68ch;color:var(--text-2);font-size:13.5px}.pagehead .actions{margin:0 0 3px}h3{font:600 17px/1.3 var(--font-display);margin:0 0 12px}.card{background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 36%),var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:18px 20px;margin-bottom:18px;box-shadow:0 1px 2px #00000059}.cardhead{display:flex;align-items:baseline;gap:8px;font:500 10px/1.5 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);margin-bottom:13px}.cardhead:before{content:"◆";color:var(--amber);font-size:7.5px}.subhead{font:500 10px/1.5 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:8px}.statrow{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}.statcard{flex:1 1 160px;min-width:150px;position:relative;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 42%),var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius);padding:14px 16px 13px;overflow:hidden;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.statcard:hover{transform:translateY(-2px);border-color:var(--border);box-shadow:0 6px 18px #00000059}.statcard:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--border)}.statcard.accent:before{background:linear-gradient(90deg,var(--amber),transparent 85%)}.statcard.ok:before{background:linear-gradient(90deg,var(--gain),transparent 85%)}.statcard.bad:before{background:linear-gradient(90deg,var(--loss),transparent 85%)}.statcard.busy:before{background:linear-gradient(90deg,var(--amber-deep),transparent 85%)}.statcard.ok{box-shadow:0 0 26px #3dd68c12}.statcard.bad{box-shadow:0 0 26px #ff6b6b0f}.statlabel{font:500 9.5px/1.4 var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-3)}.statvalue{margin-top:7px;font:560 30px/1.15 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text)}.statcard.ok .statvalue{color:var(--gain);text-shadow:0 0 22px rgba(61,214,140,.35)}.statcard.bad .statvalue{color:var(--loss)}.statcard.busy .statvalue,.statcard.accent .statvalue{color:var(--amber-bright)}.statsub{margin-top:5px;color:var(--text-2);font-size:12px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 11px;border-bottom:1px solid var(--border-soft);font-size:13px}th{position:sticky;top:var(--tape-h);z-index:2;background:var(--surface);color:var(--text-3);font:500 10px/1.5 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}tr:last-child td{border-bottom:none}tbody tr{transition:background .12s ease}tbody tr:hover{background:#ffffff05}td.r,th.r{text-align:right}.num{font:500 13px var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text)}.num.unknown{color:var(--text-3)}.num.gain{color:var(--gain)}.num.loss{color:var(--loss)}.tick{font:600 13px var(--font-mono);letter-spacing:.04em}.row-match td{background:#3dd68c0b}.row-match td:first-child{box-shadow:inset 3px 0 0 var(--gain)}.row-match:hover td{background:#3dd68c12}.row-near td:first-child{box-shadow:inset 3px 0 #ffb22499}.matchtable th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s ease}.matchtable th.sortable:hover{color:var(--amber)}.matchtable .ellipsis{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;background:var(--text-3);vertical-align:middle}.dot.match{background:var(--gain);box-shadow:0 0 7px #3dd68ccc}.dot.near{background:var(--amber);box-shadow:0 0 7px var(--amber-glow)}.dot.unknown{background:transparent;border:1px solid var(--text-3)}.dot.far{background:var(--overlay)}.chip{display:inline-flex;align-items:center;gap:5px;padding:2.5px 10px;border-radius:999px;font:500 11px var(--font-mono);letter-spacing:.05em;background:var(--overlay);color:var(--text-2);border:1px solid transparent}button.chip,a.chip{box-shadow:none}button.chip:hover{transform:none;box-shadow:none}.chip.ok{background:var(--gain-soft);color:var(--gain);border-color:#3dd68c40}.chip.bad{background:var(--loss-soft);color:var(--loss);border-color:#ff6b6b40}.chip.busy{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb2244d}.chip.match{background:var(--gain-soft);color:var(--gain);border-color:#3dd68c59}.status{display:inline-flex;align-items:center;gap:7px;padding:3.5px 11px 3.5px 9px;border-radius:999px;font:500 10.5px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid transparent}.status-dot{position:relative;width:7px;height:7px;border-radius:50%;flex-shrink:0}.status.ok{background:var(--gain-soft);color:var(--gain);border-color:#3dd68c40}.status.ok .status-dot{background:var(--gain)}.status.bad{background:var(--loss-soft);color:var(--loss);border-color:#ff6b6b40}.status.bad .status-dot{background:var(--loss)}.status.busy{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb2244d}.status.busy .status-dot{background:var(--amber)}.status.busy .status-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--amber);animation:ping 1.5s cubic-bezier(0,0,.2,1) infinite}@keyframes ping{75%,to{transform:scale(2.6);opacity:0}}.grade{display:inline-flex;align-items:center;justify-content:center;min-width:30px;padding:2.5px 7px;border-radius:7px;font:700 11px var(--font-mono);letter-spacing:.02em;color:var(--grade-ink)}.grade.ga{background:var(--grade-a);box-shadow:0 0 10px #3dd68c40}.grade.gb{background:var(--grade-b)}.grade.gc{background:var(--grade-c)}.grade.gd{background:var(--grade-d)}.grade.gf{background:var(--grade-f)}.grade.na{background:transparent;border:1px dashed var(--text-3);color:var(--text-3);font-weight:500}.quant{font:600 12px var(--font-mono)}.quant.gain{color:var(--gain)}.quant.hold{color:var(--amber-bright)}.quant.loss{color:var(--loss)}.delta{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font:600 11px var(--font-mono);font-variant-numeric:tabular-nums}.delta.gain{background:var(--gain-soft);color:var(--gain)}.delta.loss{background:var(--loss-soft);color:var(--loss)}.delta.flat{background:var(--overlay);color:var(--text-3)}.alertbanner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:13px 18px;margin-bottom:18px;border:1px solid rgba(61,214,140,.4);border-radius:var(--radius);background:linear-gradient(180deg,#3dd68c1a,#3dd68c08);box-shadow:0 0 30px #3dd68c1a}.alertbanner .bell{font-size:16px;filter:drop-shadow(0 0 6px rgba(61,214,140,.6))}.alertbanner .label{font:600 11px var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gain)}button{font:600 13px var(--font-body);padding:8.5px 16px;border-radius:var(--radius-sm);border:1px solid rgba(255,178,36,.55);background:linear-gradient(180deg,var(--amber-bright),var(--amber-deep));color:var(--btn-ink);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease;box-shadow:inset 0 1px #ffffff47,0 1px 2px #0006}button:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff47,0 5px 16px var(--amber-glow)}button:active{transform:none}button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}button.secondary{background:var(--raised);color:var(--text);border:1px solid var(--border);box-shadow:none}button.secondary:hover{border-color:#ffb22473;color:var(--amber-bright);box-shadow:none}button.ghost{background:transparent;border-color:transparent;color:var(--text-3);padding:6px 9px;box-shadow:none}button.ghost:hover{color:var(--loss);border-color:#ff6b6b4d;background:var(--loss-soft);box-shadow:none}.seg{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-deep)}.seg button{background:transparent;color:var(--text-2);border:none;border-radius:0;padding:6.5px 13px;font-size:12.5px;font-weight:500;box-shadow:none}.seg button:hover{color:var(--text);transform:none}.seg button.active{background:var(--amber-soft);color:var(--amber-bright);font-weight:600}.rowmenu{position:relative;display:inline-flex}.rowmenu>button.dots{padding:2px 8px;font-size:14px;line-height:1.1;letter-spacing:.08em}.rowmenu-pop{position:absolute;right:0;top:calc(100% + 5px);z-index:80;min-width:184px;padding:5px;background:var(--overlay);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 10px 30px #00000080,inset 0 1px #ffffff0a;display:flex;flex-direction:column;gap:1px;animation:rowmenu-in .12s ease}@keyframes rowmenu-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.rowmenu-item{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:transparent;border:none;border-radius:6px;padding:7px 10px;font:500 12.5px var(--font-body);color:var(--text);box-shadow:none;cursor:pointer;text-decoration:none}.rowmenu-item:hover{background:var(--amber-soft);color:var(--amber-bright);transform:none;box-shadow:none;text-decoration:none}.rowmenu-item:disabled{opacity:.45;cursor:not-allowed}.rowmenu-item .gly{width:14px;text-align:center;color:var(--text-3);flex-shrink:0}.rowmenu-item:hover .gly{color:var(--amber)}.rowmenu-item.danger,.rowmenu-item.danger .gly{color:var(--loss)}.rowmenu-item.danger:hover{background:var(--loss-soft);color:var(--loss)}.rowmenu-item.danger:hover .gly{color:var(--loss)}.rowmenu-sep{height:1px;background:var(--border-soft);margin:4px 2px}input,select{background:var(--bg-deep);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7.5px 11px;font:400 13px var(--font-body);transition:border-color .15s ease,box-shadow .15s ease}input::placeholder{color:var(--text-3)}input:focus,select:focus{outline:none;border-color:#ffb22499;box-shadow:0 0 0 3px #ffb2241f}input.mono,select.mono{font-family:var(--font-mono);font-size:12.5px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:28px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23ffb224' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;cursor:pointer}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:34px;height:19px;padding:0;border-radius:999px;background:var(--overlay);border:1px solid var(--border);position:relative;cursor:pointer;transition:background .18s ease,border-color .18s ease;vertical-align:middle}input[type=checkbox]:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--text-2);transition:transform .18s ease,background .18s ease}input[type=checkbox]:checked{background:#ffb22447;border-color:#ffb2248c}input[type=checkbox]:checked:after{transform:translate(15px);background:var(--amber);box-shadow:0 0 8px var(--amber-glow)}label{display:block;margin-bottom:5px;font:500 10px/1.5 var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--text-3)}.row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}.field{margin-bottom:14px}.actions{display:flex;gap:10px;margin-top:10px;align-items:center;flex-wrap:wrap}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.toolbar .actions{margin-top:0}.callout{display:flex;gap:10px;align-items:baseline;padding:11px 15px;margin:6px 0 12px;border:1px solid rgba(255,178,36,.3);border-radius:var(--radius-sm);background:var(--amber-soft);font-size:12.5px;color:var(--text-2)}.callout b{font:600 10px var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber-bright);white-space:nowrap}.muted{color:var(--text-2)}.error{color:var(--loss)}.ok-text{color:var(--gain)}.right{text-align:right}.mono{font-family:var(--font-mono);font-size:12px;font-variant-numeric:tabular-nums}.pass{color:var(--gain)}.fail{color:var(--loss)}.unknown{color:var(--text-3)}.skeleton{display:grid;gap:10px;padding:6px 0}.skeleton span{height:13px;border-radius:6px;background:linear-gradient(90deg,var(--raised) 25%,var(--overlay) 45%,var(--raised) 65%);background-size:220% 100%;animation:shimmer 1.3s linear infinite}.skeleton span:nth-child(1){width:42%}.skeleton span:nth-child(2){width:78%}.skeleton span:nth-child(3){width:61%}@keyframes shimmer{to{background-position:-120% 0}}.empty{border:1px dashed var(--border);border-radius:var(--radius);padding:30px 24px;text-align:center;color:var(--text-2);font-size:13.5px;background:#16141073}.empty .prompt{display:block;font:500 11px var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--amber);margin-bottom:8px}.empty .prompt:before{content:"▌";animation:blink 1.1s steps(1) infinite;margin-right:7px}@keyframes blink{50%{opacity:0}}.errorbox{display:flex;gap:10px;align-items:baseline;padding:12px 16px;border:1px solid rgba(255,107,107,.35);border-radius:var(--radius-sm);background:var(--loss-soft);color:var(--loss);font-size:13px}.runhead{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px;font-size:12.5px}.cardrow{display:flex;gap:18px;flex-wrap:wrap}.cardrow .grow{flex:1 1 340px;margin-bottom:18px}.distgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.wl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}.wl-card{display:flex;flex-direction:column;gap:10px;margin:0;cursor:pointer;transition:border-color .12s ease,transform .12s ease}.wl-card:hover{border-color:#ffb22473;transform:translateY(-1px)}.wl-card .wl-top{display:flex;align-items:flex-start;gap:8px}.wl-card .wl-name{font-weight:600;font-size:15px;flex:1;min-width:0}.wl-badges{display:flex;gap:5px;flex-wrap:wrap}.wl-chips{display:flex;flex-wrap:wrap;gap:5px;min-height:24px}.wl-foot{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:4px}.wl-foot .count{font-size:12px}.changes>div{margin-bottom:8px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.changes .mono{color:var(--text-2)}.changes .mono b{color:var(--text);font-weight:600}.arrow-up{color:var(--gain)}.arrow-down{color:var(--loss)}.sparkline{display:block;overflow:visible}.sparkline polyline{stroke-dasharray:100;stroke-dashoffset:100;animation:draw .9s ease-out forwards .25s}.sparkline .area{opacity:0;animation:fadein .7s ease-out forwards .55s}@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadein{to{opacity:1}}.barchart{display:flex;flex-direction:column;gap:7px}.barrow{display:flex;align-items:center;gap:9px;font-size:12px}.barlabel{width:84px;color:var(--text-2);text-align:right;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:500 11px var(--font-mono)}.bartrack{position:relative;flex:1;height:15px;background:#ffffff06;border-radius:4px}.barfill{position:absolute;left:0;top:0;height:100%;border-radius:4px;background:linear-gradient(90deg,#ffb22466,#ffb224bf);transform-origin:left;animation:growbar .7s cubic-bezier(.22,.9,.35,1) both;animation-delay:calc(var(--i, 0) * 60ms)}.barfill.hot{background:linear-gradient(90deg,#3dd68c8c,#3dd68ce6)}@keyframes growbar{0%{transform:scaleX(0)}}.barcount{width:30px;text-align:right;color:var(--text-2);flex-shrink:0;font:500 11.5px var(--font-mono);font-variant-numeric:tabular-nums}.progress{position:relative;height:4px;width:76px;border-radius:999px;background:var(--overlay);overflow:hidden;display:inline-block;vertical-align:middle}.progress>span{position:absolute;top:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(90deg,var(--amber-deep),var(--amber-bright));transition:width .4s ease}.progress.done>span{background:linear-gradient(90deg,#2bb377,var(--gain))}.gradestrip{display:inline-flex;gap:3px;align-items:center}.gradestrip span{width:11px;height:11px;border-radius:3px;background:var(--overlay)}.gradestrip span.ga{background:var(--grade-a)}.gradestrip span.gb{background:var(--grade-b)}.gradestrip span.gc{background:var(--grade-c)}.gradestrip span.gd{background:var(--grade-d)}.gradestrip span.gf{background:var(--grade-f)}.gradestrip span.na{background:transparent;border:1px dashed var(--text-3)}.filterbar{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding-bottom:12px;margin-bottom:4px;border-bottom:1px solid var(--border-soft)}.filterbar .search{width:190px}.filterbar .thr{width:58px;font-family:var(--font-mono);font-size:12px}.filterbar .inline{display:inline-flex;align-items:center;gap:5px;color:var(--text-2);font:500 11px var(--font-mono);letter-spacing:.04em;text-transform:none;margin:0}.filterbar .showing{margin-left:auto;font:500 11px var(--font-mono);color:var(--text-3)}.facetchips{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 2px}.chip.removable,.chip.clear{cursor:pointer}.chip.removable{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb2244d;transition:border-color .12s ease}.chip.removable:hover{border-color:#ffb224b3}.chip.removable .x{color:var(--text-2);margin-left:2px}.chip.clear{background:transparent;color:var(--text-2);border:none;text-decoration:underline;text-underline-offset:3px}.chip.clear:hover{color:var(--text)}.alert-controls{padding:14px 16px 16px;margin-bottom:16px}.alert-controls .filterbar{padding-bottom:12px}.alert-controls .search{width:220px}.facetrow{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.facetlabel{font:500 9.5px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);margin-right:2px}.chip.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;background:transparent;color:var(--text-2);border:1px solid var(--border);transition:border-color .12s ease,color .12s ease,background .12s ease}.chip.toggle:hover{border-color:var(--text-3);color:var(--text);transform:none;box-shadow:none}.chip.toggle .cnt{color:var(--text-3);font-size:10px;font-variant-numeric:tabular-nums}.chip.toggle.on{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb22466}.chip.toggle.on.pos{background:var(--gain-soft);color:var(--gain);border-color:#3dd68c66}.chip.toggle.on.neg{background:var(--loss-soft);color:var(--loss);border-color:#ff6b6b66}.chip.toggle.on.neu{background:var(--overlay);color:var(--text);border-color:var(--border)}.chip.toggle.on .cnt{color:inherit;opacity:.72}.seg .cnt{font-size:9.5px;font-variant-numeric:tabular-nums;color:var(--text-3);margin-left:3px}.seg button.active .cnt{color:inherit;opacity:.72}.alert-list{display:flex;flex-direction:column;gap:16px}.alert-daygroup{display:flex;flex-direction:column;gap:10px}.alert-dayhead{display:flex;align-items:baseline;gap:9px;margin:2px 0 0;font:500 10px/1.5 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3)}.alert-dayhead:before{content:"◆";color:var(--amber);font-size:7.5px}.alert-dayhead .n{color:var(--text-3)}.alert-card{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent 36%),var(--surface);border:1px solid var(--border-soft);border-left:3px solid var(--border);border-radius:var(--radius);padding:13px 16px 14px;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease,border-color .14s ease}.alert-card:hover{transform:translate(2px);box-shadow:0 2px 12px #00000047}.alert-card.pos{border-left-color:var(--gain)}.alert-card.neg{border-left-color:var(--loss)}.alert-card.neu{border-left-color:var(--text-3)}.alert-card.dim{opacity:.6}.alert-card.dim:hover{opacity:1}.alert-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.alert-when{margin-left:auto;font-size:11.5px;white-space:nowrap}.alert-score{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:22px;padding:0 6px;border-radius:6px;font:700 12.5px var(--font-mono);font-variant-numeric:tabular-nums;background:var(--overlay);color:var(--text-3);border:1px solid var(--border)}.alert-score.mid{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb22440}.alert-score.hi{background:var(--amber-soft);color:var(--amber-bright);border-color:#ffb22480;box-shadow:0 0 12px var(--amber-glow)}.alert-mag{font:500 10px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.alert-title{display:inline-block;margin-top:8px;font:600 15px/1.35 var(--font-body);color:var(--text)}.alert-title:hover{color:var(--amber-bright);text-decoration:none}.alert-gist{margin-top:4px;color:var(--text-2);font-size:13px;line-height:1.5}.alert-summary{margin:8px 0 0;color:var(--text-2);font-size:13px;line-height:1.55}.alert-why{margin:7px 0 0;font-size:12.5px;line-height:1.5;color:var(--text-3)}.alert-why b{color:var(--text-2);font-weight:600}.alert-cites{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.alert-cites .chip{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=light]{--bg: #faf7f0;--bg-deep: #f1ede2;--surface: #fffdf8;--raised: #f4f0e6;--overlay: #e9e4d6;--border: #ddd6c4;--border-soft: #e7e1d2;--text: #1c1b17;--text-2: #5c5a52;--text-3: #8a867a;--amber: #b45309;--amber-bright: #d97706;--amber-deep: #92400e;--amber-soft: rgba(180, 83, 9, .1);--amber-glow: rgba(180, 83, 9, .14);--gain: #047857;--gain-soft: rgba(4, 120, 87, .1);--loss: #b91c1c;--loss-soft: rgba(185, 28, 28, .09);--grade-a: #047857;--grade-b: #4d7c0f;--grade-c: #a16207;--grade-d: #c2410c;--grade-f: #b91c1c;--grade-ink: #fff8eb;--btn-ink: #fff8eb}[data-theme=light]{color-scheme:light}[data-theme=light] body{background:radial-gradient(1100px 520px at 16% -12%,rgba(180,83,9,.05),transparent 62%),radial-gradient(900px 460px at 96% -4%,rgba(4,120,87,.035),transparent 58%),var(--bg);background-attachment:fixed}[data-theme=light] body:before{background-image:radial-gradient(rgba(28,27,23,.05) 1px,transparent 1.2px)}[data-theme=light] body:after{opacity:.028}[data-theme=light] ::selection{background:#b4530933;color:var(--text)}[data-theme=light] .sidebar{background:linear-gradient(180deg,#f6f1e6,#faf7f0)}[data-theme=light] .tape{background:#fffdf8d9}[data-theme=light] .card,[data-theme=light] .statcard{box-shadow:0 1px 3px #1c1b1712}[data-theme=light] .statcard:hover{box-shadow:0 6px 18px #1c1b171a}[data-theme=light] .statcard.ok .statvalue{text-shadow:none}[data-theme=light] .grade.ga{box-shadow:none}[data-theme=light] .empty{background:#fffdf899}[data-theme=light] .bartrack{background:#1c1b170d}[data-theme=light] .barfill{background:linear-gradient(90deg,#b4530973,#b45309cc)}[data-theme=light] .barfill.hot{background:linear-gradient(90deg,#0478578c,#047857e6)}[data-theme=light] button{border-color:#92400e80;box-shadow:inset 0 1px #ffffff2e,0 1px 2px #1c1b1733}[data-theme=light] button.secondary,[data-theme=light] button.ghost,[data-theme=light] .seg button{box-shadow:none}[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23b45309' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}[data-theme=light] tbody tr:hover{background:#1c1b1706}[data-theme=light] .row-match td{background:#0478570d}[data-theme=light] .row-match:hover td{background:#04785714}[data-theme=light] .alertbanner{border-color:#04785759;background:linear-gradient(180deg,#04785714,#04785705);box-shadow:0 0 24px #04785714}.themetoggle{margin-left:auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:50%;background:transparent;border:1px solid var(--border);color:var(--text-2);box-shadow:none}.themetoggle:hover{color:var(--amber-bright);border-color:#ffb22480;box-shadow:none;transform:none}@media (max-width: 900px){.app{flex-direction:column}.sidebar{width:100%;height:auto;position:static;display:block;padding:10px 14px 0;border-right:none;border-bottom:1px solid var(--border-soft)}.brand{padding:2px 0 10px}.brand-name{font-size:19px}.sidebar .navstrip{display:flex;gap:2px;margin:0 -14px;padding:0 12px 8px;overflow-x:auto;scrollbar-width:none}.sidebar .navstrip::-webkit-scrollbar{display:none}.navgroup{display:contents}.navgroup-label{display:none}.navgroup nav{display:flex;gap:2px}.sidebar nav a{white-space:nowrap;border-left:none;border-bottom:2px solid transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:8px 11px}.sidebar nav a:hover{transform:none}.sidebar nav a.active{border-bottom-color:var(--amber);background:var(--amber-soft)}.llm{display:none}.content{padding:18px 14px 40px}.pagehead h2{font-size:25px}.pagehead .actions{width:100%}.statcard{flex:1 1 calc(50% - 7px);min-width:130px}.statvalue{font-size:25px}.distgrid{grid-template-columns:1fr}.filterbar .search{width:100%}.filterbar .showing{margin-left:0;width:100%}.card{overflow-x:auto}.card table{min-width:620px}th{position:static}}@media (max-width: 520px){.brand{padding-bottom:8px}.content{padding:16px 12px 36px}.pagehead{margin-bottom:16px}.pagehead h2{font-size:22px}.statcard{flex-basis:100%}.row{gap:10px}.actions button{flex:1 1 auto}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.tape-track{animation:none!important}.sparkline polyline{stroke-dasharray:none;stroke-dashoffset:0}.sparkline .area{opacity:1}}.login-screen{min-height:100vh;display:grid;place-items:center;background:var(--bg-deep, var(--bg));padding:24px}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius, 12px);box-shadow:var(--raised, 0 8px 30px rgba(0,0,0,.3));padding:40px 44px;text-align:center;max-width:360px}.login-logo{font-size:40px;line-height:1;margin-bottom:8px}.login-card h1{font-family:var(--font-display, inherit);margin:6px 0 2px}.login-action{margin-top:22px}.login-action button{min-width:160px;padding:11px 18px;font-size:15px}.signin{margin-top:10px}.signin-who{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2, rgba(127,127,127,.06))}.signin-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.signin-email{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.signin-admin{align-self:flex-start;margin-top:3px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:1px 6px;border-radius:999px;background:var(--accent, #e6a817);color:#1a1a1a;font-weight:600}.signin .signout{margin-top:8px;width:100%;justify-content:center;font-size:12px;opacity:.8}.login-fields{display:flex;flex-direction:column;gap:10px;margin:22px 0 14px;text-align:left}.login-fields input{width:100%;padding:11px 12px;font-size:14px}.login-card button{width:100%;padding:11px 18px;font-size:15px}.login-error{color:var(--loss, #d33);font-size:13px;margin-bottom:12px}.step-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;border-radius:999px;background:var(--amber-soft);color:var(--amber-bright);font:600 12px var(--font-mono);border:1px solid var(--border)}.card ul{margin:6px 0 2px;padding-left:20px}.card li{margin:5px 0;color:var(--text-2);font-size:13.5px;line-height:1.5}.card li b{color:var(--text)}
