:root{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;color:#0f172a;background:linear-gradient(180deg,#e6eef9,#f8fbff)}*{box-sizing:border-box}body{margin:0}#root{min-height:100vh}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:min(420px,100%);display:grid;gap:14px;padding:28px;border:1px solid #cbd5e1;border-radius:18px;background:#fffffff5;box-shadow:0 18px 40px #0f172a1f}.auth-card h1{margin:0}.auth-eyebrow{margin:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}.auth-muted{margin:0;color:#475569;line-height:1.45}.auth-form{display:grid;gap:12px}.auth-field{display:grid;gap:6px;font-size:13px;font-weight:600;color:#334155}.auth-error{margin:0;color:#b91c1c;font-size:13px;line-height:1.4}.auth-submit{width:100%;padding:10px 12px;border-color:#1d4ed8;background:#1d4ed8;color:#fff;font-weight:700}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.auth-summary{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.auth-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border-radius:999px;background:#eff6ff;color:#1e3a8a;font-size:12px;font-weight:700}.auth-chip.muted{background:#e2e8f0;color:#334155}.page{max-width:1200px;margin:0 auto;padding:20px;display:grid;gap:16px}.top{display:flex;justify-content:space-between;align-items:center}.page-nav{display:flex;flex-wrap:nowrap;gap:8px;position:sticky;top:8px;z-index:30;padding:8px;border:1px solid #cbd5e1;border-radius:10px;background:#fffffff5;box-shadow:0 6px 18px #0f172a14;overflow-x:auto}.page-nav-link{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#1e293b;text-decoration:none;padding:7px 12px;font-weight:600;font-size:13px;white-space:nowrap}.page-nav-link:hover{border-color:#94a3b8;background:#f8fafc}.page-nav-link.active{border-color:#2563eb;background:#dbeafe;color:#1e3a8a}.page-nav-link.nav-mode-standby{border-style:dashed;background:#f8fafc;color:#475569}.page-nav-link.nav-mode-muted{background:#f1f5f9;color:#64748b;opacity:.72}.page-nav-link.mode-dry.nav-mode-active{border-color:#f59e0b;background:#fef3c7;color:#92400e}.page-nav-link.mode-live.nav-mode-active{border-color:#dc2626;background:#fee2e2;color:#991b1b}.page-nav-link.active.mode-dry.nav-mode-active,.page-nav-link.active.mode-live.nav-mode-active{box-shadow:0 0 0 1px #0f172a1f}.mode-banner{border:1px solid transparent;border-radius:10px;padding:10px 12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:13px}.mode-banner strong{font-size:13px;letter-spacing:.04em}.mode-banner-live{border-color:#dc2626;background:#fee2e2;color:#7f1d1d}.mode-banner-dry{border-color:#f59e0b;background:linear-gradient(90deg,#fef3c7,#dbeafe);color:#1e3a8a}.mode-banner.mode-state-standby,.command-bar.mode-state-standby{opacity:1;filter:none}.mode-banner.mode-state-locked,.command-bar.mode-state-locked{opacity:.7;filter:saturate(.72)}.mode-banner.mode-state-active,.command-bar.mode-state-active{opacity:1;filter:none}.command-bar{position:sticky;top:64px;z-index:20;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:10px 12px;box-shadow:0 6px 18px #0f172a14}.command-bar-live{border-color:#fca5a5;background:#fff7f7}.command-bar-dry{border-color:#93c5fd;background:#f8fbff}.command-bar-state-row{display:flex;align-items:center}.command-bar-state{display:flex;gap:8px;flex-wrap:wrap;min-width:0}.command-state-chip{white-space:nowrap}.command-bar-action-row{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:10px}.command-action-groups{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.command-action-group{display:inline-flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid #dbeafe;border-radius:8px;background:#fff}.command-action-label{font-size:11px;color:#475569;font-weight:700;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap}.command-action-group button{white-space:nowrap}.command-refresh-button{width:34px;min-width:34px;padding:8px 0;font-size:16px;font-weight:700;line-height:1;margin-left:auto}.command-helper-text{margin:6px 2px 0;font-size:12px;color:#475569}.command-details{margin:-4px 2px 0;font-size:12px;color:#475569;line-height:1.4;word-break:break-word}.status{padding:8px 12px;border-radius:999px;font-weight:700;color:#fff}.status.running{background:#15803d}.status.paused{background:#b91c1c}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.overview-grid{display:grid;grid-template-columns:minmax(400px,1.1fr) minmax(360px,1fr);gap:12px;align-items:start}.card{border:1px solid #d1d5db;border-radius:10px;background:#fff;padding:14px;overflow:visible}.execution-card{transition:opacity .15s ease,filter .15s ease,border-color .15s ease}.execution-card.execution-card-standby{opacity:.76;filter:saturate(.8)}.execution-card.execution-card-locked{opacity:.72;filter:saturate(.78)}.execution-card.execution-card-active{opacity:1;filter:none}.overview-card{display:grid;gap:10px}.overview-card h2{margin:0}.overview-card h3{margin:0;font-size:13px;color:#334155}.overview-portfolio-card{order:1}.overview-status-card{order:2}.status-badges{display:grid;gap:8px;justify-items:start}.status-metrics-table{width:100%;border-collapse:collapse;table-layout:auto}.status-metrics-table th,.status-metrics-table td{border-top:0;border-left:0;border-right:0;border-bottom:1px solid #e2e8f0;padding:7px 8px;font-size:12px;vertical-align:middle}.status-metrics-table th{color:#334155;font-weight:700;text-align:left}.status-metrics-table th:nth-child(1),.status-metrics-table td:nth-child(1){width:35%;padding-right:8px}.status-metrics-table th:nth-child(2),.status-metrics-table td:nth-child(2){width:45%}.status-metrics-table th:nth-child(3),.status-metrics-table td:nth-child(3){width:20%;text-align:right;white-space:nowrap;color:#64748b}.status-current-cell{text-align:left}.status-current-cell .indicator-badge{display:inline-flex;max-width:100%;white-space:normal;overflow-wrap:anywhere}.status-metric-cell{display:inline-flex;align-items:center;gap:6px}.status-metric-name{color:#0f172a}.status-info-details{position:relative;display:inline-flex;align-items:center}.status-info-details summary{list-style:none;width:18px;height:18px;border-radius:999px;border:1px solid #94a3b8;background:#f8fafc;color:#334155;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none}.status-info-details summary::-webkit-details-marker{display:none}.status-info-details[open] summary{border-color:#2563eb;color:#1d4ed8;background:#eff6ff}.status-info-popover{position:absolute;left:0;top:calc(100% + 6px);z-index:45;width:min(320px,calc(100vw - 64px));padding:8px 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-shadow:0 10px 24px #0f172a24;color:#334155}.status-info-popover p{margin:0;font-size:12px;line-height:1.4}.status-info-popover .status-info-title{margin-bottom:4px;font-size:12px;font-weight:700;color:#0f172a}.status-advanced-details{margin-top:4px}.status-advanced-details summary{font-size:12px}.status-metrics-table-advanced th,.status-metrics-table-advanced td{font-size:11px}.indicator-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;border:1px solid transparent}.indicator-badge[title]{cursor:help}.indicator-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.indicator-badge.good{color:#166534;background:#dcfce7;border-color:#86efac}.indicator-badge.warn{color:#854d0e;background:#fef3c7;border-color:#fcd34d}.indicator-badge.bad{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.indicator-badge.off{color:#334155;background:#e2e8f0;border-color:#94a3b8}.overview-last-update{margin:0;font-size:13px;color:#334155}.compact-details{margin-top:2px;border-top:1px dashed #cbd5e1;padding-top:6px}.compact-details summary{font-size:12px;color:#475569;cursor:pointer}.detail-kv{margin-top:6px;display:grid;gap:6px}.detail-kv p{margin:0;display:flex;justify-content:space-between;gap:8px;font-size:12px}.detail-kv span{color:#64748b}.detail-kv strong{color:#0f172a;font-weight:600;text-align:right}.portfolio-key-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portfolio-key-metrics>div{border:1px solid #dbeafe;background:#f8fbff;border-radius:8px;padding:4px 7px;display:grid;gap:2px}.portfolio-key-metrics span{font-size:10px;color:#475569}.portfolio-key-metrics strong{font-size:16px;color:#0f172a}.portfolio-key-submeta{font-size:10px;color:#64748b;line-height:1.35}.portfolio-valuation-meta{margin:0}.portfolio-valuation-drift-warn{color:#991b1b;font-weight:600}.portfolio-positions-source-meta{margin:0;font-size:12px}.top-position-list{display:grid;gap:6px;overflow-x:auto}.top-position-header{display:grid;grid-template-columns:minmax(56px,.8fr) minmax(110px,1.35fr) minmax(84px,1fr) minmax(84px,1fr);gap:8px;font-size:10px;color:#64748b;padding:0 6px;min-width:390px}.top-position-row{border:1px solid #e2e8f0;border-radius:8px;padding:6px 7px;display:grid;grid-template-columns:minmax(56px,.8fr) minmax(110px,1.35fr) minmax(84px,1fr) minmax(84px,1fr);gap:8px;align-items:center;min-width:390px}.top-position-row span{font-size:12px;color:#0f172a}.top-position-row .asset{font-weight:700}.top-position-row .num{text-align:right;font-variant-numeric:tabular-nums}.overview-portfolio-card .snapshot-strip{margin-top:2px}.overview-portfolio-card h3{font-size:12px;color:#0f172a}.snapshot-strip{display:grid;grid-template-columns:1fr;gap:5px;align-items:start;margin-top:4px}.snapshot-strip-chart{min-width:0}.actions{display:flex;gap:8px;flex-wrap:wrap}.row-actions-cell{display:grid;justify-items:end;gap:4px}.row-actions-inline{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.row-actions-inline-primary,.row-actions-inline-secondary{width:100%;flex-wrap:nowrap}.row-actions-inline-primary>button{flex:1 1 0;min-width:0;white-space:nowrap}.row-actions-inline-primary>button.adjust-capital-button{flex:0 0 118px;min-width:118px;font-weight:400}.row-actions-inline-primary>.adjust-capital-popover{flex:0 0 118px;min-width:118px}.row-actions-inline-secondary>button:not(.triangle-toggle){flex:1 1 0;min-width:0}.row-actions-inline-secondary .row-actions-details{flex:0 0 auto}.row-actions-inline-secondary .row-actions-details summary{width:auto;min-width:44px}.row-actions-details{position:relative}.strategy-control-table .row-actions-cell button{padding:5px 8px;font-size:12px;line-height:1.15}.row-actions-details summary{list-style:none;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f172a;padding:5px 8px;cursor:pointer;font-weight:600;min-width:96px;font-size:12px;line-height:1.15;text-align:center}.row-actions-details summary::-webkit-details-marker{display:none}.row-actions-details[open] summary{border-color:#93c5fd;background:#eff6ff}.row-actions-details-compact summary{min-width:40px;padding:4px 7px;font-size:12px;font-weight:700}.adjust-capital-popover summary{min-width:118px;font-weight:400}.row-actions-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:40;display:grid;gap:6px;min-width:220px;padding:8px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;box-shadow:0 10px 24px #0f172a24}.row-actions-panel button{width:100%;text-align:left}.row-actions-item{display:grid;gap:4px}.row-actions-input-label{font-size:11px;font-weight:700;color:#475569}.adjust-capital-panel{min-width:320px;grid-template-columns:1fr;gap:4px}.adjust-capital-panel input{width:100%}.adjust-capital-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px}.adjust-capital-row input{flex:1 1 auto;min-width:0;padding:5px 7px}.adjust-capital-row .adjust-capital-action-button{width:auto;min-width:116px;white-space:nowrap;font-size:13px;font-weight:400;padding:5px 8px}.adjust-capital-panel button{text-align:center}.adjust-capital-row-meta{display:flex;justify-content:space-between;align-items:baseline;gap:6px;margin-top:-2px;padding:0 1px;font-size:9px;line-height:1.35;font-weight:400;color:#64748b}.adjust-capital-note{margin-top:2px;font-size:9px;line-height:1.35;font-weight:400;color:#64748b}@media (max-width: 760px){.adjust-capital-panel{min-width:220px}.adjust-capital-row{grid-template-columns:1fr}.adjust-capital-row-meta{flex-direction:column;align-items:flex-start}}.row-actions-helper{margin:0;font-size:11px;line-height:1.35;color:#64748b}.inline-action-error{margin:2px 0 0;max-width:300px;font-size:12px;line-height:1.35;color:#991b1b;text-align:left}.row-actions-danger{display:grid;gap:6px;border-top:1px dashed #cbd5e1;padding-top:6px;margin-top:2px}.row-actions-danger-label{margin:0;font-size:11px;font-weight:700;color:#b91c1c;text-transform:uppercase;letter-spacing:.02em}.controls .actions{margin-top:8px}.mode-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;margin-bottom:8px}.mode-button.active{background:#dbeafe;border-color:#60a5fa}button{border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f172a;padding:8px 10px;cursor:pointer}.button-danger{border-color:#dc2626;background:#dc2626;color:#fff}.button-danger-outline{border-color:#dc2626;background:#fff;color:#b91c1c}.button-secondary{background:#fff}button.button-danger:enabled:hover{background:#b91c1c;border-color:#b91c1c}button.button-danger-outline:enabled:hover{background:#fef2f2;border-color:#b91c1c}.runtime-card-live{border-color:#fecaca;background:#fff7f7}input[type=number],input[type=text],input[type=password],input[type=date],select{border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;padding:8px 10px}button:disabled{opacity:.6;cursor:not-allowed}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;background:#0f172a66;display:grid;place-items:center;padding:16px}.dialog-card{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;border:1px solid #cbd5e1;border-radius:12px;background:#fff;box-shadow:0 16px 36px #0f172a40;padding:14px;display:grid;gap:12px}.dialog-card h2{margin:0;font-size:20px}.dialog-message{margin:0;color:#334155;white-space:pre-wrap}.dialog-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.dialog-field{display:grid;gap:6px}.dialog-field span{font-size:12px;color:#475569;font-weight:600}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.allocation-row{margin-top:10px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.allocation-row label{font-size:13px;color:#334155}.asset-search-row{margin-top:8px;display:grid;grid-template-columns:auto minmax(120px,1fr) auto 120px auto;gap:8px;align-items:center}.asset-search-row label{font-size:13px;color:#334155}.asset-allocation-cell{display:flex;align-items:center;gap:8px}.asset-allocation-cell input{width:110px}.allocation-cell-button{display:inline-flex;align-items:baseline;gap:6px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f172a;padding:5px 8px;font-size:13px;font-weight:600}.allocation-cell-button:hover{border-color:#93c5fd;background:#eff6ff}.allocation-cell-readonly{display:inline-flex;flex-direction:column;align-items:flex-end;border:0;background:transparent;padding:0}.allocation-cell-readonly:hover{border:0;background:transparent}.allocation-initial-label{display:block;margin-top:2px;white-space:nowrap;color:#64748b;font-size:11px;font-weight:500}.strategy-expand-cell{margin-top:6px;display:flex;justify-content:flex-end}.triangle-toggle{min-width:28px;padding:2px 6px;border-radius:999px;line-height:1;font-size:14px}.meta{font-size:13px;color:#475569}.empty-guide{display:grid;gap:4px}.empty-guide p{margin:0}table{width:100%;border-collapse:collapse}table input[type=number]{width:100%;min-width:78px}.strategy-control-table{table-layout:fixed;border-collapse:collapse}.strategy-control-table th,.strategy-control-table td{vertical-align:top;border-color:#dbe3ef}.strategy-control-table th{background:#f8fafc;font-size:12px;font-weight:700;line-height:1.2;padding:8px}.strategy-control-table td{padding:7px 8px;font-size:12.5px;line-height:1.3}.strategy-control-table th:first-child,.strategy-control-table td:first-child{text-align:left}.strategy-control-table th:first-child,.strategy-control-table td:first-child{width:120px}.strategy-control-table th:nth-child(5),.strategy-control-table td:nth-child(5){width:112px}.strategy-control-table td:first-child{overflow:hidden;padding-left:4px;padding-right:4px}.strategy-control-table th:nth-child(2),.strategy-control-table td:nth-child(2),.strategy-control-table th:nth-child(3),.strategy-control-table td:nth-child(3),.strategy-control-table th:nth-child(4),.strategy-control-table td:nth-child(4),.strategy-control-table th:nth-child(6),.strategy-control-table td:nth-child(6),.strategy-control-table th:nth-child(7),.strategy-control-table td:nth-child(7),.strategy-control-table th:nth-child(8),.strategy-control-table td:nth-child(8){text-align:right}.strategy-control-table th:nth-child(5),.strategy-control-table td:nth-child(5){text-align:right}.strategy-control-table th:last-child,.strategy-control-table td:last-child{width:230px;text-align:right}.strategy-control-table th:nth-last-child(2),.strategy-control-table td:nth-last-child(2){width:110px;text-align:right}.strategy-control-table td:nth-last-child(2) .indicator-badge{white-space:nowrap}.started-cell{display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1.15;white-space:nowrap}.strategy-parent-row td{background:#e8f1ff;border-top:1px solid #bdd3f3;border-bottom:1px solid #cfe0f7}.strategy-parent-cell{font-weight:700;color:#0f172a}.strategy-name-cell-inline{display:inline-grid;grid-template-columns:1fr;justify-items:start;align-items:start;gap:3px;max-width:100%}.see-more-inline-button{border:1px solid #bfd5ef;background:#f8fbff;color:#1e3a8a;font-size:9px;font-weight:700;line-height:1.1;padding:2px 6px;border-radius:999px;white-space:nowrap;display:inline-flex;align-items:center;gap:2px}.see-more-inline-button:after{content:"▾";font-size:7px;color:#64748b;line-height:1;transition:transform .12s ease}.see-more-inline-button.is-open:after{transform:rotate(180deg)}.see-more-inline-button.is-open{border-color:#93c5fd;background:#eff6ff;color:#1e40af}.see-more-inline-button:hover:enabled{border-color:#93c5fd;background:#eff6ff;color:#1e40af}.strategy-asset-section-row td{background:#eef4ff;border-top:1px solid #d8e5f5;border-bottom:1px solid #d8e5f5;color:#475569;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;text-align:left;line-height:1.05;padding-top:3px;padding-bottom:3px}.strategy-asset-row td{background:#fff}.strategy-control-table td.strategy-asset-cell{padding-left:1px}.strategy-performance-inline-row td{background:#f8fbff;padding:8px}.strategy-performance-inline-content{display:grid;gap:6px}.strategy-performance-inline-header{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.strategy-performance-inline-header h3{margin:0;font-size:14px}.strategy-performance-inline-content .detail-chart-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.execution-returns-line{margin:0;font-size:12px}.execution-kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(106px,1fr));gap:5px}.execution-kpi-card{border:1px solid #dbeafe;background:#fff;border-radius:8px;padding:4px 7px;display:grid;gap:2px}.execution-kpi-card span{font-size:10px;color:#64748b}.execution-kpi-card strong{font-size:12px;color:#0f172a}.execution-secondary-metrics-wrap{border:1px solid #dbeafe;border-radius:8px;background:#fff;overflow:hidden}.execution-secondary-metrics-table{width:100%;border-collapse:collapse;table-layout:fixed}.execution-secondary-metrics-table th,.execution-secondary-metrics-table td{padding:5px 7px;border-bottom:1px solid #e2e8f0;font-size:11px;line-height:1.2}.execution-secondary-metrics-table th{background:#f8fafc;color:#475569;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.execution-secondary-metrics-table th:first-child,.execution-secondary-metrics-table td:first-child{text-align:left}.execution-secondary-metrics-table th:nth-child(2),.execution-secondary-metrics-table th:nth-child(3),.execution-secondary-metrics-table td:nth-child(2),.execution-secondary-metrics-table td:nth-child(3){text-align:right}.execution-secondary-metrics-table tbody tr:last-child td{border-bottom:none}.strategy-performance-inline-content .execution-inline-charts{margin-top:2px;gap:8px}.strategy-performance-inline-content .detail-series-card{padding:7px}.strategy-performance-inline-content .detail-series-card h3{margin:0 0 6px;font-size:12px}.strategy-performance-inline-content .detail-series-card p{margin:0;font-size:12px;color:#64748b}.strategy-performance-inline-content .echart-small{min-height:190px}.strategy-control-table .strategy-idle-cash-row td{background:#f5f9ff;border-top:1px dashed #c7d2fe;overflow:hidden;font-weight:600}.strategy-control-table td.strategy-idle-cash-cell{padding-left:1px}.strategy-asset-label{display:inline-block;max-width:100%;position:relative;padding-left:0;white-space:nowrap;overflow-wrap:anywhere;color:#334155;font-weight:700;z-index:1}.strategy-idle-cash-label{white-space:normal;overflow-wrap:anywhere}.strategy-control-table td.strategy-asset-cell .strategy-asset-label:before,.strategy-control-table td.strategy-idle-cash-cell .strategy-asset-label:before{content:"└";display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;margin-right:2px;color:#64748b;font-size:11px;font-weight:600;line-height:1;transform:translateY(0)}.strategy-control-table .strategy-idle-cash-row td[colspan]{white-space:normal;overflow-wrap:anywhere}.strategy-control-table tfoot .global-idle-cash-row td{background:#eef2f7;border-top:2px solid #cbd5e1;font-weight:700}.row-actions-meta{margin:0;font-size:12px;color:#475569;font-weight:600}.combined-positions-table{table-layout:fixed;border-collapse:collapse;border-spacing:0}.combined-positions-table thead th{background:#f8fafc;border-top:1px solid #dbe3ef;border-bottom:1px solid #cbd5e1;padding:10px 12px;font-size:13px;font-weight:700}.combined-positions-table tbody td{padding:11px 12px;background:#fff;border-bottom:1px solid #e2e8f0;vertical-align:middle}.combined-positions-table tbody tr:nth-child(2n):not(.combined-position-idle) td{background:#f8fbff}.combined-positions-table th,.combined-positions-table td{text-align:right}.combined-positions-table th:first-child,.combined-positions-table td:first-child{text-align:left}.combined-positions-table th:nth-child(2),.combined-positions-table td:nth-child(2),.combined-positions-table th:nth-child(3),.combined-positions-table td:nth-child(3),.combined-positions-table th:nth-child(4),.combined-positions-table td:nth-child(4){text-align:right}.combined-position-asset{font-weight:700;text-align:left}.combined-position-idle td{background:#eef2ff;border-color:#c7d2fe}.combined-positions-table .liquidation-action-cell{width:172px;min-width:172px;white-space:nowrap;text-align:right}.combined-positions-table .liquidation-action-cell button{min-width:112px}.liquidation-action-stack{display:inline-grid;gap:6px;justify-items:end}.button-force-live{font-size:13px;padding:8px 10px;min-width:150px;white-space:normal;line-height:1.2;text-align:center}.combined-positions-table tfoot td{background:#f8fafc;padding:10px 12px}.combined-positions-helper{margin-top:8px}th,td{border:1px solid #e2e8f0;padding:6px;font-size:13px;text-align:left}tfoot .total-row td{font-weight:700;background:#f8fafc}tbody tr.selected-row td{background:#eff6ff}tbody tr.clickable-row td{cursor:pointer}tbody tr.clickable-row:hover td{background:#f1f5f9}.strategy-expanded-row td{background:#f8fafc}.asset-child-table{margin-top:8px}.asset-child-table th,.asset-child-table td{vertical-align:top}.asset-hyperparams-inline{display:grid;grid-template-columns:repeat(4,minmax(70px,1fr));gap:6px}.idle-cash-row td{background:#f8fafc;font-weight:600}.error{border:1px solid #fecaca;background:#fef2f2;color:#991b1b;border-radius:8px;padding:12px;white-space:pre-wrap}.form-feedback{border-radius:8px;padding:10px 12px;margin:8px 0 0;white-space:pre-wrap}.form-feedback-error{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.form-feedback-success{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.echart-wrap{display:grid;gap:8px}.echart{width:100%;min-height:300px;border:1px solid #dbeafe;border-radius:10px;background:#f8fafc}.echart-pie{min-height:360px}.echart-small{min-height:280px}.echart-medium{min-height:340px}.echart-sparkline{min-height:150px;border-radius:8px}.equity-chart-meta{display:flex;gap:12px;flex-wrap:wrap;color:#334155;font-size:13px}.equity-chart-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;flex-wrap:wrap}.equity-window-buttons{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center}.equity-window-button{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;padding:5px 10px;font-size:12px;line-height:1}.equity-window-button.active{border-color:#2563eb;background:#dbeafe;color:#1e3a8a}.form-grid{margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.form-grid label{display:grid;gap:6px;font-size:13px;color:#334155}.strategy-form-stack{margin-top:10px;display:grid;gap:10px}.strategy-form-section{border:1px solid #dbeafe;border-radius:10px;background:#f8fbff;padding:10px}.strategy-form-section summary{cursor:pointer;font-weight:700;color:#0f172a}.strategy-form-help{margin:8px 0 0}.strategy-form-lock-grid{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.checkbox-row{margin-top:10px;margin-bottom:10px;display:flex;gap:8px;align-items:center;font-size:13px;color:#334155}.nested-result{margin-top:12px;padding:10px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff}.nested-result h3{margin:0 0 8px;font-size:15px}.progress-wrap{min-width:170px;display:grid;gap:4px}.progress-bar{width:100%;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#0f766e,#2563eb);transition:width .4s ease}.progress-label{font-size:12px;color:#334155}.detail-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-header h2{margin:0}.execution-performance-header{align-items:end}.execution-performance-selection{font-weight:700;color:#334155}.execution-performance-select{display:grid;gap:6px;font-size:12px;color:#475569;justify-items:end}.execution-performance-select select{min-width:280px}.detail-metric-layout{margin-top:10px;margin-bottom:14px;display:block}.detail-metric-quadrants{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-metric-group{border:1px solid #e2e8f0;border-radius:10px;background:#fff;padding:8px}.detail-metric-group h3{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#334155}.detail-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.detail-metric-card{border:1px solid #dbeafe;background:#f8fbff;border-radius:8px;padding:7px 9px;display:grid;gap:3px}.detail-metric-card span{font-size:11px;color:#475569}.detail-metric-card strong{font-size:15px;color:#0f172a}.detail-chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-top:12px;margin-bottom:12px}.detail-series-card{border:1px solid #dbeafe;border-radius:8px;padding:10px;background:#fff}.detail-series-card h3{margin:0 0 8px}.strategy-lab-kpi-strip{margin-top:8px}.strategy-lab-summary-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px;margin-bottom:12px}.strategy-lab-mini-table th:nth-child(2),.strategy-lab-mini-table th:nth-child(3),.strategy-lab-mini-table td:nth-child(2),.strategy-lab-mini-table td:nth-child(3),.strategy-lab-detail-table th:nth-child(n+4),.strategy-lab-detail-table td:nth-child(n+4){text-align:right}.strategy-lab-detail-table th:nth-child(1),.strategy-lab-detail-table td:nth-child(1),.strategy-lab-detail-table th:nth-child(2),.strategy-lab-detail-table td:nth-child(2),.strategy-lab-detail-table th:nth-child(3),.strategy-lab-detail-table td:nth-child(3){text-align:left}.strategy-lab-select-grid{margin-top:6px}.strategy-lab-config-line{margin-top:2px}.detail-json{background:#0f172a;color:#e2e8f0;padding:10px;border-radius:8px;max-height:260px;overflow:auto;font-size:12px}.sweep-heatmap-controls{margin-top:8px;margin-bottom:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:end}.sweep-heatmap-controls label{display:grid;gap:6px;font-size:13px;color:#334155}.echart-heatmap{min-height:380px}.portfolio-assets-pie{margin-top:10px;max-width:760px}.portfolio-assets-pie .echart-pie{min-height:440px}.indicator-filter-grid{margin-top:6px}.indicator-timeframe-row{margin-top:8px;display:grid;gap:6px}.indicator-timeframe-label{font-size:12px;color:#475569;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.indicator-timeframe-buttons{display:flex;gap:6px;flex-wrap:wrap}.indicator-timeframe-button{border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:12px;line-height:1;padding:6px 10px}.indicator-timeframe-button.active{border-color:#2563eb;background:#dbeafe;color:#1e3a8a}.indicator-meta-line{margin-top:8px}.indicator-summary-grid{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}.indicators-chart-grid{margin-top:8px}.indicators-chart-grid .detail-series-card{padding:8px}.indicators-chart-grid .detail-series-card h3{margin-bottom:6px;font-size:13px}.indicators-table{table-layout:fixed}.indicators-table th,.indicators-table td{text-align:right}.indicators-table th:first-child,.indicators-table td:first-child,.indicators-table th:nth-child(3),.indicators-table td:nth-child(3){text-align:left}.data-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.data-panel{display:grid;gap:10px}.data-panel h2{margin:0}.data-freshness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.data-freshness-grid>div{border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;padding:8px;display:grid;gap:2px}.data-freshness-grid span{color:#64748b;font-size:11px}.data-freshness-grid strong{color:#0f172a;font-size:14px}.data-health-table,.data-coverage-table,.data-gaps-table{table-layout:fixed}.data-health-table th,.data-health-table td,.data-coverage-table th,.data-coverage-table td,.data-gaps-table th,.data-gaps-table td{text-align:right}.data-health-table th:first-child,.data-health-table td:first-child,.data-health-table th:nth-child(2),.data-health-table td:nth-child(2),.data-health-table th:nth-child(3),.data-health-table td:nth-child(3),.data-health-table th:nth-child(4),.data-health-table td:nth-child(4),.data-coverage-table th:first-child,.data-coverage-table td:first-child,.data-coverage-table th:nth-child(3),.data-coverage-table td:nth-child(3),.data-coverage-table th:nth-child(4),.data-coverage-table td:nth-child(4),.data-gaps-table th:first-child,.data-gaps-table td:first-child,.data-gaps-table th:nth-child(2),.data-gaps-table td:nth-child(2),.data-gaps-table th:nth-child(3),.data-gaps-table td:nth-child(3){text-align:left}.data-filter-grid{margin-top:6px}.data-safe-result{margin-top:8px;border:1px solid #dbeafe;border-radius:8px;padding:10px;display:grid;gap:8px}.data-safe-result-pass{background:#f0fdf4;border-color:#86efac}.data-safe-result-fail{background:#fef2f2;border-color:#fecaca}.data-safe-result p{margin:0}.timeline-list{margin:0;padding-left:18px;display:grid;gap:8px}.timeline-list li{border-left:2px solid #cbd5e1;padding-left:10px}.timeline-list p{margin:0}@media (max-width: 800px){.mode-banner{align-items:flex-start}.page-nav{top:0}.command-bar{top:54px}.command-bar-state{width:100%}.command-bar-action-row{flex-direction:column;align-items:stretch}.command-action-groups{flex-direction:column;align-items:stretch;width:100%}.command-action-group{width:100%;justify-content:space-between;flex-wrap:wrap}.command-action-group button{flex:1 1 auto}.command-refresh-button{margin-left:0;align-self:flex-end}.overview-grid{grid-template-columns:1fr}.overview-portfolio-card,.overview-status-card{order:initial}.portfolio-key-metrics,.snapshot-strip,.detail-metric-quadrants,.detail-metrics-grid{grid-template-columns:1fr}.execution-performance-header{align-items:stretch}.execution-performance-select{justify-items:start}.execution-performance-select select{min-width:0;width:100%}.data-page-grid,.data-freshness-grid,.asset-search-row{grid-template-columns:1fr}.asset-hyperparams-inline{grid-template-columns:repeat(2,minmax(90px,1fr))}.row-actions-cell{justify-items:stretch}.row-actions-inline{justify-content:stretch}.row-actions-inline>button{width:100%}.row-actions-details summary{width:100%}.row-actions-panel{position:static;min-width:0;width:100%}.portfolio-assets-pie .echart-pie{min-height:340px}.echart{min-height:280px}.echart-pie{min-height:320px}.echart-small{min-height:240px}.echart-medium{min-height:280px}}
