:root{--bg: #0B0E11;--surface: #161A1E;--surface2: #1E2329;--border: #2B3139;--border2: #363C45;--buy: #0ECB81;--sell: #F6465D;--accent: #F0B90B;--info: #3498DB;--t1: #EAECEF;--t2: #848E9C;--t3: #474D57;--buy-bg: rgba(14, 203, 129, .1);--sell-bg: rgba(246, 70, 93, .1);--accent-bg: rgba(240, 185, 11, .08);--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--track: .1em;--hair: 1px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--t1);font-family:var(--sans);font-size:13px;-webkit-font-smoothing:antialiased}input,button,select,textarea{border-radius:0;font:inherit}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.label{font-family:var(--mono);font-size:10px;letter-spacing:var(--track);text-transform:uppercase;color:var(--t3)}.up{color:var(--buy)}.down{color:var(--sell)}.muted{color:var(--t2)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border)}::-webkit-scrollbar-thumb:hover{background:var(--border2)}.shell{display:flex;flex-direction:column;height:100%}.topbar{display:flex;align-items:center;gap:20px;height:44px;padding:0 14px;flex:0 0 auto;border-bottom:var(--hair) solid var(--border);background:var(--surface)}.brand{font-family:var(--mono);font-size:13px;letter-spacing:var(--track);color:var(--t1);text-transform:uppercase}.nav{display:flex;gap:2px;margin-left:8px}.nav a{font-family:var(--mono);font-size:11px;letter-spacing:var(--track);text-transform:uppercase;text-decoration:none;color:var(--t2);padding:6px 12px;border:var(--hair) solid transparent}.nav a:hover{color:var(--t1)}.nav a.on{color:var(--accent);border-color:var(--border);background:var(--accent-bg)}.spacer{flex:1}.main{flex:1;overflow:auto;padding:12px}.grid{display:grid;gap:12px}.grid-2{grid-template-columns:300px 1fr}.grid-chart{grid-template-columns:1fr}@media (max-width: 1100px){.grid-2{grid-template-columns:1fr}}.panel{border:var(--hair) solid var(--border);background:var(--surface)}.panel-hd{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-bottom:var(--hair) solid var(--border);background:var(--surface2)}.panel-bd{padding:10px}.readout{display:flex;flex-direction:column;gap:3px}.readout-row{display:flex;gap:26px;flex-wrap:wrap}table.t{width:100%;border-collapse:collapse}table.t th{font-family:var(--mono);font-size:10px;letter-spacing:var(--track);text-transform:uppercase;color:var(--t3);text-align:left;padding:6px 10px;border-bottom:var(--hair) solid var(--border);font-weight:400;white-space:nowrap}table.t td{padding:5px 10px;border-bottom:var(--hair) solid var(--border);font-size:12px;white-space:nowrap}table.t tbody tr:hover{background:var(--surface2)}table.t td.num,table.t th.num{text-align:right;font-family:var(--mono)}.empty{padding:22px 10px;text-align:center;color:var(--t3);font-size:12px}.btn{font-family:var(--mono);font-size:10px;letter-spacing:var(--track);text-transform:uppercase;padding:5px 10px;cursor:pointer;border:var(--hair) solid var(--border);background:var(--surface2);color:var(--t2)}.btn:hover:not(:disabled){color:var(--t1);border-color:var(--border2)}.btn:disabled{opacity:.4;cursor:default}.btn-primary{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.btn-danger:hover:not(:disabled){color:var(--sell);border-color:var(--sell)}.srow{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-bottom:var(--hair) solid var(--border);background:none;border-left:0;border-right:0;border-top:0;cursor:pointer;text-align:left;color:var(--t1)}.srow:hover{background:var(--surface2)}.srow.on{background:var(--accent-bg)}.srow .nm{font-size:12px;flex:1;overflow:hidden;text-overflow:ellipsis}.dot{width:6px;height:6px;flex:0 0 auto}.dot.live{background:var(--buy)}.dot.off{background:var(--t3)}.login{display:grid;place-items:center;height:100%}.login .box{width:330px;border:var(--hair) solid var(--border);background:var(--surface)}.login .bd{padding:18px;display:flex;flex-direction:column;gap:10px}.in{background:var(--bg);border:var(--hair) solid var(--border);color:var(--t1);padding:9px 10px;font-family:var(--mono);font-size:12px;width:100%}.in:focus{outline:none;border-color:var(--accent)}.err{color:var(--sell);font-size:11px;font-family:var(--mono)}.btn-wide{width:100%;padding:10px;font-size:11px}.desk{display:flex;flex-direction:column;gap:10px;min-width:0}.strip{display:flex;align-items:stretch;gap:0;border:var(--hair) solid var(--border);background:var(--surface);overflow-x:auto}.strip-cell,.strip-eq{display:flex;flex-direction:column;gap:3px;padding:8px 14px;border-right:var(--hair) solid var(--border);white-space:nowrap}.strip-eq{background:var(--surface2);min-width:190px}.eq-v{font-size:22px;line-height:1.1}.eq-ccy{font-size:11px;color:var(--t2)}.strip-sp{flex:1;border-right:none}.strip-cell:last-child{border-right:none}.pulse{display:inline-block;width:6px;height:6px;background:var(--buy);margin-right:5px;vertical-align:middle;animation:pulse 2s steps(1,end) infinite}@keyframes pulse{0%,60%{opacity:1}61%,to{opacity:.25}}.warn{color:var(--accent)}.desk-main{display:grid;grid-template-columns:300px minmax(0,1fr);gap:10px;align-items:start}.desk-side,.desk-chart{display:grid;gap:10px;align-content:start;min-width:0}@media (max-width: 1100px){.desk-main{grid-template-columns:minmax(0,1fr)}}.chart-ctl{display:flex;align-items:center;gap:8px}.chart-pnl{font-size:11px}.sel{width:128px;padding:3px 6px}.tfs{display:flex;gap:2px}.tfs .btn{padding:3px 7px}.wl-row{cursor:pointer}.wl-row:hover{background:var(--surface2)}.wl-row.on{background:var(--accent-bg)}.wl-row.on td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.posnote{padding:6px 10px;font-size:11px;color:var(--t2);border-bottom:var(--hair) solid var(--border);background:var(--surface2)}.pos td,.pos th{white-space:nowrap}.armrow{display:inline-flex;gap:3px}.own{font-family:var(--mono);font-size:9px;letter-spacing:var(--track);padding:1px 4px}.own.ours{color:var(--t2);border:var(--hair) solid var(--border2)}.own.manual{color:var(--accent);border:var(--hair) solid var(--accent)}.room{position:relative;display:inline-block;width:64px;height:8px;background:var(--sell-bg);border:var(--hair) solid var(--border)}.room-fill{position:absolute;inset:0 auto 0 0;background:var(--buy-bg)}.room-entry{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--accent)}@media (min-width: 1101px){.desk-fit{height:100%;overflow:hidden}.desk-fit .desk-main,.desk-fit .desk-chart{min-height:0}.desk-fit .desk-side{max-height:100%;overflow-y:auto}}.panel-bd,.panel-body{overflow-x:auto}.pos th,.pos td{padding:5px 8px}.pos .own{font-size:9px}.wl{font-size:10px}.wl th,.wl td{padding:5px 6px}.wl th:first-child,.wl td:first-child{padding-left:10px}@media (min-width: 1101px){.desk-fit .desk-chart{height:100%;grid-template-rows:auto minmax(0,1fr)}.desk-fit .desk-chart>.panel:last-child{display:flex;flex-direction:column;min-height:0}.desk-fit .desk-chart>.panel:last-child>.panel-bd{flex:1;min-height:0;overflow-y:auto}.pos thead th{position:sticky;top:0;z-index:1;background:var(--surface2)}}.panel-bd.flush{padding:0}.pos td:last-child,.pos th:last-child{min-width:64px}.btn-arm{color:var(--bg);background:var(--sell);border:var(--hair) solid var(--sell)}
