.chart-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-3)}.chart-controls .tabs{margin-bottom:0;border-bottom:0;gap:2px}.chart-controls .tab{border:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:0;padding:6px 10px;font-family:var(--font-mono);letter-spacing:.06em}.chart-controls .tab--active{border-color:var(--ink);background:var(--ink);color:var(--night-ink)}.chart-controls__session{margin-left:auto;display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.chart-controls__session select{border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:11px;padding:5px 8px}.chart-controls__session select:disabled{color:var(--ink-mute);border-style:dashed}.chart-controls__session select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.candle-chart{display:flex;flex-direction:column;gap:6px}.candle-chart__stage{position:relative;border:1px solid var(--rule);border-top:2px solid var(--ink);background:var(--paper-raised);min-width:0}.candle-chart__legend{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);min-height:16px;font-family:var(--font-mono);font-size:10px;letter-spacing:.03em;color:var(--ink-mute);font-variant-numeric:tabular-nums}.candle-chart__legend b{color:var(--ink);font-weight:500}.candle-chart__legend--ma{gap:var(--space-3);padding-top:2px}.candle-chart__legend--ma span{display:inline-flex;align-items:center;gap:5px}.candle-chart__source{margin-left:auto;text-transform:uppercase;letter-spacing:.1em}.candle-chart__stamp{color:var(--ink-mute);opacity:.8}.candle-chart__stamp--beijing{font-size:9px;opacity:.5}.candle-chart__session{border:1px solid currentColor;padding:1px 5px;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.candle-chart__session--overnight{color:var(--night-soft)}.candle-chart__session--premarket{color:var(--amber)}.candle-chart__session--regular{color:var(--down)}.candle-chart__session--afterhours{color:var(--accent-ink)}.candle-chart__session--closed{color:var(--ink-mute)}.candle-chart__swatch{display:inline-block;width:14px;height:2px}.candle-chart__swatch--ma5{background:var(--amber)}.candle-chart__swatch--ma10{background:var(--ink-soft)}.candle-chart__swatch--ma20{background:var(--accent-ink)}.candle-chart__swatch--trigger{background:repeating-linear-gradient(to right,var(--accent) 0 4px,transparent 4px 7px)}.candle-chart__swatch--s4{background:repeating-linear-gradient(to right,var(--ink-mute) 0 2px,transparent 2px 5px)}@media (max-width: 640px){.chart-controls__session{margin-left:0;width:100%}.candle-chart__legend{gap:var(--space-2)}.candle-chart__stamp{display:none}}.pnl-table{min-width:640px}.pnl-cell--name{max-width:200px;overflow:hidden;text-overflow:ellipsis}.pnl-cell--note{max-width:240px;overflow:hidden;text-overflow:ellipsis;color:var(--ink-soft)}.pnl-cell--venue{max-width:150px;overflow:hidden;text-overflow:ellipsis;color:var(--ink-mute)}.pnl-cell--missing{color:var(--ink-mute);cursor:help}.pnl-cell__flag{display:inline-block;margin-left:6px;padding:1px 4px;border:1px solid var(--amber);color:var(--amber);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}.pnl-cell--status{letter-spacing:.06em;color:var(--ink-soft)}.pnl-cell--status[data-status=PENDING],.pnl-cell--status[data-status=OPEN],.pnl-cell--status[data-status=PARTIAL]{color:var(--amber)}.pnl-cell--status[data-status=REJECTED]{color:var(--accent);font-weight:600}.pnl-cell--status[data-status=CANCELED]{color:var(--ink-mute)}.chart-controls__count{align-self:center;margin-left:var(--space-3);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--ink-mute);white-space:nowrap}@media (max-width: 760px){.chart-controls__count{margin-left:0}}.board{margin-bottom:var(--space-5);border-top:2px solid var(--ink);border-bottom:1px solid var(--rule-strong);background:var(--paper-raised)}.board__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:12px 18px;border-bottom:1px solid var(--rule)}.board__heading{margin:0;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase}.board__sub{margin:5px 0 0;font-size:var(--text-xs);color:var(--ink-mute)}.board__asof{margin:0;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.04em;color:var(--ink-mute);white-space:nowrap}.board__head-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}.board__reset{display:flex;flex-direction:column;align-items:flex-end;gap:5px;max-width:340px;text-align:right}.board__reset-confirm{display:flex;flex-direction:column;align-items:flex-end;gap:7px;padding:9px 12px;border:1px solid var(--accent);background:var(--accent-soft);text-align:right}.board__reset-question{margin:0;font-size:var(--text-xs);line-height:1.5;color:var(--accent-ink)}.board__reset-actions{display:flex;gap:6px}.board__reset-note{font-family:var(--font-mono);font-size:9px;line-height:1.5;letter-spacing:.02em;color:var(--ink-mute)}.board__reset-state{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}.board__reset--blocked{padding-right:9px;border-right:2px solid var(--amber)}.board__reset-error{margin:0;font-family:var(--font-mono);font-size:9px;line-height:1.5;color:var(--accent);overflow-wrap:anywhere}.board__alert{margin:0;padding:7px 18px;border-bottom:1px solid var(--rule);background:var(--amber-soft);color:var(--amber);font-family:var(--font-mono);font-size:10px;line-height:1.5;overflow-wrap:anywhere}.board__alert--error{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.board__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(248px,.3fr)}.board__money{min-width:0}.board__bucket{display:flex;border-bottom:1px solid var(--rule)}.board__bucket:last-child{border-bottom:0}.board__bucket-head{display:flex;flex:0 0 92px;flex-direction:column;justify-content:center;gap:6px;min-width:0;padding:14px 12px;border-right:1px solid var(--rule);background:var(--paper-deep)}.board__ccy{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.18em;color:var(--ink-soft)}.board__bucket-note{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.02em;color:var(--ink-mute)}.board__figures{display:grid;flex:1 1 auto;grid-template-columns:repeat(5,minmax(0,1fr));margin:0;min-width:0}.board__figure{display:flex;flex-direction:column;justify-content:flex-end;min-width:0;padding:12px 14px 14px;border-right:1px solid var(--rule)}.board__figure:last-child{border-right:0}.board__figure--hero{grid-column:1 / -1;padding:12px 18px 14px;border-right:0;border-bottom:1px solid var(--rule);background:var(--paper);box-shadow:inset 0 3px 0 var(--ink)}.board__label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board__value{margin:7px 0 0;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:clamp(.95rem,.88rem + .2vw,1.1rem);font-weight:500;letter-spacing:-.01em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board__figure--hero .board__value{font-size:clamp(1.45rem,1.05rem + 1.1vw,2.1rem);font-weight:600;letter-spacing:-.02em}.board__rail{display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--rule-strong);background:var(--paper)}.board__rail-block{padding:14px 16px;border-bottom:1px solid var(--rule)}.board__rail-block:last-child{border-bottom:0}.board__rail-title{margin:0 0 10px;font-size:9.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute)}.board__rail-empty{margin:0;font-family:var(--font-mono);font-size:10px;color:var(--ink-mute)}.board__cash,.board__list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.board__cash-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:2px 10px;align-items:baseline}.board__cash-ccy,.board__list-ccy{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;color:var(--ink-mute)}.board__cash-amount{font-family:var(--font-mono);font-size:1.05rem;font-weight:500;text-align:right;white-space:nowrap}.board__cash-note{grid-column:2;font-family:var(--font-mono);font-size:9px;color:var(--ink-mute);text-align:right}.board__list-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font-family:var(--font-mono);font-size:11px;white-space:nowrap}.board__counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 8px;margin-bottom:12px}.board__pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.board__tile{display:flex;flex-direction:column;gap:3px;min-width:0}.board__tile-label{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board__tile-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:500;line-height:1.05}.board__tile--accent .board__tile-value{color:var(--accent)}.board__tile--muted .board__tile-value{color:var(--ink-mute)}.board__tile-note{font-family:var(--font-mono);font-size:9px;color:var(--ink-mute)}@media (max-width: 1080px){.board__grid{grid-template-columns:minmax(0,1fr)}.board__rail{border-top:2px solid var(--ink);border-left:0}}@media (max-width: 980px){.board__figures{grid-template-columns:repeat(3,minmax(0,1fr))}.board__bucket{border-bottom:0}.board__figure{border-bottom:1px solid var(--rule)}.board__figure:last-child{grid-column:span 2}}@media (max-width: 760px){.board__head{flex-wrap:wrap}.board__head-side{align-items:flex-start}.board__reset,.board__reset-confirm{align-items:flex-start;text-align:left}.board__bucket{flex-direction:column}.board__bucket-head{flex:0 0 auto;flex-direction:row;align-items:center;justify-content:space-between;padding:8px 14px;border-right:0;border-bottom:1px solid var(--rule)}.board__figures{grid-template-columns:repeat(2,minmax(0,1fr))}.board__figure--hero{padding:12px 14px 14px}}.symbol-select{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0}.symbol-select__label{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.symbol-select__trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:12px;text-align:left;cursor:pointer}.symbol-select__trigger:hover:not(:disabled){border-color:var(--ink)}.symbol-select__trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.symbol-select__trigger[aria-expanded=true]{border-color:var(--accent)}.symbol-select__trigger:disabled{opacity:.5;cursor:not-allowed}.symbol-select__summary{color:var(--ink-mute)}.symbol-select__chevron{flex:none;font-size:9px;color:var(--ink-mute)}.symbol-select__chips{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.symbol-select__chip{display:inline-flex;align-items:center;gap:4px;padding:2px 3px 2px 7px;border:1px solid var(--rule-strong);background:var(--paper-raised);font-family:var(--font-mono);font-size:10.5px;color:var(--ink)}.symbol-select__chip--missing{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.symbol-select__chip-remove{padding:0 3px;border:0;background:none;color:var(--ink-mute);font-size:13px;line-height:1;cursor:pointer}.symbol-select__chip-remove:hover:not(:disabled){color:var(--accent-ink)}.symbol-select__chip-remove:disabled{cursor:not-allowed}.symbol-select__panel{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--ink);background:var(--paper-raised);box-shadow:0 12px 28px #14140f2e}.symbol-select__list{margin:0;padding:0;list-style:none;max-height:min(40vh,220px);overflow-y:auto;border-top:1px solid var(--rule)}.symbol-select__option{display:flex;align-items:center;gap:8px;padding:5px 6px;font-size:11px;cursor:pointer}.symbol-select__option:hover{background:var(--accent-soft)}.symbol-select input[type=checkbox]{flex:none;width:13px;height:13px;margin:0;padding:0;accent-color:var(--accent)}.symbol-select__code{font-family:var(--font-mono);font-size:11px}.symbol-select__name{min-width:0;overflow:hidden;font-size:10px;color:var(--ink-mute);text-overflow:ellipsis;white-space:nowrap}.symbol-select__tag{flex:none;margin-left:auto;font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.symbol-select__note{margin:0;padding:6px 6px 2px;font-size:10px;color:var(--ink-mute)}.symbol-select__link{padding:0;border:0;background:none;color:var(--accent-ink);font:inherit;text-decoration:underline;cursor:pointer}.symbol-select__manual{display:flex;gap:6px;padding-top:6px;border-top:1px solid var(--rule)}.symbol-select__manual-input{flex:1;min-width:0}.symbol-select__add{flex:none;padding:4px 9px;font-size:9px}@media (max-width: 480px){.symbol-select__panel{position:static;box-shadow:none}}.console-form{margin-bottom:var(--space-6)}.console-table td{vertical-align:top}.console-table thead th:nth-child(1),.console-table thead th:nth-child(2),.console-table thead th:nth-child(3),.console-table thead th:nth-child(4),.console-table thead th:nth-child(6),.console-table thead th:nth-child(8){text-align:left}.console-table__class{max-width:210px;font-size:10px;color:var(--ink-mute);white-space:normal;overflow-wrap:anywhere}.console-table__error{display:block;max-width:240px;margin-top:4px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap;color:var(--accent-ink)}.console-table td:last-child{min-width:250px;white-space:normal}.console-actions{display:flex;flex-wrap:wrap;gap:4px}.console-actions .btn{padding:4px 8px;font-size:9px;letter-spacing:.08em}.console-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding:6px 9px;border-left:3px solid var(--accent);background:var(--accent-soft);font-size:10.5px;color:var(--accent-ink)}.console-confirm .btn{padding:3px 7px;font-size:9px}.console-confirm__hint{flex-basis:100%;font-size:9.5px;line-height:1.4;color:var(--ink-mute)}.console-form__config{width:100%;min-height:150px;padding:10px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:11.5px;line-height:1.55;resize:vertical}.console-form__config:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.param-fields{min-width:0;margin:0;padding:var(--space-3) var(--space-4);border:1px solid var(--rule);background:var(--paper-raised)}.param-fields__legend{padding:0 6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.param-fields__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.param-fields__key{margin-left:6px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:0;text-transform:none;color:var(--ink-mute)}@media (max-width: 860px){.console-table td:last-child{min-width:0}.console-table__error,.console-table__class{max-width:none}.param-fields__grid{grid-template-columns:minmax(0,1fr)}}.symbol-check{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--font-mono);font-size:10px}.symbol-check--missing{padding:6px 8px;border-left:2px solid var(--amber);background:var(--amber-soft);color:var(--amber)}.symbol-check__label{font-size:9px;letter-spacing:.12em;text-transform:uppercase}.symbol-check__code{padding:1px 5px;border:1px solid currentColor;font-size:10px}.symbol-check__hint{color:var(--ink-soft)}.symbol-check__link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.symbol-check__link:hover{color:var(--accent-ink)}.console-actions a.btn{display:inline-flex;align-items:center;text-decoration:none}.console-actions .btn[aria-disabled=true]{opacity:.35;pointer-events:none;cursor:not-allowed}.symbol-register{margin-bottom:var(--space-4)}.symbol-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--space-3) var(--space-4)}.symbol-form__readout{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);padding:9px 12px;border-left:3px solid var(--accent);background:var(--night);color:var(--night-ink);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em}.symbol-form__label{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--night-mute)}.symbol-form__code{font-size:13px;letter-spacing:.02em}.symbol-form__meta{margin-left:auto;color:var(--night-mute)}.symbol-form__switch{grid-column:1 / -1;justify-content:flex-start;gap:var(--space-2)}.symbol-form .symbol-form__switch>input,.toolbar .symbol-toggle>input{width:auto;accent-color:var(--ink)}.symbol-form__switch>span{font-size:11px;color:var(--ink-soft)}.symbol-form__error{grid-column:1 / -1;padding:10px 12px;font-size:11px}.symbol-form__hint{margin:0;font-family:var(--font-mono);font-size:9.5px;line-height:1.5;color:var(--ink-mute)}.symbol-search{min-width:220px;padding:7px 10px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:11px}.symbol-search:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.symbol-toggle{gap:6px}.symbol-toggle>span{font-size:11px;color:var(--ink-soft)}.symbol-table td{vertical-align:top}.symbol-table thead th:nth-child(3),.symbol-table thead th:nth-child(7),.symbol-table thead th:nth-child(8){text-align:left}.symbol-table__row--off td{color:var(--ink-mute)}.symbol-table__none{color:var(--ink-mute);font-style:italic}.symbol-table td:last-child{min-width:250px}.symbol-actions{display:flex;flex-wrap:wrap;gap:6px}.symbol-actions .btn{padding:3px 8px;font-size:9px;letter-spacing:.08em}.symbol-table .table-note{margin-top:var(--space-2)}.symbol-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--space-2);padding:6px 8px;border:1px dashed var(--accent);background:var(--accent-soft);color:var(--accent-ink);font-size:11px}.symbol-confirm .btn{padding:3px 8px;font-size:9px}.symbol-confirm .btn--ghost{border-color:var(--rule-strong);color:var(--ink-soft)}.symbol-confirm__hint{flex-basis:100%;font-family:var(--font-mono);font-size:9.5px;line-height:1.45;color:var(--ink-mute)}@media (max-width: 720px){.symbol-search{min-width:0;flex:1 1 100%}.symbol-table{min-width:720px}.symbol-table td:last-child{min-width:250px}}.workspace-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.workspace-card{display:flex;flex-direction:column;gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4) var(--space-4);border:1px solid var(--rule);border-top:2px solid var(--ink);background:var(--paper-raised)}.workspace-card--missing{border-top-color:var(--ink-mute);opacity:.85}.workspace-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.workspace-card__name{margin:0;font-size:var(--text-md, 1rem);font-weight:500;letter-spacing:-.01em;line-height:1.15;overflow-wrap:anywhere}.workspace-card__id{margin:4px 0 0;font-size:10px;letter-spacing:.08em;color:var(--ink-mute)}.workspace-card__hint{margin:0;font-size:var(--text-sm);color:var(--ink-mute)}.workspace-card__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0;padding-block:var(--space-2);border-block:1px solid var(--rule)}.workspace-card__facts dt{margin:0 0 4px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.workspace-card__facts dd{margin:0;font-size:var(--text-sm);overflow-wrap:anywhere}.workspace-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:auto}.workspace-limit,.workspace-hint{margin:var(--space-3) 0 0;font-size:var(--text-xs);color:var(--ink-mute)}.workspace-hint a{color:inherit}@media (max-width: 760px){.workspace-card__facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.workspace-card__actions a.btn{display:inline-flex;align-items:center;text-decoration:none}:root{--paper: #f1eee4;--paper-raised: #f8f6ee;--paper-deep: #e8e4d8;--ink: #14140f;--ink-soft: #3d3c32;--ink-mute: #79766a;--rule: #d4cfc0;--rule-strong: #b1ab9b;--accent: #c2372a;--accent-soft: #f2dcd7;--accent-ink: #7e1d13;--down: #176a4b;--down-soft: #d9e7df;--down-ink: #0b4530;--amber: #9c6410;--amber-soft: #f3e6cd;--night: #16150f;--night-soft: #24231b;--night-ink: #efece0;--night-mute: #9d9a8c;--font-sans: "Inter", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "SFMono-Regular", "JetBrains Mono", "Cascadia Code", ui-monospace, "Menlo", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.125rem;--text-xl: clamp(1.6rem, 1.1rem + 1.4vw, 2.35rem);--text-hero: clamp(2.6rem, 1.4rem + 3.2vw, 4.6rem);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius: 2px;--duration-fast: .12s;--duration-normal: .22s;--ease-out: cubic-bezier(.16, 1, .3, 1);--z-header: 20;--z-overlay: 60}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--paper);background-image:radial-gradient(rgba(20,20,15,.022) 1px,transparent 1px);background-size:4px 4px;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.45;font-feature-settings:"tnum" 1,"ss01" 1;-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:var(--paper-raised)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.up{color:var(--accent)}.down{color:var(--down)}.flat{color:var(--ink-mute)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:var(--z-header);display:grid;grid-template-columns:auto 1fr auto;align-items:stretch;gap:var(--space-5);min-height:58px;padding:0 clamp(14px,3vw,34px);background:var(--night);color:var(--night-ink);border-bottom:1px solid var(--night-soft)}.topbar__brand{display:flex;align-items:center;gap:var(--space-3);padding:10px 0;border-right:1px solid var(--night-soft);padding-right:var(--space-5)}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--night-ink);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-name{font-size:var(--text-sm);font-weight:600;letter-spacing:.14em;text-transform:uppercase}.brand-tag{font-size:10px;letter-spacing:.06em;color:var(--night-mute)}.topbar__nav{display:flex;align-items:stretch;gap:clamp(10px,2.4vw,28px);overflow-x:auto;scrollbar-width:none}.topbar__nav::-webkit-scrollbar{display:none}.nav-link{position:relative;display:flex;align-items:center;gap:7px;padding:0 2px;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--night-mute);white-space:nowrap;border:0;background:transparent;cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.nav-link:hover,.nav-link--active{color:var(--night-ink)}.nav-link--active:after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--accent)}.nav-link__index{font-family:var(--font-mono);font-size:9px;color:var(--night-mute)}.topbar__meta{display:flex;align-items:center;gap:var(--space-4);border-left:1px solid var(--night-soft);padding-left:var(--space-5)}.clock{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;color:var(--night-ink)}.whoami{display:flex;align-items:baseline;gap:7px;min-width:0;font-size:10px;letter-spacing:.08em;color:var(--night-ink)}.whoami__name{max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono)}.whoami__role{padding:1px 5px;border:1px solid var(--night-soft);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--night-mute);white-space:nowrap}.conn{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--night-mute)}.conn__dot{width:7px;height:7px;border-radius:50%;background:var(--amber)}.conn--live .conn__dot{background:#5fbf8f;box-shadow:0 0 #5fbf8f80;animation:pulse 2s infinite}.conn--offline .conn__dot{background:var(--accent)}.icon-btn{border:1px solid var(--night-soft);background:transparent;color:var(--night-ink);padding:6px 9px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out)}.icon-btn:hover{border-color:var(--night-ink)}@keyframes pulse{0%{box-shadow:0 0 #5fbf8f73}70%{box-shadow:0 0 0 7px #5fbf8f00}to{box-shadow:0 0 #5fbf8f00}}.controlbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);padding:10px clamp(14px,3vw,34px);background:var(--paper-raised);border-bottom:1px solid var(--rule-strong)}.status-chip{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase}.status-chip:before{content:"";width:8px;height:8px;background:var(--rule-strong)}.status-chip--running:before{background:var(--accent)}.status-chip--paused:before{background:var(--amber)}.status-chip--killed:before{background:var(--ink)}.controlbar__facts{display:flex;gap:var(--space-5);font-size:11px;color:var(--ink-mute);letter-spacing:.04em}.controlbar__facts strong{color:var(--ink);font-family:var(--font-mono);font-weight:500}.controlbar__actions{display:flex;flex-wrap:wrap;gap:6px;margin-left:auto}.symbol-picker{display:flex;flex:1 1 100%;flex-direction:column;gap:5px;padding:7px 10px;border:1px solid var(--rule);border-left:2px solid var(--accent);background:var(--paper)}.symbol-picker__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.symbol-picker__label{padding-right:9px;border-right:1px solid var(--rule-strong);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);white-space:nowrap}.symbol-picker__current{display:inline-flex;align-items:baseline;gap:7px;min-width:132px}.symbol-picker__name{font-size:13px;font-weight:600}.symbol-picker__code{font-size:10px;letter-spacing:.06em;color:var(--ink-mute)}.symbol-picker__lot{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.symbol-picker__none{font-size:12px;letter-spacing:.04em}.symbol-picker__hint{margin:4px 0 0;font-size:10.5px;letter-spacing:.02em;color:var(--ink-mute)}.symbol-picker__count{padding:1px 5px;font-size:9.5px;color:var(--paper-raised);background:var(--ink-soft)}.symbol-picker__input{flex:0 1 190px;min-width:118px;padding:6px 8px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.symbol-picker__input::placeholder{color:var(--ink-mute);text-transform:none}.symbol-picker__input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.symbol-picker__input:disabled{opacity:.5}.symbol-picker__error{margin:0;font-family:var(--font-mono);font-size:10.5px;color:var(--accent-ink)}.trading-badge{display:inline-block;margin-left:6px;padding:0 4px;font-family:var(--font-mono);font-size:8.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;vertical-align:1px;color:var(--paper-raised);background:var(--accent)}.btn{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:7px 13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.btn:hover:not(:disabled){background:var(--ink);color:var(--paper-raised)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn--primary{background:var(--ink);color:var(--paper-raised)}.btn--primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.btn--danger{border-color:var(--accent);color:var(--accent)}.btn--danger:hover:not(:disabled){background:var(--accent);color:var(--paper-raised)}.btn--caution{border-color:var(--amber);color:var(--amber)}.btn--caution:hover:not(:disabled),.btn--caution[aria-pressed=true]{background:var(--amber);border-color:var(--amber);color:var(--paper-raised)}.btn--ghost{border-color:var(--rule-strong);color:var(--ink-soft)}.kill-hint{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:0;padding:9px 12px;border-left:3px solid var(--accent);background:var(--accent-soft);font-size:var(--text-sm);color:var(--accent-ink)}.banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);padding:10px clamp(14px,3vw,34px);border-bottom:1px solid var(--rule-strong);font-size:var(--text-sm)}.banner--warn{background:var(--amber-soft);color:#5d3c06}.banner--error{background:var(--accent-soft);color:var(--accent-ink)}.banner code{font-family:var(--font-mono);background:#14140f14;padding:2px 6px}.page{width:100%;max-width:1520px;margin:0 auto;padding:clamp(18px,3.2vw,42px) clamp(14px,3vw,34px) var(--space-8);flex:1}.page__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:2px solid var(--ink)}.eyebrow{margin:0 0 6px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute)}.page-title{margin:0;font-size:var(--text-xl);font-weight:500;letter-spacing:-.02em;line-height:1.05}.page-lede{margin:6px 0 0;max-width:68ch;font-size:var(--text-sm);color:var(--ink-mute)}.page__meta{display:flex;align-items:center;gap:var(--space-4);font-family:var(--font-mono);font-size:11px;color:var(--ink-mute)}.kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--rule-strong);background:var(--paper-raised)}.kpi{padding:16px 18px 18px;border-right:1px solid var(--rule);min-width:0}.kpi:last-child{border-right:0}.kpi__label{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.kpi__value{display:block;margin-top:8px;font-family:var(--font-mono);font-size:clamp(1.25rem,.9rem + .9vw,1.75rem);font-weight:500;letter-spacing:-.02em;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi__note{display:block;margin-top:6px;font-size:10px;color:var(--ink-mute);letter-spacing:.03em}.ccy{border-bottom:1px solid var(--rule-strong);background:var(--paper)}.ccy__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:10px 18px;border-bottom:1px solid var(--rule);background:var(--paper-raised)}.ccy__title{margin:0;font-size:10px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.ccy__meta{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.03em;color:var(--ink-mute)}.ccy-table{table-layout:fixed}.ccy-table thead th:first-child,.ccy-table tbody th{text-align:left;font-family:var(--font-sans);width:40%}.ccy-table tbody th{padding:9px 10px;border-bottom:1px solid var(--rule);font-size:11.5px;font-weight:500;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ccy-table__row--total th,.ccy-table__row--total td{border-top:1px solid var(--rule-strong);border-bottom:1px solid var(--rule-strong);background:var(--paper-raised);font-weight:600;color:var(--ink)}.ccy__foot{margin:0;padding:8px 18px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.03em;color:var(--ink-mute)}.meter{margin-top:8px;height:3px;background:var(--paper-deep)}.meter__fill{height:100%;background:var(--ink);transition:width var(--duration-normal) var(--ease-out)}.meter__fill--warn{background:var(--amber)}.meter__fill--danger{background:var(--accent)}.dash{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5) var(--space-5);margin-top:var(--space-5)}.dash__ledger{grid-column:span 9;min-width:0}.dash__rail{grid-column:span 3;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.panel{border-top:2px solid var(--ink);padding-top:var(--space-3);min-width:0}.panel__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.panel__title{margin:0;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}.panel__meta{font-family:var(--font-mono);font-size:10px;color:var(--ink-mute)}.table-wrap{width:100%;overflow-x:auto;border-bottom:1px solid var(--rule-strong)}.ledger-table{width:100%;border-collapse:collapse;font-size:12.5px;white-space:nowrap}.ledger-table thead th{position:sticky;top:0;z-index:1;padding:8px 10px;background:var(--paper);border-bottom:1px solid var(--rule-strong);font-size:9.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);text-align:right}.ledger-table thead th:first-child,.ledger-table thead th:nth-child(2){text-align:left}.ledger-table tbody td{padding:9px 10px;border-bottom:1px solid var(--rule);text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.ledger-table tbody tr{transition:background var(--duration-fast) var(--ease-out)}.ledger-table tbody tr:hover{background:var(--paper-raised)}.ledger-table tbody tr[data-clickable=true]{cursor:pointer}.ledger-table tbody tr[data-clickable=true]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ledger-table td.cell-start{text-align:left;font-family:var(--font-sans)}.table-note{margin:0;padding:6px 10px;border-left:2px solid var(--rule-strong);font-family:var(--font-mono);font-size:10px;line-height:1.45;overflow-wrap:anywhere;color:var(--ink-soft)}.table-note--ok{border-color:var(--down);background:var(--down-soft);color:var(--down-ink)}.table-note--error{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.broker-source{font-size:9px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}.broker-source--external{color:var(--accent)}.broker-cancel{padding:3px 8px;font-size:9px;letter-spacing:.08em;white-space:nowrap}.cell-code{display:flex;flex-direction:column;gap:1px;line-height:1.2;text-align:left}.cell-code__name{font-size:12.5px;font-weight:500}.cell-code__raw{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-mute)}.quote-cell{display:inline-flex;flex-direction:column;gap:2px;line-height:1.2}.quote-cell__price{display:inline-flex;align-items:baseline;gap:4px;font-variant-numeric:tabular-nums}.quote-cell__ccy{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--ink-mute)}.quote-cell__stamp{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute)}.quote-cell__dot{width:5px;height:5px;border-radius:50%;background:currentColor}.quote-cell__stamp--live{color:var(--down)}.quote-cell__stamp--live .quote-cell__dot{animation:quote-pulse 2s ease-in-out infinite}.quote-cell__stamp--delayed{color:var(--amber)}@keyframes quote-pulse{0%,to{opacity:1}50%{opacity:.25}}.s4-set{display:inline-flex;gap:6px;font-size:10.5px;color:var(--ink-soft)}.s4-set span{padding:1px 4px;border:1px solid var(--rule)}.s4-set__more{color:var(--ink-mute);border-style:dashed}.strategy-badge{display:inline-block;margin-left:6px;padding:0 4px;border:1px solid var(--rule-strong);font-family:var(--font-mono);font-size:8.5px;letter-spacing:.04em;white-space:nowrap;vertical-align:1px;color:var(--ink-soft)}.strategy-badge--paused{border-style:dashed;border-color:var(--amber);color:var(--amber)}.strategy-status{margin:var(--space-3) 0 0;padding:7px 9px;border:1px solid var(--rule);font-family:var(--font-mono);font-size:10px;letter-spacing:.02em;color:var(--ink-soft)}.strategy-status--paused{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.pill{display:inline-block;padding:2px 7px;border:1px solid var(--rule-strong);font-family:var(--font-sans);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);background:var(--paper)}.pill--long{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.pill--pending{border-color:var(--amber);background:var(--amber-soft);color:var(--amber)}.pill--frozen{border-color:var(--ink);background:var(--ink);color:var(--paper-raised)}.pill--flat{color:var(--ink-mute)}.progress{display:inline-block;width:54px;height:4px;background:var(--paper-deep);vertical-align:middle;margin-right:6px}.progress__fill{display:block;height:100%;background:var(--accent)}.progress__fill--low{background:var(--ink-mute)}.feed{list-style:none;margin:0;padding:0}.feed__item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:var(--space-2);padding:8px 0;border-bottom:1px solid var(--rule);font-size:12px}.feed__item:last-child{border-bottom:0}.feed__time{font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);padding-top:2px}.feed__body{min-width:0}.feed__line{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.feed__tag{font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;border:1px solid var(--rule-strong);padding:0 4px;color:var(--ink-soft)}.feed__tag--entry{border-color:var(--accent);color:var(--accent)}.feed__tag--exit{border-color:var(--down);color:var(--down)}.feed__text{margin:2px 0 0;color:var(--ink-soft);line-height:1.35;overflow-wrap:anywhere}.feed__text strong{color:var(--ink);font-weight:500}.feed__level{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em}.feed__level--WARNING{color:var(--amber)}.feed__level--ERROR,.feed__level--CRITICAL{color:var(--accent)}.empty{padding:18px 0;font-size:12px;color:var(--ink-mute);font-style:italic}.symbol-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-5);align-items:end;padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:2px solid var(--ink)}.symbol-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3)}.symbol-title h1{margin:0;font-size:var(--text-xl);font-weight:500;letter-spacing:-.02em}.symbol-title code{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink-mute)}.quote{display:flex;align-items:baseline;gap:var(--space-4);justify-content:flex-end}.quote__price{font-family:var(--font-mono);font-size:var(--text-hero);font-weight:400;letter-spacing:-.045em;line-height:.9}.quote__meta{font-family:var(--font-mono);font-size:11px;color:var(--ink-mute);text-align:right;line-height:1.5}.detail-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5)}.detail-grid__main{grid-column:span 8;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.detail-grid__side{grid-column:span 4;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.chart-frame{border:1px solid var(--rule);background:var(--paper-raised);padding:10px 10px 4px}.chart-frame svg{display:block;width:100%;height:auto}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--space-4);padding:8px 2px 4px;font-size:10px;color:var(--ink-mute);letter-spacing:.04em}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:14px;height:2px;background:var(--ink)}.swatch--accent{background:var(--accent)}.swatch--dashed{background:repeating-linear-gradient(to right,var(--rule-strong) 0 4px,transparent 4px 7px)}.ladder{display:flex;flex-direction:column;border-top:1px solid var(--rule)}.ladder__row{display:grid;grid-template-columns:74px minmax(0,1fr) 84px;align-items:center;gap:var(--space-3);padding:7px 0;border-bottom:1px solid var(--rule);font-size:12px}.ladder__label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.ladder__bar{height:6px;background:var(--paper-deep);position:relative;overflow:hidden}.ladder__bar span{position:absolute;inset-block:0;left:0;background:var(--rule-strong)}.ladder__value{font-family:var(--font-mono);text-align:right}.ladder__row--dropped{color:var(--ink-mute);text-decoration:line-through}.ladder__row--trigger{color:var(--accent);font-weight:500}.ladder__row--trigger .ladder__bar span{background:var(--accent)}.definition{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr);gap:0;margin:0}.definition dt,.definition dd{margin:0;padding:7px 0;border-bottom:1px solid var(--rule);font-size:12px}.definition dt{color:var(--ink-mute)}.definition dd{font-family:var(--font-mono);text-align:right}.tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:1px solid var(--rule-strong);margin-bottom:var(--space-4)}.tab{border:1px solid transparent;border-bottom:0;background:transparent;padding:8px 14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);cursor:pointer;margin-bottom:-1px}.tab:hover{color:var(--ink)}.tab--active{color:var(--ink);border-color:var(--rule-strong);background:var(--paper-raised)}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.select{border:1px solid var(--rule-strong);background:var(--paper-raised);padding:6px 8px;font-size:11px;font-family:var(--font-mono)}.toolbar__spacer{margin-left:auto}.toolbar__count{font-family:var(--font-mono);font-size:10px;color:var(--ink-mute)}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-block:1px solid var(--rule-strong);background:var(--paper-raised);margin-bottom:var(--space-5)}.summary{padding:14px 16px;border-right:1px solid var(--rule)}.summary:last-child{border-right:0}.summary__label{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.summary__value{display:block;margin-top:6px;font-family:var(--font-mono);font-size:18px;font-variant-numeric:tabular-nums}.review-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-5)}.review-grid__main{grid-column:span 8;min-width:0}.review-grid__side{grid-column:span 4;min-width:0}.phase-note{border-left:3px solid var(--amber);background:var(--amber-soft);padding:10px 12px;font-size:12px;color:#5d3c06}.config-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5)}.config-section{border-top:2px solid var(--ink);padding-top:var(--space-3);min-width:0}.config-section h2{margin:0 0 var(--space-2);font-size:10px;letter-spacing:.18em;text-transform:uppercase}.config-section--wide{grid-column:span 3}.footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);padding:14px clamp(14px,3vw,34px) 22px;border-top:1px solid var(--rule-strong);font-size:10px;letter-spacing:.06em;color:var(--ink-mute)}.footer code{font-family:var(--font-mono)}.loading{display:grid;place-items:center;gap:var(--space-3);min-height:46vh;color:var(--ink-mute);font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase}.loading__bar{width:120px;height:2px;background:var(--paper-deep);overflow:hidden}.loading__bar span{display:block;width:40%;height:100%;background:var(--ink);animation:slide 1.1s infinite var(--ease-out)}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.offline-card{max-width:560px;margin:12vh auto;padding:var(--space-6);border:1px solid var(--rule-strong);border-top:3px solid var(--accent);background:var(--paper-raised)}.offline-card h1{margin:0 0 var(--space-3);font-size:var(--text-lg);font-weight:500}.offline-card p{margin:0 0 var(--space-3);color:var(--ink-soft);font-size:var(--text-sm)}.offline-card pre{margin:0 0 var(--space-3);padding:12px 14px;background:var(--night);color:var(--night-ink);font-family:var(--font-mono);font-size:var(--text-sm);overflow-x:auto}.error-box{padding:var(--space-5);border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink)}@media (max-width: 1180px){.whoami__role{display:none}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi:nth-child(3){border-right:0}.kpi:nth-child(n+4){border-top:1px solid var(--rule)}.dash__ledger,.dash__rail,.detail-grid__main,.detail-grid__side,.review-grid__main,.review-grid__side{grid-column:span 12}.dash__rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary:nth-child(3){border-right:0}.config-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.config-section--wide{grid-column:span 2}}@media (max-width: 900px){.topbar{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 var(--space-4);padding-top:0}.topbar__brand{padding-right:var(--space-4);border-right:0}.topbar__meta{justify-self:end;border-left:0;padding-left:0}.topbar__nav{grid-column:span 2;min-height:40px;border-top:1px solid var(--night-soft);gap:var(--space-5)}.whoami,.brand-tag{display:none}.symbol-head{grid-template-columns:minmax(0,1fr)}.quote{justify-content:flex-start}}@media (max-width: 680px){.controlbar__facts{display:none}.controlbar__actions{margin-left:0}.symbol-picker__current{min-width:0}.symbol-picker__input{flex:1 1 140px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi{border-right:1px solid var(--rule)}.kpi:nth-child(2n){border-right:0}.kpi:nth-child(n+3){border-top:1px solid var(--rule)}.dash__rail{display:flex}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.summary:nth-child(2n){border-right:0}.summary:nth-child(n+3){border-top:1px solid var(--rule)}.config-grid{grid-template-columns:minmax(0,1fr)}.config-section--wide{grid-column:span 1}.clock,.conn--dep{display:none}.ledger-table{font-size:12px}.quote__price{font-size:clamp(2.4rem,12vw,3.4rem)}.ladder__row{grid-template-columns:62px minmax(0,1fr) 72px}}@media (max-width: 400px){.brand-name{font-size:11px;letter-spacing:.1em}.page{padding-inline:12px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page__tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.fact-strip{display:flex;flex-wrap:wrap;gap:6px var(--space-4);margin:calc(-1 * var(--space-3)) 0 var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--rule);font-size:10.5px;letter-spacing:.04em;color:var(--ink-mute)}.fact-strip strong{margin-left:3px;font-family:var(--font-mono);font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}.advisory-note{margin-bottom:var(--space-3);padding-left:10px;border-left:2px solid var(--rule-strong);font-size:11px;color:var(--ink-mute)}.suggestion-list{list-style:none;display:grid;gap:1px;background:var(--rule);border-block:1px solid var(--rule)}.suggestion{padding:12px 14px;border-left:3px solid var(--rule-strong);background:var(--paper-raised)}.suggestion--warning{border-left-color:var(--amber)}.suggestion--info{border-left-color:var(--ink-mute)}.suggestion__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}.suggestion__code{color:var(--ink)}.suggestion__severity{margin-left:auto}.suggestion--warning .suggestion__severity{color:var(--amber)}.suggestion__title{margin:6px 0 2px;font-size:13px;font-weight:600}.suggestion__detail{margin:0;font-size:12px;line-height:1.5;color:var(--ink-soft)}.suggestion__evidence{display:flex;flex-wrap:wrap;gap:4px 14px;margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:10px}.suggestion__evidence>div{display:flex;gap:5px}.suggestion__evidence dt{color:var(--ink-mute)}.suggestion__evidence dd{margin:0;color:var(--ink-soft)}.count-list{list-style:none;display:grid;gap:1px;background:var(--rule);border-block:1px solid var(--rule)}.count-list li{display:flex;justify-content:space-between;gap:var(--space-3);padding:7px 10px;background:var(--paper-raised);font-size:11.5px}.count-list__label{font-family:var(--font-mono);color:var(--ink-soft);overflow-wrap:anywhere}.count-list__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.event-list,.assumption-list{list-style:none}.event-list__item{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:var(--space-2);align-items:baseline;padding:6px 0;border-bottom:1px solid var(--rule);font-size:11px}.event-list__level{font-size:9px;letter-spacing:.08em;color:var(--ink-mute)}.event-list__item--warning .event-list__level{color:var(--amber)}.event-list__item--error .event-list__level{color:var(--accent)}.event-list__message{color:var(--ink-soft);overflow-wrap:anywhere}.assumption-list{display:grid;gap:6px;font-size:11.5px;line-height:1.45;color:var(--ink-soft)}.assumption-list li{position:relative;padding-left:12px}.assumption-list li:before{content:"—";position:absolute;left:0;color:var(--ink-mute)}.review-grid__main,.review-grid__side{display:flex;flex-direction:column;gap:var(--space-5)}.review-grid--spaced{margin-top:var(--space-5)}.chart-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}.chart-grid svg{display:block;width:100%;height:auto}.legend{display:flex;align-items:center;gap:6px;margin:var(--space-2) 0 0;font-family:var(--font-mono);font-size:10px;color:var(--ink-mute)}.legend__mean{display:inline-block;width:14px;height:2px;background:var(--ink)}.summary__band{display:block;margin-top:4px;font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);font-variant-numeric:tabular-nums}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4)}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field>span:first-child{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute)}.field input,.field select{width:100%;padding:8px 10px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-family:var(--font-mono);font-size:12px}.field input:focus-visible,.field select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field__hint{font-family:var(--font-mono);font-size:9.5px;color:var(--ink-mute)}.field--wide{grid-column:1 / -1}.field--inline{flex-direction:row;align-items:center}.field--inline>span:first-child{white-space:nowrap}.form-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--rule)}.backtest-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:var(--space-6);align-items:start}.backtest-grid__form{position:sticky;top:var(--space-4);min-width:0}.backtest-grid__result{display:flex;flex-direction:column;gap:var(--space-5);min-width:0}@media (max-width: 1180px){.backtest-grid{grid-template-columns:minmax(0,1fr)}.backtest-grid__form{position:static}}@media (max-width: 680px){.form-grid{grid-template-columns:minmax(0,1fr)}.page__tools{width:100%}.fact-strip{margin-top:0}}.manual-trade__book{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin:0 0 var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--rule)}.manual-trade__book div{display:flex;min-width:0;flex-direction:column;gap:1px}.manual-trade__book dt{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.manual-trade__book dd{margin:0;overflow:hidden;font-size:14px;font-variant-numeric:tabular-nums;text-overflow:ellipsis}.manual-trade__sides{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--ink)}.manual-trade__side{padding:8px 6px;border:0;background:transparent;color:var(--ink);font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.manual-trade__side+.manual-trade__side{border-left:1px solid var(--ink)}.manual-trade__side:hover:not([data-active=true]){background:var(--paper-deep)}.manual-trade__side[data-active=true]{background:var(--ink);color:var(--paper-raised)}.manual-trade__side:focus-visible,.manual-trade__chip:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.manual-trade__pricing{display:flex;gap:6px;margin:var(--space-3) 0 var(--space-2)}.manual-trade__chip{padding:4px 9px;border:1px solid var(--rule-strong);background:transparent;color:var(--ink-soft);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.manual-trade__chip:hover:not([data-active=true]){border-color:var(--ink-soft);color:var(--ink)}.manual-trade__chip[data-active=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.manual-trade__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-bottom:var(--space-3)}.manual-trade__field{display:flex;min-width:0;flex-direction:column;gap:3px}.manual-trade__field span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.manual-trade__field input{width:100%;min-width:0;padding:6px 7px;border:1px solid var(--rule-strong);background:var(--paper-raised);color:var(--ink);font-size:12px;font-variant-numeric:tabular-nums}.manual-trade__field input::placeholder{color:var(--ink-mute);letter-spacing:0}.manual-trade__field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.manual-trade__field input:disabled{border-style:dashed;background:transparent;color:var(--ink-mute)}.manual-trade__submit{width:100%}.manual-trade__close{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--rule-strong)}.manual-trade__close-btn{width:100%}.manual-trade__hint{margin:var(--space-2) 0 0;font-size:10px;line-height:1.5;letter-spacing:.02em;color:var(--ink-mute)}.manual-trade__note{margin:var(--space-2) 0 0;padding:6px 8px;border-left:2px solid var(--rule-strong);font-family:var(--font-mono);font-size:10px;line-height:1.45;overflow-wrap:anywhere}.manual-trade__note--ok{border-color:var(--down);background:var(--down-soft);color:var(--down-ink)}.manual-trade__note--error{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.manual-trade__legacy{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--rule-strong)}.manual-trade__legacy-title{margin:0;font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.manual-trade__legacy-list{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none}.manual-trade__legacy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px var(--space-2);padding:6px 8px;border:1px solid var(--rule);background:var(--paper-raised)}.manual-trade__legacy-id{display:flex;min-width:0;align-items:baseline;gap:6px}.manual-trade__legacy-name{overflow:hidden;font-size:10px;color:var(--ink-mute);text-overflow:ellipsis;white-space:nowrap}.manual-trade__legacy-book{display:flex;grid-column:1;align-items:baseline;gap:var(--space-2);font-size:11px}.manual-trade__legacy-row .manual-trade__close-btn{width:auto;grid-column:2;grid-row:1 / span 2;align-self:center;padding:5px 9px;font-size:10px;white-space:nowrap}.login{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(400px,1fr);min-height:100vh;min-height:100svh;background:var(--paper)}.login__masthead{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-6);padding:clamp(22px,4vw,60px);overflow:hidden;color:var(--night-ink);background:repeating-linear-gradient(90deg,transparent 0 95px,rgba(239,236,224,.055) 95px 96px),repeating-linear-gradient(0deg,transparent 0 95px,rgba(239,236,224,.055) 95px 96px),var(--night);border-right:3px solid var(--accent)}.login__brand{display:flex;align-items:center;gap:var(--space-3);position:relative;z-index:1}.login__mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.06em}.login__brand-name{font-size:var(--text-sm);font-weight:600;letter-spacing:.18em;text-transform:uppercase}.login__declaration{position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-4);max-width:30rem}.login__index{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;color:var(--accent)}.login__tagline{margin:0;max-width:16ch;font-size:clamp(1.7rem,1.1rem + 2vw,3rem);line-height:1.06;letter-spacing:-.015em;font-weight:500}.login__ghost{position:absolute;right:-.12em;bottom:-.36em;z-index:0;font-family:var(--font-mono);font-size:clamp(180px,26vw,430px);line-height:.72;letter-spacing:-.06em;color:#efece00b;pointer-events:none;user-select:none}.login__folio{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--night-soft);font-family:var(--font-mono);font-size:9.5px;letter-spacing:.16em;color:var(--night-mute)}.login__panel{position:relative;display:grid;place-items:center;padding:clamp(24px,5vw,72px)}.login__lang{position:absolute;top:clamp(16px,3vw,28px);right:clamp(16px,3vw,28px);border-color:var(--rule-strong);color:var(--ink-soft)}.login__lang:hover{border-color:var(--ink);color:var(--ink)}.login__form{display:flex;flex-direction:column;gap:var(--space-4);width:min(100%,390px)}.login__eyebrow{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}.login__title{margin:0;font-size:clamp(1.9rem,1.5rem + 1.2vw,2.7rem);line-height:1.02;letter-spacing:-.02em;font-weight:500}.login__lede{margin:0 0 var(--space-2);max-width:36ch;font-size:var(--text-sm);color:var(--ink-mute)}.login__notice,.login__error{margin:0;padding:9px 12px;border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--accent-ink);font-size:11.5px;line-height:1.45}.login__notice{border-left-color:var(--amber);background:var(--amber-soft);color:#5d3c06}.login__field{gap:6px}.login__field input{padding:11px 12px;font-size:13px}.login__remember{display:flex;align-items:center;gap:var(--space-2);font-size:11.5px;color:var(--ink-soft);cursor:pointer}.login__remember>input{width:auto;accent-color:var(--ink)}.login__submit{justify-content:center;padding:12px 16px;font-size:11px;letter-spacing:.18em}.login__hint{margin:0;padding-top:var(--space-3);border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:9.5px;line-height:1.6;color:var(--ink-mute)}.login--gate{display:grid;place-items:center;background:var(--night)}.login__gate{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--night-mute)}.login__gate .login__mark{color:var(--night-ink)}@media (max-width: 960px){.login{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.login__masthead{flex-direction:row;align-items:center;gap:var(--space-4);padding:14px 20px;border-right:0;border-bottom:3px solid var(--accent)}.login__declaration,.login__folio,.login__ghost{display:none}.login__panel{align-items:start;padding:40px 20px 64px}}@media (max-width: 480px){.login__panel{padding:34px 16px 48px}.login__form{gap:var(--space-3)}}
