:root{color-scheme:dark;font-family:IBM Plex Mono,SFMono-Regular,Roboto Mono,ui-monospace,Menlo,Consolas,monospace;background:#07100f;color:#dbe7e1;--bg: #07100f;--panel: #0c1717;--panel-2: #101d1d;--line: #2a3d3e;--line-soft: rgba(117, 140, 139, .28);--text: #dbe7e1;--muted: #7f9292;--green: #5fd36f;--green-soft: rgba(95, 211, 111, .14);--amber: #dba44a;--amber-soft: rgba(219, 164, 74, .14);--red: #ff5f57;--red-soft: rgba(255, 95, 87, .16);--cyan: #61b9c6;--violet: #8b6eff}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%}body{margin:0;min-width:1280px;min-height:100vh;overflow:auto;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 50% 0%,rgba(95,211,111,.05),transparent 32rem),linear-gradient(180deg,#07100f,#0b1414 56%,#050909)}button,input,select{font:inherit}button{color:inherit}.ops-shell{width:100vw;height:100vh;min-height:960px;padding:6px;display:grid;grid-template-rows:64px 34px 76px 74px clamp(360px,34vh,760px) 96px 90px minmax(112px,1fr);gap:6px;position:relative;overflow:hidden}.ops-shell.focus-mode{grid-template-rows:64px 34px minmax(760px,1fr)}.top-rail,.market-band,.feed-band,.dashboard-grid,.focused-workspace,.telemetry-grid,.simulator-band,.logs-grid,.tab-rail{min-width:0}.hidden-view{display:none!important}.top-rail{display:grid;grid-template-columns:1.35fr 2.25fr 1.45fr 1.9fr 1.05fr 1.05fr 1.45fr 1fr 2fr;border:1px solid var(--line);background:linear-gradient(180deg,#0f1919f5,#070f0ff5);box-shadow:0 0 0 1px #ffffff06 inset}.top-cell,.kill-switch,.live-gate{min-width:0;padding:6px 11px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:3px;overflow:hidden}.top-cell span,.metric span,.feed-cell span,.small-stat span,.mini-panel h3,.log-panel h3,.alerts-panel h3,.panel-header h2,.band-title span{margin:0;color:#9daaaa;text-transform:uppercase;letter-spacing:0;font-size:clamp(9px,.55vw,12px);font-weight:700}.top-cell strong{color:var(--text);font-size:14px;font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-cell small,.metric small,.feed-cell small,.small-stat small{color:var(--muted);font-size:9px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.green,.metric.green strong,.small-stat.green strong,.feed-cell strong.green{color:var(--green)}.amber,.metric.amber strong,.small-stat.amber strong,.feed-cell strong.amber{color:var(--amber)}.red,.small-stat.red strong,.feed-cell strong.red{color:var(--red)}.kill-switch{cursor:pointer;border:0;border-right:1px solid #6b201d;border-left:1px solid #6b201d;background:#ff5f5714;align-items:flex-start;text-transform:uppercase;color:#ff958e}.kill-switch svg,.live-gate svg{flex:0 0 auto}.kill-switch span,.live-gate span{color:#ff958e;font-size:10px;font-weight:800;text-transform:uppercase}.kill-switch b,.live-gate strong{color:#ffdedb;font-size:11px;text-transform:uppercase}.kill-switch.engaged{color:#fff;background:linear-gradient(180deg,#ff5f5757,#7d181657)}.live-gate{border-right:0;color:var(--red);background:repeating-linear-gradient(135deg,rgba(255,95,87,.24) 0 2px,transparent 2px 9px),#ff5f570f;align-items:center;text-align:center}.live-gate small{color:#ffaaa4;font-size:9px;line-height:1.15}.tab-rail{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid var(--line);background:#070f0fdb}.tab,.chip,.icon-button,.text-button,.pill-button{min-height:28px;border:1px solid var(--line);background:#0c1717;color:#b8c8c4;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease}.tab{padding:0 16px;text-transform:uppercase;font-size:11px;font-weight:800}.tab:hover,.chip:hover,.icon-button:hover,.text-button:hover,.pill-button:hover{border-color:#59706f;color:#f1faf4}.tab.active,.chip.selected{color:#07100f;background:var(--green);border-color:var(--green)}.tab-spacer{flex:1}.icon-button{width:32px;padding:0}.chip{padding:0 10px;font-size:10px;text-transform:uppercase}.text-button{padding:0 10px;border-color:transparent;background:transparent;color:#9fb4b2;text-transform:uppercase;font-size:10px}.market-band,.feed-band,.simulator-band{display:grid;border:1px solid var(--line);background:#0c1717f0}.market-band{grid-template-columns:1fr 1.55fr 1.75fr 1.7fr 1.45fr 1.4fr 1.55fr 1.25fr 1.85fr}.feed-band{grid-template-columns:minmax(170px,.8fr) repeat(10,minmax(180px,1fr));overflow-x:auto;overflow-y:hidden}.simulator-band{grid-template-columns:.95fr .82fr .72fr .72fr .78fr .9fr .78fr .9fr .9fr minmax(560px,2.8fr);min-height:0}.band-title,.metric,.feed-cell,.guardrail-mini,.replay-controls,.sim-controls{min-width:0;border-right:1px solid var(--line);padding:7px 11px;display:flex;flex-direction:column;justify-content:center;gap:5px;overflow:hidden}.band-title{gap:5px}.band-title svg{color:#a3b4b0}.band-title small{color:var(--muted);text-transform:uppercase;font-size:10px}.metric strong{color:var(--text);font-size:16px;font-weight:500;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric.split strong{color:var(--green)}.guardrail-mini b{color:var(--green);font-size:11px;font-weight:700;display:flex;justify-content:space-between}.guardrail-mini b:after{content:"OK"}.feed-cell strong{display:flex;gap:7px;align-items:center;font-size:13px;min-width:0;line-height:1.1}.feed-cell{justify-content:flex-start}.feed-cell small{white-space:normal;overflow:visible;text-overflow:clip;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.feed-cell i{width:9px;height:9px;border-radius:50%;display:inline-block;background:currentColor;box-shadow:0 0 12px currentColor}.dashboard-grid{display:grid;grid-template-columns:minmax(500px,1.72fr) minmax(310px,.75fr) minmax(320px,.86fr);gap:6px;min-height:0;height:100%;overflow:hidden}.focused-workspace{grid-row:5 / -1;display:grid;gap:6px;min-height:0;overflow:hidden}.focus-mode .focused-workspace{grid-row:3 / -1}.markets-view{grid-template-columns:minmax(520px,1.1fr) minmax(760px,1.4fr) minmax(720px,1.2fr);grid-template-rows:max-content minmax(440px,1fr)}.feeds-view,.signals-view,.risk-view,.simulator-view{grid-template-columns:minmax(720px,1fr) minmax(720px,1fr)}.books-view{grid-template-columns:repeat(2,minmax(720px,1fr))}.focused-workspace .panel{min-height:0}.focused-workspace .panel>table{flex:1}.market-queue-panel{grid-column:1 / -1}.market-queue-panel table{flex:0 0 auto;min-width:1860px;max-height:520px}.market-queue-panel th:nth-child(1),.market-queue-panel td:nth-child(1){width:6%}.market-queue-panel th:nth-child(2),.market-queue-panel td:nth-child(2){width:8%}.market-queue-panel th:nth-child(3),.market-queue-panel td:nth-child(3){width:15%}.market-queue-panel th:nth-child(4),.market-queue-panel td:nth-child(4){width:21%}.market-queue-panel th:nth-child(5),.market-queue-panel td:nth-child(5){width:13%}.market-queue-panel th:nth-child(6),.market-queue-panel td:nth-child(6){width:8%}.market-queue-panel th:nth-child(7),.market-queue-panel td:nth-child(7){width:21%}.market-queue-panel th:nth-child(8),.market-queue-panel td:nth-child(8){width:8%}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:12px;overflow:auto}.detail-row{min-width:0;min-height:58px;padding:9px 12px;border-right:1px solid rgba(91,113,113,.22);border-bottom:1px solid rgba(91,113,113,.22);display:grid;align-content:center;gap:6px}.detail-row span,.source-card span{color:#9daaaa;text-transform:uppercase;font-size:10px;font-weight:800}.detail-row strong,.source-card strong{min-width:0;color:var(--text);font-size:13px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;overflow:auto}.source-card{min-width:0;min-height:86px;border:1px solid rgba(91,113,113,.28);background:#02080833;padding:11px;display:grid;align-content:center;gap:6px}.source-card small{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-card.green strong{color:var(--green)}.source-card.amber strong{color:var(--amber)}.source-card.red strong{color:var(--red)}.simulator-focus-metrics{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line)}.panel,.mini-panel,.alerts-panel,.log-panel{min-width:0;min-height:0;border:1px solid var(--line);background:linear-gradient(180deg,#101d1df5,#080f0ff5),var(--panel);box-shadow:0 0 0 1px #ffffff06 inset}.panel{position:relative;display:flex;flex-direction:column;overflow:hidden}.price-panel{display:grid;grid-template-rows:36px 28px minmax(0,1fr) 26px 50px}.book-panel{display:grid;grid-template-rows:36px minmax(0,1fr) 50px}.panel-header,.mini-panel header,.alerts-panel header,.log-panel header{min-height:36px;padding:7px 11px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-header>div,.log-panel header>div{min-width:0;display:flex;align-items:center;gap:8px}.panel-header svg,.log-panel svg,.mini-panel svg{color:#9fb4b2;flex:0 0 auto}.panel-header b{color:var(--red);text-transform:uppercase;font-size:11px}.panel-toolbar{position:absolute;top:7px;right:10px;display:flex;gap:5px;z-index:2}.legend-row{display:flex;flex-wrap:wrap;gap:16px;padding:7px 14px 0;min-height:0;overflow:hidden}.legend{display:inline-flex;align-items:center;gap:8px;color:#b4c5c2;font-size:11px}.legend i{width:22px;height:2px;background:var(--legend-color);display:inline-block}.legend.dashed i{background:repeating-linear-gradient(90deg,var(--legend-color) 0 5px,transparent 5px 9px)}.price-chart{min-height:0;flex:1;height:100%;max-height:100%;padding:6px 8px 0}.chart-tooltip{border:1px solid var(--line);background:#070e0ef5;padding:10px;display:grid;gap:4px;color:var(--text);font-size:11px}.scrub-strip{height:26px;padding:0 14px 6px;display:flex;align-items:center}input[type=range]{width:100%;accent-color:var(--green)}.stat-strip,.book-footer{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--line)}.book-footer{grid-template-columns:repeat(4,1fr)}.small-stat{min-width:0;padding:7px 10px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.small-stat strong{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.orderbook{height:100%;padding:8px 12px 10px;display:grid;gap:0;grid-template-rows:24px repeat(var(--row-count, 11),minmax(26px,1fr));align-content:stretch;min-height:0;overflow:hidden}.book-head,.book-row,.blocker-head,.blocker-row{display:grid;align-items:center}.book-head,.book-row{grid-template-columns:.7fr 1fr 1.2fr}.book-head{color:#99a9a8;text-transform:uppercase;font-size:10px;padding-bottom:6px}.book-row{min-height:26px;border-top:1px solid rgba(91,113,113,.22);color:#dce8e2;font-size:12px;position:relative;overflow:hidden}.book-row:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.2;transform-origin:right;transform:scaleX(var(--depth, .8))}.book-row.ask:before{background:linear-gradient(90deg,transparent,var(--red))}.book-row.bid:before{background:linear-gradient(90deg,transparent,var(--green))}.book-row.ask span:first-child{color:var(--red)}.book-row.bid span:first-child{color:var(--green)}.book-row.mid{color:#e3f1ec;background:#ffffff09}.book-row span{position:relative;z-index:1;padding:0 2px}.blocker-list{flex:1;display:grid;grid-template-rows:26px repeat(7,38px);align-content:start;min-height:0;overflow:hidden}.blocker-head,.blocker-row{grid-template-columns:34px 1fr 70px 78px;padding:0 14px;border-bottom:1px solid rgba(91,113,113,.22)}.blocker-head{color:#99a9a8;text-transform:uppercase;font-size:10px}.blocker-row{min-height:38px;font-size:12px}.blocker-row>span{color:#cbd7d3}.blocker-row div{min-width:0;display:grid;gap:3px}.blocker-row b,.blocker-row small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.blocker-row b{color:#ff8b82}.blocker-row.warn b{color:var(--amber)}.blocker-row small{color:#a9b6b4}.blocker-row strong{color:var(--red);font-size:11px}.blocker-row.warn strong{color:var(--amber)}.blocker-row time{color:#c2ceca;font-size:11px;text-align:right}.panel-action-row{min-height:34px;border-top:1px solid var(--line);padding:0 12px;display:flex;align-items:center;justify-content:space-between;color:#9fb0ae;font-size:11px}.telemetry-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr)) minmax(310px,1.45fr);gap:6px;min-height:0}.mini-panel,.alerts-panel{padding-bottom:7px;overflow:hidden}.mini-panel header{min-height:34px;border-bottom:0;padding-bottom:0}.mini-panel header div,.alerts-panel header{min-width:0}.mini-panel header span{color:var(--muted);text-transform:uppercase;font-size:10px}.mini-panel>strong{display:block;padding:0 14px;font-size:17px;font-weight:600}.mini-chart{height:44px;margin:4px 10px 0;border:1px solid rgba(91,113,113,.26);background:#02080852}.pill-button{min-height:24px;padding:0 8px;border-color:#5fd36f66;color:var(--green);background:var(--green-soft);text-transform:uppercase;font-size:10px}.pill-button.on{animation:pulseBorder 2.4s ease-in-out infinite}.alerts-panel header{min-height:36px}.alert-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 12px 10px;text-transform:uppercase;font-size:11px;font-weight:800}.alert-summary span{padding:7px 8px;border:1px solid var(--line-soft);border-radius:3px}.critical{color:var(--red)}.warning{color:var(--amber)}.info{color:#72a9ff}.alert-row{margin:0 12px;min-height:38px;display:grid;grid-template-columns:20px 78px 52px 1fr 1.4fr;align-items:center;gap:8px;border-top:1px solid rgba(91,113,113,.24);color:#c7d4d0;font-size:11px}.alert-row svg,.alert-row b{color:var(--amber)}.alert-row small{color:#9faeac}.replay-controls,.sim-controls{flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;border-right:0}.replay-controls span,.sim-controls span{color:#9daaaa;text-transform:uppercase;font-size:10px;font-weight:800}.replay-controls input{max-width:360px}.replay-controls b{margin-left:auto;font-size:18px;font-weight:500}.sim-controls{display:grid;grid-template-columns:minmax(520px,1.2fr) 228px minmax(190px,.5fr) minmax(240px,.6fr);gap:8px;padding:6px 10px;overflow:hidden}.sim-control-grid{display:grid;grid-template-columns:118px 66px repeat(4,minmax(86px,1fr));gap:8px;align-items:center;min-width:0}.sim-control-grid label{display:grid;gap:4px;min-width:0;overflow:hidden}.sim-control-grid input[type=range]{min-width:0;max-width:100%}.sim-control-grid select{min-height:28px;width:100%;border:1px solid var(--line);border-radius:3px;background:#0c1717;color:#dbe7e1;padding:0 8px;text-transform:uppercase;font-size:10px}.segmented{min-width:0;height:28px;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:3px;overflow:hidden}.segmented button{border:0;background:#0c1717;color:#b8c8c4;text-transform:uppercase;font-size:10px;cursor:pointer}.segmented button.selected{background:var(--green);color:#07100f;font-weight:800}.sim-actions{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0}.sim-actions .chip,.sim-actions .pill-button{min-width:58px;height:28px;padding-inline:7px}.sim-actions .pill-button{min-width:72px}.sim-readout{display:grid;grid-template-rows:repeat(6,1fr);min-width:0;overflow:hidden;border-left:1px solid rgba(91,113,113,.22);border-right:1px solid rgba(91,113,113,.22)}.sim-readout span{min-width:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:0 8px;border-bottom:1px solid rgba(91,113,113,.2);color:#9daaaa;text-transform:uppercase;font-size:9px;font-weight:800}.sim-readout span:last-child{border-bottom:0}.sim-readout strong{color:var(--text);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sim-ledger{display:grid;grid-template-rows:repeat(3,22px);gap:2px;min-width:0;overflow:hidden}.empty-ledger,.sim-fill{min-width:0;min-height:22px;border:1px solid rgba(91,113,113,.22);background:#02080838;display:grid;align-items:center;padding:0 8px;color:#aebdb9;font-size:10px}.sim-fill{grid-template-columns:56px 74px 42px 44px 1fr;gap:8px}.sim-fill b,.sim-fill span,.sim-fill strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logs-grid{display:grid;grid-template-columns:minmax(460px,.76fr) minmax(560px,1fr);gap:6px;height:100%;min-height:0;overflow:hidden}.log-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.log-panel header{min-height:38px;padding:7px 11px}.log-panel header label{display:inline-flex;align-items:center;gap:6px;color:#aebdb9;font-size:11px;white-space:nowrap}.log-table-scroll{flex:1;min-height:0;overflow:auto}.log-panel table{min-width:760px}.event-log table{min-width:980px}.log-panel thead th{position:sticky;top:0;z-index:1;background:#101d1d}table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}th,td{text-align:left;border-bottom:1px solid rgba(91,113,113,.22);padding:7px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}th{color:#9daaaa;text-transform:uppercase;font-size:10px;font-weight:800}td{color:#c5d2ce}.focused-workspace table{display:block;overflow:auto}.focused-workspace thead,.focused-workspace tbody,.focused-workspace tr{display:table;width:100%;table-layout:fixed}.warn-line td{color:var(--amber)}.table-action{margin-left:auto;min-height:28px;border:0;background:transparent;color:#9fb4b2;text-transform:uppercase;font-size:10px;padding:0 14px 8px;cursor:pointer}.kill-banner{position:fixed;left:50%;bottom:12px;transform:translate(-50%) translateY(84px);border:1px solid var(--line);background:#070e0ef5;color:#b8c8c4;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:3px;font-size:12px;transition:transform .24s ease;z-index:10}.kill-banner.active{transform:translate(-50%) translateY(0);border-color:#ff5f57b3;color:#ffe1de;background:#400e0df5}@keyframes pulseBorder{0%,to{box-shadow:0 0 #5fd36f1f}50%{box-shadow:0 0 0 4px #5fd36f14}}@media(max-width:1360px){body{overflow-x:auto}.ops-shell{width:1360px}}@media(max-height:1050px)and (min-width:1800px){.ops-shell{min-height:1100px;grid-template-rows:58px 32px 68px 76px 332px 92px 108px minmax(274px,1fr);gap:5px;padding:5px}.ops-shell.focus-mode{min-height:927px;grid-template-rows:58px 32px minmax(820px,1fr)}.top-cell,.kill-switch,.live-gate,.band-title,.metric,.feed-cell,.guardrail-mini,.small-stat{padding-block:6px;gap:4px}.top-cell strong{font-size:13px}.top-cell small,.metric small,.small-stat small{font-size:9px;line-height:1.18}.feed-cell small{font-size:9px;line-height:1.25}.tab,.chip,.icon-button,.text-button,.pill-button{min-height:24px}.tab-rail{padding:3px 5px}.tab{padding:0 12px;font-size:10px}.metric strong{font-size:14px}.guardrail-mini b,.feed-cell strong,.small-stat strong{font-size:12px}.panel-header,.mini-panel header,.alerts-panel header,.log-panel header{min-height:28px;padding:4px 10px}.price-panel{grid-template-rows:30px 24px minmax(0,1fr) 22px 44px}.book-panel{grid-template-rows:30px minmax(0,1fr) 44px}.legend-row{padding-top:4px}.price-chart{padding-top:3px}.scrub-strip{height:20px;padding-bottom:3px}.orderbook{grid-template-rows:20px repeat(var(--row-count, 11),minmax(22px,1fr));padding-top:6px}.book-row{min-height:22px;font-size:11px}.book-head,.blocker-head,th{font-size:9px}.blocker-list{grid-template-rows:22px repeat(7,28px)}.blocker-head,.blocker-row{grid-template-columns:28px 1fr 62px 70px;padding-inline:10px}.blocker-row{min-height:28px;font-size:11px}.blocker-row div{gap:1px}.panel-action-row{min-height:26px;font-size:10px}.mini-panel,.alerts-panel{padding-bottom:4px}.mini-panel header{min-height:24px}.mini-panel>strong{font-size:13px}.mini-chart{height:38px;margin-top:2px}.alert-summary{gap:4px;padding-inline:8px;padding-bottom:4px}.alert-summary span{padding-block:4px}.alert-row{min-height:30px;margin-inline:8px;grid-template-columns:18px 68px 44px 1fr 1.2fr;gap:6px;font-size:11px}.alerts-panel header{min-height:26px;padding:3px 8px}.alerts-panel .text-button{min-height:22px;padding-inline:6px}.sim-controls{grid-template-columns:392px 204px 138px 223px;padding-block:5px}.sim-ledger{grid-template-rows:repeat(3,24px)}.empty-ledger,.sim-fill{min-height:24px}.log-panel header{min-height:28px}table{font-size:10px}th,td{padding:4px 9px}.table-action{min-height:24px;padding-bottom:5px}}
