body{margin:0;padding:0;width:100%;min-width:320px;min-height:100vh}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.08);min-height:64px;min-width:0}.sidebar-title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-primary);margin:0;padding:0;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:normal!important;line-height:var(--text-h2-line-height);flex:1 1 auto;min-width:0;max-width:100%}.sidebar-toggle{background:transparent;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);width:32px;height:32px;border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:.75rem}.sidebar-toggle:hover{background:var(--bg-element);color:var(--text-primary)}.nav-item-content{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;text-decoration:none;color:inherit}.nav-item-arrow-button{background:transparent;border:none;padding:0;margin-left:auto;cursor:pointer;display:flex;align-items:center;color:var(--text-secondary);transition:color .2s}.nav-item-arrow-button:hover{color:var(--text-primary)}.nav-item-arrow{font-size:.75rem}.account-selector-icon{font-size:1.25rem}.account-selector-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.account-selector-name{font-size:.875rem;font-weight:600;color:var(--text-primary)}.account-selector-value{font-size:.75rem;color:var(--text-secondary);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.account-selector-arrow{font-size:.75rem;color:var(--text-secondary);margin-left:var(--spacing-sm)}.account-selector-overlay{position:fixed;inset:0;z-index:999;background:transparent}.system-status-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:200px;background:var(--bg-surface);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.status-detail{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.status-detail-label{color:var(--text-secondary)}.status-detail-value{font-weight:600;font-family:var(--font-mono)}.status-detail-value.status-running{color:var(--trade-long)}.status-detail-value.status-stopped{color:var(--trade-short)}.status-detail-value.status-warning{color:var(--status-warning)}.pnl-display{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);border:1px solid rgba(0,245,212,.1)}.pnl-display.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--spacing-md);color:var(--text-secondary)}.pnl-main{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.1)}.pnl-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.pnl-value{font-size:3rem;font-weight:700;font-family:var(--font-mono);line-height:1.2;margin-bottom:var(--spacing-xs)}.pnl-value.pnl-positive{color:var(--success);text-shadow:0 0 20px rgba(0,230,118,.3)}.pnl-value.pnl-negative{color:var(--danger)}.pnl-value.pnl-neutral{color:var(--text-primary)}.pnl-percent{font-size:1.25rem;font-weight:600;font-family:var(--font-mono)}.pnl-percent.pnl-positive{color:var(--success)}.pnl-percent.pnl-negative{color:var(--danger)}.pnl-percent.pnl-neutral{color:var(--text-secondary)}.pnl-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-lg)}.pnl-period{text-align:center}.period-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs)}.period-value{font-size:1.5rem;font-weight:600;font-family:var(--font-mono);margin-bottom:var(--spacing-xs)}.period-value.pnl-positive{color:var(--success)}.period-value.pnl-negative{color:var(--danger)}.period-value.pnl-neutral{color:var(--text-primary)}.period-percent{font-size:.875rem;font-family:var(--font-mono)}.period-percent.pnl-positive{color:var(--success)}.period-percent.pnl-negative{color:var(--danger)}.period-percent.pnl-neutral{color:var(--text-secondary)}@media(max-width:768px){.pnl-display{padding:var(--spacing-lg)}.pnl-value{font-size:2rem}.pnl-breakdown{grid-template-columns:1fr;gap:var(--spacing-md)}}.equity-curve{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);border:1px solid rgba(0,245,212,.1)}.equity-curve.loading,.equity-curve.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:var(--text-secondary)}.equity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.equity-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.equity-legend{display:flex;gap:var(--spacing-lg)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--text-secondary)}.legend-color{width:12px;height:12px;border-radius:2px}.legend-color.strategy{background:var(--success)}.legend-color.benchmark{background:var(--text-secondary)}.equity-tooltip{background:var(--surface);border:1px solid rgba(0,245,212,.2);border-radius:var(--radius-md);padding:var(--spacing-sm);box-shadow:var(--shadow-md)}.tooltip-date{font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.tooltip-value{margin:var(--spacing-xs) 0;color:var(--text-secondary)}.tooltip-value strong{color:var(--success);font-family:var(--font-mono)}.tooltip-benchmark{margin:var(--spacing-xs) 0;color:var(--text-secondary)}.tooltip-benchmark strong{color:var(--text-primary);font-family:var(--font-mono)}@media(max-width:768px){.equity-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.equity-legend{flex-wrap:wrap}}.position-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);border:1px solid rgba(0,245,212,.1)}.position-card.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--spacing-md);color:var(--text-secondary)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.card-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.exposure-badge{background:#00f5d433;color:var(--primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;font-family:var(--font-mono)}.position-details{margin-bottom:var(--spacing-lg)}.position-main{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--spacing-md)}.position-symbol{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.position-quantity{font-size:1rem;color:var(--text-secondary)}.position-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.metric{display:flex;flex-direction:column;gap:var(--spacing-xs)}.metric-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.metric-value{font-size:1rem;font-weight:600;font-family:var(--font-mono);color:var(--text-primary)}.metric.pnl-positive .metric-value{color:var(--success)}.metric.pnl-negative .metric-value{color:var(--danger)}.no-position{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.signal-section{padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1)}.signal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.signal-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.vix-badge{background:#ffd54f33;color:var(--warning);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;font-family:var(--font-mono)}.signal-action{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);font-weight:600}.signal-action.signal-buy{background:#00e6761a;color:var(--success);border:1px solid rgba(0,230,118,.3)}.signal-action.signal-sell{background:#ff52521a;color:var(--danger);border:1px solid rgba(255,82,82,.3)}.signal-action.signal-exit{background:#ffd54f1a;color:var(--warning);border:1px solid rgba(255,213,79,.3)}.signal-action.signal-hold{background:#8892a01a;color:var(--text-secondary);border:1px solid rgba(136,146,160,.3)}.signal-emoji{font-size:1.5rem}.signal-text{font-size:1.25rem;flex:1}.signal-confidence{font-size:.875rem;opacity:.8}.signal-reason{font-size:.875rem;color:var(--text-secondary);line-height:1.5}@media(max-width:768px){.position-metrics{grid-template-columns:1fr}.position-main{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}.metrics-panel{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);border:1px solid rgba(0,245,212,.1)}.metrics-panel.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:var(--spacing-md);color:var(--text-secondary)}.metrics-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.metrics-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.metrics-panel .metric-card-panel{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.metrics-panel .metric-card-panel:hover{background:var(--bg-surface)}.metric-icon{font-size:1.5rem;flex-shrink:0}.metric-content{flex:1;min-width:0}.metric-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs)}.metric-value{font-size:1.25rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.metric-value.metric-good{color:var(--success)}.metric-value.metric-ok{color:var(--warning)}.metric-value.metric-bad{color:var(--danger)}.metric-detail{font-size:.75rem;color:var(--text-secondary)}@media(max-width:768px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.metrics-grid{grid-template-columns:1fr}}.alerts-panel{display:flex;flex-direction:column;height:100%}.alerts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.alerts-header h3{margin:0;font-size:1.25rem;font-weight:600}.unread-badge{background:var(--color-danger, #ef4444);color:#fff;border-radius:12px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;min-width:20px;text-align:center}.alerts-list{display:flex;flex-direction:column;gap:.75rem;flex:1;overflow-y:auto}.alert-item{display:flex;gap:.75rem;padding:.75rem;border-radius:8px;border-left:3px solid transparent;background:#94a3b80d;transition:all .2s}.alert-item.unread{background:#3b82f61a;border-left-color:var(--color-primary, #3b82f6)}.alert-item.severity-critical{border-left-color:var(--color-danger, #ef4444);background:#ef44441a}.alert-item.severity-warning{border-left-color:var(--color-warning, #f59e0b);background:#f59e0b1a}.alert-item.severity-info{border-left-color:var(--color-info, #3b82f6);background:#3b82f60d}.alert-item:hover{background:#94a3b81a}.alert-icon{font-size:1.5rem;flex-shrink:0}.alert-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.alert-title-row{display:flex;align-items:center;gap:.5rem}.alert-title{font-weight:600;font-size:.9rem;color:var(--text-primary, #f1f5f9)}.unread-dot{width:8px;height:8px;border-radius:50%;background:var(--color-primary, #3b82f6);flex-shrink:0}.alert-message{font-size:.85rem;color:var(--text-secondary, #94a3b8);margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.alert-time{font-size:.75rem;color:var(--text-tertiary, #64748b);margin-top:.25rem}.empty-state p{margin:.5rem 0 .25rem;font-weight:500}.empty-subtitle{font-size:.85rem;color:var(--text-tertiary, #64748b)}.heatmap-panel{display:flex;flex-direction:column}.heatmap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.heatmap-header h3{margin:0;font-size:1.25rem;font-weight:600}.heatmap-legend{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary, #94a3b8)}.legend-gradient{display:flex;gap:2px}.legend-color{width:20px;height:12px;border-radius:2px}.legend-label{font-size:.7rem}.heatmap-container{overflow-x:auto;margin-bottom:1rem}.heatmap-table{display:flex;flex-direction:column;min-width:100%}.heatmap-row{display:grid;grid-template-columns:80px repeat(12,1fr);gap:4px;margin-bottom:4px}.header-row{margin-bottom:8px}.heatmap-cell{padding:.5rem;border-radius:4px;text-align:center;font-size:.75rem;font-weight:500;display:flex;align-items:center;justify-content:center;min-height:40px;transition:opacity .2s}.heatmap-cell:hover{opacity:.8;cursor:help}.header-cell{background:#94a3b81a;color:var(--text-secondary, #94a3b8);font-weight:600;font-size:.7rem}.year-cell{background:#94a3b81a;color:var(--text-primary, #f1f5f9);font-weight:600;font-size:.8rem}.empty-cell{background:#94a3b80d;color:var(--text-tertiary, #64748b)}.cell-dash{color:var(--text-tertiary, #64748b)}.cell-value{color:var(--text-primary, #f1f5f9)}.heatmap-excellent{background:#22c55e4d;color:#22c55e}.heatmap-good{background:#3b82f64d;color:#3b82f6}.heatmap-positive{background:#94a3b833;color:#94a3b8}.heatmap-neutral{background:#94a3b81a;color:#94a3b8}.heatmap-negative{background:#f59e0b4d;color:#f59e0b}.heatmap-bad{background:#ef44444d;color:#ef4444}.heatmap-footer{border-top:1px solid rgba(148,163,184,.2);padding-top:1rem;margin-top:auto}.heatmap-stats{display:flex;gap:2rem;flex-wrap:wrap}.stat-item{display:flex;gap:.5rem;font-size:.85rem}.stat-label{color:var(--text-secondary, #94a3b8)}.stat-value{color:var(--text-primary, #f1f5f9);font-weight:600}.spy-comparison{display:flex;flex-direction:column}.comparison-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.comparison-header h3{margin:0;font-size:1.25rem;font-weight:600}.comparison-summary{display:flex;gap:1.5rem;flex-wrap:wrap}.summary-item.highlight{padding-left:1rem;border-left:2px solid var(--color-primary, #5eead4)}.summary-label{font-size:.75rem;color:var(--text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1.1rem;font-weight:600}.summary-value.positive{color:var(--color-success, #22c55e)}.summary-value.negative{color:var(--color-danger, #ef4444)}.comparison-chart{margin:1rem 0;min-height:300px}.comparison-footer{border-top:1px solid rgba(148,163,184,.2);padding-top:1rem;margin-top:auto}.comparison-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}.stat-card{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#94a3b80d;border-radius:8px}.stat-label{font-size:.75rem;color:var(--text-secondary, #94a3b8);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1rem;font-weight:600;color:var(--text-primary, #f1f5f9)}.custom-tooltip{background:#0f172af2;border:1px solid rgba(148,163,184,.2);border-radius:8px;padding:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tooltip-date{font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #f1f5f9);font-size:.85rem}.tooltip-item{margin:.25rem 0;font-size:.85rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--text-secondary, #94a3b8)}.empty-icon{font-size:3rem;margin-bottom:.5rem}.empty-state p{margin:.5rem 0;font-weight:500}.loading{padding:2rem;text-align:center;color:var(--text-secondary, #94a3b8)}.close-position-modal{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);width:90%;max-width:500px;box-shadow:var(--shadow-xl)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:2rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color .2s}.modal-close:hover{background:var(--bg-element)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--text-primary)}.form-group input,.form-group select{width:100%;padding:var(--spacing-sm);background:var(--bg-element);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary)}.form-group input:disabled,.form-group select:disabled{opacity:.5;cursor:not-allowed}.form-hint{display:block;margin-top:var(--spacing-xs);font-size:.875rem;color:var(--text-secondary)}.form-error{padding:var(--spacing-sm);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:#ef4444;margin-bottom:var(--spacing-md);font-size:.875rem}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl)}.modal-actions button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s;border:1px solid rgba(255,255,255,.1);background:var(--bg-element);color:var(--text-primary)}.modal-actions button:hover:not(:disabled){background:var(--bg-element)}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.modal-actions .btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.modal-actions .btn-primary:hover:not(:disabled){background:var(--primary-hover, var(--primary));opacity:.9}:root{--bg-main: #0B0E14;--bg-surface: rgba(15, 18, 25, .85);--bg-surface-hover: rgba(15, 18, 25, .85);--bg-sidebar: #0F1219;--bg-element: rgba(0, 0, 0, .2);--bg-element-hover: rgba(0, 0, 0, .2);--border-subtle: rgba(255, 255, 255, .06);--text-primary: #F9FAFB;--text-secondary: #9CA3AF;--accent-blue: #3B82F6;--accent-purple: #8B5CF6;--trade-long: #10B981;--trade-short: #EF4444;--status-warning: #F59E0B;--status-neutral: #64748B;--primary: var(--accent-blue);--success: var(--trade-long);--danger: var(--trade-short);--warning: var(--status-warning);--background-start: var(--bg-main);--background-end: var(--bg-main);--surface: var(--bg-surface);--font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Monaco", "Consolas", "Courier New", monospace;--text-h1-size: 28px;--text-h1-weight: 700;--text-h1-tracking: -.02em;--text-h1-line-height: 1.2;--text-h2-size: 20px;--text-h2-weight: 600;--text-h2-line-height: 1.3;--text-h3-size: 16px;--text-h3-weight: 600;--text-h3-line-height: 1.4;--text-label-size: 11px;--text-label-weight: 600;--text-label-tracking: .08em;--text-label-transform: uppercase;--text-label-line-height: 1.4;--text-data-size: 14px;--text-data-weight: 500;--text-data-line-height: 1.5;--text-value-large-size: 24px;--text-value-large-weight: 700;--text-value-large-line-height: 1.2;--text-value-medium-size: 18px;--text-value-medium-weight: 600;--text-value-medium-line-height: 1.3;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--sidebar-width-expanded: 240px;--sidebar-width-collapsed: 64px;--page-margin: 24px;--grid-gap: 16px;--grid-gap-large: 20px;--max-content-width: 1400px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-blue: 0 4px 6px rgba(59, 130, 246, .2)}*{box-sizing:border-box}body{margin:0;padding:0;width:100%;max-width:100%;font-family:var(--font-body);background:var(--bg-main);color:var(--text-primary);min-height:100vh;font-display:swap;word-break:break-word;overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;margin:0;color:var(--text-primary)}h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-tracking)}h2{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-secondary)}.text-h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);letter-spacing:var(--text-h1-tracking);font-family:var(--font-heading)}.text-h2{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-secondary);font-family:var(--font-heading)}.text-label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-transform);color:var(--text-secondary)}.text-data{font-size:var(--text-data-size);font-weight:var(--text-data-weight);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.card{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-subtle)}.card:hover{background:var(--bg-surface);border-color:var(--border-subtle)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.06);min-height:40px}.card-title{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-primary);font-family:var(--font-heading);line-height:var(--text-h2-line-height);letter-spacing:-.01em}.card-header h2{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-primary);font-family:var(--font-heading);line-height:var(--text-h2-line-height);letter-spacing:-.01em;margin:0}.btn{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:none;font-family:var(--font-body);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:var(--spacing-xs);white-space:nowrap}.btn-primary{background:var(--accent-blue);color:#fff;box-shadow:var(--shadow-blue)}.btn-primary:hover{background:#2563eb;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-success{background:var(--trade-long);color:#fff}.btn-danger{background:var(--trade-short);color:#fff}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid rgba(100,116,139,.5)}.btn-secondary:hover{border-color:#94a3b866;background:transparent}.btn-destructive{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}.btn-destructive:hover{background:#ef444433}.btn:disabled{opacity:.5;cursor:not-allowed}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-success{background:#10b9811a;color:var(--trade-long);border:1px solid rgba(16,185,129,.2)}.badge-danger{background:#ef44441a;color:var(--trade-short);border:1px solid rgba(239,68,68,.2)}.badge-warning{background:#f59e0b1a;color:var(--status-warning);border:1px solid rgba(245,158,11,.2)}.badge-neutral{background:#64748b1a;color:var(--status-neutral);border:1px solid rgba(100,116,139,.2)}.badge-info{background:#3b82f61a;color:var(--accent-blue);border:1px solid rgba(59,130,246,.2)}.badge-long{background:#10b9811a;color:var(--trade-long);border:1px solid rgba(16,185,129,.2)}.badge-short{background:#ef44441a;color:var(--trade-short);border:1px solid rgba(239,68,68,.2)}.status-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:var(--spacing-xs)}.status-indicator.running{background:var(--success);box-shadow:0 0 8px var(--success)}.status-indicator.stopped{background:var(--danger)}.status-indicator.warning{background:var(--warning)}.grid{display:grid;gap:var(--spacing-md)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.text-lg{font-size:1.5rem}.text-xl{font-size:2rem}.text-2xl{font-size:2.5rem}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.spinner{border:2px solid rgba(255,255,255,.1);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:spin .8s linear infinite}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.modal-title{font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.modal-close:hover{background:#ffffff1a;color:var(--text-primary)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:.875rem}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #00f5d41a}.form-input::placeholder{color:var(--text-secondary)}.table{width:100%;border-collapse:collapse;font-family:var(--font-body)}.table th{position:sticky;top:0;background:var(--bg-surface);text-align:left;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-size:var(--text-label-size);font-weight:var(--text-label-weight);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);line-height:var(--text-label-line-height);border-bottom:1px solid rgba(255,255,255,.08);z-index:10}.table th.text-right,.table td.text-right{text-align:right}.table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05);height:40px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-data-size);color:var(--text-primary);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);word-break:break-word;overflow-wrap:break-word;vertical-align:middle}.table td.number,.table td.monetary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.table td.text-left{text-align:left;font-family:var(--font-body)}.table tr:hover{background:#ffffff05}.table td.positive,.table .positive{color:var(--trade-long)}.table td.negative,.table .negative{color:var(--trade-short)}.table td.number{font-family:var(--font-mono);text-align:right;font-variant-numeric:tabular-nums}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;padding-right:var(--spacing-lg);transition:background-color .2s}.table th.sortable:hover{background:#ffffff08}.table th.sortable:after{content:"↕";position:absolute;right:var(--spacing-sm);opacity:.3;font-size:var(--text-label-size)}.table th.sortable.sort-asc:after{content:"↑";opacity:1;color:var(--accent-blue)}.table th.sortable.sort-desc:after{content:"↓";opacity:1;color:var(--accent-blue)}.table-container{overflow-x:auto;overflow-y:auto;max-height:600px;border-radius:var(--radius-md)}.table-container .table{margin:0}.tabs{display:flex;gap:var(--spacing-sm);border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:var(--spacing-lg)}.tab{padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;color:var(--text-secondary);font-family:var(--font-body);font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.sidebar{position:fixed;left:0;top:0;height:100vh;width:var(--sidebar-width-expanded);background:var(--bg-sidebar);border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;z-index:100;transition:width .3s ease;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar-nav{flex:1;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.nav-group{margin-bottom:var(--spacing-lg)}.nav-group-title{font-size:var(--text-label-size);font-weight:var(--text-label-weight);letter-spacing:var(--text-label-tracking);text-transform:var(--text-label-transform);color:var(--text-secondary);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-xs);opacity:.7}.sidebar.collapsed .nav-group-title{display:none}.nav-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:all .2s;gap:var(--spacing-sm);font-size:.875rem;font-weight:500;cursor:pointer;position:relative}.nav-item:hover{background:transparent;color:var(--text-primary)}.nav-item.active{background:#3b82f61a;color:var(--accent-blue);border-left:3px solid var(--accent-blue)}.nav-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-item-label{flex:1}.sidebar.collapsed .nav-item-label{display:none}.nav-item-badge{background:var(--accent-blue);color:#fff;font-size:.625rem;padding:2px 6px;border-radius:var(--radius-full);font-weight:600;min-width:18px;text-align:center}.nav-item-children{margin-left:var(--spacing-lg);margin-top:var(--spacing-xs);display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar.collapsed .nav-item-children{display:none}.header{position:fixed;top:0;left:var(--sidebar-width-expanded);right:0;height:64px;background:var(--bg-sidebar);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-lg);z-index:90;transition:left .3s ease;box-sizing:border-box}.app-layout .sidebar.collapsed~.app-main .header,.app-layout:has(.sidebar.collapsed) .header{left:var(--sidebar-width-collapsed)}.header-left{display:flex;align-items:center;gap:var(--spacing-lg)}.header-right{display:flex;align-items:center;gap:var(--spacing-md)}.app-layout{display:flex;min-height:100vh;background:var(--bg-main)}.app-main{flex:1;margin-left:var(--sidebar-width-expanded);margin-top:64px;padding:var(--page-margin);transition:margin-left .3s ease;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 64px)}.app-layout .sidebar.collapsed~.app-main,.app-layout:has(.sidebar.collapsed) .app-main{margin-left:var(--sidebar-width-collapsed)}.main-content{max-width:var(--max-content-width);margin:0 auto;width:100%}.bento-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--grid-gap)}.bento-grid-2{grid-template-columns:repeat(2,1fr)}.bento-grid-3{grid-template-columns:repeat(3,1fr)}.bento-grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1024px){.bento-grid-4,.bento-grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.bento-grid-4,.bento-grid-3,.bento-grid-2{grid-template-columns:1fr}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.app-main{margin-left:0}.header{left:0}}.account-selector{position:relative}.account-selector-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;transition:all .2s;font-size:.875rem}.account-selector-button:hover{background:transparent;border-color:#ffffff14}.account-selector-dropdown{position:absolute;top:calc(100% + var(--spacing-xs));right:0;min-width:280px;background:var(--bg-surface);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;padding:var(--spacing-sm);display:flex;flex-direction:column;gap:var(--spacing-xs)}.account-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:background .2s;display:flex;flex-direction:column;gap:var(--spacing-xs)}.account-item:hover{background:transparent}.account-item.active{background:#3b82f61a;border:1px solid rgba(59,130,246,.2)}.account-item-divider{height:1px;background:#ffffff14;margin:var(--spacing-xs) 0}.account-item-manage{margin-top:var(--spacing-xs);border-top:1px solid rgba(255,255,255,.08);padding-top:var(--spacing-sm)}.account-item-manage:hover{background:#3b82f61a}.account-item-name{font-weight:600;color:var(--text-primary);font-size:.875rem}.account-item-details{font-size:.75rem;color:var(--text-secondary);display:flex;justify-content:space-between;align-items:center}.account-item-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.system-status-widget{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:background .2s}.system-status-widget:hover{background:transparent}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.running{background:var(--trade-long);box-shadow:0 0 8px var(--trade-long)}.status-dot.stopped{background:var(--trade-short)}.status-dot.warning{background:var(--status-warning)}.status-text{font-size:.75rem;color:var(--text-secondary);font-weight:500}.dashboard{padding:var(--spacing-lg);width:100%;max-width:100%;margin:0}.dashboard-section{margin-bottom:var(--spacing-xl)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}@media(max-width:768px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.dashboard-header h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);color:var(--text-primary);line-height:var(--text-h1-line-height)}.summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.summary-card{padding:var(--spacing-lg)}.card-value{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);color:var(--text-primary);line-height:var(--text-value-large-line-height);margin-bottom:var(--spacing-xs)}.card-change{font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.recommendations-section,.positions-section,.activity-section{margin-bottom:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header h2{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);color:var(--text-primary)}.recommendations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.recommendation-card{padding:var(--spacing-lg)}.rec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.rec-ticker{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);color:var(--text-primary);line-height:var(--text-value-medium-line-height)}.rec-confidence{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.rec-prices{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.price-item{display:flex;justify-content:space-between;align-items:center}.price-label{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.price-value{font-weight:600;font-family:var(--font-mono)}.positions-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.position-card{padding:var(--spacing-lg)}.position-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.position-ticker{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);line-height:var(--text-value-medium-line-height);color:var(--text-primary)}.position-pnl{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);font-family:var(--font-mono);line-height:var(--text-value-medium-line-height)}.position-details{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}.detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height)}.detail-value{font-size:var(--text-data-size);font-weight:var(--text-data-weight);font-family:var(--font-mono);line-height:var(--text-data-line-height);color:var(--text-primary)}.activity-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.activity-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.activity-icon{font-size:1.25rem}.activity-text{flex:1;color:var(--text-primary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.activity-time{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.error-banner{background:#ef444426;border:1px solid var(--danger);color:var(--danger);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}@media(max-width:1024px){.summary-cards,.recommendations-grid,.positions-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.summary-cards,.recommendations-grid,.positions-list{grid-template-columns:1fr}}.sp500-system-page{padding:var(--spacing-lg);width:100%;max-width:100%;margin:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.page-header h1{font-size:2rem;font-weight:700;color:var(--text-primary)}.header-actions{display:flex;gap:var(--spacing-md);align-items:center}.tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:2px solid rgba(255,255,255,.1)}.tab{padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;margin-bottom:-2px}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.overview-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.status-section h2,.signal-section h2{margin-bottom:var(--spacing-md);font-size:1.5rem}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.status-card{padding:var(--spacing-lg)}.status-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-size:1.125rem;font-weight:600}.status-card-detail{padding:var(--spacing-xs) 0;color:var(--text-secondary);font-size:.875rem}.indicators-card h3,.signals-card h3{margin-bottom:var(--spacing-md);font-size:1.125rem}.indicators-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.signals-list li.signal-buy{border-left-color:var(--success)}.signals-list li.signal-warning{border-left-color:var(--warning)}.signal-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.signal-input{display:flex;gap:var(--spacing-md);align-items:flex-end}.signal-input label{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.signal-input .input{padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:.875rem}.signal-card{padding:var(--spacing-lg)}.signal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.signal-action{display:flex;align-items:center;gap:var(--spacing-md)}.signal-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);font-weight:600;font-size:.875rem}.badge-long{background:var(--success);color:var(--background-start)}.badge-short{background:var(--danger);color:var(--text-primary)}.exposure-value{font-size:1.5rem;font-weight:700}.signal-confidence{font-size:.875rem;color:var(--text-secondary)}.signal-reason{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm)}.signal-position{margin-bottom:var(--spacing-md)}.position-item{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.05)}.position-label{color:var(--text-secondary)}.position-value{font-weight:600}.signal-indicators h4{margin-bottom:var(--spacing-sm);font-size:.875rem;color:var(--text-secondary)}.indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-sm)}.indicator-mini{display:flex;flex-direction:column;padding:var(--spacing-sm);background:var(--bg-element);border-radius:var(--radius-sm)}.indicator-mini-label{font-size:.75rem;color:var(--text-secondary)}.indicator-mini-value{font-size:1rem;font-weight:600}.signal-timestamp{font-size:.75rem;color:var(--text-secondary);text-align:right}.signal-instructions{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--primary)}.signal-instructions h4{margin-bottom:var(--spacing-md);color:var(--primary);font-size:1.125rem}.instructions-box{background:#00f5d41a;border-left:3px solid var(--primary);border-radius:var(--radius-sm);padding:var(--spacing-md)}.instruction-step{margin-bottom:var(--spacing-md)}.instruction-step:last-child{margin-bottom:0}.instruction-step strong{display:block;margin-bottom:var(--spacing-xs);color:var(--text-primary)}.instruction-detail{margin-left:var(--spacing-md);margin-bottom:var(--spacing-xs);color:var(--text-secondary);font-size:.875rem}.instruction-detail.instruction-buy{color:var(--success);font-weight:600;font-size:1rem}.instruction-detail.instruction-sell{color:var(--danger);font-weight:600;font-size:1rem}.instruction-note{margin-left:var(--spacing-md);margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-element);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);line-height:1.6}.performance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.performance-card{padding:var(--spacing-lg);text-align:center}.performance-table{width:100%;border-collapse:collapse;margin-top:var(--spacing-md)}.performance-table thead{background:var(--bg-element)}.performance-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid rgba(255,255,255,.1)}.performance-table td{padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05)}.performance-table tr.total-row{background:var(--bg-element);font-weight:600}.chart-container{margin-top:var(--spacing-md);padding:var(--spacing-md)}.trading-guide-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.guide-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.guide-section{padding:var(--spacing-lg)}.guide-section h3{margin-bottom:var(--spacing-md);font-size:1.25rem;color:var(--primary)}.guide-section h4{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm);font-size:1rem}.guide-table{width:100%;border-collapse:collapse;margin:var(--spacing-md) 0}.guide-table th,.guide-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid rgba(255,255,255,.1)}.guide-table th{background:var(--bg-element);font-weight:600}.code-block{background:#0000004d;padding:var(--spacing-md);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:.875rem;overflow-x:auto;margin:var(--spacing-md) 0}.code-block code{color:var(--primary)}.key-times{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm)}.workflow-step{margin:var(--spacing-lg) 0;padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-md)}.workflow-step h4{margin-bottom:var(--spacing-sm);color:var(--primary)}.workflow-step ul,.workflow-step ol{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg)}.workflow-step li{margin:var(--spacing-xs) 0}.example-box{margin-top:var(--spacing-md);padding:var(--spacing-md);background:#00f5d41a;border-left:3px solid var(--primary);border-radius:var(--radius-sm)}.strategy-logic{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.logic-section{padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm)}.logic-section ul{margin-top:var(--spacing-sm);padding-left:var(--spacing-lg)}.emergency-section{border:2px solid var(--warning);background:#ffd54f1a}.section-header{display:flex;justify-content:space-between;align-items:center}.backtest-runs-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.backtest-run-card{padding:var(--spacing-lg);cursor:pointer;transition:all .2s;border:2px solid transparent}.backtest-run-card:hover{border-color:var(--primary);transform:translateY(-2px)}.backtest-run-card.selected{border-color:var(--primary);background:#00f5d41a}.backtest-run-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.backtest-run-id{font-family:var(--font-mono);font-weight:600;color:var(--primary)}.backtest-run-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--spacing-md)}.metric-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.backtest-run-time{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);font-size:.75rem;color:var(--text-secondary)}.backtest-details{margin-top:var(--spacing-xl);padding:var(--spacing-lg)}.backtest-details-json{background:#0000004d;padding:var(--spacing-md);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:.875rem;overflow-x:auto;max-height:600px;overflow-y:auto}.backtest-runner-card{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.backtest-runner-card h3{margin-bottom:var(--spacing-md)}.backtest-runner-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group label{font-size:.875rem;color:var(--text-secondary);font-weight:600}.form-group .input{padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:.875rem}.form-group textarea.input{resize:vertical;min-height:80px}.success-banner{background:var(--success);color:var(--background-start);padding:var(--spacing-md);border-radius:var(--radius-md);display:flex;justify-content:space-between;align-items:center}.cta-section{margin-bottom:var(--spacing-xl)}.cta-card{padding:var(--spacing-xl);background:linear-gradient(135deg,#00f5d41a,#00f5d40d);border:2px solid var(--primary)}.cta-card h3{margin-bottom:var(--spacing-lg);font-size:1.5rem;color:var(--primary)}.cta-steps{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.cta-step{display:flex;gap:var(--spacing-md);align-items:flex-start}.cta-step-number{width:40px;height:40px;border-radius:50%;background:var(--primary);color:var(--background-start);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;flex-shrink:0}.cta-step-content{flex:1}.cta-step-content h4{margin-bottom:var(--spacing-xs);color:var(--text-primary)}.cta-step-content p{margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.cta-action{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.cta-input{flex:1;max-width:300px}.cta-note{padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm);border-left:3px solid var(--primary);font-size:.875rem}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.empty-icon{font-size:4rem;margin-bottom:var(--spacing-md)}.empty-state h3{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.loading{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.error-banner{background:var(--danger);color:var(--text-primary);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.error-banner button{background:transparent;border:none;color:var(--text-primary);font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.status-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm)}.status-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.status-value{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.indicators-section{margin-top:var(--spacing-lg)}.indicators-section h3{margin-bottom:var(--spacing-md);font-size:1.125rem}.indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.indicator-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--bg-element);border-radius:var(--radius-sm)}.indicator-name{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.indicator-value{font-size:1.25rem;font-weight:600}.color-green{color:var(--success)}.color-yellow{color:var(--warning)}.color-red{color:var(--danger)}.color-white{color:var(--text-primary)}.indicator-hint{font-size:.75rem;color:var(--text-secondary);font-style:italic}.signals-section{margin-top:var(--spacing-lg)}.signals-section h3{margin-bottom:var(--spacing-md);font-size:1.125rem}.signals-list li{padding:var(--spacing-sm);background:var(--bg-element);border-radius:var(--radius-sm);border-left:3px solid var(--primary)}.signal-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.signal-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.05)}.signal-label{color:var(--text-secondary);font-weight:600}.signal-value{font-weight:600;color:var(--text-primary)}.position-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.position-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.05)}.position-label{color:var(--text-secondary);font-weight:600}.position-value{font-weight:600;color:var(--text-primary)}.execution-label{color:var(--text-secondary);font-weight:600}.execution-value{font-weight:600;color:var(--text-primary)}.account-badge{padding:var(--spacing-xs) var(--spacing-md);background:#00f5d41a;border:1px solid var(--primary);border-radius:var(--radius-md);font-size:.875rem;color:var(--primary);font-weight:600}.performance-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.performance-item{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-sm)}.performance-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.performance-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.trades-table{margin-top:var(--spacing-md);overflow-x:auto}.trades-table table{width:100%;border-collapse:collapse}.trades-table thead{background:var(--bg-element)}.trades-table th{padding:var(--spacing-md);text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid rgba(255,255,255,.1);font-size:.875rem}.trades-table td{padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05);font-size:.875rem}.trades-table tr:hover{background:var(--bg-element)}.configuration-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.section-header{margin-bottom:var(--spacing-lg)}.section-header h2{margin-bottom:var(--spacing-sm);font-size:1.5rem}.section-description{color:var(--text-secondary);font-size:.875rem;line-height:1.6}.config-item{margin-bottom:var(--spacing-lg)}.config-label-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}.config-label-group label{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;color:var(--text-primary)}.config-description{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin-top:var(--spacing-xs)}.env-override-badge{padding:var(--spacing-xs) var(--spacing-sm);background:#ffd54f33;border:1px solid var(--warning);border-radius:var(--radius-sm);font-size:.75rem;color:var(--warning);font-weight:600;margin-left:var(--spacing-sm)}.safety-info{padding:var(--spacing-md);background:#ffd54f1a;border-left:3px solid var(--warning);border-radius:var(--radius-sm)}.safety-info p{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.safety-info ul{margin:var(--spacing-sm) 0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.safety-info li{margin:var(--spacing-xs) 0}.success-banner{background:var(--success);color:var(--background-start);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.success-banner button{background:transparent;border:none;color:var(--background-start);font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.metric-card{display:flex;flex-direction:column;padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);position:relative;box-shadow:var(--shadow-sm);min-height:100px;min-width:0;overflow:hidden}.metric-card:hover{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:var(--shadow-sm)}.metric-content{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;justify-content:flex-start}.metric-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);font-family:var(--font-body);line-height:var(--text-label-line-height);margin-bottom:var(--spacing-xs);white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:normal!important}.metric-value{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);color:var(--text-primary);font-family:var(--font-heading);font-variant-numeric:tabular-nums;line-height:var(--text-value-large-line-height);margin:0;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:normal!important}.metric-value-success{color:var(--success)}.metric-value-danger{color:var(--danger)}.metric-value-warning{color:var(--warning)}.metric-value-primary{color:var(--accent-blue)}.metric-value-secondary{color:var(--text-secondary)}.metric-trend{font-size:.875rem;font-weight:600}.trend-up{color:var(--success)}.trend-down{color:var(--danger)}.trend-neutral{color:var(--text-secondary)}.metric-status{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:500;line-height:var(--text-data-line-height);margin-top:var(--spacing-xs)}.metric-card.has-tooltip{cursor:help}.metric-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);font-size:.75rem;color:var(--text-primary);white-space:nowrap;z-index:1000;box-shadow:var(--shadow-lg);pointer-events:none}.metric-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--bg-surface)}.hero-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.hero-summary .metric-card{min-width:0}.hero-summary .metric-label{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;word-break:normal!important;overflow-wrap:normal!important}.hero-summary .metric-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1024px){.hero-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.hero-summary{grid-template-columns:1fr}}.signals-widget{margin-bottom:var(--spacing-xl)}.signals-last-section,.signals-next-section,.signals-history-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.08)}.signals-history-section{border-bottom:none}.signals-last-section h3,.signals-next-section h3{font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);color:var(--text-primary);margin-bottom:var(--spacing-md);line-height:var(--text-h3-line-height)}.last-signal-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.last-signal-header{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.signal-action-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.signal-action-large{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);text-transform:uppercase;letter-spacing:.05em;min-width:140px;text-align:center;display:inline-block;line-height:var(--text-value-medium-line-height)}.signal-action-large.badge-success{background:#10b98126;color:var(--success);border:1px solid rgba(16,185,129,.3)}.signal-action-large.badge-danger{background:#ef444426;color:var(--danger);border:1px solid rgba(239,68,68,.3)}.current-signal-display{margin-bottom:var(--spacing-md);display:flex;align-items:center}.signal-entry-box{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) 0}.signal-entry-label{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:500;white-space:nowrap}.signal-entry-value{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.signal-action-badge.badge-success{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.signal-action-badge.badge-danger{background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.2)}.signal-confidence-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.signal-confidence-badge.badge-success{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.signal-confidence-badge.badge-warning{background:#f59e0b1a;color:var(--warning);border:1px solid rgba(245,158,11,.2)}.signal-confidence-badge.badge-danger{background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.2)}.last-signal-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.signal-detail-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0}.signal-detail-label{color:var(--text-secondary);font-weight:500;font-size:var(--text-data-size);line-height:var(--text-data-line-height);word-break:break-word;overflow-wrap:break-word;flex-shrink:0}.signal-detail-value{font-weight:600;color:var(--text-primary);font-size:var(--text-data-size);font-family:var(--font-mono);font-variant-numeric:tabular-nums;line-height:var(--text-data-line-height);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;margin-left:var(--spacing-sm)}.confidence-meter{flex:1;height:8px;background:#0000004d;border-radius:var(--radius-sm);margin:0 var(--spacing-md);overflow:hidden}.confidence-bar{height:100%;transition:width .3s ease;border-radius:var(--radius-sm)}.next-signal-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.next-signal-note{font-size:.75rem;color:var(--text-secondary);font-style:italic;margin-top:var(--spacing-xs)}.signals-history-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--spacing-sm) 0;background:transparent;border:none;color:var(--text-primary);font-weight:600;cursor:pointer;font-size:.875rem;transition:color .2s}.signals-history-toggle:hover{color:var(--accent-blue);background:transparent}.toggle-icon{font-size:.75rem;color:var(--text-secondary)}.signals-history-content{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.08)}.signals-history-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.signal-history-item{display:grid;grid-template-columns:80px 80px 1fr 30px;gap:var(--spacing-md);align-items:center;padding:var(--spacing-sm);background:#0003;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.04);font-size:.875rem}.signal-history-action{font-weight:600;text-transform:uppercase;font-size:.75rem}.signal-history-confidence{font-family:var(--font-mono);color:var(--text-primary)}.signal-history-date{color:var(--text-secondary);font-size:.75rem}.signal-history-executed{text-align:center;font-size:1rem}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}.progress-bar-container{width:100%}.progress-bar-label{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs);font-size:.75rem;color:var(--text-secondary)}.progress-bar-track{width:100%;background:#0000004d;border-radius:var(--radius-sm);overflow:hidden}.progress-bar-fill{height:100%;transition:width .3s ease;border-radius:var(--radius-sm)}.progress-bar-success{background:var(--success)}.progress-bar-danger{background:var(--danger)}.progress-bar-warning{background:var(--warning)}.progress-bar-primary{background:var(--accent-blue)}.position-card{margin-bottom:var(--spacing-xl)}.position-hero{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.08)}.position-symbol{display:flex;flex-direction:column;gap:var(--spacing-xs)}.position-ticker{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);color:var(--text-primary);font-family:var(--font-heading);line-height:var(--text-value-medium-line-height)}.position-shares{font-size:var(--text-data-size);color:var(--text-secondary);font-weight:500;line-height:var(--text-data-line-height)}.position-pnl-amount{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);font-family:var(--font-mono);line-height:var(--text-value-large-line-height)}.position-pnl-percent{font-size:var(--text-data-size);font-weight:600;margin-top:var(--spacing-xs);line-height:var(--text-data-line-height)}.position-progress{margin-bottom:var(--spacing-md)}.progress-label{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs);font-size:var(--text-label-size);color:var(--text-secondary);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height)}.position-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-top:var(--spacing-md)}.position-detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height);word-break:break-word;overflow-wrap:break-word}.detail-value{font-size:var(--text-data-size);font-weight:600;color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;line-height:var(--text-data-line-height);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.position-risk-metrics{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.08)}.risk-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}.risk-metric-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.risk-metric-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height);white-space:nowrap}.risk-metric-value{font-size:var(--text-data-size);font-weight:600;color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums;line-height:var(--text-data-line-height);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.risk-metric-value.risk-metric-danger{color:var(--danger)}.risk-metric-value.risk-metric-success{color:var(--success)}@media(max-width:768px){.position-hero{flex-direction:column;gap:var(--spacing-md)}.position-pnl{text-align:left}.position-details-grid{grid-template-columns:1fr}.risk-metrics-grid{grid-template-columns:repeat(2,1fr)}}.skeleton-card{background:#0003;border-radius:var(--radius-md);overflow:hidden;position:relative}.skeleton-shimmer{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);animation:shimmer 1.5s infinite}.skeleton-metric{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:#0003;border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton-icon{width:20px;height:20px;background:var(--bg-element);border-radius:var(--radius-sm);flex-shrink:0}.skeleton-content{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.skeleton-label{width:60px;height:12px;background:var(--bg-element);border-radius:var(--radius-sm)}.skeleton-value{width:80px;height:20px;background:var(--bg-element);border-radius:var(--radius-sm)}.skeleton-metric:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.03),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.timestamp{font-size:.75rem;color:var(--text-secondary);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.timestamp-relative{font-weight:500}.timestamp-absolute{font-family:var(--font-mono);font-size:.7rem}.timestamp-fresh{color:var(--success)}.timestamp-warning{color:var(--warning)}.timestamp-stale{color:var(--danger)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;min-height:200px}.empty-state-icon{font-size:2.5rem;margin-bottom:var(--spacing-md);opacity:.4;line-height:1}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.empty-state-message{font-size:.875rem;color:var(--text-secondary);margin-bottom:var(--spacing-lg);max-width:400px}.dashboard-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.08)}.card-header h2{margin:0;font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);color:var(--text-primary);line-height:var(--text-h2-line-height)}.status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}@media(max-width:1400px){.status-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.status-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.status-grid{grid-template-columns:1fr}}.indicators-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.08)}.indicators-section h3{margin-bottom:var(--spacing-md);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);color:var(--text-primary);line-height:var(--text-h3-line-height)}.indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg)}@media(min-width:1400px){.indicators-grid{grid-template-columns:repeat(5,1fr)}}@media(max-width:1024px){.indicators-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.indicators-grid{grid-template-columns:1fr}}.signals-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.08)}.signals-section h3{margin-bottom:var(--spacing-md);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);color:var(--text-primary);line-height:var(--text-h3-line-height)}.signals-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.signals-list li{padding:var(--spacing-sm);background:#3b82f614;border-radius:var(--radius-sm);border-left:3px solid var(--accent-blue);font-size:var(--text-data-size);border:1px solid rgba(59,130,246,.15);color:var(--text-primary);line-height:var(--text-data-line-height)}.execution-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.execution-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.05)}.execution-label{color:var(--text-secondary);font-weight:600;font-size:.875rem}.execution-value{font-weight:600;color:var(--text-primary);font-size:.875rem;font-family:var(--font-mono)}.page-actions{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.performance-charts{display:flex;flex-direction:column;gap:var(--spacing-xl)}.performance-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.performance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}@media(max-width:1400px){.performance-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.performance-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.performance-grid{grid-template-columns:1fr}}.trade-filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:#0003;border-radius:var(--radius-md);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:150px}.filter-group label{font-size:var(--text-label-size);color:var(--text-secondary);font-weight:var(--text-label-weight);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking)}.trades-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.trades-table th.sortable:hover{background:#ffffff05}.filter-summary{margin-top:var(--spacing-md);padding:var(--spacing-sm);text-align:center;font-size:var(--text-data-size);color:var(--text-secondary)}.trades-table td:last-child,.trades-table th:last-child{text-align:right}.backtest-runner{margin-bottom:var(--spacing-xl)}.backtest-runner-form{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-top:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em}.form-input{padding:var(--spacing-sm) var(--spacing-md);background:#0003;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;font-family:var(--font-mono);transition:all .2s}.form-input:focus{outline:none;border-color:var(--accent-blue);background:#0000004d}.form-input:disabled{opacity:.5;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-md)}.backtest-progress{margin-top:var(--spacing-md);padding:var(--spacing-md);background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-md)}.progress-indicator{display:flex;align-items:center;gap:var(--spacing-md);color:var(--accent-blue);font-size:.875rem}.spinner{width:20px;height:20px;border:2px solid rgba(59,130,246,.3);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-banner,.success-banner{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);display:flex;justify-content:space-between;align-items:center}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:var(--danger)}.success-banner{background:#10b9811a;border:1px solid rgba(16,185,129,.2);color:var(--success)}.error-banner button,.success-banner button{background:transparent;border:none;color:inherit;font-size:1.25rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.error-banner button:hover,.success-banner button:hover{opacity:.7}.backtest-results{display:flex;flex-direction:column;gap:var(--spacing-xl);margin-top:var(--spacing-lg)}.results-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-md)}.chart-container{margin-top:var(--spacing-md);padding:var(--spacing-lg);background:#00000026;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.04)}.config-details{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.config-row{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;border-bottom:1px solid rgba(255,255,255,.04)}.config-label{color:var(--text-secondary);font-weight:600;font-size:.875rem}.config-value{color:var(--text-primary);font-family:var(--font-mono);font-size:.875rem}.trades-table{margin-top:var(--spacing-md)}.backtests-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.backtest-runs-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.backtest-run-card{padding:var(--spacing-md);background:#0003;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;position:relative}.backtest-run-card:hover{background:var(--bg-element);border-color:#ffffff1a}.backtest-run-card.selected{background:#3b82f61a;border-color:var(--accent-blue)}.backtest-run-card.comparison-selected{border-left:3px solid var(--success)}.backtest-run-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.08)}.backtest-run-id{font-weight:600;color:var(--text-primary);font-family:var(--font-mono)}.backtest-run-dates{font-size:.875rem;color:var(--text-secondary)}.backtest-run-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.backtest-run-metrics .metric{display:flex;flex-direction:column;gap:var(--spacing-xs)}.backtest-run-metrics .metric-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.backtest-run-metrics .metric-value{font-size:1rem;font-weight:600;font-family:var(--font-mono)}.backtest-run-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid rgba(255,255,255,.08);justify-content:flex-end}.comparison-badge{padding:var(--spacing-xs) var(--spacing-sm);background:#3b82f626;border:1px solid var(--accent-blue);border-radius:var(--radius-sm);font-size:var(--text-label-size);color:var(--accent-blue);font-weight:var(--text-label-weight)}.comparison-table{overflow-x:auto;margin-top:var(--spacing-md)}.comparison-table table{width:100%;border-collapse:collapse}.comparison-table th{padding:var(--spacing-md);text-align:left;font-size:var(--text-label-size);text-transform:uppercase;letter-spacing:var(--text-label-tracking);color:var(--text-secondary);font-weight:var(--text-label-weight);border-bottom:1px solid rgba(255,255,255,.08)}.comparison-table td{padding:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.05);font-size:var(--text-data-size);color:var(--text-primary)}.comparison-table td.mono{font-family:var(--font-mono)}.comparison-table tbody tr:hover{background:transparent}.backtest-details{margin-top:var(--spacing-lg)}.backtest-details-json{background:#0000004d;padding:var(--spacing-lg);border-radius:var(--radius-md);overflow-x:auto;font-size:.75rem;font-family:var(--font-mono);color:var(--text-primary);line-height:1.6}@media(max-width:768px){.backtest-run-metrics{grid-template-columns:1fr}}.recommendations-page{padding:var(--spacing-lg);max-width:1400px;margin:0 auto}.page-header h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);color:var(--text-primary)}.filters{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.recommendations-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.recommendation-card-detailed{padding:var(--spacing-xl)}.rec-header-detailed{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.rec-ticker-large{font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);color:var(--text-primary)}.rec-confidence-large{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);font-family:var(--font-mono);line-height:var(--text-value-medium-line-height);color:var(--text-primary)}.rec-prices-detailed{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.price-row{display:flex;justify-content:space-between;align-items:center}.price-label-detailed{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.price-value-detailed{font-weight:600;font-family:var(--font-mono)}.rec-reasoning-detailed{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-element);border-radius:var(--radius-md);color:var(--text-secondary);line-height:1.6}.rec-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.position-card{margin-bottom:1.5rem}.position-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.position-ticker-section{display:flex;align-items:center;gap:.75rem}.position-ticker{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.position-status{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-open{background-color:var(--success);color:var(--text-primary)}.status-closed{background-color:var(--status-neutral);color:var(--text-primary)}.position-pnl{text-align:right}.pnl-profit .pnl-value,.pnl-profit .pnl-pct{color:#10b981}.pnl-loss .pnl-value,.pnl-loss .pnl-pct{color:#ef4444}.pnl-value{font-size:1.25rem;font-weight:600}.pnl-pct{font-size:.875rem;margin-top:.25rem}.position-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:.75rem}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-label{color:#9ca3af;font-size:.875rem}.detail-value{font-weight:600;color:var(--text-primary)}.position-notes{margin-top:.75rem;padding:.75rem;background-color:#1f2937;border-radius:4px;font-size:.85rem;color:#d1d5db;line-height:1.5}@media(max-width:768px){.rec-prices-detailed{grid-template-columns:1fr}.rec-actions{flex-direction:column}.position-details{grid-template-columns:1fr}}.portfolio-page{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.portfolio-content{margin-top:var(--spacing-xl)}.portfolio-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.portfolio-summary-grid .card h3{color:var(--text-secondary);font-size:var(--text-label-size);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height);margin-bottom:var(--spacing-md)}.metric-value{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);line-height:var(--text-value-large-line-height);color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.portfolio-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl)}@media(max-width:768px){.portfolio-summary-grid{grid-template-columns:1fr}.portfolio-actions{flex-direction:column}}.orders-page{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.orders-content{margin-top:var(--spacing-xl)}@media(max-width:768px){.orders-page{padding:var(--spacing-md)}}.strategies-page{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.strategies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-xl)}.strategy-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}.strategy-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.strategy-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.strategy-header h3{margin:0;color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.strategy-description{color:var(--text-secondary);margin-bottom:var(--spacing-lg);flex-grow:1}.strategy-performance{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.performance-metric{display:flex;flex-direction:column;gap:var(--spacing-xs)}.metric-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height)}.metric-value{font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);color:var(--text-primary);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.strategy-footer{margin-top:auto;padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.strategy-link{color:var(--color-primary);font-weight:500}@media(max-width:768px){.strategies-grid,.strategy-performance{grid-template-columns:1fr}}.validation-page{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.validation-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--accent-blue);opacity:.2}.validation-header h1{color:var(--text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);margin-bottom:var(--spacing-sm)}.subtitle{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.instructions-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.instructions-panel h2{color:var(--accent-blue);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);margin-top:0;margin-bottom:var(--spacing-md)}.instructions-content h3{color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-top:var(--spacing-md);margin-bottom:var(--spacing-sm)}.instructions-content{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.instructions-content li{color:var(--text-primary)}.instructions-content ol,.instructions-content ul{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md)}.instructions-content li{margin-bottom:var(--spacing-sm);line-height:var(--text-data-line-height)}.close-instructions{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#3b82f61a;border:1px solid var(--accent-blue);color:var(--accent-blue);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);transition:all .2s}.close-instructions:hover{background:#3b82f633;border-color:var(--accent-blue)}.validation-controls{display:flex;gap:var(--spacing-md);align-items:flex-end;margin-bottom:var(--spacing-xl);flex-wrap:wrap;padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.control-group{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:200px}.control-group label{font-weight:var(--text-label-weight);color:var(--text-primary);font-size:var(--text-label-size);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);line-height:var(--text-label-line-height)}.required{color:var(--danger)}.control-group input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-element);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);color:var(--text-primary)}.control-group input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #3b82f633}.control-group small{color:var(--text-secondary);font-size:var(--text-label-size);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height)}.validate-button{padding:var(--spacing-sm) var(--spacing-lg);background:#3b82f61a;border:1px solid var(--accent-blue);color:var(--accent-blue);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);height:fit-content;transition:all .2s}.validate-button:hover:not(:disabled){background:#3b82f633;border-color:var(--accent-blue)}.validate-button:disabled{background:var(--bg-element);border-color:var(--border-color);color:var(--text-secondary);cursor:not-allowed}.show-instructions-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-element);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);height:fit-content;transition:all .2s}.show-instructions-button:hover{background:var(--bg-element-hover);border-color:var(--border-color)}.error-message{padding:var(--spacing-md);background:#ef444426;color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);margin-bottom:var(--spacing-md)}.validation-report{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xl)}.report-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--accent-blue);opacity:.2}.report-header h2{color:var(--text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);margin-bottom:var(--spacing-md)}.report-meta{display:flex;gap:var(--spacing-xl);flex-wrap:wrap;color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.summary-card{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-md);text-align:center;border:1px solid var(--border-color)}.card-label{font-size:var(--text-label-size);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height);margin-bottom:var(--spacing-sm)}.card-value{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);line-height:var(--text-value-large-line-height);color:var(--accent-blue);margin-bottom:var(--spacing-xs)}.card-subtext{font-size:var(--text-label-size);color:var(--text-secondary);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height)}.results-table-section{margin-bottom:var(--spacing-2xl)}.results-table-section h3{color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-bottom:var(--spacing-md)}.results-table{width:100%;border-collapse:collapse;background:var(--bg-surface);border-radius:var(--radius-md);overflow:hidden}.results-table th{background:var(--bg-element);padding:var(--spacing-md);text-align:left;font-weight:var(--text-label-weight);font-size:var(--text-label-size);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);line-height:var(--text-label-line-height);color:var(--text-primary);border-bottom:2px solid var(--accent-blue);opacity:.2}.results-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.results-table tr:hover{background:transparent}.positive{color:var(--success);font-weight:var(--text-data-weight)}.negative{color:var(--danger);font-weight:var(--text-data-weight)}.correct{color:var(--success);font-weight:var(--text-value-medium-weight);font-size:var(--text-value-medium-size);line-height:var(--text-value-medium-line-height)}.incorrect{color:var(--danger);font-weight:var(--text-value-medium-weight);font-size:var(--text-value-medium-size);line-height:var(--text-value-medium-line-height)}.confidence-high{color:var(--success);font-weight:var(--text-data-weight)}.confidence-medium{color:var(--warning);font-weight:var(--text-data-weight)}.confidence-low{color:var(--danger);font-weight:var(--text-data-weight)}.charts-section{margin-bottom:var(--spacing-xl)}.charts-section h3{color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-bottom:var(--spacing-md)}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg)}.chart-container{background:var(--bg-surface);padding:var(--spacing-lg);border-radius:var(--radius-md);border:1px solid var(--border-color)}.chart-container h4{color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-top:0;margin-bottom:var(--spacing-md)}.chart-container img{width:100%;height:auto;border-radius:4px}.report-links{padding:var(--spacing-lg);background:#3b82f61a;border-radius:var(--radius-md);border:1px solid var(--accent-blue)}.report-links h3{color:var(--accent-blue);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-top:0}.report-links p{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.report-links code{background:var(--bg-element);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-data-size);color:var(--accent-blue)}.loading-message{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.loading-message p{margin:0;color:var(--accent-blue);font-size:var(--text-data-size)}.info-message{padding:var(--spacing-xl);text-align:center;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-top:var(--spacing-xl)}.info-message p{margin:0;color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.performance-page{max-width:var(--max-content-width);margin:0 auto;padding:var(--spacing-xl)}.performance-page h1{margin-bottom:var(--spacing-xl);color:var(--text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height)}.error-message{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);color:var(--danger);font-size:var(--text-data-size)}.info-message{background-color:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-md);color:var(--accent-blue);font-size:var(--text-data-size)}.performance-sections{display:flex;flex-direction:column;gap:var(--spacing-xl)}.performance-section{background:var(--bg-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-subtle)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.section-header h2{margin:0;color:var(--text-primary);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height)}.controls{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.controls label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-data-size);color:var(--text-secondary);font-weight:500}.controls input[type=number]{width:80px;padding:var(--spacing-xs);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-data-size)}.controls button{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--accent-blue);color:var(--text-primary);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);transition:background-color .2s}.controls button:hover:not(:disabled){background-color:#2563eb}.controls button:disabled{background-color:var(--status-neutral);cursor:not-allowed;opacity:.5}.validate-btn{background-color:var(--success)!important}.validate-btn:hover:not(:disabled){background-color:#059669!important}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.performance-page .metric-card-perf{background:var(--bg-surface);border-radius:var(--radius-md);padding:1rem;text-align:center;border:1px solid var(--border-subtle)}.metric-value{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);color:var(--text-primary);line-height:var(--text-value-medium-line-height)}.metric-value.positive{color:var(--success)}.metric-value.negative{color:var(--danger)}.metric-subtext{font-size:var(--text-label-size);color:var(--text-secondary);margin-top:var(--spacing-xs);line-height:var(--text-label-line-height)}.benchmark-comparison{margin-top:2rem;padding-top:2rem;border-top:1px solid #eee}.benchmark-comparison h3{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.chart-container{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.chart-container h3{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.portfolio-tickers{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.portfolio-tickers h3{margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.ticker-list{display:flex;flex-wrap:wrap;gap:.5rem}.ticker-badge{background-color:var(--accent-blue);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight)}@media(max-width:768px){.performance-page{padding:var(--spacing-md)}.section-header{flex-direction:column;align-items:flex-start}.controls{width:100%;flex-direction:column;align-items:stretch}.controls label,.controls button{width:100%}.metrics-grid{grid-template-columns:1fr}}.strategy-testing-page{padding:var(--spacing-xl);max-width:var(--max-content-width);margin:0 auto}.tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);border-bottom:2px solid var(--border-subtle);padding-bottom:var(--spacing-xs)}.tab{padding:var(--spacing-sm) var(--spacing-lg);border:none;background:transparent;font-size:var(--text-data-size);font-weight:500;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md) var(--radius-md) 0 0;transition:all .2s}.tab:hover{background:#ffffff05;color:var(--text-primary)}.tab.active{background:var(--accent-blue);color:var(--text-primary)}.page-header{margin-bottom:var(--spacing-xl)}.page-header h1{font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);margin-bottom:var(--spacing-xs);color:var(--text-primary)}.page-header p{color:var(--text-secondary);font-size:var(--text-data-size)}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--danger);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-data-size)}.error-banner button{background:none;border:none;font-size:var(--text-value-medium-size);cursor:pointer;color:var(--danger)}.strategy-testing-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.config-panel{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.config-panel h2{margin-bottom:var(--spacing-md);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);color:var(--text-primary)}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.config-item{display:flex;flex-direction:column}.config-item label{font-weight:500;margin-bottom:var(--spacing-xs);color:var(--text-secondary);font-size:var(--text-data-size)}.config-item input{padding:var(--spacing-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:var(--text-data-size);background:var(--bg-surface);color:var(--text-primary)}.config-item input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3b82f61a}.strategy-testing .btn-action{background:var(--accent-blue);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);cursor:pointer;transition:background .2s}.strategy-testing .btn-action:hover:not(:disabled){background:#2563eb}.strategy-testing .btn-action:disabled{background:var(--status-neutral);cursor:not-allowed;opacity:.5}.progress-panel{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.progress-bar-container{width:100%;height:1.5rem;background:#0000004d;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-xs)}.progress-bar{height:100%;background:var(--accent-blue);transition:width .3s ease}.progress-message{color:var(--text-secondary);font-size:var(--text-data-size)}.results-panel{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.results-panel h2{margin-bottom:var(--spacing-lg);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);color:var(--text-primary)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.strategy-testing .metric-card-st{background:var(--bg-surface);border-radius:var(--radius-md);padding:1.5rem;border:1px solid var(--border-subtle)}.strategy-testing .metric-card-st.positive{border-color:var(--success);background:#10b98114}.strategy-testing .metric-card-st.negative{border-color:var(--danger);background:#ef444414}.metric-label{font-size:var(--text-label-size);color:var(--text-secondary);margin-bottom:var(--spacing-xs);font-weight:var(--text-label-weight);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);line-height:var(--text-label-line-height)}.metric-value{font-size:var(--text-value-large-size);font-weight:var(--text-value-large-weight);margin-bottom:var(--spacing-xs);color:var(--text-primary);line-height:var(--text-value-large-line-height)}.metric-sub{font-size:var(--text-data-size);color:var(--text-secondary);line-height:var(--text-data-line-height)}.exit-analysis{margin-bottom:var(--spacing-xl)}.exit-analysis h3{margin-bottom:var(--spacing-md);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);color:var(--text-primary)}.trades-table{margin-top:var(--spacing-xl)}.trades-table h3{margin-bottom:var(--spacing-md);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);color:var(--text-primary)}.table-container{overflow-x:auto}table{width:100%;border-collapse:collapse}thead{background:var(--bg-element)}th{padding:var(--spacing-sm);text-align:left;font-weight:var(--text-label-weight);color:var(--text-secondary);font-size:var(--text-label-size);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);border-bottom:2px solid var(--border-subtle);line-height:var(--text-label-line-height)}td{padding:var(--spacing-sm);border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--text-data-size);font-weight:500;line-height:var(--text-data-line-height)}tr.win{background:#10b9810d}tr.loss{background:#ef44440d}td.positive{color:var(--success);font-weight:600}td.negative{color:var(--danger);font-weight:600}.test-history{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.test-history h2{margin-bottom:var(--spacing-md);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height);color:var(--text-primary)}.history-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.history-item{padding:var(--spacing-md);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;background:var(--bg-element);color:var(--text-primary)}.history-item:hover{border-color:var(--accent-blue);background:var(--bg-element)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--text-data-size);font-weight:500}.status-badge.completed{background:#10b98126;color:var(--success)}.status-badge.running{background:#3b82f626;color:var(--accent-blue)}.status-badge.failed{background:#ef444426;color:var(--danger)}.history-metrics{display:flex;gap:var(--spacing-lg);color:var(--text-secondary);font-size:var(--text-data-size)}.history-config{display:flex;gap:var(--spacing-md);font-size:var(--text-data-size);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.config-actions{display:flex;align-items:center;gap:2rem}.risk-info{display:flex;gap:1.5rem;color:#6b7280;font-size:.875rem}.optimization-info{color:#6b7280;margin-bottom:1.5rem}.config-item.wide{grid-column:span 2}.optimization-results{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.best-result{background:#f0fdf4;border:2px solid #10b981;border-radius:.5rem;padding:1.5rem;margin:1.5rem 0}.best-result h4{margin-bottom:1rem;color:#065f46}.best-params{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.param{display:flex;flex-direction:column}.param-label{font-size:.875rem;color:#6b7280}.param-value{font-size:var(--text-value-medium-size);font-weight:var(--text-value-medium-weight);color:var(--text-primary);line-height:var(--text-value-medium-line-height)}.param-value.highlight{color:var(--success);font-size:var(--text-value-large-size);line-height:var(--text-value-large-line-height)}.strategy-testing .btn-action{background:var(--accent-blue);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);cursor:pointer}.strategy-testing .btn-action:hover{background:#2563eb}.top-results{margin-top:var(--spacing-lg)}.top-results h4{margin-bottom:var(--spacing-md);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);color:var(--text-primary)}tr.profitable{background:#10b9810d}.results-history-panel{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.no-results{color:var(--text-secondary);text-align:center;font-size:var(--text-data-size);padding:2rem}.toast{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);animation:slideIn .3s ease-out;box-shadow:var(--shadow-lg);min-width:300px;max-width:500px}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{background:#10b98126;border:1px solid var(--success);color:var(--success)}.toast-error{background:#ef444426;border:1px solid var(--danger);color:var(--danger)}.toast-warning{background:#f59e0b26;border:1px solid var(--warning);color:var(--warning)}.toast-info{background:#3b82f626;border:1px solid var(--accent-blue);color:var(--accent-blue)}.toast-message{flex:1;margin-right:var(--spacing-sm)}.toast-close{background:none;border:none;color:inherit;font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s;flex-shrink:0}.toast-close:hover{opacity:1}.toast-close:focus{outline:2px solid currentColor;outline-offset:2px;border-radius:var(--radius-sm)}.toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:1000;display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:500px}@media(max-width:768px){.toast-container{top:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);max-width:none}.toast-container .toast{min-width:auto;max-width:none}}.broker-selector{background:var(--surface, #1e2d45);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .4));border:1px solid rgba(255,255,255,.1);color:var(--text-primary, #ffffff)}.broker-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.header-actions{display:flex;gap:.5rem;align-items:center}.broker-selector-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #ffffff)}.btn-refresh,.btn-register{background:var(--primary-color, #007bff);color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500}.btn-refresh:hover,.btn-register:hover{background:var(--primary-hover, #0056b3)}.btn-register{background:#28a745}.btn-register:hover{background:#218838}.broker-accounts-list{display:flex;flex-direction:column;gap:1rem}.broker-account-card{border:2px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem;background:var(--bg-element);transition:all .2s;color:var(--text-primary, #ffffff)}.broker-account-card:hover{box-shadow:0 4px 8px #0000001a}.broker-account-card.active{border-color:var(--primary, #00f5d4);background:#00f5d41a}.broker-account-card.connected{border-left:4px solid #28a745}.broker-account-card.disconnected{border-left:4px solid #dc3545;opacity:.7}.account-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.account-info{flex:1}.account-id{font-weight:600;font-size:1rem;margin-bottom:.25rem;color:var(--text-primary, #ffffff)}.account-broker{font-size:.875rem;color:var(--text-secondary, #8892a0);text-transform:capitalize;display:flex;align-items:center;gap:8px}.account-type-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.75em;font-weight:500}.account-type-badge.paper{background-color:#fff3cd;color:#856404}.account-type-badge.margin,.account-type-badge.live{background-color:#d1ecf1;color:#0c5460}.account-status{display:flex;gap:.5rem;flex-wrap:wrap}.status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge.connected{background:#d4edda;color:#155724}.status-badge.disconnected{background:#f8d7da;color:#721c24}.status-badge.active{background:#cce5ff;color:#004085}.account-summary{display:flex;gap:1.5rem;margin:.75rem 0;padding:.75rem;background:var(--bg-element);border-radius:4px;border:1px solid rgba(255,255,255,.1)}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.75rem;color:var(--text-secondary, #8892a0);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1rem;font-weight:600;font-family:Courier New,monospace;color:var(--text-primary, #ffffff)}.summary-value.positive{color:var(--success, #00e676)}.summary-value.negative{color:var(--danger, #ff5252)}.account-actions{display:flex;gap:.5rem;margin-top:.75rem}.btn-connect,.btn-disconnect,.btn-set-active,.btn-delete{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.btn-connect{background:var(--success, #00e676);color:#000;font-weight:600}.btn-connect:hover{background:#00d469;transform:translateY(-1px);box-shadow:0 2px 4px #00e6764d}.btn-disconnect{background:var(--warning, #ffd54f);color:#000;font-weight:600}.btn-disconnect:hover{background:#ffcc02;transform:translateY(-1px);box-shadow:0 2px 4px #ffd54f4d}.btn-set-active{background:var(--primary, #00f5d4);color:#000;font-weight:600}.btn-set-active:hover{background:#00d4b8;transform:translateY(-1px);box-shadow:0 2px 4px #00f5d44d}.btn-sync{background:#00f5d433;color:var(--primary, #00f5d4);border:1px solid var(--primary, #00f5d4);font-weight:600}.btn-sync:hover:not(:disabled){background:#00f5d44d;transform:translateY(-1px)}.btn-sync:disabled{opacity:.6;cursor:not-allowed}.btn-details{background:var(--bg-element);color:var(--text-primary, #ffffff);border:1px solid rgba(255,255,255,.2);font-weight:600}.btn-details:hover{background:var(--bg-element)}.btn-delete{background:var(--danger, #ff5252);color:#fff;padding:.5rem;font-size:1rem;font-weight:600}.btn-delete:hover{background:#ff3838;transform:translateY(-1px);box-shadow:0 2px 4px #ff52524d}.broker-selector-note{margin-top:1rem;padding:.75rem;background:#ffd54f26;border-left:4px solid var(--warning, #ffd54f);border-radius:4px}.broker-selector-note small{color:var(--warning, #ffd54f);line-height:1.5}.broker-selector-loading,.broker-selector-error,.broker-selector-empty{padding:1rem;text-align:center;color:var(--text-secondary, #8892a0)}.broker-selector-error{color:var(--danger, #ff5252)}.account-details{margin-top:1rem;padding:1rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.account-details h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--text-primary, #ffffff);text-transform:uppercase;letter-spacing:.5px}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;color:var(--text-secondary, #8892a0);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:.875rem;font-weight:600;font-family:Courier New,monospace;color:var(--text-primary, #ffffff)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000}.modal-content{background:#fff!important;border-radius:8px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000080;color:#333!important;position:relative}.modal-content *,.modal-content p,.modal-content div,.modal-content span,.modal-content h3,.modal-content h1,.modal-content h2,.modal-content h4,.modal-content h5,.modal-content h6{color:#333!important}.modal-content.modal-small{max-width:400px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#333!important}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px}.modal-close:hover{background:#f0f0f0}.modal-body{padding:1.5rem;background:#fff!important;color:#333!important}.modal-content .form-group{margin-bottom:1.25rem}.modal-content .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333!important;font-size:.875rem}.modal-content .form-group input,.modal-content .form-group select{width:100%;padding:.75rem;border:2px solid #cccccc;border-radius:4px;font-size:.875rem;box-sizing:border-box;background-color:#fff!important;color:#333!important;font-family:inherit;-webkit-text-fill-color:#333333!important;-webkit-appearance:none;appearance:none}.modal-content .form-group input[type=text],.modal-content .form-group input[type=password],.modal-content .form-group input[type=email]{color:#333!important;-webkit-text-fill-color:#333333!important}.modal-content .form-group input::placeholder{color:#999!important;opacity:1}.modal-content .form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem;color:#333!important;background-color:#fff!important}.modal-content .form-group input[type=password]{font-family:monospace;letter-spacing:.1em}.modal-content .form-group input:focus,.modal-content .form-group select:focus{outline:none;border-color:#007bff!important;box-shadow:0 0 0 3px #007bff33!important;background-color:#fff!important;color:#333!important;-webkit-text-fill-color:#333333!important}.modal-content .form-group small{display:block;margin-top:.25rem;color:#666!important;font-size:.75rem;line-height:1.4}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e0e0e0}.modal-content .btn-primary,.modal-content .btn-secondary,.modal-content .btn-danger{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s}.modal-content .btn-primary{background:#007bff;color:#fff}.modal-content .btn-primary:hover:not(:disabled){background:#0056b3}.modal-content .btn-primary:disabled{opacity:.6;cursor:not-allowed}.modal-content .btn-secondary{background:#6c757d;color:#fff!important}.modal-content .btn-secondary:hover{background:#5a6268}.modal-content .btn-danger{background:#dc3545;color:#fff!important}.modal-content .btn-danger:hover{background:#c82333}.warning-text{color:#dc3545;font-weight:500;margin-top:.5rem}.configuration{padding:var(--spacing-xl);max-width:1400px;margin:0 auto}.configuration h1{color:var(--text-primary);font-size:var(--text-h1-size);font-weight:var(--text-h1-weight);line-height:var(--text-h1-line-height);margin-bottom:var(--spacing-sm)}.page-subtitle{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);margin-bottom:var(--spacing-xl)}@media(min-width:1200px){.configuration{padding:var(--spacing-xl) var(--spacing-2xl)}}@media(max-width:768px){.configuration{padding:var(--spacing-md)}}.config-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.config-section h2{margin-top:0;color:var(--accent-blue);font-size:var(--text-h2-size);font-weight:var(--text-h2-weight);line-height:var(--text-h2-line-height)}.section-description{color:var(--text-secondary);margin-bottom:var(--spacing-lg);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.config-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-weight:var(--text-label-weight);color:var(--text-primary);font-size:var(--text-label-size);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking);line-height:var(--text-label-line-height);display:flex;align-items:center;gap:var(--spacing-sm)}.form-group input[type=number],.form-group input[type=time],.form-group input[type=text],.form-group select{background:var(--bg-element);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm);color:var(--text-primary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);max-width:300px;width:100%;margin-left:var(--spacing-sm)}@media(max-width:768px){.form-group input[type=number],.form-group input[type=time],.form-group input[type=text],.form-group select{margin-left:0;max-width:100%}}.form-group select{cursor:pointer}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-blue)}.toggle-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.toggle-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.control-description{color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);margin:0}.form-group small{color:var(--text-secondary);font-size:var(--text-label-size);font-weight:var(--text-label-weight);line-height:var(--text-label-line-height);margin-left:var(--spacing-sm)}.save-config-button{background:var(--accent-blue);color:var(--text-primary);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);margin-top:var(--spacing-md);width:fit-content;transition:all .2s}.save-config-button:hover:not(:disabled){background:var(--accent-blue-hover)}.save-config-button:disabled{opacity:.5;cursor:not-allowed}.scheduler-controls{display:flex;flex-direction:column;gap:var(--spacing-md)}.scheduler-status{color:var(--text-secondary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height)}.status-running{color:var(--success);font-weight:var(--text-h3-weight)}.status-stopped{color:var(--danger);font-weight:var(--text-h3-weight)}.scheduler-actions{display:flex;gap:var(--spacing-sm)}.scheduler-button{background:var(--accent-blue);color:var(--text-primary);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);transition:all .2s}.scheduler-button:hover:not(:disabled){background:var(--accent-blue-hover)}.scheduler-button:disabled{opacity:.5;cursor:not-allowed}.scheduler-jobs{margin-top:var(--spacing-md);color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.scheduler-jobs ul{margin:var(--spacing-sm) 0 0 var(--spacing-lg);padding:0}.configuration-loading{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.error-message{background:#ef444426;border:1px solid var(--danger);color:var(--danger);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height);display:flex;align-items:center;justify-content:space-between}.success-message{background:#10b98126;border:1px solid var(--success);color:var(--success);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);font-size:var(--text-data-size);font-weight:var(--text-data-weight);line-height:var(--text-data-line-height)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.status-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.status-label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking)}.status-value{font-size:var(--text-data-size);font-weight:var(--text-data-weight);color:var(--text-primary)}.card h3{color:var(--text-primary);font-size:var(--text-h3-size);font-weight:var(--text-h3-weight);line-height:var(--text-h3-line-height);margin-top:0;margin-bottom:var(--spacing-md)}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.config-tab-content{width:100%}.config-item{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.config-label{font-size:var(--text-label-size);font-weight:var(--text-label-weight);color:var(--text-secondary);text-transform:var(--text-label-transform);letter-spacing:var(--text-label-tracking)}.config-value{font-size:var(--text-data-size);font-weight:var(--text-data-weight);color:var(--text-primary)}.active-job-banner{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:#10b9811a;border:1px solid var(--success);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);color:var(--success);font-size:var(--text-data-size)}@media(max-width:768px){.preset-grid,.status-grid{grid-template-columns:1fr}.config-section{padding:var(--spacing-md)}.scheduler-actions{flex-direction:column}.scheduler-actions .btn{width:100%}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--radius-sm)}.tab{min-width:120px;white-space:nowrap}.config-item{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}#root{width:100%;max-width:100%;min-height:100vh;display:flex;flex-direction:column;margin:0;padding:0}.app{display:flex;flex-direction:column;width:100%;max-width:100%;min-height:100vh;margin:0;padding:0}.app-nav{background:#0f172af2;border-bottom:1px solid rgba(148,163,184,.2);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:100%;box-sizing:border-box}.nav-brand h1{margin:0;font-size:1.5rem;color:#5eead4}.nav-links{display:flex;gap:2rem;flex-wrap:wrap}@media(max-width:768px){.app-nav{flex-direction:column;gap:1rem;padding:1rem}.nav-links{gap:1rem;justify-content:center}}.nav-links a{color:#94a3b8;text-decoration:none;font-weight:500;transition:color .2s}.nav-links a:hover{color:#5eead4}.nav-links a.active{color:#5eead4;border-bottom:2px solid #5eead4}.nav-links a.v2-link{background:linear-gradient(90deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.nav-links a.v2-link:hover{filter:brightness(1.2)}.nav-divider{color:#94a3b84d;font-weight:300}.app-main{flex:1;overflow-y:auto;width:100%;max-width:100%;box-sizing:border-box}
