.app-header{display:flex;align-items:center;height:56px;min-height:56px;padding:0 16px;background:#0b0e14;border-bottom:1px solid var(--border, #1e2633)}.header-left{display:flex;align-items:center;gap:16px;min-width:0}.header-center{flex:1;min-width:0}.header-right{display:flex;align-items:center;gap:12px;flex:none}@keyframes header-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.header-fade-in-item{animation:header-fade-in var(--motion-fast, .1s) ease-out backwards;animation-delay:calc(var(--stagger-i, 0) * var(--motion-stagger-step, 40ms))}.app-brand{display:flex;align-items:center;flex:none}.app-logo-icon{height:32px;width:auto;display:block;flex:none}.save-layout-btn{position:relative;display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--border, #1e2633);background:transparent;color:var(--text-dim, #8b93a3);font-size:12px;font-family:inherit;cursor:pointer;transition:border-color var(--motion-hover, .12s),color var(--motion-hover, .12s),background-color var(--motion-hover, .12s),transform var(--motion-fast, .1s)}.save-layout-btn:hover{color:var(--text, #e6e9ef);border-color:var(--accent, #4f8cff);background:#4f8cff14}.save-layout-btn:active{transform:scale(.97)}.save-layout-btn .save-layout-icon{display:inline-flex;transition:color var(--motion-hover, .12s)}.save-layout-btn.save-layout-success{color:#22c55e;border-color:#22c55e66}.save-layout-dot{position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--accent, #4f8cff);border:2px solid #0b0e14}.header-round-btn,.header-right .layout-trigger{width:40px;height:40px;border-radius:50%;border:1px solid var(--border, #1e2633);background:var(--sm-field-bg, #0f131b);color:var(--text-dim, #8b93a3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none;transition:background-color var(--motion-hover, .12s),border-color var(--motion-hover, .12s),color var(--motion-hover, .12s),transform var(--motion-fast, .1s)}.header-round-btn:hover,.header-right .layout-trigger:hover{background:#1a2130;border-color:var(--accent, #4f8cff);color:var(--text, #e6e9ef)}.header-round-btn:active,.header-right .layout-trigger:active{transform:scale(.95)}.user-menu{position:relative;flex:none}.user-menu-trigger{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 5px;border-radius:999px;border:1px solid var(--border, #1e2633);background:var(--sm-field-bg, #0f131b);color:var(--text, #e6e9ef);font:inherit;font-size:12px;font-weight:500;cursor:pointer;transition:background-color var(--motion-hover, .12s),border-color var(--motion-hover, .12s)}.user-menu-trigger:hover{background:#1a2130;border-color:var(--accent, #4f8cff)}.user-menu-avatar{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--accent, #4f8cff) 22%,transparent);color:var(--accent, #4f8cff);font-size:10px;font-weight:700;flex:none}.user-menu-avatar.lg{width:38px;height:38px;font-size:14px}.user-menu-name{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:400;width:268px;background:var(--panel, #121722);border:1px solid var(--border, #1e2633);border-radius:10px;box-shadow:0 12px 32px #00000073;overflow:hidden}.user-menu-head{display:flex;align-items:center;gap:11px;padding:14px;border-bottom:1px solid var(--border, #1e2633)}.user-menu-head-meta{min-width:0}.user-menu-head-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-head-sub{font-size:11px;color:var(--text-dim, #8b93a3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-section{padding:12px 14px;border-bottom:1px solid var(--border, #1e2633)}.user-menu-section-title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim, #8b93a3);margin-bottom:8px}.user-menu-plan{display:flex;align-items:center;gap:8px;margin-bottom:10px}.user-menu-plan-badge{padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700}.user-menu-plan-expiry{font-size:11px;color:var(--text-dim, #8b93a3)}.user-menu-limits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.user-menu-limits li{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--text-dim, #8b93a3)}.user-menu-limits .yes{color:var(--bullish, #22c55e)}.user-menu-limits .no{color:var(--text-dim, #8b93a3)}.user-menu-item{display:block;width:100%;padding:11px 14px;border:none;background:none;color:var(--text, #e6e9ef);font:inherit;font-size:12.5px;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--motion-hover, .12s)}.user-menu-item:hover{background:#1a2130}.user-menu-item.danger:hover{color:var(--bearish, #ef4444)}.plan-locked{position:relative;opacity:.55}.plan-locked .lock-glyph{position:absolute;right:1px;bottom:1px;color:var(--status-warn, #eab308);pointer-events:none}.feed-banner{display:flex;align-items:center;gap:10px;padding:9px 16px;font-size:12.5px;line-height:1.5;color:var(--status-warn, #eab308);background:color-mix(in srgb,var(--status-warn, #eab308) 11%,transparent);border-bottom:1px solid color-mix(in srgb,var(--status-warn, #eab308) 30%,transparent)}.feed-banner[hidden]{display:none}.feed-banner-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none;animation:feed-banner-pulse 1.8s ease-in-out infinite}@keyframes feed-banner-pulse{0%,to{opacity:1}50%{opacity:.35}}.feed-banner-since{opacity:.75}.tp-plan-hint{margin:8px 0 4px;padding:9px 11px;border-radius:7px;font-size:11.5px;line-height:1.5;color:var(--text-dim);background:color-mix(in srgb,var(--status-warn, #eab308) 9%,transparent);border:1px solid color-mix(in srgb,var(--status-warn, #eab308) 26%,transparent)}.tp-plan-hint strong{color:var(--status-warn, #eab308)}.star-btn.active{color:var(--accent, #4f8cff);border-color:var(--accent, #4f8cff)}.star-btn.active svg path{fill:var(--accent, #4f8cff)}.star-btn.star-spin{animation:star-spin-once var(--motion-slow, .2s) ease}.dom-btn.active{color:var(--accent, #4f8cff);border-color:var(--accent, #4f8cff)}@keyframes star-spin-once{0%{transform:rotate(0)}50%{transform:rotate(20deg)}to{transform:rotate(0)}}.account-pill{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--border, #1e2633);background:var(--sm-field-bg, #0f131b);color:var(--text-dim, #8b93a3);font-family:inherit;font-size:12px;cursor:pointer;box-shadow:0 0 14px #4f8cff26;transition:box-shadow var(--motion-hover, .12s)}.account-pill:hover{box-shadow:0 0 18px #4f8cff40}.account-pill:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(90deg,#4f8cff 0%,transparent 35%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.account-pill-item{display:inline-flex;align-items:center;gap:4px}.account-pill-sep{color:var(--border, #1e2633)}.account-pill-balance,.account-pill-equity,.account-pill-pl{color:var(--text, #e6e9ef);transition:opacity var(--motion-hover, .12s) ease}.account-pill-value-fading{opacity:0}.account-pill-pl.tp-positive{color:var(--bullish, #22c55e)}.account-pill-pl.tp-negative{color:var(--bearish, #ef4444)}.account-pill-flash-up,.account-pill-flash-down{animation-duration:var(--motion-shake, .3s);animation-timing-function:ease}.account-pill-flash-up{animation-name:account-pill-flash-green}.account-pill-flash-down{animation-name:account-pill-flash-red}@keyframes account-pill-flash-green{0%,to{background-color:var(--sm-field-bg, #0f131b)}30%{background-color:#22c55e38}}@keyframes account-pill-flash-red{0%,to{background-color:var(--sm-field-bg, #0f131b)}30%{background-color:#ef444438}}.status-pill{display:inline-flex;align-items:center;gap:8px;height:26px;padding:0 10px;border-radius:999px;border:1px solid var(--border, #1e2633);background:var(--sm-field-bg, #0f131b);font-size:12px;color:var(--text-dim, #8b93a3);transition:border-color var(--motion-flash, .25s),background-color var(--motion-flash, .25s);cursor:default}.status-dot{width:8px;height:8px;border-radius:50%;flex:none;transition:background-color var(--motion-flash, .25s),box-shadow var(--motion-flash, .25s)}.status-text{transition:color var(--motion-flash, .25s),opacity var(--motion-hover, .12s);white-space:nowrap}.status-text-fading{opacity:0}.status-ticks{display:inline-flex;align-items:flex-end;gap:2px;height:8px}.status-ticks span{width:2px;height:100%;border-radius:1px;background:var(--border, #1e2633);transition:background-color var(--motion-hover, .12s)}.status-ticks.status-ticks-active span{background:var(--accent, #4f8cff)}.status-pill[data-state=online]{border-color:var(--border, #1e2633)}.status-pill[data-state=online] .status-text{color:var(--text, #e6e9ef)}.status-pill[data-state=online] .status-dot{background:#22c55e;animation:status-pulse-online 2s ease-in-out infinite}@keyframes status-pulse-online{0%,to{box-shadow:0 0 #22c55e8c}50%{box-shadow:0 0 8px #22c55e8c}}.status-pill[data-state=connecting] .status-dot{background:#eab308;animation:status-blink-connecting 1s steps(1,end) infinite}.status-pill[data-state=connecting] .status-text{color:var(--text-dim, #8b93a3)}@keyframes status-blink-connecting{0%,49%{opacity:1}50%,to{opacity:.25}}.status-pill[data-state=degraded]{border-color:#eab30866}.status-pill[data-state=degraded] .status-dot{background:#eab308;animation:status-pulse-degraded 2s ease-in-out infinite}.status-pill[data-state=degraded] .status-text{color:#eab308}@keyframes status-pulse-degraded{0%,to{box-shadow:0 0 #eab3088c}50%{box-shadow:0 0 8px #eab3088c}}.status-pill[data-state=offline]{border-color:#ef444466}.status-pill[data-state=offline] .status-dot{background:#ef4444;box-shadow:none;animation:none}.status-pill[data-state=offline] .status-text{color:#ef4444}@media (max-width: 1199px){.account-pill-item:first-child,.account-pill-item:first-child+.account-pill-sep{display:none}}@media (max-width: 899px){.save-layout-btn{padding:0 9px;gap:0}.save-layout-btn .save-layout-text{display:none}.status-pill{width:26px;height:26px;padding:0;gap:0;justify-content:center;border-radius:50%}.status-text,.status-ticks{display:none}}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px}#app{display:flex;flex-direction:column}.app-body{flex:1;display:flex;min-height:0}.count-label{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:12px}.layout-trigger svg{display:block;color:currentColor}.layout-popover{position:fixed;z-index:300;width:320px;max-height:70vh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:10px}.layout-popover-title{font-size:12px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px}.layout-popover-row{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-top:1px solid var(--border)}.layout-popover-row:first-child{border-top:none}.layout-popover-count{flex:0 0 16px;font-size:13px;font-weight:600;color:var(--text-dim);padding-top:8px}.layout-popover-tiles{flex:1;display:flex;flex-wrap:wrap;gap:6px}.layout-tile{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-dim);cursor:pointer;padding:2px}.layout-tile:hover{color:var(--text);border-color:var(--accent)}.layout-tile.active{color:var(--accent);border-color:var(--accent);background:#4f8cff1f}select,input[type=text]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:6px 8px;font-family:inherit;font-size:13px}select:hover,input[type=text]:hover{border-color:var(--accent)}select:focus,input[type=text]:focus{outline:none;border-color:var(--accent)}button{font-family:inherit}.primary-btn{background:var(--accent);color:#0b0e14;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s ease}.primary-btn:hover{filter:brightness(1.1)}.ghost-btn{background:transparent;color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer}.ghost-btn:hover{border-color:var(--accent);color:var(--accent)}.danger-btn{background:var(--bearish);color:#0b0e14;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s ease}.danger-btn:hover{filter:brightness(1.1)}.small-btn{padding:4px 8px;font-size:12px;border-radius:6px}.tiny-btn{width:20px;height:20px;font-size:11px}.drawing-toolbar{flex:0 0 52px;width:52px;display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--border);overflow:hidden;transition:flex-basis .15s ease,width .15s ease}.drawing-toolbar.collapsed{flex-basis:18px;width:18px;border-right:1px solid var(--border)}.drawing-toolbar.collapsed .dt-scroll{display:none}.drawing-toolbar.disabled .dt-scroll{opacity:.4;pointer-events:none}.dt-scroll{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 0;overflow-y:auto;overflow-x:hidden}.dt-btn{width:36px;height:36px;flex:0 0 auto;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center}.dt-btn svg{display:block;width:22px;height:22px}.dt-btn:hover{background:#ffffff0f}.dt-btn.active,.dt-btn.open{background:#4f8cff2e;color:var(--accent);border-color:var(--accent)}.dt-btn.dt-magnet-strong{color:var(--accent);background:#4f8cff4d}.dt-btn.dt-danger:hover{color:var(--bearish);background:#ef44441f}.dt-divider{width:28px;height:1px;background:var(--border);margin:6px 0;flex:0 0 auto}.dt-collapse-btn{flex:0 0 auto;height:22px;width:100%;background:transparent;border:none;border-top:1px solid var(--border);color:var(--text-dim);cursor:pointer;display:flex;align-items:center;justify-content:center}.dt-collapse-btn:hover{color:var(--text);background:#ffffff0d}.dt-collapse-btn svg{width:16px;height:16px}.drawing-toolbar.collapsed .dt-collapse-btn svg{width:14px;height:14px}.dt-flyout{position:fixed;z-index:40;min-width:230px;max-width:280px;max-height:70vh;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:6px}.dt-flyout-title{font-variant:small-caps;font-size:11px;letter-spacing:.6px;color:var(--text-dim);padding:6px 10px 4px}.dt-flyout-row{display:flex;align-items:center;gap:10px;height:36px;padding:0 10px;border-radius:6px;cursor:pointer}.dt-flyout-row:hover{background:#4f8cff1a}.dt-flyout-row.active{background:#4f8cff2e}.dt-flyout-icon{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--text)}.dt-flyout-icon svg{width:20px;height:20px}.dt-flyout-name{flex:1;font-size:12.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dt-flyout-shortcut{flex:0 0 auto;font-size:11px;color:var(--text-dim)}.dt-flyout-empty{padding:10px;font-size:12px;color:var(--text-dim);text-align:center}.dt-context-menu{position:fixed;z-index:45;min-width:190px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:6px}.dt-context-item{display:block;width:100%;text-align:left;background:transparent;border:none;color:var(--text);font-size:12.5px;height:30px;padding:0 10px;border-radius:6px;cursor:pointer}.dt-context-item:hover{background:#4f8cff1a}.dt-context-item.dt-context-danger{color:var(--bearish)}.dt-context-item.dt-context-danger:hover{background:#ef44441f}.dt-context-separator{height:1px;background:var(--border);margin:4px 2px}.floating-bar{position:fixed;z-index:42;display:flex;align-items:center;gap:2px;height:40px;padding:0 6px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #00000073}.fb-handle{width:20px;height:28px;background:transparent;border:none;color:var(--text-dim);cursor:grab;display:flex;align-items:center;justify-content:center;flex-shrink:0}.fb-handle:active{cursor:grabbing}.fb-handle svg{width:16px;height:16px}.fb-btn{height:30px;min-width:30px;padding:0 6px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;flex-shrink:0;font-size:11.5px;white-space:nowrap}.fb-btn svg{width:18px;height:18px;flex-shrink:0}.fb-btn:hover{background:#ffffff0f}.fb-btn.active{color:var(--accent);border-color:var(--accent);background:#4f8cff26}.fb-btn.fb-danger:hover{color:var(--bearish);background:#ef44441f}.fb-color-bar{width:16px;height:3px;border-radius:2px;display:inline-block}.fb-sep{width:1px;height:22px;background:var(--border);margin:0 4px;flex-shrink:0}.fb-popover{position:fixed;z-index:46;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:8px;min-width:160px}.fb-list-popover{min-width:200px;max-width:280px}.fb-list-item{display:flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 8px;background:transparent;border:none;border-radius:6px;color:var(--text);font-size:12.5px;cursor:pointer;text-align:left}.fb-list-item svg{width:16px;height:16px;flex-shrink:0}.fb-list-item:hover{background:#4f8cff1a}.fb-list-sep{height:1px;background:var(--border);margin:4px 2px}.fb-template-row{justify-content:space-between}.fb-template-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-template-delete{background:transparent;border:none;color:var(--text-dim);cursor:pointer;display:flex;padding:2px}.fb-template-delete:hover{color:var(--bearish)}.fb-template-delete svg{width:14px;height:14px}.fb-alert-popover{width:220px}.fb-alert-row{display:flex;flex-direction:column;gap:4px;margin-bottom:10px;font-size:11px;color:var(--text-dim)}.fb-alert-row input,.fb-alert-create{width:100%}.chart-grid{flex:1;display:grid;gap:6px;padding:6px;min-height:0;background:var(--bg)}.grid-splitter{position:absolute;z-index:15;background:transparent}.grid-splitter-vertical{cursor:col-resize}.grid-splitter-horizontal{cursor:row-resize}.grid-splitter:after{content:"";position:absolute;background:transparent;transition:background-color .1s ease}.grid-splitter-vertical:after{left:50%;top:0;bottom:0;width:2px;transform:translate(-50%)}.grid-splitter-horizontal:after{top:50%;left:0;right:0;height:2px;transform:translateY(-50%)}.grid-splitter:hover:after{background:var(--accent)}body.resizing-col,body.resizing-col *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.resizing-row,body.resizing-row *{cursor:row-resize!important;-webkit-user-select:none!important;user-select:none!important}.chart-panel.drag-source{opacity:.4}.chart-panel.drop-target{outline:2px solid var(--accent);outline-offset:-2px}.chart-panel{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--panel);border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #00000040}.chart-panel[hidden]{display:none}.chart-panel.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 2px 10px #00000040}.chart-toolbar{display:flex;align-items:center;justify-content:space-between;height:36px;min-height:36px;padding:0 8px;border-bottom:1px solid var(--border);gap:8px;cursor:grab}.chart-toolbar:active{cursor:grabbing}.toolbar-group{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden}.symbol-btn{background:transparent;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:12.5px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0}.symbol-btn:hover{border-color:var(--accent);color:var(--accent)}.timeframe-group{display:flex;gap:2px}.chart-type-widget{display:flex;align-items:center;gap:4px;position:relative}.chart-type-trigger svg,.ct-item-icon svg,.chart-type-quick-btn svg{display:block;color:currentColor}.chart-type-quick{display:flex;gap:2px}.chart-type-quick-btn.active{color:var(--accent);border-color:var(--accent)}.chart-type-dropdown{position:fixed;z-index:40;width:260px;max-height:420px;overflow-y:auto;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:6px}.ct-group-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);padding:6px 8px 4px}.ct-separator{height:1px;background:var(--border);margin:4px 2px}.ct-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer}.ct-item:hover{background:#4f8cff1a}.ct-item.active{background:#4f8cff2e}.ct-item-icon{color:var(--text);display:flex;flex:0 0 auto}.ct-item-label{flex:1;font-size:12.5px}.ct-item-actions{display:flex;gap:2px;flex:0 0 auto}.ct-item-action{background:transparent;border:none;color:var(--text-dim);cursor:pointer;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px}.ct-item-action:hover{background:#ffffff14;color:var(--text)}.ct-item-star.is-favorite{color:#f5a623}.tf-btn{background:transparent;color:var(--text-dim);border:1px solid transparent;border-radius:6px;padding:4px 7px;font-size:12px;cursor:pointer}.tf-btn:hover{color:var(--text);background:#ffffff0a}.tf-btn.active{color:#0b0e14;background:var(--accent);font-weight:600}.icon-btn{background:transparent;color:var(--text-dim);border:1px solid var(--border);border-radius:6px;width:26px;height:26px;font-size:13px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-btn:hover{color:var(--text);border-color:var(--accent)}.close-btn:hover{color:var(--bearish);border-color:var(--bearish)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn:disabled:hover{color:var(--text-dim);border-color:var(--border)}.icon-btn.active{color:var(--accent);border-color:var(--accent)}.chart-body{position:relative;flex:1;min-height:0}.chart-mount{position:absolute;top:0;right:0;bottom:0;left:0;transition:right var(--motion-panel, .22s) ease-out}.chart-body-trading-open .chart-mount{right:280px}.trading-panel-slot{position:absolute;top:0;right:0;bottom:0;width:280px;z-index:6;overflow-y:auto;background:var(--panel);border-left:1px solid var(--border);transform:translate(100%);opacity:0;transition:transform var(--motion-panel, .22s) ease-out,opacity var(--motion-panel, .22s) ease-out}.trading-panel-slot.trading-panel-open{transform:translate(0);opacity:1}.chart-body-instant .chart-mount,.chart-body-instant .trading-panel-slot{transition:none!important}.chart-watermark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;font-size:48px;font-weight:700;letter-spacing:.02em;color:var(--text);-webkit-user-select:none;user-select:none}.chart-watermark[hidden]{display:none}.toolbar-price-badge{display:flex;align-items:baseline;gap:8px;min-width:0;flex-shrink:1;overflow:hidden;font-variant-numeric:tabular-nums;font-family:SFMono-Regular,Consolas,monospace;white-space:nowrap}.badge-symbol{font-weight:600;font-size:12px;color:var(--text);font-family:inherit}.badge-price{font-size:12.5px;font-weight:600;color:var(--text)}.badge-change{font-size:11.5px;color:var(--text-dim)}.badge-change.positive{color:var(--bullish)}.badge-change.negative{color:var(--bearish)}.chart-panel.chart-narrow .badge-change,.chart-panel.chart-very-narrow .badge-price{display:none}.indicator-labels{position:absolute;top:8px;left:10px;z-index:5;display:flex;flex-direction:column;gap:2px;pointer-events:none}.indicator-label{display:flex;align-items:center;gap:4px;pointer-events:auto;padding:1px 4px;border-radius:4px;font-size:11px}.indicator-label:hover{background:#121722d9}.indicator-label-text{color:var(--text-dim);white-space:nowrap}.indicator-label-text.indicator-label-hidden{text-decoration:line-through;opacity:.6}.indicator-label-gear,.indicator-label-remove{background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:11px;line-height:1;padding:0 2px;opacity:0;transition:opacity .1s ease}.indicator-label:hover .indicator-label-gear,.indicator-label:hover .indicator-label-remove{opacity:1}.indicator-label-gear:hover{color:var(--accent)}.indicator-label-remove:hover{color:var(--bearish)}.depth-quality-badge{position:absolute;top:8px;right:10px;z-index:5;display:inline-flex;padding:1px 6px;border-radius:4px;font-size:9px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;pointer-events:none}.depth-quality-badge.dq-l2{background:#22c55e2e;color:#22c55e}.depth-quality-badge.dq-l1{background:#eab3082e;color:#eab308}.depth-quality-badge.dq-mock{background:#8a93a62e;color:#8a93a6}.autofocus-btn{position:absolute;right:8px;bottom:8px;z-index:6;background:#14161cb8;color:var(--text-dim);border:1px solid var(--border);border-radius:50%;width:22px;height:22px;font-size:13px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.autofocus-btn:hover{color:var(--text);border-color:var(--accent)}.autofocus-btn.active{color:var(--accent);border-color:var(--accent)}.chart-disconnect-banner{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:5;background:#ef444426;border:1px solid var(--bearish);color:var(--text);padding:5px 12px;border-radius:8px;font-size:12px}.symbol-popup,.indicator-popup{position:absolute;top:40px;left:8px;z-index:20;width:260px;max-height:360px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:8px;overflow:hidden;display:flex;flex-direction:column}.symbol-popup[hidden],.indicator-popup[hidden]{display:none}.symbol-search{width:100%;margin-bottom:6px}.symbol-list{overflow-y:auto}.symbol-category{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);padding:6px 6px 2px}.symbol-item{display:flex;justify-content:space-between;gap:8px;padding:6px;border-radius:6px;cursor:pointer}.symbol-item:hover{background:#4f8cff1f}.symbol-ticker{font-weight:600;white-space:nowrap}.symbol-desc{color:var(--text-dim);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.indicator-popup{right:8px;left:auto;width:200px}.indicator-option{display:flex;align-items:center;gap:8px;padding:6px;border-radius:6px;cursor:pointer;font-size:12.5px}.indicator-option:hover{background:#ffffff0d}.indicator-option input{accent-color:var(--accent)}.favorites-sidebar{flex:0 0 260px;width:260px;display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--border);overflow:hidden;transition:flex-basis .15s ease,width .15s ease}.favorites-sidebar.collapsed{flex-basis:0;width:0;border-left:none}.dom-panel-sidebar{flex:0 0 320px;width:320px;display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--border);overflow:hidden;transition:flex-basis .15s ease,width .15s ease}.dom-panel-sidebar.collapsed{flex-basis:0;width:0;border-left:none}.dom-header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.dom-header-symbol{font-size:13px;font-weight:600;color:var(--text)}.dom-panel-sidebar.dom-unbound .dom-header-symbol{color:var(--text-dim);font-weight:400}.dom-header-hint{font-size:11px;color:var(--bearish);margin-left:auto}.dom-oneclick{display:flex;align-items:center;gap:6px;margin-left:auto}.dom-oneclick-label{font-size:10px;color:var(--text-dim);white-space:nowrap}.dom-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.dom-cancel-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px 0;flex:none}.dom-cancel-btn{height:22px;padding:0 8px;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:10px;cursor:pointer;transition:border-color var(--motion-hover, .12s),color var(--motion-hover, .12s)}.dom-cancel-buy{color:var(--accent)}.dom-cancel-sell{color:var(--bearish)}.dom-cancel-buy:not(:disabled):hover{border-color:var(--accent)}.dom-cancel-sell:not(:disabled):hover{border-color:var(--bearish)}.dom-cancel-btn:disabled{opacity:.35;cursor:not-allowed}.dom-footer{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--border);flex:none}.dom-footer-lot{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}.dom-footer-lot .tp-lot-chips{justify-content:center}.dom-mkt-btn{height:40px;min-width:64px;padding:0 10px;border:none;border-radius:8px;font-weight:600;font-size:12px;cursor:pointer;transition:filter var(--motion-hover, .12s) ease,box-shadow var(--motion-hover, .12s) ease,transform var(--motion-fast, .1s) ease}.dom-mkt-btn:active{transform:scale(.98)}.dom-mkt-btn:disabled{opacity:.4;cursor:not-allowed}.dom-mkt-buy{background:var(--bullish);color:#06210f}.dom-mkt-sell{background:var(--bearish);color:#2b0808}.dom-mkt-buy:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 0 12px #22c55e80}.dom-mkt-sell:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 0 12px #ef444480}.ladder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border-bottom:1px solid var(--border);flex:none}.ladder-agg-select{background:var(--sm-field-bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:11px;padding:3px 6px}.ladder-center-btn{background:transparent;color:var(--text-dim);border:1px solid var(--border);border-radius:6px;font-size:11px;padding:4px 8px;cursor:pointer}.ladder-center-btn:hover{color:var(--text);border-color:var(--accent)}.ladder-head-row,.ladder-row{display:grid;grid-template-columns:22px 1fr 74px 1fr 22px 88px;align-items:center}.ladder-head-row{padding:4px 6px;border-bottom:1px solid var(--border);flex:none}.ladder-head-cell{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim)}.ladder-head-bid{text-align:right}.ladder-head-price{text-align:center}.ladder-head-vol{text-align:right}.ladder-rows{position:relative;flex:1;min-height:0;overflow:hidden;outline:none}.ladder-row{height:22px;padding:0 6px;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;background:var(--panel)}.ladder-row-alt{background:var(--sm-field-bg)}.ladder-row:hover{background:#4f8cff14}.ladder-row-spread{opacity:.55}.ladder-row-drop-target{box-shadow:inset 0 0 0 1px var(--accent);background:#4f8cff26}.ladder-col-own-bid,.ladder-col-own-ask{display:flex;align-items:center;justify-content:center;border:none;background:transparent;padding:0;font-family:inherit;font-size:10px;color:inherit;cursor:default}.ladder-own-badge:not([hidden]){cursor:grab;border-radius:4px;font-weight:600}.ladder-own-badge:not([hidden]):active{cursor:grabbing}.ladder-col-own-bid:not([hidden]){background:#4f8cff40;color:var(--accent)}.ladder-col-own-ask:not([hidden]){background:#ef444440;color:var(--bearish)}.ladder-col-bid-vol,.ladder-col-ask-vol{position:relative;display:flex;align-items:center;height:100%;overflow:hidden;color:var(--text-dim);cursor:pointer}.ladder-col-bid-vol{justify-content:flex-end;padding-right:4px}.ladder-col-ask-vol{justify-content:flex-start;padding-left:4px}.ladder-col-bid-vol:after,.ladder-col-ask-vol:after{content:"+";position:absolute;z-index:2;top:50%;transform:translateY(-50%);color:var(--accent);font-weight:700;opacity:0;transition:opacity var(--motion-hover, .12s);pointer-events:none}.ladder-col-bid-vol:after{left:4px}.ladder-col-ask-vol:after{right:4px}.ladder-row:hover .ladder-col-bid-vol:after,.ladder-row:hover .ladder-col-ask-vol:after{opacity:.6}.ladder-vol-text{position:relative;z-index:1}.ladder-bar{position:absolute;top:2px;bottom:2px;transition:width var(--motion-bar-fill, 80ms) linear}.ladder-bar-bid{right:0;background:#3b82f659}.ladder-bar-ask{left:0;background:#ef444459}.ladder-bar-session{left:0;background:#38bdf84d}.ladder-col-price{position:relative;display:flex;align-items:center;justify-content:center;color:var(--text)}.ladder-price-text{position:relative;z-index:1}.ladder-row-best-bid .ladder-col-price{background:#3b82f68c;border-radius:3px}.ladder-row-best-ask .ladder-col-price{background:#ef44448c;border-radius:3px}.ladder-row-last .ladder-col-price{box-shadow:inset 0 0 0 1px var(--text);border-radius:3px}.ladder-sl-marker,.ladder-tp-marker{position:absolute;top:2px;bottom:2px;width:2px;border-radius:1px;background:transparent}.ladder-sl-marker{left:0}.ladder-tp-marker{right:0}.ladder-sl-marker.ladder-marker-visible{background:var(--bearish)}.ladder-tp-marker.ladder-marker-visible{background:var(--bullish)}.ladder-position-dot{display:none;width:5px;height:5px;border-radius:50%;margin-left:4px;position:relative;z-index:1}.ladder-has-position .ladder-position-dot{display:inline-block}.ladder-has-position.ladder-position-profit{box-shadow:inset 0 0 0 1px var(--bullish);border-radius:3px}.ladder-has-position.ladder-position-loss{box-shadow:inset 0 0 0 1px var(--bearish);border-radius:3px}.ladder-has-position.ladder-position-profit .ladder-position-dot{background:var(--bullish)}.ladder-has-position.ladder-position-loss .ladder-position-dot{background:var(--bearish)}.ladder-confirm-popover{position:absolute;right:6px;left:6px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:8px;height:22px;padding:0 8px;background:var(--sm-field-bg);border:1px solid var(--accent);border-radius:4px;font-size:11px;color:var(--text);box-shadow:0 2px 8px #0006}.ladder-confirm-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ladder-confirm-ok{flex:none;height:18px;padding:0 8px;border:none;border-radius:3px;background:var(--accent);color:#0b0e14;font-weight:600;font-size:10px;cursor:pointer}.ladder-context-menu{position:absolute;z-index:30;display:flex;flex-direction:column;min-width:90px;background:var(--panel);border:1px solid var(--border);border-radius:6px;overflow:hidden;box-shadow:0 4px 12px #00000080}.ladder-context-item{padding:6px 10px;background:transparent;border:none;color:var(--text);font-size:12px;text-align:left;cursor:pointer}.ladder-context-item:hover{background:#4f8cff1f}.ladder-context-delete:hover{background:#ef44441f;color:var(--bearish)}.ladder-col-session-vol{position:relative;display:flex;align-items:center;justify-content:flex-end;height:100%;padding-right:2px;overflow:hidden;color:var(--text-dim)}.ladder-trade-marker{position:absolute;left:0;top:3px;bottom:3px;width:2px;border-radius:1px;background:transparent}.ladder-trade-marker-buy{background:var(--bullish)}.ladder-trade-marker-sell{background:var(--bearish)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:10px 10px 8px;font-weight:600;font-size:13px;border-bottom:1px solid var(--border);white-space:nowrap}.favorite-groups{flex:1;overflow-y:auto;min-width:260px}.favorite-group{border-bottom:1px solid var(--border)}.favorite-group.dragging{opacity:.4}.favorite-group.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.favorite-group.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.favorite-group-header{display:flex;align-items:center;gap:4px;padding:6px 8px;cursor:grab}.group-chevron{background:transparent;border:none;color:var(--text-dim);cursor:pointer;width:16px;font-size:11px}.group-name{flex:1;font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text}.group-name-input{flex:1;min-width:0;padding:2px 4px;font-size:12.5px}.group-actions{display:flex;gap:3px;opacity:0;transition:opacity .1s ease}.favorite-group-header:hover .group-actions{opacity:1}.favorite-group-body{padding-bottom:4px}.group-add-search{padding:4px 8px}.group-search-input{width:100%;margin-bottom:4px}.group-search-results{max-height:160px;overflow-y:auto}.symbol-added{font-size:10.5px;color:var(--bullish);white-space:nowrap}.favorite-rows{display:flex;flex-direction:column}.favorite-empty{padding:6px 12px;font-size:11.5px;color:var(--text-dim)}.favorite-row{display:flex;align-items:center;gap:6px;height:32px;padding:0 8px 0 24px;cursor:pointer;position:relative}.favorite-row:hover{background:#4f8cff14}.fav-symbol{flex:1;font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fav-values{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.fav-price{font-size:12px;font-weight:600}.fav-change{font-size:10px;color:var(--text-dim)}.fav-change.positive{color:var(--bullish)}.fav-change.negative{color:var(--bearish)}.fav-remove{position:absolute;right:6px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:14px;opacity:0;transition:opacity .1s ease}.favorite-row:hover .fav-remove{opacity:1}.favorite-row:hover .fav-values{padding-right:14px}.fav-remove:hover{color:var(--bearish)}.sidebar-footer{display:flex;gap:6px;padding:8px 10px;border-top:1px solid var(--border)}.context-menu{position:fixed;z-index:200;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #0006;padding:4px;min-width:180px}.context-menu-item{padding:7px 10px;font-size:12.5px;border-radius:6px;cursor:pointer;white-space:nowrap}.context-menu-item:hover{background:#4f8cff1f}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px}.modal{width:100%;max-width:420px;max-height:85vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 36px #00000080}.modal-header{padding:14px 18px 10px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:15px;font-weight:600}.modal-subtitle{font-size:12px;color:var(--text-dim)}.modal-body{padding:14px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.field-group{display:flex;flex-direction:column;gap:8px}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px}.field-row input{width:110px;text-align:right}.field-row input[type=checkbox],.field-row input[type=color]{width:32px;height:22px;padding:0;cursor:pointer}.field-row input[type=checkbox]{width:18px;accent-color:var(--accent)}.text-prompt-input{width:100%}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;max-width:360px}.emoji-btn{width:100%;aspect-ratio:1;font-size:20px;background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center}.emoji-btn:hover{background:#4f8cff1f;border-color:var(--border)}.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 18px;border-top:1px solid var(--border)}.modal-footer-right{display:flex;gap:8px}.indicator-picker-modal{max-width:720px;width:100%}.picker-body{display:flex;min-height:340px;max-height:50vh;border-bottom:1px solid var(--border)}.picker-sidebar{flex:0 0 190px;border-right:1px solid var(--border);padding:10px;display:flex;flex-direction:column;gap:8px;overflow-y:auto}.picker-search{width:100%}.picker-categories{display:flex;flex-direction:column;gap:2px}.picker-category-btn{background:transparent;border:none;color:var(--text-dim);text-align:left;padding:7px 8px;border-radius:6px;font-size:12.5px;cursor:pointer}.picker-category-btn:hover{background:#ffffff0d;color:var(--text)}.picker-category-btn.active{background:#4f8cff2e;color:var(--text);font-weight:600}.picker-list{flex:1;overflow-y:auto;padding:6px}.picker-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:6px}.picker-row:hover{background:#ffffff0a}.picker-row-main{flex:1;min-width:0}.picker-row-name{font-size:13px;font-weight:600}.picker-row-desc{font-size:11.5px;color:var(--text-dim);margin-top:2px}.picker-row-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.picker-empty{padding:20px;text-align:center;color:var(--text-dim);font-size:12.5px}.picker-active-section{padding:10px 14px;max-height:160px;overflow-y:auto}.picker-active-header{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);margin-bottom:6px}.picker-active-row{display:flex;align-items:center;gap:8px;padding:5px 4px}.picker-active-name{flex:1;font-size:12.5px;font-weight:600}.picker-active-category{font-size:11px;color:var(--text-dim)}.confirm-modal .modal-body{gap:0}.confirm-message{margin:0;font-size:13px;line-height:1.5;color:var(--text)}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--panel);border:1px solid var(--accent);color:var(--text);padding:8px 18px;border-radius:8px;font-size:13px;box-shadow:0 6px 20px #0006;z-index:100}.toast-error{border-color:var(--bearish)}.sm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;transition:opacity .15s ease}.sm-overlay.sm-open{opacity:1}.sm-modal{width:480px;max-width:100%;max-height:85vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 64px #00000080;transform:scale(.97);transition:transform .15s ease}.sm-overlay.sm-open .sm-modal{transform:scale(1)}.sm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px}.sm-header-text{display:flex;flex-direction:column;gap:3px;min-width:0}.sm-title{margin:0;font-size:16px;font-weight:600;color:var(--text)}.sm-subtitle{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sm-close{flex:0 0 auto;width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--text-dim);font-size:18px;line-height:1;cursor:pointer;transition:background .12s ease,color .12s ease}.sm-close:hover{background:#ffffff14;color:var(--text)}.sm-tabs{display:flex;gap:4px;padding:0 20px;border-bottom:1px solid var(--border)}.sm-tab{background:transparent;border:none;color:var(--text-dim);font-size:13px;padding:8px 4px 10px;margin-right:16px;cursor:pointer;border-bottom:2px solid transparent;transition:color .12s ease,border-color .12s ease}.sm-tab:hover{color:var(--text)}.sm-tab-active{color:var(--text);border-bottom-color:var(--accent)}.sm-body{overflow-y:auto;max-height:70vh;padding:20px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sm-body::-webkit-scrollbar{width:8px}.sm-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.sm-body::-webkit-scrollbar-track{background:transparent}.sm-section-heading{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:20px 0 10px}.sm-section-heading:first-child{margin-top:0}.sm-empty-hint{font-size:12.5px;color:var(--text-dim);padding:8px 0}.sm-row{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--text)}.sm-row-label{display:flex;align-items:center;gap:8px;min-width:0}.sm-row-label-clickable{cursor:pointer}.sm-row-controls{display:flex;align-items:center;gap:8px;flex:0 0 auto;transition:opacity .12s ease}.sm-row-controls-disabled{opacity:.45}.sm-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px}.sm-reset-link{background:transparent;border:none;color:var(--text-dim);font-size:12.5px;cursor:pointer;padding:4px 2px;transition:color .12s ease}.sm-reset-link:hover{color:var(--text)}.sm-footer-right{display:flex;gap:8px}.sm-btn{padding:7px 16px;border-radius:7px;font-size:13px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.sm-btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}.sm-btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.sm-btn-primary{background:var(--accent);border:1px solid var(--accent);color:#fff;font-weight:600}.sm-btn-primary:hover{filter:brightness(1.08)}.sm-checkbox,.sm-dropdown-trigger,.sm-color-swatch,.sm-btn,.ui-toggle,.ui-segment-btn,.sm-tab,.sm-close,.sm-reset-link{outline:none}.sm-checkbox:focus-visible,.sm-dropdown-trigger:focus-visible,.sm-color-swatch:focus-visible,.sm-btn:focus-visible,.ui-toggle:focus-visible,.ui-segment-btn:focus-visible,.sm-tab:focus-visible,.sm-close:focus-visible,.sm-reset-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sm-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;min-width:18px;border-radius:4px;border:1px solid #3a4354;background:var(--sm-field-bg);cursor:pointer;position:relative;transition:background .12s ease,border-color .12s ease}.sm-checkbox:checked{background:var(--accent);border-color:var(--accent)}.sm-checkbox:checked:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.ui-toggle{display:inline-flex;padding:0;border:none;background:none;cursor:pointer;flex:0 0 auto}.ui-toggle-track{position:relative;width:48px;height:26px;border-radius:13px;background:#1a2130;border:1px solid #2a3341;box-shadow:inset 0 1px 2px #0006;transition:background var(--motion-slow, .2s) ease,border-color var(--motion-slow, .2s) ease,box-shadow var(--motion-slow, .2s) ease}.ui-toggle-on .ui-toggle-track{background:var(--accent);border-color:var(--accent);box-shadow:0 0 10px #4f8cff73}.ui-toggle-text{position:absolute;top:50%;transform:translateY(-50%);font-size:9px;font-weight:600;letter-spacing:.02em;transition:opacity var(--motion-slow, .2s) ease}.ui-toggle-text-on{right:6px;color:#fff;opacity:0}.ui-toggle-on .ui-toggle-text-on{opacity:.8}.ui-toggle-text-off{left:6px;color:#5c6577;opacity:1}.ui-toggle-on .ui-toggle-text-off{opacity:0}.ui-toggle-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#3a4354;background-image:radial-gradient(circle,#4a5568 1px,transparent 1.3px);background-size:6px 6px;background-position:center;box-shadow:0 2px 3px #00000080;transition:transform var(--motion-base, .18s) cubic-bezier(0,0,.2,1),width var(--motion-fast, .1s) ease,background-color var(--motion-slow, .2s) ease}.ui-toggle-on .ui-toggle-thumb{transform:translate(22px);background-color:#e6e9ef;background-image:none}.ui-toggle-pressed .ui-toggle-thumb{width:24px}.ui-toggle-pressed.ui-toggle-on .ui-toggle-thumb{transform:translate(18px)}.ui-number{position:relative;height:36px}.ui-number-input{width:100%;height:36px;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;padding:0 18px;text-align:center;transition:border-color var(--motion-hover, .12s) ease,box-shadow var(--motion-hover, .12s) ease}.ui-number-input::-webkit-inner-spin-button,.ui-number-input::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.ui-number-input:hover,.ui-number-input:focus{border-color:var(--accent)}.ui-number-input:focus{outline:none;box-shadow:0 0 0 3px #4f8cff2e}.ui-datetime-input{width:190px;padding:0 8px;text-align:left;color-scheme:dark}.ui-number-arrows{position:absolute;right:3px;top:3px;bottom:3px;width:14px;display:flex;flex-direction:column;justify-content:center;opacity:0;transition:opacity var(--motion-hover, .12s) ease}.ui-number:hover .ui-number-arrows{opacity:1}.ui-number-arrow{flex:1;background:transparent;border:none;color:var(--text-dim);font-size:6px;line-height:1;cursor:pointer;padding:0}.ui-number-arrow:hover{color:var(--accent)}@keyframes ui-number-flash-kf{0%{border-color:var(--accent);box-shadow:0 0 0 3px #4f8cff59}to{border-color:var(--border);box-shadow:none}}.ui-number-flash .ui-number-input{animation:ui-number-flash-kf var(--motion-value-flash, .15s) ease-out}.sm-dropdown-trigger{height:32px;min-width:100px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:12px;padding:0 8px;cursor:pointer;transition:border-color .12s ease}.sm-dropdown-trigger:hover{border-color:var(--accent)}.sm-dropdown-value{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sm-dropdown-chevron{color:var(--text-dim);font-size:10px;flex:0 0 auto}.sm-dropdown-popover{position:fixed;z-index:500;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000080;padding:4px;max-height:280px;overflow-y:auto}.sm-dropdown-option{display:flex;align-items:center;gap:8px;width:100%;background:transparent;border:none;color:var(--text);font-size:12.5px;padding:7px 8px;border-radius:5px;cursor:pointer;text-align:left;white-space:nowrap}.sm-dropdown-option:hover{background:#4f8cff1f}.sm-dropdown-option-active{color:var(--accent)}.sm-dropdown-check{width:12px;flex:0 0 auto;color:var(--accent);font-size:11px}.ui-segment{position:relative;display:flex;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:8px;padding:2px;height:32px;gap:2px}.ui-segment-pill{position:absolute;top:2px;bottom:2px;left:0;border-radius:6px;background:var(--accent);transition:transform var(--motion-segment, .16s) cubic-bezier(.2,.8,.2,1),width var(--motion-segment, .16s) cubic-bezier(.2,.8,.2,1);z-index:0}.ui-segment-btn{position:relative;z-index:1;flex:1;height:100%;border:none;border-radius:6px;background:transparent;color:var(--text-dim);font-size:12.5px;cursor:pointer;transition:color var(--motion-hover, .12s) ease}.ui-segment-btn:hover{color:var(--text)}.ui-segment-btn-active{color:#fff;font-weight:600}.sm-chip-group{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.sm-chip{height:26px;padding:0 10px;border-radius:13px;border:1px solid var(--border);background:var(--sm-field-bg);color:var(--text-dim);font-size:12px;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.sm-chip:hover{border-color:var(--accent);color:var(--text)}.sm-chip-active{background:#4f8cff2e;border-color:var(--accent);color:var(--accent)}.sm-line-preview{display:inline-block;width:28px;height:2px;background:currentColor;color:var(--text);border-radius:1px}.sm-line-preview-dashed{height:0;border-top:2px dashed currentColor;background:none}.sm-line-preview-dotted{height:0;border-top:2px dotted currentColor;background:none}.sm-color-swatch{width:32px;height:32px;border-radius:8px;border:1px solid #2a3341;cursor:pointer;padding:3px;background-image:linear-gradient(45deg,#333 25%,transparent 25%),linear-gradient(-45deg,#333 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#333 75%),linear-gradient(-45deg,transparent 75%,#333 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0;background-color:#1a1f2a;transition:border-color .12s ease}.sm-color-swatch:hover{border-color:var(--text-dim)}.sm-color-swatch-fill{display:block;width:100%;height:100%;border-radius:5px}.cp-popover{position:fixed;z-index:500;width:232px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 40px #0000008c;padding:12px;display:flex;flex-direction:column;gap:10px}.cp-sv{position:relative;width:100%;height:120px;border-radius:6px;cursor:crosshair}.cp-sv-thumb{position:absolute;width:12px;height:12px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #00000080;transform:translate(-6px,-6px);pointer-events:none}.cp-hue-row{display:flex;align-items:center;gap:10px}.cp-hue{position:relative;flex:1;height:12px;border-radius:6px;cursor:pointer;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.cp-hue-thumb{position:absolute;top:50%;width:12px;height:12px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #00000080;transform:translate(-6px,-50%);pointer-events:none}.cp-preview{width:28px;height:20px;border-radius:5px;border:1px solid var(--border);flex:0 0 auto}.cp-alpha{position:relative;height:12px;border-radius:6px;cursor:pointer;background-image:linear-gradient(45deg,#333 25%,transparent 25%),linear-gradient(-45deg,#333 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#333 75%),linear-gradient(-45deg,transparent 75%,#333 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0}.cp-alpha-thumb{position:absolute;top:50%;width:12px;height:12px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #00000080;transform:translate(-6px,-50%);pointer-events:none}.cp-palette{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.cp-swatch{width:100%;aspect-ratio:1;border-radius:4px;border:1px solid rgba(255,255,255,.08);cursor:pointer;padding:0;transition:transform .12s ease}.cp-swatch:hover{transform:scale(1.12)}.cp-recent-row{display:flex;gap:4px;min-height:20px;flex-wrap:wrap}.cp-swatch-sm{width:20px;height:20px;aspect-ratio:unset}.cp-recent-empty{font-size:11px;color:var(--text-dim)}.cp-hex-row{display:flex;align-items:center;gap:6px;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:6px;padding:0 8px;height:30px;color:var(--text-dim);font-size:12px}.cp-hex-input{flex:1;background:transparent;border:none;color:var(--text);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;text-transform:uppercase;outline:none}.trade-btn.active{color:var(--accent);border-color:var(--accent)}.heat-btn.active{background:#f59e0b;color:#0b0e14;border-color:#f59e0b}.heat-btn.active:hover{color:#0b0e14;border-color:#fbbf24}.hm-palette-swatch{display:inline-block;width:32px;height:12px;border-radius:3px;border:1px solid rgba(255,255,255,.15)}.hm-default-row{margin-top:16px;padding-top:12px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.hm-bubble-tooltip{position:fixed;z-index:400;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 24px #00000073;padding:6px 10px;font-size:11px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;color:var(--text);pointer-events:none;white-space:nowrap}.hm-tooltip-row{line-height:1.5}.hm-progress-track{width:100%;height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}.hm-progress-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .3s ease}.tp-mono{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.tp-positive{color:var(--bullish)}.tp-negative{color:var(--bearish)}.tp-panel{display:flex;flex-direction:column;height:100%;font-size:12.5px;color:var(--text)}.tp-header{padding:12px 14px;border-bottom:1px solid var(--border);flex:0 0 auto}.tp-header-top{display:flex;align-items:center;justify-content:space-between}.tp-symbol{font-weight:600;font-size:14px}.tp-close{background:transparent;border:none;color:var(--text-dim);font-size:16px;cursor:pointer;line-height:1}.tp-close:hover{color:var(--text)}.tp-quote{display:flex;gap:10px;margin-top:6px;font-size:15px}.tp-bid,.tp-ask{padding:1px 4px;border-radius:3px}.tp-bid{color:var(--bearish)}.tp-ask{color:var(--bullish)}@keyframes tp-flash-up-kf{0%{background-color:#22c55e59}to{background-color:transparent}}@keyframes tp-flash-down-kf{0%{background-color:#ef444459}to{background-color:transparent}}.tp-flash-up{animation:tp-flash-up-kf var(--motion-flash, .25s) ease-out}.tp-flash-down{animation:tp-flash-down-kf var(--motion-flash, .25s) ease-out}.tp-spread{margin-top:2px;font-size:11px;color:var(--text-dim)}.tp-body{flex:1;overflow-y:auto;padding:4px 12px 16px 14px}.tp-body .sm-row{min-height:34px}.tp-body .sm-section-heading{margin:24px 0 12px}.tp-price-row{margin-top:6px}.tp-direction-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tp-side-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:44px;padding:0 6px;border-radius:10px;cursor:pointer;background:transparent;transition:background var(--motion-hover, .12s) ease,border-color var(--motion-hover, .12s) ease,color var(--motion-hover, .12s) ease,box-shadow var(--motion-slow, .2s) ease,transform var(--motion-fast, .1s) ease}.tp-side-btn:active{transform:scale(.98)}.tp-side-buy{border:1.5px solid rgba(34,197,94,.6);color:var(--bullish)}.tp-side-sell{border:1.5px solid rgba(239,68,68,.6);color:var(--bearish)}.tp-side-buy:hover{background:#22c55e1a}.tp-side-sell:hover{background:#ef44441a}.tp-side-buy.active{background:var(--bullish);border-color:var(--bullish);color:#06210f;box-shadow:0 0 12px #22c55e73}.tp-side-sell.active{background:var(--bearish);border-color:var(--bearish);color:#2b0808;box-shadow:0 0 12px #ef444473}.tp-side-label{font-weight:600;font-size:12.5px}.tp-side-price{font-size:12px}.tp-lot-chips{display:flex;gap:6px;margin:8px 0;flex-wrap:wrap}.tp-lot-chip{position:relative;overflow:hidden;height:26px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:#1a2130;color:var(--text-dim);font-size:11.5px;cursor:pointer;transition:border-color var(--motion-hover, .12s) ease,color var(--motion-hover, .12s) ease}.tp-lot-chip:hover,.tp-lot-chip-active{border-color:var(--accent);color:var(--text)}.tp-ripple{position:absolute;border-radius:50%;background:#4f8cff73;transform:scale(0);pointer-events:none;animation:tp-ripple-kf .4s ease-out}@keyframes tp-ripple-kf{to{transform:scale(2.5);opacity:0}}.tp-target-block{border-top:1px solid var(--border);padding-top:4px;margin-top:8px}.tp-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px}.tp-toggle-row-label{font-size:13px;font-weight:600;color:var(--text)}.tp-collapsible{max-height:0;opacity:0;overflow:hidden;transition:max-height var(--motion-slow, .2s) ease,opacity var(--motion-slow, .2s) ease}.tp-collapsible-open{max-height:320px;opacity:1}.tp-target-fields{padding:4px 0 8px;display:flex;flex-direction:column;gap:6px}.tp-other-units{font-size:11px;color:var(--text-dim);opacity:1;transition:opacity var(--motion-hover, .12s) ease}.tp-fade-out{opacity:0}.tp-rr{margin-left:auto;font-size:11px;color:var(--text-dim)}.tp-summary{margin-top:12px;padding:10px;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:4px}.tp-summary-row{display:flex;align-items:center;justify-content:space-between;font-size:12px}.tp-summary-row span:first-child{color:var(--text-dim)}.tp-rr-badge{display:inline-block;padding:2px 8px;border-radius:999px;background:#4f8cff26;color:var(--accent);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:11px;font-weight:600}.tp-error{margin-top:8px;color:var(--bearish);font-size:11.5px;max-height:0;opacity:0;overflow:hidden;transition:opacity var(--motion-slow, .2s) ease,max-height var(--motion-slow, .2s) ease}.tp-error-visible{max-height:40px;opacity:1}@keyframes tp-shake-kf{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.tp-shake{animation:tp-shake-kf var(--motion-shake, .3s) ease-in-out}.tp-confirm-btn{position:relative;width:100%;height:48px;margin-top:10px;padding:0 10px;border-radius:8px;border:none;font-weight:600;font-size:13px;cursor:pointer;background:var(--border);color:var(--text-dim);display:flex;align-items:center;justify-content:center;transition:filter var(--motion-hover, .12s) ease,box-shadow var(--motion-hover, .12s) ease,background-color var(--motion-slow, .2s) ease}.tp-confirm-btn:disabled{cursor:not-allowed;opacity:.6}.tp-confirm-btn.tp-confirm-buy:not(:disabled){background:var(--bullish);color:#06210f}.tp-confirm-btn.tp-confirm-sell:not(:disabled){background:var(--bearish);color:#2b0808}.tp-confirm-btn.tp-confirm-buy:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 0 12px #22c55e80}.tp-confirm-btn.tp-confirm-sell:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 0 12px #ef444480}.tp-confirm-btn.tp-confirm-loading{cursor:wait}.tp-confirm-btn.tp-confirm-success{background:var(--bullish)!important;color:#06210f!important;box-shadow:0 0 16px #22c55e99}.tp-btn-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:tp-spin-kf .7s linear infinite}@keyframes tp-spin-kf{to{transform:rotate(360deg)}}.tp-btn-check{font-size:20px;font-weight:700;line-height:1}.tp-positions-list{display:flex;flex-direction:column;gap:6px}.tp-position-row{display:grid;grid-template-columns:40px 34px 1fr 1fr 1fr 1fr 16px;gap:4px;align-items:center;height:20px;font-size:11px;cursor:pointer;overflow:hidden;opacity:1;transform:translateY(0);transition:opacity var(--motion-slow, .2s) ease,transform var(--motion-slow, .2s) ease,height var(--motion-slow, .2s) ease}.tp-row-entering{opacity:0;transform:translateY(-6px)}.tp-row-exiting-active{opacity:0;height:0!important}.tp-pos-side{font-weight:600}.tp-pnl{transition:color var(--motion-slow, .2s) ease}.tp-pending-row{opacity:.75}.tp-pending-row.tp-row-entering{opacity:0}.tp-row-close{background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:13px;line-height:1;padding:0}.tp-row-close:hover{color:var(--bearish)}.tp-empty-hint{font-size:11.5px;color:var(--text-dim)}.tp-poslabel{position:fixed;z-index:250;display:flex;align-items:stretch;height:20px;font-size:11px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;background:var(--panel);border:1px solid var(--border);border-radius:4px;overflow:hidden;box-shadow:0 2px 8px #0006;white-space:nowrap}.tp-poslabel>*{display:flex;align-items:center;justify-content:center;padding:0 6px;border:none;background:transparent;color:var(--text);cursor:pointer}.tp-poslabel-close{color:var(--text-dim);font-size:13px}.tp-poslabel-close:hover{color:var(--bearish)}.tp-poslabel-lot,.tp-poslabel-pnl{cursor:default}.tp-poslabel-seg{border-left:1px solid var(--border);font-weight:600;color:var(--text-dim)}.tp-poslabel-seg.tp-seg-active-sl{background:var(--bearish);color:#2b0808}.tp-poslabel-seg.tp-seg-active-tp{background:var(--bullish);color:#06210f}.tp-poslabel-pending{opacity:.85}.tp-close-popover{position:fixed;z-index:300;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 12px 32px #00000080;padding:8px;display:flex;flex-direction:column;gap:6px;width:200px}.tp-close-popover button{height:28px;border-radius:6px;border:1px solid var(--border);background:var(--sm-field-bg);color:var(--text);font-size:12px;cursor:pointer}.tp-close-popover button:hover{border-color:var(--accent)}.tp-close-popover-partial{display:flex;gap:6px}.tp-close-popover-partial input{width:60px;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:6px;color:var(--text);padding:0 6px}.tp-close-popover-partial-btn{flex:1}.account-popover{position:fixed;z-index:300;width:300px;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 40px #00000080;padding:12px;font-size:12px}.account-popover-header{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:12px 0 6px}.account-popover-header:first-child{margin-top:0}.account-popover-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px}.account-popover-stats>div{display:flex;justify-content:space-between;background:var(--sm-field-bg);border:1px solid var(--border);border-radius:6px;padding:6px 8px}.account-popover-stats span:first-child{color:var(--text-dim)}.account-popover-list{display:flex;flex-direction:column;gap:4px;max-height:160px;overflow-y:auto}.account-popover-row{display:grid;grid-template-columns:1fr 50px 50px 70px;gap:4px;padding:4px 2px}.account-popover-closeall{width:100%;margin-top:10px;height:30px;border-radius:7px;border:1px solid var(--bearish);background:transparent;color:var(--bearish);font-size:12px;cursor:pointer}.account-popover-closeall:hover:not(:disabled){background:var(--bearish);color:#fff}.account-popover-closeall:disabled{opacity:.4;cursor:not-allowed}
