:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#142b3c;background:#f4f7fa;font-size:14px}*{box-sizing:border-box}body{margin:0}main{max-width:1680px;margin:0 auto;padding:32px}a{color:#176176;text-decoration:none}a:hover{text-decoration:underline}header,.heading,nav{display:flex;align-items:center;justify-content:space-between;gap:18px}header{margin-bottom:28px}.brand{font-weight:750;font-size:26px;letter-spacing:-.5px;color:#142b3c}.brand span{font-weight:400;color:#526879;margin-left:10px}p,small{color:#526879;line-height:1.6}p{margin:9px 0}.pill{border:1px solid #216055;border-radius:100px;padding:7px 12px;font-size:11px;letter-spacing:1px;color:#08784f;white-space:nowrap}section{background:#ffffff;border:1px solid #d2dfe8;border-radius:12px;padding:22px;margin:20px 0}h2{font-size:17px;margin:0 0 14px;font-weight:650}.heading h2{margin:0}.heading{margin-bottom:18px}.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:20px 0}.card{padding:20px;border-radius:12px;border:1px solid #d2dfe8;background:#ffffff}.card span{display:block;color:#526879;font-size:12px;margin-bottom:12px}.card strong{font-size:25px;font-weight:600}.card small{display:block;margin-top:8px}.positive{color:#08784f}.negative{color:#b52d46}.muted{color:#526879}.scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;font-size:12px}th{color:#176176;font-size:11px;font-weight:600;padding:12px 10px;white-space:nowrap}td{padding:14px 10px;border-top:1px solid #d2dfe8;vertical-align:top}td small{display:block;font-size:11px}td:first-child{white-space:nowrap}.empty{text-align:center;color:#526879;padding:30px}.columns,.charts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.columns section{margin-top:0}.chart svg{width:100%;height:180px;display:block}.chart h3{font-size:14px;font-weight:500}.chart text{font:10px system-ui;fill:#526879}.chart .price{fill:none;stroke:#08784f;stroke-width:2}.chart .grid{stroke:#d2dfe8;stroke-width:1}.line{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #d2dfe8;gap:20px}#connection{padding:11px 15px;border-left:3px solid #57c5b0;background:#e8f5f0;color:#176176;font-size:12px}#connection.bad{border-color:#ff8195;color:#b52d46;background:#fff0f3}#detail:empty{display:none}.tag{display:inline-block;font-size:10px;padding:4px 7px;border-radius:4px;background:#eaf2f6;white-space:nowrap}details{margin:12px 0}summary{cursor:pointer;color:#176176}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 ui-monospace,monospace;background:#f4f7fa;padding:16px;border-radius:8px}footer{color:#526879;font-size:12px;padding:10px 0 30px}#health{display:flex;gap:15px;flex-wrap:wrap}#health div{min-width:180px;padding:12px;background:#eaf2f6;border-radius:8px}@media(max-width:900px){main{padding:18px}.cards{grid-template-columns:repeat(2,1fr)}.columns,.charts{grid-template-columns:1fr}header,.heading{align-items:flex-start;flex-direction:column}nav{flex-wrap:wrap}.card strong{font-size:21px}section{padding:15px}}
:root{--episode-trigger:#2867a5;--episode-failure:#b52d46;--episode-objective:#08784f}
.episode-controls{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 12px}
.episode-controls button{font:inherit;color:#176176;border:1px solid #d2dfe8;background:#ffffff;border-radius:7px;padding:9px 15px;cursor:pointer}
.episode-controls button[aria-pressed="true"]{background:#08705b;border-color:#66cbbf;color:#e8fff9}
.episode-controls button:hover{border-color:#8bd4e5}
.episode-controls button:focus-visible,.candle:focus-visible{outline:2px solid #956100;outline-offset:3px}
.episode-detail .chart-caption{font-size:12px}
.episode-chart-scroll{overflow-x:auto;background:#f4f7fa;border-radius:8px;margin-top:16px}
.episode-chart{width:100%;min-width:780px;height:auto;display:block;font-variant-numeric:tabular-nums}
.episode-chart text{font:12px system-ui;fill:#526879}
.episode-chart .grid{stroke:#d2dfe8;stroke-width:1}
.episode-chart .level line{stroke-dasharray:5 5;opacity:.65}
.episode-chart .level line,.episode-chart .level path{stroke:currentColor;fill:none}
.episode-chart .level text{fill:currentColor;font-size:11px}
.episode-detail .trigger{color:var(--episode-trigger)}
.episode-detail .failure{color:var(--episode-failure)}
.episode-detail .objective{color:var(--episode-objective)}
.episode-chart .candle{cursor:crosshair}
.episode-chart .candle.up{fill:#08784f;stroke:#08784f}
.episode-chart .candle.down{fill:#b52d46;stroke:#b52d46}
.episode-chart .candle line{stroke-width:1.3}
.episode-chart .candle .candle-hit{fill:transparent;stroke:none;pointer-events:all}
.episode-chart .candle:hover .candle-hit,.episode-chart .candle:focus .candle-hit{fill:#a6c3dc15}
.episode-chart .reference{fill:#956100;pointer-events:none}
.episode-chart .reference line{stroke:#956100;stroke-width:1.3;stroke-dasharray:6 5}
.episode-chart .reference text{fill:#956100;font-size:13px}
.episode-chart .execution-marker{pointer-events:none}
.episode-chart .execution-marker line{stroke:#7040a0;stroke-dasharray:3 5}
.episode-chart .execution-marker text{fill:#7040a0;font-size:11px}
.candle-readout{min-height:24px;font-size:12px;font-variant-numeric:tabular-nums}
.episode-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.episode-facts>div{border:1px solid #d2dfe8;padding:14px;border-radius:8px}
.episode-facts span{display:block;font-size:12px;margin-bottom:7px;color:#526879}
.episode-facts strong{font-size:16px;font-weight:600}
.episode-decision{padding:15px 18px;border-left:3px solid #579db9;background:#eaf2f6;margin:22px 0}
.episode-decision h3{margin:0;font-size:15px}
#episode-error:empty{display:none}
@media(max-width:900px){.episode-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.episode-detail{overflow:hidden}}

.manual-choice{display:flex;align-items:center;gap:10px;white-space:nowrap}.manual-choice label{display:flex;align-items:center;gap:4px;cursor:pointer}.manual-choice input{accent-color:#08784f;width:16px;height:16px}.manual-choice button{font:inherit;color:#d8f8ef;background:#08705b;border:1px solid #418976;border-radius:5px;padding:6px 9px;cursor:pointer}.manual-choice button:disabled{opacity:.45;cursor:default}.manual-choice button:focus-visible{outline:2px solid #956100;outline-offset:3px}.episode-manual{display:flex;align-items:center;gap:16px;margin:16px 0}#manual-review-status:empty{display:none}

.episode-manual small{display:block}@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card{overflow-wrap:anywhere}.episode-manual{flex-wrap:wrap}}

body.episode-modal-open{overflow:hidden}
#episode-modal{width:min(1400px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid #d2dfe8;border-radius:12px;background:#ffffff;color:#142b3c;overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #142b3c26}
#episode-modal::backdrop{background:#33415566}
.modal-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 22px;border-bottom:1px solid #d2dfe8;background:#ffffff}
.modal-toolbar span{color:#526879;font-size:13px}
#episode-close{font:inherit;cursor:pointer;padding:8px 14px;border:1px solid #487089;border-radius:6px;background:#ffffff;color:#142b3c}
#episode-close:focus-visible{outline:2px solid #956100;outline-offset:2px}
#episode-content>section{margin:0;border:0;border-radius:0}
#modal-review-status{padding:0 22px;color:#176176}#modal-review-status:empty{display:none}
@media(max-width:600px){#episode-modal{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:8px}.modal-toolbar{padding:10px 15px}}

.review-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:12px 0}.review-button,.review-toolbar button{background:#eaf2f6;color:#176176;border:1px solid #41637a;border-radius:5px;padding:7px 11px;cursor:pointer;font:inherit}.review-button:disabled{opacity:.5}.new-candidate{color:#956100}.review-frames{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.review-frame{border:1px solid #d2dfe8;padding:12px;min-width:0;border-radius:7px}.review-frame svg{width:100%;height:100px}.review-frame p{font-size:12px}.review-evidence{padding:16px 0;border-block:1px solid #d2dfe8;margin:18px 0}.review-reason{display:block;width:100%;margin:10px 0}.review-reason textarea{display:block;width:100%;max-width:800px;background:#f4f7fa;color:#142b3c;border:1px solid #53728a;border-radius:6px;padding:10px;font:inherit}.episode-manual>div{flex:1;min-width:0}.blind-note{border-left:3px solid #8eb8d0;padding:12px;background:#eaf2f6}@media(max-width:700px){.review-frames{grid-template-columns:1fr}.episode-manual{display:block}}

/* Shared light-theme controls and chart contrast. */
input,select,textarea{color-scheme:light;accent-color:#08784f}
.review-frame polyline{stroke:#08784f}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #2867a5;outline-offset:3px}
tbody tr:hover{background:#f4f8fa}

.signal-output { white-space: pre-wrap; }
