:root{--surface: #0d0f0d;--surface-2: #12150f;--row-hover: #171b15;--hairline: #23271f;--ink: #e8ecdf;--ink-2: #9aa38d;--ink-muted: #6b7360;--long: #0ca30c;--short: #d03b3b;--neutral: #c98500;--accent: #3987e5;--seq-lo: #184f95;--seq-hi: #3987e5;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font-family:var(--mono);font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased}#app{min-height:100vh}.terminal{max-width:1500px;margin:0 auto;padding:1rem 1.25rem 3rem}.statusbar{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;padding:.7rem .9rem;background:var(--surface-2);border:1px solid var(--hairline);border-radius:4px;margin-bottom:.75rem}.brand{font-weight:700;letter-spacing:.06em;color:var(--ink)}.prompt{color:var(--long);margin-right:.35rem}.blink{animation:blink 1.2s step-end infinite;color:var(--long)}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion: reduce){.blink{animation:none}}.mode{display:inline-flex;align-items:center;gap:.45rem;padding:.25rem .6rem;border-radius:3px;font-weight:700;letter-spacing:.06em;border:1px solid}.mode-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.mode-momentum{color:var(--long);border-color:color-mix(in srgb,var(--long) 45%,transparent);background:color-mix(in srgb,var(--long) 12%,transparent)}.mode-quiet{color:var(--ink-2);border-color:var(--hairline)}.mode-reason{font-weight:400;color:var(--ink-2);letter-spacing:0}.stats{margin-left:auto;display:flex;gap:1rem;flex-wrap:wrap;color:var(--ink-2);font-variant-numeric:tabular-nums}.stats b{color:var(--ink);font-weight:600}.regime{color:var(--ink-muted);letter-spacing:.05em}.pos{color:var(--long)}.neg{color:var(--short)}.filters{display:flex;align-items:center;gap:1.1rem;flex-wrap:wrap;padding:.55rem .9rem;border:1px solid var(--hairline);border-radius:4px;margin-bottom:.75rem}.fgroup{display:inline-flex;align-items:center;gap:.3rem;flex-wrap:wrap}.flabel{color:var(--ink-muted);margin-right:.15rem}.fbtn{font-family:var(--mono);font-size:12px;background:transparent;color:var(--ink-2);border:1px solid var(--hairline);border-radius:3px;padding:.2rem .55rem;cursor:pointer;min-height:24px}.fbtn:hover{background:var(--row-hover);color:var(--ink)}.fbtn.active{color:var(--surface);background:var(--ink);border-color:var(--ink);font-weight:700}.slider{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink-muted)}.slider b{color:var(--ink);font-variant-numeric:tabular-nums}.slider input{width:110px;accent-color:var(--accent)}.tablewrap{border:1px solid var(--hairline);border-radius:4px;overflow-x:auto;transition:opacity .15s}.tablewrap.refetching{opacity:.72}.grid{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;white-space:nowrap}.grid thead th{text-align:left;font-weight:600;font-size:11px;letter-spacing:.08em;color:var(--ink-muted);padding:.6rem .7rem;border-bottom:1px solid var(--hairline);background:var(--surface-2);position:sticky;top:0;z-index:1}.grid td{padding:.5rem .7rem;border-bottom:1px solid var(--hairline)}.grid tbody tr:last-child td{border-bottom:none}.row:hover{background:var(--row-hover)}.row-long td:first-child{box-shadow:inset 2px 0 0 var(--long)}.row-short td:first-child{box-shadow:inset 2px 0 0 var(--short)}.row-neutral td:first-child{box-shadow:inset 2px 0 0 var(--neutral)}.c-rank{color:var(--ink-muted);width:2.5rem}.c-sym{font-weight:700;color:var(--ink)}.c-tf{color:var(--ink-2)}.c-dir{font-weight:700;letter-spacing:.04em}.dir-long{color:var(--long)}.dir-short{color:var(--short)}.dir-neutral{color:var(--neutral)}.c-reason{color:var(--ink-2);white-space:normal;min-width:22rem;max-width:34rem}.c-strat{color:var(--ink-2)}.agree{color:var(--accent);font-weight:700;margin-left:.3rem}.c-liq,.c-move,.c-age{text-align:right}.c-liq{color:var(--ink-2)}.c-age{color:var(--ink-muted)}.late{color:var(--neutral);font-weight:700;font-size:11px}.scorewrap{display:inline-flex;align-items:center;gap:.5rem}.scorenum{font-weight:700;color:var(--ink);min-width:2.4rem}.scorebar{display:inline-block;width:76px;height:5px;background:var(--hairline);border-radius:2px;overflow:hidden}.scorefill{display:block;height:100%;border-radius:2px;background:linear-gradient(90deg,var(--seq-lo),var(--seq-hi))}.footer{display:flex;align-items:center;gap:1rem;padding:.7rem .2rem;color:var(--ink-muted)}.footer b{color:var(--ink)}.more{font-family:var(--mono);font-size:12px;background:transparent;border:1px solid var(--hairline);color:var(--ink-2);border-radius:3px;padding:.25rem .7rem;cursor:pointer;min-height:26px}.more:hover{background:var(--row-hover);color:var(--ink)}.msg{padding:2rem;text-align:center;color:var(--ink-muted)}.msg.err{color:var(--short)}.nav{display:flex;gap:.35rem;margin-bottom:.75rem}.navtab{font-family:var(--mono);font-size:12px;letter-spacing:.08em;font-weight:700;background:transparent;color:var(--ink-2);border:1px solid var(--hairline);border-radius:3px;padding:.4rem 1rem;cursor:pointer;min-height:30px}.navtab:hover{background:var(--row-hover);color:var(--ink)}.navtab.active{color:var(--surface);background:var(--ink);border-color:var(--ink)}.runbtn{font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--surface);background:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:.3rem .9rem;cursor:pointer;min-height:28px}.runbtn:hover{filter:brightness(1.1)}.runbtn:disabled{opacity:.55;cursor:default;filter:none}.fbadge{color:var(--neutral);font-size:9px;font-weight:700;margin-left:.35rem;letter-spacing:.04em}.msg.note{color:var(--neutral);padding:.7rem .9rem;text-align:left}.msg.note b{color:var(--ink)}.ink-muted{color:var(--ink-muted)}.section-h{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--ink-muted);margin:1.5rem 0 .6rem;padding-bottom:.35rem;border-bottom:1px solid var(--hairline)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin-bottom:.75rem}.tile{border:1px solid var(--hairline);border-radius:4px;background:var(--surface-2);padding:.8rem .9rem}.tile-val{font-size:26px;font-weight:700;line-height:1.1;color:var(--ink)}.tile-val.pos{color:var(--long)}.tile-val.neg{color:var(--short)}.tile-label{margin-top:.35rem;font-size:11px;letter-spacing:.06em;color:var(--ink-muted);text-transform:uppercase}.tile-sub{margin-top:.15rem;font-size:11px;color:var(--ink-2);font-variant-numeric:tabular-nums}.chart{margin:0 0 .75rem;border:1px solid var(--hairline);border-radius:4px;background:var(--surface-2);padding:.7rem .9rem .5rem;position:relative}.chart-title{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink-muted);margin-bottom:.4rem}.chart-sub{font-weight:400;letter-spacing:0;color:var(--ink-muted);margin-left:.5rem}.chart-svg{width:100%;height:240px;display:block}.chart-svg .grid{stroke:var(--hairline);stroke-width:1}.chart-svg .grid-lbl{fill:var(--ink-muted);font-family:var(--mono);font-size:9px}.chart-svg .zeroline{stroke:var(--ink-muted);stroke-width:1}.chart-svg .line{fill:none;stroke:var(--accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-svg .area{fill:var(--accent);opacity:.1;stroke:none}.chart-svg .enddot{fill:var(--accent);stroke:var(--surface-2);stroke-width:2}.chart-svg .crosshair{stroke:var(--ink-2);stroke-width:1;stroke-dasharray:3 3}.chart-tip{position:absolute;top:.7rem;right:.9rem;background:var(--surface);border:1px solid var(--hairline);border-radius:3px;padding:.25rem .5rem;font-size:11px;color:var(--ink-2);font-variant-numeric:tabular-nums;pointer-events:none}.chart-tip b{color:var(--ink)}@media (max-width: 900px){.terminal{padding:.6rem}.c-reason{min-width:14rem}.stats{margin-left:0;font-size:12px}}
