.emergency-stop-container{display:flex;align-items:center;gap:1rem}.system-status{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.875rem;background-color:#ffffff1a}.status-indicator{width:10px;height:10px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-green .status-indicator{background-color:#16a34a;box-shadow:0 0 8px #16a34a99}.status-red .status-indicator{background-color:#dc2626;box-shadow:0 0 8px #dc262699}.status-yellow .status-indicator{background-color:#eab308;box-shadow:0 0 8px #eab30899}.status-gray .status-indicator{background-color:#6b7280;box-shadow:0 0 8px #6b728099}.status-label{text-transform:uppercase;letter-spacing:.05em}.status-green .status-label{color:#16a34a}.status-red .status-label{color:#dc2626}.status-yellow .status-label{color:#eab308}.status-gray .status-label{color:#9ca3af}.emergency-stop-button{background-color:#dc2626;color:#fff;font-weight:600;padding:.75rem 1.5rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s}.emergency-stop-button:hover:not(:disabled){background-color:#b91c1c}.emergency-stop-button:disabled{opacity:.5;cursor:not-allowed}.resume-button{background-color:#16a34a;color:#fff;font-weight:600;padding:.75rem 1.5rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s}.resume-button:hover:not(:disabled){background-color:#15803d}.resume-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background-color:#1a1a1a;padding:2rem;border-radius:8px;max-width:500px;width:90%;box-shadow:0 4px 6px #0000004d}.modal h2{margin-top:0;margin-bottom:1rem;color:#dc2626}.modal p{margin-bottom:1rem;line-height:1.6}.modal .warning-text{color:#f59e0b;font-weight:500;margin-bottom:1.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.modal-actions button{padding:.5rem 1rem}@media (prefers-color-scheme: light){.modal{background-color:#fff;box-shadow:0 4px 6px #0000001a}}.modal-action-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.action-option{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-radius:6px;background-color:#ffffff0d}.action-description{font-size:.875rem;color:#9ca3af;margin:0;line-height:1.4}.stop-trading-button{background-color:#d97706;color:#fff;font-weight:600;padding:.75rem 1.5rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s;width:100%}.stop-trading-button:hover:not(:disabled){background-color:#b45309}.stop-trading-button:disabled{opacity:.5;cursor:not-allowed}.stop-close-all-button{background-color:#dc2626;color:#fff;font-weight:600;padding:.875rem 1.5rem;border:2px solid #ef4444;border-radius:6px;cursor:pointer;transition:background-color .2s,box-shadow .2s;width:100%;box-shadow:0 0 12px #dc262666}.stop-close-all-button:hover:not(:disabled){background-color:#b91c1c;box-shadow:0 0 16px #dc262699}.stop-close-all-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@media (prefers-color-scheme: light){.action-option{background-color:#0000000d}.action-description{color:#6b7280}}@media (max-width: 768px){.emergency-stop-container{gap:.4rem}.system-status{padding:.25rem .5rem;font-size:.7rem;gap:.3rem}.status-indicator{width:7px;height:7px}.emergency-stop-button,.resume-button{padding:.4rem .75rem;font-size:.7rem;border-radius:4px}}.trading-state-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;border:none;font-weight:600;font-size:.875rem;cursor:pointer;transition:background-color .2s,color .2s}.trading-state-btn:disabled{opacity:.6;cursor:not-allowed}.trading-state-running{background-color:#16a34a33;color:#16a34a;border:1px solid rgba(22,163,74,.4)}.trading-state-running:hover:not(:disabled){background-color:#16a34a4d}.trading-state-stopped{background-color:#dc262633;color:#dc2626;border:1px solid rgba(220,38,38,.4)}.trading-state-stopped:hover:not(:disabled){background-color:#dc26264d}.trading-state-dot{width:8px;height:8px;border-radius:50%}.dot-running{background-color:#16a34a;box-shadow:0 0 6px #16a34a99;animation:pulse-dot 2s ease-in-out infinite}.dot-stopped{background-color:#dc2626;box-shadow:0 0 6px #dc262699}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.trading-state-unavailable{background-color:#6b728033;color:#9ca3af;border:1px solid rgba(107,114,128,.4)}.dot-unavailable{background-color:#6b7280;box-shadow:0 0 6px #6b728066}@media (max-width: 768px){.trading-state-btn{padding:.25rem .5rem;font-size:.65rem;gap:.3rem;border-radius:4px}.trading-state-dot{width:6px;height:6px}}.market-status-indicator{display:flex;gap:1.5rem;align-items:center}.market-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.market-icon{font-size:1.2rem}.market-label{font-size:.875rem;color:#a0a0a0;font-weight:500}.market-status{font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.market-status.open{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.market-status.closed{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.market-status.loading{background:#9ca3af33;color:#9ca3af;border:1px solid rgba(156,163,175,.3)}.position-count{font-size:.75rem;font-weight:600;padding:.2rem .5rem;border-radius:8px;background:#ffffff14;color:#a0a0a0;letter-spacing:.3px}.position-count.at-limit{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}@media (max-width: 768px){.market-status-indicator{flex-direction:row;gap:.4rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.market-item{flex:0 0 auto;padding:.3rem .5rem;gap:.3rem;min-width:0}.market-icon{font-size:.9rem}.market-label{display:none}.market-status{font-size:.6rem;padding:.15rem .4rem}.position-count{font-size:.6rem;padding:.1rem .35rem}}.mode-toggle-container{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:6px;background-color:#2a2a2a;border:1px solid #333;transition:border-color .2s,box-shadow .2s}.mode-toggle-container.mode-live{border-color:#f97316;box-shadow:0 0 8px #f973164d}.mode-label{font-size:.8rem;font-weight:500;color:#666;-webkit-user-select:none;user-select:none;transition:color .2s}.mode-label-active{color:#fff}.mode-toggle-switch{position:relative;width:40px;height:22px;background-color:#4a4a4a;border:none;border-radius:11px;cursor:pointer;padding:0;transition:background-color .2s}.mode-toggle-switch:hover{background-color:#555}.mode-toggle-switch.mode-toggle-live{background-color:#f97316}.mode-toggle-switch.mode-toggle-live:hover{background-color:#ea580c}.mode-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;background-color:#fff;border-radius:50%;transition:transform .2s}.mode-toggle-live .mode-toggle-thumb{transform:translate(18px)}.mode-live-badge{font-size:.65rem;font-weight:700;color:#fff;background-color:#dc2626;padding:.125rem .375rem;border-radius:3px;letter-spacing:.05em;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}@media (prefers-color-scheme: light){.mode-toggle-container{background-color:#e8e8e8;border-color:#d0d0d0}.mode-toggle-container.mode-live{border-color:#f97316}.mode-label{color:#999}.mode-label-active{color:#000}.mode-toggle-switch{background-color:#ccc}.mode-toggle-switch:hover{background-color:#bbb}}@media (max-width: 768px){.mode-toggle-container{padding:.2rem .4rem;gap:.3rem}.mode-label{font-size:.65rem}.mode-toggle-switch{width:32px;height:18px}.mode-toggle-thumb{width:12px;height:12px}.mode-toggle-live .mode-toggle-thumb{transform:translate(14px)}}.kill-switch-banner{position:fixed;top:0;left:0;right:0;z-index:9999;background-color:#dc2626;color:#fff;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.9rem;box-shadow:0 2px 8px #dc262680}.kill-switch-banner-info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.kill-switch-banner-title{font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.05em}.kill-switch-banner-details{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.85rem;opacity:.95}.kill-switch-banner-error{margin-top:.25rem;padding:.25rem .5rem;background-color:#0003;border-radius:4px;font-size:.8rem}.kill-switch-banner-actions{display:flex;align-items:center;flex-shrink:0}.kill-switch-resume-button{background-color:#fff;color:#dc2626;font-weight:600;padding:.5rem 1.25rem;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s,opacity .2s;white-space:nowrap}.kill-switch-resume-button:hover:not(:disabled){background-color:#fee2e2}.kill-switch-resume-button:disabled{opacity:.6;cursor:not-allowed}.kill-switch-success-toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);z-index:10000;background-color:#16a34a;color:#fff;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;box-shadow:0 4px 12px #0000004d;animation:kill-switch-toast-fade 3s ease-in-out forwards}@keyframes kill-switch-toast-fade{0%{opacity:0;transform:translate(-50%) translateY(-10px)}10%{opacity:1;transform:translate(-50%) translateY(0)}80%{opacity:1}to{opacity:0}}.push-toggle{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:.35rem .5rem;font-size:1rem;cursor:pointer;line-height:1;transition:background .2s}.push-toggle:hover:not(:disabled){background:#ffffff26}.push-toggle:disabled{opacity:.5;cursor:not-allowed}.push-toggle.push-on{border-color:#22c55e66}@media (max-width: 768px){.push-toggle{padding:.2rem .35rem;font-size:.85rem}}.world-clock-bar{display:flex;justify-content:space-between;background:#1a1a2e;border:1px solid #2a2a4a;border-radius:8px;padding:8px 16px;margin-bottom:16px}.world-clock-item{text-align:center;flex:1}.clock-label{font-size:.7rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.clock-time{font-size:1rem;font-weight:600;color:#e0e0e0;font-variant-numeric:tabular-nums}.clock-date{font-size:.65rem;color:#666}@media (max-width: 768px){.world-clock-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding:6px 10px}.world-clock-item{min-width:80px;flex:0 0 auto}.clock-time{font-size:.85rem}}.layout{display:flex;flex-direction:column;min-height:100vh}.layout-kill-switch-active{padding-top:4.5rem}.header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#1a1a1a;border-bottom:1px solid #333}.header-left{display:flex;align-items:center;gap:2rem;flex:1}.header-center{display:flex;justify-content:center;flex:1}.header-right{display:flex;justify-content:flex-end;align-items:center;gap:1rem;flex:1}.header-live{border-bottom-color:#f97316;box-shadow:0 1px 6px #f9731640}.header h1,.header-title{font-size:1.5rem;font-weight:600;margin:0}.connection-status{display:flex;align-items:center;gap:.5rem;font-size:.875rem;padding:.25rem .75rem;border-radius:4px;background-color:#2a2a2a}.status-dot{width:8px;height:8px;border-radius:50%;background-color:#666}.connection-status.connected .status-dot{background-color:#4ade80}.connection-status.disconnected .status-dot{background-color:#ef4444}.ping-indicator{font-size:.75rem;font-weight:600;margin-left:4px;font-variant-numeric:tabular-nums}.ping-good{color:#4ade80}.ping-ok{color:#facc15}.ping-bad{color:#ef4444}.nav{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 2rem;background-color:#1a1a1a;border-bottom:1px solid #333}.nav a{padding:.75rem 1rem;text-decoration:none;color:#999;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;font-size:.9rem}.nav a:hover{color:#fff;background-color:#2a2a2a}.nav a.active{color:#fff;border-bottom-color:#646cff}.main-content{flex:1;padding:2rem;overflow-y:auto}@media (prefers-color-scheme: light){.header{background-color:#f5f5f5;border-bottom-color:#e0e0e0}.connection-status{background-color:#e8e8e8}.nav{background-color:#f5f5f5;border-bottom-color:#e0e0e0}.nav a{color:#666}.nav a:hover{color:#000;background-color:#e8e8e8}.nav a.active{color:#000}}.mobile-menu-toggle{display:none;background:none;border:none;color:#ccc;font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1}.mobile-trading-state{display:none}.desktop-trading-state{display:block}.header{padding-left:max(2rem,env(safe-area-inset-left));padding-right:max(2rem,env(safe-area-inset-right))}.main-content{padding-bottom:max(2rem,env(safe-area-inset-bottom))}@media (max-width: 768px){.mobile-menu-toggle,.mobile-trading-state{display:block}.desktop-trading-state{display:none}.header{display:flex;flex-wrap:wrap;padding:.4rem .75rem;padding-top:max(.4rem,env(safe-area-inset-top));gap:.3rem}.header-title{flex-basis:100%;text-align:center;font-size:.7rem;margin:0 0 .1rem;opacity:.7}.header-left{display:flex;align-items:center;gap:.3rem;flex:1;min-width:0;overflow:hidden}.header-center{flex-basis:100%;order:3;overflow-x:auto;-webkit-overflow-scrolling:touch}.header-right{display:flex;align-items:center;gap:.3rem;flex:0 0 auto}.connection-status{display:none!important}.nav{display:none;flex-direction:column;padding:0}.nav.nav-open{display:flex}.nav a{padding:.75rem 1.5rem;border-bottom:none;border-left:3px solid transparent}.nav a.active{border-bottom:none;border-left-color:#646cff;background-color:#2a2a2a}.main-content{padding:.5rem}}@media (max-width: 480px){.header-title{font-size:.6rem}}.pdt-widget{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;overflow:hidden}.pdt-widget-header{background:#2a2a2a;padding:12px 16px;border-bottom:1px solid #3a3a3a;display:flex;align-items:center;justify-content:space-between}.pdt-widget-header h4{margin:0;color:#e0e0e0;font-size:.95rem;font-weight:600}.pdt-widget-body{padding:16px}.pdt-unrestricted{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#16a34a26;border:1px solid rgba(22,163,74,.3);border-radius:4px;color:#16a34a;font-size:.85rem;font-weight:600}.pdt-unrestricted-dot{width:8px;height:8px;border-radius:50%;background-color:#16a34a}.pdt-counter{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:600;color:#e0e0e0;margin-bottom:12px}.pdt-counter-indicator{width:10px;height:10px;border-radius:50%;background-color:#16a34a;box-shadow:0 0 6px #16a34a80}.pdt-warning-yellow .pdt-counter-indicator{background-color:#eab308;box-shadow:0 0 8px #eab30899}.pdt-warning-yellow .pdt-counter{color:#eab308}.pdt-warning-red .pdt-counter-indicator{background-color:#dc2626;box-shadow:0 0 8px #dc262699;animation:pulse-red 2s ease-in-out infinite}.pdt-warning-red .pdt-counter{color:#dc2626}.pdt-limit-reached{color:#dc2626;font-size:.85rem;font-weight:600;margin-bottom:12px;padding:6px 10px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:4px}@keyframes pulse-red{0%,to{opacity:1}50%{opacity:.5}}.pdt-trade-list{list-style:none;margin:0;padding:0}.pdt-trade-list-header{color:#888;font-size:.8rem;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.pdt-trade-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #2a2a2a;font-size:.85rem}.pdt-trade-item:last-child{border-bottom:none}.pdt-trade-symbol{color:#e0e0e0;font-weight:600}.pdt-trade-dates{display:flex;gap:12px;color:#888;font-size:.8rem}.pdt-trade-date-label{color:#666}.pdt-no-trades{color:#666;font-size:.85rem;font-style:italic}.pdt-loading{color:#888;font-size:.85rem;padding:8px 0}.pdt-error{color:#ef5350;font-size:.85rem;padding:8px 0}.dashboard{padding:20px}.dashboard h2{margin:0 0 20px;color:#333;font-size:24px}.dashboard h3{margin:0 0 15px;color:#555;font-size:18px}.loading,.error{padding:40px;text-align:center;font-size:16px}.error{color:#d32f2f;background-color:#ffebee;border-radius:4px}.portfolio-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:30px}.summary-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.summary-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-value{font-size:24px;font-weight:600;color:#333}.summary-value.positive{color:#2e7d32}.summary-value.negative{color:#d32f2f}.summary-value.warning{color:#f57c00}.asset-breakdowns{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:30px}.asset-breakdown{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:14px 16px;box-shadow:0 2px 4px #0000000d}.asset-breakdown.stock{border-left:3px solid #1976d2}.asset-breakdown.forex{border-left:3px solid #7b1fa2}.asset-breakdown.crypto{border-left:3px solid #f57c00}.breakdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.breakdown-label{font-size:13px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px}.breakdown-count{font-size:12px;color:#999}.breakdown-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.breakdown-card{text-align:left}.breakdown-card-label{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.breakdown-card-value{font-size:16px;font-weight:600;color:#333}.breakdown-card-value.positive{color:#2e7d32}.breakdown-card-value.negative{color:#d32f2f}.positions-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000000d}.no-positions{padding:40px;text-align:center;color:#999;font-size:14px}.positions-table-container{overflow-x:auto}.positions-table{width:100%;border-collapse:collapse;font-size:14px}.positions-table thead{background-color:#f5f5f5}.positions-table th{padding:12px 8px;text-align:left;font-weight:600;color:#555;border-bottom:2px solid #e0e0e0;white-space:nowrap}.positions-table td{padding:12px 8px;border-bottom:1px solid #f0f0f0;color:#333}.positions-table tbody tr:hover{background-color:#fafafa}.positions-table .symbol{font-weight:600;color:#1976d2}.positions-table .asset-type{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.positions-table .asset-type.stock{background-color:#e3f2fd;color:#1976d2}.positions-table .asset-type.forex{background-color:#f3e5f5;color:#7b1fa2}.positions-table .asset-type.crypto{background-color:#fff3e0;color:#f57c00}.positions-table .positive{color:#2e7d32;font-weight:600}.positions-table .negative{color:#d32f2f;font-weight:600}.positions-table .warning{color:#f57c00;font-weight:600}.positions-table .success{color:#2e7d32;font-weight:600}.positions-table .strategy{font-size:12px;color:#666}.positions-table .warning-icon,.positions-table .success-icon{margin-left:4px;font-size:12px}.positions-table tr.closing{opacity:.55;pointer-events:none}.positions-table tr.closing .close-position-button{pointer-events:auto}.positions-table tr.approaching-stop-loss{background-color:#fff3e0}.positions-table tr.approaching-stop-loss:hover{background-color:#ffe0b2}.positions-table tr.approaching-take-profit{background-color:#e8f5e9}.positions-table tr.approaching-take-profit:hover{background-color:#c8e6c9}.pending-order-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;letter-spacing:.3px;background-color:#fff3e0;color:#e65100}@media (max-width: 1200px){.portfolio-summary{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.dashboard{padding:8px}.dashboard h2{font-size:18px;margin-bottom:10px}.dashboard h3{font-size:14px;margin-bottom:8px}.dashboard-header{margin-bottom:10px}.portfolio-summary{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px}.summary-card{padding:8px 10px}.summary-label{font-size:9px;margin-bottom:3px;letter-spacing:.3px}.summary-value{font-size:14px}.asset-breakdowns{grid-template-columns:1fr;gap:8px;margin-bottom:12px}.breakdown-cards{grid-template-columns:repeat(3,1fr);gap:6px}.breakdown-card-label{font-size:8px}.breakdown-card-value{font-size:12px}.breakdown-label{font-size:11px}.breakdown-count{font-size:10px}.positions-table{font-size:11px}.positions-table th,.positions-table td{padding:6px 4px}.bias-grid{grid-template-columns:1fr;gap:8px}.bias-engine-panel,.crypto-strategy-performance{padding:10px;margin-bottom:12px}.crypto-strategy-grid{grid-template-columns:1fr;gap:8px}.positions-section{padding:10px}.paper-trading-badge{font-size:10px;padding:2px 8px}}@media (max-width: 480px){.portfolio-summary{grid-template-columns:repeat(2,1fr);gap:4px}.summary-card{padding:6px 8px}.summary-label{font-size:8px}.summary-value{font-size:13px}.breakdown-cards{grid-template-columns:repeat(2,1fr)}}.close-position-button{padding:4px 10px;font-size:12px;font-weight:500;color:#d32f2f;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:4px;cursor:pointer;white-space:nowrap}.close-position-button:hover{background-color:#ffcdd2;border-color:#e57373}.close-position-button:disabled{opacity:.5;cursor:not-allowed}.crypto-strategy-performance{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.crypto-strategy-performance h3{margin:0 0 15px;color:#555;font-size:18px}.crypto-strategy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.crypto-strategy-card{background:#fffaf5;border:1px solid #ffe0b2;border-left:3px solid #f57c00;border-radius:6px;padding:14px 16px}.crypto-strategy-name{font-size:13px;font-weight:600;color:#e65100;margin-bottom:10px}.crypto-strategy-metrics{display:flex;flex-direction:column;gap:8px}.crypto-metric{display:flex;justify-content:space-between;align-items:center}.crypto-metric-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.3px}.crypto-metric-value{font-size:15px;font-weight:600;color:#333}.crypto-metric-value.positive{color:#2e7d32}.crypto-metric-value.negative{color:#d32f2f}@media (max-width: 768px){.crypto-strategy-grid{grid-template-columns:1fr}}.dashboard-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.dashboard-header h2{margin:0}.paper-trading-badge{display:inline-block;padding:4px 12px;background-color:#fff3e0;color:#e65100;border:1px solid #ffb74d;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.market-open{color:#10b981;font-weight:600}.staleness-dot{display:inline-block;width:10px;height:10px;border-radius:50%}.staleness-action{font-size:12px;font-weight:500;white-space:nowrap}.staleness-action-extend{color:#f57c00}.staleness-action-exit_now{color:#d32f2f}.staleness-action-tighten_stop{color:#7b1fa2}.staleness-action-move_to_breakeven{color:#1976d2}.staleness-action-no_action{color:#999}.bias-engine-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.bias-engine-panel h3{margin:0 0 15px;color:#555;font-size:18px}.bias-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.bias-card{border:1px solid #e0e0e0;border-radius:6px;padding:14px 16px;background:#fafafa}.bias-card-stock{border-left:3px solid #1976d2}.bias-card-crypto{border-left:3px solid #f57c00}.bias-card-forex{border-left:3px solid #7b1fa2}.bias-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.bias-state{font-size:14px;font-weight:700;letter-spacing:.3px}.bias-card-body{display:flex;flex-direction:column;gap:8px}.bias-row{display:flex;justify-content:space-between;align-items:center}.bias-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.3px}.bias-value{font-size:13px;font-weight:600;color:#333}.bias-transition{font-size:11px;font-weight:500;color:#666;text-transform:capitalize}.bias-weights{display:flex;gap:16px;margin-top:4px;padding-top:8px;border-top:1px solid #eee}.bias-weight{display:flex;flex-direction:column;align-items:center;flex:1}.bias-weight-label{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.bias-weight-value{font-size:18px;font-weight:700;color:#333}.bias-weight-value.positive{color:#2e7d32}.bias-weight-value.negative{color:#d32f2f}.bias-confidences{display:flex;justify-content:space-around;margin-top:4px;padding-top:6px;border-top:1px solid #eee}.bias-confidences span{font-size:11px;color:#999;font-weight:500}@media (max-width: 768px){.bias-grid{grid-template-columns:1fr}}.bias-card-waiting{opacity:.6}.bias-state-waiting{font-size:11px;font-weight:600;color:#999;letter-spacing:.5px}.bias-waiting-message{font-size:12px;color:#999;text-align:center;padding:16px 0;font-style:italic}.strategy-list{display:flex;flex-direction:column;gap:1rem}.strategy-list-empty{text-align:center;padding:3rem;color:#666;background:#f5f5f5;border-radius:8px}.strategy-list-empty p{margin:.5rem 0}.strategy-card{background:#fff;border:1px solid #ddd;border-radius:8px;padding:1.5rem;transition:all .2s}.strategy-card:hover{box-shadow:0 2px 8px #0000001a}.strategy-card.disabled{opacity:.6;background:#f9f9f9}.strategy-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.strategy-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.strategy-title h3{margin:0;font-size:1.25rem;color:#333}.asset-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.asset-badge.stock{background:#e3f2fd;color:#1976d2}.asset-badge.forex{background:#f3e5f5;color:#7b1fa2}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.status-badge.enabled{background:#e8f5e9;color:#2e7d32}.status-badge.disabled{background:#ffebee;color:#c62828}.strategy-actions{display:flex;gap:.5rem}.strategy-actions button{padding:.5rem .75rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:1rem;transition:all .2s}.strategy-actions button:hover{background:#f5f5f5;transform:translateY(-1px)}.toggle-btn.enabled{color:#2e7d32;border-color:#2e7d32}.toggle-btn.disabled{color:#666}.edit-btn:hover{background:#e3f2fd;border-color:#1976d2}.delete-btn:hover{background:#ffebee;border-color:#c62828}.strategy-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem}.detail-row{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.875rem;color:#666;font-weight:500}.detail-value{font-size:1rem;color:#333;font-weight:600}.last-signal{display:flex;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid #eee;font-size:.875rem}.signal-label{color:#666;font-weight:500}.signal-type{padding:.25rem .75rem;border-radius:12px;font-weight:600;text-transform:uppercase;font-size:.75rem}.signal-type.buy{background:#e8f5e9;color:#2e7d32}.signal-type.sell{background:#ffebee;color:#c62828}.signal-time{color:#999;font-size:.8rem}.strategy-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.strategy-form-container{background:#fff;border-radius:8px;width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0003}.strategy-form-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:1}.strategy-form-header h2{margin:0;font-size:1.5rem;color:#333}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.25rem .5rem;line-height:1;transition:color .2s}.close-btn:hover{color:#333}.strategy-form{padding:1.5rem}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.125rem;color:#333;padding-bottom:.5rem;border-bottom:2px solid #e3f2fd}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#555;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;transition:border-color .2s;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.form-group input.error,.form-group textarea.error{border-color:#c62828}.form-group input.error:focus,.form-group textarea.error:focus{box-shadow:0 0 0 3px #c628281a}.error-message{display:block;color:#c62828;font-size:.75rem;margin-top:.25rem}.help-text{display:block;color:#999;font-size:.75rem;margin-top:.25rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.checkbox-group span{font-weight:400}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid #eee;position:sticky;bottom:0;background:#fff;margin:0 -1.5rem -1.5rem;padding:1.5rem}.form-actions button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#f5f5f5;color:#666}.cancel-btn:hover{background:#e0e0e0}.submit-btn{background:#1976d2;color:#fff}.submit-btn:hover:not(:disabled){background:#1565c0;transform:translateY(-1px);box-shadow:0 2px 8px #1976d24d}.submit-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.backend-error-message{background:#ffebee;border:1px solid #ef5350;border-radius:4px;padding:1rem;margin-bottom:1.5rem;color:#c62828;font-size:.875rem}.backend-error-message strong{display:block;margin-bottom:.25rem}@media (max-width: 768px){.strategy-form-container{max-width:100%;max-height:100vh;border-radius:0}.form-row{grid-template-columns:1fr}}.strategies-page{padding:2rem;max-width:1400px;margin:0 auto}.strategies-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem}.strategies-header h2{margin:0 0 .5rem;font-size:2rem;color:#333}.subtitle{margin:0;color:#666;font-size:.875rem}.create-btn{padding:.75rem 1.5rem;background:#1976d2;color:#fff;border:none;border-radius:4px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.create-btn:hover{background:#1565c0;transform:translateY(-1px);box-shadow:0 2px 8px #1976d24d}.loading{text-align:center;padding:3rem;color:#666;font-size:1.125rem}.error-message{text-align:center;padding:3rem;background:#ffebee;border-radius:8px;color:#c62828}.error-message p{margin:0 0 1rem;font-weight:500}.error-message button{padding:.5rem 1rem;background:#c62828;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:600}.error-message button:hover{background:#b71c1c}@media (max-width: 768px){.strategies-page{padding:1rem}.strategies-header{flex-direction:column;align-items:stretch}.strategies-header h2{font-size:1.5rem}.create-btn{width:100%}}.trading-chart{background:#1a1a1a;border-radius:8px;padding:16px;margin-bottom:20px}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.chart-header h3{margin:0;color:#fff;font-size:18px;font-weight:600}.chart-legend{display:flex;gap:16px}.legend-item{display:flex;align-items:center;font-size:12px;color:#d1d4dc}.legend-item:before{content:"";display:inline-block;width:20px;height:2px;margin-right:6px}.legend-item.sma-short:before{background:#2196f3}.legend-item.sma-long:before{background:#ff9800}.legend-item.bollinger:before{background:#9c27b0;border-top:1px dashed #9C27B0}.chart-container{position:relative;width:100%;height:500px}.signal-tooltip{position:fixed;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;padding:0;z-index:1000;box-shadow:0 4px 12px #00000080;min-width:200px;pointer-events:none}.tooltip-header{padding:8px 12px;font-weight:600;font-size:13px;border-bottom:1px solid #3a3a3a;border-radius:6px 6px 0 0}.tooltip-header.buy{background:#26a69a;color:#fff}.tooltip-header.sell{background:#ef5350;color:#fff}.tooltip-content{padding:10px 12px}.tooltip-row{display:flex;justify-content:space-between;margin-bottom:6px;font-size:12px;color:#d1d4dc}.tooltip-row span:first-child{color:#888;margin-right:12px}.tooltip-row span:last-child{font-weight:500;color:#fff}.tooltip-reason{margin-top:8px;padding-top:8px;border-top:1px solid #3a3a3a;font-size:11px;color:#aaa;line-height:1.4}.rsi-panel{background:#1a1a1a;border-radius:8px;padding:16px;margin-top:12px}.rsi-panel h4{margin:0 0 12px;color:#fff;font-size:14px;font-weight:600}.rsi-container{position:relative;width:100%;height:120px}.chart-loading{display:flex;align-items:center;justify-content:center;height:500px;color:#888;font-size:14px}.chart-error{display:flex;align-items:center;justify-content:center;height:500px;color:#ef5350;font-size:14px}@media (max-width: 768px){.chart-header{flex-direction:column;align-items:flex-start;gap:8px}.chart-legend{flex-wrap:wrap;gap:8px}.chart-container{height:400px}}.charts-page{padding:20px;max-width:1600px;margin:0 auto}.charts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.charts-header h2{margin:0;color:#fff;font-size:24px;font-weight:600}.connection-status{display:flex;align-items:center;gap:8px;font-size:14px;color:#d1d4dc}.status-indicator{width:10px;height:10px;border-radius:50%;animation:pulse 2s infinite}.status-indicator.connected{background:#26a69a}.status-indicator.disconnected{background:#ef5350;animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.charts-grid{display:grid;grid-template-columns:1fr;gap:20px}.chart-slot{background:#1a1a1a;border-radius:8px;overflow:hidden}.chart-slot-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#222;border-bottom:1px solid #2a2a2a}.chart-slot-label{color:#888;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.chart-slot-selectors{display:flex;gap:8px}.chart-select{padding:6px 10px;background:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;color:#d1d4dc;font-size:13px;cursor:pointer;min-width:120px}.chart-select:hover{border-color:#4a4a4a}.chart-select:focus{outline:none;border-color:#2196f3}.chart-section{display:flex;flex-direction:column}.chart-placeholder{padding:60px 40px;text-align:center}.chart-placeholder h3{margin:0 0 8px;color:#fff;font-size:18px}.chart-placeholder p{margin:0;color:#666;font-size:14px}.charts-loading,.charts-error{display:flex;align-items:center;justify-content:center;min-height:400px;color:#888;font-size:16px}.charts-error{color:#ef5350}@media (max-width: 768px){.chart-slot-header{flex-direction:column;gap:8px;align-items:flex-start}.chart-slot-selectors{width:100%}.chart-select{flex:1}}.equity-curve-chart{width:100%}.equity-curve-chart .chart-container{width:100%;height:300px}.equity-curve-chart .no-data{display:flex;align-items:center;justify-content:center;height:300px;color:#888;font-size:.9rem}.drawdown-chart{width:100%}.drawdown-chart .chart-container{width:100%;height:300px}.drawdown-chart .no-data{display:flex;align-items:center;justify-content:center;height:300px;color:#888;font-size:.9rem}.performance-metrics-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;overflow:hidden}.card-header{background:#2a2a2a;padding:15px 20px;border-bottom:1px solid #3a3a3a}.card-header h4{margin:0;color:#e0e0e0;font-size:1rem;font-weight:600}.card-body{padding:20px}.metric-group{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #2a2a2a}.metric-group:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.metric-row.highlight{padding:12px 0}.metric-label{color:#888;font-size:.9rem}.metric-value{color:#e0e0e0;font-size:1rem;font-weight:500}.metric-row.highlight .metric-value{font-size:1.3rem;font-weight:600}.metric-value.positive{color:#26a69a}.metric-value.negative{color:#ef5350}.trades-list{width:100%}.no-trades{text-align:center;padding:40px;color:#888;font-size:.9rem}.trades-table{display:flex;flex-direction:column;gap:15px}.trade-row{background:#2a2a2a;border:1px solid #3a3a3a;border-radius:6px;padding:15px;transition:background .2s}.trade-row:hover{background:#2f2f2f}.trade-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #3a3a3a}.trade-symbol{display:flex;align-items:center;gap:10px}.symbol{font-size:1.1rem;font-weight:600;color:#e0e0e0}.asset-type{font-size:.75rem;padding:2px 8px;background:#3a3a3a;color:#888;border-radius:3px}.trade-pnl{text-align:right}.pnl-amount{font-size:1.1rem;font-weight:600}.trade-pnl.best .pnl-amount{color:#26a69a}.trade-pnl.worst .pnl-amount{color:#ef5350}.pnl-percent{font-size:.85rem;color:#888}.trade-details{display:flex;flex-direction:column;gap:6px}.detail-row{display:flex;justify-content:space-between;font-size:.85rem}.detail-label{color:#888}.detail-value{color:#e0e0e0;text-align:right}@media (max-width: 768px){.trade-header{flex-direction:column;align-items:flex-start;gap:10px}.trade-pnl{text-align:left}}.performance-page{padding:20px;max-width:1400px;margin:0 auto}.performance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.performance-header h2{margin:0;color:#e0e0e0}.period-selector{display:flex;gap:10px}.period-selector button{padding:8px 16px;background:#2a2a2a;color:#e0e0e0;border:1px solid #3a3a3a;border-radius:4px;cursor:pointer;transition:all .2s}.period-selector button:hover{background:#3a3a3a}.period-selector button.active{background:#2196f3;border-color:#2196f3;color:#fff}.metrics-section{margin-bottom:40px}.metrics-section h3{color:#e0e0e0;margin-bottom:20px;font-size:1.2rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.charts-section{margin-bottom:40px}.chart-container{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:20px;margin-bottom:20px}.chart-container h3{color:#e0e0e0;margin:0 0 20px;font-size:1.1rem}.trades-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px}.trades-container{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:20px}.trades-container h3{color:#e0e0e0;margin:0 0 20px;font-size:1.1rem}.loading,.error,.no-data{text-align:center;padding:40px;color:#888;font-size:1.1rem}.error{color:#ef5350}@media (max-width: 768px){.performance-header{flex-direction:column;align-items:flex-start;gap:15px}.metrics-grid,.trades-section{grid-template-columns:1fr}}.trade-history{padding:20px;max-width:1400px;margin:0 auto}.trade-history h2{margin:0 0 20px;color:#e0e0e0;font-size:24px}.trade-filters{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:20px;margin-bottom:20px}.trade-filters .filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px}.trade-filters .filter-group{display:flex;flex-direction:column}.trade-filters .filter-group label{font-size:12px;font-weight:600;color:#999;margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.trade-filters .filter-group input,.trade-filters .filter-group select{padding:8px 12px;border:1px solid #3a3a3a;border-radius:4px;font-size:14px;color:#e0e0e0;background-color:#2a2a2a}.trade-filters .filter-group input:focus,.trade-filters .filter-group select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px #646cff33}.trade-filters .filter-group input::placeholder{color:#666}.trade-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:20px}.trade-summary .summary-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:16px 20px}.trade-summary .summary-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.trade-summary .summary-value{font-size:22px;font-weight:600;color:#e0e0e0}.trade-summary .summary-value.positive{color:#4ade80}.trade-summary .summary-value.negative{color:#ef4444}.error-banner{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#3b1111;border:1px solid #ef4444;border-radius:8px;margin-bottom:20px;color:#fca5a5;font-size:14px}.error-banner button{padding:6px 16px;background:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px;font-weight:600}.error-banner button:hover{background:#dc2626}.trade-history .loading,.trade-history .empty-state{text-align:center;padding:40px;color:#888;font-size:15px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px}.trades-table-container{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:20px}.trades-table{width:100%;border-collapse:collapse;font-size:14px}.trades-table thead{background-color:#222}.trades-table th{padding:12px 8px;text-align:left;font-weight:600;color:#999;border-bottom:2px solid #333;white-space:nowrap;-webkit-user-select:none;user-select:none}.trades-table td{padding:12px 8px;text-align:left;border-bottom:1px solid #2a2a2a;color:#ccc;white-space:nowrap}.trades-table th.sortable{cursor:pointer}.trades-table th.sortable:hover{color:#e0e0e0}.sort-indicator{color:#555}.sort-indicator.active{color:#646cff}.trades-table tbody tr:hover{background-color:#222}.trades-table .symbol{font-weight:600;color:#60a5fa}.trades-table .strategy,.trades-table .close-date{color:#888}.asset-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.asset-badge.stock{background-color:#60a5fa26;color:#60a5fa}.asset-badge.forex{background-color:#c084fc26;color:#c084fc}.pnl-positive{color:#4ade80!important;font-weight:600}.pnl-negative{color:#ef4444!important;font-weight:600}.pnl-neutral{color:#888!important}.trade-history .pagination{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#1a1a1a;border:1px solid #2a2a2a;border-top:none;border-radius:0 0 8px 8px;flex-wrap:wrap;gap:12px}.pagination-buttons{display:flex;align-items:center;gap:8px}.pagination-buttons button{padding:6px 14px;background:#2a2a2a;color:#e0e0e0;border:1px solid #3a3a3a;border-radius:4px;font-size:13px;cursor:pointer;transition:background .2s}.pagination-buttons button:hover:not(:disabled){background:#3a3a3a}.pagination-buttons button:disabled{opacity:.4;cursor:not-allowed}.pagination-info{color:#999;font-size:13px;font-weight:600;padding:0 8px}.pagination-meta{display:flex;align-items:center;gap:8px;color:#999;font-size:13px}.pagination-meta label{font-weight:600}.pagination-meta select{padding:4px 8px;background:#2a2a2a;color:#e0e0e0;border:1px solid #3a3a3a;border-radius:4px;font-size:13px}.total-records{color:#666;margin-left:8px}@media (max-width: 768px){.trade-filters .filters-grid,.trade-summary{grid-template-columns:repeat(2,1fr)}.trade-history .pagination{flex-direction:column;align-items:stretch}.pagination-buttons,.pagination-meta{justify-content:center}}@media (max-width: 480px){.trade-filters .filters-grid,.trade-summary{grid-template-columns:1fr}}.filter-actions{display:flex;justify-content:flex-end;margin-top:10px}.export-button{padding:8px 18px;background:#2a6b3a;color:#fff;border:1px solid #3a8b4a;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;transition:background .2s}.export-button:hover{background:#3a8b4a}.export-button:disabled{opacity:.6;cursor:not-allowed;background:#2a6b3a}.audit-logs{padding:20px}.audit-logs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.audit-logs-header h2{margin:0;color:#333;font-size:24px}.export-button{padding:10px 20px;background-color:#1976d2;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.export-button:hover:not(:disabled){background-color:#1565c0}.export-button:disabled{background-color:#ccc;cursor:not-allowed}.filters-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:15px}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:12px;font-weight:600;color:#555;margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.filter-group input,.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;color:#333;background-color:#fff}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 2px #1976d21a}.filter-actions{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #e0e0e0}.clear-filters-button{padding:8px 16px;background-color:#f5f5f5;color:#555;border:1px solid #ddd;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s}.clear-filters-button:hover{background-color:#e0e0e0}.results-count{font-size:14px;color:#666}.loading,.error,.no-logs{padding:40px;text-align:center;font-size:16px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d}.error{color:#d32f2f;background-color:#ffebee}.no-logs{color:#999}.logs-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000000d}.logs-table{width:100%;border-collapse:collapse;font-size:13px}.logs-table thead{background-color:#f5f5f5;position:sticky;top:0;z-index:10}.logs-table th{padding:12px 8px;text-align:left;font-weight:600;color:#555;border-bottom:2px solid #e0e0e0;white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.logs-table td{padding:10px 8px;border-bottom:1px solid #f0f0f0;vertical-align:middle}.logs-table tbody tr:hover{background-color:#fafafa}.logs-table .timestamp{font-family:Courier New,monospace;font-size:12px;color:#666;white-space:nowrap}.logs-table .symbol{font-weight:600;color:#1976d2}.logs-table .strategy{font-size:12px;color:#666}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.entry-type-signal{background-color:#e3f2fd;color:#1976d2}.entry-type-order{background-color:#f3e5f5;color:#7b1fa2}.entry-type-execution{background-color:#e8f5e9;color:#2e7d32}.entry-type-error{background-color:#ffebee;color:#c62828}.entry-type-system_event{background-color:#fff3e0;color:#f57c00}.severity-info{background-color:#e3f2fd;color:#1976d2}.severity-warning{background-color:#fff3e0;color:#f57c00}.severity-error{background-color:#ffebee;color:#c62828}.severity-critical{background-color:#f3e5f5;color:#6a1b9a;font-weight:700}.logs-table tbody tr.severity-warning{background-color:#fffbf0}.logs-table tbody tr.severity-error{background-color:#fff5f5}.logs-table tbody tr.severity-critical{background-color:#faf0fa}.details-toggle{padding:4px 12px;background-color:#f5f5f5;color:#555;border:1px solid #ddd;border-radius:4px;font-size:12px;cursor:pointer;transition:background-color .2s}.details-toggle:hover{background-color:#e0e0e0}.log-details{padding:20px;background-color:#f9f9f9;border-top:1px solid #e0e0e0;margin-top:-1px}.log-details h4{margin:0 0 10px;color:#555;font-size:14px;font-weight:600}.log-details pre{background-color:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:15px;overflow-x:auto;font-family:Courier New,monospace;font-size:12px;line-height:1.5;color:#333;margin:0}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px;background:#fff;border:1px solid #e0e0e0;border-top:none;border-radius:0 0 8px 8px}.pagination-button{padding:8px 16px;background-color:#1976d2;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s}.pagination-button:hover:not(:disabled){background-color:#1565c0}.pagination-button:disabled{background-color:#ccc;cursor:not-allowed}.pagination-info{font-size:14px;color:#666;font-weight:600}@media (max-width: 1200px){.filters-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.audit-logs{padding:15px}.audit-logs-header{flex-direction:column;align-items:flex-start;gap:15px}.filters-grid{grid-template-columns:repeat(2,1fr)}.filter-actions{flex-direction:column;align-items:stretch;gap:10px}.results-count{text-align:center}.logs-table{font-size:11px}.logs-table th,.logs-table td{padding:8px 4px}.logs-table-container{overflow-x:auto}}@media (max-width: 480px){.filters-grid{grid-template-columns:1fr}.pagination{flex-direction:column;gap:10px}.pagination-button{width:100%}}.system-logs{display:flex;flex-direction:column;height:calc(100vh - 140px);gap:.75rem}.system-logs-header{display:flex;justify-content:space-between;align-items:center}.system-logs-header h2{margin:0}.header-controls{display:flex;align-items:center;gap:1rem}.auto-refresh-toggle{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.refresh-btn{padding:.4rem 1rem;border-radius:4px;border:1px solid #444;background:#2a2a2a;color:#ccc;cursor:pointer}.refresh-btn:hover{background:#333}.log-filters{display:flex;gap:.5rem;flex-wrap:wrap}.log-filters select,.log-filters input{padding:.4rem .6rem;border-radius:4px;border:1px solid #444;background:#1e1e1e;color:#ccc;font-size:.8rem}.log-filters input{flex:1;min-width:200px}.log-terminal{flex:1;overflow-y:auto;background:#0d0d0d;border:1px solid #333;border-radius:6px;padding:.75rem;font-family:Fira Code,Cascadia Code,Consolas,monospace;font-size:.75rem;line-height:1.5}.log-line{display:flex;gap:.75rem;white-space:nowrap;padding:1px 0}.log-line:hover{background:#ffffff08}.log-ts{color:#666;min-width:180px}.log-level{min-width:70px;font-weight:600}.log-module{color:#888;min-width:220px;overflow:hidden;text-overflow:ellipsis}.log-msg{color:#ccc;white-space:pre-wrap;word-break:break-all}.log-info .log-level{color:#4fc3f7}.log-warning .log-level,.log-warning .log-msg{color:#ffb74d}.log-error .log-level,.log-error .log-msg{color:#ef5350}.log-debug .log-level{color:#666}.log-debug .log-msg{color:#888}.no-logs,.loading{color:#666;text-align:center;padding:2rem}.settings{padding:20px;max-width:1200px;margin:0 auto}.settings h2{margin-bottom:30px;color:#333}.settings h3{margin-bottom:20px;color:#555;font-size:1.3em}.loading,.error{padding:20px;text-align:center;font-size:1.1em}.error{color:#d32f2f;background-color:#ffebee;border-radius:4px;margin-bottom:20px}.risk-utilization{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:30px}.utilization-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:15px}.utilization-card{background:#fff;padding:15px;border-radius:6px;box-shadow:0 2px 4px #0000001a}.utilization-label{font-weight:600;margin-bottom:10px;color:#555}.utilization-bar{height:20px;background:#e0e0e0;border-radius:10px;overflow:hidden;margin-bottom:8px}.utilization-fill{height:100%;background:#4caf50;transition:width .3s ease,background-color .3s ease}.utilization-fill.warning{background:#ff9800}.utilization-fill.danger{background:#f44336}.utilization-text{font-size:.9em;color:#666}.risk-config-form{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.form-section{margin-bottom:40px;padding-bottom:30px;border-bottom:1px solid #e0e0e0}.form-section:last-of-type{border-bottom:none}.form-row{display:flex;gap:1.5rem}.form-row .form-group{flex:1}.form-group{margin-bottom:25px}.form-group label{display:block;font-weight:600;margin-bottom:8px;color:#333}.help-text{display:block;font-weight:400;font-size:.85em;color:#666;margin-top:4px}.form-group input[type=number]{width:100%;max-width:400px;padding:10px 12px;border:1px solid #ccc;border-radius:4px;font-size:1em;transition:border-color .2s}.form-group input[type=number]:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.form-group input[type=number]:invalid{border-color:#f44336}.validation-message{margin-top:8px;padding:8px 12px;border-radius:4px;font-size:.9em}.validation-message.warning{background:#fff3cd;color:#856404;border-left:4px solid #ff9800}.validation-message.error{background:#ffebee;color:#c62828;border-left:4px solid #f44336}.form-actions{display:flex;gap:15px;margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.btn-primary,.btn-secondary{padding:12px 24px;border:none;border-radius:4px;font-size:1em;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s}.btn-primary{background:#2196f3;color:#fff}.btn-primary:hover:not(:disabled){background:#1976d2}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:#f5f5f5;color:#333;border:1px solid #ccc}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;padding:30px;border-radius:8px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal h3{margin-top:0;margin-bottom:20px;color:#333}.modal p{margin-bottom:20px;color:#666;line-height:1.6}.warnings-list{background:#fff3cd;padding:15px;border-radius:4px;margin-bottom:20px}.warnings-list h4{margin-top:0;margin-bottom:10px;color:#856404}.warning-item{padding:8px 12px;margin-bottom:8px;border-radius:4px;background:#fff}.warning-item.warning{border-left:4px solid #ff9800;color:#856404}.warning-item.error{border-left:4px solid #f44336;color:#c62828}.warning-item:last-child{margin-bottom:0}.confirm-text{font-weight:600;color:#333}.modal-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:25px}@media (max-width: 768px){.settings{padding:15px}.utilization-cards{grid-template-columns:1fr}.form-group input[type=number]{max-width:100%}.form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.modal{width:95%;padding:20px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.market-hours-note{color:#10b981;font-size:.85rem;font-weight:500;margin-bottom:16px;padding:6px 12px;background:#10b98114;border-radius:6px;display:inline-block}.notification-settings{margin-top:40px}.notification-settings h2{margin-bottom:20px}.notification-error{color:#d32f2f;background-color:#ffebee;border-radius:4px;padding:12px 16px;margin-bottom:16px;font-size:.9em}.notification-loading{color:#666;font-size:.95em;padding:12px 0}.notification-group{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:16px;overflow:hidden}.notification-group-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f9f9f9;border-bottom:1px solid #e0e0e0}.notification-group-header:hover{background:#f0f0f0}.notification-group-title{display:flex;align-items:center;gap:10px;font-weight:600;font-size:1.05em;color:#333}.notification-group-title .collapse-icon{font-size:.8em;color:#888;transition:transform .2s}.notification-group-title .collapse-icon.expanded{transform:rotate(90deg)}.notification-group-categories{padding:12px 20px}.notification-group-categories.collapsed{display:none}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0}.toggle-row:last-child{border-bottom:none}.toggle-row.disabled{opacity:.45;pointer-events:none}.toggle-label{font-size:.95em;color:#444}.toggle-switch{position:relative;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;border-radius:24px;transition:background-color .2s}.toggle-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform .2s}.toggle-switch input:checked+.toggle-slider{background-color:#2196f3}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.strategy-tuner{padding:20px}.strategy-tuner h2{margin:0;color:#333;font-size:24px}.strategy-tuner h3{margin:0 0 15px;color:#555;font-size:18px}.tuner-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tuner-header-left{display:flex;align-items:center;gap:12px}.tuner-header-right{display:flex;align-items:center;gap:10px}.mode-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.mode-select{padding:6px 12px;border-radius:4px;border:1px solid #e0e0e0;background:#fff;color:#333;font-size:13px;font-weight:500;cursor:pointer}.mode-select:focus{outline:none;border-color:#1976d2}.mode-badge{display:inline-block;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.mode-badge.analysis_only{background-color:#e3f2fd;color:#1565c0;border:1px solid #90caf9}.mode-badge.recommendation{background-color:#fff3e0;color:#e65100;border:1px solid #ffb74d}.mode-badge.auto_apply{background-color:#fce4ec;color:#c62828;border:1px solid #ef9a9a}.tuner-tabs{display:flex;gap:0;margin-bottom:20px;border-bottom:2px solid #e0e0e0}.tuner-tab{padding:10px 20px;border:none;background:none;color:#666;font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.tuner-tab:hover{color:#333}.tuner-tab.active{color:#1976d2;border-bottom-color:#1976d2;font-weight:600}.tuner-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.tuner-filters select{padding:6px 12px;border-radius:4px;border:1px solid #e0e0e0;background:#fff;color:#333;font-size:13px;cursor:pointer}.tuner-filters select:focus{outline:none;border-color:#1976d2}.proposals-empty{padding:40px;text-align:center;color:#999;font-size:14px;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.strategy-group{margin-bottom:24px}.strategy-group-header{font-size:14px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #e0e0e0}.proposal-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin-bottom:10px;box-shadow:0 2px 4px #0000000d;cursor:pointer;transition:box-shadow .2s}.proposal-card:hover{box-shadow:0 4px 8px #0000001a}.proposal-card.expanded{border-color:#1976d2}.proposal-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.proposal-card-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.proposal-param{font-weight:600;color:#333;font-size:14px}.proposal-change{font-size:13px;color:#666;font-family:Fira Code,Cascadia Code,monospace}.proposal-change .arrow{color:#1976d2;margin:0 4px}.confidence-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.confidence-badge.green{background-color:#e8f5e9;color:#2e7d32}.confidence-badge.yellow{background-color:#fff8e1;color:#f57f17}.confidence-badge.red{background-color:#ffebee;color:#c62828}.freshness-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.freshness-indicator.fresh{background-color:#4caf50}.freshness-indicator.stale{background-color:#ff9800}.freshness-indicator.expired{background-color:#f44336}.proposal-timestamps{font-size:11px;color:#999;white-space:nowrap}.proposal-card-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.status-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-badge.pending{background-color:#fff3e0;color:#e65100}.status-badge.approved{background-color:#e3f2fd;color:#1565c0}.status-badge.applied{background-color:#e8f5e9;color:#2e7d32}.status-badge.rejected{background-color:#ffebee;color:#c62828}.status-badge.rolled_back{background-color:#f3e5f5;color:#7b1fa2}.status-badge.expired{background-color:#f5f5f5;color:#999}.proposal-actions{display:flex;gap:6px}.btn-approve{padding:4px 10px;font-size:12px;font-weight:500;color:#2e7d32;background-color:#e8f5e9;border:1px solid #a5d6a7;border-radius:4px;cursor:pointer;white-space:nowrap}.btn-approve:hover{background-color:#c8e6c9;border-color:#81c784}.btn-approve:disabled{opacity:.5;cursor:not-allowed}.btn-reject{padding:4px 10px;font-size:12px;font-weight:500;color:#d32f2f;background-color:#ffebee;border:1px solid #ef9a9a;border-radius:4px;cursor:pointer;white-space:nowrap}.btn-reject:hover{background-color:#ffcdd2;border-color:#e57373}.btn-reject:disabled{opacity:.5;cursor:not-allowed}.btn-rollback{padding:4px 10px;font-size:12px;font-weight:500;color:#7b1fa2;background-color:#f3e5f5;border:1px solid #ce93d8;border-radius:4px;cursor:pointer;white-space:nowrap}.btn-rollback:hover{background-color:#e1bee7;border-color:#ba68c8}.btn-rollback:disabled{opacity:.5;cursor:not-allowed}.proposal-detail{margin-top:14px;padding-top:14px;border-top:1px solid #f0f0f0}.proposal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.detail-section{margin-bottom:0}.detail-section-label{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px}.detail-section-value{font-size:13px;color:#333;line-height:1.5}.detail-section-value.full-width{grid-column:1 / -1}.metrics-list{display:flex;flex-wrap:wrap;gap:8px}.metric-chip{display:inline-block;padding:2px 8px;background:#f5f5f5;border-radius:4px;font-size:12px;color:#555;font-family:Fira Code,Cascadia Code,monospace}.health-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow-x:auto}.health-table{width:100%;border-collapse:collapse;font-size:13px}.health-table thead{background-color:#f5f5f5}.health-table th{padding:12px 10px;text-align:left;font-weight:600;color:#555;border-bottom:2px solid #e0e0e0;white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.3px}.health-table td{padding:10px;border-bottom:1px solid #f0f0f0;color:#333}.health-table tbody tr{cursor:pointer;transition:background-color .15s}.health-table tbody tr:hover{background-color:#fafafa}.health-table tbody tr.declining-red{background-color:#ffebee}.health-table tbody tr.declining-red:hover{background-color:#ffcdd2}.health-table tbody tr.declining-yellow{background-color:#fff8e1}.health-table tbody tr.declining-yellow:hover{background-color:#fff3c4}.health-table .positive{color:#2e7d32;font-weight:600}.health-table .negative{color:#d32f2f;font-weight:600}.health-table .warning{color:#f57c00;font-weight:600}.health-table .asset-type-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.health-table .asset-type-badge.stock{background-color:#e3f2fd;color:#1976d2}.health-table .asset-type-badge.forex{background-color:#f3e5f5;color:#7b1fa2}.health-table .asset-type-badge.crypto{background-color:#fff3e0;color:#f57c00}.pending-count-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;background-color:#fff3e0;color:#e65100}.pending-count-badge.zero{background-color:#f5f5f5;color:#999}.version-history{padding:12px 16px;background:#fafafa;border-top:1px solid #e0e0e0}.version-history-title{font-size:12px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.3px;margin-bottom:10px}.version-history-empty{font-size:13px;color:#999;padding:8px 0}.version-entry{display:flex;gap:16px;align-items:flex-start;padding:8px 0;border-bottom:1px solid #eee;font-size:12px}.version-entry:last-child{border-bottom:none}.version-meta{color:#888;min-width:140px;flex-shrink:0}.version-diffs{display:flex;flex-wrap:wrap;gap:6px;flex:1}.version-diff-chip{display:inline-block;padding:2px 8px;background:#e3f2fd;border-radius:4px;font-size:11px;color:#1565c0;font-family:Fira Code,Cascadia Code,monospace}.version-perf-delta{font-size:11px;color:#666;min-width:120px;flex-shrink:0;text-align:right}.strategy-tuner .loading{padding:40px;text-align:center;color:#999;font-size:14px}.strategy-tuner .error{padding:20px;text-align:center;color:#d32f2f;background-color:#ffebee;border-radius:4px;margin-bottom:20px}@media (max-width: 768px){.tuner-header{flex-direction:column;align-items:flex-start;gap:10px}.proposal-card-header{flex-direction:column;align-items:flex-start}.proposal-detail-grid{grid-template-columns:1fr}.tuner-filters{flex-direction:column}}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#111}.login-form{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:2rem;width:100%;max-width:340px}.login-title{text-align:center;font-size:1.3rem;margin:0 0 1.5rem;color:#e0e0e0}.login-field{margin-bottom:1rem}.login-field label{display:block;font-size:.85rem;color:#999;margin-bottom:.3rem}.login-field input{width:100%;padding:.6rem .75rem;background:#222;border:1px solid #444;border-radius:4px;color:#e0e0e0;font-size:1rem;box-sizing:border-box}.login-field input:focus{outline:none;border-color:#646cff}.login-error{color:#ef4444;font-size:.85rem;margin-bottom:.75rem;text-align:center}.login-button{width:100%;padding:.65rem;background:#646cff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.login-button:hover:not(:disabled){background:#535bf2}.login-button:disabled{opacity:.6;cursor:not-allowed}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}button{background-color:#f9f9f9}}
