*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,Fira Code,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.table{display:table}.grid{display:grid}.resize{resize:both}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #080b10;--panel: #10151d;--panel-2: #141b25;--border: #243040;--muted: #8490a3;--text: #e7edf5;--green: #38d39f;--red: #ff5d73;--amber: #f0b429;--blue: #60a5fa}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--border) var(--bg)}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:var(--bg)}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),var(--bg);background-size:28px 28px}.auth-panel{width:min(420px,100%);display:grid;gap:18px;padding:20px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand h1{margin:0;font-size:18px}.auth-brand p{margin:3px 0 0;color:var(--muted);font-size:12px}.auth-error{padding:9px 10px;color:var(--red);background:#ff5d731a;border:1px solid rgba(255,93,115,.4);border-radius:6px;font-size:12px}.app-header{height:68px;border-bottom:1px solid var(--border);background:#0d1219;padding:0 20px;display:flex;align-items:center;justify-content:space-between}.brand,.header-meta,footer,.panel-title,.legend,.primary-button,.metric-strip{display:flex;align-items:center}.brand{gap:12px}.brand h1{margin:0;font-size:18px;line-height:1.2;letter-spacing:0}.brand p,.panel-title p{margin:3px 0 0;color:var(--muted);font-size:12px}.header-meta{gap:16px;color:var(--muted);font-size:13px}.surface-nav{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--border);border-radius:7px;background:#090d13}.surface-nav button{height:28px;min-width:78px;padding:0 14px;border:0;border-radius:5px;background:transparent;color:var(--muted);cursor:pointer}.surface-nav button.active{background:var(--panel-2);color:var(--text);box-shadow:inset 0 0 0 1px #60a5fa33}.status-text{text-transform:uppercase;letter-spacing:.04em}.status-text.status-critical{color:var(--red)}.status-text.status-warn{color:var(--amber)}.status-text.status-ok{color:var(--green)}.header-meta span,footer span{display:inline-flex;align-items:center;gap:6px}.dashboard-grid{flex:1;min-height:0;padding:16px;display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-template-rows:minmax(620px,72vh) minmax(180px,1fr);gap:14px}.main-stack{min-width:0;min-height:0;display:grid;grid-template-rows:74px minmax(0,1fr);gap:14px}.panel{min-width:0;min-height:0;background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden}.chart-panel{padding:14px;display:grid;grid-template-rows:50px minmax(0,1fr)}.arb-chart-panel{grid-template-rows:58px minmax(0,1fr)}.arb-chart-panel .legend{flex-wrap:wrap;justify-content:flex-end;white-space:normal}.details-panel{padding:14px;overflow-y:auto}.table-panel{grid-column:1;padding:0;display:grid;grid-template-rows:58px minmax(0,1fr)}.backtest-panel{grid-column:2;padding:14px;overflow-y:auto}.panel-title{justify-content:space-between;gap:12px;margin-bottom:10px}.panel-title.compact{margin-bottom:14px}.panel-title h2{margin:0;font-size:15px;letter-spacing:0}.title-tabs{display:flex;align-items:center;gap:10px}.segmented-control{display:inline-flex;align-items:center;height:28px;padding:2px;border:1px solid var(--border);border-radius:6px;background:#090d13}.segmented-control button{min-width:42px;height:22px;padding:0 9px;border:0;border-radius:4px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.segmented-control button.active{background:var(--panel-2);color:var(--text)}.legend{gap:9px;color:var(--muted);font-size:12px;white-space:nowrap}.chart-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;text-transform:none;letter-spacing:0;cursor:pointer}.chart-toggle:first-child{grid-column:auto}.chart-toggle input{width:14px;height:14px;margin:0;padding:0;accent-color:var(--blue)}.buy-dot,.sell-dot,.hold-dot,.label-dot{width:9px;height:9px;display:inline-block;border-radius:50%}.buy-dot{background:var(--green)}.sell-dot{background:var(--red)}.hold-dot{background:var(--amber)}.label-dot{background:var(--blue)}.metric-strip{gap:10px}.metric{flex:1;height:74px;padding:12px;background:var(--panel);border:1px solid var(--border);border-radius:8px}.metric span,.detail-row span,label,th{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.metric strong{display:block;margin-top:8px;font-size:20px}.detail-list{display:grid;gap:7px}.detail-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(36,48,64,.65)}.detail-row strong{text-align:right;font-size:13px;overflow-wrap:anywhere}.section-label{margin-top:18px;margin-bottom:8px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.chip-list{display:flex;flex-wrap:wrap;gap:7px}.chip-list span{padding:5px 8px;border-radius:999px;background:var(--panel-2);border:1px solid var(--border);font-size:12px}.config-block{margin:0;padding:10px;background:#090d13;border:1px solid var(--border);border-radius:6px;color:#c9d4e5;font-size:12px;overflow-x:auto}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{position:sticky;top:0;z-index:1;background:var(--panel);text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}td{padding:10px 12px;border-bottom:1px solid rgba(36,48,64,.65);white-space:nowrap}tbody tr{cursor:pointer}tbody tr:hover,tbody tr.selected{background:#172131}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}label{display:grid;gap:6px}label:first-child{grid-column:1 / -1}input,select{min-width:0;width:100%;height:36px;border:1px solid var(--border);border-radius:6px;background:#090d13;color:var(--text);padding:0 10px;outline:none}input:focus,select:focus{border-color:var(--blue)}.primary-button,.icon-button{border:1px solid var(--border);background:var(--panel-2);color:var(--text);cursor:pointer}.primary-button{width:100%;height:40px;justify-content:center;gap:8px;margin-top:14px;border-color:#38d39f8c}.primary-button:hover,.icon-button:hover{background:#1a2534}.primary-button:disabled{opacity:.55;cursor:not-allowed}.icon-button{width:34px;height:34px;border-radius:6px;display:grid;place-items:center}.icon-button svg,.primary-button svg,.icon{width:18px;height:18px}.tiny-icon{width:14px;height:14px}.accent,.pos{color:var(--green)}.neg{color:var(--red)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.echart-surface{width:100%;height:100%;min-height:0}.error-banner{margin:12px 16px 0;padding:10px 12px;border:1px solid rgba(255,93,115,.45);background:#ff5d731a;color:#ffb4be;border-radius:6px;font-size:13px}.ops-shell{flex:1;min-height:0;display:grid;align-content:start;gap:14px;padding:16px}.ops-toolbar{display:flex;align-items:stretch;justify-content:space-between;gap:14px}.strategy-rail{flex:1;display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:10px}.strategy-card{min-width:0;min-height:66px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text);text-align:left;cursor:pointer}.strategy-card:hover,.strategy-card.selected{border-color:#60a5fa8c;background:#131c28}.strategy-card span:not(.status-orb){min-width:0;display:grid;gap:4px}.strategy-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.strategy-card small,.ops-metric small,.finding small,.muted-copy{color:var(--muted);font-size:11px}.status-orb{width:10px;height:10px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 4px #8490a31a}.status-orb.status-ok{background:var(--green);box-shadow:0 0 0 4px #38d39f1a}.status-orb.status-warn{background:var(--amber);box-shadow:0 0 0 4px #f0b4291a}.status-orb.status-critical{background:var(--red);box-shadow:0 0 0 4px #ff5d731a}.status-orb.status-sunset{background:var(--muted);box-shadow:0 0 0 4px #8490a31a}.status-badge{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;min-height:20px;padding:3px 6px;border:1px solid var(--border);border-radius:4px;color:var(--muted);background:#8490a314;font-size:9px;letter-spacing:.06em;white-space:nowrap}.status-badge.status-ok{color:var(--green);border-color:#38d39f59;background:#38d39f14}.status-badge.status-warn{color:var(--amber);border-color:#f0b42959;background:#f0b42914}.status-badge.status-critical{color:var(--red);border-color:#ff5d7359;background:#ff5d7314}.status-badge.status-sunset{color:var(--muted);border-color:#8490a359;background:#8490a314}.window-select{width:138px;align-content:center;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.window-select select{height:30px}.ops-metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ops-metric{min-height:92px;display:grid;align-content:center;gap:7px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.ops-metric span{color:var(--muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.ops-metric strong{font-size:20px;line-height:1}.ops-metric.tone-ok strong,.ops-metric.tone-ok small{color:var(--green)}.ops-metric.tone-warn strong{color:var(--amber)}.ops-metric.tone-critical strong{color:var(--red)}.ops-metric.tone-sunset strong{color:var(--muted)}.ops-content-grid{min-height:760px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px}.ops-chart-stack,.ops-side-stack{min-height:0;display:grid;gap:14px}.ops-chart-stack{grid-template-rows:minmax(360px,1fr) minmax(360px,1fr) auto}.ops-side-stack{grid-template-rows:minmax(280px,auto) minmax(300px,1fr)}.ops-chart-panel{padding:14px;display:grid;grid-template-rows:45px minmax(0,1fr)}.comparison-legend{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px}.comparison-legend span{display:inline-flex;align-items:center;gap:6px}.legend-line{width:18px;height:0;display:inline-block;border-top:3px solid}.paper-line,.lane-line-production{border-color:var(--red)}.shadow-line,.lane-line-shadow{border-color:var(--blue);border-top-width:2px;border-top-style:dashed}.replay-line,.lane-line-exact_replay{border-color:#34d399;border-top-width:2px;border-top-style:dotted}.strategy-explainer{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.strategy-explainer p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55}.explainer-label{display:inline-block;margin-right:8px;padding:2px 7px;border:1px solid var(--border);border-radius:4px;background:#8490a314;color:var(--text);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.ops-empty{min-height:180px;display:grid;place-content:center;justify-items:center;gap:7px;color:var(--muted);text-align:center}.ops-empty svg{width:24px}.ops-empty strong{color:var(--text)}.ops-empty span{max-width:340px;font-size:12px}.ops-side-panel{padding:14px;overflow-y:auto}.decision-callout{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid var(--border);border-radius:7px;background:#090d13}.decision-callout span,.threshold-row span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.decision-callout strong{text-transform:uppercase}.execution-lifecycle{display:grid;gap:10px;margin-top:9px;padding:11px;border:1px solid var(--border);border-left:3px solid var(--blue);border-radius:7px;background:#0b1017}.execution-lifecycle.lifecycle-ok{border-left-color:var(--green)}.execution-lifecycle.lifecycle-critical{border-left-color:var(--red)}.execution-lifecycle-head,.execution-order-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.execution-lifecycle-head>div{display:grid;gap:3px}.execution-lifecycle-head span,.execution-position-grid span{color:var(--muted);font-size:9px;letter-spacing:.06em;text-transform:uppercase}.execution-lifecycle-head strong{font-size:13px;text-transform:uppercase}.execution-lifecycle-head small{color:var(--blue);font-size:10px}.lifecycle-ok .execution-lifecycle-head small{color:var(--green)}.lifecycle-critical .execution-lifecycle-head small{color:var(--red)}.execution-position-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.execution-position-grid>div{display:grid;gap:4px;padding:8px;border:1px solid rgba(36,48,64,.7);border-radius:5px;background:#090d13}.execution-position-grid strong{font-size:14px}.execution-order-row{color:var(--muted);font-size:10px}.execution-order-row strong{color:var(--text);font-size:11px}.threshold-list{display:grid;margin-top:9px}.threshold-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 2px;border-bottom:1px solid rgba(36,48,64,.65)}.threshold-row strong{font-size:13px}.compact-ok{min-height:110px;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--green);font-size:13px}.compact-ok svg{width:24px}.finding-list{display:grid;gap:8px}.finding{display:grid;gap:4px;padding:10px;border-left:3px solid var(--muted);border-radius:4px;background:#0c1118}.finding.status-warn{border-left-color:var(--amber)}.finding.status-critical{border-left-color:var(--red)}.finding.status-ok{border-left-color:var(--green)}.finding strong{font-size:12px;text-transform:capitalize}.finding span{color:#c9d4e5;font-size:12px}.ops-event-panel{min-height:260px;max-height:440px;display:grid;grid-template-rows:54px minmax(0,1fr);padding:0}.ops-event-panel .panel-title{padding:12px 14px 0}.lane-chip{text-transform:capitalize}.lane-production{color:var(--red)}.lane-shadow{color:var(--blue)}.lane-exact_replay{color:var(--green)}.event-message{max-width:460px;overflow:hidden;text-overflow:ellipsis}.empty-table{padding:32px;color:var(--muted);text-align:center}footer{height:38px;padding:0 16px;border-top:1px solid var(--border);color:var(--muted);font-size:12px;gap:18px;background:#0d1219}@media (max-width: 980px){.app-header,footer{height:auto;min-height:58px;align-items:flex-start;flex-direction:column;padding:12px 14px}.surface-nav{width:100%}.surface-nav button{flex:1}.ops-toolbar,.ops-content-grid{grid-template-columns:minmax(0,1fr);display:grid}.strategy-rail,.ops-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.window-select{width:100%}.ops-content-grid{min-height:0}.ops-chart-stack{grid-template-rows:420px 420px auto}.ops-side-stack{grid-template-rows:auto auto}.dashboard-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 520px 420px 420px}.details-panel,.backtest-panel,.table-panel{grid-column:1}.metric-strip,.form-grid{grid-template-columns:1fr 1fr;display:grid}.metric{height:auto}}@media (max-width: 620px){.strategy-rail,.ops-metric-strip{grid-template-columns:minmax(0,1fr)}.ops-shell{padding:10px}.ops-chart-stack{grid-template-rows:360px 360px auto}}
