:root{color-scheme:dark;--bg: #0a0f14;--bg-panel: #111922;--bg-panel-2: #0d131a;--border: rgba(120, 150, 180, .18);--text: #e8eef5;--muted: #8fa3b8;--accent: #5ec4ff;--positive: #7bd389;--negative: #ff7b6b;--warn: #e6c15a;font-family:Instrument Sans,system-ui,sans-serif}#tv-attr-logo{display:none!important}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(1200px 600px at 10% -10%,rgba(94,196,255,.12),transparent 55%),radial-gradient(900px 500px at 90% 0%,rgba(123,211,137,.08),transparent 50%),var(--bg);color:var(--text)}.obs-shell{max-width:1440px;margin:0 auto;padding:1.25rem 1.25rem 2rem}.obs-top{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.brand{font-size:1.5rem;font-weight:700;letter-spacing:.02em}.tagline{margin:.2rem 0 0;color:var(--muted);font-size:.92rem}.obs-nav{display:flex;gap:.5rem;margin-bottom:1rem}.nav-link{color:var(--muted);text-decoration:none;padding:.35rem .75rem;border:1px solid transparent;border-radius:999px;font-size:.85rem}.nav-link.active{color:var(--text);border-color:var(--border);background:#ffffff08}.obs-mosaic{display:grid;gap:10px;min-height:calc(100vh - 9.5rem);align-content:start}.mosaic-panel{position:relative;display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,var(--bg-panel),var(--bg-panel-2));box-shadow:inset 0 1px #ffffff0a;overflow:hidden}.panel-head{padding:.65rem .85rem .45rem;border-bottom:1px solid var(--border)}.panel-title{margin:0;font-size:.92rem;font-weight:600}.panel-sub{margin:.15rem 0 0;color:var(--muted);font-size:.78rem}.panel-body{flex:1;min-height:0;padding:.75rem .85rem .85rem;overflow:auto}.panel-note{margin:.65rem 0 0;color:var(--muted);font-size:.75rem}.mosaic-panel[data-panel-id=market-panel] .panel-head{display:none}.mosaic-panel[data-panel-id=market-panel] .panel-body{padding:.85rem 1rem 1rem}.mosaic-panel[data-panel-id=track-panels] .panel-sub{display:none}.resize-handle{position:absolute;z-index:2;touch-action:none}.resize-e{top:0;right:0;width:10px;height:100%;cursor:ew-resize}.resize-s{left:0;bottom:0;width:100%;height:10px;cursor:ns-resize}.resize-se{right:0;bottom:0;width:16px;height:16px;cursor:nwse-resize;background:linear-gradient(135deg,transparent 50%,rgba(94,196,255,.35) 50%)}.pnl-compare{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.pnl-card{border:1px solid var(--border);border-radius:12px;padding:.65rem .75rem;background:#0000002e}.pnl-card.overlay-missing{opacity:.7;border-style:dashed}.pnl-card.overlay-missing .pnl-equity,.pnl-card.overlay-missing .pnl-dollar,.pnl-card.overlay-missing .metric strong{color:var(--muted);font-weight:500}.pnl-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.track-ident{min-width:0;display:flex;align-items:baseline;gap:.4rem}.track-chip{flex:0 0 auto;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:600;letter-spacing:.04em;padding:.12rem .35rem;border-radius:4px;border:1px solid var(--border);color:var(--text);background:#ffffff0a}.track-chip.track-baseline{border-color:#8fa3b873}.track-chip.track-optimized{border-color:#5ec4ff73;color:var(--accent)}.track-chip.track-jev{border-color:#7bd38973;color:var(--positive)}.track-label{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--muted)}.track-meta{display:flex;align-items:baseline;gap:.35rem;min-width:0}.track-port{font-family:IBM Plex Mono,monospace;font-size:.68rem;color:var(--muted);opacity:.7}.health-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.health-dot.healthy{background:var(--positive);box-shadow:0 0 0 3px #7bd38929}.health-dot.paused{background:var(--warn);box-shadow:0 0 0 3px #e6c15a29}.health-dot.unhealthy{background:var(--negative);box-shadow:0 0 0 3px #ff7b6b29}.pnl-hero{margin:.4rem 0 .45rem}.pnl-hero .px-kicker{display:block;font-size:.72rem;color:var(--muted);margin-bottom:.05rem}.pnl-metrics-2{grid-template-columns:repeat(2,minmax(0,1fr))}.pnl-metrics-3{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr) minmax(0,.75fr)}.pnl-dollar{display:block;font-family:IBM Plex Mono,monospace;font-size:.82rem;color:var(--muted);margin-top:.08rem}.pnl-dollar.positive{color:var(--positive)}.pnl-dollar.negative{color:var(--negative)}.pill{font-size:.68rem;padding:.15rem .45rem;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.pill.ok{color:var(--positive);border-color:#7bd38959}.pill.warn{color:var(--warn);border-color:#e6c15a59}.pnl-equity{display:block;margin:0;font-size:1.55rem;font-weight:700;font-family:IBM Plex Mono,monospace;letter-spacing:-.02em}.pnl-equity.positive{color:var(--positive)}.pnl-equity.negative{color:var(--negative)}.pnl-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .5rem;font-size:.78rem}.metric span{display:block;color:var(--muted)}.metric strong{font-family:IBM Plex Mono,monospace;font-weight:500;overflow-wrap:anywhere}.pnl-foot{margin-top:.45rem;font-size:.68rem;color:var(--muted)}.radar-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.radar-row{display:grid;grid-template-columns:72px 88px 1fr;gap:.5rem;font-size:.78rem;font-family:IBM Plex Mono,monospace;padding:.35rem .45rem;border-radius:8px;background:#ffffff05}.radar-action{font-weight:600}.ob-table{width:100%;border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:.78rem}.ob-table th,.ob-table td{text-align:left;padding:.35rem .25rem;border-bottom:1px solid var(--border)}.big-stat{margin:0;font-size:2rem;font-family:IBM Plex Mono,monospace}.pos-list{margin:.5rem 0 0;padding-left:1rem;color:var(--muted);font-size:.82rem}.rtds-strip{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;font-family:IBM Plex Mono,monospace;font-size:.82rem}.data-mode-pill{align-self:center}.track-tabs{display:flex;gap:.4rem;margin-bottom:.45rem}.track-tab{font-family:IBM Plex Mono,monospace;font-size:.78rem;padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);background:#0003;color:var(--muted);cursor:pointer}.track-tab.active{color:var(--text);border-color:#5ec4ff73;background:#5ec4ff14}.track-panel-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:.85rem;min-height:0}.track-section-title{margin:0 0 .45rem;font-size:.8rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.track-live-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.4rem .65rem;font-size:.78rem}.track-trades-table{width:100%;border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-size:.72rem}.track-trades-table th,.track-trades-table td{text-align:left;padding:.3rem .25rem;border-bottom:1px solid var(--border)}.track-trades-table td.positive{color:var(--positive)}.track-trades-table td.negative{color:var(--negative)}.equity-mini-wrap{margin-top:.65rem}.equity-mini{width:100%;height:64px;color:var(--accent)}.track-live-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.track-lab,.market-panel{display:flex;flex-direction:column;gap:.7rem;min-height:100%}.lab-charts,.odds-row,.depth-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.chart-card{min-width:0}.chart-host{height:180px}.chart-host.market-chart,.chart-host.lab-chart{height:228px;position:relative}.chart-host .u-wrap,.chart-host .u-over{overflow:hidden}.chart-host canvas{display:block}.chart-legend{display:flex;gap:1rem;align-items:center;margin-bottom:.35rem;font-size:.72rem;color:var(--muted);font-family:IBM Plex Mono,monospace}.chart-legend i{display:inline-block;width:14px;height:2px;margin-right:.4rem;vertical-align:middle;background:var(--accent)}.lg-open i{background:var(--muted);height:0;border-top:1.5px dashed var(--muted)}.lg-mark.enter{color:var(--positive)}.lg-mark.exit{color:var(--negative)}.market-switcher{display:flex;gap:.3rem;margin-bottom:.15rem}.market-pill{font-family:IBM Plex Mono,monospace;font-size:.7rem;padding:.2rem .55rem;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer}.market-pill.active{color:var(--text);border-color:var(--border);background:#ffffff0a}.market-event-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.market-title{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:.01em}.market-range{margin:0;color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:.92rem;font-variant-numeric:tabular-nums}.market-hero{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:1rem;align-items:center}.ring-clock{display:flex;align-items:center;gap:.55rem}.ring-wrap,.ring-svg{width:42px;height:42px}.ring-track{stroke:#7896b438}.ring-prog{stroke:var(--accent);stroke-linecap:round}.ring-text{font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;font-size:.85rem;color:var(--muted)}.px-block .px-kicker{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}.px-value{display:block;font-family:IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;font-size:1.55rem;font-weight:600;margin-top:.1rem}.px-block.live.up .px-value{color:var(--positive)}.px-block.live.down .px-value{color:var(--negative)}.strategy-desc{margin:0;color:var(--muted);font-size:.8rem;line-height:1.35;max-width:52rem}.decision-chip{align-self:flex-start;font-family:IBM Plex Mono,monospace;font-size:.78rem;padding:.25rem .65rem;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.decision-chip.action-enter{color:var(--positive);border-color:#7bd38966}.decision-chip.action-exit{color:var(--negative);border-color:#ff7b6b66}.decision-chip.action-wait{color:var(--accent);border-color:#5ec4ff59}.decision-chip.action-skip{color:var(--warn);border-color:#e6c15a59}.decision-tape{max-height:220px;display:block;overflow:auto}.decision-tape thead,.decision-tape tbody,.decision-tape tr{display:table;width:100%;table-layout:fixed}.action-enter .radar-action{color:var(--positive)}.action-exit .radar-action{color:var(--negative)}.action-wait .radar-action{color:var(--accent)}.action-skip .radar-action{color:var(--warn)}.market-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.odds-card{border:1px solid var(--border);border-radius:12px;padding:.7rem .85rem;background:#0003}.odds-kicker{display:block;color:var(--muted);font-size:.72rem;letter-spacing:.04em}.odds-px{display:block;font-family:IBM Plex Mono,monospace;font-size:1.7rem;margin:.15rem 0}.odds-card.yes .odds-px{color:var(--positive)}.odds-card.no .odds-px{color:var(--negative)}.odds-book{font-family:IBM Plex Mono,monospace;color:var(--muted);font-size:.78rem}.vol-row{display:flex;gap:.75rem;flex-wrap:wrap}.vol-chip,.spark-chip{font-family:IBM Plex Mono,monospace;font-size:.72rem;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.2rem .6rem}.window-spark{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.depth-stack{font-family:IBM Plex Mono,monospace;font-size:.72rem}.depth-label,.depth-spread{color:var(--muted);margin:.2rem 0}.depth-row{display:grid;grid-template-columns:42px 1fr 48px;align-items:center;gap:.35rem;margin:.08rem 0}.depth-bar{height:8px;border-radius:4px}.depth-row.ask .depth-bar{background:#ff7b6b73}.depth-row.bid .depth-bar{background:#7bd38973}@media(max-width:960px){.track-panel-body,.lab-charts,.odds-row,.depth-grid,.track-live-grid,.market-meta,.market-hero,.market-event-head,.pnl-compare{grid-template-columns:1fr}}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}
