:root{color:#d7dde8;background:#10141c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#10141c}button,input,select,textarea{font:inherit}.replay-shell{min-height:100vh;padding:24px}.workspace-header{align-items:end;border-bottom:1px solid #222c3b;display:flex;gap:24px;justify-content:space-between;margin-bottom:10px;padding-bottom:16px}.eyebrow{color:#7fa6ff;font-size:.78rem;font-weight:700;letter-spacing:0;margin:0 0 8px;text-transform:uppercase}h1{color:#f2f5f9;font-size:clamp(1.8rem,3vw,3rem);line-height:1;margin:0 0 16px}p{color:#aeb8c8;margin:0}.dataset-control{display:grid;gap:6px;min-width:min(420px,100%)}.dataset-control label,.csv-import-control label,.toolbar-label{color:#79869a;font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}select,button{background:#17202d;border:1px solid #2a3445;border-radius:6px;color:#eef3fb;min-height:36px}select{padding:0 12px}input{background:#17202d;border:1px solid #2a3445;border-radius:6px;color:#eef3fb;min-height:34px;min-width:0;padding:0 10px}input[type=file]{cursor:pointer;padding:5px 10px}button{cursor:pointer;font-weight:700;padding:0 16px}button:disabled{color:#647086;cursor:not-allowed}.app-nav{align-items:center;background:#10141c;border-bottom:1px solid #222c3b;display:flex;gap:8px;padding:10px 24px 0}.app-nav button{font-size:.82rem;min-height:32px;padding:0 12px}.app-nav button[aria-pressed=true]{border-color:#4e78d7;color:#f2f5f9}.error-text{color:#ff8a8a;margin-bottom:16px}.page-feedback,.hub-feedback{align-items:center;display:flex;gap:12px;justify-content:space-between}.page-feedback button,.hub-feedback button{min-height:32px;padding:0 12px}.csv-import-control{display:grid;gap:6px}.import-status{color:#54d89a;font-size:.78rem}.replay-workspace{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) 250px}.chart-workspace,.session-panel,.session-strip{background:#111722;border:1px solid #222c3b;border-radius:8px}.session-strip{align-items:center;display:grid;gap:10px;grid-template-columns:repeat(6,minmax(0,1fr)) auto;margin-bottom:16px;min-height:48px;padding:8px 12px}.session-strip strong{color:#f2f5f9;display:block;font-size:.82rem;line-height:1.2;margin-top:1px}.session-strip button{font-size:.76rem;min-height:30px;padding:0 10px}.replay-entry-banner{background:#111722;border:1px solid #222c3b;border-radius:8px;display:grid;gap:4px;margin-bottom:16px;padding:10px 12px}.replay-entry-banner strong{color:#f2f5f9;font-size:.88rem}.replay-entry-banner p{color:#aeb8c8;font-size:.82rem}.chart-toolbar{align-items:center;border-bottom:1px solid #222c3b;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));min-height:58px;padding:9px 12px}.chart-toolbar strong,.session-panel strong{color:#f2f5f9;display:block;font-size:.96rem;margin-top:2px}.quote-info-panel{border-bottom:1px solid #222c3b;display:grid;gap:8px;grid-template-columns:minmax(0,1fr);padding:6px 12px}.quote-block{background:#151d29b8;border:1px solid rgba(109,132,178,.18);border-radius:6px;display:grid;gap:6px;min-width:0;padding:7px 10px}.quote-block-header{align-items:baseline;display:flex;gap:10px;justify-content:space-between}.quote-block-header strong{color:#dbe7fb;font-size:.8rem;font-variant-numeric:tabular-nums}.quote-grid{display:grid;gap:7px 10px;grid-template-columns:repeat(7,minmax(0,1fr))}.quote-metric{display:grid;gap:2px;min-width:0}.quote-metric span{color:#79869a;font-size:.68rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.quote-metric strong{color:#e8eef8;font-size:.86rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.synced-chart{display:grid;grid-template-rows:minmax(360px,58vh) 150px;min-height:540px;position:relative}.chart-inspect-overlay{background:var(--chart-inspect-bg);border:1px solid var(--chart-inspect-border);border-radius:2px;box-shadow:0 8px 18px #0f172a1f;display:grid;max-width:calc(100% - 32px);pointer-events:none;position:absolute;top:52px;width:132px;z-index:18}.chart-inspect-overlay[data-side=right]{right:14px}.chart-inspect-overlay[data-side=left]{left:14px}.chart-inspect-list{display:grid;gap:0;padding:4px 6px}.chart-inspect-metric{align-items:center;border-bottom:1px solid rgba(148,163,184,.18);display:flex;gap:8px;justify-content:space-between;min-width:0;padding:2px 0}.chart-inspect-metric:last-child{border-bottom:0}.chart-inspect-metric span{color:var(--chart-inspect-muted);flex:0 0 auto;font-size:.78rem;font-weight:700;letter-spacing:0}.chart-inspect-metric strong{color:var(--chart-inspect-text);flex:1 1 auto;font-size:.78rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.chart-pane{min-width:0}.chart-pane-price{border-bottom:1px solid var(--app-border)}.chart-latest-button{align-items:center;background:var(--chart-latest-bg);border:1px solid var(--app-border-strong);border-radius:8px;color:var(--app-text-strong);cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:800;height:32px;justify-content:center;padding:0;pointer-events:auto;position:absolute;right:72px;top:12px;width:32px;z-index:20}.chart-latest-button:hover{background:var(--chart-latest-hover-bg);border-color:var(--app-accent)}.completion-banner{align-items:center;background:#13251f;border-bottom:1px solid #254738;display:flex;gap:14px;justify-content:space-between;padding:10px 14px}.completion-banner strong,.status-badge{color:#54d89a}.session-review{border-top:1px solid #222c3b;display:grid;gap:16px;padding:16px}.session-review-header{align-items:center;display:flex;justify-content:space-between}.status-badge{border:1px solid #2a6a4d;border-radius:999px;font-size:.78rem;padding:4px 10px;text-transform:uppercase}.review-grid{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.summary-metric{background:#151d29;border:1px solid #253044;border-radius:6px;min-width:0;padding:10px}.summary-metric strong{color:#f2f5f9;display:block;font-variant-numeric:tabular-nums;margin-top:4px}.review-report{background:#101723;border:1px solid #253044;border-radius:8px;display:grid;gap:14px;padding:14px}.review-report-header{display:grid;gap:6px}.review-report-header p:last-child{color:#aab6c8;line-height:1.5;margin:0}.review-report-columns{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.review-insight-section,.review-diagnostics{display:grid;gap:10px}.review-insight-section h3,.review-diagnostics h3{color:#f2f5f9;font-size:.92rem}.review-insight-list,.review-diagnostic-list{display:grid;gap:8px}.review-insight,.review-diagnostic{background:#151d29;border:1px solid #2a3448;border-radius:6px;display:grid;gap:5px;padding:10px}.review-insight[data-severity=warning],.review-diagnostic[data-label=worst_exit]{border-color:#ff6d6d73}.review-insight[data-severity=positive],.review-diagnostic[data-label=best_exit]{border-color:#54d89a73}.review-insight strong,.review-diagnostic strong{color:#f2f5f9}.review-insight p,.review-diagnostic span,.review-empty{color:#aab6c8;line-height:1.45;margin:0}.review-diagnostic strong{font-variant-numeric:tabular-nums}.review-trade-log{display:grid;gap:10px}.session-panel{align-content:start;display:grid;gap:10px;padding:12px}.panel-section{border-top:1px solid #222c3b;display:grid;gap:7px;padding-top:10px}.panel-section:first-child{border-top:0;padding-top:0}.order-section{gap:8px}.trade-feedback-panel{border:1px solid rgba(109,132,178,.2);border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.trade-feedback-panel>strong{color:#f2f5f9;grid-column:1 / -1}.trade-feedback-panel div{display:grid;gap:2px}.trade-feedback-panel span{color:#79869a;font-size:.68rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.trade-feedback-panel b{color:#e8eef8;font-size:.88rem;font-variant-numeric:tabular-nums}h2{color:#f2f5f9;font-size:.86rem;margin:0}.position-panel{display:grid;gap:5px}.account-metric{align-items:baseline;display:flex;justify-content:space-between;min-height:18px}.account-metric strong{font-size:.82rem;font-variant-numeric:tabular-nums}.metric-up{color:var(--app-positive)!important}.metric-down{color:var(--app-negative)!important}.order-controls{display:grid;gap:7px}.field-group{display:grid;gap:3px}.field-group label{color:#79869a;font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.order-estimate-panel{border:1px solid rgba(109,132,178,.2);border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.order-estimate-panel div{display:grid;gap:2px}.order-estimate-panel span{color:#79869a;font-size:.68rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.order-estimate-panel strong{color:#e8eef8;font-size:.9rem}.order-shortcuts{display:grid;gap:7px;grid-template-columns:repeat(3,minmax(0,1fr))}.order-shortcuts button{min-height:30px;padding:0 8px}.order-buttons{display:grid;gap:7px;grid-template-columns:1fr 1fr}.order-buttons button{min-height:34px;padding:0 10px}.order-buttons .order-buy-button{background:linear-gradient(180deg,#ef5350,#c93636);border-color:#ff7e7e9e;box-shadow:inset 0 1px #ffffff29,0 10px 22px #c9363633;color:#fff7f7}.order-buttons .order-buy-button:hover:not(:disabled),.order-buttons .order-buy-button:focus-visible:not(:disabled){background:linear-gradient(180deg,#ff625f,#d64040);border-color:#ff9999b8}.order-buttons .order-buy-button:disabled{box-shadow:none}.trade-log-panel{display:grid;gap:8px}.trade-log-row{align-items:start;border-bottom:1px solid #202938;display:flex;justify-content:space-between;padding-bottom:8px}.trade-log-row strong,.trade-log-row span{color:#eef3fb;font-size:.82rem}.trade-log-row p,.empty-text{color:#79869a;font-size:.78rem}.history-shell{min-height:calc(100vh - 43px)}.history-layout{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(260px,340px)}.history-list-panel,.history-detail-panel{background:#111722;border:1px solid #222c3b;border-radius:8px;min-width:0;padding:14px}.history-panel-header{align-items:center;border-bottom:1px solid #222c3b;display:flex;justify-content:space-between;margin:-2px 0 12px;padding-bottom:10px}.history-panel-header strong{color:#f2f5f9}.history-table{display:grid;gap:0;overflow-x:auto}.history-row{align-items:center;border-bottom:1px solid #202938;display:grid;gap:12px;grid-template-columns:minmax(240px,1.6fr) minmax(110px,.7fr) minmax(90px,.6fr) minmax(150px,.9fr) minmax(100px,.6fr) auto;min-width:860px;padding:10px 0}.history-row-header{color:#79869a;font-size:.72rem;font-weight:700;letter-spacing:0;min-height:34px;text-transform:uppercase}.history-row strong{color:#f2f5f9;display:block;font-size:.86rem;line-height:1.25}.history-row small{color:#79869a;display:block;font-size:.74rem;margin-top:2px}.history-row span{color:#d7dde8;font-size:.82rem;min-width:0}.history-row span:last-child{display:flex;gap:8px}.history-row button{font-size:.76rem;min-height:30px;padding:0 10px}.history-row-action{cursor:pointer;outline:none}.history-row-action:hover,.history-row-action:focus-visible{background:#5b7cfa14}.history-row-primary-action,.history-row-secondary-action{align-items:center;border:1px solid #2d3a50;border-radius:8px;color:#eef3fb;display:inline-flex;font-size:.76rem;justify-content:center;min-height:30px;padding:0 10px}.history-row-secondary-action{background:#0f172a9e;cursor:pointer}.history-row-secondary-action:hover,.history-row-secondary-action:focus-visible{background:#1a2540;border-color:#5b7cfa;outline:none}.history-detail-panel{align-content:start;display:grid;gap:12px}.history-detail-grid{display:grid;gap:10px}.dashboard-shell{min-height:calc(100vh - 43px)}.dashboard-layout{display:grid;gap:16px}.hub-shell{min-height:calc(100vh - 43px)}.hub-layout{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1.35fr) minmax(280px,360px)}.hub-main-column,.hub-side-column{align-content:start;display:grid;gap:16px}.hub-continue-section{background:#0c1625;border-color:#1d2c43;box-shadow:inset 0 1px #ffffff05,0 14px 34px #040a183d;grid-column:1 / -1;overflow:hidden;padding:22px 26px}.hub-continue-card{display:grid;gap:20px}.hub-continue-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.hub-continue-header strong{color:var(--app-text-strong);font-size:1.18rem}.hub-continue-body{display:grid;gap:8px}.hub-continue-body-with-preview{align-items:stretch;gap:22px;grid-template-columns:minmax(280px,340px) minmax(0,1fr)}.hub-continue-details{align-content:start;display:grid;gap:8px;min-width:0}.hub-continue-summary-panel{background:#09111d99;border:1px solid #22314a;border-radius:10px;gap:16px;min-height:312px;overflow:hidden;padding:22px}.hub-continue-identity{display:grid;gap:2px}.hub-continue-name{color:var(--app-text-strong);font-size:clamp(1rem,1.32vw,1.42rem);font-weight:700;letter-spacing:0;line-height:1.12}.hub-continue-subline{color:#92a0b9;font-size:.78rem;font-variant-numeric:tabular-nums}.hub-continue-progress{display:grid;gap:5px}.hub-continue-body-with-preview .hub-continue-progress{margin-top:8px}.hub-continue-progress-bar{background:#27344b;border-radius:999px;height:4px;overflow:hidden}.hub-continue-progress-fill{background:linear-gradient(90deg,#4a73d7,#5b84ea);border-radius:inherit;display:block;height:100%}.hub-continue-progress-meta{align-items:center;color:#d0d8e6;display:flex;font-size:.82rem;font-variant-numeric:tabular-nums;justify-content:space-between;gap:12px}.hub-continue-meta-row{border-top:1px solid #24344d;display:grid;column-gap:18px;row-gap:8px;grid-template-columns:repeat(4,max-content);justify-content:space-between;padding-top:8px}.hub-continue-body-with-preview .hub-continue-meta-row{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;margin-top:4px;padding-top:16px}.hub-continue-meta-item{display:grid;gap:3px;min-width:0}.hub-continue-meta-label{color:#8795ac;font-size:.64rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.hub-continue-meta-value{align-items:center;color:#c8d2e1;display:inline-flex;font-size:.76rem;font-weight:500;font-variant-numeric:tabular-nums;gap:6px;min-width:0;white-space:nowrap}.hub-continue-body-with-preview .hub-continue-meta-value{white-space:normal}.hub-continue-status-dot{background:var(--app-success);border-radius:999px;display:inline-block;height:7px;width:7px}.hub-session-preview-panel{min-width:0;overflow:hidden}.hub-session-preview{background:#09111d;border:1px solid #22314a;border-radius:10px;display:grid;gap:16px;min-height:312px;min-width:0;overflow:hidden;padding:22px 24px}.hub-session-preview-header{align-items:center;display:flex;gap:10px;justify-content:space-between}.hub-session-preview-header strong{color:var(--app-text-strong);font-size:.95rem}.hub-session-preview-header span{color:#8d9bb4;font-size:.82rem;font-variant-numeric:tabular-nums}.hub-session-preview-svg{display:block;height:262px;width:100%}.hub-preview-grid-line{stroke:#1f2b3e;stroke-width:1}.hub-preview-current-line{stroke:#6f8fe7;stroke-dasharray:4 5;stroke-width:1.2}.hub-preview-candle-wick{stroke-width:1.2}.hub-preview-candle-wick[data-direction=up],.hub-preview-candle-body[data-direction=up]{fill:#d75b55;stroke:#d75b55}.hub-preview-candle-wick[data-direction=down],.hub-preview-candle-body[data-direction=down]{fill:#43af78;stroke:#43af78}.hub-preview-average-cost-line{stroke:#d8b651;stroke-dasharray:7 5;stroke-width:1.4}.hub-preview-marker-box[data-marker=B]{fill:#d84b4b}.hub-preview-marker-box[data-marker=S]{fill:#4d8dd8}.hub-preview-marker-text{fill:#fff;font-size:10px;font-weight:800;pointer-events:none}.hub-preview-price-label{fill:#7f8da6;font-size:10px;font-variant-numeric:tabular-nums}.hub-search-panel,.hub-symbol-datasets,.hub-dataset-list{display:grid;gap:12px}.hub-continue-grid,.hub-snapshot-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.hub-snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-performance-section{padding-top:12px;padding-bottom:12px}.hub-performance-section .history-panel-header{margin-bottom:8px;min-height:0;padding-bottom:8px}.hub-performance-section .summary-metric{border-radius:10px;padding:12px 14px}.hub-performance-section .toolbar-label{font-size:.66rem;letter-spacing:.02em}.hub-performance-section .summary-metric strong{font-size:.92rem;line-height:1.1;margin-top:6px}.hub-action-row{display:flex;gap:10px}.hub-primary-cta{align-items:center;background:linear-gradient(180deg,#3f69cd,#355dbe);border:1px solid rgba(99,139,230,.56);border-radius:10px;box-shadow:inset 0 1px #ffffff1f,0 10px 22px #1a316a3d;color:#eef4ff;display:inline-flex;font-size:.78rem;font-weight:700;gap:8px;justify-content:center;min-height:30px;padding:0 13px}.hub-primary-cta:hover:not(:disabled){background:linear-gradient(180deg,#4a75da,#3f67ca);border-color:#769af0b3}.hub-primary-cta:disabled{background:#33446c85;border-color:#53638880;color:#9facc7}.hub-primary-cta-arrow{font-size:.84rem;line-height:1}.hub-nav-grid button{min-height:34px}.hub-start-section{padding-top:12px;padding-bottom:12px}.hub-start-search-section{grid-column:1 / -1;padding:14px 18px}.hub-start-search-header{align-items:end;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr);margin-bottom:10px}.hub-start-search-header strong{color:var(--app-text-strong);display:block;font-size:1rem;line-height:1.2}.hub-start-search-header .empty-text{justify-self:end;max-width:52ch;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.hub-start-search-content{align-items:start;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) minmax(150px,210px)}.hub-start-search-stack{display:grid;gap:10px;min-width:0}.hub-start-section .history-panel-header{margin-bottom:8px;min-height:0;padding-bottom:8px}.hub-start-section .empty-text{font-size:.8rem;line-height:1.45}.hub-symbol-search-form{display:grid;gap:6px;margin-top:10px}.hub-symbol-search-form-inline{margin-top:0}.hub-symbol-search-form label{color:#79869a;font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.hub-symbol-search-form input{width:100%}.hub-symbol-search-input-shell{position:relative}.hub-symbol-search-input-shell input{min-height:44px;padding-right:48px}.hub-symbol-search-button{align-items:center;border-radius:7px;display:inline-flex;height:34px;justify-content:center;min-height:34px;padding:0;position:absolute;right:5px;top:50%;transform:translateY(-50%);width:34px}.hub-symbol-search-button svg{height:17px;width:17px}.hub-start-section .hub-search-panel{border-bottom:1px solid #202938;border-top:1px solid #202938;margin-top:10px;padding:10px 0}.hub-start-search-section .hub-search-panel{border-bottom:0;border-top:0;margin-top:0;padding:0}.hub-start-search-section .hub-symbol-results{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.hub-start-search-section .hub-symbol-result{min-height:54px}.hub-start-section .hub-dataset-item{align-items:start;grid-template-columns:1fr}.hub-start-section .hub-action-row{margin-top:10px}.hub-start-section .hub-action-row button{min-height:30px;padding-right:13px;padding-left:13px}.hub-csv-import{border-top:1px solid #202938;margin-top:10px;padding-top:10px}.hub-csv-import-compact{border-top:0;margin-top:0;min-width:0;padding-top:0}.hub-csv-import input[type=file]{width:100%}.hub-csv-import-compact input[type=file]{font-size:.72rem;min-height:44px}.hub-feedback{align-items:start;flex-direction:column}.hub-nav-grid{display:grid;gap:8px}.hub-activity-list{display:grid;gap:0}.hub-activity-section{padding-top:12px;padding-bottom:10px}.hub-activity-section .history-panel-header{margin-bottom:8px;min-height:0;padding-bottom:8px}.hub-activity-item{align-items:center;background:transparent;border-bottom:1px solid #202938;border-left:0;border-radius:0;border-right:0;border-top:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:12px;justify-content:space-between;padding:7px 0;text-align:left;width:100%}.hub-activity-item:last-child{border-bottom:0;padding-bottom:0}.hub-activity-item:hover,.hub-activity-item:focus-visible{background:#5b7cfa14;outline:none}.hub-activity-item strong{color:#f2f5f9;display:block;font-size:.8rem;line-height:1.18}.hub-activity-item p,.hub-activity-meta{color:#7f8a9e;font-size:.72rem}.hub-activity-meta{display:grid;gap:1px;justify-items:end;text-align:right}.hub-symbol-results{display:grid;gap:8px}.hub-symbol-result,.hub-dataset-item{align-items:center;background:#151d29;border:1px solid #253044;border-radius:6px;display:grid;gap:8px}.hub-symbol-result{justify-items:start;padding:10px 12px;text-align:left}.hub-symbol-result[aria-pressed=true]{border-color:#4e78d7}.hub-symbol-result-title,.hub-dataset-item strong{color:#f2f5f9;font-size:.86rem;line-height:1.25}.hub-symbol-result-meta,.hub-dataset-item p{color:#aeb8c8;font-size:.78rem}.hub-dataset-item{grid-template-columns:minmax(0,1fr) auto;padding:12px}.hub-dataset-item button{min-height:32px;padding:0 12px}.dashboard-section{background:#111722;border:1px solid #222c3b;border-radius:8px;min-width:0;padding:14px}.dashboard-metric-grid{display:grid;gap:10px;grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:1180px){.hub-continue-body-with-preview{grid-template-columns:1fr}.hub-session-preview-svg{height:240px}}@media(max-width:980px){.hub-layout,.history-layout,.replay-workspace,.hub-start-search-content,.hub-start-search-header{grid-template-columns:1fr}.hub-start-search-header .empty-text{justify-self:start;max-width:none;text-align:left;white-space:normal}.hub-continue-grid,.hub-continue-meta-row,.hub-snapshot-grid,.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.app-nav{flex-wrap:wrap;padding-right:16px;padding-left:16px}.replay-shell{padding:16px}.workspace-header{align-items:start;flex-direction:column}.hub-continue-grid,.hub-continue-meta-row,.hub-snapshot-grid,.review-grid,.review-report-columns,.chart-toolbar,.session-strip{grid-template-columns:1fr}.hub-continue-header,.hub-continue-progress-meta{align-items:start;flex-direction:column}.hub-continue-section{padding:18px}.hub-continue-summary-panel,.hub-session-preview{padding:16px}.hub-session-preview-svg{height:210px}.hub-continue-meta-item{padding:0}.hub-activity-item{align-items:start;flex-direction:column}.hub-dataset-item{grid-template-columns:1fr}.hub-activity-meta{justify-items:start;text-align:left}}.dashboard-table{display:grid;gap:0;overflow-x:auto}.dashboard-row{align-items:center;border-bottom:1px solid #202938;display:grid;gap:12px;grid-template-columns:minmax(240px,1.6fr) minmax(110px,.7fr) repeat(4,minmax(100px,.7fr));min-width:860px;padding:10px 0}.dashboard-row-header{color:#79869a;font-size:.72rem;font-weight:700;letter-spacing:0;min-height:34px;text-transform:uppercase}.dashboard-row strong{color:#f2f5f9;display:block;font-size:.86rem;line-height:1.25}.dashboard-row small{color:#79869a;display:block;font-size:.74rem;margin-top:2px}.dashboard-row span{color:#d7dde8;font-size:.82rem;min-width:0}@media(max-width:900px){.workspace-header,.replay-workspace,.session-strip,.history-layout{grid-template-columns:1fr}.workspace-header{align-items:start;display:grid}.chart-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.completion-banner{align-items:start;display:grid}.review-grid,.dashboard-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.synced-chart{grid-template-rows:360px 140px}.history-row,.dashboard-row{min-width:760px}}:root{--app-bg: #0b1220;--app-bg-elevated: #101827;--app-bg-panel: #0d1828;--app-bg-input: #0f1725;--app-bg-soft: rgba(255, 255, 255, .02);--app-border: #1d293d;--app-border-strong: #253554;--app-text: #d7dde8;--app-text-strong: #f2f5f9;--app-text-muted: #8f9bb0;--app-accent: #4b78db;--app-accent-soft: rgba(75, 120, 219, .14);--app-success: #2fb67d;--app-danger: #e05252;--app-focus: rgba(75, 120, 219, .38);--app-shadow: 0 14px 36px rgba(3, 7, 18, .28);--app-sidebar-bg: rgba(8, 13, 23, .94);--app-header-bg: rgba(11, 18, 32, .92);--app-hover-bg: rgba(255, 255, 255, .04);--app-row-border: #202938;--app-positive: #e05252;--app-negative: #2fb67d;--chart-bg: #111722;--chart-grid: #202938;--chart-text: #b8c2d3;--chart-border: #2a3445;--chart-crosshair: #6ea8fe;--chart-crosshair-label: #1d4ed8;--chart-average-cost: #f2cc60;--chart-latest-bg: rgba(15, 23, 42, .88);--chart-latest-hover-bg: #1a2540;--chart-inspect-bg: rgba(255, 255, 255, .82);--chart-inspect-border: rgba(203, 213, 225, .58);--chart-inspect-text: #111827;--chart-inspect-muted: #1f2937}[data-theme=light]{--app-bg: #f3f6fb;--app-bg-elevated: #ffffff;--app-bg-panel: #ffffff;--app-bg-input: #f8fafc;--app-bg-soft: #f7f9fd;--app-border: #d6deea;--app-border-strong: #aebbd0;--app-text: #334155;--app-text-strong: #0f172a;--app-text-muted: #526176;--app-accent: #2563eb;--app-accent-soft: rgba(37, 99, 235, .1);--app-success: #16835d;--app-danger: #dc2626;--app-focus: rgba(37, 99, 235, .24);--app-shadow: 0 12px 30px rgba(15, 23, 42, .08);--app-sidebar-bg: rgba(255, 255, 255, .94);--app-header-bg: rgba(255, 255, 255, .92);--app-hover-bg: rgba(37, 99, 235, .06);--app-row-border: #e2e8f0;--app-positive: #dc2626;--app-negative: #16835d;--chart-bg: #ffffff;--chart-grid: #e7edf5;--chart-text: #475569;--chart-border: #d5deeb;--chart-crosshair: #2563eb;--chart-crosshair-label: #2563eb;--chart-average-cost: #b7791f;--chart-latest-bg: rgba(255, 255, 255, .92);--chart-latest-hover-bg: #eff6ff;--chart-inspect-bg: rgba(255, 255, 255, .94);--chart-inspect-border: rgba(148, 163, 184, .38);--chart-inspect-text: #0f172a;--chart-inspect-muted: #475569;color:var(--app-text);background:var(--app-bg)}body{background:radial-gradient(circle at top left,rgba(75,120,219,.07),transparent 24%),var(--app-bg);color:var(--app-text)}button,input,select,textarea{color:var(--app-text-strong)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:0 0 0 3px var(--app-focus);outline:none}.sr-only{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.app-shell{background:transparent;color:var(--app-text);display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh;transition:grid-template-columns .14s ease}.app-shell[data-sidebar-collapsed=true]{grid-template-columns:64px minmax(0,1fr)}.app-sidebar{background:var(--app-sidebar-bg);border-right:1px solid var(--app-border);display:grid;gap:22px;grid-template-rows:auto 1fr auto;min-height:100vh;padding:18px 12px 16px;position:sticky;top:0}.app-sidebar-top{align-items:center;display:flex;gap:8px;justify-content:space-between;min-width:0}.app-brand{align-items:center;display:flex;gap:12px;min-height:42px}.app-brand-mark{align-items:center;background:linear-gradient(135deg,#4b78db3d,#4b78db0f);border:1px solid rgba(75,120,219,.18);border-radius:10px;color:#cfe0ff;display:inline-flex;font-size:.82rem;font-weight:800;height:36px;justify-content:center;letter-spacing:.04em;width:36px}.app-sidebar-toggle{align-items:center;background:transparent;border-color:transparent;border-radius:8px;color:var(--app-text-muted);display:inline-flex;flex:0 0 auto;height:32px;justify-content:center;min-height:32px;padding:0;width:32px}.app-sidebar-toggle:hover{background:var(--app-hover-bg);color:var(--app-text-strong)}.app-sidebar-toggle svg{height:18px;width:18px}.app-brand-copy strong,.app-sidebar-footer strong,.app-utility-copy strong{color:var(--app-text-strong);display:block}.app-brand-copy strong{font-size:.95rem}.app-brand-copy p,.app-sidebar-footer p,.app-utility-copy p{color:var(--app-text-muted);font-size:.78rem;margin-top:2px}.app-sidebar-nav{display:grid;align-content:start;gap:6px}.app-sidebar-link{align-items:center;background:transparent;border:1px solid transparent;border-radius:10px;color:var(--app-text);display:grid;gap:10px;grid-template-columns:30px minmax(0,1fr);min-height:52px;padding:0 10px;position:relative;text-align:left;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.app-sidebar-link:before{background:var(--app-accent);border-radius:999px;content:"";height:22px;left:-2px;opacity:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.app-sidebar-link:hover{background:var(--app-hover-bg);border-color:var(--app-border)}.app-sidebar-link[data-active=true]{background:var(--app-accent-soft);border-color:#4b78db29;color:var(--app-text-strong)}.app-sidebar-link[data-active=true]:before{opacity:1}.app-sidebar-link-icon{align-items:center;color:#b5c3da;display:inline-flex;height:18px;justify-content:center;width:18px}.app-sidebar-link[data-active=true] .app-sidebar-link-icon{color:#d7e4ff}.app-sidebar-link-icon svg{height:16px;width:16px}.app-sidebar-link-copy{display:grid;gap:1px;min-width:0}.app-sidebar-link-label{color:var(--app-text-strong);font-size:.88rem;font-weight:600}.app-sidebar-link-caption{color:var(--app-text-muted);font-size:.72rem}.app-sidebar-footer{border-top:1px solid var(--app-border);display:grid;gap:4px;padding:14px 4px 0}.app-sidebar[data-collapsed=true]{gap:16px;padding:18px 10px 16px}.app-sidebar[data-collapsed=true] .app-sidebar-top{justify-content:center}.app-sidebar[data-collapsed=true] .app-brand,.app-sidebar[data-collapsed=true] .app-brand-copy,.app-sidebar[data-collapsed=true] .app-sidebar-link-copy,.app-sidebar[data-collapsed=true] .app-sidebar-footer{display:none}.app-sidebar[data-collapsed=true] .app-sidebar-nav{justify-items:center}.app-sidebar[data-collapsed=true] .app-sidebar-link{gap:0;grid-template-columns:1fr;justify-items:center;min-height:44px;padding:0;width:44px}.app-sidebar[data-collapsed=true] .app-sidebar-link:before{left:-6px}.app-sidebar[data-collapsed=true] .app-sidebar-link-icon{height:22px;width:22px}.app-main{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:100vh;min-width:0}.app-utility-bar{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--app-header-bg);border-bottom:1px solid var(--app-border);display:flex;gap:20px;justify-content:space-between;min-height:64px;padding:0 28px;position:sticky;top:0;z-index:5}.app-utility-copy strong{font-size:.96rem;letter-spacing:.01em}.app-user-menu,.app-utility-actions{align-items:center;display:flex;gap:12px;justify-content:flex-end;min-width:0}.language-toggle,.theme-toggle{align-items:center;background:#ffffff05;border:1px solid var(--app-border);border-radius:999px;display:inline-flex;padding:3px}.language-toggle button,.theme-toggle button{border-color:transparent;border-radius:999px;color:var(--app-text-muted);font-size:.72rem;font-weight:800;min-height:26px;padding:0 9px}.language-toggle button[data-active=true],.theme-toggle button[data-active=true]{background:var(--app-accent);border-color:var(--app-accent);color:#fff}.app-user-menu div{display:grid;gap:1px;min-width:0;text-align:right}.app-user-menu span{color:var(--app-text-strong);font-size:.84rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user-menu small{color:var(--app-text-muted);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-user-menu button{min-height:32px;padding:0 12px;white-space:nowrap}.app-search-form{display:flex;justify-content:flex-end;min-width:min(380px,100%)}.app-search-input{background:var(--app-bg-input);border:1px solid var(--app-border);border-radius:10px;color:var(--app-text-strong);min-height:40px;padding:0 14px;width:min(380px,100%)}.app-search-input::placeholder{color:#72819a}.app-main-scroll{min-width:0;overflow-x:hidden}.auth-shell{align-items:center;background:var(--app-bg);color:var(--app-text);display:flex;justify-content:center;min-height:100vh;padding:24px;position:relative}.auth-display-toggles{align-items:center;display:flex;gap:10px;position:fixed;right:24px;top:20px;z-index:2}.auth-card{background:var(--app-bg-panel);border:1px solid var(--app-border);border-radius:8px;box-shadow:var(--app-shadow);display:grid;gap:24px;max-width:420px;padding:28px;width:min(100%,420px)}.auth-brand{align-items:center;display:flex;gap:14px}.auth-brand h1{font-size:1.7rem;margin:2px 0 0}.auth-form{display:grid;gap:16px}.auth-form label{color:var(--app-text-muted);display:grid;font-size:.76rem;font-weight:700;gap:6px;letter-spacing:0;text-transform:uppercase}.auth-form input,.auth-form button{min-height:42px}.auth-inline-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.auth-link-button{background:transparent;border-color:transparent;color:var(--app-accent);min-height:32px;padding:0}.auth-link-button:hover{border-color:transparent;color:#7fa6ff}.auth-muted{color:var(--app-text-muted)}.success-text{color:var(--app-success)}.replay-shell,.history-shell,.dashboard-shell,.hub-shell{min-height:100%;padding:24px 28px 28px}.workspace-header,.history-panel-header,.chart-toolbar,.chart-pane-price,.session-review,.panel-section,.trade-log-row,.history-row,.hub-activity-item,.dashboard-row,.session-strip,.replay-entry-banner,.chart-workspace,.session-panel,.history-list-panel,.history-detail-panel,.dashboard-section,.hub-symbol-result,.hub-dataset-item,.summary-metric{border-color:var(--app-border)}.chart-workspace,.session-panel,.session-strip,.history-list-panel,.history-detail-panel,.dashboard-section{background:var(--app-bg-panel);box-shadow:var(--app-shadow)}.summary-metric,.hub-symbol-result,.hub-dataset-item{background:var(--app-bg-soft)}.hub-symbol-result[aria-pressed=true]{background:var(--app-accent-soft);border-color:var(--app-accent)}.quote-info-panel,.completion-banner,.hub-start-section .hub-search-panel,.hub-csv-import,.trade-log-row,.hub-activity-item,.dashboard-row{border-color:var(--app-row-border)}.quote-block,.trade-feedback-panel,.order-estimate-panel,.review-insight,.review-diagnostic,.hub-continue-section,.hub-activity-section,.hub-start-section,.history-list-panel,.history-detail-panel,.dashboard-section{background:var(--app-bg-panel);border-color:var(--app-border)}.quote-block,.trade-feedback-panel,.order-estimate-panel{box-shadow:none}.completion-banner{background:#2fb67d1a}[data-theme=light] body{background:radial-gradient(circle at top left,rgba(37,99,235,.09),transparent 26%),var(--app-bg)}[data-theme=light] .app-brand-mark{color:#1d4ed8}[data-theme=light] .app-sidebar-link-icon{color:#64748b}[data-theme=light] .app-sidebar-link[data-active=true] .app-sidebar-link-icon{color:#1d4ed8}[data-theme=light] .language-toggle,[data-theme=light] .theme-toggle{background:#0f172a08}[data-theme=light] .hub-primary-cta{box-shadow:inset 0 1px #ffffff2e,0 8px 18px #2563eb2e}[data-theme=light] .auth-link-button:hover{color:#1d4ed8}[data-theme=light] .chart-workspace,[data-theme=light] .session-panel,[data-theme=light] .session-strip,[data-theme=light] .history-list-panel,[data-theme=light] .history-detail-panel,[data-theme=light] .dashboard-section,[data-theme=light] .hub-continue-section,[data-theme=light] .hub-activity-section,[data-theme=light] .hub-start-section{box-shadow:var(--app-shadow)}[data-theme=light] .replay-entry-banner,[data-theme=light] .summary-metric,[data-theme=light] .hub-symbol-result,[data-theme=light] .hub-dataset-item,[data-theme=light] .hub-continue-summary-panel,[data-theme=light] .hub-session-preview{background:var(--app-bg-soft)}[data-theme=light] .hub-activity-item:hover,[data-theme=light] .hub-activity-item:focus-visible{background:var(--app-hover-bg)}[data-theme=light] .hub-continue-progress-meta,[data-theme=light] .hub-continue-meta-value,[data-theme=light] .history-row span,[data-theme=light] .dashboard-row span,[data-theme=light] .quote-block-header strong,[data-theme=light] .quote-metric strong,[data-theme=light] .order-estimate-panel strong,[data-theme=light] .trade-feedback-panel>strong,[data-theme=light] .trade-feedback-panel b,[data-theme=light] .review-insight strong,[data-theme=light] .review-diagnostic strong{color:var(--app-text)}[data-theme=light] .hub-continue-progress-meta{font-weight:600}[data-theme=light] .history-row-header,[data-theme=light] .dashboard-row-header,[data-theme=light] .hub-continue-meta-label,[data-theme=light] .quote-metric span,[data-theme=light] .order-estimate-panel span,[data-theme=light] .trade-feedback-panel span,[data-theme=light] .hub-symbol-search-form label{color:var(--app-text-muted)}[data-theme=light] .hub-continue-subline,[data-theme=light] .hub-session-preview-header span,[data-theme=light] .history-row small,[data-theme=light] .dashboard-row small,[data-theme=light] .empty-text,[data-theme=light] .hub-activity-item p,[data-theme=light] .hub-symbol-result-meta,[data-theme=light] .hub-dataset-item p,[data-theme=light] .replay-entry-banner p,[data-theme=light] .review-report-header p:last-child,[data-theme=light] .review-insight p,[data-theme=light] .review-diagnostic span,[data-theme=light] .review-empty{color:var(--app-text-muted)}[data-theme=light] .hub-continue-progress-bar{background:#d8e0ed}[data-theme=light] .hub-continue-meta-row{border-top-color:var(--app-border)}[data-theme=light] .hub-session-preview,[data-theme=light] .hub-continue-summary-panel{border-color:var(--app-border)}[data-theme=light] .hub-preview-grid-line{stroke:#dbe4f0}[data-theme=light] .hub-preview-current-line{stroke:#4169d8}[data-theme=light] .hub-preview-price-label{fill:#6b7890}[data-theme=light] .quote-block{background:#fff;border-color:var(--app-border)}.eyebrow{color:#8fb0ff}h1,.chart-toolbar strong,.session-panel strong,.history-panel-header strong,.history-row strong,.dashboard-row strong,.hub-activity-item strong,.hub-symbol-result-title,.hub-dataset-item strong,.session-strip strong,.replay-entry-banner strong,.summary-metric strong{color:var(--app-text-strong)}.toolbar-label,.dataset-control label,.csv-import-control label,.field-group label,.history-row-header,.dashboard-row-header{color:var(--app-text-muted)}select,button,input,textarea{background:var(--app-bg-input);border:1px solid var(--app-border);border-radius:8px}button{transition:background-color .12s ease,border-color .12s ease,color .12s ease}button:hover:not(:disabled){border-color:var(--app-border-strong)}select{appearance:none;padding-right:36px}.history-row span,.dashboard-row span,.account-metric strong,.summary-metric strong,.session-strip strong,.hub-activity-meta,.trade-log-row strong,.trade-log-row span,.app-search-input,input,select{font-variant-numeric:tabular-nums}@media(max-width:980px){.app-shell,.app-shell[data-sidebar-collapsed=true]{grid-template-columns:1fr}.app-sidebar{grid-template-rows:auto auto;min-height:auto;position:static}.app-sidebar-footer{display:none}.app-utility-bar{padding-right:20px;padding-left:20px}}@media(max-width:720px){.app-utility-bar{align-items:start;display:grid;gap:12px;justify-content:stretch;padding:14px 16px}.app-search-form{min-width:0;width:100%}.app-search-input{width:100%}.replay-shell,.history-shell,.dashboard-shell,.hub-shell{padding:16px}}
