@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2)format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2)format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2)format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2)format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2)format("woff2"),url(/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2)format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2)format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,:root[data-theme=dark]{--paper:#0f1318;--sheet:#151b22;--sheet-2:#1a222b;--sheet-3:#202a34;--rule:#273039;--rule-strong:#35414d;--grid:#1c242d;--ink:#d8dee6;--ink-2:#8d99a8;--ink-3:#5c6977;--accent:#4c8bf5;--accent-soft:#4c8bf529;--long:#26a675;--short:#e5484d;--warn:#d9a441;--long-soft:#26a67529;--short-soft:#e5484d29;--warn-soft:#d9a44129;--on-ink:#0f1318;--sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--serif:"Fraunces", Georgia, serif;--fs-0:11px;--fs-1:12.5px;--fs-2:14px;--fs-3:18px;--fs-4:26px;--radius:4px;--top-h:40px;--status-h:22px;--rail-w:40px;--right-w:340px;--blotter-h:240px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--paper:#e9ecef;--sheet:#fff;--sheet-2:#f4f6f8;--sheet-3:#eaedf1;--rule:#d9dee4;--rule-strong:#b9c2cc;--grid:#eef1f4;--ink:#1b2229;--ink-2:#5d6a78;--ink-3:#8a96a3;--accent:#2a62d6;--accent-soft:#2a62d61f;--long:#1d8a61;--short:#cc3b40;--warn:#b07a17;--long-soft:#1d8a611f;--short-soft:#cc3b401f;--warn-soft:#b07a1724;--on-ink:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:var(--fs-1);-webkit-font-smoothing:antialiased;line-height:1.4;overflow:hidden}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}.num,td,.est dd,.kv dd,.legend-ohlc,.acct-summary,.side strong,.rule-figures,.statusbar{font-variant-numeric:tabular-nums}.num{text-align:right}.muted{color:var(--ink-2)}.up{color:var(--long)}.down{color:var(--short)}.warn-text{color:var(--warn)}.wordmark{font-family:var(--serif);font-weight:500;font-size:var(--fs-4);letter-spacing:-.01em;line-height:1.1}.login{place-items:center;min-height:100%;padding:24px 16px;display:grid}.login-card{background:var(--sheet);border:1px solid var(--rule);border-radius:6px;gap:18px;width:min(420px,100%);padding:36px 32px 28px;display:grid}.login-lede{color:var(--ink-2);max-width:34ch}.login-note{color:var(--ink-3);font-size:var(--fs-0)}.field{gap:3px;min-width:0;display:grid}.field>span{color:var(--ink-2);font-size:var(--fs-0)}.field input,.field select,.search-input,.cell-input,.stepper input{background:var(--sheet-2);border:1px solid var(--rule-strong);border-radius:var(--radius);width:100%;min-width:0;color:var(--ink);padding:6px 8px}.field input:focus,.search-input:focus,.stepper input:focus{border-color:var(--accent);outline:none}.field input[aria-invalid=true]{border-color:var(--short)}.field-error,.ticket-msg.error{color:var(--short)}.btn{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--sheet-2);color:var(--ink);padding:6px 12px;line-height:1.3;text-decoration:none;display:inline-block}.btn:hover:not(:disabled){border-color:var(--ink-2)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent);padding:9px 14px}.btn.small{font-size:var(--fs-0);padding:2px 8px}.btn.big{color:#fff;border-color:#0000;width:100%;padding:10px 14px;font-weight:600}.btn.big.buy{background:var(--long)}.btn.big.sell{background:var(--short)}.seg{background:var(--sheet-2);border-radius:var(--radius);gap:2px;padding:2px;display:inline-flex}.seg.full{display:flex}.seg button{color:var(--ink-2);white-space:nowrap;border-radius:3px;flex:1;padding:4px 8px}.seg.small button{font-size:var(--fs-0);padding:2px 8px}.seg button.on{background:var(--sheet-3);color:var(--ink)}.chip{font-size:var(--fs-0);border-radius:999px;margin-left:6px;padding:0 6px;line-height:1.5}.chip-warning{background:var(--warn-soft);color:var(--warn)}.chip-breach{background:var(--short);color:#fff}.chip-met{background:var(--long);color:#fff}.count{font-size:var(--fs-0);color:var(--ink-3);margin-left:5px}.count.warn{color:var(--warn)}.pill{font-size:var(--fs-0);border:1px solid var(--rule-strong);white-space:nowrap;border-radius:999px;padding:1px 8px}.pill.status-active{border-color:var(--long);color:var(--long)}.pill.status-breached{background:var(--short);border-color:var(--short);color:#fff}.pill.status-passed{background:var(--long);border-color:var(--long);color:#fff}.stream{color:var(--ink-2);font-size:var(--fs-0);align-items:center;gap:6px;display:inline-flex}.stream i{background:var(--ink-3);border-radius:50%;width:7px;height:7px}.stream-live i{background:var(--long)}.stream-offline i{background:var(--short)}.hint{color:var(--ink-3);font-size:var(--fs-0)}.empty{color:var(--ink-2);max-width:48ch}.app{grid-template-rows:var(--top-h) minmax(0, 1fr) var(--status-h);height:100%;display:grid}.workspace{grid-template-columns:var(--rail-w) minmax(0, 1fr) var(--right-w);background:var(--rule);gap:1px;min-height:0;display:grid}.centre{background:var(--rule);grid-template-rows:minmax(0,1fr) auto;gap:1px;min-width:0;min-height:0;display:grid}.right{background:var(--rule);grid-template-rows:minmax(0,1fr) fit-content(64%);gap:1px;min-width:0;min-height:0;display:grid}.topbar{background:var(--sheet);border-bottom:1px solid var(--rule);align-items:center;gap:2px;min-width:0;padding:0 8px 0 6px;display:flex}.brand{align-items:center;margin-right:6px;display:flex}.brand-mark{font-family:var(--serif);background:var(--ink);width:28px;height:28px;color:var(--on-ink);letter-spacing:-.02em;border-radius:6px;place-items:center;font-size:15px;font-weight:600;display:grid}.tb{border-radius:var(--radius);height:28px;color:var(--ink-2);white-space:nowrap;font-size:var(--fs-1);align-items:center;gap:5px;padding:0 9px;display:inline-flex}.tb:hover{background:var(--sheet-2);color:var(--ink)}.tb.on{color:var(--ink);background:var(--sheet-3)}.tb .caret,.ticket-head .caret{color:var(--ink-3);font-size:9px}.tb-glyph{font-size:14px;line-height:1}.symbol-btn{color:var(--ink);font-weight:600;font-size:var(--fs-2)}.tb-sep{background:var(--rule);width:1px;height:20px;margin:0 4px}.intervals{gap:1px;display:inline-flex}.intervals .tb{padding:0 7px}.topbar-right{align-items:center;gap:8px;margin-left:auto;display:flex}.acct-summary{align-items:baseline;gap:8px;padding-right:6px;display:inline-flex}.acct-equity{font-weight:600;font-size:var(--fs-2)}.account-id,.account-pick{color:var(--ink-2);font-size:var(--fs-0)}.account-pick{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--sheet-2);padding:2px 6px}.menu-anchor{position:relative}.popover{background:var(--sheet);border:1px solid var(--rule-strong);z-index:30;border-radius:6px;gap:2px;min-width:200px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 24px #00000059}.popover.right{left:auto;right:0}.popover.wide{min-width:340px}.menu-item{text-align:left;color:var(--ink);border-radius:3px;justify-content:space-between;gap:12px;padding:6px 10px;display:flex}.menu-item:hover,.menu-item.on{background:var(--sheet-2)}.menu-hint{color:var(--ink-3);font-size:var(--fs-0)}.menu-section+.menu-section{border-top:1px solid var(--rule);margin-top:2px;padding-top:4px}.menu-head{color:var(--ink-3);font-size:var(--fs-0);padding:4px 10px 2px}.ind-row{align-items:center;gap:8px;padding:4px 10px;display:flex}.ind-name{flex:1}.ind-param{font-size:var(--fs-0);color:var(--ink-2);align-items:center;gap:4px;display:inline-flex}.ind-param input{background:var(--sheet-2);border:1px solid var(--rule-strong);width:54px;color:var(--ink);border-radius:3px;padding:2px 4px}.ind-remove{color:var(--ink-3);border-radius:3px;width:20px;height:20px}.ind-remove:hover{background:var(--short-soft);color:var(--short)}.rail{background:var(--sheet);flex-direction:column;align-items:center;gap:2px;padding:6px 0;display:flex;overflow:auto}.rail-btn{border-radius:var(--radius);width:30px;height:30px;color:var(--ink-2);place-items:center;display:grid}.rail-btn:hover:not(:disabled){background:var(--sheet-2);color:var(--ink)}.rail-btn.on{background:var(--accent-soft);color:var(--accent)}.rail-btn:disabled{opacity:.35;cursor:default}.rail-glyph{font-size:15px;line-height:1}.rail-sep{background:var(--rule);width:20px;height:1px;margin:4px 0}.chart{background:var(--sheet);min-width:0;min-height:0;position:relative}.chart-canvas{position:absolute;inset:0}.chart-empty{color:var(--ink-2);pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.legend{z-index:3;pointer-events:none;font-size:var(--fs-0);gap:2px;display:grid;position:absolute;top:8px;left:10px}.legend-row{white-space:nowrap;align-items:baseline;gap:10px;display:flex}.legend-symbol{font-size:var(--fs-2);color:var(--ink);font-weight:600}.legend-meta{color:var(--ink-2)}.legend-ohlc{gap:8px;display:inline-flex}.legend-ohlc i{color:var(--ink-3);margin-right:3px;font-style:normal}.legend-ind{color:var(--ink-2)}.chart-trade-buttons{pointer-events:auto;align-items:center;gap:4px;margin-top:6px;display:inline-flex}.qbtn{border-radius:var(--radius);color:#fff;justify-items:start;min-width:74px;padding:3px 8px;line-height:1.15;display:grid}.qbtn span{opacity:.85;font-size:10px}.qbtn strong{font-size:var(--fs-1);font-weight:600}.qbtn.sell{background:var(--short)}.qbtn.buy{background:var(--long);justify-items:end}.qspread{background:var(--sheet-3);color:var(--ink-2);font-size:var(--fs-0);border-radius:3px;padding:2px 6px}.dock{background:var(--sheet);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.tabs{border-bottom:1px solid var(--rule);background:var(--sheet);align-items:center;gap:2px;min-height:34px;padding:0 8px;display:flex}.tabs button[role=tab]{color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 9px 7px}.tabs button[role=tab].on{color:var(--ink);border-bottom-color:var(--accent)}.tabs .export{color:var(--ink-2);font-size:var(--fs-0);margin-left:auto;padding-right:6px;text-decoration:none}.tabs .export:hover{color:var(--ink);text-decoration:underline}.tabs .collapse{color:var(--ink-3);border-radius:3px;width:24px;height:24px}.tabs .collapse:hover{background:var(--sheet-2);color:var(--ink)}.dock-body{min-height:0;padding:8px 10px 12px;overflow:auto}.dock-note{background:var(--sheet);padding:14px}.grid{border-collapse:collapse;width:100%;font-size:var(--fs-1)}.grid th{text-align:left;color:var(--ink-3);font-weight:400;font-size:var(--fs-0);border-bottom:1px solid var(--rule);white-space:nowrap;padding:3px 6px}.grid th.num{text-align:right}.grid td{border-bottom:1px solid var(--rule);white-space:nowrap;padding:4px 6px}.grid tbody tr:last-child td{border-bottom:0}.watchlist tbody tr{cursor:pointer}.watchlist tbody tr:hover,.watchlist tbody tr.selected{background:var(--sheet-2)}.watchlist tbody tr.selected td:first-child{color:var(--accent);font-weight:600}.watchlist tbody tr.stale td{color:var(--ink-3)}.flash-up{color:var(--long)}.flash-down{color:var(--short)}.cell-edit{color:inherit;border:1px dashed #0000;border-radius:3px;padding:1px 4px}.cell-edit:hover{border-color:var(--rule-strong)}.cell-input{text-align:right;width:92px;padding:1px 4px}.cell-input.narrow{width:56px}.actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.account-tab{gap:10px;display:grid}.account-tab h3{font-size:var(--fs-0);color:var(--ink-3);border-bottom:1px solid var(--rule);margin-top:4px;padding-bottom:3px;font-weight:500}.kv{gap:3px;display:grid}.kv>div{justify-content:space-between;gap:12px;display:flex}.kv dt{color:var(--ink-2)}.rules-lede{color:var(--ink-2);font-size:var(--fs-0);max-width:48ch;margin-bottom:4px}.rules-group{font-size:var(--fs-0);color:var(--ink-3);border-bottom:1px solid var(--rule);margin:10px 0 2px;padding-bottom:3px;font-weight:500}.rule{border-bottom:1px solid var(--rule);padding:6px 0 7px}.rule:last-child{border-bottom:0}.rule-head{text-align:left;width:100%;color:inherit;align-items:baseline;gap:8px;display:flex}.rule-name{flex:1;font-weight:500}.rule-figures{white-space:nowrap}.rule-reading{font-weight:600}.rule-text{color:var(--ink-2);font-size:var(--fs-0);margin-top:1px}.rule-track{align-items:center;gap:10px;margin-top:5px;display:flex}.gauge{background:var(--sheet-3);border-radius:2px;flex:1;height:5px;overflow:hidden}.gauge i{background:var(--accent);height:100%;transition:width .24s;display:block}.tone-progress .gauge i{background:var(--ink-2)}.tone-warning .gauge i{background:var(--warn)}.tone-breach .gauge i{background:var(--short)}.tone-met .gauge i{background:var(--long)}.rule-distance{color:var(--ink-2);white-space:nowrap;font-size:var(--fs-0);text-align:right;min-width:96px}.tone-warning .rule-distance{color:var(--warn);font-weight:500}.tone-breach .rule-distance{color:var(--short);font-weight:500}.tone-met .rule-distance{color:var(--long);font-weight:500}.rule-note{color:var(--ink-3);font-size:var(--fs-0);margin-top:2px}.rule-detail{background:var(--sheet-2);border-radius:var(--radius);font-size:var(--fs-0);gap:6px;margin-top:8px;padding:8px 10px;display:grid}.rule-detail dl{grid-template-columns:auto 1fr;gap:2px 10px;display:grid}.rule-detail dt{color:var(--ink-3)}.rule-detail code{font-family:var(--sans);word-break:break-all;color:var(--ink-2)}.bases{border-top:1px solid var(--rule);font-size:var(--fs-0);grid-template-columns:1fr 1fr;gap:6px 10px;margin-top:10px;padding-top:8px;display:grid}.bases dt{color:var(--ink-3)}.rules .panel-title,.decisions .panel-title{display:none}.decision-list{display:grid}.decision{border-bottom:1px solid var(--rule);font-size:var(--fs-0);grid-template-columns:58px 1fr;gap:8px;padding:6px 0;display:grid}.decision:last-child{border-bottom:0}.decision-time{color:var(--ink-3);font-variant-numeric:tabular-nums}.decision-note{color:var(--ink-2);display:block}.decision.tone-breach strong{color:var(--short)}.decision.tone-warning strong{color:var(--warn)}.decision.tone-met strong{color:var(--long)}.ticket-wrap{background:var(--sheet);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.ticket-wrap.collapsed{grid-template-rows:auto}.ticket-head{border-bottom:1px solid var(--rule);color:var(--ink);text-align:left;align-items:center;gap:8px;padding:7px 12px;font-weight:500;display:flex}.ticket-head .caret{margin-left:auto}.ticket{gap:10px;min-height:0;padding:10px 12px 0;display:grid;overflow:auto}.ticket-act{background:var(--sheet);gap:8px;padding:6px 0 12px;display:grid;position:sticky;bottom:0;box-shadow:0 -8px 8px -8px #00000059}.side-pick{grid-template-columns:1fr 1fr;gap:6px;display:grid}.side{border:1px solid var(--rule-strong);border-radius:var(--radius);color:var(--ink-2);justify-items:start;padding:6px 10px;line-height:1.2;display:grid}.side strong{font-size:var(--fs-2);color:var(--ink);font-weight:600}.side.on.sell{border-color:var(--short);background:var(--short-soft);color:var(--short)}.side.on.buy{border-color:var(--long);background:var(--long-soft);color:var(--long)}.side.buy{justify-items:end}.sizing{grid-template-columns:auto 1fr;align-items:center;gap:8px;display:grid}.stepper{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--sheet-2);align-items:stretch;display:flex;overflow:hidden}.stepper input{text-align:center;border:0;border-radius:0;flex:1;width:0;padding:4px}.stepper button{width:28px;color:var(--ink-2);background:var(--sheet-3)}.stepper button:hover{color:var(--ink)}.stepper button.on{color:var(--accent)}.stepper.risk .risk-lots{color:var(--ink-2);font-size:var(--fs-0);white-space:nowrap;border-left:1px solid var(--rule-strong);place-items:center;padding:0 8px;display:grid}.fields{grid-template-columns:1fr 1fr;gap:6px 8px;display:grid}.stops-head{grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.field-hint{color:var(--ink-3);font-size:var(--fs-0);line-height:1.2}.est{border-top:1px solid var(--rule);font-size:var(--fs-0);grid-template-columns:1fr 1fr;gap:4px 10px;padding-top:8px;display:grid}.est>div{display:grid}.est dt{color:var(--ink-3)}.est dd{color:var(--ink);font-size:var(--fs-1)}.est .risk{grid-column:1/-1}.est .risk dd{color:var(--short)}.est .risk.warn dd .chip,.est .risk.reject dd .chip{vertical-align:middle}.ticket-msg{color:var(--ink-2);font-size:var(--fs-0)}.oneclick{color:var(--ink-2);font-size:var(--fs-0);cursor:pointer;align-items:flex-start;gap:8px;display:flex}.oneclick input{margin:2px 0 0}.blotter{background:var(--sheet);height:var(--blotter-h);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.blotter.collapsed{grid-template-rows:auto;height:auto}.blotter-body{padding:0 8px 8px;overflow:auto}.blotter-body .empty{padding:14px 6px}.rulebook{gap:12px;max-width:82ch;padding:12px 6px;display:grid}.rulebook h3{font-size:var(--fs-2);font-weight:600}.rulebook-list{gap:4px;padding-left:22px;list-style:decimal;display:grid}.statusbar{background:var(--sheet);border-top:1px solid var(--rule);font-size:var(--fs-0);color:var(--ink-2);white-space:nowrap;align-items:center;gap:16px;padding:0 10px;display:flex;overflow:hidden}.statusbar .attribution{text-decoration:none}.statusbar .attribution:hover{color:var(--ink);text-decoration:underline}.statusbar-right{gap:14px;margin-left:auto;display:inline-flex}.backdrop{z-index:40;background:#00000073;place-items:start center;padding-top:12vh;display:grid;position:fixed;inset:0}.modal{background:var(--sheet);border:1px solid var(--rule-strong);border-radius:8px;gap:10px;max-width:calc(100vw - 32px);padding:12px;display:grid;box-shadow:0 16px 48px #00000073}.modal-title{font-weight:600}.search-input{font-size:var(--fs-2);padding:9px 12px}.search-list{max-height:50vh;display:grid;overflow:auto}.search-list li{border-radius:var(--radius);cursor:pointer;grid-template-columns:130px 1fr auto;align-items:baseline;gap:12px;padding:7px 10px;display:grid}.search-list li.on{background:var(--sheet-2)}.search-list li.empty{cursor:default;grid-template-columns:1fr}.search-symbol{font-weight:600}.search-desc,.search-price{color:var(--ink-2);font-size:var(--fs-0)}.typed{background:var(--ink);color:var(--on-ink);z-index:35;pointer-events:none;border-radius:8px;padding:10px 22px;font-size:28px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.toasts{z-index:50;gap:8px;max-width:380px;display:grid;position:fixed;bottom:32px;right:16px}.toast{background:var(--sheet-3);color:var(--ink);border-radius:var(--radius);border-left:3px solid var(--ink-3);font-size:var(--fs-1);padding:10px 14px;box-shadow:0 8px 24px #00000059}.toast-ok{border-left-color:var(--long)}.toast-error{border-left-color:var(--short)}@media (max-width:1100px){:root{--right-w:300px}.acct-summary{display:none}}@media (max-width:860px){.workspace{grid-template-columns:var(--rail-w) minmax(0, 1fr);grid-template-rows:minmax(420px,1fr) auto}.right{grid-column:1/-1;grid-template-rows:360px;grid-template-columns:1fr 1fr}.intervals .tb:nth-child(n+6){display:none}}@media (max-width:600px){html,body,#root{overflow-x:hidden}.topbar{scrollbar-width:none;gap:4px;overflow-x:auto}.topbar::-webkit-scrollbar{display:none}.topbar-right .tb-text,.topbar .palette-hint,.topbar .replay-btn{display:none}.workspace{grid-template-rows:auto minmax(360px,1fr) auto;grid-template-columns:minmax(0,1fr)}.rail{scrollbar-width:none;flex-direction:row;gap:4px;padding:2px 6px;overflow:auto hidden}.rail::-webkit-scrollbar{display:none}.rail-sep{width:1px;height:20px;margin:0 2px}.right{grid-column:1;grid-template-rows:auto auto;grid-template-columns:1fr}.dock{min-height:260px}.blotter:not(.collapsed) .blotter-body{max-height:180px}.statusbar{scrollbar-width:none;overflow-x:auto}.statusbar::-webkit-scrollbar{display:none}}@media (prefers-reduced-motion:reduce){.gauge i{transition:none}}.icon{vertical-align:-3px;flex:none;display:inline-block}.charts{background:var(--rule);gap:1px;min-width:0;min-height:0;display:grid}.charts.layout-1{grid-template-columns:1fr}.charts.layout-2h{grid-template-columns:1fr 1fr}.charts.layout-2v{grid-template-rows:1fr 1fr}.charts.layout-4{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.chart.active:after{content:"";border:1px solid var(--accent);pointer-events:none;z-index:2;position:absolute;inset:0}.row{align-items:center;gap:8px;display:inline-flex}.grow,.menu-item.grow{flex:1}.template-name{background:var(--sheet-2);border:1px solid var(--rule-strong);color:var(--ink);font-size:var(--fs-0);border-radius:3px;flex:1;padding:3px 6px}.ctx{z-index:45;background:var(--sheet);border:1px solid var(--rule-strong);border-radius:6px;gap:1px;min-width:220px;padding:4px;display:grid;position:fixed;box-shadow:0 10px 30px #0006}.ctx-item{color:var(--ink);text-align:left;white-space:nowrap;border-radius:3px;align-items:center;gap:8px;padding:6px 10px;display:flex}.ctx-item:hover:not(:disabled){background:var(--sheet-2)}.ctx-item:disabled{opacity:.45;cursor:default}.ctx-item.danger{color:var(--short)}.ctx-pad{width:14px}.ctx-sep{background:var(--rule);height:1px;margin:3px 4px}.replay-bar{z-index:4;background:var(--sheet-3);border:1px solid var(--rule-strong);font-size:var(--fs-0);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:5px 8px;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000059}.replay-bar>button{width:26px;height:26px;color:var(--ink);border-radius:3px;place-items:center;display:grid}.replay-bar>button:hover{background:var(--sheet-2)}.replay-label{color:var(--warn);padding-right:4px;font-weight:600}.replay-bar .replay-exit{width:auto;color:var(--short);gap:4px;padding:0 8px;display:inline-flex}.alerts{gap:8px;display:grid}.btn.add{justify-self:start;align-items:center;gap:6px;display:inline-flex}.alert-form{background:var(--sheet-2);border-radius:var(--radius);gap:8px;padding:10px;display:grid}.alert-list{display:grid}.alert-row{border-bottom:1px solid var(--rule);font-size:var(--fs-1);align-items:flex-start;gap:8px;padding:6px 0;display:flex}.alert-row:last-child{border-bottom:0}.alert-row .icon{color:var(--warn);margin-top:2px}.alert-text{flex:1;display:grid}.alert-text .small{font-size:var(--fs-0)}.alert-row.fired .decision-time{width:58px}.icon-btn{color:var(--ink-3);border-radius:3px;place-items:center;width:22px;height:22px;display:grid}.icon-btn:hover{background:var(--short-soft);color:var(--short)}input[type=range]{width:100%;accent-color:var(--accent)}.note-cell{white-space:normal;min-width:160px}.cell-edit.note{text-align:left;white-space:normal;width:100%}.cell-input.wide{text-align:left;width:240px}.tag{background:var(--accent-soft);color:var(--accent);font-size:var(--fs-0);border-radius:999px;margin-left:6px;padding:0 6px;display:inline-block}.journal{gap:8px;padding:8px 0;display:grid}.journal-head{flex-wrap:wrap;align-items:center;gap:12px;padding:0 6px;display:flex}.tag-filter{flex-wrap:wrap;gap:4px;display:inline-flex}.tag-filter button{border:1px solid var(--rule-strong);color:var(--ink-2);font-size:var(--fs-0);border-radius:999px;padding:1px 8px}.tag-filter button.on{background:var(--accent-soft);color:var(--accent);border-color:#0000}.upcoming{border-bottom:1px solid var(--rule);display:grid}.upcoming-row{border-left:2px solid #0000;grid-template-columns:64px 1fr;align-items:baseline;gap:8px;padding:5px 10px;font-size:12px;display:grid}.upcoming-row.mine{border-left-color:var(--accent);background:color-mix(in srgb, var(--accent) 6%, transparent)}.upcoming-row.closure{border-left-color:var(--warn)}.upcoming-when{color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap}.upcoming-row.impact-high .upcoming-when{color:var(--short)}.upcoming-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;gap:1px;min-width:0;display:grid;overflow:hidden}.upcoming-sub{color:var(--ink-3);font-size:11px}.targets-row td{background:var(--sheet-2);padding:0!important}.targets{border-left:2px solid var(--accent);gap:8px;padding:8px 12px 10px 28px;display:grid}.targets-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.targets-list li{grid-template-columns:110px 90px 90px auto;align-items:center;gap:12px;font-size:12px;display:grid}.targets-list li .btn{justify-self:start}.targets-form{flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.targets-form .cell-input{width:150px}.targets-form .cell-input.narrow{width:70px}.cell-edit.on{color:var(--accent)}.webhook{gap:8px;padding:0 0 6px;display:grid}.webhook .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.webhook .field input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.live-banner{border:1px solid color-mix(in srgb, var(--long) 45%, var(--rule));background:color-mix(in srgb, var(--long) 8%, var(--sheet));border-radius:var(--radius);color:var(--ink-2);align-items:flex-start;gap:10px;margin-bottom:10px;padding:10px 12px;font-size:12px;display:flex}.pill.live{background:var(--long);border-color:var(--long);color:#fff;font-weight:600}.payout-state{color:var(--ink-2);margin:4px 0 8px;font-size:13px}.payout-state.ok{color:var(--long)}.payout-list{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.payout-row{grid-template-columns:110px 80px auto 1fr;align-items:center;gap:10px;font-size:12px;display:grid}.pill.payout-paid{border-color:var(--long);color:var(--long)}.pill.payout-pending{border-color:var(--warn);color:var(--warn)}.pill.payout-rejected{border-color:var(--short);color:var(--short)}.routed-note{color:var(--ink-2);border-bottom:1px solid var(--rule);background:color-mix(in srgb, var(--accent) 6%, var(--sheet));padding:6px 10px;font-size:12px}
