:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#090c10;--surface:#0f1419;--surface-alt:#131a21;--surface-hover:#19212a;--line:#222b35;--line-strong:#35414d;--text:#c6cfda;--text-strong:#f2f5f8;--muted:#8f9baa;--quiet:#84909e;--accent:#4c8dff;--accent-soft:#4c8dff1c;--up:#20c997;--down:#f05b68;--sideways:#8f9baa;--warn:#e0aa4f;--warn-soft:#e0aa4f17;--chart-bg:#0b0f14;--chart-stroke:#d5ad58;--chart-sma:#5b9fe7;--chart-ema:#a88fc8;--chart-fake:#5b9fe7;--font-ui:"Avenir Next", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", sans-serif;--font-mono:"SFMono-Regular", "Cascadia Mono", "Roboto Mono", "PingFang SC", monospace}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef1f4;--surface:#fff;--surface-alt:#f5f7f9;--surface-hover:#edf1f4;--line:#dbe2e8;--line-strong:#c1cbd5;--text:#46515d;--text-strong:#111820;--muted:#5f6c7a;--quiet:#5e6a78;--accent:#1f5fd6;--accent-soft:#1f5fd617;--up:#067a57;--down:#c93648;--sideways:#677483;--warn:#a66f10;--warn-soft:#a66f1012;--chart-bg:#fff;--chart-stroke:#a9781d;--chart-sma:#3477c9;--chart-ema:#8769a6;--chart-fake:#3477c9}*{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;color:var(--text);background:var(--bg);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.4;overflow-x:hidden}#root,.app-shell{min-height:100vh}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}small{font-size:14px}::selection{color:#080b0f;background:var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line-strong);background-clip:padding-box;border:2px solid #0000;border-radius:8px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.is-up,.is-long,.is-bullish,.is-trend-up{color:var(--up)!important}.is-down,.is-short,.is-bearish,.is-trend-down{color:var(--down)!important}.is-sideways,.is-neutral,.is-trend-sideways{color:var(--sideways)!important}.is-alert{color:var(--warn)!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-header{z-index:60;border-bottom:1px solid var(--line);background:var(--surface);align-items:stretch;min-height:58px;display:flex;position:sticky;top:0}.brand-logo{border-right:1px solid var(--line);width:58px;min-width:58px;color:var(--text-strong);flex:0 0 58px;place-items:center;display:grid}.brand-logo:hover{background:var(--surface-alt)}.brand-mark{display:block;overflow:visible}.brand-mark__trace{stroke:var(--text-strong);opacity:.55}.brand-mark__node{fill:var(--accent)}.market-select{border:0;border-right:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;align-items:center;gap:9px;min-width:224px;padding:0 11px;display:flex}.market-select:hover{background:var(--surface-alt)}.market-select__copy{flex-direction:column;flex:1;justify-content:center;gap:1px;min-width:0;display:flex}.market-select__copy b{color:var(--text-strong);font-family:var(--font-mono);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650;line-height:1.15;overflow:hidden}.market-select__copy b i{color:var(--muted);font-size:14px;font-style:normal;font-weight:500}.market-select__copy small{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.15;overflow:hidden}.market-select__caret{color:var(--muted);flex:none}.channel-icon{flex:none;place-items:center;display:inline-grid;overflow:hidden}.channel-icon svg{width:100%;height:100%;display:block}.channel-icon--sm{width:18px;height:18px}.channel-icon--md{width:26px;height:26px}.channel-icon--lg{width:30px;height:30px}.header-price{border-right:1px solid var(--line);align-items:center;gap:12px;min-width:264px;padding:0 14px;display:flex}.header-price>strong{color:var(--text-strong);font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.045em;white-space:nowrap;font-size:24px;font-weight:600;line-height:1}.header-price>strong.price-flash--up{animation:.56s ease-out price-flash-up}.header-price>strong.price-flash--down{animation:.56s ease-out price-flash-down}.header-price>span{font-family:var(--font-mono);white-space:nowrap;font-size:14px;font-weight:600}.header-range{color:var(--quiet);font-family:var(--font-mono);white-space:nowrap;gap:8px;font-size:14px;display:flex}.header-range span{align-items:baseline;gap:3px;display:inline-flex}.header-range b{color:var(--text);font-weight:500}.header-actions{align-items:stretch;min-width:0;margin-left:auto;display:flex}.connection-state{min-width:104px;color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:14px;display:flex}.connection-state>i{background:var(--quiet);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.connection-state>span{color:var(--text)}.connection-state>small{color:var(--quiet);font-family:var(--font-mono);font-size:14px}.connection-state.is-live>i{background:var(--up);animation:1.5s ease-in-out infinite alternate pulse}.connection-state.is-connecting>i{background:var(--warn)}.connection-state.is-error>i{background:var(--down)}.connection-state.is-rest>i{background:var(--accent)}.header-button{border:0;border-left:1px solid var(--line);min-width:42px;color:var(--muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.header-button:hover{color:var(--text-strong);background:var(--surface-alt)}.header-button:disabled>svg{animation:.8s linear infinite spin}.header-button--search>svg{color:var(--text);flex:none}.header-button--search>kbd{border:1px solid var(--line);width:19px;height:19px;color:var(--quiet);background:var(--surface-alt);font-family:var(--font-mono);place-items:center;font-size:14px;line-height:1;display:grid}.header-button--icon,.theme-toggle{width:46px;min-width:46px;padding:0}.theme-toggle>svg{transition:transform .16s}.theme-toggle:hover>svg{transform:rotate(12deg)}.app-main{width:100%;margin:0;padding:0}.timeframe-bar{border-bottom:1px solid var(--line);background:var(--surface-alt);align-items:stretch;min-height:40px;display:flex}.timeframe-list{scrollbar-width:none;align-items:stretch;width:100%;min-width:0;display:flex;overflow-x:auto}.timeframe-list::-webkit-scrollbar{display:none}.timeframe-group{border-right:1px solid var(--line);align-items:stretch;padding:0 4px;display:flex}.timeframe-group:first-child{padding-left:1px}.timeframe-group button{min-width:38px;height:39px;color:var(--muted);cursor:pointer;font-family:var(--font-mono);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 8px;font-size:14px;font-weight:550}.timeframe-group button:hover{color:var(--text-strong);background:var(--surface-hover)}.timeframe-group button.is-active{border-bottom-color:var(--accent);color:var(--accent)}.signal-strip{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.signal-strip__item{border-right:1px solid var(--line);align-content:center;gap:1px;min-width:0;min-height:56px;padding:5px 12px;display:grid}.signal-strip__item:last-child{border-right:0}.signal-strip__item>span{color:var(--quiet);font-size:14px;line-height:1.15}.signal-strip__item>strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650;line-height:1.15;overflow:hidden}.signal-strip__item>small{color:var(--muted);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.signal-strip__item.is-up>strong,.signal-strip__item.is-long>strong,.signal-strip__item.is-bullish>strong{color:var(--up)}.signal-strip__item.is-down>strong,.signal-strip__item.is-short>strong,.signal-strip__item.is-bearish>strong{color:var(--down)}.signal-strip__item.is-sideways>strong,.signal-strip__item.is-neutral>strong{color:var(--sideways)}.signal-strip__item.is-alert>strong{color:var(--warn)}.connection-notice{border-bottom:1px solid var(--line);background:var(--warn-soft);min-height:34px;color:var(--warn);align-items:center;gap:10px;padding:5px 12px;font-size:14px;display:flex}.connection-notice b{flex:none;font-weight:650}.connection-notice p{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.connection-notice button{min-height:25px;color:inherit;cursor:pointer;background:0 0;border:1px solid;padding:0 8px;font-size:14px}.terminal-grid{background:var(--surface);grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;display:grid}.chart-panel{background:var(--surface);flex-direction:column;min-width:0;display:flex}.chart-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:44px;padding:0 12px;display:flex}.chart-identity{flex:none;align-items:baseline;gap:8px;min-width:0;display:flex}.chart-identity h2{color:var(--text-strong);white-space:nowrap;margin:0;font-size:15px;font-weight:650;line-height:1}.chart-identity>span{color:var(--quiet);font-family:var(--font-mono);white-space:nowrap;font-size:14px}.ohlc-line{min-width:0;color:var(--quiet);font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;scrollbar-width:none;flex:1;align-items:center;gap:9px;font-size:14px;display:flex;overflow-x:auto}.ohlc-line::-webkit-scrollbar{display:none}.ohlc-line b{color:var(--text);font-weight:520}.ohlc-line time{color:var(--quiet)}.chart-bar-state{color:var(--muted);flex:none;font-size:14px}.countdown-pill{border:1px solid var(--line);background:var(--surface-alt);color:var(--muted);font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;align-items:center;gap:4px;padding:2px 6px;font-size:14px;line-height:1.25;display:inline-flex}.countdown-pill.is-closing{border-color:var(--warn);color:var(--warn)}.chart-layers{flex:none;position:relative}.chart-layers>summary{min-height:34px;color:var(--text);cursor:pointer;border:1px solid #0000;align-items:center;gap:5px;padding:0 8px;font-size:14px;list-style:none;display:flex}.chart-layers>summary::-webkit-details-marker{display:none}.chart-layers[open]>summary,.chart-layers>summary:hover{border-color:var(--line);background:var(--surface-hover);color:var(--text-strong)}.chart-layers__panel{z-index:50;border:1px solid var(--line-strong);background:var(--surface);gap:8px;width:min(370px,100vw - 20px);padding:10px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 10px 28px #00000042}.chart-stage{background:var(--chart-bg);width:100%;height:clamp(460px,100dvh - 250px,820px);min-height:440px;position:relative;overflow:hidden}.chart-host{position:absolute;inset:0}.pivot-canvas{z-index:3;pointer-events:none;position:absolute;inset:0}.chart-return-live{z-index:5;border:1px solid var(--line-strong);background:var(--surface);height:28px;color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;padding:0 9px;font-size:14px;display:inline-flex;position:absolute;bottom:30px;right:72px;box-shadow:0 3px 12px #0000002e}.chart-return-live:hover{border-color:var(--accent);color:var(--accent)}.chart-placeholder{background:var(--chart-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;height:clamp(460px,100dvh - 250px,820px);min-height:440px;padding:24px;display:flex}.chart-placeholder b{color:var(--text-strong);font-size:16px;font-weight:650}.chart-placeholder p{color:var(--muted);margin:0;font-size:14px}.chart-placeholder button{border:1px solid var(--accent);min-height:34px;color:var(--accent);cursor:pointer;background:0 0;margin-top:10px;padding:0 14px;font-size:14px}.loading-line{background:var(--accent);width:34px;height:2px;margin-bottom:8px}.chart-footer{border-top:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;min-height:33px;padding:0 12px;display:flex}.chart-legend{min-width:0;color:var(--muted);white-space:nowrap;scrollbar-width:none;align-items:center;gap:11px;font-size:14px;display:flex;overflow-x:auto}.chart-legend::-webkit-scrollbar{display:none}.chart-legend span{flex:none;align-items:center;gap:4px;display:inline-flex}.legend-line{background:var(--muted);width:12px;height:1px}.legend-line.is-stroke{background:var(--chart-stroke)}.legend-line.is-sma{background:var(--chart-sma)}.legend-line.is-ema{border-top:1px dotted var(--chart-ema);background:0 0;height:0}.legend-line.is-unfinished{border-top:1px dashed var(--warn);background:0 0;height:0}.legend-line.is-fake,.legend-line.is-trend,.legend-line.is-fractal,.legend-line.is-extremes{border-top:1px dashed var(--muted);background:0 0;height:0}.legend-line.is-fake{border-top-color:var(--chart-fake)}.legend-line.is-boll{background:var(--chart-sma);opacity:.55}.legend-line.is-pivot,.legend-line.is-parent{border:1px dashed var(--muted);background:0 0;width:12px;height:7px}.legend-line.is-pivot{border-color:var(--chart-stroke)}.legend-line.is-divergence,.legend-line.is-bs{background:var(--up);border-radius:50%;width:5px;height:5px}.chart-meta{color:var(--quiet);font-family:var(--font-mono);white-space:nowrap;flex:none;font-size:14px}.workspace-side{border-left:1px solid var(--line);background:var(--surface);overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;min-height:0;overflow-y:auto}.inspector{background:var(--surface);min-width:0}.inspector-bias{border-bottom:1px solid var(--line);background:var(--surface-alt);padding:10px 12px 11px}.inspector-head{justify-content:space-between;align-items:baseline;gap:10px;min-height:18px;display:flex}.inspector-head h3{color:var(--text-strong);margin:0;font-size:15px;font-weight:600;line-height:1.2}.inspector-head>span{color:var(--quiet);font-family:var(--font-mono);text-align:right;font-size:14px;line-height:1.2}.bias-line{justify-content:space-between;align-items:baseline;gap:10px;margin-top:4px;display:flex}.bias-line strong{color:var(--text-strong);font-size:20px;font-weight:650;line-height:1.15}.bias-line b{color:var(--text-strong);font-family:var(--font-mono);letter-spacing:-.04em;font-size:26px;font-weight:600;line-height:1}.bias-meter{background:linear-gradient(90deg, var(--down) 0%, var(--line-strong) 50%, var(--up) 100%);height:4px;margin:7px 0 4px;position:relative}.bias-meter:after{background:var(--text);content:"";opacity:.45;width:1px;position:absolute;top:-3px;bottom:-3px;left:50%}.bias-meter>i{top:50%;left:var(--bias-position);border:1px solid var(--surface);background:var(--text-strong);border-radius:50%;width:8px;height:8px;position:absolute;transform:translate(-50%,-50%)}.bias-scale{color:var(--quiet);font-family:var(--font-mono);justify-content:space-between;font-size:14px;display:flex}.bias-action{color:var(--text);margin:5px 0 0;font-size:14px;line-height:1.35}.bias-reasons{color:var(--muted);margin:4px 0 0;padding:0;font-size:14px;line-height:1.35;list-style:none}.bias-reasons li:before{color:var(--quiet);content:"·";margin-right:5px}.inspector-block{border-bottom:1px solid var(--line);padding:8px 12px 9px}.inspector-block--last{border-bottom:0}.signal-rows{margin-top:3px}.signal-row{border-bottom:1px solid var(--line);grid-template-columns:46px minmax(0,1fr) auto;align-items:start;gap:7px;padding:5px 0;display:grid}.signal-row:last-child{border-bottom:0}.signal-row__key{color:var(--quiet);font-size:14px;line-height:1.3}.signal-row__body{min-width:0}.signal-row__body>b{min-width:0;color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:14px;font-weight:600;line-height:1.3;display:flex;overflow:hidden}.signal-row__body>small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:14px;line-height:1.3;display:block;overflow:hidden}.signal-row__tag{color:var(--quiet);font-family:var(--font-mono);text-align:right;white-space:nowrap;font-size:14px;font-style:normal;line-height:1.3}.divergence-badge{color:var(--up);white-space:nowrap;align-items:center;gap:4px;font-size:14px;font-weight:600;display:inline-flex}.divergence-badge--top{color:var(--down)}.divergence-badge>i{color:var(--muted);font-style:normal;font-weight:500}.divergence-badge.is-compact{gap:3px}.divergence-badge.is-compact>i{display:none}.structure-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin:7px 0 0;display:grid}.structure-facts>div{min-width:0;padding:5px 7px 0 0}.structure-facts>div+div{border-left:1px solid var(--line);padding-left:7px}.structure-facts dt{color:var(--quiet);font-size:14px;line-height:1.25}.structure-facts dd{color:var(--text);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:14px;line-height:1.25;overflow:hidden}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;margin-top:6px;display:grid}.metrics-grid>div{border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:1px;min-width:0;padding:5px 0;display:flex}.metrics-grid>div:nth-last-child(-n+2){border-bottom:0}.metrics-grid span{color:var(--quiet);white-space:nowrap;font-size:14px;line-height:1.2}.metrics-grid b{width:100%;color:var(--text-strong);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:550;line-height:1.25;overflow:hidden}.native-core-list{margin-top:3px}.native-core-row{border-bottom:1px solid var(--line);grid-template-columns:5px minmax(0,1fr) auto;align-items:baseline;column-gap:7px;padding:4px 0;display:grid}.native-core-row:last-child{border-bottom:0}.native-core-row>i{background:var(--quiet);border-radius:50%;width:5px;height:5px}.native-core-row>span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;overflow:hidden}.native-core-row>b{color:var(--text-strong);font-family:var(--font-mono);text-align:right;white-space:nowrap;font-size:14px;font-weight:550}.native-core-row>small{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;grid-column:2/-1;font-size:14px;line-height:1.2;overflow:hidden}.catalog-button{border:1px solid var(--line);background:var(--surface-alt);width:100%;min-height:31px;color:var(--muted);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;padding:0 8px;font-size:14px;display:flex}.catalog-button:hover{border-color:var(--line-strong);color:var(--text-strong);background:var(--surface-hover)}.empty-reading{color:var(--quiet);margin:6px 0;font-size:14px}.structure-counts{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:4px;display:grid}.structure-counts>div{flex-direction:column;align-items:center;min-width:0;padding:5px 3px;display:flex}.structure-counts>div+div{border-left:1px solid var(--line)}.structure-counts b{color:var(--text-strong);font-family:var(--font-mono);font-size:18px;font-weight:600;line-height:1.1}.structure-counts span{color:var(--quiet);white-space:nowrap;font-size:14px;line-height:1.2}.pivot-note{color:var(--quiet);font-family:var(--font-mono);margin:6px 0 0;font-size:14px;line-height:1.25}.inspector.is-loading{background:var(--line);gap:1px;padding:12px;display:grid}.inspector.is-loading>div{background:var(--surface-alt);min-height:86px}.workspace-ledger{border-top:1px solid var(--line);background:var(--surface)}.stroke-ledger{min-width:0}.ledger-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:0 12px;display:flex}.ledger-head>div{align-items:baseline;gap:10px;min-width:0;display:flex}.ledger-head h2{color:var(--text-strong);white-space:nowrap;margin:0;font-size:15px;font-weight:650}.ledger-head>div>span,.ledger-head>span{color:var(--quiet);font-family:var(--font-mono);white-space:nowrap;font-size:14px}.table-scroll{width:100%;overflow-x:auto}.stroke-ledger table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:960px;font-size:14px}.stroke-ledger th{border-bottom:1px solid var(--line);background:var(--surface-alt);height:32px;color:var(--quiet);text-align:left;white-space:nowrap;padding:0 10px;font-size:14px;font-weight:550}.stroke-ledger td{border-bottom:1px solid var(--line);height:34px;color:var(--text);white-space:nowrap;padding:0 10px}.stroke-ledger tbody tr:last-child td{border-bottom:0}.stroke-ledger tbody tr:hover td{background:var(--surface-hover)}.direction-chip{font-family:var(--font-mono);align-items:center;gap:3px;font-size:14px;font-weight:600;display:inline-flex}.direction-chip--up{color:var(--up)}.direction-chip--down{color:var(--down)}.strong-cell{color:var(--text-strong)!important}.muted-cell{color:var(--quiet)}.cell-sub{color:var(--quiet);margin-left:5px;font-size:14px;font-weight:400}.inline-arrow{vertical-align:-1px;color:var(--quiet);margin:0 3px;display:inline-block}.table-empty{color:var(--muted);text-align:center;margin:0;padding:22px;font-size:14px}.app-footer{border-top:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--quiet);justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;font-size:14px;display:flex}.app-footer p{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.app-footer>span{font-family:var(--font-mono);flex:none}.display-group{gap:4px;display:grid}.display-group+.display-group{border-top:1px solid var(--line);padding-top:7px}.display-group__label{color:var(--quiet);font-size:14px}.display-switches{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;display:grid}.display-switches button{border:1px solid var(--line);background:var(--surface-alt);min-height:28px;color:var(--muted);cursor:pointer;white-space:nowrap;padding:0 5px;font-size:14px}.display-switches button:hover{border-color:var(--line-strong);color:var(--text)}.display-switches button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.parameter-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:7px;display:flex}.parameter-row>span{color:var(--quiet);white-space:nowrap;font-size:14px}.parameter-options{gap:3px;display:flex}.parameter-options button{border:1px solid var(--line);background:var(--surface-alt);width:31px;height:27px;color:var(--muted);cursor:pointer;font-family:var(--font-mono);padding:0;font-size:14px}.parameter-options button:hover{border-color:var(--line-strong);color:var(--text)}.parameter-options button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.symbol-picker-backdrop,.signal-dialog-backdrop{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--text);background:0 0;border:0;margin:0;padding:18px}.symbol-picker-backdrop::backdrop,.signal-dialog-backdrop::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#03060a9e}.symbol-picker-backdrop[open],.signal-dialog-backdrop[open]{place-items:center;display:grid}.symbol-picker{border:1px solid var(--line-strong);background:var(--surface);grid-template-columns:128px minmax(0,1fr);width:min(980px,100%);height:min(760px,100dvh - 36px);min-height:0;display:grid;box-shadow:0 18px 60px #00000061}.channel-rail{border-right:1px solid var(--line);background:var(--surface-alt);flex-direction:column;min-height:0;padding:7px 0;display:flex;overflow-y:auto}.channel-rail__title{color:var(--quiet);padding:3px 10px 8px;font-size:14px}.channel-rail>button{min-height:76px;color:var(--muted);cursor:pointer;text-align:left;background:0 0;border:0;border-left:2px solid #0000;flex-direction:column;justify-content:center;gap:4px;padding:6px 8px;display:flex}.channel-rail>button:hover{background:var(--surface-hover)}.channel-rail>button.is-active{border-left-color:var(--accent);background:var(--surface);color:var(--text-strong)}.channel-rail>button .channel-icon{width:30px;height:30px}.channel-rail>button b,.channel-rail>button small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;line-height:1.2;overflow:hidden}.channel-rail>button b{color:var(--text);font-family:var(--font-mono);font-weight:600}.channel-rail>button small{color:var(--quiet)}.symbol-picker__main{flex-direction:column;min-width:0;min-height:0;display:flex}.symbol-picker__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:55px;padding:0 12px;display:flex}.symbol-picker__head h2,.signal-dialog__head h2{color:var(--text-strong);margin:0;font-size:17px;font-weight:650}.picker-close{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;flex:0 0 34px;place-items:center;padding:0;display:grid}.picker-close:hover{border-color:var(--line);color:var(--text-strong);background:var(--surface-hover)}.picker-search{border:1px solid var(--line-strong);background:var(--surface-alt);align-items:center;gap:7px;min-height:43px;margin:10px 12px 0;padding:0 9px;display:flex}.picker-search:focus-within{border-color:var(--accent)}.picker-search>svg{color:var(--muted);flex:none}.picker-search input{min-width:0;height:38px;color:var(--text-strong);background:0 0;border:0;outline:0;flex:1;font-size:15px}.picker-search input::placeholder{color:var(--quiet)}.picker-search>button{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;flex:0 0 26px;place-items:center;padding:0;display:grid}.picker-search>button:hover{color:var(--text-strong)}.picker-summary{min-height:27px;color:var(--quiet);justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-size:14px;display:flex}.picker-summary b{color:var(--warn);font-weight:500}.instrument-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.instrument-section h3,.instrument-group-letter{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-alt);min-height:29px;color:var(--muted);margin:0;padding:6px 12px;font-size:14px;font-weight:550;position:sticky;top:0}.instrument-section:first-child h3{border-top:0}.instrument-group-letter{color:var(--accent);font-family:var(--font-mono);font-size:14px}.instrument-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.instrument-row{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;min-width:0;min-height:45px;padding:5px 10px;display:grid}.instrument-row:nth-child(2n){border-right:0}.instrument-row:hover{background:var(--surface-hover)}.instrument-row.is-selected{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.instrument-row__name{flex-direction:column;gap:1px;min-width:0;display:flex}.instrument-row__name b{color:var(--text-strong);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.instrument-row.is-selected .instrument-row__name b{color:var(--accent)}.instrument-row__name b i{color:var(--muted);font-size:14px;font-style:normal;font-weight:500}.instrument-row__name small{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.instrument-row__contract{color:var(--quiet);white-space:nowrap;font-size:14px}.instrument-row__check{width:18px;height:18px;color:var(--accent);place-items:center;display:grid}.picker-loading,.picker-empty{min-height:90px;color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:8px;padding:20px;font-size:14px;display:flex}.picker-loading>i{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:.9s ease-in-out infinite alternate pulse}.picker-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:140px;padding:20px;display:flex}.picker-error b{color:var(--text-strong);font-size:15px}.picker-error span{color:var(--muted);font-size:14px}.picker-error button{border:1px solid var(--line-strong);min-height:31px;color:var(--text);cursor:pointer;background:0 0;align-items:center;gap:5px;margin-top:5px;padding:0 10px;font-size:14px;display:inline-flex}.signal-dialog{border:1px solid var(--line-strong);background:var(--surface);flex-direction:column;width:min(980px,100%);height:min(800px,100dvh - 36px);min-height:0;display:flex;box-shadow:0 18px 60px #00000061}.signal-dialog__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:0 12px;display:flex}.signal-dialog__head p{color:var(--quiet);margin:1px 0 0;font-size:14px}.signal-dialog__search{margin-bottom:0}.signal-dialog__filters{border-bottom:1px solid var(--line);scrollbar-width:none;gap:3px;padding:8px 12px;display:flex;overflow-x:auto}.signal-dialog__filters::-webkit-scrollbar{display:none}.signal-dialog__filters button{border:1px solid var(--line);background:var(--surface-alt);min-height:29px;color:var(--muted);cursor:pointer;white-space:nowrap;flex:none;align-items:center;gap:4px;padding:0 8px;font-size:14px;display:inline-flex}.signal-dialog__filters button:hover{border-color:var(--line-strong);color:var(--text)}.signal-dialog__filters button.is-active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.signal-dialog__filters b{color:var(--quiet);font-family:var(--font-mono);font-weight:500}.signal-dialog__filters button.is-active b{color:inherit}.signal-dialog__scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.signal-dialog__group h3{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface-alt);min-height:31px;color:var(--text-strong);justify-content:space-between;align-items:center;gap:10px;margin:0;padding:0 12px;font-size:14px;font-weight:600;display:flex;position:sticky;top:0}.signal-dialog__group:first-child h3{border-top:0}.signal-dialog__group h3>span{color:var(--quiet);font-family:var(--font-mono);font-size:14px;font-weight:400}.signal-dialog__list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.signal-dialog-row{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:5px minmax(0,1fr) auto;align-items:baseline;column-gap:7px;min-width:0;padding:5px 10px;display:grid}.signal-dialog-row:nth-child(2n){border-right:0}.signal-dialog-row>i{background:var(--quiet);border-radius:50%;width:5px;height:5px}.signal-dialog-row.is-active{background:var(--surface-alt)}.signal-dialog-row__title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:14px;display:flex;overflow:hidden}.signal-dialog-row__title em{border:1px solid var(--line-strong);color:var(--quiet);padding:0 3px;font-size:14px;font-style:normal;line-height:1.2}.signal-dialog-row>b{color:var(--text-strong);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:550;overflow:hidden}.signal-dialog-row>small{color:var(--quiet);text-overflow:ellipsis;white-space:nowrap;grid-column:2/-1;font-size:14px;line-height:1.2;overflow:hidden}.signal-dialog__empty{color:var(--muted);text-align:center;margin:0;padding:28px;font-size:14px}@keyframes picker-in{0%{opacity:0;transform:translateY(5px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{to{opacity:.25}}@keyframes price-flash-up{0%{color:var(--up);text-shadow:0 0 14px #20c99759}}@keyframes price-flash-down{0%{color:var(--down);text-shadow:0 0 14px #f05b6859}}@media (width<=1220px){.terminal-grid{grid-template-columns:minmax(0,1fr) 334px}.header-price{min-width:226px}.header-range{display:none}.connection-state{min-width:90px}.connection-state>small{display:none}}@media (width<=1020px){.market-select{min-width:202px}.header-price{min-width:184px}.header-button--search>kbd{display:none}.header-button--search{min-width:44px;padding:0}.terminal-grid{grid-template-columns:1fr}.workspace-side{border-top:1px solid var(--line);border-left:0;max-height:none;overflow:visible}.inspector{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.inspector-bias,.inspector-block--last{grid-column:1/-1}.inspector-bias,.inspector-block{background:var(--surface);border:0}.inspector.is-loading{display:grid}}@media (width<=760px){body{font-size:16px}.app-header{grid-template-columns:auto minmax(96px,1fr) auto auto;min-height:55px;display:grid}.brand-logo{flex-basis:55px;width:55px;min-width:55px}.brand-logo .brand-mark{width:28px;height:28px}.market-select{gap:6px;min-width:0;padding:0 7px}.market-select .channel-icon{width:23px;height:23px}.market-select__copy b{font-size:16px}.market-select__copy small,.market-select__caret{display:none}.header-price{border-right:0;gap:5px;min-width:0;padding:0 7px}.header-price>strong{letter-spacing:-.055em;font-size:19px}.header-price>span{font-size:14px}.header-range{display:none}.header-actions{grid-column:auto}.connection-state{width:30px;min-width:30px;padding:0}.connection-state>span,.connection-state>small,.header-button--search{display:none}.theme-toggle{border-left:1px solid var(--line);width:38px;min-width:38px}.timeframe-bar{min-height:40px}.timeframe-group{padding:0}.timeframe-group button{min-width:42px;height:39px;padding:0 7px;font-size:14px}.signal-strip{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.signal-strip__item{border-bottom:1px solid var(--line);min-width:0;min-height:58px;padding:5px 11px}.signal-strip__item:nth-child(2n){border-right:0}.signal-strip__item:nth-last-child(-n+2){border-bottom:0}.signal-strip__item>strong{font-size:16px}.connection-notice{align-items:flex-start;padding:7px 10px}.connection-notice p{white-space:normal}.chart-toolbar{grid-template-columns:minmax(0,1fr) auto auto;gap:4px;min-height:58px;padding:7px 10px;display:grid}.chart-identity{gap:7px}.chart-identity h2{font-size:15px}.chart-identity>span{display:none}.ohlc-line{grid-column:1/-1;width:100%;padding-bottom:1px;font-size:14px}.ohlc-line>span:nth-child(5),.ohlc-line>time,.chart-bar-state{display:none}.countdown-pill{grid-area:1/2;align-self:center}.chart-layers{grid-area:1/3}.chart-layers__panel{width:auto;max-height:70dvh;position:fixed;inset:auto 10px 10px;overflow-y:auto}.chart-stage,.chart-placeholder{height:clamp(410px,56svh,580px);min-height:410px}.chart-return-live{bottom:28px;right:58px}.chart-footer{min-height:35px;padding:0 10px}.chart-meta{display:none}.inspector{background:var(--surface);display:block}.inspector-bias,.inspector-block{border-bottom:1px solid var(--line);padding:10px 12px}.inspector-bias{background:var(--surface-alt)}.inspector-block--last{border-bottom:0}.inspector-head h3{font-size:15px}.display-switches{grid-template-columns:repeat(3,minmax(0,1fr))}.display-switches button{min-height:34px;font-size:14px}.parameter-options button{width:38px;height:34px}.ledger-head{min-height:47px;padding:6px 11px}.ledger-head>div{flex-direction:column;align-items:flex-start;gap:1px}.ledger-head>span{text-align:right}.stroke-ledger th{height:34px;font-size:14px}.stroke-ledger td{height:38px;font-size:14px}.app-footer{flex-wrap:wrap;align-items:flex-start;gap:2px 10px;min-height:42px;padding:7px 10px}.app-footer p{white-space:normal;width:100%}.symbol-picker-backdrop,.signal-dialog-backdrop{padding:0}.symbol-picker{width:100%;height:100dvh;box-shadow:none;border:0;grid-template-columns:82px minmax(0,1fr)}.signal-dialog{width:100%;height:100dvh;box-shadow:none;border:0}.channel-rail{padding:6px 0}.channel-rail__title{text-align:center;padding:4px 5px 7px}.channel-rail>button{text-align:center;border-left-width:2px;align-items:center;min-height:84px;padding:7px 4px}.channel-rail>button .channel-icon{width:30px;height:30px}.channel-rail>button b,.channel-rail>button small{max-width:74px;font-size:14px}.symbol-picker__head{min-height:55px;padding:0 10px}.symbol-picker__head h2,.signal-dialog__head h2{font-size:17px}.picker-search{min-height:47px;margin:8px 9px 0}.picker-search input{font-size:16px}.picker-summary{min-height:29px;padding:0 10px}.instrument-list,.signal-dialog__list{grid-template-columns:1fr}.instrument-row,.instrument-row:nth-child(2n),.signal-dialog-row,.signal-dialog-row:nth-child(2n){border-right:0}.instrument-row{min-height:50px;padding:5px 10px}.instrument-row__name b{font-size:15px}.instrument-row__name small,.instrument-row__contract{font-size:14px}.signal-dialog__filters{padding:8px 9px}.signal-dialog__filters button{min-height:34px}.signal-dialog-row{min-height:43px;padding:5px 10px}}@media (width<=430px){.app-header{grid-template-columns:48px minmax(0,1fr) auto}.header-price{grid-area:2/1/auto/-1;justify-content:flex-start;gap:10px;min-height:32px;padding:0 10px 5px}.header-actions{grid-area:1/3}.brand-logo{flex-basis:48px;width:48px;min-width:48px;min-height:46px}.brand-logo .brand-mark{width:26px;height:26px}.market-select{padding:0 5px}.market-select .channel-icon{width:21px;height:21px}.header-price>strong{font-size:20px}.connection-state{width:27px;min-width:27px}.theme-toggle,.header-button--icon{width:35px;min-width:35px}.timeframe-group button{min-width:40px;padding:0 6px}.signal-strip__item>strong{font-size:16px}.chart-stage,.chart-placeholder{height:410px;min-height:410px}.symbol-picker{grid-template-columns:76px minmax(0,1fr)}.channel-rail>button b,.channel-rail>button small{max-width:68px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
