:root{color-scheme:dark;--bg-color: #101827;--app-gradient-start: #1a2840;--card-bg: #151f32;--card-bg-soft: #1b2940;--field-bg: #111a2c;--field-bg-soft: #1a2740;--text-color: #d9e5f5;--muted-text: #9baac0;--border-color: #31405b;--grid-color: #34445f;--button-bg: #20304a;--button-hover-bg: #2a3b58;--active-bg: #2e4f78;--active-text: #f1f7ff;--shadow-color: rgba(3, 8, 20, .28);--up-color: #5ccf72;--down-color: #f07f7f;--spot-color: #74a9ff;--pm-volume-color: #2dd4bf;--spot-volume-color: #38bdf8;--positive-bg: rgba(92, 207, 114, .1);--positive-bg-strong: rgba(92, 207, 114, .16);--positive-border: rgba(92, 207, 114, .34);--negative-bg: rgba(240, 127, 127, .1);--negative-bg-strong: rgba(240, 127, 127, .16);--negative-border: rgba(240, 127, 127, .34);--deal-row-base: #121d31;--deal-win-row-bg: linear-gradient(90deg, rgba(92, 207, 114, .105) 0%, rgba(92, 207, 114, .055) 34%, rgba(18, 29, 49, .98) 78%);--deal-loss-row-bg: linear-gradient(90deg, rgba(240, 127, 127, .105) 0%, rgba(240, 127, 127, .052) 34%, rgba(18, 29, 49, .98) 78%);--deal-win-value-bg: linear-gradient(180deg, rgba(92, 207, 114, .13), rgba(92, 207, 114, .055));--deal-loss-value-bg: linear-gradient(180deg, rgba(240, 127, 127, .13), rgba(240, 127, 127, .055));--accent-border: #5f78a6}.app-root[data-theme=light]{color-scheme:light;--bg-color: #eceef3;--app-gradient-start: #f4f6fb;--card-bg: #f8f9fc;--card-bg-soft: #f1f5fc;--field-bg: #ffffff;--field-bg-soft: #f8fbff;--text-color: #1c2538;--muted-text: #62708a;--border-color: #d9dde7;--grid-color: #dbe1ec;--button-bg: #e9eef6;--button-hover-bg: #f1f4fa;--active-bg: #0f172a;--active-text: #ffffff;--shadow-color: rgba(28, 37, 56, .08);--up-color: #16a34a;--down-color: #ef4444;--spot-color: #2563eb;--pm-volume-color: #10b981;--spot-volume-color: #3b82f6;--positive-bg: #f0fdf4;--positive-bg-strong: #dcfce7;--positive-border: #86efac;--negative-bg: #fef2f2;--negative-bg-strong: #fee2e2;--negative-border: #fca5a5;--deal-row-base: #ffffff;--deal-win-row-bg: #f0fdf4;--deal-loss-row-bg: #fef2f2;--deal-win-value-bg: #dcfce7;--deal-loss-value-bg: #fee2e2;--accent-border: #9fb4dd}.app-root{min-height:100vh;background:radial-gradient(circle at top left,var(--app-gradient-start) 0%,var(--bg-color) 55%);color:var(--text-color)}.tabs-header{padding:14px 20px 0;background:transparent}.tabs-main-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.tabs-segment{display:inline-flex;gap:8px;padding:6px;border-radius:16px;border:1px solid var(--border-color);background:linear-gradient(180deg,var(--card-bg-soft) 0%,var(--card-bg) 100%);box-shadow:inset 0 1px #ffffff59}.crypto-tabs-segment{display:flex;margin-top:8px}.tab-btn{border:1px solid transparent;border-radius:12px;background:var(--button-bg);color:var(--muted-text);font-weight:700;letter-spacing:.015em;padding:10px 20px;min-width:132px;min-height:42px;cursor:pointer;transition:all .15s ease}.theme-toggle{display:inline-flex;align-items:center;gap:10px;min-height:42px;border:1px solid var(--border-color);border-radius:12px;background:var(--card-bg-soft);color:var(--text-color);padding:8px 10px 8px 12px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px var(--shadow-color)}.theme-toggle-track{width:42px;height:22px;border-radius:999px;border:1px solid var(--border-color);background:var(--field-bg);padding:2px}.theme-toggle-thumb{display:block;width:16px;height:16px;border-radius:999px;background:var(--spot-color);box-shadow:0 2px 8px #0000003d;transform:translate(18px);transition:transform .15s ease,background .15s ease}.app-root[data-theme=light] .theme-toggle-thumb{background:#f59e0b;transform:translate(0)}.backtest-run-page{display:grid;gap:14px;min-width:0}.backtest-run-card{padding:14px}.backtest-run-form{display:grid;gap:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.field{display:grid;gap:6px;font-size:13px;color:var(--muted-text)}.field input,.field select,.field textarea{width:100%;box-sizing:border-box;border:1px solid var(--border-color);border-radius:10px;background:var(--field-bg);color:var(--text-color);padding:9px 10px;font-size:14px}.toggle-grid{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted-text)}.json-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.primary-btn,.secondary-btn{border:1px solid var(--border-color);border-radius:10px;padding:9px 12px;font-size:14px;font-weight:600;cursor:pointer}.primary-btn{background:var(--active-bg);color:var(--active-text);border-color:var(--active-bg)}.secondary-btn{background:var(--field-bg);color:var(--text-color)}.backtest-run-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px}.jobs-block h3{margin:0 0 8px;font-size:15px}.jobs-list{display:grid;gap:8px;max-height:280px;overflow:auto}.job-row{border:1px solid #dbe4f0;border-radius:10px;background:#f8fbff;display:flex;gap:8px;align-items:center;padding:6px;font-size:13px}.job-row.selected{border-color:#1d4ed8;background:#eff6ff}.job-row-main{border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:4px 6px;font:inherit;color:inherit;cursor:pointer;text-align:left}.job-row-action{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.job-row-action:disabled{opacity:.6;cursor:progress}.status-pill{border-radius:999px;padding:2px 8px;font-size:12px;border:1px solid #cbd5e1}.status-pill-btn{cursor:pointer}.status-pill.queued,.status-pill.running{background:#fef9c3;border-color:#fcd34d}.status-pill.stop_requested{background:#fef3c7;border-color:#f59e0b}.status-pill.stopped{background:#f1f5f9;border-color:#cbd5e1}.status-pill.completed{background:#dcfce7;border-color:#86efac}.status-pill.failed{background:#fee2e2;border-color:#fca5a5}.logs-card{padding:14px;min-width:0}.logs-pre{margin:0;border-radius:10px;border:1px solid #cbd5e1;background:#0f172a;color:#e2e8f0;padding:10px;width:100%;max-width:100%;max-height:min(42vh,520px);overflow-x:auto;overflow-y:auto;font-size:12px;line-height:1.35}.backtest-run-page>.card{min-width:0}.optuna-page{display:grid;gap:14px;padding:14px}.optuna-card{padding:14px}.optuna-form{display:grid;gap:12px}.optuna-actions{display:flex;gap:10px;flex-wrap:wrap}.form-error{margin:0;color:#b91c1c;font-size:13px}.optuna-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:8px}.optuna-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.optuna-collapse-btn{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#334155;padding:6px 10px;font-size:12px;font-weight:600;cursor:pointer}.optuna-runs-filters{display:flex;align-items:center;gap:8px}.optuna-study-runs-scroll{max-height:420px;overflow:auto;border:1px solid #dbe4f0;border-radius:10px}.field-inline{width:auto;min-width:160px}.field-label{font-size:12px;color:#64748b;font-weight:600}.optuna-list{display:grid;gap:8px;max-height:260px;overflow:auto}.optuna-list-item{border:1px solid #dbe4f0;border-radius:10px;background:#f8fbff;color:#1e293b;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px}.optuna-list-item.optuna-list-item-positive{border-color:#86efac;background:#f0fdf4}.optuna-list-item.optuna-list-item-negative{border-color:#fda4af;background:#fff1f2}.optuna-list-item.active{border-color:#1d4ed8;box-shadow:0 0 0 1px #1d4ed840 inset}.optuna-list-item-select{border:0;background:transparent;color:inherit;width:100%;min-width:0;text-align:left;display:grid;gap:3px;padding:0;cursor:pointer}.optuna-list-item-main{font-size:13px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.optuna-list-item-meta{font-size:12px;color:#64748b}.optuna-list-item-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.optuna-delete-btn{border:1px solid #fca5a5;background:#fff1f2;color:#b91c1c;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.optuna-delete-btn:disabled{opacity:.6;cursor:not-allowed}.optuna-progress-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;font-size:14px}.optuna-progress-wrap{display:grid;gap:10px}.optuna-params-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px 12px;font-size:14px}.optuna-json-pre{margin:0}.optuna-live-logs{display:grid;gap:6px}.optuna-fixed-base,.optuna-tunable-groups{display:grid;gap:8px;border:1px solid #dbe4f0;border-radius:12px;padding:10px 12px;background:#f8fbff}.optuna-tunable-groups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 10px}.optuna-tunable-group-item{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border:1px solid #dbe4f0;border-radius:10px;background:#fff}.optuna-tunable-group-item input[type=checkbox]{margin-top:2px;width:16px;height:16px;flex:0 0 auto}.optuna-tunable-group-text{display:grid;gap:2px}.optuna-tunable-group-title{font-size:13px;color:#0f172a;font-weight:600}.optuna-tunable-group-title-row{display:inline-flex;align-items:center;gap:6px}.optuna-tunable-group-hint{font-size:12px;color:#64748b}.optuna-tunable-group-help{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid #94a3b8;border-radius:999px;color:#475569;background:#fff;font-size:11px;font-weight:700;line-height:1;cursor:help;-webkit-user-select:none;user-select:none}.optuna-tunable-group-help:focus-visible{outline:2px solid #3b82f6;outline-offset:1px}.optuna-tunable-group-tooltip-floating{position:fixed;max-height:min(42vh,220px);overflow:auto;padding:8px 10px;border-radius:8px;border:1px solid #cbd5e1;background:#0f172a;color:#e2e8f0;font-size:11px;line-height:1.35;box-shadow:0 8px 22px #0f172a59;z-index:1000;pointer-events:none}.optuna-tunable-group-tooltip-title{display:block;color:#cbd5e1;font-weight:700;margin-bottom:4px}.optuna-tunable-group-tooltip-list{display:block;color:#e2e8f0;word-break:break-word}.optuna-tunable-groups-note{font-size:12px}.optuna-fixed-base-grid{grid-template-columns:minmax(220px,1.6fr) minmax(140px,1fr) minmax(140px,1fr) minmax(170px,1fr) minmax(140px,1fr)}.optuna-fixed-base-note{font-size:12px}.optuna-live-logs-pre{margin:0;border-radius:10px;border:1px solid #cbd5e1;background:#0f172a;color:#e2e8f0;padding:10px;width:100%;max-width:100%;max-height:min(34vh,360px);overflow-x:auto;overflow-y:auto;font-size:12px;line-height:1.35}@media (max-width: 1100px){.optuna-fixed-base-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}.optuna-heartbeat-stale{color:#b91c1c;font-weight:700}.section-title{margin:0 0 10px;font-size:18px}.section-subtitle{margin:2px 0 6px;font-size:15px;color:#334155}.strategy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}.strategy-grid .field input[type=checkbox]{width:18px;height:18px}.strategy-section-base .strategy-grid{grid-template-columns:minmax(180px,1.2fr) minmax(120px,.8fr) minmax(140px,.9fr) minmax(120px,.85fr) minmax(120px,.85fr)}.strategy-section-base .strategy-field-compact input,.strategy-section-base .strategy-field-compact select,.strategy-section-base .strategy-field-compact textarea{max-width:180px}.strategy-section{display:grid;gap:8px;border:1px solid #d6deec;border-radius:12px;padding:12px;background:linear-gradient(180deg,#f8fbff,#f4f7fd)}.strategy-section+.strategy-section{margin-top:10px}.strategy-section-title{margin:0 0 2px;font-size:16px;font-weight:700;color:#0f172a;text-align:center;letter-spacing:.01em}.error-text{color:#b91c1c;margin:6px 0 0}.muted{color:#64748b}.tab-btn.active{background:var(--active-bg);color:var(--active-text);border-color:var(--active-bg);box-shadow:inset 0 1px #ffffff14}.tab-btn:not(.active):hover{border-color:var(--muted-text);color:var(--text-color);background:var(--button-hover-bg)}.page{box-sizing:border-box;min-height:100vh;padding:20px;background:radial-gradient(circle at top left,var(--app-gradient-start) 0%,var(--bg-color) 55%);color:var(--text-color);font-family:IBM Plex Sans,Segoe UI,sans-serif}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 8px 28px var(--shadow-color);margin-bottom:18px}.controls{padding:16px;background:linear-gradient(180deg,var(--card-bg-soft) 0%,var(--card-bg) 100%)}.backtest-page{padding-top:12px}.backtest-run-controls{padding:14px;background:linear-gradient(180deg,#f9fbff,#f1f5fc)}.backtest-run-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:12px}.backtest-run-field{min-width:0;position:relative}.backtest-run-autocomplete-input{min-width:100%}.backtest-run-autocomplete-input:disabled{opacity:.65;cursor:not-allowed}.backtest-run-dropdown{position:absolute;left:0;right:0;top:calc(100% + 6px);max-height:340px;overflow-y:auto;border:1px solid #c6d1e3;background:#fff;border-radius:12px;box-shadow:0 10px 26px #1c253829;padding:4px;z-index:30}.backtest-run-option{width:100%;border:0;background:transparent;color:#334155;text-align:left;font-family:inherit;font-size:15px;line-height:1.35;padding:8px 10px;border-radius:8px;cursor:pointer}.backtest-run-option-row{display:flex;align-items:stretch;gap:6px;border-radius:8px;padding:0}.backtest-run-option-row.selected{background:#0f172a;color:#fff}.backtest-run-option-select{flex:1;color:inherit}.backtest-run-option-row.selected .backtest-run-option-select:hover{background:#ffffff14}.backtest-run-option-delete{flex:0 0 auto;width:28px;min-height:32px;border:0;border-radius:8px;margin:4px 4px 4px 0;background:#fee2e2;color:#b91c1c;font-size:16px;line-height:1;font-weight:700;cursor:pointer}.backtest-run-option-delete:hover{background:#fecaca}.backtest-run-option-delete:disabled{opacity:.5;cursor:wait}.backtest-run-option-row.selected .backtest-run-option-delete{background:#b91c1c38;color:#fecaca}.backtest-run-option-row.selected .backtest-run-option-delete:hover{background:#b91c1c5c}.backtest-run-option:hover{background:#eef2f8}.backtest-run-option.selected{background:#0f172a;color:#fff}.backtest-run-option-muted,.backtest-run-option-muted:hover{cursor:default;color:#64748b;background:transparent}.run-quick-stats{margin-top:10px;display:flex;flex-direction:column;gap:8px}.run-quick-stats-line{font-size:12px;line-height:1.25;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.run-summary-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.run-summary-pill{display:grid;grid-template-columns:auto 1fr;column-gap:6px;row-gap:1px;align-items:baseline;padding:6px 8px;border-radius:9px;border:1px solid #d8deea;background:#f8fafe}.run-summary-pill-pnl{border-color:#a5b4fc;background:linear-gradient(180deg,#eef2ff,#e9efff)}.run-summary-pill-pnl.positive{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#e8f9ef)}.run-summary-pill-pnl.negative{border-color:#fca5a5;background:linear-gradient(180deg,#fef2f2,#fdecec)}.run-summary-pill-pnl.positive .run-summary-pill-value{color:var(--up-color)}.run-summary-pill-pnl.negative .run-summary-pill-value{color:var(--down-color)}.run-summary-pill-wins{border-color:#86efac;background:linear-gradient(180deg,#f0fdf4,#e8f9ef)}.run-summary-pill-losses{border-color:#fca5a5;background:linear-gradient(180deg,#fef2f2,#fdecec)}.run-summary-pill-label{font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.03em;grid-column:1 / 2}.run-summary-pill-value{font-size:16px;line-height:1.1;font-weight:700;color:#1f2937;grid-column:2 / 3;justify-self:end}.run-summary-pill-sub{grid-column:1 / 3;justify-self:end;font-size:11px;color:#64748b}.run-summary-symbol-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.run-summary-symbol-pill{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:8px;padding:8px 10px;border-radius:9px;border:1px solid #d8deea;background:#fbfcff}.run-summary-symbol-head{display:flex;align-items:center;justify-content:flex-start}.run-summary-symbol-code{font-size:13px;font-weight:700;color:#334155;letter-spacing:.01em}.run-summary-symbol-meta{font-size:12px;color:#64748b;font-variant-numeric:tabular-nums}.run-summary-symbol-total{font-size:14px;font-weight:700;color:#334155;font-variant-numeric:tabular-nums}.run-summary-symbol-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto;gap:8px;row-gap:2px;border-left:1px dashed #c6d1e3;padding-left:12px;margin-left:2px}.run-summary-symbol-col-head{font-size:11px;line-height:1.1;text-transform:uppercase;letter-spacing:.03em;color:#64748b}.run-summary-symbol-col-count{font-size:13px;line-height:1.15;color:#475569;font-variant-numeric:tabular-nums}.run-summary-symbol-col-money{font-size:13px;line-height:1.15;font-weight:700;color:#334155;font-variant-numeric:tabular-nums}.backtest-market-controls{margin-bottom:18px}.backtest-main-chart-card{padding:10px 12px 12px}.backtest-chart-wrap{height:420px}.backtest-tooltip{background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;box-shadow:0 4px 14px #0f172a1f}.backtest-tooltip-title{margin-bottom:6px;font-weight:700}.backtest-tooltip-row{color:#334155;font-size:13px;line-height:1.3}.backtest-tooltip-sep{margin:6px 0;border-top:1px dashed #cbd5e1}.backtest-deals-table{min-width:1180px}.backtest-deals-table td{vertical-align:middle;text-align:center}.controls-row{display:grid;grid-template-columns:92px 92px 54px 54px minmax(300px,1fr) 96px;gap:12px;align-items:center}.controls-row select,.controls-row button,.open-market-link{border:1px solid #c6d1e3;background:linear-gradient(180deg,#fff,#f5f8fd);border-radius:12px;color:var(--text-color);font-size:16px;height:46px;padding:0 12px;box-shadow:0 2px 8px #1c25380f}.controls-row button{cursor:pointer;font-size:26px;font-weight:700;line-height:1}.open-market-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:600}.controls-row select:hover,.controls-row button:hover,.open-market-link:hover{border-color:#9db0cf}.controls-row button:disabled{cursor:not-allowed;opacity:.45}.open-market-link.disabled{pointer-events:none;opacity:.45}.market-select{padding:0 12px}.arb-controls-row{grid-template-columns:140px 92px 54px 54px minmax(300px,1fr)}.row{display:flex;gap:18px;flex-wrap:wrap}.stats{padding:8px 10px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:8px;max-width:1360px;margin:0 auto}.stat-box{display:flex;flex-direction:column;gap:6px;padding:8px 10px;min-height:92px;border-radius:10px;border:1px solid var(--border-color);background:#fff}.stat-box-stack{gap:8px;justify-content:center}.stack-item{display:flex;flex-direction:column;gap:1px}.stack-item-inline{display:flex;align-items:center;gap:8px}.stack-item-split{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:8px}.stack-item-split .value{justify-self:end;text-align:right}.stack-item-split .subvalue{grid-column:2;justify-self:end;text-align:right}.stat-box-updown .value{font-size:clamp(18px,1.9vw,30px);line-height:1.1;font-weight:700}.stat-box-updown .stack-item-inline{width:100%;flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.stat-box-updown .label{font-size:15px;font-weight:700;line-height:1;letter-spacing:.03em;color:#64748b}.stat-box-updown .stack-item+.stack-item{margin-top:6px}.stack-item+.stack-item{padding-top:6px;border-top:1px dashed var(--border-color)}.label{font-size:12px;color:var(--muted-text);text-transform:uppercase;letter-spacing:.04em}.value{font-size:clamp(18px,1.55vw,34px);line-height:1.15;font-weight:700}.subvalue{font-size:12px;color:var(--muted-text)}.stat-box-end{align-items:center;justify-content:center;text-align:center;min-height:92px}.stat-box-end .label{font-size:13px}.end-value{font-size:clamp(36px,4vw,64px);line-height:1;font-weight:800}.diff-positive{color:var(--up-color)}.diff-negative{color:var(--down-color)}.up-value{color:var(--up-color)}.down-value{color:var(--down-color)}.spot-value{color:var(--spot-color)}.chart{padding:10px 12px 14px}.chart-wrap{width:100%;height:420px}.arb-chart-card{padding-top:12px}.arb-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 10px}.arb-chart-head h3{margin:0;color:var(--text-color);font-size:16px}.arb-chart-head span{color:var(--muted-text);font-size:13px;font-weight:600}.arb-signal-chip{border:1px solid var(--border-color);border-radius:8px;padding:7px 10px;line-height:1;white-space:nowrap}.arb-signal-chip.active{border-color:#22c55e73;background:#22c55e1a;color:var(--up-color)}.arb-signal-chip.neutral{background:var(--button-bg);color:var(--muted-text)}.arb-chart-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;flex-wrap:wrap}.arb-position-chip{color:var(--muted-text);font-size:12px;font-weight:700;white-space:nowrap}.arb-trade-btn{border:1px solid var(--border-color);border-radius:8px;padding:7px 10px;color:var(--text-color);background:var(--button-bg);font-size:12px;font-weight:800;line-height:1}.arb-trade-btn.buy{border-color:#22c55e73;color:var(--up-color)}.arb-trade-btn.sell{border-color:#f8717173;color:var(--down-color)}.arb-trade-btn:disabled{cursor:not-allowed;opacity:.45}.arb-chart-wrap{width:100%;height:320px}.arb-tooltip{background:var(--card-bg);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 4px 14px var(--shadow-color);color:var(--text-color);padding:10px 12px}.arb-tooltip-title{color:var(--muted-text);font-weight:700;margin-bottom:6px}.arb-history-card{padding:12px 14px 14px}.arb-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 10px}.arb-history-head h3{margin:0;color:var(--text-color);font-size:16px}.arb-history-head span{color:var(--muted-text);font-size:13px;font-weight:700}.arb-history-table-wrap{overflow-x:auto;border:1px solid var(--border-color);border-radius:8px}.arb-history-table{width:100%;min-width:1180px;border-collapse:collapse;font-size:13px}.arb-history-table th,.arb-history-table td{padding:9px 10px;border-bottom:1px solid rgba(148,163,184,.14);text-align:left;white-space:nowrap}.arb-history-table th{color:var(--muted-text);background:var(--field-bg-soft);font-size:12px;font-weight:800}.arb-history-table tbody tr:last-child td{border-bottom:0}.arb-history-table tbody tr.positive td:nth-child(11){color:var(--up-color);font-weight:800}.arb-history-table tbody tr.negative td:nth-child(11){color:var(--down-color);font-weight:800}.chart-wrap-volume{width:100%;height:150px;margin-top:10px}.volume-panels{display:grid;grid-template-columns:1fr;gap:8px}.chart-market-trades{margin-top:12px;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;background:#fff}.chart-market-trades-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:linear-gradient(180deg,#f7f9fd,#edf2fa);border-bottom:1px solid var(--border-color)}.chart-market-trades-head h3{margin:0;font-size:14px;color:#334155;letter-spacing:.01em}.chart-market-trades-head span{font-size:12px;color:var(--muted-text);font-weight:600}.chart-market-trades-scroll{max-height:320px}.chart-market-trades-table{min-width:980px}.chart-market-trades-table th,.chart-market-trades-table td{text-align:center;vertical-align:middle}.chart-market-trades-table td{padding-top:8px;padding-bottom:8px}.chart-market-trades-table .cell-center{min-height:50px;display:flex;align-items:center;justify-content:center}.chart-market-trades-table .kv-rows,.chart-market-trades-table .kv-row{align-items:center;justify-content:center}.chart-market-trades-table .kv-rows{min-height:50px}.chart-market-trades-table .kv-label,.chart-market-trades-table .kv-value{text-align:center}.chart-market-trades-table .outcome-side,.chart-market-trades-table .result-chip{margin-left:auto;margin-right:auto}.deals-page .deals-table td{vertical-align:middle}.deals-page .deals-table .cell-center{min-height:50px;display:flex;align-items:center;justify-content:center}.kv-rows.compact{gap:2px}.kv-row-inline{justify-content:center}.depth-accordion{margin-top:12px;border:1px solid var(--border-color);border-radius:12px;background:#fff;overflow:hidden}.depth-accordion-toggle{width:100%;border:0;border-bottom:1px solid var(--border-color);background:linear-gradient(180deg,#f7f9fd,#edf2fa);color:#334155;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;cursor:pointer}.depth-toggle-icon{font-size:18px;line-height:1;transition:transform .15s ease}.depth-toggle-icon.expanded{transform:rotate(180deg)}.depth-accordion .volume-panels{padding:8px 10px 12px}.volume-title{font-size:12px;color:var(--muted-text);margin:2px 0 4px;text-transform:uppercase;letter-spacing:.03em}.placeholder{min-height:64px;display:flex;align-items:center;justify-content:center;color:var(--muted-text);font-size:15px}.placeholder.error{color:#b91c1c}.deals-page{padding-top:12px}.deals-stats-grid{padding:12px;display:grid;gap:10px;grid-template-columns:repeat(5,minmax(140px,1fr))}.deal-refresh-icon{display:none}.refresh-arrows-icon{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}.deals-pnl-chart-card{padding:8px 12px 10px}.deals-pnl-chart-toggle{width:100%;border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:default;text-align:left}.deals-pnl-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:2px 2px 6px}.deals-pnl-chart-caret{display:none}.deals-pnl-chart-total{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.deals-pnl-chart-wrap{width:100%;height:140px}.deal-stat-box{background:#fff;border:1px solid var(--border-color);border-radius:10px;padding:10px 12px;min-height:88px;display:flex;flex-direction:column;justify-content:center;gap:6px}.deal-stat-box .value{font-size:clamp(20px,1.9vw,32px)}.deal-refresh-btn{border:1px solid #0f172a;border-radius:10px;background:#0f172a;color:#fff;font-size:14px;font-weight:700;padding:10px 12px;cursor:pointer}.deal-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.deal-stat-box-refresh{justify-content:center;align-items:center}.deals-filters-card{padding:14px}.deals-filters-main{display:flex;align-items:flex-start;gap:18px}.filters-inputs-col{display:flex;gap:10px;align-items:flex-end;width:max-content;min-width:0;flex:0 0 auto;border:1px solid #c9d2e2;border-radius:14px;padding:8px 10px;background:linear-gradient(180deg,#f9fbff,#f3f6fc)}.filters-chip-stack{display:flex;flex-direction:column;gap:8px;min-width:0;border:1px solid #c9d2e2;border-radius:14px;padding:10px 12px;background:linear-gradient(180deg,#fbfdff,#f4f7fd)}.filters-actions-col{margin-left:auto;display:flex;align-items:flex-start}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-label{font-size:12px;color:var(--muted-text);font-weight:600}.chip-group{display:flex;gap:6px;flex-wrap:wrap}.filter-group-top{min-width:0;width:250px}.filter-row-group{flex-direction:row;align-items:center;gap:10px}.chip-btn,.reset-btn{border:1px solid var(--border-color);border-radius:999px;background:#fff;color:var(--text-color);padding:6px 12px;cursor:pointer;font-weight:600;font-size:13px}.reset-btn{min-height:38px}.reset-btn-danger{border-color:#fca5a5;color:#b91c1c;background:linear-gradient(180deg,#fff5f5,#ffeaea);box-shadow:0 2px 10px #b91c1c1f}.reset-btn-danger:hover{border-color:#f87171;background:linear-gradient(180deg,#ffecec,#ffdfdf)}.date-input{border:1px solid var(--border-color);border-radius:10px;background:#fff;color:var(--text-color);padding:8px 10px;font-size:14px;min-height:38px}.text-input{border:1px solid var(--border-color);border-radius:10px;background:#fff;color:var(--text-color);padding:8px 10px;font-size:14px;min-height:38px;min-width:220px}.nav-arrows{display:flex;gap:6px;margin-top:2px}.nav-arrow-btn{width:32px;height:30px;border-radius:9px;border:1px solid var(--border-color);background:linear-gradient(180deg,#fff,#f4f6fb);color:#1f2a44;cursor:pointer;font-size:22px;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px 8px #1c253814}.nav-arrow-btn:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.nav-arrow-btn:not(:disabled):hover{border-color:#94a3b8;transform:translateY(-1px)}.chip-btn.active{background:#0f172a;color:#fff;border-color:#0f172a}.deals-table-card{padding:0;overflow:hidden}.deals-table-scroll{max-height:65vh;overflow:auto}.deals-table{width:100%;min-width:1140px;table-layout:fixed;border-collapse:separate;border-spacing:0}.deals-table th,.deals-table td{padding:10px 8px;text-align:left;border-bottom:1px solid #e6ebf4;vertical-align:top;font-size:14px}.deals-table thead th{position:sticky;top:0;background:#f2f4f9;z-index:1;color:var(--muted-text);font-size:12px;text-transform:uppercase;letter-spacing:.03em;text-align:center}.deal-mobile-card{display:none}.deal-mobile-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.deal-mobile-primary{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.deal-mobile-index{font-size:13px;font-weight:700;color:var(--muted-text)}.deal-mobile-card-grid{display:grid;gap:8px}.deal-mobile-card-event-head{display:grid;gap:1px;min-width:0}.deal-mobile-card-title-row,.deal-mobile-card-event-title,.deal-mobile-card-event-subtitle{min-width:0;overflow-wrap:anywhere}.deal-mobile-card-event-title{text-decoration:none;font-weight:800;color:var(--text-color)}.deal-mobile-card-event-subtitle{color:var(--muted-text)}.deal-mobile-meta{display:grid;gap:2px;min-width:0}.deal-mobile-label{font-size:10px;font-weight:700;line-height:1.1;text-transform:uppercase;color:var(--muted-text)}.deal-mobile-value{min-width:0;font-size:13px;font-weight:600;line-height:1.2;color:var(--text-color);overflow-wrap:anywhere}.deal-mobile-subvalue{min-width:0;font-size:11px;line-height:1.2;color:var(--muted-text);overflow-wrap:anywhere}.backtest-history-page{display:grid;gap:14px;min-width:0;height:calc(100vh - 78px);min-height:0;padding-top:12px}.backtest-history-card{padding:14px;overflow:hidden;display:flex;flex-direction:column;min-height:0}.backtest-history-controls{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:10px}.backtest-history-search-field{min-width:min(420px,100%)}.backtest-history-refresh-btn{align-self:end;height:40px;padding:9px 14px}.backtest-history-scroll{overflow:auto;flex:1;min-height:0;border:1px solid #d7deec;border-radius:12px;background:#fff}.backtest-history-table{width:max-content;min-width:100%;border-collapse:collapse}.backtest-history-table>thead>tr>th,.backtest-history-table>tbody>tr>td{border-bottom:1px solid #e3e8f2;border-right:1px solid #eef2f8;padding:11px 13px;font-size:14px;white-space:nowrap;color:#1e293b}.backtest-history-table>tbody>tr>td.positive{color:var(--up-color)}.backtest-history-table>tbody>tr>td.negative{color:var(--down-color)}.backtest-history-table>thead>tr>th{position:sticky;top:0;z-index:2;background:#f6f9ff;color:#475569;text-transform:uppercase;letter-spacing:.04em;font-size:13px}.table-sort-btn{border:0;background:transparent;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0}.backtest-history-table>thead>tr>th:last-child,.backtest-history-table>tbody>tr>td:last-child{border-right:none}.backtest-history-table>tbody>tr.backtest-history-row:hover>td{background:#f8fbff}.backtest-history-row{cursor:pointer}.backtest-history-row.expanded>td{background:#f8fbff}.backtest-history-row .kv-label{font-size:13px}.backtest-history-row .kv-value{font-size:15px;font-weight:600}.backtest-history-row .stat-group{gap:5px}.backtest-history-row .stat-group-label,.backtest-history-row .stat-count,.backtest-history-row .stat-money{font-size:14px}.backtest-retry-btn{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:600;line-height:1;padding:5px 10px;cursor:pointer}.backtest-retry-btn:hover{border-color:#94a3b8;background:#f8fafc}.backtest-row-actions{gap:8px}.backtest-delete-btn{border:1px solid #fecaca;border-radius:999px;background:#fff5f5;color:#b91c1c;font-size:12px;font-weight:700;line-height:1;padding:5px 10px;min-width:30px;cursor:pointer}.backtest-delete-btn:hover{background:#fee2e2;border-color:#fca5a5}.backtest-delete-btn:disabled{opacity:.6;cursor:default}.backtest-history-deals-wrap{border:1px solid #dbe4f0;border-radius:12px;background:#f8fbff}.backtest-history-deals-panel{margin-top:10px}.backtest-history-deals-panel-title{font-size:14px;font-weight:700;color:#334155;margin:0 0 8px;padding:0 2px}.backtest-history-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a61;display:grid;place-items:center;z-index:50;padding:20px}.backtest-history-modal{width:min(1500px,calc(100vw - 40px));max-height:calc(100vh - 40px);background:#fff;border:1px solid #dbe4f0;border-radius:14px;box-shadow:0 24px 64px #0f172a38;padding:12px;display:flex;flex-direction:column;gap:10px}.backtest-history-modal-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.backtest-history-modal-nav{display:flex;align-items:center;gap:8px}.backtest-history-modal-nav-btn{border:1px solid #cbd5e1;border-radius:10px;width:36px;height:34px;background:#fff;color:#334155;font-size:18px;line-height:1;cursor:pointer}.backtest-history-modal-nav-btn:disabled{opacity:.5;cursor:default}.backtest-history-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px}.backtest-history-summary-card{border:1px solid #d7deec;border-radius:12px;background:#f8fbff;padding:10px 12px;display:grid;gap:6px}.backtest-history-summary-card .backtest-history-summary-label{color:#64748b;font-weight:700;font-size:13px;letter-spacing:.02em}.backtest-history-summary-card .backtest-history-summary-value{font-size:22px;font-weight:800;color:#0f172a}.backtest-history-summary-card .backtest-history-summary-value.neutral{color:#0f172a}.backtest-history-summary-card .backtest-history-summary-sub{font-size:14px;color:#64748b;font-weight:700}.backtest-history-summary-card.positive .backtest-history-summary-value,.backtest-history-summary-card.positive .backtest-history-summary-sub{color:var(--up-color)}.backtest-history-summary-card.negative .backtest-history-summary-value,.backtest-history-summary-card.negative .backtest-history-summary-sub{color:var(--down-color)}.backtest-history-pnl-card{border:1px solid #d7deec;border-radius:12px;background:#f8fbff;padding:10px 12px;display:grid;gap:8px}.backtest-history-pnl-head{display:flex;align-items:center;justify-content:space-between;font-weight:700;color:#64748b}.backtest-history-pnl-chart{height:210px}.backtest-history-modal-filters{border:1px solid #c7d2e6;border-radius:14px;background:#f8fbff;padding:12px;display:grid;gap:10px}.backtest-history-modal-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.backtest-history-modal-filter-label{min-width:64px;font-weight:700;color:#64748b;font-size:14px}.backtest-history-modal-filters .chip-group{gap:8px}.backtest-history-modal-filters .chip-btn{min-width:94px}.backtest-history-modal-close{border:1px solid #cbd5e1;border-radius:10px;width:34px;height:34px;background:#fff;color:#334155;font-size:20px;line-height:1;cursor:pointer}.backtest-history-deals-scroll{max-height:430px;overflow:auto}.backtest-history-deals-table{width:100%;min-width:1180px}.cell-stack{display:flex;flex-direction:column;gap:3px}.kv-rows{display:flex;flex-direction:column;gap:4px}.kv-row{display:flex;align-items:center;gap:8px}.kv-label{text-transform:uppercase;font-weight:700;letter-spacing:.02em}.kv-value{font-variant-numeric:tabular-nums}.col-index{width:40px}.col-action{width:72px}.col-run,.col-date{width:118px}.col-time{width:128px}.col-price{width:108px}.col-event{width:230px;text-align:center}.col-event .cell-stack{align-items:center;text-align:center}.col-center{text-align:center!important}.col-run .table-link-btn{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outcome-side{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:4px 10px;border-radius:999px;font-weight:700;font-size:12px;border:1px solid transparent}.outcome-side.up{color:#166534;background:#ecfdf3;border-color:#86efac}.outcome-side.down{color:#991b1b;background:#fff1f2;border-color:#fda4af}.outcome-side.neutral{color:#475569;background:#f8fafc;border-color:#cbd5e1}.muted{color:var(--muted-text);font-size:12px}.result-chip{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;border:1px solid var(--border-color)}.result-chip.won{border-color:#a7f3d0;color:#047857;background:#ecfdf5}.result-chip.lost{border-color:#fecaca;color:#b91c1c;background:#fef2f2}.result-chip.even{border-color:#cbd5e1;color:#475569;background:#f8fafc}.row-result-won{background:#f0fdf4}.row-result-lost{background:#fef2f2}.table-loader{padding:10px;text-align:center;color:var(--muted-text)}.table-link-btn{border:0;padding:0;background:transparent;color:#1d4ed8;cursor:pointer;text-align:left;font:inherit;line-height:inherit}.table-link-btn:hover{text-decoration:underline}.deal-row-sync-btn{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:700;line-height:1;padding:5px 10px;cursor:pointer}.deal-row-sync-btn:hover{border-color:#94a3b8;background:#f8fafc}.deal-row-sync-btn:disabled{opacity:.65;cursor:wait}.positive{color:var(--up-color)}.negative{color:var(--down-color)}.auth-gate{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,var(--app-gradient-start) 0%,var(--bg-color) 62%);padding:20px;color:var(--text-color)}.auth-card{width:min(420px,100%);background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:24px;box-shadow:0 20px 48px var(--shadow-color);display:grid;gap:12px}.auth-card h1{margin:0;font-size:1.25rem}.auth-card p{margin:0;color:var(--muted-text)}.auth-input{border:1px solid var(--border-color);border-radius:10px;background:var(--field-bg);color:var(--text-color);padding:10px 12px;font-size:14px}.auth-submit{border:0;border-radius:10px;padding:10px 12px;background:var(--active-bg);color:var(--active-text);cursor:pointer;font-weight:600}.auth-submit:disabled{opacity:.65;cursor:default}.auth-error{color:#b91c1c}.auth-logout{border:1px solid var(--border-color);border-radius:10px;padding:8px 12px;background:var(--card-bg-soft);color:var(--text-color);cursor:pointer}@media (max-width: 1024px){.tabs-header{padding:10px 10px 0}.tabs-segment{width:100%}.tab-btn{flex:1 1 auto;min-width:0}.controls-row{grid-template-columns:1fr 1fr 52px 52px 88px}.market-select{grid-column:1 / 5}.stats-grid{grid-template-columns:1fr;max-width:none}.chart-wrap{height:360px}.chart-wrap-volume{height:140px}.deals-stats-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.backtest-run-controls-grid{grid-template-columns:1fr}.strategy-section-base .strategy-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.strategy-section-base .strategy-field-compact input,.strategy-section-base .strategy-field-compact select,.strategy-section-base .strategy-field-compact textarea{max-width:none}.run-summary-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.run-summary-symbol-row{grid-template-columns:1fr}.backtest-chart-wrap{height:360px}.deals-pnl-chart-wrap{height:130px}.deals-filters-main{flex-wrap:wrap}.filters-inputs-col,.filters-chip-stack{min-width:100%}.filters-actions-col{margin-left:0}}@media (max-width: 640px){.tabs-header{padding:6px 8px 0}.tabs-main-row{gap:6px}.tabs-segment{gap:4px;padding:4px;border-radius:12px}.tabs-main-row>.tabs-segment{flex:1 1 auto;min-width:0}.tab-btn{min-height:34px;min-width:84px;border-radius:9px;padding:7px 12px;font-size:13px;line-height:1.1}.theme-toggle{flex:0 0 auto;gap:6px;min-height:34px;border-radius:10px;padding:6px 7px 6px 9px;font-size:12px}.theme-toggle-track{width:32px;height:18px;padding:2px}.theme-toggle-thumb{width:12px;height:12px;transform:translate(14px)}.crypto-tabs-segment{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.crypto-tabs-segment .tab-btn{flex:0 0 auto;min-width:max-content;white-space:nowrap}.page{padding:10px}.stats-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.deals-stats-grid{position:sticky;top:max(8px,env(safe-area-inset-top));z-index:30;grid-template-columns:minmax(66px,.9fr) minmax(76px,1fr) minmax(86px,1.1fr) minmax(86px,1.1fr) 28px;gap:0;padding:6px 4px;align-items:stretch;background:var(--card-bg);overflow:hidden;box-shadow:0 8px 24px #00000029}.deals-stats-grid .deal-stat-box{min-height:38px;padding:3px 5px;gap:0;border:0;border-radius:0;background:transparent;box-shadow:none;justify-content:center}.deals-stats-grid .deal-stat-box .label{font-size:9px;font-weight:600;line-height:1.2;white-space:nowrap;color:var(--muted-text);text-transform:uppercase}.deals-stats-grid .deal-stat-count{font-size:8px;font-weight:800;color:var(--muted-text)}.deals-stats-grid .deal-stat-box .value{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:14.5px;font-weight:800;line-height:1.2;letter-spacing:-.2px;font-variant-numeric:tabular-nums;white-space:nowrap}.deals-stats-grid .deal-stat-box:not(.deal-stat-box-refresh){border-right:1px solid color-mix(in srgb,var(--border-color) 58%,transparent)}.deals-stats-grid .deal-stat-box .subvalue{display:none;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:800;line-height:1.05;white-space:nowrap}.deals-stats-grid .deal-stat-box:nth-child(1){order:1}.deals-stats-grid .deal-stat-box:nth-child(2){order:2}.deals-stats-grid .deal-stat-box:nth-child(3){order:3}.deals-stats-grid .deal-stat-box:nth-child(4){order:4}.deals-stats-grid .deal-stat-box-refresh{order:5;grid-column:auto;min-height:38px;padding:0}.deals-stats-grid .deal-refresh-btn{width:26px;min-height:26px;aspect-ratio:1;padding:0;border-radius:999px;border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);font-size:18px;background:transparent;color:var(--muted-text);box-shadow:none;display:inline-flex;align-items:center;justify-content:center;justify-self:center;align-self:center}.deals-stats-grid .deal-refresh-label{display:none}.deals-stats-grid .deal-refresh-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.deals-stats-grid .deal-refresh-btn .refresh-arrows-icon{width:14px;height:14px}.backtest-chart-wrap{height:320px}.backtest-run-controls{padding:10px}.run-summary-pill-value{font-size:15px}.run-summary-symbol-breakdown{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:2px;column-gap:6px;padding-left:10px}.deals-pnl-chart-head{padding:0}.deals-pnl-chart-card{padding:8px 10px}.deals-pnl-chart-card:not(.is-expanded) .deals-pnl-chart-wrap{display:none}.deals-pnl-chart-toggle{cursor:pointer;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.deals-pnl-chart-caret{display:inline-flex;align-items:center;justify-content:center;min-width:64px;border-radius:8px;background:var(--button-bg);color:var(--text-color);font-size:11px;font-weight:700;padding:5px 8px}.deals-pnl-chart-wrap{margin-top:10px;height:140px}.deals-filters-card{padding:12px;border-radius:16px}.deals-filters-main{gap:10px}.filters-inputs-col{flex-direction:column;align-items:stretch;min-width:100%;width:100%;gap:8px;padding:0}.filters-inputs-col .filter-group-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;width:100%}.filters-inputs-col .filter-group-top .filter-label{display:none}.filters-inputs-col :is(.date-input,.text-input){width:100%;min-width:0;min-height:36px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-color);background:transparent;font-size:13px;color:var(--text-color)}.filters-inputs-col .nav-arrows{justify-content:flex-end;gap:6px;margin-top:0}.filters-inputs-col .nav-arrow-btn{width:36px;height:36px;border-radius:10px;border:1px solid var(--border-color);background:transparent;color:var(--text-color);font-size:16px;display:inline-flex;align-items:center;justify-content:center}.filter-group-top{min-width:100%}.filter-row-group{flex-direction:column;align-items:flex-start}.filters-chip-stack{gap:8px;padding:10px;border-radius:12px;border:1px solid var(--border-color);background:transparent;display:flex;flex-wrap:wrap;align-items:center}.filters-actions-col{width:100%;margin-top:4px}.filters-actions-col .reset-btn{width:100%;min-height:40px;border-radius:12px;border:1px solid var(--border-color);background:transparent;color:var(--text-color);font-size:14px;font-weight:700}.filters-chip-stack .chip-group{gap:5px}.filters-chip-stack .chip-btn{min-height:28px;padding:4px 10px;font-size:11px}.deals-result-filter-row,.deals-status-filter-row,.deals-ticker-filter-row .filter-label{display:none}.filters-actions-col{width:100%;margin-left:0}.filters-actions-col .reset-btn{width:100%;min-height:28px;border-radius:7px;padding:4px 10px;font-size:12px;background:var(--button-bg);border-color:var(--border-color);color:var(--text-color);box-shadow:none}.deals-table-scroll{max-height:none;overflow-y:visible;overflow-x:visible;padding:6px}.deals-table,.deals-table tbody,.deals-table tr,.deals-table td{display:block;width:100%}.deals-table{min-width:0;border-spacing:0}.deals-table thead{display:none}.deals-table tbody{display:grid;gap:5px}.deals-table tbody tr{border:0;border-radius:14px;background:transparent;overflow:hidden}.deals-table td{border-bottom:0;padding:0}.deals-table td:not(.deal-row-main-cell){display:none}.deals-page .deals-table .deal-row-main-cell>.cell-center{display:none}.deal-mobile-card{display:grid;gap:4px;min-height:52px;padding:10px 14px;border:1px solid var(--border-color);border-radius:16px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Inter,Segoe UI,sans-serif;text-align:left}.deals-table tbody tr:has(.deal-mobile-card-result-won),.deal-mobile-card-result-won{border-color:#10b98166;background:#10b98114;box-shadow:0 4px 12px #0000001a}.deals-table tbody tr:has(.deal-mobile-card-result-lost),.deal-mobile-card-result-lost{border-color:#ef444466;background:#ef444414;box-shadow:0 4px 12px #0000001a}.deal-mobile-card-head{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding-bottom:0;border-bottom:0;cursor:pointer}.deal-mobile-card.is-expanded .deal-mobile-card-head{padding-bottom:6px;border-bottom:1px solid color-mix(in srgb,var(--border-color) 38%,transparent)}.deal-mobile-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.deal-mobile-card-right{display:flex;align-items:center;gap:8px;margin-left:auto}.deal-mobile-card-event-head .deal-mobile-card-event-subtitle:before{display:none}.deal-mobile-side-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:28px;height:28px;border:none;border-radius:8px;font-size:16px;font-weight:900;line-height:1}.deal-mobile-side-icon.up{color:#10b981;background:#10b98126}.deal-mobile-side-icon.down{color:#ef4444;background:#ef444426}.deal-mobile-side-icon.neutral{color:var(--muted-text);background:color-mix(in srgb,var(--muted-text) 14%,transparent)}.deal-mobile-card-title-row{display:flex;align-items:center;gap:0;min-width:0;overflow:hidden;white-space:nowrap}.deal-mobile-card-separator{color:#4b5563;margin:0 4px;font-size:11px;-webkit-user-select:none;user-select:none}.deal-mobile-card-event-title{flex:0 0 auto;color:#fff;font-size:13px;font-weight:800;line-height:1.15}.deal-mobile-card-event-subtitle{flex:0 0 auto;color:#9baac0;font-size:12px;font-weight:500;line-height:1.15}.deal-mobile-side-label{flex:0 0 auto;font-size:12px;font-weight:800;line-height:1.15;text-transform:uppercase}.deal-mobile-side-label:before{display:none}.deal-mobile-side-label.up{color:#10b981}.deal-mobile-side-label.down{color:#ef4444}.deal-mobile-side-label.neutral{color:var(--muted-text)}.deal-mobile-card-body{display:block}.deal-mobile-card:not(.is-expanded) .deal-mobile-card-body{display:none}.deal-mobile-card-content{display:block}.deal-mobile-header-pnl{color:#fff;font-size:16px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.deal-mobile-header-pnl.positive{color:#10b981}.deal-mobile-header-pnl.negative{color:#ef4444}.deal-mobile-index{font-size:11px;line-height:1}.deal-mobile-run{display:flex;align-items:center;justify-self:start;min-width:0;gap:6px;padding-left:0;font-size:11px;line-height:1;margin-top:2px}.deal-mobile-run .table-link-btn,.deal-mobile-run-value{min-width:0;padding:0;font-size:11px;font-weight:400;line-height:1;color:#9aa1b2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-mobile-meta{justify-items:start;gap:1px;text-align:left}.deal-mobile-meta-run{grid-column:span 2}.deal-mobile-label{font-size:9px;line-height:1;letter-spacing:0}.deal-mobile-value{font-size:12px;line-height:1.15}.deal-mobile-subvalue{font-size:10px;line-height:1.15}.deal-mobile-meta .table-link-btn,.deal-mobile-meta a.table-link-btn{justify-self:flex-start;max-width:100%;padding:0;font-size:12px;line-height:1.15;text-align:left;overflow-wrap:anywhere}.deal-mobile-card .result-chip,.deal-mobile-card .outcome-side{min-width:0;padding:3px 8px;border-radius:999px;font-size:10px;line-height:1}.deal-mobile-card .deal-row-sync-btn{width:20px;min-height:20px;padding:0;border-radius:999px;font-size:10px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.deal-mobile-card .deal-row-sync-btn .refresh-arrows-icon{width:13px;height:13px}.deal-mobile-trade-summary{display:grid;gap:0;padding:0;min-width:0}.deal-mobile-trade-head,.deal-mobile-trade-row{display:grid;grid-template-columns:42px minmax(54px,.95fr) minmax(64px,1.1fr) minmax(42px,.75fr) minmax(54px,.95fr);align-items:center;column-gap:6px}.deal-mobile-trade-head{padding:2px 0 4px;color:var(--muted-text);font-size:8px;font-weight:800;line-height:1;text-transform:uppercase}.deal-mobile-trade-row{min-height:24px;border-top:1px solid color-mix(in srgb,var(--border-color) 35%,transparent)}.deal-mobile-trade-label{color:var(--muted-text);font-size:10px;font-weight:800;line-height:1}.deal-mobile-trade-cell{min-width:0;color:var(--text-color);font-size:9px;font-weight:750;line-height:1;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-mobile-trade-head span:last-child,.deal-mobile-trade-cell:last-child{text-align:right}.deal-mobile-trade-head span:nth-child(3),.deal-mobile-trade-row .deal-mobile-trade-cell:nth-child(3){text-align:center}.deal-mobile-trade-head span:nth-child(4),.deal-mobile-trade-row .deal-mobile-trade-cell:nth-child(4),.deal-mobile-trade-head span:nth-child(5),.deal-mobile-trade-row .deal-mobile-trade-cell:nth-child(5){text-align:right}}.backtest-run-page .form-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));align-items:end}.backtest-run-page .strategy-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));align-items:end;row-gap:14px}.backtest-run-page .strategy-section-base .strategy-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.backtest-run-page .strategy-section-base .strategy-field-compact input,.backtest-run-page .strategy-section-base .strategy-field-compact select,.backtest-run-page .strategy-section-base .strategy-field-compact textarea{max-width:none}.backtest-run-page .field{display:flex;flex-direction:column;justify-content:flex-end;height:100%;gap:0}.backtest-run-page .field>.field-title{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:6px;line-height:1.25}.backtest-run-page .field .field-title-text{line-height:1.25}.backtest-run-page .field .field-help,.backtest-run-page .strategy-section-title .field-help{display:inline-flex;width:15px;height:15px;border:1px solid #94a3b8;border-radius:999px;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#475569;cursor:help;-webkit-user-select:none;user-select:none;background:#f8fafc}.backtest-run-page .field input:not([type=checkbox]),.backtest-run-page .field select{height:38px}.backtest-run-page .field:has(input[type=checkbox]){flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;grid-column:1 / -1;padding:6px 0 4px}.backtest-run-page .field:has(input[type=checkbox])>.field-title{margin-bottom:0}.backtest-run-page .field input[type=checkbox]{margin:0;width:20px;height:20px;accent-color:#0f172a;cursor:pointer}.backtest-run-page .strategy-grid .field:has(textarea){grid-column:1 / -1;max-width:560px}.backtest-run-page .field textarea{resize:vertical;min-height:48px}.backtest-run-page .field.symbol-map-field{grid-column:1 / -1;max-width:none}.backtest-run-page .strategy-grid .field.strategy-field-value-compact{max-width:190px}.backtest-run-page .strategy-grid .field.strategy-field-value-compact input[type=number]{width:140px;max-width:100%}.backtest-run-page .symbol-map-grid{display:flex;flex-wrap:wrap;gap:10px}.backtest-run-page .symbol-map-item{display:grid;grid-template-columns:auto minmax(58px,70px);align-items:center;justify-content:start;gap:4px;flex:0 0 auto}.backtest-run-page .symbol-map-item span{margin:0;text-align:left;font-size:12px;color:#334155}.backtest-run-page .symbol-map-item input{height:28px;padding:3px 6px}@media (max-width: 720px){.backtest-run-page .symbol-map-grid{gap:8px}}.stat-group{display:flex;flex-direction:column;gap:4px;min-width:130px}.stat-group-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.stat-group-label{color:#64748b;font-size:.85em;text-transform:uppercase;letter-spacing:.05em}.stat-group-label.positive{color:var(--up-color);opacity:.85}.stat-group-label.negative{color:var(--down-color);opacity:.85}.stat-group-value{font-weight:500;display:flex;gap:4px;align-items:baseline}.stat-group-value .stat-count{min-width:28px;text-align:right;font-size:.9em;color:#475569}.stat-group-value .stat-money{min-width:68px;text-align:right;font-weight:600}.backtest-history-table tr.row-positive td{background-color:#16a34a09}.backtest-history-table tr.row-negative td{background-color:#ef444409}.weather-page{min-height:calc(100vh - 96px);height:calc(100vh - 96px);display:flex;flex-direction:column;gap:12px;padding-top:12px}.weather-filters-card{padding:14px;margin-bottom:0;flex:0 0 auto}.weather-deals-summary-card{padding:12px 14px;margin-bottom:0;flex:0 0 auto}.weather-summary-stack{display:grid;gap:12px;flex:0 0 auto}.weather-today-deals-card{padding:12px 14px;margin-bottom:0;min-height:0;display:flex;flex-direction:column}.weather-today-deals-card.collapsed{padding-bottom:10px}.weather-today-deals-card .weather-list-head{align-items:center}.weather-today-deals-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#0f172a;font:inherit;font-size:16px;font-weight:700;padding:0;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.weather-today-deals-caret{width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid #64748b;transition:transform .12s ease}.weather-today-deals-toggle[aria-expanded=true] .weather-today-deals-caret{transform:rotate(90deg)}.weather-today-deals-body{display:grid;gap:4px}.weather-today-head-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.weather-today-filter-block{display:flex;align-items:center;gap:6px;padding:2px 6px;border:1px solid #dbe3f2;border-radius:10px;background:#f8fbff}.weather-today-filter-label{font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#64748b}.weather-today-filter-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.weather-today-deals-scroll{margin-top:4px;border:1px solid #dbe3f2;border-radius:12px;background:#fff;max-height:250px;overflow:auto;padding:8px;display:grid;gap:8px}.weather-today-deals-empty{margin:6px}.weather-today-deal-item{border:1px solid #e3eaf7;border-radius:10px;background:#f8fbff;padding:8px;display:grid;gap:6px;cursor:pointer}.weather-today-deal-item:hover{border-color:#b9c9e4;background:#f0f6ff}.weather-today-deal-item.active{border-color:#8ea6d4;background:#e8f0ff}.weather-today-deal-main{display:grid;grid-template-columns:52px 1fr auto;gap:8px;align-items:center}.weather-today-deal-time{font-weight:700;color:#1e293b;font-size:12px}.weather-today-deal-outcome{color:#0f172a;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weather-today-deal-status{font-size:10px;font-weight:800;border:1px solid #cbd5e1;border-radius:999px;padding:2px 7px;color:#475569;background:#f8fafc}.weather-today-deal-status.open{border-color:#86efac;color:#166534;background:#f0fdf4}.weather-today-deal-status.closed{border-color:#cbd5e1}.weather-today-deal-sub{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:#475569;font-weight:600}.weather-today-deal-actions{display:flex;gap:6px;flex-wrap:wrap}.weather-deals-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.weather-deals-summary-card .deal-stat-box{padding:10px 12px}.weather-deals-summary-card .deal-stat-box .label{font-size:11px}.weather-deals-summary-card .deal-stat-box .value{font-size:16px}.weather-deals-summary-card .deposit-stat-box .value{font-size:18px}.weather-deposit-topup-btn{min-width:58px;padding-inline:10px}.weather-layout-grid{flex:1 1 auto}.weather-filters-form{display:grid;grid-template-columns:minmax(92px,auto) minmax(140px,1fr) minmax(140px,1fr) minmax(68px,auto) minmax(140px,1fr) minmax(140px,1fr) minmax(140px,1fr) auto;gap:10px;align-items:end}.weather-filter-city,.weather-filter-station,.weather-filter-query{min-width:0}.weather-filter-city .text-input,.weather-filter-station .text-input,.weather-filter-query .text-input{min-width:0;width:100%}.weather-city-hint{margin-top:4px;font-size:11px;color:#64748b}.weather-filter-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;justify-self:end}.weather-sync-group{min-width:0}.weather-sync-control{display:flex;align-items:center;gap:8px;min-height:38px}.weather-sync-btn{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1}.weather-sync-status{max-width:132px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;color:#64748b}.weather-sync-status.running{color:#1d4ed8}.weather-sync-status.completed{color:#047857}.weather-sync-status.failed,.weather-sync-status.error{color:#b91c1c}.weather-filter-day{min-width:0}.weather-day-nav{display:flex;gap:8px;align-items:center;justify-content:flex-start}.weather-layout-grid{display:grid;grid-template-columns:minmax(300px,var(--weather-list-width, 33%)) 12px minmax(560px,1fr);gap:14px;min-height:0;align-items:stretch}.weather-left-rail{grid-column:1;min-height:0;display:flex;flex-direction:column;gap:12px;overflow:hidden}.weather-left-rail .weather-deals-summary-card{padding:10px 12px}.weather-left-rail .weather-deals-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.weather-left-rail .weather-deals-summary-card .deal-stat-box{min-height:58px;padding:6px 8px;border-radius:8px}.weather-left-rail .weather-deals-summary-card .deal-stat-box .label{font-size:9px;line-height:1.15}.weather-left-rail .weather-deals-summary-card .deal-stat-box .value,.weather-left-rail .weather-deals-summary-card .deposit-stat-box .value{font-size:clamp(11px,.7vw,14px);line-height:1.2;overflow-wrap:anywhere}.weather-list-card,.weather-detail-card{padding:14px;min-height:0;overflow:hidden;display:flex;flex-direction:column}.weather-list-card{flex:1 1 auto;min-height:160px;height:100%}.weather-detail-card{grid-column:3;height:100%}.weather-layout-resizer{grid-column:2;border-radius:999px;background:#e7edf8;border:1px solid #d1d9e9;cursor:col-resize;position:relative;-webkit-user-select:none;user-select:none}.weather-layout-resizer:before{content:"";position:absolute;left:50%;top:12px;bottom:12px;width:2px;transform:translate(-50%);background:#b9c6de;border-radius:999px}.weather-layout-resizer:hover,.weather-layout-grid.resizing .weather-layout-resizer{background:#dce7fb;border-color:#b7c6e3}.weather-layout-resizer:hover:before,.weather-layout-grid.resizing .weather-layout-resizer:before{background:#6b84b5}.weather-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:8px}.weather-list-head h3,.weather-detail-head h3,.weather-placeholder h3{margin:0;font-size:16px;color:#0f172a}.weather-detail-title-link{color:#1d4ed8;text-decoration:underline;text-underline-offset:3px}.weather-detail-title-link:hover{color:#1e40af}.weather-detail-title-link:after{content:" ↗";font-size:.88em;font-weight:700}.weather-detail-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.weather-market-trades-sync-btn{height:30px;padding:0 10px;font-size:12px;line-height:1;white-space:nowrap}.weather-market-trades-sync-status{margin:4px 0 0;font-size:11px;font-weight:700;color:#047857}.weather-market-trades-sync-status.error{color:#b91c1c}.weather-list-sortbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px}.weather-list-sortbar-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-right:2px}.weather-sort-btn{border:1px solid #d4deef;background:#f8fbff;color:#334155;border-radius:8px;font-size:12px;padding:5px 9px;font-weight:600;line-height:1;cursor:pointer}.weather-sort-btn:hover{border-color:#b9c9e4;background:#f0f6ff}.weather-sort-btn.active{border-color:#8ea6d4;background:#e8f0ff;color:#1e3a8a}.weather-table-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:1px solid #dbe3f2;border-radius:12px;background:#fff}.weather-table{width:max-content;min-width:100%;border-collapse:collapse}.weather-table th,.weather-table td{padding:10px;border-bottom:1px solid #e8edf6;font-size:13px;vertical-align:top}.weather-table thead th{position:sticky;top:0;z-index:1;background:#f5f8ff;color:#55657f;text-transform:uppercase;letter-spacing:.03em;font-size:11px}.weather-table tr.active td{background:#eef5ff}.weather-row-clickable{cursor:pointer}.weather-row-clickable:hover td{background:#f0f6ff}.weather-table .cell-center{text-align:center}.weather-empty-cell{text-align:center;color:#64748b;padding:20px 8px}.weather-load-more{margin-top:10px;display:flex;justify-content:flex-end}.weather-placeholder{margin:auto;text-align:center}.weather-detail-body{display:grid;gap:8px;align-content:start;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:2px}.weather-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.weather-detail-subline{margin:4px 0 0}.weather-winning-temp{margin:4px 0 0;color:#0f172a;font-size:13px;font-weight:700}.weather-winning-temp-link{color:inherit;text-decoration:underline;text-underline-offset:2px}.weather-source-link-wrap{margin:6px 0 0}.weather-links-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.weather-source-link{color:#1d4ed8;font-weight:600;text-decoration:underline;text-underline-offset:2px}.weather-outcomes-panel{border:1px solid #dbe4f2;border-radius:12px;background:#f9fbff;padding:10px;display:grid;gap:8px}.weather-outcomes-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.weather-outcomes-actions{display:flex;gap:8px;flex-wrap:wrap}.weather-outcomes-actions .secondary-btn{padding:6px 10px;font-size:12px}.weather-outcomes-grid{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;max-height:180px;overflow:auto;overscroll-behavior:contain;padding-right:2px}.weather-outcome-item{display:inline-flex;align-items:center;gap:5px;border:1px solid #d3ddef;border-radius:9px;background:#fff;padding:4px 6px;cursor:pointer;min-width:0}.weather-outcome-item.checked{border-color:#9fb4dd;background:#f3f7ff}.weather-outcome-item input{margin:0}.weather-outcome-color{width:10px;height:10px;border-radius:999px;flex:0 0 10px}.weather-outcome-text{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#1e293b}.weather-outcome-volume{flex:0 0 auto;margin-left:2px;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:11px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:0}.weather-market-volume-cell{color:#526381;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:0;white-space:nowrap}.weather-history-panel{border:1px solid #dbe4f2;border-radius:12px;background:#f9fbff;padding:10px;display:grid;gap:8px}.weather-history-panel.collapsed{display:flex;align-items:center;min-height:0;padding:6px 12px;gap:0}.weather-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.weather-history-head h4{margin:0;font-size:14px;color:#0f172a}.weather-history-head p{margin:2px 0 0;font-size:12px}.weather-section-toggle{border:0;background:transparent;padding:0;margin:0;display:block;width:100%;text-align:left;cursor:pointer;color:inherit}.weather-history-panel.collapsed .weather-history-head{width:100%;margin:0;min-height:0;align-items:center}.weather-history-panel.collapsed .weather-section-toggle{display:flex;align-items:center;padding:0}.weather-history-panel.weather-forecast-collapsed-with-content{display:grid;gap:10px;align-items:stretch;padding:14px 16px 16px;border:1px solid #dbe3f2;border-radius:12px;background:#f9fbff}.weather-history-panel.weather-forecast-collapsed-with-content .weather-history-head{width:auto}.weather-history-panel.weather-forecast-collapsed-with-content .weather-section-toggle{display:block;width:auto}.weather-forecast-collapsed-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:stretch}.weather-forecast-collapsed-card{border:1px solid #d6dfef;border-radius:8px;background:#fff;padding:10px 12px;min-height:96px;display:grid;grid-template-rows:auto 1fr;gap:10px;box-shadow:0 4px 10px #0f172a09;overflow:hidden}.weather-forecast-collapsed-day{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}.weather-forecast-collapsed-weekday{flex:0 0 auto;font-size:13px;font-weight:800;color:#1e3a5f;line-height:1.2}.weather-forecast-collapsed-date{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;color:#64748b;line-height:1.2}.weather-forecast-collapsed-temps{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.weather-forecast-collapsed-value{display:grid;gap:2px;min-width:0;border-radius:8px;padding:8px}.weather-forecast-collapsed-value-max{background:#fff7ed;color:#9a3412}.weather-forecast-collapsed-value-min{background:#eef6ff;color:#1d4ed8}.weather-forecast-collapsed-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:currentColor;opacity:.72;line-height:1.2}.weather-forecast-collapsed-temp{min-width:0;overflow-wrap:anywhere;font-size:19px;font-weight:800;letter-spacing:0;color:currentColor;line-height:1.15}@media (max-width: 1024px){.weather-forecast-collapsed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-forecast-collapsed-temp{font-size:18px}}@media (max-width: 640px){.weather-forecast-collapsed-grid{grid-template-columns:1fr}}.weather-history-meta{margin:0;font-size:12px}.weather-history-chart-wrap{height:170px}.weather-forecast-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.weather-forecast-chip{border:1px solid #c7d5eb;background:#fff;border-radius:999px;padding:4px 10px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#334155;cursor:pointer}.weather-forecast-chip.active{border-color:#8ca6d6;background:#eef4ff;color:#1e3a8a}.weather-forecast-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px}.weather-forecast-summary-card{border:1px solid #d7e2f3;border-radius:10px;background:#fff;padding:8px;display:grid;gap:4px}.weather-forecast-summary-title{margin:0;font-size:12px;font-weight:700;color:#334155;display:inline-flex;align-items:center;gap:6px}.weather-forecast-summary-temp{margin:0;font-size:16px;font-weight:800;color:#0f172a}.weather-forecast-table-wrap{display:block;overflow-x:auto;border:1px solid #dbe3f2;border-radius:12px;background:#f9fbff}.weather-forecast-table{width:100%!important;min-width:unset!important;max-width:none!important;margin:0;table-layout:auto;border-collapse:collapse;display:table}.weather-forecast-table th,.weather-forecast-table td{padding:7px 10px;font-size:12px;line-height:1.35;white-space:nowrap;text-align:center;width:auto;border-bottom:1px solid #e5ebf7;background:#fff}.weather-forecast-table th{font-weight:700;color:#526381;background:#f3f7ff}.weather-forecast-table tr:last-child td{border-bottom:none}.weather-forecast-table th:first-child,.weather-forecast-table td:first-child{width:84px;text-align:left;white-space:nowrap;position:sticky;left:0;z-index:2;background:#f8fbff;font-weight:700;color:#384860}.weather-forecast-table th:not(:first-child),.weather-forecast-table td:not(:first-child){min-width:unset}.weather-wu-snapshots-panel{margin-top:12px;border-top:1px solid #dbe4f2;padding-top:14px;display:grid;gap:12px}.weather-wu-snapshots-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.weather-wu-snapshots-head h5{margin:0;font-size:13px;color:#0f172a}.weather-wu-snapshots-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}.weather-wu-snapshots-card{border:1px solid #d7e2f3;border-radius:14px;background:#fff;padding:12px;display:grid;gap:10px;box-shadow:0 6px 14px #0f172a0a}.weather-wu-snapshots-card h6{margin:0;font-size:12px;color:#334155}.weather-wu-snapshots-card-full{grid-column:1 / -1}.weather-wu-hourly-forecast-head{display:grid;gap:8px}.weather-wu-hourly-forecast-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.weather-wu-hourly-forecast-tab{min-width:82px;border:1px solid #dbe4f2;border-radius:999px;background:#fff;color:#526381;padding:5px 10px;display:inline-grid;gap:1px;justify-items:center;font-size:11px;font-weight:700;cursor:pointer}.weather-wu-hourly-forecast-tab strong{color:#334155;font-size:12px}.weather-wu-hourly-forecast-tab.active{border-color:#ef4444;background:#fff5f5;color:#b91c1c}.weather-wu-hourly-forecast-tab.active strong{color:#991b1b}.weather-wu-forecast-trend{display:grid;gap:10px;border:1px solid #dbe3f2;border-radius:10px;background:#f8fbff;padding:10px}.weather-wu-forecast-trend-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#526381;font-size:11px;font-weight:700}.weather-wu-forecast-trend-summary span{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border:1px solid #dbe4f2;border-radius:999px;background:#fff}.weather-wu-forecast-trend-chart{height:150px;min-width:420px;overflow:hidden}.weather-wu-hourly-forecast-chart{height:150px}@media (max-width: 960px){.weather-wu-snapshots-grid{grid-template-columns:1fr}}.weather-charts-stack{display:grid;gap:10px}.weather-chart-card{border:1px solid #dbe4f2;border-radius:12px;background:#fff;padding:8px 8px 6px}.weather-chart-wrap{position:relative;height:290px}.weather-probability-chart-wrap,.weather-spread-chart-wrap,.weather-selected-yes-total-chart-wrap{height:180px}.weather-synced-hover-layer{position:absolute;top:14px;right:calc(42px + var(--weather-line-chart-right-axis-width, 52px));bottom:30px;left:calc(8px + var(--weather-line-chart-left-axis-width, 52px));pointer-events:none;z-index:2}.weather-synced-hover-line{position:absolute;top:0;bottom:0;border-left:2px dashed #334155;opacity:.72;transform:translate(-1px)}.weather-edge-marker-line{position:absolute;top:14px;bottom:30px;border-left:2px dashed #334155;opacity:0;pointer-events:none;transform:translate(-1px);transition:opacity .12s ease;z-index:2}.weather-edge-hover-label{position:absolute;top:30px;transform:translate(-50%);max-width:min(290px,calc(100% - 20px));pointer-events:none;z-index:3}.weather-edge-hover-label .weather-tooltip-list{max-height:none;overflow:visible}.weather-chart-title{margin:2px 8px 4px;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#475569}.weather-chart-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 8px 4px}.weather-chart-head .weather-chart-title{margin:0}.weather-source-switch{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap;justify-content:flex-end}.weather-source-switch-label{color:#64748b;font-weight:600}.weather-source-switch-options{display:inline-flex;align-items:center;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;padding:2px}.weather-source-switch-item{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:transparent;color:#475569;cursor:pointer;font-weight:600;min-width:54px;padding:5px 10px;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease}.weather-source-switch-item:hover{color:#0f172a}.weather-source-switch-item.active{background:#0f172a;box-shadow:0 4px 10px #0f172a2e;color:#fff}.weather-tooltip{background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;box-shadow:0 6px 20px #0f172a1f;min-width:240px}.weather-tooltip-head{margin-bottom:6px;font-size:13px;font-weight:700;color:#0f172a}.weather-tooltip-temp{margin-bottom:6px;font-size:13px;color:#111827;font-weight:600}.weather-tooltip-list{border-top:1px dashed #cbd5e1;padding-top:6px;display:grid;gap:4px;max-height:220px;overflow-y:auto}.weather-tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.weather-tooltip-label{display:flex;align-items:center;gap:6px;min-width:0}.weather-tooltip-dot{width:9px;height:9px;border-radius:999px;flex:0 0 9px}.weather-tooltip-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334155;font-size:12px}.weather-tooltip-value{color:#0f172a;font-weight:700;font-size:12px;font-variant-numeric:tabular-nums}.weather-spread-tooltip-list{max-height:260px}.weather-spread-tooltip-row .weather-tooltip-value{white-space:nowrap}.weather-history-tooltip .weather-tooltip-list{max-height:none;overflow:visible}.weather-history-tooltip-outcome{margin-top:6px;font-size:12px;color:#475569;font-weight:600}.weather-edge-panel{border:1px solid #dbe4f2;border-radius:12px;background:#f8fbff;padding:10px;display:grid;gap:8px}.weather-edge-panel.compact{display:flex;align-items:center;min-height:0;padding:6px 12px}.weather-edge-panel.compact .weather-edge-head{width:100%;min-height:0;align-items:center}.weather-edge-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.weather-edge-head h4{margin:0;font-size:14px;color:#0f172a}.weather-edge-table-wrap{overflow:auto;border:1px solid #dbe3f2;border-radius:10px;background:#fff}.weather-edge-table{width:max-content;min-width:100%;border-collapse:collapse}.weather-edge-table th,.weather-edge-table td{padding:8px 10px;border-bottom:1px solid #e8edf6;font-size:12px;vertical-align:middle}.weather-edge-table thead th{position:sticky;top:0;z-index:1;background:#f5f8ff;color:#55657f;text-transform:uppercase;letter-spacing:.03em;font-size:11px}.weather-edge-row{transition:background-color .12s ease}.weather-edge-row:hover td{background:#f3f7ff}.weather-edge-table th,.weather-edge-table td.cell-center{text-align:center}.weather-edge-table th:nth-child(2),.weather-edge-table th:nth-child(7),.weather-edge-table td.edge-col-outcome,.weather-edge-table td.edge-col-reason,.weather-edge-table td.edge-col-temp{text-align:left}.weather-deals-table{width:auto;min-width:min(100%,760px);table-layout:auto}.weather-deals-table th,.weather-deals-table td{padding:7px 9px;white-space:nowrap}.weather-deals-table th:nth-child(1),.weather-deals-table th:nth-child(5),.weather-deals-table td.weather-deals-stack-cell{text-align:left}.weather-deals-table th:nth-child(7),.weather-deals-table td.cell-center{text-align:center}.weather-deals-stack-cell{min-width:96px}.weather-deals-kv{display:grid;grid-template-columns:34px auto;gap:7px;align-items:baseline;line-height:1.3}.weather-deals-kv-label{color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.weather-mini-btn{padding:5px 8px;border-radius:8px;font-size:12px;line-height:1.1}.weather-deal-form{display:grid;grid-template-columns:minmax(140px,1.2fr) 90px 100px minmax(180px,1.6fr) auto;gap:8px;align-items:end;margin:8px 0;padding:8px;border:1px solid #dbe3f2;border-radius:8px;background:#f8fbff}.weather-deal-form label{display:grid;gap:4px;color:#55657f;font-size:11px;font-weight:700;text-transform:uppercase}.weather-deal-form input,.weather-deal-form select{min-width:0;border:1px solid #cbd5e1;border-radius:8px;padding:7px 8px;background:#fff;color:#0f172a;font-size:13px;font-weight:600}.weather-deal-source-badge{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:3px 6px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:10px;font-weight:800}.weather-deal-source-badge.custom{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.weather-deal-source-badge.arbitrage{border-color:#f59e0b;background:#fffbeb;color:#92400e}.weather-deal-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:3px 8px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:11px;font-weight:800;letter-spacing:.01em}.weather-deal-status-pill.open{border-color:#93c5fd;background:#eff6ff;color:#1d4ed8}.weather-deal-status-pill.won{border-color:#86efac;background:#f0fdf4;color:#15803d}.weather-deal-status-pill.lost{border-color:#fca5a5;background:#fef2f2;color:#b91c1c}.weather-deal-comment-cell{max-width:220px;overflow:hidden;text-overflow:ellipsis;color:#475569}.weather-delete-deal-btn{margin-left:6px;color:#991b1b;border-color:#fecaca}.weather-edge-outcome-btn{border:0;background:transparent;padding:0;margin:0;color:#1f4fbf;font-weight:700;font-size:12px;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.weather-edge-outcome-btn:hover{color:#1e40af}.weather-edge-outcome-btn.active{color:#0f172a;text-decoration:none}@media (max-width: 1300px){.weather-layout-grid{grid-template-columns:1fr;flex:0 0 auto}.weather-layout-resizer{display:none}.weather-left-rail,.weather-list-card,.weather-detail-card{grid-column:auto}.weather-list-card,.weather-detail-card{height:auto}.weather-table-scroll{max-height:46vh}.weather-deals-summary-grid,.weather-left-rail .weather-deals-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-left-rail .weather-deals-summary-card .deal-stat-box{min-height:88px;padding:10px 12px}.weather-left-rail .weather-deals-summary-card .deal-stat-box .label{font-size:11px}.weather-left-rail .weather-deals-summary-card .deal-stat-box .value{font-size:16px}.weather-left-rail .weather-deals-summary-card .deposit-stat-box .value{font-size:18px}}@media (max-width: 920px){.weather-today-deals-scroll{max-height:220px}.weather-filters-form{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-filter-actions{grid-column:1 / -1;justify-content:flex-start}.weather-detail-head{flex-direction:column;align-items:stretch}.weather-deals-summary-grid,.weather-deal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-deal-comment-field{grid-column:1 / -1}}@media (max-width: 640px){.weather-filters-form{grid-template-columns:1fr}.weather-outcomes-head{flex-direction:column;align-items:flex-start}.weather-outcomes-grid{align-items:stretch;flex-direction:column}.weather-outcome-item{width:100%}.weather-deals-summary-grid,.weather-deal-form{grid-template-columns:1fr}.weather-deal-comment-field{grid-column:auto}}.app-root[data-theme=dark] :is(.card,.controls,.backtest-run-controls,.strategy-section,.job-row,.optuna-list-item,.optuna-fixed-base,.optuna-tunable-groups,.optuna-tunable-group-item,.run-summary-pill,.run-summary-symbol-pill,.stat-box,.deal-stat-box,.chart-market-trades,.depth-accordion,.filters-inputs-col,.filters-chip-stack,.filter-group,.filter-status-card,.filter-direction-card,.filter-duration-card,.filter-result-card,.backtest-run-dropdown,.backtest-history-scroll,.backtest-history-deals-wrap,.backtest-history-modal,.backtest-history-summary-card,.backtest-history-pnl-card,.backtest-history-modal-filters,.weather-shell,.weather-left-rail,.weather-detail-panel,.weather-market-card,.weather-chart-card,.weather-deals-summary-card,.weather-today-deals-card,.weather-detail-card,.weather-outcomes-card,.weather-deal-form-card,.weather-forecast-card,.weather-forecast-summary-card,.weather-forecast-table-wrap,.weather-wu-snapshots-card,.weather-wu-forecast-trend){background:var(--card-bg);border-color:var(--border-color);color:var(--text-color);box-shadow:0 8px 28px var(--shadow-color)}.app-root[data-theme=dark] :is(input,select,textarea,.text-input,.date-input,.market-select,.backtest-run-autocomplete-input){background:var(--field-bg);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] :is(.secondary-btn,.job-row-action,.optuna-collapse-btn,.backtest-retry-btn,.backtest-history-modal-nav-btn,.backtest-history-modal-close,.weather-forecast-chip,.weather-wu-hourly-forecast-tab,.chip-btn,.reset-btn,.table-link-btn,.open-market-link,.controls-row select,.controls-row button){background:var(--field-bg-soft);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] :is(.secondary-btn:hover,.job-row-action:hover,.optuna-collapse-btn:hover,.backtest-retry-btn:hover,.backtest-history-modal-nav-btn:hover,.backtest-history-modal-close:hover,.weather-forecast-chip:hover,.weather-wu-hourly-forecast-tab:hover,.chip-btn:hover,.reset-btn:hover,.table-link-btn:hover,.open-market-link:hover,.controls-row button:hover){background:var(--button-hover-bg);border-color:var(--muted-text)}.app-root[data-theme=dark] :is(.primary-btn,.deal-refresh-btn,.auth-logout,.chip-btn.active,.weather-forecast-chip.active,.weather-wu-hourly-forecast-tab.active,.backtest-run-option.selected,.backtest-run-option-row.selected){background:var(--active-bg);border-color:var(--active-bg);color:var(--active-text)}.app-root[data-theme=dark] :is(.muted,.field-label,.label,.subvalue,.run-summary-pill-label,.run-summary-pill-sub,.run-summary-symbol-meta,.run-summary-symbol-col-head,.run-summary-symbol-col-count,.backtest-history-summary-label,.backtest-history-summary-sub,.backtest-history-modal-filter-label,.weather-forecast-summary-title,.weather-history-meta,.weather-forecast-table th,.weather-forecast-collapsed-label){color:var(--muted-text)}.app-root[data-theme=dark] :is(.section-subtitle,.strategy-section-title,.run-summary-symbol-code,.run-summary-symbol-total,.run-summary-symbol-col-money,.backtest-tooltip-row,.chart-market-trades-head h3,.depth-accordion-toggle,.backtest-history-table>tbody>tr>td,.backtest-history-summary-value,.backtest-history-summary-value.neutral,.weather-forecast-summary-temp,.weather-wu-snapshots-head h5,.weather-wu-snapshots-card h6,.weather-wu-hourly-forecast-tab strong){color:var(--text-color)}.app-root[data-theme=dark] :is(.backtest-tooltip,.weather-tooltip,.recharts-tooltip-wrapper .recharts-default-tooltip){background:var(--field-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important;box-shadow:0 10px 28px var(--shadow-color)}.app-root[data-theme=dark] :is(.backtest-tooltip-sep,.stack-item+.stack-item,.weather-wu-snapshots-panel,.weather-forecast-table th,.weather-forecast-table td,.backtest-history-table>thead>tr>th,.backtest-history-table>tbody>tr>td){border-color:var(--border-color)}.app-root[data-theme=dark] :is(.chart-market-trades-head,.depth-accordion-toggle,.backtest-history-table>thead>tr>th,.backtest-history-table>tbody>tr.backtest-history-row:hover>td,.backtest-history-row.expanded>td,.weather-forecast-table th,.weather-forecast-table td,.weather-forecast-table th:first-child,.weather-forecast-table td:first-child){background:var(--card-bg-soft)}.app-root[data-theme=dark] :is(.weather-forecast-collapsed-value-max,.weather-forecast-collapsed-value-min,.run-summary-pill-pnl,.run-summary-pill-wins,.run-summary-pill-losses,.backtest-history-summary-card.positive,.backtest-history-summary-card.negative){background:var(--field-bg-soft)}.app-root[data-theme=dark] :is(.status-pill.completed,.optuna-list-item-positive,.weather-deal-status-open,.weather-deal-source-auto){background:var(--positive-bg);border-color:var(--positive-border)}.app-root[data-theme=dark] :is(.status-pill.failed,.optuna-list-item-negative,.backtest-delete-btn,.weather-deal-status-closed,.weather-deal-source-manual){background:var(--negative-bg);border-color:var(--negative-border)}.app-root[data-theme=dark] .weather-forecast-collapsed-value-max{color:#fbbf24}.app-root[data-theme=dark] .weather-forecast-collapsed-value-min{color:#93c5fd}.app-root[data-theme=dark] ::placeholder{color:#718198}.app-root[data-theme=dark]{scrollbar-color:#52617a var(--field-bg)}.app-root[data-theme=dark] ::-webkit-scrollbar{width:10px;height:10px}.app-root[data-theme=dark] ::-webkit-scrollbar-track{background:var(--field-bg)}.app-root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#40506d;border:2px solid var(--field-bg);border-radius:999px}.app-root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#596b8c}.app-root[data-theme=dark] .deals-stats-grid{background:var(--card-bg);border-color:var(--border-color)}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box{background:linear-gradient(180deg,var(--card-bg-soft) 0%,var(--card-bg) 100%);border-color:var(--border-color);box-shadow:inset 0 1px #ffffff09}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box:has(.value.positive){background:linear-gradient(90deg,var(--positive-bg) 0%,transparent 56%),linear-gradient(180deg,var(--card-bg-soft) 0%,var(--card-bg) 100%);border-color:var(--positive-border)}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box:has(.value.negative){background:linear-gradient(90deg,var(--negative-bg) 0%,transparent 56%),linear-gradient(180deg,var(--card-bg-soft) 0%,var(--card-bg) 100%);border-color:var(--negative-border)}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box .value{color:var(--text-color)}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box .value.positive{color:var(--up-color)}.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box .value.negative{color:var(--down-color)}@media (max-width: 640px){.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box,.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box:has(.value.positive),.app-root[data-theme=dark] .deals-stats-grid .deal-stat-box:has(.value.negative){background:transparent;border-color:color-mix(in srgb,var(--border-color) 58%,transparent);box-shadow:none}.app-root[data-theme=dark] .deals-stats-grid .deal-refresh-btn{background:transparent;border-color:color-mix(in srgb,var(--accent-border) 82%,transparent);color:var(--text-color)}}.app-root[data-theme=dark] .deals-pnl-chart-card{background:var(--card-bg);border-color:var(--border-color)}.app-root[data-theme=dark] .deals-pnl-chart-wrap{border:1px solid var(--border-color);border-radius:10px;background:linear-gradient(180deg,var(--field-bg) 0%,#0f1829 100%);padding:4px 6px 0}.app-root[data-theme=dark] .deals-filters-card,.app-root[data-theme=dark] .filters-inputs-col,.app-root[data-theme=dark] .filters-chip-stack{background:var(--card-bg);border-color:var(--border-color)}.app-root[data-theme=dark] .nav-arrow-btn,.app-root[data-theme=dark] .reset-btn,.app-root[data-theme=dark] .deal-refresh-btn{background:var(--button-bg);border-color:var(--border-color);color:var(--text-color);box-shadow:none}.app-root[data-theme=dark] .nav-arrow-btn:not(:disabled):hover,.app-root[data-theme=dark] .reset-btn:hover,.app-root[data-theme=dark] .deal-refresh-btn:hover{background:var(--button-hover-bg);border-color:var(--accent-border)}.app-root[data-theme=dark] .reset-btn-danger{background:var(--negative-bg);border-color:var(--negative-border);color:var(--down-color)}.app-root[data-theme=dark] .deals-table-card,.app-root[data-theme=dark] .deals-table-scroll{background:var(--field-bg);border-color:var(--border-color)}.app-root[data-theme=dark] .deals-table{color:var(--text-color)}.app-root[data-theme=dark] .deals-table tbody tr{background:var(--deal-row-base);transition:background .15s ease}.app-root[data-theme=dark] .deals-table tbody tr.row-result-won{background:var(--deal-win-row-bg),var(--deal-row-base)}.app-root[data-theme=dark] .deals-table tbody tr.row-result-lost{background:var(--deal-loss-row-bg),var(--deal-row-base)}.app-root[data-theme=dark] .deals-table th{background:var(--card-bg-soft);border-bottom-color:var(--border-color);color:var(--muted-text)}.app-root[data-theme=dark] .deals-table td{background:transparent;border-bottom-color:var(--border-color);color:#cdd8e8}.app-root[data-theme=dark] .deals-table tr.row-result-won td{border-bottom-color:#5ccf722e}.app-root[data-theme=dark] .deals-table tr.row-result-lost td{border-bottom-color:#f07f7f2e}.app-root[data-theme=dark] .deals-table tr.row-result-won td:nth-child(12),.app-root[data-theme=dark] .deals-table tr.row-result-won td:nth-child(13){background:var(--deal-win-value-bg);color:#dff8e5;font-weight:800}.app-root[data-theme=dark] .deals-table tr.row-result-lost td:nth-child(12),.app-root[data-theme=dark] .deals-table tr.row-result-lost td:nth-child(13){background:var(--deal-loss-value-bg);color:#ffe4e4;font-weight:800}.app-root[data-theme=dark] .deals-table tr:hover td{background:#74a9ff0e}.app-root[data-theme=dark] .deals-table tr.row-result-won:hover{background:linear-gradient(90deg,#5ccf7226,#5ccf7213 36%,#1a2740fa 82%),var(--field-bg-soft)}.app-root[data-theme=dark] .deals-table tr.row-result-lost:hover{background:linear-gradient(90deg,#f07f7f26,#f07f7f13 36%,#1a2740fa 82%),var(--field-bg-soft)}.app-root[data-theme=dark] .deals-table tr.row-result-won:hover td:nth-child(12),.app-root[data-theme=dark] .deals-table tr.row-result-won:hover td:nth-child(13){background:linear-gradient(180deg,#5ccf722e,#5ccf7214)}.app-root[data-theme=dark] .deals-table tr.row-result-lost:hover td:nth-child(12),.app-root[data-theme=dark] .deals-table tr.row-result-lost:hover td:nth-child(13){background:linear-gradient(180deg,#f07f7f2e,#f07f7f14)}.app-root[data-theme=dark] .result-chip.won,.app-root[data-theme=dark] .outcome-side.up{background:var(--positive-bg-strong);border-color:var(--positive-border);color:var(--up-color)}.app-root[data-theme=dark] .result-chip.lost,.app-root[data-theme=dark] .outcome-side.down{background:var(--negative-bg-strong);border-color:var(--negative-border);color:var(--down-color)}.app-root[data-theme=dark] .result-chip.even,.app-root[data-theme=dark] .outcome-side.neutral{background:var(--field-bg-soft);border-color:var(--border-color);color:var(--muted-text)}.app-root[data-theme=dark] .deal-row-sync-btn{background:var(--field-bg-soft);border-color:var(--accent-border);color:var(--text-color)}.app-root[data-theme=dark] .deal-row-sync-btn:hover{background:var(--button-hover-bg)}.app-root[data-theme=dark] .table-link-btn{color:#9fc2ff}.app-root[data-theme=dark] .deal-mobile-card .deal-mobile-run :is(.table-link-btn,.deal-mobile-run-value){color:#9aa1b2}.app-root[data-theme=dark] .table-link-btn.muted{color:#86a0c0}.app-root[data-theme=dark] .kv-label,.app-root[data-theme=dark] .stat-group-label{color:var(--muted-text)}.app-root[data-theme=dark] .weather-list-card,.app-root[data-theme=dark] .weather-filters-card,.app-root[data-theme=dark] .weather-deals-summary-card,.app-root[data-theme=dark] .weather-today-deals-card,.app-root[data-theme=dark] .weather-detail-card,.app-root[data-theme=dark] .weather-history-panel,.app-root[data-theme=dark] .weather-outcomes-panel,.app-root[data-theme=dark] .weather-edge-panel,.app-root[data-theme=dark] .weather-chart-card,.app-root[data-theme=dark] .weather-deal-form,.app-root[data-theme=dark] .weather-today-filter-block{background:var(--card-bg);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] .weather-list-head h3,.app-root[data-theme=dark] .weather-today-deals-toggle{color:var(--text-color)}.app-root[data-theme=dark] .weather-today-deals-caret{border-left-color:var(--muted-text)}.app-root[data-theme=dark] .weather-table-scroll,.app-root[data-theme=dark] .weather-edge-table-wrap,.app-root[data-theme=dark] .weather-today-deals-scroll,.app-root[data-theme=dark] .weather-forecast-table-wrap{background:var(--field-bg);border-color:var(--border-color)}.app-root[data-theme=dark] .weather-table,.app-root[data-theme=dark] .weather-edge-table,.app-root[data-theme=dark] .weather-deals-table,.app-root[data-theme=dark] .weather-forecast-table{color:var(--text-color)}.app-root[data-theme=dark] .weather-table th,.app-root[data-theme=dark] .weather-edge-table th,.app-root[data-theme=dark] .weather-deals-table th,.app-root[data-theme=dark] .weather-forecast-table th{background:var(--card-bg-soft);border-color:var(--border-color);color:var(--muted-text)}.app-root[data-theme=dark] .weather-table td,.app-root[data-theme=dark] .weather-edge-table td,.app-root[data-theme=dark] .weather-deals-table td,.app-root[data-theme=dark] .weather-forecast-table td{background:var(--field-bg);border-color:var(--border-color);color:#cbd7e8}.app-root[data-theme=dark] .weather-table tr.active td,.app-root[data-theme=dark] .weather-row-clickable:hover td,.app-root[data-theme=dark] .weather-edge-row:hover td{background:var(--field-bg-soft)}.app-root[data-theme=dark] .weather-outcome-item,.app-root[data-theme=dark] .weather-today-deal-item,.app-root[data-theme=dark] .weather-forecast-collapsed-card{background:var(--field-bg);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] .weather-outcome-item.checked,.app-root[data-theme=dark] .weather-today-deal-item.active{background:var(--field-bg-soft);border-color:#5f78a6}.app-root[data-theme=dark] .weather-outcome-text,.app-root[data-theme=dark] .weather-today-deal-time,.app-root[data-theme=dark] .weather-today-deal-outcome,.app-root[data-theme=dark] .weather-winning-temp,.app-root[data-theme=dark] .weather-history-head h4,.app-root[data-theme=dark] .weather-edge-head h4,.app-root[data-theme=dark] .weather-tooltip-head,.app-root[data-theme=dark] .weather-tooltip-temp,.app-root[data-theme=dark] .weather-tooltip-value{color:var(--text-color)}.app-root[data-theme=dark] .weather-table td{color:#ced9e8;font-weight:600}.app-root[data-theme=dark] .weather-table thead th{color:#9aaac1}.app-root[data-theme=dark] .weather-market-volume-cell{color:#d2deef}.app-root[data-theme=dark] .weather-layout-resizer{background:transparent;border-color:transparent}.app-root[data-theme=dark] .weather-layout-resizer:before{width:2px;background:#465773;opacity:.75}.app-root[data-theme=dark] .weather-layout-resizer:hover:before,.app-root[data-theme=dark] .weather-layout-grid.resizing .weather-layout-resizer:before{background:#6f86ad;opacity:1}.app-root[data-theme=dark] .weather-outcome-volume,.app-root[data-theme=dark] .weather-market-volume-cell,.app-root[data-theme=dark] .weather-today-deal-sub,.app-root[data-theme=dark] .weather-deals-kv-label,.app-root[data-theme=dark] .weather-deal-form label,.app-root[data-theme=dark] .weather-chart-title,.app-root[data-theme=dark] .weather-source-switch-label,.app-root[data-theme=dark] .weather-tooltip-text,.app-root[data-theme=dark] .weather-history-tooltip-outcome,.app-root[data-theme=dark] .weather-list-sortbar-label{color:var(--muted-text)}.app-root[data-theme=dark] .weather-source-switch-options,.app-root[data-theme=dark] .weather-wu-forecast-trend-summary span{background:var(--field-bg);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] .weather-source-switch-item{color:var(--muted-text)}.app-root[data-theme=dark] .weather-source-switch-item:hover{color:var(--text-color)}.app-root[data-theme=dark] .weather-source-switch-item.active{background:var(--active-bg);color:var(--active-text)}.app-root[data-theme=dark] .weather-sort-btn,.app-root[data-theme=dark] .weather-mini-btn,.app-root[data-theme=dark] .weather-market-trades-sync-btn,.app-root[data-theme=dark] .weather-deposit-topup-btn{background:var(--field-bg-soft);border-color:var(--border-color);color:var(--text-color)}.app-root[data-theme=dark] .weather-sort-btn.active{background:var(--active-bg);border-color:var(--active-bg);color:var(--active-text)}.app-root[data-theme=dark] .weather-history-panel.collapsed,.app-root[data-theme=dark] .weather-history-panel.weather-forecast-collapsed-with-content{background:var(--card-bg);border-color:var(--border-color)}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}body{font-family:IBM Plex Sans,Segoe UI,sans-serif}
