:root{--ground: #1c2126;--panel: #242a30;--panel-2: #2b3239;--panel-raised: #303941;--rule: #414a53;--rule-strong: #66717b;--ink: #f3f4f5;--ink-dim: #b6bec6;--ink-faint: #8a949e;--accent: #f5a623;--accent-soft: #3b301e;--accent-ink: #15181b;--ok: #38c99a;--err: #ff6b7d;--font-ui: "IBM Plex Sans Condensed", "Arial Narrow", system-ui, sans-serif;--font-mono: "IBM Plex Mono", "Cascadia Mono", ui-monospace, monospace;--row-h: 44px;--gutter: 18px;--radius: 2px;--panel-shadow: none;--e-out: cubic-bezier(.22, .75, .25, 1);color-scheme:dark}:root[data-theme=light]{--ground: #e7eaec;--panel: #f8f9fa;--panel-2: #eef1f3;--panel-raised: #ffffff;--rule: #c2c9cf;--rule-strong: #929da7;--ink: #14191e;--ink-dim: #4f5b65;--ink-faint: #69737d;--accent: #ae5d00;--accent-soft: #f5e4ce;--accent-ink: #ffffff;--ok: #087b5e;--err: #c52f46;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{margin:0;overflow:hidden;background:var(--ground);color:var(--ink);font-family:var(--font-ui);font-size:14px;line-height:1.4;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}.num,.figure-static{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"zero" 1;letter-spacing:-.025em}.figure-static{display:inline-block;line-height:1.08;white-space:nowrap}.eyebrow,.state-code{color:var(--ink-dim);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.dim{color:var(--ink-dim)}.faint{color:var(--ink-faint)}.ok{color:var(--ok)}.err{color:var(--err)}.shell{display:grid;grid-template-rows:56px 30px minmax(0,1fr) 26px;width:100%;height:100%;background:var(--ground)}.terminal-header{display:grid;grid-template-columns:232px minmax(0,1fr) auto;align-items:stretch;min-width:0;background:#101316;color:#f5f6f7;border-bottom:1px solid #353b41}:root[data-theme=light] .terminal-header{background:#172028;color:#fff}.brand{display:flex;align-items:center;gap:11px;padding:0 16px;border-right:1px solid #353b41}.brand-mark{color:#111418;background:#f5a623;padding:6px 7px 5px;font-family:var(--font-mono);font-size:12px;font-weight:800;letter-spacing:.04em}.brand-copy{display:grid;line-height:1}.brand-copy strong{font-size:12px;letter-spacing:.1em}.brand-copy small{margin-top:5px;color:#89939c;font-size:9px;letter-spacing:.06em;text-transform:uppercase}.terminal-nav{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}.terminal-nav::-webkit-scrollbar{display:none}.terminal-tab{position:relative;display:inline-flex;align-items:center;gap:8px;min-width:max-content;padding:0 16px;border:0;border-right:1px solid #272d32;background:transparent;color:#aeb5bb;cursor:pointer;font-size:12px;font-weight:600;transition:color .12s ease,background-color .12s ease}.terminal-tab:hover{color:#fff;background:#1a1f23}.terminal-tab[aria-current=page]{color:#fff;background:#242a2f}.terminal-tab[aria-current=page]:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#f5a623;transform-origin:left;animation:tab-line .18s var(--e-out) both}.tab-key{color:#707a83;font-family:var(--font-mono);font-size:9px}.terminal-tab[aria-current=page] .tab-key{color:#f5a623}.terminal-actions{display:flex;align-items:center;gap:6px;padding:0 10px;border-left:1px solid #353b41}.header-chip,.status-pill{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 9px;border:1px solid #3b434a;border-radius:2px;background:#1a1f23;color:#b8c0c7;font-size:10px;font-weight:650}.header-chip{cursor:pointer;transition:color .12s ease,border-color .12s ease}.header-chip:hover{color:#fff;border-color:#727c84}.status-pill{color:var(--err);border-color:currentColor}.market-strip{display:flex;align-items:center;gap:22px;min-width:0;padding:0 16px;overflow-x:auto;background:var(--panel-2);border-bottom:1px solid var(--rule);color:var(--ink-dim);font-family:var(--font-mono);font-size:9px;white-space:nowrap}.market-strip b{color:var(--ink);font-weight:600}.market-state{color:var(--ok);font-weight:700}.market-state i{display:inline-block;width:6px;height:6px;margin-right:6px;background:currentColor}.market-strip-right{margin-left:auto;color:var(--ink-faint)}.workspace-main{min-width:0;min-height:0;overflow:auto;scrollbar-color:var(--rule-strong) transparent}.statusbar{display:flex;align-items:center;gap:9px;padding:0 14px;background:var(--panel-2);border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:9px}.statusbar-key{color:var(--accent);font-weight:700}.page{width:min(100%,1460px);margin-inline:auto;padding:22px 28px 44px;display:grid;gap:16px}.page-wide{max-width:1700px}.page-narrow{max-width:1060px}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:none}.stack-center{display:grid;justify-items:start;text-align:left;gap:6px}.market-deck{position:relative;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(440px,1.15fr);grid-template-rows:auto 1fr auto;align-items:center;gap:5px 40px;min-height:184px;padding:24px 26px 19px;overflow:hidden;background:var(--panel);border:1px solid var(--rule);border-top:3px solid var(--accent)}.market-deck:after{content:"SESSION PERFORMANCE";position:absolute;right:18px;top:13px;color:var(--ink-faint);font-family:var(--font-mono);font-size:8px;letter-spacing:.12em}.market-chart{grid-column:2;grid-row:1 / span 2;width:100%;min-width:0;padding-top:12px}.market-chart svg{width:100%;height:76px;overflow:visible}.market-tape{grid-column:1 / -1;display:flex;gap:0;margin-top:9px;padding-top:12px;border-top:1px solid var(--rule);overflow-x:auto}.market-tape>span{align-items:flex-start!important;min-width:160px;padding-right:28px;margin-right:28px;border-right:1px solid var(--rule)}.market-tape>span:last-child{border-right:0}.section-title{margin:0;font-size:18px;font-weight:700;letter-spacing:.01em}.master-band{display:grid;place-items:center;width:48px;height:40px;flex:0 0 auto;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 52%,var(--rule));border-left:3px solid var(--accent);color:var(--accent);font-family:var(--font-mono);font-size:12px;font-weight:700}.child-drawer{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .26s var(--e-out),visibility 0s linear .26s}.child-drawer.is-open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .26s var(--e-out)}.child-drawer-inner{min-height:0;overflow:hidden}.capital-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.stat-block{position:relative;min-height:130px;border-right:1px solid var(--rule)}.stat-block:last-child{border-right:0}.stat-block:before{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--rule-strong);transform:scaleX(0);transform-origin:left;transition:transform .18s var(--e-out)}.stat-block:hover:before{transform:scaleX(1)}.screen-header{display:flex;align-items:center;gap:12px;min-height:40px;padding-bottom:9px;border-bottom:1px solid var(--rule);flex-wrap:wrap}.screen-header h2{font-size:18px!important}.screen-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.segmented{border-radius:2px!important}.segmented button{transition:background-color .12s ease,color .12s ease}.segmented button:hover{color:var(--ink)!important}.terminal-chip{transition:border-color .12s ease,background-color .12s ease,color .12s ease}.terminal-chip:hover{border-color:var(--rule-strong)!important;color:var(--ink)!important}.terminal-stat{position:relative;overflow:hidden}.terminal-stat:after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--accent)}.head-row{box-shadow:inset 0 1px color-mix(in srgb,var(--ink) 3%,transparent)}.option-page{gap:12px}.chain-contract{display:inline-flex;align-items:baseline;gap:7px;font-family:var(--font-mono);font-size:11px;letter-spacing:.01em}.chain-contract b{color:var(--accent)}.chain-summary{display:grid;grid-template-columns:190px minmax(320px,1fr) 190px;align-items:stretch;min-height:72px;background:var(--panel);border:1px solid var(--rule)}.oi-stat{display:grid;align-content:center;gap:3px;padding:10px 18px;font-size:10px;font-weight:700;letter-spacing:.11em}.oi-stat strong{font-size:21px;letter-spacing:-.04em}.oi-call{color:var(--ok);border-right:1px solid var(--rule)}.oi-put{color:var(--err);text-align:right;border-left:1px solid var(--rule)}.oi-pressure{display:grid;align-content:center;gap:9px;padding:10px 22px}.oi-pressure-labels{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;color:var(--ink-dim);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.oi-pressure-labels strong{color:var(--ink);font-size:12px}.oi-pressure-labels span:last-child{text-align:right}.oi-pressure-track{display:flex;height:8px;overflow:hidden;background:var(--panel-2)}.oi-pressure-call{background:var(--ok);transition:width .42s var(--e-out)}.oi-pressure-put{background:var(--err);transition:width .42s var(--e-out)}.option-tools{display:flex;align-items:center;gap:7px;min-height:38px;flex-wrap:wrap}.chain-key{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:var(--ink-dim);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.chain-key i{width:12px;height:3px;margin-left:7px}.call-key{background:var(--ok)}.put-key{background:var(--err)}.chain-shell{overflow-x:auto;background:var(--panel);border:1px solid var(--rule);border-top:2px solid var(--accent)}.chain-banner,.chain-columns,.chain-row{min-width:1080px}.chain-banner{display:grid;grid-template-columns:1fr 104px 1fr;min-height:34px;background:var(--panel-2);border-bottom:1px solid var(--rule)}.chain-side-label,.strike-label{display:flex;align-items:center;padding:0 16px;font-size:10px;font-weight:700;letter-spacing:.13em}.call-label{color:var(--ok)}.put-label{justify-content:flex-end;color:var(--err)}.strike-label{justify-content:center;color:var(--accent);border-inline:1px solid var(--rule)}.chain-columns{display:flex;align-items:center;height:29px;border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--panel-2) 72%,var(--panel))}.column-label,.oi-column,.strike-column-label{color:var(--ink-faint);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.column-label{width:78px;padding-right:10px;text-align:right;flex:0 0 auto}.oi-column{width:74px;text-align:center;flex:0 0 auto}.call-text{color:var(--ok)}.put-text{color:var(--err)}.strike-column-label{width:104px;text-align:center;flex:0 0 auto}.chain-scroll{height:476px;overflow:auto;scrollbar-color:var(--rule-strong) var(--panel)}.chain-row{display:flex;align-items:stretch;border-bottom:1px solid color-mix(in srgb,var(--rule) 70%,transparent)}.chain-row:hover{background:var(--panel-raised)}.chain-row.is-atm{background:color-mix(in srgb,var(--accent) 7%,var(--panel))}.chain-side{display:flex;align-items:center;flex:0 0 auto}.chain-side.is-itm,.chain-flex.is-itm{background:color-mix(in srgb,var(--ink) 3%,transparent)}.chain-flex{flex:1 1 0;min-width:0}.chain-cell{width:78px;padding-right:10px;text-align:right;font-size:11px;line-height:34px;flex:0 0 auto}.oi-map{display:grid;place-items:center;width:74px;padding-inline:8px;flex:0 0 auto}.strike-axis{position:relative;display:grid;place-items:center;width:104px;flex:0 0 auto;background:var(--panel-2);border-inline:1px solid var(--rule)}.strike-axis b{font-size:12px;font-weight:600}.strike-axis small{position:absolute;left:5px;top:3px;color:var(--accent);font-family:var(--font-mono);font-size:7px;font-weight:700;letter-spacing:.08em}.is-atm .strike-axis{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.is-atm .strike-axis small{color:var(--accent-ink)}.chain-footnote{display:flex;gap:18px;color:var(--ink-faint);font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em}.chain-footnote span+span:before{content:"/";margin-right:18px;color:var(--rule-strong)}.pulse-dot{position:relative!important;contain:layout paint}.pulse-dot:before,.pulse-dot:after{content:none!important;display:none!important;animation:none!important}.ambient{display:none!important}.blocked-state{width:min(520px,calc(100% - 40px));margin:10vh auto;padding:26px;border:1px solid var(--rule);border-left:3px solid var(--err);background:var(--panel)}.blocked-state h1,.blocked-state h2{margin:9px 0 5px}.blocked-state p{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes tab-line{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(max-width:1100px){.terminal-header{grid-template-columns:190px minmax(0,1fr)}.terminal-actions{display:none}}@media(max-width:760px){:root{--gutter: 14px}body{overflow:auto}.shell{height:auto;min-height:100%;grid-template-rows:auto 30px minmax(0,1fr) 26px}.terminal-header{grid-template-columns:1fr}.brand{min-height:50px;border-right:0;border-bottom:1px solid #353b41}.terminal-nav{min-height:46px}.terminal-tab{padding:0 13px}.market-strip-right{margin-left:0}.workspace-main{overflow:visible}.page{padding:17px 14px 34px}.market-deck{grid-template-columns:1fr;padding:18px}.market-chart{grid-column:1;grid-row:auto}.market-tape{grid-column:1}.capital-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-block:nth-child(2){border-right:0}.stat-block:nth-child(-n+2){border-bottom:1px solid var(--rule)}.chain-summary{grid-template-columns:1fr 1fr}.oi-pressure{grid-column:1 / -1;grid-row:2;border-top:1px solid var(--rule)}.oi-call{border-right:1px solid var(--rule)}.oi-put{border-left:0}.chain-key{width:100%;margin-left:0}.chain-footnote{overflow-x:auto;white-space:nowrap}}:root{--d-fast: .11s;--d-base: .19s;--d-slow: .28s}@keyframes terminal-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes panel-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes row-in{0%{opacity:0}to{opacity:1}}.screen-enter{animation:terminal-in var(--d-base) var(--e-out) both}.anim-up,.anim-pop,.anim-left,.anim-right{animation:panel-in var(--d-slow) var(--e-out) both;animation-delay:min(var(--delay, 0ms),.11s)}.anim-fade,.anim-row{animation:row-in var(--d-base) ease-out both;animation-delay:min(var(--delay, 0ms),60ms)}.flash:after,.tick-lift,.roll-track,.roll-digit,.spine:after,.spine-glow:before,.ambient,.pulse-dot:after{animation:none!important}.flash:after,.spine:after,.spine-glow:before,.ambient,.pulse-dot:after{display:none!important}.roll{display:inline;height:auto;overflow:visible}.roll-track{display:inline;transform:none!important;transition:none!important}.roll-digit{display:none}.spine{position:relative;background:color-mix(in srgb,var(--accent) 9%,var(--panel))!important}.spine:before{content:"ATM";position:absolute;left:50%;top:2px;z-index:3;transform:translate(-50%);color:var(--accent);font-family:var(--font-mono);font-size:7px;font-weight:700;letter-spacing:.12em;pointer-events:none}.bar-fill,.bar-edge{transform-origin:var(--origin, left center);transition:transform .36s var(--e-out)}.ring-arc{transition:stroke-dashoffset .44s var(--e-out)}@keyframes draw-in{0%{stroke-dashoffset:var(--len, 1000)}to{stroke-dashoffset:0}}.draw{animation:draw-in .46s var(--e-out) both;animation-delay:min(var(--delay, 0ms),90ms)}.lift{transition:border-color var(--d-fast) ease,background-color var(--d-fast) ease}.lift:hover{border-color:var(--rule-strong);background:var(--panel-raised)}.row-react{transition:background-color var(--d-fast) ease,box-shadow var(--d-fast) ease}.row-react:hover{background:var(--panel-raised)!important;box-shadow:inset 2px 0 0 var(--accent)}.spotlight:before{display:none}.press{transition:filter 90ms ease,transform 90ms ease}.press:hover{filter:brightness(1.04)}.press:active{transform:scale(.996)}.pulse-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok)}.shimmer{position:relative;overflow:hidden;background:var(--panel-2)}.shimmer:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--ink) 6%,transparent),transparent);animation:skeleton-pass 1.3s ease-in-out infinite}@keyframes skeleton-pass{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
