:root{--bg: #0b0e14;--surface: #131720;--surface-2: #1a1f2b;--line: #232a38;--text: #e6e9ef;--dim: #a8b0c0;--mute: #818897;--accent: #f0b429;--buy: #2dd4a7;--sell: #ff5c72;--warn: #f0b429;--gold: var(--accent);--up: var(--buy);--down: var(--sell);--rail: 300px;--watch: 260px;--wl-cols: 12px minmax(0, 1fr) 56px 56px 26px;--wl-gap: 5px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app{display:flex;flex-direction:column;height:100%;overflow:hidden}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:10px 16px;border-radius:0 0 8px;background:var(--accent);color:#14161c;font-weight:600;text-decoration:none}.skip-link:focus{left:0}.topbar{display:flex;align-items:center;gap:20px;padding:0 16px;height:52px;background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0}.brand{display:flex;align-items:center;gap:8px;font-weight:600}.mark{display:block;flex-shrink:0;width:26px;height:26px;border-radius:6px;object-fit:cover}.brand .name{letter-spacing:.02em;white-space:nowrap}.views{display:flex;gap:2px}.views button,.tfs button,.ticket-types button,.deviation button,.login-tabs button{background:transparent;border:1px solid transparent;color:var(--dim);font:inherit;font-size:12px;padding:6px 12px;border-radius:6px;cursor:pointer}.views button:hover,.tfs button:hover,.ticket-types button:hover,.deviation button:hover{color:var(--text);background:var(--surface-2)}.views button.on,.tfs button.on,.ticket-types button.on,.deviation button.on,.login-tabs button.on{color:var(--bg);background:var(--accent);font-weight:600}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:16px}.equity-strip{display:flex;gap:18px;font-family:IBM Plex Mono,ui-monospace,monospace}.equity-strip dt{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}.equity-strip dd{font-size:13px;font-weight:600}.acct-switch select,.history-filters select,.history-filters input{background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit;font-size:12px}.conn{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--dim);text-transform:capitalize}.conn .dot{width:7px;height:7px;border-radius:50%;background:var(--mute)}.conn-live .dot{background:var(--buy)}.conn-connecting .dot,.conn-reconnecting .dot{background:var(--warn);animation:pulse 1s ease-in-out infinite}.conn-offline .dot,.conn-rejected .dot{background:var(--sell)}@keyframes pulse{50%{opacity:.3}}.banner{padding:8px 16px;font-size:12.5px;border-bottom:1px solid var(--line);flex-shrink:0}.banner strong{font-weight:600}.banner-warn{background:color-mix(in srgb,var(--warn) 14%,var(--surface));color:var(--text);border-left:3px solid var(--warn)}.banner-error{background:color-mix(in srgb,var(--sell) 16%,var(--surface));border-left:3px solid var(--sell)}.banner-ok{background:color-mix(in srgb,var(--buy) 14%,var(--surface));border-left:3px solid var(--buy)}.body{display:grid;grid-template-columns:var(--watch) minmax(0,1fr) var(--rail);flex:1;min-height:0}.main{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;border-right:1px solid var(--line)}.rail{overflow-y:auto;background:var(--surface);border-left:1px solid var(--line);padding:12px;display:flex;flex-direction:column;gap:16px}.watchlist{display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--line);min-height:0}.watch-head,.panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--line)}h2.section-title,h3.section-title{margin:0;font-weight:inherit}.section-title{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);font-weight:600}.count{color:var(--dim)}.watch-search{padding:8px;border-bottom:1px solid var(--line)}.watch-search input{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:6px;color:var(--text);font:inherit;font-size:12px;padding:6px 8px}.watch-cols{display:grid;grid-template-columns:var(--wl-cols);gap:var(--wl-gap);padding:6px 10px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}.watch-rows{overflow-y:auto;flex:1;min-height:0}.row{display:grid;grid-template-columns:var(--wl-cols);gap:var(--wl-gap);align-items:center;width:100%;padding:9px 10px;background:transparent;border:0;border-left:2px solid transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.row:hover{background:var(--surface-2)}.row.sel{background:var(--surface-2);border-left-color:var(--accent)}.row-stale .px,.row-stale .px.up,.row-stale .px.down,.row-stale .row-spread{color:var(--mute);animation:none}.row-suspended{opacity:.55}.sym{font-weight:500;display:flex;align-items:baseline;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.susp{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--sell);border:1px solid currentColor;border-radius:3px;padding:0 3px}.px,.row-spread{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12.5px;text-align:right}.row-wrap{position:relative}.row-pin{position:absolute;top:0;bottom:0;left:12px;width:12px;padding:0;border:0;background:none;color:transparent;font:inherit;font-size:11px;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}.row-wrap:hover .row-pin,.row-pin:focus-visible{color:var(--mute)}.row-pin.is-pinned,.row-wrap:hover .row-pin.is-pinned{color:var(--accent)}.row-pin:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:2px}.watch-note{padding:3px 10px 6px;font-size:10px;line-height:1.35;color:var(--mute)}.row-spread{color:var(--mute);font-size:11px}.row-spread-unit{margin-left:3px}.px.up{color:var(--buy);animation:flash-up .5s ease-out}.px.down{color:var(--sell);animation:flash-down .5s ease-out}@keyframes flash-up{0%{background:color-mix(in srgb,var(--buy) 15%,transparent)}}@keyframes flash-down{0%{background:color-mix(in srgb,var(--sell) 15%,transparent)}}.chart-head{display:flex;align-items:center;gap:24px;padding:10px 16px;border-bottom:1px solid var(--line);flex-wrap:wrap}.sym-block{display:flex;flex-direction:column}.sym-name{font-size:15px;font-weight:600;letter-spacing:.02em}.sym-desc{font-size:11px;color:var(--mute)}.prices{display:flex;gap:20px;font-family:IBM Plex Mono,ui-monospace,monospace}.pair{display:flex;flex-direction:column;gap:1px}.pair .label{font-size:9px;letter-spacing:.1em;color:var(--mute)}.pair .bid{color:var(--sell);font-size:15px;font-weight:600}.pair .ask{color:var(--buy);font-size:15px;font-weight:600}.spread{color:var(--dim);font-size:13px}.tfs{margin-left:auto;display:flex;gap:2px}.chart-holder{position:relative;flex:1;min-height:220px;overflow:hidden}.chart{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.chart-veil{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:color-mix(in srgb,var(--bg) 80%,transparent);color:var(--dim);font-size:12px;pointer-events:none}.chart-positions{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:4px;z-index:2;max-width:min(360px,60%)}.chart-pos-more{align-self:flex-start;border:1px solid var(--line);border-radius:6px;background:#131720eb;color:var(--dim);font-size:11px;padding:4px 9px;cursor:pointer}.chart-pos-more:hover{color:var(--text);border-color:var(--accent)}.chart-pos{display:flex;align-items:center;gap:10px;padding:5px 8px;border-radius:6px;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);border-left-width:3px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11.5px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.chart-pos.is-buy{border-left-color:var(--buy)}.chart-pos.is-sell{border-left-color:var(--sell)}.chart-pos-side{font-weight:600;letter-spacing:.04em}.is-buy .chart-pos-side{color:var(--buy)}.is-sell .chart-pos-side{color:var(--sell)}.chart-pos-vol,.chart-pos-price{color:var(--dim)}.chart-pos-profit{margin-left:auto;font-weight:600}.chart-pos-close{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:4px;font:inherit;font-size:10.5px;padding:2px 7px;cursor:pointer}.chart-pos-close:hover:not(:disabled){border-color:var(--sell);color:var(--sell)}.positions{border-top:1px solid var(--line);background:var(--surface);max-height:34%;display:flex;flex-direction:column;min-height:0}.floating-total{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--mute);font-family:IBM Plex Mono,ui-monospace,monospace}.floating-total .floating-label{font-size:11px;font-weight:400;color:var(--mute)}.floating-total>span:not(.floating-label){font-size:13px;font-weight:600;color:var(--text)}.btn-close-all{border-color:color-mix(in srgb,var(--sell) 55%,var(--line));color:var(--sell)}.btn-close-all:hover:not(:disabled){background:color-mix(in srgb,var(--sell) 16%,transparent);border-color:var(--sell)}.table-scroll{overflow:auto;flex:1;min-height:0}table{width:100%;border-collapse:collapse;font-size:12px}th{position:sticky;top:0;background:var(--surface);text-align:left;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:600;padding:7px 10px;border-bottom:1px solid var(--line);z-index:1}td{padding:7px 10px;border-bottom:1px solid var(--surface-2);font-family:IBM Plex Mono,ui-monospace,monospace}th.num,td.num{text-align:right}.dim{color:var(--mute)}.side-buy{color:var(--buy);font-weight:600}.side-sell{color:var(--sell);font-weight:600}.pos{color:var(--buy)}.neg{color:var(--sell)}.stops{color:var(--dim);font-size:11px}.row-closing{opacity:.5}.pos-actions{display:flex;align-items:center;gap:6px;justify-content:flex-end}.pts{color:var(--mute);font-size:11px;min-width:34px;text-align:right}.panel-foot{padding:6px 12px;font-size:10.5px;color:var(--mute);border-top:1px solid var(--line)}.empty{padding:20px 16px;color:var(--mute);font-size:12.5px}.link{background:none;border:0;color:var(--text);font:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.link:hover{color:var(--accent)}.ticket{display:flex;flex-direction:column;gap:10px}.ticket-types,.deviation{display:flex;gap:3px;border:0}.field{display:flex;flex-direction:column;gap:4px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.field-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:600}.field-hint{font-size:10px;color:var(--mute);text-transform:none;letter-spacing:0;font-weight:400}.field-hint.block{display:block;margin-top:-4px}.field input,.field select{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;color:var(--text);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;padding:8px 10px;width:100%}.field input[aria-invalid=true]{border-color:var(--sell)}.field-error{font-size:11px;color:var(--sell)}.volume-input{display:grid;grid-template-columns:34px 1fr 34px;gap:4px}.volume-input button{background:var(--surface-2);border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:16px;cursor:pointer}.volume-input button:hover:not(:disabled){border-color:var(--accent)}.ticket-blocked{font-size:11.5px;color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,transparent);border-radius:6px;padding:7px 9px}.ticket-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-buy,.btn-sell,.btn-primary,.btn-danger,.btn-plain{border:0;border-radius:7px;font:inherit;font-weight:600;cursor:pointer;padding:10px 14px;display:flex;flex-direction:column;align-items:center;gap:1px}.btn-buy{background:var(--buy);color:#06231b}.btn-sell{background:var(--sell);color:#2b0b11}.btn-primary{background:var(--accent);color:#14161c;justify-content:center}.btn-danger{background:var(--sell);color:#2b0b11;justify-content:center}.btn-plain{background:var(--surface-2);color:var(--text);border:1px solid var(--line);justify-content:center;text-decoration:none;text-align:center}.btn-buy:disabled,.btn-sell:disabled,.btn-primary:disabled,.btn-danger:disabled,.btn-plain:disabled,.btn-tiny:disabled{opacity:.45;cursor:not-allowed}.btn-side{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.btn-price{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:14px}.btn-tiny{min-height:24px;background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:5px;font:inherit;font-size:11px;padding:3px 8px;cursor:pointer}.btn-tiny:hover:not(:disabled){border-color:var(--accent)}.btn-close:hover:not(:disabled){border-color:var(--sell);color:var(--sell)}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;background:#0009;display:grid;place-items:center;z-index:50;padding:16px}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;width:min(420px,100%);max-height:90vh;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:14px}.sheet-wide{width:min(760px,100%)}.sheet h2{font-size:16px}.sheet h3{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-top:4px}.confirm-buy{color:var(--buy)}.confirm-sell{color:var(--sell)}.confirm-rows,.account-view>*,.history-view>*{flex-shrink:0}.account-figures,.breach-figures,.rule-facts{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden}.confirm-rows>div,.account-figures>div,.breach-figures>div,.rule-facts>div{display:flex;justify-content:space-between;gap:12px;background:var(--surface);padding:8px 11px}.confirm-rows dt,.account-figures dt,.breach-figures dt,.rule-facts dt{color:var(--dim);font-size:12px}.confirm-rows dd,.account-figures dd,.breach-figures dd,.rule-facts dd{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;font-weight:600;text-align:right}.confirm-short{color:var(--sell)}.confirm-warn{font-size:12px;color:var(--sell);background:color-mix(in srgb,var(--sell) 12%,transparent);border-radius:6px;padding:8px 10px}.confirm-note{font-size:11.5px;color:var(--mute)}.sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.mini-table td,.mini-table th{font-size:11.5px;padding:5px 8px}.sheet-table{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.rules{display:flex;flex-direction:column;gap:14px}.account-view .rules{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:18px;gap:20px}.account-view .rule-facts{border-radius:8px}.rules-compact{gap:10px;border-top:1px solid var(--line);padding-top:14px}.rule-bar{display:flex;flex-direction:column;gap:5px}.rule-head,.rule-foot{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.rule-label{font-size:11px;font-weight:600;color:var(--text)}.rule-remaining{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;color:var(--dim)}.rule-track{height:7px;background:var(--line);box-shadow:inset 0 0 0 1px var(--surface-2);border-radius:4px;overflow:hidden}.rule-fill{min-width:0}.rule-fill{height:100%;border-radius:3px;background:var(--buy);transition:width .3s ease-out}.rule-warn .rule-fill{background:var(--warn)}.rule-critical .rule-fill{background:var(--sell)}.rule-target .rule-fill{background:var(--accent)}.rule-foot{font-size:10.5px;color:var(--mute)}.rule-state{font-weight:600}.rule-warn .rule-state{color:var(--warn)}.rule-critical .rule-state{color:var(--sell)}.rule-floor strong{color:var(--text);font-family:IBM Plex Mono,ui-monospace,monospace}.rule-facts{margin-top:4px}.fact-note{color:var(--warn);font-size:11px;font-weight:400}.fact-alert{color:var(--sell)}.account-view,.history-view{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:18px;max-width:940px;width:100%;margin:0 auto}.account-view h1{font-size:20px}.account-view h1 .dim{font-size:13px;font-weight:400}.account-section{margin:8px 0 0;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.results-figures dd .dim{font-weight:400}.history{display:flex;flex-direction:column;gap:14px}.history-filters{display:flex;flex-wrap:wrap;gap:10px}.history-filters label{display:flex;flex-direction:column;gap:4px}.history-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.history-actions .field-hint{flex:1 1 12rem;min-width:0;font-size:11px;color:var(--mute)}.sort-head{display:inline-flex;align-items:center;gap:4px;border:0;padding:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.sort-head:hover{color:var(--text)}.sort-head.is-active{color:var(--accent)}.num .sort-head{justify-content:flex-end;width:100%}.history-totals{display:flex;flex-wrap:wrap;gap:20px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:12px;color:var(--dim)}.history-totals strong{color:var(--text);font-family:IBM Plex Mono,ui-monospace,monospace}.reason{font-size:10.5px;padding:1px 6px;border-radius:3px;background:var(--surface-2);color:var(--dim);white-space:nowrap}.reason-breach,.reason-stop_out{color:var(--sell);background:color-mix(in srgb,var(--sell) 14%,transparent)}.reason-tp{color:var(--buy);background:color-mix(in srgb,var(--buy) 14%,transparent)}.partial-tag{display:inline-block;margin-right:6px;padding:1px 5px;border-radius:3px;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:10.5px;font-weight:600;vertical-align:1px;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent);white-space:nowrap}.load-more{align-self:flex-start}.breach{flex:1;overflow-y:auto;display:grid;place-items:start center;padding:40px 20px}.breach-card{width:min(620px,100%);background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--sell);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:16px}.breach-eyebrow{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.breach-card h1{font-size:24px;color:var(--sell)}.breach-lede{font-size:14px;color:var(--text);line-height:1.55}.breach-mode{font-size:11px;font-weight:400;color:var(--dim);max-width:320px}.breach-trigger{font-size:12.5px;color:var(--dim);line-height:1.6}.breach-trigger strong{color:var(--text);font-family:IBM Plex Mono,ui-monospace,monospace}.breach-actions{display:flex;gap:8px;flex-wrap:wrap}.breach-foot{font-size:11px;color:var(--mute);line-height:1.6;border-top:1px solid var(--line);padding-top:14px}.login,.fatal,.boot{min-height:100%;display:grid;place-items:center;padding:24px;text-align:center}.boot{gap:12px;color:var(--dim);grid-auto-flow:row;align-content:center}.boot-mark{display:block;width:40px;height:40px;border-radius:10px;object-fit:cover;margin:0 auto}.login-card{width:min(380px,100%);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:26px;display:flex;flex-direction:column;gap:14px;text-align:left}.login-brand{display:flex;align-items:center;gap:10px}.login-brand h1{font-size:17px}.login-logo{height:28px;width:auto}.login-tabs{display:flex;gap:3px;padding:3px;background:var(--surface-2);border-radius:8px}.login-tabs button{flex:1}.login-error{font-size:12px;color:var(--sell);background:color-mix(in srgb,var(--sell) 12%,transparent);border-radius:6px;padding:8px 10px}.login-route{margin:0;padding:10px 12px;border-radius:8px;background:var(--surface-2);color:var(--dim);font-size:12.5px;line-height:1.45}.login-route a{color:var(--accent);font-weight:600}.login-foot{font-size:11px;color:var(--mute);text-align:center}.login-foot a,.breach-actions a{color:var(--accent)}.fatal{gap:14px;grid-auto-flow:row;align-content:center;color:var(--dim)}.fatal h1{font-size:19px;color:var(--text)}.toasts{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:100;max-width:min(360px,calc(100vw - 32px))}.toast{display:flex;gap:10px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-left-width:3px;border-radius:8px;padding:10px 12px;animation:toast-in .18s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.toast-ok{border-left-color:var(--buy)}.toast-warn{border-left-color:var(--warn)}.toast-error{border-left-color:var(--sell)}.toast-body{flex:1;min-width:0}.toast-title{font-size:12px;font-weight:600;text-transform:capitalize}.toast-detail{font-size:11.5px;color:var(--dim);line-height:1.45;margin-top:2px}.toast-ref{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px;color:var(--mute);margin-top:4px}.toast-x{background:none;border:0;color:var(--mute);font-size:16px;line-height:1;cursor:pointer;padding:0 2px}.toast-x:hover{color:var(--text)}@media(max-width:1180px){.app:not(.app-phone){--rail: 260px;--watch: 236px;--wl-cols: 12px minmax(0, 1fr) 56px 56px}.app:not(.app-phone) .watch-cols>span:last-child,.app:not(.app-phone) .row-spread{display:none}.app:not(.app-phone) .equity-strip{gap:12px}}@media(max-width:1100px){.app:not(.app-phone) .topbar{height:auto;flex-wrap:wrap;row-gap:6px;padding-block:6px}.app:not(.app-phone) .topbar-right{flex-basis:100%;margin-left:0;flex-wrap:wrap;row-gap:6px}.app:not(.app-phone) .topbar-right .conn{margin-left:auto}.app:not(.app-phone) .topbar .btn-tiny{white-space:nowrap}}@media(max-width:980px){.app:not(.app-phone) .body{grid-template-columns:var(--watch) minmax(0,1fr);grid-template-rows:minmax(640px,1fr) auto;overflow-y:auto}.app:not(.app-phone) .rail{grid-column:1 / -1;border-left:0;border-top:1px solid var(--line);flex-direction:row;align-items:flex-start;gap:24px;overflow-x:auto}.app:not(.app-phone) .ticket{min-width:260px}.app:not(.app-phone) .rules-compact{border-top:0;padding-top:0;min-width:260px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.topbar{height:auto;flex-wrap:wrap;gap:10px;padding:8px 12px}.topbar-right{width:100%;margin-left:0;justify-content:space-between;gap:10px}.equity-strip{gap:14px}.body{display:block;overflow-y:auto;-webkit-overflow-scrolling:touch}.main{overflow:visible;border-right:0}.watchlist{border-right:0;border-bottom:1px solid var(--line);max-height:210px}.chart-holder{height:320px;flex:none}.positions{max-height:none}.rail{overflow:visible}.watch-cols{display:none}.chart-head{gap:12px;padding:8px 12px}.prices{gap:14px}.tfs{width:100%;margin-left:0;overflow-x:auto}.positions{max-height:44%}.chart-positions{max-width:calc(100% - 20px)}.field-pair,.sheet-actions,.ticket-actions{grid-template-columns:1fr}.rail{flex-direction:column;overflow-x:visible}.history-filters label{flex:1 1 140px}}.px-bid,.px-ask{font-variant-numeric:tabular-nums;font-size:11.5px;text-align:right;white-space:nowrap}.px-bid{color:var(--mute)}.px-ask{color:var(--text)}.risk-line{margin:8px 0 0;padding:8px 10px;border-radius:6px;border:1px solid var(--line);background:var(--surface);font-size:11.5px;line-height:17px;color:var(--mute)}.risk-line strong{color:var(--text);font-variant-numeric:tabular-nums}.risk-tight{border-color:var(--warn, #f0b429);background:color-mix(in srgb,var(--warn, #f0b429) 8%,transparent)}.risk-tight strong{color:var(--warn, #f0b429)}.pending-wrap{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.panel-title{margin:0 0 6px;padding:0 12px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute);font-weight:600}.panel-title .count{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:8px;background:var(--surface-raised, #131c30);color:var(--text);font-size:10px}.pending-table{width:100%;border-collapse:collapse;font-size:12px}.pending-table th{padding:4px 10px;text-align:left;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--mute);font-weight:500}.pending-table td{padding:6px 10px;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}.pending .empty{padding:10px 12px;margin:0;color:var(--mute);font-size:12px}.linkish{background:none;border:0;padding:0;color:var(--accent, #10b981);font:inherit;cursor:pointer}.linkish:hover{text-decoration:underline}.ticket-keys{margin:10px 0 4px;font-size:10.5px;color:var(--mute);text-align:center}.ticket-keys kbd{display:inline-block;padding:1px 5px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;background:var(--surface);color:var(--mute);font-family:inherit;font-size:10px}.chart-menu{margin:8px 12px 0;padding:6px;border:1px solid var(--line-strong, #334155);border-radius:8px;background:var(--surface-raised, #131c30);display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chart-menu-head{padding:0 8px;font-size:11px;color:var(--mute);font-variant-numeric:tabular-nums}.chart-menu button{padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font:inherit;font-size:11.5px;cursor:pointer}.chart-menu button:hover{border-color:var(--accent, #10b981)}.chart-menu-close{margin-left:auto;color:var(--mute)!important}.row-spread-unit{display:none}.row-spread{min-width:26px}.osc-stack{display:flex;flex-direction:column;flex:0 0 auto;max-height:42%;min-height:0;overflow:hidden}.osc-pane{position:relative;flex:1 1 118px;min-height:62px;border-top:1px solid var(--line);background:var(--bg)}.osc-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.osc-head{position:absolute;inset:4px auto auto 8px;z-index:2;display:flex;gap:8px;align-items:center;font:500 10px/1 IBM Plex Mono,ui-monospace,monospace;padding:3px 5px;border-radius:4px;background:#0b0e14c7;color:var(--dim)}.osc-name{color:var(--text);letter-spacing:.02em}.osc-value{color:var(--accent)}.osc-remove{border:0;background:none;color:var(--mute);cursor:pointer;font-size:13px;line-height:1;padding:0 2px}.osc-remove:hover{color:var(--sell)}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000073;display:flex;justify-content:flex-end}.drawer{width:min(420px,100%);height:100%;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--line);box-shadow:-18px 0 40px #00000059}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line)}.drawer-head h2{font:600 13px/1 IBM Plex Sans,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--text)}.drawer-close{min-width:32px;min-height:32px;border:0;border-radius:6px;background:none;color:var(--dim);font-size:20px;line-height:1;cursor:pointer}.drawer-close:hover{color:var(--text)}.drawer-tabs{display:flex;border-bottom:1px solid var(--line)}.drawer-tabs button{flex:1;padding:10px 8px;border:0;border-bottom:2px solid transparent;background:none;color:var(--dim);font:500 11px/1 IBM Plex Sans,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.drawer-tabs button.is-on{color:var(--text);border-bottom-color:var(--accent)}.drawer-body{flex:1;overflow-y:auto;padding:4px 16px 24px}.drawer-group{padding:16px 0;border-bottom:1px solid var(--surface-2)}.drawer-group:last-child{border-bottom:0}.drawer-group h3{font:600 10px/1 IBM Plex Mono,ui-monospace,monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--mute);margin-bottom:10px}.drawer-group.is-danger h3{color:var(--warn)}.drawer-group .hint{font:400 11px/1.5 IBM Plex Sans,system-ui,sans-serif;color:var(--mute);margin-top:8px}.drawer-group .hint.warn{color:var(--warn)}.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.seg.seg-3{grid-template-columns:repeat(3,1fr)}.seg button{padding:7px 4px;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);color:var(--dim);font:500 10px/1.2 IBM Plex Sans,system-ui,sans-serif;cursor:pointer}.seg button.is-on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface-2));color:var(--text)}.sw{display:flex;gap:10px;align-items:flex-start;padding:7px 0;cursor:pointer}.sw.is-disabled{opacity:.45;cursor:not-allowed}.sw input{position:absolute;width:1px;height:1px;opacity:0}.sw-track{flex:0 0 auto;width:30px;height:17px;margin-top:1px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);position:relative;transition:background .12s ease,border-color .12s ease}.sw-dot{position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:var(--mute);transition:transform .12s ease,background .12s ease}.sw input:checked+.sw-track{background:color-mix(in srgb,var(--accent) 28%,var(--surface-2));border-color:var(--accent)}.sw input:checked+.sw-track .sw-dot{transform:translate(13px);background:var(--accent)}.sw input:focus-visible+.sw-track{outline:2px solid var(--accent);outline-offset:2px}.sw-text{display:flex;flex-direction:column;gap:2px}.sw-label{font:500 12px/1.3 IBM Plex Sans,system-ui,sans-serif;color:var(--text)}.sw-hint{font:400 10.5px/1.45 IBM Plex Sans,system-ui,sans-serif;color:var(--mute)}.drawer-num{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 0}.drawer-num span{font:500 11.5px/1.3 IBM Plex Sans,system-ui,sans-serif;color:var(--dim)}.drawer-num input{width:88px;padding:6px 8px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--text);font:500 12px/1 IBM Plex Mono,ui-monospace,monospace;text-align:right}.drawer-num input:focus{outline:none;border-color:var(--accent)}.arm{display:flex;gap:9px;align-items:flex-start;margin-top:10px;padding:10px;border:1px solid color-mix(in srgb,var(--warn) 40%,var(--line));border-radius:5px;background:color-mix(in srgb,var(--warn) 7%,transparent);cursor:pointer}.arm input{margin-top:1px;accent-color:var(--warn);flex:0 0 auto}.arm span{font:400 11px/1.5 IBM Plex Sans,system-ui,sans-serif;color:var(--dim)}.ind-add{display:grid;grid-template-columns:1fr 1fr;gap:5px}.ind-add button{padding:8px;border:1px solid var(--line);border-radius:4px;background:var(--surface-2);color:var(--text);font:500 11px/1.2 IBM Plex Sans,system-ui,sans-serif;text-align:left;cursor:pointer}.ind-add button:hover:not(:disabled){border-color:var(--accent)}.ind-add button:disabled{opacity:.4;cursor:not-allowed}.ind-row{border:1px solid var(--line);border-radius:5px;margin-bottom:8px;background:var(--bg)}.ind-row-head{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--surface-2)}.ind-swatch{width:9px;height:9px;border-radius:2px;flex:0 0 auto}.ind-name{font:500 11.5px/1 IBM Plex Mono,ui-monospace,monospace;color:var(--text)}.ind-where{margin-left:auto;font:400 9.5px/1 IBM Plex Sans,system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;color:var(--mute)}.ind-remove{border:0;background:none;color:var(--mute);font-size:15px;line-height:1;cursor:pointer;padding:0 2px}.ind-remove:hover{color:var(--sell)}.ind-row-body{display:flex;flex-wrap:wrap;gap:4px 14px;padding:6px 10px 10px}.ind-row-body .drawer-num{flex:0 0 auto}.ind-row-body .drawer-num input{width:62px}.ind-colour{display:flex;align-items:center;gap:7px;margin-left:auto}.ind-colour span{font:500 11.5px/1 IBM Plex Sans,system-ui,sans-serif;color:var(--dim)}.ind-colour input{width:26px;height:22px;padding:0;border:1px solid var(--line);border-radius:3px;background:none;cursor:pointer}.ticket-oneclick{margin:8px 0 -2px;padding:5px 8px;border:1px solid color-mix(in srgb,var(--warn) 45%,var(--line));border-radius:4px;background:color-mix(in srgb,var(--warn) 9%,transparent);color:var(--warn);font:500 10.5px/1.4 IBM Plex Sans,system-ui,sans-serif}.ticket-actions.is-oneclick .btn-buy,.ticket-actions.is-oneclick .btn-sell{box-shadow:inset 0 0 0 1px var(--warn)}.day-breaks{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.day-break{position:absolute;top:0;bottom:26px;width:0;border-left:1px dashed color-mix(in srgb,var(--accent) 42%,transparent)}.bar-countdown{position:absolute;top:8px;right:12px;z-index:2;padding:3px 7px;border:1px solid var(--line);border-radius:4px;background:#0b0e14d1;color:var(--dim);font:500 11px/1 IBM Plex Mono,ui-monospace,monospace;pointer-events:none}.bar-countdown .is-soon{color:var(--accent)}.mark-tip{position:absolute;z-index:6;min-width:208px;max-width:280px;padding:8px 10px;border:1px solid var(--line);border-radius:5px;background:#131720f7;box-shadow:0 8px 24px #00000073;pointer-events:none}.mark-tip .tt-head{font:600 11px/1.3 IBM Plex Mono,ui-monospace,monospace;letter-spacing:.02em;padding-bottom:6px;margin-bottom:5px;border-bottom:1px solid var(--surface-2)}.mark-tip .tt-head.is-buy{color:var(--buy)}.mark-tip .tt-head.is-sell{color:var(--sell)}.mark-tip .tt-row{display:flex;justify-content:space-between;gap:14px;padding:2px 0}.mark-tip .tt-k{font:400 10.5px/1.4 IBM Plex Sans,system-ui,sans-serif;color:var(--mute);white-space:nowrap}.mark-tip .tt-v{font:500 11px/1.4 IBM Plex Mono,ui-monospace,monospace;color:var(--text);text-align:right}.mark-tip .tt-row.is-pos .tt-v{color:var(--buy)}.mark-tip .tt-row.is-neg .tt-v{color:var(--sell)}.stepper{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:5px;background:var(--bg);overflow:hidden}.stepper:focus-within{border-color:var(--accent)}.stepper input{flex:1;min-width:0;border:0;background:none;padding:9px 10px;color:var(--text);font:500 13px/1 IBM Plex Mono,ui-monospace,monospace}.stepper input:focus{outline:none}.stepper-arrows{display:flex;flex-direction:column;border-left:1px solid var(--line)}.stepper-arrows button{flex:1;width:26px;border:0;background:var(--surface-2);color:var(--dim);font-size:8px;line-height:1;cursor:pointer;padding:0}.stepper-arrows button:first-child{border-bottom:1px solid var(--line)}.stepper-arrows button:hover{background:var(--line);color:var(--text)}.chart-zoom{position:absolute;right:82px;bottom:34px;z-index:3;display:flex;gap:2px;opacity:.35;transition:opacity .12s ease}.chart-holder:hover .chart-zoom,.chart-zoom:focus-within{opacity:1}.chart-zoom button{width:24px;height:24px;padding:0;border:1px solid var(--line);border-radius:4px;background:#131720eb;color:var(--dim);font:500 13px/1 IBM Plex Sans,system-ui,sans-serif;cursor:pointer}.chart-zoom button:hover{border-color:var(--accent);color:var(--text)}.chart-zoom button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.drawer-foot{flex:0 0 auto;padding:10px 16px 12px;border-top:1px solid var(--line);font:400 10px/1.5 IBM Plex Sans,system-ui,sans-serif;color:var(--mute)}.drawer-foot a{color:var(--dim);text-decoration:underline;text-underline-offset:2px}.drawer-foot a:hover{color:var(--text)}:root{--m3-surface: var(--bg);--m3-surface-lowest: color-mix(in srgb, var(--bg) 96%, #000);--m3-surface-low: color-mix(in srgb, var(--bg) 94%, var(--accent) 6%);--m3-surface-container: color-mix(in srgb, var(--bg) 90%, var(--accent) 10%);--m3-surface-high: color-mix(in srgb, var(--bg) 86%, var(--accent) 14%);--m3-surface-highest: color-mix(in srgb, var(--bg) 82%, var(--accent) 18%);--m3-on-surface: var(--text);--m3-on-surface-variant: var(--dim);--m3-outline: color-mix(in srgb, var(--dim) 45%, transparent);--m3-outline-variant: color-mix(in srgb, var(--dim) 22%, transparent);--m3-primary: var(--accent);--m3-on-primary: #14161c;--m3-primary-container: color-mix(in srgb, var(--accent) 26%, var(--bg));--m3-on-primary-container: color-mix(in srgb, var(--accent) 88%, #fff);--m3-shape-xs: 4px;--m3-shape-s: 8px;--m3-shape-m: 12px;--m3-shape-l: 16px;--m3-shape-xl: 28px;--m3-state-hover: .08;--m3-state-focus: .1;--m3-state-press: .12;--m3-ease: cubic-bezier(.2, 0, 0, 1);--m3-ease-accel: cubic-bezier(.3, 0, 1, 1);--m3-dur-short: .15s;--m3-dur-medium: .25s;--m3-dur-long: .4s;--m3-touch: 48px;--m3-nav-h: 68px;--m3-safe-b: env(safe-area-inset-bottom, 0px)}@media(max-width:720px),(max-height:500px)and (pointer:coarse){html,body{background:var(--m3-surface);overscroll-behavior-y:contain}body{-webkit-tap-highlight-color:transparent}button,.views button,.tfs button,nav,.topbar,.panel-head,th{-webkit-user-select:none;user-select:none}button,a[role=button],select,input[type=checkbox],input[type=color]{position:relative}button:after,select:after,input[type=checkbox]:after{content:"";position:absolute;top:50%;left:50%;width:max(100%,var(--m3-touch));height:max(100%,var(--m3-touch));transform:translate(-50%,-50%);border-radius:inherit}.btn-buy,.btn-sell,.btn-primary,.btn-danger,.btn-plain,.ticket-types button,.login-tabs button,input[type=text],input[type=email],input[type=password],input[type=number],select{min-height:var(--m3-touch)}button:active{background-image:linear-gradient(currentColor 0 0);background-blend-mode:overlay}.topbar{height:auto;min-height:56px;flex-wrap:wrap;gap:6px 10px;padding:calc(env(safe-area-inset-top,0px) + 6px) 10px 6px;background:var(--m3-surface-container);border-bottom:0}.brand{gap:8px}.brand .mark{width:26px;height:26px}.topbar .btn-tiny{min-height:40px;padding-inline:12px}.conn{font-size:11px}.brand .name{font-size:16px;letter-spacing:0}.topbar-right{width:100%;margin-left:0;gap:8px;flex-wrap:wrap;justify-content:space-between}.equity-strip{order:2;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 10px;padding:7px 10px;border-radius:var(--m3-shape-m);background:var(--m3-surface-high)}.equity-strip dt{font-size:9.5px;letter-spacing:.05em}.equity-strip dd{font-size:13px;font-variant-numeric:tabular-nums}.acct-switch{order:1;flex:1 1 100%;min-width:0}.acct-switch select{width:100%;min-height:40px;padding-block:6px;border-radius:var(--m3-shape-s);background:var(--m3-surface-high);border-color:var(--m3-outline-variant)}.views{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;gap:0;height:calc(var(--m3-nav-h) + var(--m3-safe-b));padding-bottom:var(--m3-safe-b);background:var(--m3-surface-container);border-top:1px solid var(--m3-outline-variant)}.views button{flex:1;display:flex;align-items:center;justify-content:center;min-height:var(--m3-touch);border-radius:0;font-size:13px;letter-spacing:.01em;color:var(--m3-on-surface-variant);padding:10px 4px}.views button.on{color:var(--m3-on-primary-container);background:none;font-weight:600}.views button.on:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(84px,78%);height:34px;border-radius:999px;background:var(--m3-primary-container);z-index:-1}.views button:after{display:none}.app{height:100dvh;padding-bottom:calc(var(--m3-nav-h) + var(--m3-safe-b))}.body{display:block;overflow-y:auto;padding:8px 8px 12px;background:var(--m3-surface)}.watchlist,.main,.positions,.ticket,.rules-compact,.pending,.history-view{border:0;border-radius:var(--m3-shape-l);background:var(--m3-surface-low);margin-bottom:8px;overflow:hidden}.main{background:none;border-radius:0;margin-bottom:0;overflow:visible}.chart-head,.panel-head{background:var(--m3-surface-low);border-bottom:1px solid var(--m3-outline-variant)}.chart-holder{height:340px;flex:none;border-radius:var(--m3-shape-l);overflow:hidden;background:var(--m3-surface-lowest)}.chart{border-radius:0}.osc-stack{max-height:220px}.chart-zoom{opacity:1;gap:6px;right:76px;bottom:34px}.chart-pos{padding:6px 8px;border-radius:var(--m3-shape-s)}.chart-pos-close{min-height:32px;padding-inline:12px;border-radius:var(--m3-shape-s)}.chart-zoom button{width:40px;height:40px;border-radius:var(--m3-shape-m);background:color-mix(in srgb,var(--m3-surface-highest) 92%,transparent);font-size:16px}.watchlist{max-height:260px}.watchlist .row{min-height:var(--m3-touch);align-items:center;padding-block:6px}.watchlist{--wl-cols: 40px minmax(0, 1fr) 56px 56px 26px}.row-pin{width:40px;color:var(--mute);font-size:15px}.row-pin:after{display:none}.watch-cols{display:grid}.watch-search input{min-height:var(--m3-touch);border-radius:var(--m3-shape-s);background:var(--m3-surface-high);font-size:16px}.positions{max-height:none}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.pos-table,.pending-table{min-width:640px}.mscreen .pending-table{min-width:0}.pos-table th:first-child,.pos-table td:first-child{position:sticky;left:0;z-index:1;background:var(--m3-surface-low)}.pos-table td,.pending-table td{padding-block:12px}.pos-actions{gap:6px}.tfs{gap:6px;padding-block:4px}.tfs button{min-height:40px;min-width:52px;border-radius:999px;background:var(--m3-surface-high);border-color:transparent}.tfs button.on{background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.btn-tiny{min-height:40px;padding-inline:14px;border-radius:var(--m3-shape-s)}.topbar .btn-tiny{min-height:var(--m3-touch)}.pos-actions .btn-tiny,.pending-table .btn-tiny{min-height:36px;padding-inline:10px}.ticket{padding:12px}.ticket-actions{grid-template-columns:1fr 1fr;gap:10px}.btn-buy,.btn-sell{min-height:56px;border-radius:var(--m3-shape-l);font-size:15px}.volume-input{grid-template-columns:var(--m3-touch) 1fr var(--m3-touch)}.volume-input button{width:var(--m3-touch);height:var(--m3-touch)}.volume-input input,.field input,.stepper input{min-height:var(--m3-touch);font-size:16px}.stepper-arrows button{width:40px;min-height:30px}.deviation{gap:6px}.deviation button{min-height:40px;flex:1;border-radius:999px;background:var(--m3-surface-high);border-color:transparent}.deviation button.on{background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.ticket-keys{display:none}.sheet-backdrop,.drawer-scrim{align-items:flex-end;justify-content:stretch;background:color-mix(in srgb,#000 62%,transparent);padding:0}.sheet,.drawer{width:100%;max-width:none;max-height:88vh;max-height:88dvh;border:0;border-radius:var(--m3-shape-xl) var(--m3-shape-xl) 0 0;background:var(--m3-surface-container);padding-bottom:calc(var(--m3-safe-b) + 12px);animation:m3-sheet-in var(--m3-dur-medium) var(--m3-ease)}.sheet:before,.drawer:before{content:"";display:block;width:32px;height:4px;margin:12px auto 8px;border-radius:999px;background:var(--m3-outline);opacity:.4}.drawer{height:88vh;height:88dvh;border-left:0}@keyframes m3-sheet-in{0%{transform:translateY(12%);opacity:0}to{transform:translateY(0);opacity:1}}.sheet-actions{grid-template-columns:1fr 1fr;gap:10px}.sheet .sheet-actions{position:sticky;bottom:var(--m3-safe-b);margin-top:6px;padding:8px 0 4px;background:var(--m3-surface-container)}.drawer-tabs button{min-height:var(--m3-touch)}.rules-compact{padding:12px}.rail{display:block;overflow:visible;padding:0;background:none;border:0}.toasts{left:8px;right:8px;bottom:calc(var(--m3-nav-h) + var(--m3-safe-b) + 8px);top:auto}.toast{border-radius:var(--m3-shape-m);background:var(--m3-surface-highest)}.login-card{border-radius:var(--m3-shape-xl);background:var(--m3-surface-container);border:0;padding:20px}}@media(hover:none){.views button:hover,.tfs button:hover,.ticket-types button:hover,.deviation button:hover,.btn-tiny:hover:not(:disabled),.ind-add button:hover:not(:disabled),.chart-zoom button:hover,.stepper-arrows button:hover,.watchlist .row:hover{background:inherit;color:inherit;border-color:inherit}.tfs button.on,.deviation button.on{background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.views button.on{color:var(--m3-on-primary-container)}}@media(prefers-reduced-motion:reduce){.sheet,.drawer{animation:none}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.app-phone{padding-bottom:calc(var(--m3-nav-h) + var(--m3-safe-b))}.mtopbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:calc(env(safe-area-inset-top,0px) + 8px) 14px 8px;background:var(--m3-surface);border-bottom:1px solid var(--m3-outline-variant)}.mtopbar .brand .name{font-size:17px;font-weight:700;letter-spacing:-.01em}.mchip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--m3-outline-variant);background:var(--m3-surface-container);color:var(--m3-on-surface-variant);font-size:12px;white-space:nowrap}.mchip .dot{width:7px;height:7px;border-radius:50%;background:var(--buy)}.mchip.conn-reconnecting .dot,.mchip.conn-connecting .dot{background:var(--warn)}.mchip.conn-offline .dot{background:var(--sell)}.mbody{flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;background:var(--m3-surface)}.mscreen{display:flex;flex-direction:column;min-height:100%}.mscreen-quotes .watchlist{flex:1;max-height:none;margin:0;border-radius:0;background:var(--m3-surface)}.mscreen-quotes .watch-head{display:none}.mequity{padding:10px 14px;background:var(--m3-surface-low);border-bottom:1px solid var(--m3-outline-variant)}.mequity-label{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--m3-on-surface-variant)}.mequity-value{font:600 20px/1.1 IBM Plex Mono,ui-monospace,monospace;font-size:min(20px,4.6vw);font-variant-numeric:tabular-nums;color:var(--m3-on-surface);overflow-wrap:anywhere}.mequity-free{font:500 13px/1.1 IBM Plex Mono,ui-monospace,monospace;font-size:min(13px,3.5vw);font-variant-numeric:tabular-nums;color:var(--m3-on-surface);overflow-wrap:anywhere}.mequity-bar{height:4px;margin-top:8px;border-radius:999px;background:var(--m3-surface-highest);overflow:hidden}.mequity-bar span{display:block;height:100%;border-radius:999px;background:var(--buy)}.mequity-bar span.is-tight{background:var(--sell)}.mequity-daily{display:block;margin-top:5px;font-size:11px;color:var(--m3-on-surface-variant);font-variant-numeric:tabular-nums}.msym{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;padding:12px 14px 6px}.msym-name{font-size:17px;font-weight:700}.msym-desc{font-size:11px;color:var(--m3-on-surface-variant);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.msym-px{margin-left:auto;display:flex;gap:10px;font:600 15px/1 IBM Plex Mono,ui-monospace,monospace;font-size:min(15px,4vw);font-variant-numeric:tabular-nums}.msym-bid{color:var(--sell)}.msym-ask{color:var(--buy)}.mscreen .tfs{padding:4px 14px 10px;overflow-x:auto;scrollbar-width:none}.mscreen .tfs::-webkit-scrollbar{display:none}.mscreen .chart-holder{height:300px;margin:0 14px;border-radius:var(--m3-shape-m)}.mscreen-chart:not(.is-full)>.chart-holder{flex:1 0 220px;height:auto}.mscreen-chart:not(.is-full)>.mtrade{margin-bottom:12px}.mscreen .positions,.mscreen .pending-wrap{margin:12px 14px;border-radius:var(--m3-shape-l);background:var(--m3-surface-low)}.mscreen-trade .empty{padding:40px 20px;text-align:center;color:var(--m3-on-surface-variant)}.mscreen-trade .empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}.mscreen-account{padding:14px 14px 20px;gap:0}.macct-hero{display:flex;flex-direction:column;gap:4px;padding:16px;border-radius:var(--m3-shape-l);background:var(--m3-surface-container)}.macct-badge{align-self:flex-start;padding:5px 11px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}.macct-meta{margin-top:6px;font-size:12px;color:var(--m3-on-surface-variant)}.macct-equity{font:700 30px/1.1 IBM Plex Mono,ui-monospace,monospace;font-size:min(30px,7.6vw);font-variant-numeric:tabular-nums;color:var(--m3-on-surface);overflow-wrap:anywhere}.macct-pl{font-size:13px;font-variant-numeric:tabular-nums}.macct-pl.pos{color:var(--buy)}.macct-pl.neg{color:var(--sell)}.macct-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.mstat{min-width:0;display:flex;flex-direction:column;gap:4px;padding:13px 14px;border-radius:var(--m3-shape-m);background:var(--m3-surface-low)}.mstat-label{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--m3-on-surface-variant)}.mstat-value{font:600 19px/1.1 IBM Plex Mono,ui-monospace,monospace;font-size:min(19px,4.6vw);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.msection{margin:22px 0 10px;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--m3-on-surface-variant)}.mscreen-account .rules{padding:0;background:none;border:0}.mrows{border-radius:var(--m3-shape-l);background:var(--m3-surface-low);overflow:hidden}.mrow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:56px;padding:0 16px;border:0;border-bottom:1px solid var(--m3-outline-variant);background:none;color:var(--m3-on-surface);font:inherit;font-size:14px;text-align:left;cursor:pointer}.mrow:last-child{border-bottom:0}.mrow select{flex:1;max-width:62%;min-height:40px;border:0;background:none;color:var(--m3-on-surface-variant);text-align:right;font:inherit;font-size:13px}.mrow-go{color:var(--m3-on-surface-variant);font-size:20px;line-height:1}.mnav{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;height:calc(var(--m3-nav-h) + var(--m3-safe-b));padding-bottom:var(--m3-safe-b);background:var(--m3-surface-container);border-top:1px solid var(--m3-outline-variant)}.mnav button{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:var(--m3-touch);padding:6px 2px;border:0;background:none;color:var(--m3-on-surface-variant);font:inherit;font-size:11px;cursor:pointer}.mnav button:after{display:none}.mnav-icon{position:relative;display:flex;align-items:center;justify-content:center;width:56px;height:30px;border-radius:999px;transition:background var(--m3-dur-short) var(--m3-ease)}.mnav-icon svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mnav button.is-on{color:var(--accent)}.mnav button.is-on .mnav-icon{background:color-mix(in srgb,var(--accent) 20%,transparent)}.mnav-label{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mnav button.is-on .mnav-label{font-weight:600}.mnav-badge{position:absolute;top:-2px;right:8px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--sell);color:#fff;font-size:10px;font-weight:700;line-height:17px;text-align:center}.chart-menu-sheet{display:flex;flex-direction:column;padding:0 14px calc(var(--m3-safe-b) + 14px)}.chart-menu-sheet .chart-menu-head{padding:4px 4px 10px;font-size:12px;color:var(--m3-on-surface-variant)}.chart-menu-sheet button{min-height:52px;margin-bottom:8px;border:0;border-radius:var(--m3-shape-m);background:var(--m3-surface-high);color:var(--m3-on-surface);font:inherit;font-size:14px;cursor:pointer}.chart-menu-sheet .chart-menu-close{background:none;color:var(--m3-on-surface-variant)}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.mscreen .table-scroll{overflow-x:visible}.mscreen .pos-table{min-width:0;display:block}.mscreen .pos-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.mscreen .pos-table tbody{display:block}.mscreen .pos-table tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;margin:0 0 8px;padding:12px 14px;border-radius:var(--m3-shape-m);background:var(--m3-surface)}.mscreen .pos-table td{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:3px 0;border:0}.mscreen .pos-table td:before{content:attr(data-label);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--m3-on-surface-variant)}.mscreen .pos-table td[data-label=Symbol],.mscreen .pos-table td[data-label=Side]{grid-column:span 1;font-size:15px;font-weight:600}.mscreen .pos-table td[data-label=Symbol]:before,.mscreen .pos-table td[data-label=Side]:before{display:none}.mscreen .pos-table td[data-label=Side]{justify-content:flex-end}.mscreen .pos-table td:first-child{position:static;background:none}.mscreen .pos-table td.pos-actions:has(button){grid-column:1 / -1;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-top:6px}.mscreen .pos-table td.pos-actions:not(:has(button)){padding:3px 0}.mscreen .pos-table td.pos-actions:before{display:none}.mscreen .pos-table td.pos-actions .btn-tiny{flex:1;min-height:40px}.mscreen .pos-table td.pos-actions .pts{flex:1;display:flex;justify-content:space-between;font-size:11px;color:var(--m3-on-surface-variant)}.mscreen .pos-table td.pos-actions:has(button) .pts{flex:0 0 100%;order:-1}.mscreen .pos-table td.pos-actions .pts:before{content:"Points";font-size:10px;letter-spacing:.06em;text-transform:uppercase}.mscreen .pending-table{display:block}.mscreen .pending-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.mscreen .pending-table tbody{display:block}.mscreen .pending-table tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;margin:0 0 8px;padding:12px 14px;border-radius:var(--m3-shape-m);background:var(--m3-surface)}.mscreen .pending-table td{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:3px 0;border:0}.mscreen .pending-table td:before{content:attr(data-label);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--m3-on-surface-variant)}.mscreen .pending-table td[data-label=Symbol],.mscreen .pending-table td[data-label=Order]{font-size:15px;font-weight:600}.mscreen .pending-table td[data-label=Symbol]:before,.mscreen .pending-table td[data-label=Order]:before{display:none}.mscreen .pending-table td[data-label=Order]{justify-content:flex-end}.mscreen .pending-table td.pending-actions{grid-column:1 / -1;margin-top:6px}.mscreen .pending-table td.pending-actions:before{display:none}.mscreen .pending-table td.pending-actions .btn-tiny{flex:1;min-height:40px}.mscreen .chart-positions{display:none}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.mscreen .history{padding:12px 14px}.mscreen .history-filters{gap:10px}.mscreen .history-filters label{flex:1 1 140px}.mscreen .history-filters input,.mscreen .history-filters select{min-height:var(--m3-touch);border-radius:var(--m3-shape-s);background:var(--m3-surface-high);font-size:16px}.mscreen .history .btn-tiny{min-height:40px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.watch-hint{margin:0;padding:0 14px 8px;font-size:11px;color:var(--m3-on-surface-variant)}.mscreen-quotes .watch-rows .row,.mscreen .pos-table tbody tr{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.mscreen-quotes .watch-rows .row:active,.mscreen .pos-table tbody tr.row-holdable:active{background:color-mix(in srgb,var(--m3-on-surface) 12%,var(--m3-surface))}.mscreen-chart.is-full{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;display:flex;flex-direction:column;min-height:0;padding-bottom:var(--m3-safe-b);background:var(--m3-surface)}.mscreen-chart.is-full .chart-holder{flex:1;height:auto;min-height:0;margin:0;border-radius:0}.chart-expand{position:absolute;top:8px;left:8px;z-index:3}.chart-expand button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:var(--m3-shape-m);background:color-mix(in srgb,var(--m3-surface-highest) 92%,transparent);color:var(--m3-on-surface-variant)}.chart-expand svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.mtrade{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;margin:10px 14px 0}.mscreen-chart.is-full .mtrade{margin:10px 14px}.mtrade>button{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:8px 10px;border:0;border-radius:var(--m3-shape-m);color:#10131a;font-family:IBM Plex Sans,system-ui,sans-serif}.mtrade-sell{background:var(--sell)}.mtrade-buy{background:var(--buy)}.mtrade>button:disabled{opacity:.45}.mtrade-side{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.mtrade-px{font:700 17px/1 IBM Plex Mono,ui-monospace,monospace;font-size:min(17px,4.5vw);font-variant-numeric:tabular-nums}.mtrade-vol{display:flex;align-items:center;gap:2px;border-radius:var(--m3-shape-m);background:var(--m3-surface-high)}.mtrade-vol button{width:var(--m3-touch);min-height:56px;padding:0;border:0;background:none;color:var(--m3-on-surface);font-size:20px}.mtrade-lots{width:min(64px,17vw);min-width:0;border:0;border-radius:var(--m3-shape-s);background:none;padding:0;text-align:center;color:var(--m3-on-surface);font:600 16px/1 IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.mtrade-lots:focus{outline:2px solid var(--m3-primary);outline-offset:1px;background:var(--m3-surface)}.mtrade-lots::-webkit-outer-spin-button,.mtrade-lots::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.mtrade-lots[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.mtrade-note{margin:6px 14px 0;font-size:11px;color:var(--m3-on-surface-variant)}.mtrade-note.is-warn{color:var(--sell)}.mscreen .osc-stack{margin-top:16px}.mscreen .osc-remove{width:40px;height:40px;font-size:18px}.mequity-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mequity-fig{min-width:0;display:flex;flex-direction:column;gap:2px}.mequity-fig:nth-child(2){align-items:center}.mequity-fig:nth-child(3){align-items:flex-end}.mscreen .panel-head{flex-wrap:wrap;gap:6px 10px}.mscreen .floating-total{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-left:auto}.panel-hint{margin:0;padding:0 14px 8px;font-size:11px;color:var(--m3-on-surface-variant)}.pos-closing{font-size:12px;color:var(--m3-on-surface-variant)}.ticket-sheet{max-height:92vh;max-height:92dvh;overflow-y:auto}.ticket-sheet .sheet-actions{grid-template-columns:1fr}.ticket-sheet-head{display:flex;align-items:baseline;gap:8px;margin:0;padding:0 14px 6px;font-size:17px;font-weight:700}.ticket-sheet-head span{font-size:12px;font-weight:400;color:var(--m3-on-surface-variant)}.ticket-sheet .ticket{margin:0;border:0;border-radius:0;background:none;padding:4px 14px 0}.ticket-sheet .ticket-keys{display:none}.position-sheet h2{margin:4px 14px 10px;font-size:17px}.position-sheet .confirm-rows{margin:0 14px 12px}.position-sheet .sheet-actions{grid-template-columns:1fr}.sheet-menu{display:flex;flex-direction:column;gap:8px;padding:0 14px}.sheet-menu>button{min-height:var(--m3-touch);width:100%;border-radius:var(--m3-shape-m);font-size:15px}.partial-box{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:var(--m3-shape-m);background:var(--m3-surface-high)}.partial-chips{display:flex;gap:8px}.partial-chips button{flex:1;min-height:40px;border:1px solid var(--m3-outline);border-radius:999px;background:none;color:var(--m3-on-surface);font-size:14px}.partial-chips button.on{border-color:transparent;background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.partial-box .volume-input button,.partial-box .btn-primary{min-height:var(--m3-touch)}.partial-box .field-hint{margin:0;text-align:center}.history-bar{display:flex;align-items:center;gap:8px;padding-bottom:10px}.hfilter{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid var(--m3-outline);border-radius:999px;background:none;color:var(--m3-on-surface);font-size:14px}.hfilter svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.hfilter.on{border-color:transparent;background:var(--m3-primary-container);color:var(--m3-on-primary-container)}.hfilter-count{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--m3-primary);color:var(--m3-on-primary);font-size:11px;font-weight:700}.hfilter-clear{min-height:40px}.history-filters[hidden]{display:none}.history-compact .history-filters{margin-bottom:12px;padding:12px;border-radius:var(--m3-shape-m);background:var(--m3-surface-low)}.history-compact .history-totals{margin-bottom:10px;font-size:12px}.hlist{display:flex;flex-direction:column;gap:8px}.hrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;width:100%;min-height:var(--m3-touch);padding:12px 14px;border:0;border-radius:var(--m3-shape-m);background:var(--m3-surface-low);text-align:left;color:var(--m3-on-surface)}.hrow-main{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 8px;min-width:0;font-size:15px;font-weight:600}.hrow-vol,.hrow-profit{font-family:IBM Plex Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.hrow-profit{grid-row:1 / span 2;grid-column:2;align-self:center;font-size:min(16px,4.3vw);font-weight:700}.hrow-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--m3-on-surface-variant)}.hrow .reason{font-size:11px}.mini-table .when-d,.mini-table .when-t{display:block;white-space:nowrap}.mini-table td,.mini-table th{padding-inline:6px}.mini-table td:first-child,.mini-table th:first-child{padding-left:0}.mini-table td:last-child,.mini-table th:last-child{padding-right:0}.hrow .partial-tag{margin-right:0;font-size:11px;align-self:center}}@media(max-width:359px){.mtrade{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"vol vol" "sell buy"}.mtrade-vol{grid-area:vol;justify-content:center}.mtrade-sell{grid-area:sell}.mtrade-buy{grid-area:buy}.mtrade-lots{min-width:64px}.macct-grid{grid-template-columns:minmax(0,1fr)}.chart-zoom{right:64px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.install-banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 12px 0;padding:10px 12px;border-radius:var(--m3-shape-m);background:var(--m3-surface-container);border:1px solid var(--m3-outline-variant)}.install-icon{flex:none;width:40px;height:40px;border-radius:10px}.install-copy{flex:1;min-width:0}.install-title{margin:0;font-size:14px;font-weight:600;color:var(--m3-on-surface)}.install-body{margin:2px 0 0;font-size:12px;line-height:1.35;color:var(--m3-on-surface-variant)}.install-share{vertical-align:-2px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.install-actions{display:flex;justify-content:flex-end;gap:8px;flex-basis:100%}.install-go,.install-later{min-height:40px;padding:0 14px;border-radius:999px;font:inherit;font-size:13px;font-weight:600}.install-go{border:0;background:var(--accent);color:#10131a}.install-later{border:0;background:none;color:var(--m3-on-surface-variant)}}@media(max-height:500px)and (pointer:coarse)and (orientation:landscape){.app-phone{--m3-rail-w: calc(80px + env(safe-area-inset-left, 0px)) ;padding-bottom:0;padding-left:var(--m3-rail-w)}.mtopbar{min-height:44px;padding-block:calc(env(safe-area-inset-top,0px) + 4px) 4px}.mnav{top:0;right:auto;bottom:0;width:var(--m3-rail-w);height:auto;flex-direction:column;justify-content:center;gap:4px;padding:8px 0 8px env(safe-area-inset-left,0px);border-top:0;border-right:1px solid var(--m3-outline-variant)}.mnav button{flex:0 0 auto;min-height:56px;padding:4px 2px}.mscreen-chart:not(.is-full){display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto minmax(180px,1fr) auto auto;height:100%;min-height:0}.mscreen-chart:not(.is-full)>*{grid-column:1 / -1}.mscreen-chart:not(.is-full)>.msym{grid-column:1;align-items:center;flex-wrap:nowrap;padding:6px 8px 6px 14px}.mscreen-chart:not(.is-full) .msym-desc{display:none}.mscreen-chart:not(.is-full)>.tfs{grid-column:2;justify-content:flex-end;padding:4px 14px 4px 0}.mscreen-chart:not(.is-full) .tfs button{min-height:36px;min-width:44px}.mscreen-chart:not(.is-full)>.chart-holder{grid-row:3;height:auto;min-height:0}.mscreen-chart:not(.is-full)>.mtrade{grid-row:4}.mscreen-chart:not(.is-full)>.osc-stack{grid-row:5}.mscreen-chart:not(.is-full) .mtrade{margin:6px 14px 8px}.mscreen-chart .mtrade>button{min-height:48px;padding-block:4px}}@media(max-width:720px),(max-height:500px)and (pointer:coarse){.breach{padding:20px 12px}.breach-card{padding:22px 18px}.breach-card h1{font-size:min(24px,calc((100vw - 62px) / 14.2));line-height:1.2;text-wrap:balance}}
