@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";@import "https://fonts.googleapis.com/icon?family=Material+Icons+Outlined";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{pointer-events:none;height:40vmin}@media (prefers-reduced-motion:no-preference){.App-logo{animation:20s linear infinite App-logo-spin}}.App-header{color:#fff;background-color:#282c34;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-size:calc(10px + 2vmin);display:flex}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.screener-page{--surface-0:#fafbfc;--surface-1:#fff;--surface-2:#f3f5f7;--surface-3:#e8ecf0;--border:#e2e6ea;--border-light:#eef1f4;--text-primary:#1a1d23;--text-secondary:#5f6872;--text-tertiary:#8e97a3;--accent:#2563eb;--accent-subtle:#eef3ff;--accent-text:#1e40af;--green:#10b981;--green-subtle:#ecfdf5;--green-text:#047857;--red:#ef4444;--red-subtle:#fef2f2;--red-text:#b91c1c;--orange:#f59e0b;--orange-subtle:#fffbeb;--orange-text:#92400e;--purple:#8b5cf6;--purple-subtle:#f5f3ff;--purple-text:#6d28d9;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--radius-sm:6px;--radius-md:8px;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;background:var(--surface-0);font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;flex:1;min-height:0;font-size:14px;display:flex}.screener-header{padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;display:flex}.screener-header-left{flex-direction:column;gap:2px;display:flex}.screener-title{color:var(--text-primary);font-size:20px;font-weight:700}.screener-subtitle{color:var(--text-tertiary);font-size:13px}.screener-toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-6);border-bottom:1px solid var(--border-light);background:var(--surface-1);flex-wrap:wrap;display:flex}.screener-search{align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);width:260px;height:36px;transition:border-color .15s;display:flex}.screener-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1a}.screener-search svg{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.screener-search input{font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.screener-search input::placeholder{color:var(--text-tertiary)}.screener-divider{background:var(--border);width:1px;height:24px}.screener-filter-group{gap:var(--sp-1);display:flex}.screener-filter-chip{cursor:pointer;border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);font-size:12px;font-weight:500;font-family:var(--font-sans);white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:6px 12px;transition:all .15s;display:inline-flex}.screener-filter-chip:hover{border-color:var(--accent);color:var(--accent)}.screener-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.screener-filter-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);white-space:nowrap;font-size:11px;font-weight:600}.screener-toolbar-count{color:var(--text-tertiary);margin-left:auto;font-size:12px}.screener-table-wrap{padding:0 var(--sp-6);flex:1;overflow:auto}.screener-table{border-collapse:separate;border-spacing:0;width:100%}.screener-table thead th{background:var(--surface-0);padding:var(--sp-3);text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;z-index:1;font-size:11px;font-weight:600;position:sticky;top:0}.screener-table thead th.sortable{cursor:pointer;transition:color .15s}.screener-table thead th.sortable:hover{color:var(--text-primary)}.screener-table thead th.sort-asc{color:var(--accent)}.screener-table thead th.sort-asc:after{content:" ↑"}.screener-table thead th.sort-desc{color:var(--accent)}.screener-table thead th.sort-desc:after{content:" ↓"}.screener-table thead th.align-right{text-align:right}.screener-table thead th.align-center{text-align:center}.screener-table tbody tr{cursor:pointer;transition:background .1s}.screener-table tbody tr:hover{background:var(--surface-2)}.screener-table td{padding:var(--sp-2) var(--sp-3);color:var(--text-primary);border-bottom:1px solid var(--border-light);white-space:nowrap;font-size:13px}.screener-table td.align-right{text-align:right}.screener-table td.align-center{text-align:center}.screener-table td.col-mono{font-family:var(--font-mono);font-size:12px}.screener-ticker-cell{align-items:center;gap:var(--sp-2);display:flex}.screener-ticker-symbol{font-weight:600;font-family:var(--font-mono);color:var(--accent);font-size:13px;text-decoration:none}.screener-ticker-symbol:hover{text-decoration:underline}.screener-ticker-name{color:var(--text-secondary);text-overflow:ellipsis;max-width:200px;font-size:12px;overflow:hidden}.screener-type-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:3px;flex-shrink:0;align-items:center;gap:3px;padding:2px 6px;font-size:10px;font-weight:600;line-height:1;display:inline-flex}.screener-type-badge svg{flex-shrink:0}.screener-type-badge.share{background:var(--accent-subtle);color:var(--accent-text)}.screener-type-badge.crypto{background:var(--orange-subtle);color:var(--orange-text)}.screener-type-badge.future{background:var(--purple-subtle);color:var(--purple-text)}.screener-phase{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.screener-phase.trend_up{background:var(--green-subtle);color:var(--green-text)}.screener-phase.trend_down{background:var(--red-subtle);color:var(--red-text)}.screener-phase.range{background:var(--surface-2);color:var(--text-secondary)}.screener-phase.transition{background:var(--orange-subtle);color:var(--orange-text)}.screener-phase-confidence{opacity:.7;font-size:11px}.screener-trend-change{color:var(--orange-text);font-size:10px;font-weight:600}.screener-loading{color:var(--text-tertiary);justify-content:center;align-items:center;gap:var(--sp-2);flex:1;font-size:14px;display:flex}.screener-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite screener-spin}@keyframes screener-spin{to{transform:rotate(360deg)}}.screener-empty{justify-content:center;align-items:center;gap:var(--sp-3);color:var(--text-tertiary);padding:var(--sp-6);flex-direction:column;flex:1;font-size:14px;display:flex}.screener-footer{padding:var(--sp-3) var(--sp-6);border-top:1px solid var(--border);background:var(--surface-1);color:var(--text-tertiary);justify-content:space-between;align-items:center;font-size:12px;display:flex}.screener-footer strong{color:var(--text-primary);font-weight:600}.screener-pagination{align-items:center;gap:var(--sp-2);display:flex}.screener-page-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;font-size:13px;font-family:var(--font-sans);justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.screener-page-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.screener-page-btn:disabled{opacity:.35;cursor:default}.screener-page-info{color:var(--text-secondary);text-align:center;min-width:48px;font-size:12px}.screener-page-size{margin-right:var(--sp-2);padding-right:var(--sp-3);border-right:1px solid var(--border);align-items:center;gap:2px;display:flex}.screener-page-size-btn{border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans);cursor:pointer;background:0 0;border:1px solid #0000;padding:2px 8px;transition:all .15s}.screener-page-size-btn:hover{color:var(--text-primary)}.screener-page-size-btn.active{border-color:var(--border);background:var(--surface-2);color:var(--text-primary);font-weight:600}:root{--ba-text-primary:#1a1d23;--ba-text-secondary:#5f6872;--ba-text-muted:#8e97a3;--ba-border:#e2e6ea;--ba-border-hover:#c5cdd6;--ba-bg:#fff;--ba-bg-hover:#f3f5f7;--ba-accent:#2563eb;--ba-accent-hover:#1d4fd7;--ba-success:#10b981;--ba-danger:#ef4444;--ba-danger-hover:#dc2626;--ba-danger-bg:#fef2f2;--ba-selected-bg:#f8faff;--ba-backdrop:#1a1d2373;--ba-separator:#d0d5dd;--ba-footer-border:#eef1f4}.ba-dialog .MuiPaper-root{background:var(--ba-bg);border-radius:16px;flex-direction:column;width:460px;max-width:460px;max-height:85vh;margin:0;padding:0;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.ba-backdrop.MuiBackdrop-root{background:var(--ba-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ba-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.ba-header-left{flex-direction:column;gap:2px;display:flex}.ba-title{color:var(--ba-text-primary);margin:0;font-family:DM Sans,sans-serif;font-size:16px;font-weight:700}.ba-subtitle{color:var(--ba-text-muted);font-family:DM Sans,sans-serif;font-size:12px}.ba-close{width:32px;height:32px;color:var(--ba-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex}.ba-close:hover{background:var(--ba-bg-hover);color:var(--ba-text-primary)}.ba-steps{flex-shrink:0;align-items:center;gap:8px;padding:0 24px 16px;display:flex}.ba-step{color:var(--ba-text-muted);align-items:center;gap:6px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;display:flex}.ba-step.active{color:var(--ba-accent)}.ba-step.done{color:var(--ba-success)}.ba-step-num{border:1.5px solid var(--ba-border);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:600;transition:all .2s;display:flex}.ba-step.active .ba-step-num{border-color:var(--ba-accent);background:var(--ba-accent);color:var(--ba-bg)}.ba-step.done .ba-step-num{border-color:var(--ba-success);background:var(--ba-success);color:var(--ba-bg)}.ba-step-line{background:var(--ba-border);border-radius:1px;width:24px;height:1.5px}.ba-step-line.done{background:var(--ba-success)}.ba-body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:0 24px 20px;display:flex;overflow-y:auto}.ba-body::-webkit-scrollbar{width:4px}.ba-body::-webkit-scrollbar-thumb{background:var(--ba-border);border-radius:2px}.ba-field{flex-direction:column;gap:4px;display:flex}.ba-field-label{color:var(--ba-text-secondary);font-family:DM Sans,sans-serif;font-size:12px;font-weight:500}.ba-field-input{border:1px solid var(--ba-border);height:40px;color:var(--ba-text-primary);background:var(--ba-bg);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s}.ba-field-input:focus{border-color:var(--ba-accent);box-shadow:0 0 0 3px #2563eb1a}.ba-field-input::placeholder{color:var(--ba-text-muted);font-weight:400}.ba-field-input-text{font-family:DM Sans,sans-serif}.ba-field-select{border:1px solid var(--ba-border);height:40px;color:var(--ba-text-primary);background:var(--ba-bg);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238E97A3' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:8px;outline:none;width:100%;padding:0 36px 0 12px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .15s}.ba-field-select:focus{border-color:var(--ba-accent);box-shadow:0 0 0 3px #2563eb1a}.ba-field-hint{color:var(--ba-text-muted);margin-top:2px;font-family:DM Sans,sans-serif;font-size:11px}.ba-account-card{border:1.5px solid var(--ba-border);background:var(--ba-bg);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;transition:all .15s;display:flex}.ba-account-card:hover{border-color:var(--ba-border-hover)}.ba-account-card:focus-visible{outline:2px solid var(--ba-accent);outline-offset:2px}.ba-account-card.selected{border-color:var(--ba-accent);background:var(--ba-selected-bg)}.ba-account-card-header{align-items:center;gap:10px;display:flex}.ba-checkbox{border:1.5px solid var(--ba-separator);background:var(--ba-bg);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.ba-account-card.selected .ba-checkbox{background:var(--ba-accent);border-color:var(--ba-accent)}.ba-checkbox-icon{opacity:0;transition:opacity .1s}.ba-account-card.selected .ba-checkbox-icon{opacity:1}.ba-account-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ba-account-name{color:var(--ba-text-primary);text-overflow:ellipsis;white-space:nowrap;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;overflow:hidden}.ba-account-meta{color:var(--ba-text-muted);align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.ba-account-meta-dot{color:var(--ba-separator);margin:0 2px}.ba-account-type-badge{background:var(--ba-bg-hover);color:var(--ba-text-secondary);text-transform:uppercase;letter-spacing:.3px;border-radius:4px;align-items:center;padding:1px 6px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:500;display:inline-flex}.ba-account-label-row{padding-top:2px}.ba-account-label-input{border:1px solid var(--ba-border);height:34px;color:var(--ba-text-primary);background:var(--ba-bg);box-sizing:border-box;border-radius:6px;outline:none;width:100%;padding:0 10px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .15s,box-shadow .15s}.ba-account-label-input:focus{border-color:var(--ba-accent);box-shadow:0 0 0 3px #2563eb1a}.ba-account-label-input::placeholder{color:var(--ba-border-hover)}.ba-error-bar{background:var(--ba-danger-bg);color:var(--ba-danger-hover);border-top:1px solid #ef444426;flex-shrink:0;align-items:center;gap:8px;padding:8px 16px 8px 24px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;line-height:1.4;display:flex}.ba-error-bar-text{flex:1;min-width:0}.ba-footer{border-top:1px solid var(--ba-footer-border);flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;display:flex}.ba-btn-ghost{height:36px;color:var(--ba-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .15s}.ba-btn-ghost:hover{background:var(--ba-bg-hover);color:var(--ba-text-primary)}.ba-btn-primary{background:var(--ba-accent);height:36px;color:var(--ba-bg);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:0 20px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #2563eb4d}.ba-btn-primary:hover{background:var(--ba-accent-hover)}.ba-btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ba-spinner{border:2px solid #ffffff4d;border-top-color:var(--ba-bg);border-radius:50%;width:14px;height:14px;animation:.6s linear infinite ba-spin}@keyframes ba-spin{to{transform:rotate(360deg)}}.ba-edit-body{flex-direction:column;gap:16px;padding:4px 24px 20px;display:flex}.ba-delete-body{flex-direction:column;gap:12px;padding:0 24px 20px;display:flex}.ba-delete-warning{background:var(--ba-danger-bg);border:1px solid #ef44441f;border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.ba-delete-warning-icon{background:#ef44441a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.ba-delete-warning-text{color:var(--ba-text-secondary);font-family:DM Sans,sans-serif;font-size:13px;line-height:1.5}.ba-delete-warning-text strong{color:var(--ba-text-primary);font-weight:600}.ba-btn-danger{background:var(--ba-danger);height:36px;color:var(--ba-bg);cursor:pointer;border:none;border-radius:8px;padding:0 20px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #ef44444d}.ba-btn-danger:hover{background:var(--ba-danger-hover)}.ba-btn-danger:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.broker-accounts-page{--surface-0:#fafbfc;--surface-1:#fff;--surface-2:#f3f5f7;--surface-3:#e8ecf0;--border:#e2e6ea;--border-light:#eef1f4;--text-primary:#1a1d23;--text-secondary:#5f6872;--text-tertiary:#8e97a3;--accent:#2563eb;--accent-subtle:#eef3ff;--accent-text:#1e40af;--green:#10b981;--green-subtle:#ecfdf5;--green-text:#047857;--red:#ef4444;--red-subtle:#fef2f2;--red-text:#b91c1c;--orange:#f59e0b;--orange-subtle:#fffbeb;--orange-text:#92400e;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 6px #0000000f;--shadow-card:0 1px 3px #0000000a, 0 0 0 1px #00000008;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;background:var(--surface-0);font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:0;padding:var(--sp-6);flex-direction:column;flex:1;max-width:960px;font-size:14px;display:flex}.ba-page-header{margin-bottom:var(--sp-6);justify-content:space-between;align-items:flex-start;display:flex}.ba-page-header-left{flex-direction:column;gap:2px;display:flex}.ba-page-title{color:var(--text-primary);margin:0;font-size:20px;font-weight:700}.ba-page-subtitle{color:var(--text-tertiary);font-size:13px}.ba-page-actions{gap:var(--sp-2);flex-shrink:0;display:flex}.ba-page-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);height:36px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.ba-page-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.ba-page-btn svg{width:16px;height:16px}.ba-section{margin-bottom:var(--sp-6)}.ba-section-header{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.ba-section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);font-size:12px;font-weight:600}.ba-section-count{color:var(--text-tertiary);background:var(--surface-2);border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.ba-section-line{background:var(--border);flex:1;height:1px}.ba-table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);overflow:hidden}.ba-table{border-collapse:collapse;table-layout:fixed;width:100%}.ba-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);background:var(--surface-2);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 16px;font-size:11px;font-weight:600}.ba-table td{color:var(--text-primary);border-bottom:1px solid var(--border-light);vertical-align:middle;padding:12px 16px;font-size:13px}.ba-table tr:last-child td{border-bottom:none}.ba-table tr:hover td{background:var(--surface-0)}.ba-table .col-name{width:30%}.ba-table .col-broker{width:12%}.ba-table .col-type{width:14%}.ba-table .col-id{width:24%}.ba-table .col-actions{text-align:right;width:20%}.ba-table-label{color:var(--text-primary);font-weight:600}.ba-table-broker-badge{border-radius:var(--radius-sm);letter-spacing:.2px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.ba-table-broker-badge.tbank{color:#854d0e;background:#fef9c3}.ba-table-broker-badge.finam{color:#075985;background:#e0f2fe}.ba-table-broker-badge.okx{color:#374151;background:#f3f4f6}.ba-table-broker-badge.binance{color:#92400e;background:#fef3c7}.ba-table-broker-badge.demo{background:var(--accent-subtle);color:var(--accent-text)}.ba-table-id{font-family:var(--font-mono);color:var(--text-secondary);font-size:12px}.ba-table-type{color:var(--text-secondary);font-size:12px}.ba-action-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.ba-action-btn:hover{background:var(--surface-2);color:var(--text-primary);border-color:var(--border)}.ba-action-btn.danger:hover{background:var(--red-subtle);color:var(--red);border-color:#0000}.ba-action-btn svg{width:16px;height:16px}.ba-demo-cards{gap:var(--sp-4);grid-template-columns:repeat(auto-fill,minmax(380px,1fr));display:grid}.ba-demo-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-1);transition:border-color .15s;overflow:hidden}.ba-demo-card:hover{border-color:var(--border);box-shadow:var(--shadow-md)}.ba-demo-card-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px;display:flex}.ba-demo-card-title{flex-direction:column;gap:2px;min-width:0;display:flex}.ba-demo-card-name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.ba-demo-card-meta{color:var(--text-tertiary);align-items:center;gap:6px;font-size:12px;display:flex}.ba-demo-card-meta-dot{color:var(--border)}.ba-demo-card-id{font-family:var(--font-mono);font-size:11px}.ba-demo-card-actions{flex-shrink:0;gap:2px;display:flex}.ba-demo-card-body{flex-direction:column;gap:12px;padding:16px;display:flex}.ba-demo-balance-row{align-items:center;gap:10px;display:flex}.ba-demo-balance-icon{border-radius:var(--radius-md);background:var(--green-subtle);width:36px;height:36px;color:var(--green);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ba-demo-balance-icon svg{width:18px;height:18px}.ba-demo-balance-info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.ba-demo-balance-label{color:var(--text-tertiary);font-size:11px;font-weight:500}.ba-demo-balance-value{font-size:16px;font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.ba-demo-balance-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);height:30px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;flex-shrink:0;padding:0 12px;font-size:12px;font-weight:500;transition:all .15s}.ba-demo-balance-btn:hover{border-color:var(--accent);color:var(--accent)}.ba-demo-commission-row{border-top:1px solid var(--border-light);align-items:center;gap:8px;padding-top:8px;display:flex}.ba-demo-commission-label{color:var(--text-tertiary);white-space:nowrap;font-size:12px}.ba-demo-commission-input{border:1px solid var(--border);border-radius:var(--radius-sm);width:80px;height:30px;font-family:var(--font-mono);color:var(--text-primary);background:var(--surface-1);outline:none;padding:0 8px;font-size:12px;transition:border-color .15s}.ba-demo-commission-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb14}.ba-demo-commission-hint{color:var(--text-tertiary);flex:1;font-size:11px}.ba-demo-commission-status{color:var(--green);white-space:nowrap;font-size:11px;font-weight:500}.ba-demo-commission-save{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-1);height:28px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;padding:0 10px;font-size:11px;font-weight:500;transition:all .15s}.ba-demo-commission-save:hover{border-color:var(--accent);color:var(--accent)}.ba-demo-commission-save:disabled{opacity:.4;cursor:not-allowed}.ba-demo-history{border-top:1px solid var(--border-light);padding:16px}.ba-empty{text-align:center;color:var(--text-tertiary);padding:40px 20px;font-size:13px}.confirm-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#1a1d2373;justify-content:center;align-items:center;animation:.2s confirmFadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}.confirm-dialog{background:var(--surface-1);width:360px;padding:var(--sp-6);border-radius:14px;animation:.25s cubic-bezier(.4,0,.2,1) confirmSlideIn;box-shadow:0 24px 48px #00000029}@keyframes confirmSlideIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.confirm-title{color:var(--text-primary);margin-bottom:var(--sp-2);font-size:16px;font-weight:600}.confirm-text{color:var(--text-secondary);margin-bottom:var(--sp-5);font-size:13px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:var(--sp-2);display:flex}.confirm-btn-ghost{border-radius:var(--radius-md);height:36px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s}.confirm-btn-ghost:hover{background:var(--surface-2);color:var(--text-primary)}.confirm-btn-danger{border-radius:var(--radius-md);height:36px;font-family:var(--font-sans);cursor:pointer;background:var(--red);color:#fff;border:none;justify-content:center;align-items:center;padding:0 20px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.confirm-btn-danger:hover{background:var(--red-text)}.confirm-btn-ghost:disabled,.confirm-btn-danger:disabled{opacity:.5;cursor:not-allowed}.stats-chart-section{padding:0}.stats-chart-header{margin-bottom:var(--sp-3,12px);justify-content:space-between;align-items:center;display:flex}.stats-chart-title{color:var(--text-secondary,#5f6872);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}.stats-chart-toggle{background:var(--surface-2,#f3f5f7);border-radius:6px;gap:2px;padding:2px;display:flex}.stats-chart-toggle button{color:var(--text-secondary,#5f6872);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:background .15s,color .15s}.stats-chart-toggle button:hover{color:var(--text-primary,#1a1d23)}.stats-chart-toggle button.active{background:var(--surface-1,#fff);color:var(--text-primary,#1a1d23);box-shadow:0 1px 2px #0000000f}.stats-chart-container{width:100%}.stats-chart-empty,.stats-chart-loading{height:120px;color:var(--text-tertiary,#8e97a3);justify-content:center;align-items:center;font-size:13px;display:flex}.stats-chart-tooltip{background:#fff;border:1px solid #e2e6ea;border-radius:8px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:12px;box-shadow:0 2px 8px #00000014}.stats-chart-tooltip-date{color:#5f6872;margin-bottom:4px}.stats-chart-tooltip-row{justify-content:space-between;gap:12px;line-height:1.6;display:flex}.stats-chart-tooltip-label{color:#8e97a3}.stats-chart-tooltip-value{color:#1a1d23;font-weight:600}.stats-chart-tooltip-value.positive{color:#047857}.stats-chart-tooltip-value.negative{color:#b91c1c}.stats-chart-expand-btn{background:var(--surface-2,#f3f5f7);border-radius:var(--radius-sm,6px);cursor:pointer;width:28px;height:28px;color:var(--text-secondary,#5f6872);border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.stats-chart-expand-btn:hover{background:var(--surface-3,#e8ecf0);color:var(--text-primary,#1a1d23)}.series-toggle-container{gap:var(--sp-2,8px);padding:var(--sp-3,12px) 0;flex-wrap:wrap;display:flex}.series-toggle-chip{border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-sm,6px);background:var(--surface-1,#fff);color:var(--text-secondary,#5f6872);cursor:pointer;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:flex}.series-toggle-chip:hover{background:var(--surface-2,#f3f5f7);color:var(--text-primary,#1a1d23)}.series-toggle-chip.active{border-color:var(--border,#e2e6ea);background:var(--surface-2,#f3f5f7);color:var(--text-primary,#1a1d23)}.series-chip-indicator{border-radius:2px;flex-shrink:0}.series-chip-indicator.bar{width:10px;height:10px}.series-chip-indicator.line{border-radius:1.5px;width:14px;height:3px}.series-toggle-chip:not(.active) .series-chip-indicator{opacity:.35}.trading-settings-details-modal.MuiPaper-root{background:var(--surface-1,#fff);border-radius:16px;flex-direction:column;width:520px;max-width:520px;max-height:90vh;margin:0;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.trading-settings-details-modal .tsd-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4,16px);padding:var(--sp-5,20px) var(--sp-6,24px);border-bottom:1px solid var(--border-light,#eef1f4);display:flex}.trading-settings-details-modal .tsd-header-copy{flex-direction:column;gap:4px;min-width:0;display:flex}.trading-settings-details-modal .tsd-title{color:var(--text-primary,#1a1d23);font-size:16px;font-weight:700}.trading-settings-details-modal .tsd-subtitle{color:var(--text-tertiary,#8e97a3);font-size:12px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.trading-settings-details-modal .tsd-header-actions{align-items:center;gap:var(--sp-2,8px);flex-shrink:0;display:flex}.trading-settings-details-modal .tsd-settings-btn{width:28px;height:28px}.trading-settings-details-modal .tsd-body{padding:var(--sp-5,20px) var(--sp-6,24px);gap:var(--sp-3,12px);flex-direction:column;min-height:0;display:flex;overflow:hidden}.trading-settings-details-modal .detail-stats{gap:var(--sp-3,12px);grid-template-columns:1fr 1fr;display:grid}.trading-settings-details-modal .stat-card{padding:var(--sp-3,12px) var(--sp-4,16px);background:var(--surface-2,#f3f5f7);border-radius:var(--radius-md,8px);flex-direction:column;gap:2px;display:flex}.trading-settings-details-modal .stat-card-wide{grid-column:1/-1}.trading-settings-details-modal .stat-card-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary,#8e97a3);font-size:10px;font-weight:600}.trading-settings-details-modal .stat-card-value{font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:-.5px;color:var(--text-primary,#1a1d23);font-size:18px;font-weight:700}.trading-settings-details-modal .stat-card-value.positive{color:var(--green-text,#047857)}.trading-settings-details-modal .stat-card-value.negative{color:var(--red-text,#b91c1c)}.trading-settings-details-modal .stat-card-sub{font-family:var(--font-mono,"JetBrains Mono", monospace);font-size:11px;font-weight:500}.trading-settings-details-modal .stat-card-sub.positive{color:var(--green,#10b981)}.trading-settings-details-modal .stat-card-sub.negative{color:var(--red,#ef4444)}.trading-settings-details-modal .stat-card-sub.neutral{color:var(--text-tertiary,#8e97a3)}.trading-settings-details-modal .tsd-pnl-breakdown{flex-direction:column;gap:4px;margin-top:6px;display:flex}.trading-settings-details-modal .tsd-pnl-breakdown-row{justify-content:space-between;align-items:baseline;gap:var(--sp-3,12px);font-family:var(--font-mono,"JetBrains Mono", monospace);font-size:11px;font-weight:500;display:flex}.trading-settings-details-modal .tsd-pnl-breakdown-row.positive{color:var(--green,#10b981)}.trading-settings-details-modal .tsd-pnl-breakdown-row.negative{color:var(--red,#ef4444)}.trading-settings-details-modal .tsd-progress-values{align-items:baseline;gap:var(--sp-2,8px);display:flex}.trading-settings-details-modal .tsd-progress-sep{color:var(--text-tertiary,#8e97a3);font-size:14px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.trading-settings-details-modal .tsd-progress-limit{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-tertiary,#8e97a3);font-size:16px;font-weight:600}.trading-settings-details-modal .tsd-allocated-breakdown{gap:var(--sp-4,16px);margin-top:2px;display:flex}.trading-settings-details-modal .tsd-allocated-breakdown span{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-tertiary,#8e97a3);font-size:11px;font-weight:500}.trading-settings-details-modal .tsd-progress-track{background:var(--surface-3,#e8ecf0);border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.trading-settings-details-modal .tsd-progress-bar{background:var(--accent,#2563eb);border-radius:3px;height:100%}.trading-settings-details-modal .tsd-abandoned-warning{border:1px solid var(--orange,#f59e0b);background:#f59e0b0f}.trading-settings-details-modal .tsd-abandoned-warning .stat-card-value{color:var(--orange-text,#b45309)}.trading-settings-details-modal .tsd-abandoned-hint{color:var(--text-tertiary,#8e97a3);margin-top:4px;font-size:11px}.trading-settings-details-modal .tsd-divider{background:var(--border-light,#eef1f4);height:1px}.trading-settings-details-modal .tsd-chart-section{flex-direction:column;display:flex}.trading-settings-details-modal .tsd-chart-toggle{cursor:pointer;width:100%;color:var(--text-secondary,#5f6872);background:0 0;border:none;justify-content:space-between;align-items:center;padding:0;display:flex}.trading-settings-details-modal .tsd-chart-toggle:hover{color:var(--text-primary,#1a1d23)}.trading-settings-details-modal .tsd-chart-toggle-title{text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:600}.trading-settings-details-modal .tsd-chart-toggle-icon{font-size:20px;transition:transform .2s}.trading-settings-details-modal .tsd-chart-toggle-icon.expanded{transform:rotate(180deg)}.trading-settings-details-modal .orders-section{gap:var(--sp-3,12px);flex-direction:column;min-height:0;display:flex}.trading-settings-details-modal .orders-section-header{justify-content:space-between;align-items:center;display:flex}.trading-settings-details-modal .orders-section-title{color:var(--text-secondary,#5f6872);text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:600}.trading-settings-details-modal .orders-count-badge{color:var(--text-tertiary,#8e97a3);font-size:12px;font-family:var(--font-mono,"JetBrains Mono", monospace);background:var(--surface-2,#f3f5f7);border-radius:10px;padding:2px 8px}.trading-settings-details-modal .orders-table-wrap{border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-md,8px);max-height:280px;overflow-y:auto}.trading-settings-details-modal .orders-table{border-collapse:collapse;width:100%;font-size:12px}.trading-settings-details-modal .orders-table th,.trading-settings-details-modal .orders-table td{text-align:left;border-bottom:1px solid var(--border-light,#eef1f4);padding:10px 12px}.trading-settings-details-modal .orders-table th{background:var(--surface-1,#fff);color:var(--text-tertiary,#8e97a3);text-transform:uppercase;letter-spacing:.5px;font-size:10px;position:sticky;top:0}.trading-settings-details-modal .orders-table tbody tr:last-child td{border-bottom:none}.trading-settings-details-modal .orders-empty-state{text-align:center;color:var(--text-tertiary,#8e97a3);padding:20px 12px;font-size:12px}.trading-settings-details-modal .order-status-dot{border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.trading-settings-details-modal .order-status-dot.pending{background:var(--green,#10b981)}.trading-settings-details-modal .order-status-dot.partial{background:var(--orange,#f59e0b)}.trading-settings-details-modal .order-type-label{text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.trading-settings-details-modal .order-type-label.buy{color:var(--green-text,#047857)}.trading-settings-details-modal .tsd-footer{padding:var(--sp-4,16px) var(--sp-6,24px);border-top:1px solid var(--border-light,#eef1f4);justify-content:flex-end;display:flex}.trading-settings-details-modal .tsd-btn-primary{border-radius:var(--radius-md,8px);background:var(--accent,#2563eb);height:36px;color:var(--text-inverse,#fff);cursor:pointer;border:none;padding:0 16px;font-size:13px;font-weight:600;transition:background .15s}.trading-settings-details-modal .tsd-btn-primary:hover{background:var(--accent-hover,#1d4fd7)}.trading-settings-modal-detailed.MuiPaper-root{width:95vw;max-width:95vw;height:95vh;max-height:95vh}.trading-settings-details-modal .tsd-body-detailed{gap:var(--sp-4,16px);padding:var(--sp-5,20px) var(--sp-6,24px);flex:1;min-height:0;display:flex;overflow:hidden}.trading-settings-details-modal .tsd-sidebar{flex-shrink:0;width:320px;overflow-y:auto}.trading-settings-details-modal .tsd-main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.trading-settings-details-modal .detail-stats-vertical{grid-template-columns:unset;gap:var(--sp-3,12px);flex-direction:column;display:flex}.trading-settings-details-modal .tsd-chart-section-detailed{flex-direction:column;flex:1;min-height:0;display:flex}.trading-settings-details-modal .tsd-chart-header{margin-bottom:var(--sp-3,12px);justify-content:flex-end;display:flex}.trading-settings-details-modal .tsd-close-detailed-btn{background:var(--surface-2,#f3f5f7);border-radius:var(--radius-sm,6px);cursor:pointer;width:28px;height:28px;color:var(--text-secondary,#5f6872);border:none;justify-content:center;align-items:center;font-size:20px;transition:background .15s,color .15s;display:flex}.trading-settings-details-modal .tsd-close-detailed-btn:hover{background:var(--surface-3,#e8ecf0);color:var(--text-primary,#1a1d23)}.trading-settings-modal.MuiPaper-root{background:var(--surface-1,#fff);border-radius:16px;flex-direction:column;width:460px;max-width:460px;max-height:90vh;margin:0;padding:0;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.trading-settings-modal.MuiPaper-root::-webkit-scrollbar{width:4px}.trading-settings-modal.MuiPaper-root::-webkit-scrollbar-thumb{background:var(--border,#e2e6ea);border-radius:2px}.trading-settings-modal .ts-header{padding:var(--sp-5,20px) var(--sp-6,24px);border-bottom:1px solid var(--border-light,#eef1f4);justify-content:space-between;align-items:center;display:flex}.trading-settings-modal .ts-header-left{flex-direction:column;gap:2px;display:flex}.trading-settings-modal .ts-title{color:var(--text-primary,#1a1d23);font-size:16px;font-weight:700;font-family:var(--font-sans,"DM Sans", sans-serif)}.trading-settings-modal .ts-subtitle-row{align-items:center;gap:6px;display:flex}.trading-settings-modal .ts-subtitle{color:var(--text-tertiary,#8e97a3);font-size:12px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.trading-settings-modal .ts-subtitle-sep{color:var(--border,#e2e6ea);font-size:12px}.trading-settings-modal .ts-subtitle-info{color:var(--text-tertiary,#8e97a3);font-size:11px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.trading-settings-modal .ts-header-right{align-items:center;gap:var(--sp-2,8px);flex-shrink:0;display:flex}.trading-settings-modal .ts-toggle-label{font-size:12px;font-weight:500}.trading-settings-modal .ts-toggle{background:var(--surface-3,#e8ecf0);cursor:pointer;border-radius:10px;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.trading-settings-modal .ts-toggle.active{background:var(--green,#10b981)}.trading-settings-modal .ts-toggle:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.trading-settings-modal .ts-toggle.active:after{transform:translate(16px)}.trading-settings-modal .ts-header,.trading-settings-modal .ts-footer,.trading-settings-modal .ts-error-bar,.trading-settings-modal .ts-summary{flex-shrink:0}.trading-settings-modal .ts-body{padding:var(--sp-5,20px) var(--sp-6,24px);gap:var(--sp-5,20px);flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.trading-settings-modal .ts-body::-webkit-scrollbar{width:4px}.trading-settings-modal .ts-body::-webkit-scrollbar-thumb{background:var(--border,#e2e6ea);border-radius:2px}.trading-settings-modal .ts-field-group{gap:var(--sp-3,12px);flex-direction:column;display:flex}.trading-settings-modal .ts-field-group-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary,#8e97a3);font-size:10px;font-weight:600}.trading-settings-modal .ts-field{gap:var(--sp-1,4px);flex-direction:column;display:flex}.trading-settings-modal .ts-field-label{color:var(--text-secondary,#5f6872);font-size:12px;font-weight:500;font-family:var(--font-sans,"DM Sans", sans-serif)}.trading-settings-modal .ts-field-input{height:40px;padding:0 var(--sp-3,12px);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-primary,#1a1d23);background:var(--surface-1,#fff);box-sizing:border-box;outline:none;width:100%;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s}.trading-settings-modal .ts-field-input:focus{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb1a}.trading-settings-modal .ts-field-input-text{font-family:var(--font-sans,"DM Sans", sans-serif)}.trading-settings-modal .ts-field-input::placeholder{color:var(--text-tertiary,#8e97a3);font-weight:400}.trading-settings-modal .ts-field-input:disabled{background:var(--surface-2,#f3f5f7);color:var(--text-tertiary,#8e97a3);cursor:not-allowed;border-color:var(--border-light,#eef1f4)}.trading-settings-modal .ts-field-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.trading-settings-modal .ts-field-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.trading-settings-modal .ts-field-input[type=number]{-moz-appearance:textfield}.trading-settings-modal .ts-field-hint{color:var(--text-tertiary,#8e97a3);margin-top:2px;font-size:11px}.trading-settings-modal .ts-field-select{height:40px;padding:0 var(--sp-3,12px);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);font-family:var(--font-sans,"DM Sans", sans-serif);color:var(--text-primary,#1a1d23);background:var(--surface-1,#fff);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238E97A3' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;width:100%;padding-right:36px;font-size:13px;transition:border-color .15s}.trading-settings-modal .ts-field-select:focus{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb1a}.trading-settings-modal .ts-field-row{gap:var(--sp-3,12px);grid-template-columns:1fr 1fr;display:grid}.trading-settings-modal .ts-field-row.ts-field-row-3{grid-template-columns:1fr 1fr 1fr}.trading-settings-modal .ts-field-optional{color:var(--text-tertiary,#8e97a3);font-weight:400}.trading-settings-modal .ts-range-pair{border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);align-items:center;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.trading-settings-modal .ts-range-pair:focus-within{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb1a}.trading-settings-modal .ts-range-pair input{height:40px;padding:0 var(--sp-3,12px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-primary,#1a1d23);text-align:center;box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px;font-weight:500}.trading-settings-modal .ts-range-pair input::placeholder{color:var(--text-tertiary,#8e97a3);font-weight:400}.trading-settings-modal .ts-range-pair input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.trading-settings-modal .ts-range-pair input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.trading-settings-modal .ts-range-pair input[type=number]{-moz-appearance:textfield}.trading-settings-modal .ts-range-sep{text-align:center;width:32px;color:var(--text-tertiary,#8e97a3);background:var(--surface-2,#f3f5f7);height:40px;font-size:16px;line-height:40px;font-family:var(--font-mono,"JetBrains Mono", monospace);flex-shrink:0}.trading-settings-modal .ts-checkbox-row{align-items:center;gap:var(--sp-3,12px);padding:var(--sp-3,12px) var(--sp-4,16px);border-radius:var(--radius-md,8px);border:1px solid var(--border,#e2e6ea);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s;display:flex;position:relative}.trading-settings-modal .ts-checkbox-row:hover,.trading-settings-modal .ts-checkbox-row.checked{border-color:var(--accent,#2563eb);background:var(--accent-subtle,#eef3ff)}.trading-settings-modal .ts-checkbox-row input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.trading-settings-modal .ts-checkbox-box{border:1.5px solid var(--border,#e2e6ea);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.trading-settings-modal .ts-checkbox-row.checked .ts-checkbox-box{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb)}.trading-settings-modal .ts-checkbox-box svg{opacity:0;transition:opacity .1s}.trading-settings-modal .ts-checkbox-row.checked .ts-checkbox-box svg{opacity:1}.trading-settings-modal .ts-checkbox-label{color:var(--text-primary,#1a1d23);font-size:13px;font-weight:500}.trading-settings-modal .ts-checkbox-desc{color:var(--text-tertiary,#8e97a3);font-size:11px}.trading-settings-modal .ts-footer{justify-content:flex-end;align-items:center;gap:var(--sp-3,12px);padding:var(--sp-4,16px) var(--sp-6,24px);border-top:1px solid var(--border-light,#eef1f4);display:flex}.trading-settings-modal .ts-btn-ghost{height:36px;padding:0 var(--sp-4,16px);border-radius:var(--radius-md,8px);color:var(--text-secondary,#5f6872);font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:500;transition:all .15s}.trading-settings-modal .ts-btn-ghost:hover{background:var(--surface-2,#f3f5f7);color:var(--text-primary,#1a1d23)}.trading-settings-modal .ts-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.trading-settings-modal .ts-btn-primary{height:36px;padding:0 var(--sp-5,20px);border-radius:var(--radius-md,8px);background:var(--accent,#2563eb);color:#fff;font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;border:none;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #2563eb4d}.trading-settings-modal .ts-btn-primary:hover{background:var(--accent-hover,#1d4fd7)}.trading-settings-modal .ts-btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.trading-settings-modal .ts-error-bar{align-items:center;gap:var(--sp-2,8px);padding:var(--sp-2,8px) var(--sp-4,16px) var(--sp-2,8px) var(--sp-6,24px);background:var(--red-subtle,#fef2f2);color:var(--red-text,#b91c1c);border-top:1px solid #ef444426;flex-shrink:0;font-size:12px;font-weight:500;line-height:1.4;display:flex}.trading-settings-modal .ts-error-bar-text{flex:1;min-width:0}.trading-settings-modal .ts-error-bar-close{width:24px;height:24px;color:var(--red-text,#b91c1c);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:opacity .15s;display:flex}.trading-settings-modal .ts-error-bar-close:hover{opacity:1;background:#ef44441a}.trading-settings-modal .ts-info-alert{align-items:center;gap:var(--sp-2,8px);padding:var(--sp-3,12px) var(--sp-4,16px);background:var(--accent-subtle,#eef3ff);border-radius:var(--radius-md,8px);color:var(--accent-text,#1e40af);border:1px solid #2563eb26;font-size:13px;display:flex}.trading-settings-modal .ts-ai-section{border-top:1px solid var(--border-light,#eef1f4);padding-top:var(--sp-5,20px)}.trading-settings-modal .ts-ai-last-decision{color:var(--text-tertiary,#8e97a3);font-size:13px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.trading-settings-modal .ts-field-select-error{box-shadow:0 0 0 3px #ef44441a;border-color:var(--red,#ef4444)!important}.trading-settings-modal .ts-field-error{color:var(--red-text,#b91c1c);margin-top:2px;font-size:11px}.trading-settings-modal .ts-checkbox-row.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.trading-settings-modal .ts-subtitle-row{flex-wrap:wrap;gap:6px}.trading-settings-modal .ts-meta-chip{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-tertiary,#8e97a3);background:var(--surface-2,#f3f5f7);border:1px solid var(--border-light,#eef1f4);white-space:nowrap;border-radius:5px;padding:2px 7px;font-size:10.5px}.trading-settings-modal .ts-status-ctl{align-items:center;gap:var(--sp-2,8px);border:1px solid var(--border-light,#eef1f4);background:var(--surface-2,#f3f5f7);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;flex-shrink:0;padding:6px 10px 6px 12px;transition:all .2s;display:flex}.trading-settings-modal .ts-status-label{color:var(--text-tertiary,#8e97a3);font-size:12px;font-weight:600;transition:color .2s}.trading-settings-modal .ts-status-track{background:var(--surface-3,#e8ecf0);border-radius:10px;flex-shrink:0;width:34px;height:19px;transition:background .2s;position:relative}.trading-settings-modal .ts-status-track:after{content:"";background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000002e}.trading-settings-modal .ts-status-ctl.on{background:var(--green-subtle,#ecfdf5);border-color:#10b98140}.trading-settings-modal .ts-status-ctl.on .ts-status-label{color:var(--green-text,#047857)}.trading-settings-modal .ts-status-ctl.on .ts-status-track,.trading-settings-modal .ts-status-track.on{background:var(--green,#10b981)}.trading-settings-modal .ts-status-ctl.on .ts-status-track:after,.trading-settings-modal .ts-status-track.on:after{transform:translate(15px)}.trading-settings-modal .ts-direction-segment{border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);grid-template-columns:1fr 1fr;gap:0;display:grid;overflow:hidden}.trading-settings-modal .ts-dir-btn{background:var(--surface-1,#fff);height:40px;font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;color:var(--text-tertiary,#8e97a3);border:none;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.trading-settings-modal .ts-dir-btn:first-child{border-right:1px solid var(--border,#e2e6ea)}.trading-settings-modal .ts-dir-arrow{font-family:var(--font-mono,"JetBrains Mono", monospace);opacity:.85;font-size:12px}.trading-settings-modal .ts-dir-btn:not(.active):hover{background:var(--surface-2,#f3f5f7);color:var(--text-secondary,#5f6872)}.trading-settings-modal .ts-dir-btn-long.active{background:var(--green-subtle,#ecfdf5);color:var(--green-text,#047857)}.trading-settings-modal .ts-dir-btn-short.active{background:var(--red-subtle,#fef2f2);color:var(--red-text,#b91c1c)}.trading-settings-modal .ts-inp-wrap{align-items:center;width:100%;display:flex;position:relative}.trading-settings-modal .ts-inp-wrap-narrow{flex-shrink:0;width:96px}.trading-settings-modal .ts-field-input.ts-with-unit{padding-right:46px}.trading-settings-modal .ts-unit{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-tertiary,#8e97a3);pointer-events:none;font-size:11px;font-weight:600;position:absolute;right:11px}.trading-settings-modal .ts-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.trading-settings-modal .ts-lev-row{align-items:center;gap:10px;display:flex}.trading-settings-modal .ts-lev-row .ts-chips{margin-top:0}.trading-settings-modal .ts-chip{border:1px solid var(--border,#e2e6ea);background:var(--surface-1,#fff);height:26px;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);cursor:pointer;border-radius:999px;padding:0 9px;font-size:11px;font-weight:600;transition:all .13s}.trading-settings-modal .ts-chip:hover{border-color:var(--accent,#2563eb);color:var(--accent,#2563eb)}.trading-settings-modal .ts-chip.active{background:var(--accent-subtle,#eef3ff);color:var(--accent-text,#1e40af);border-color:#2563eb59}.trading-settings-modal .ts-risk-note{color:var(--amber-text,#b45309);background:var(--amber-subtle,#fffbeb);border-radius:var(--radius-sm,6px);border:1px solid #f59e0b40;align-items:center;gap:6px;margin-top:6px;padding:6px 9px;font-size:11px;line-height:1.4;display:flex}.trading-settings-modal .ts-range-viz{background:var(--surface-2,#f3f5f7);border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-md,8px);margin-top:2px;padding:12px 14px 10px}.trading-settings-modal .ts-range-track{height:24px;position:relative}.trading-settings-modal .ts-range-line{background:var(--border,#e2e6ea);border-radius:2px;height:4px;position:absolute;top:11px;left:0;right:0}.trading-settings-modal .ts-range-viz .ts-range-line{background:linear-gradient(90deg, var(--accent,#2563eb), #2563eb40);opacity:.7}.trading-settings-modal .ts-range-tick{background:#2563eb66;border-radius:1px;width:1.5px;height:12px;position:absolute;top:7px}.trading-settings-modal .ts-range-marker{background:var(--text-primary,#1a1d23);border-radius:1px;width:2px;height:24px;transition:left .2s;position:absolute;top:0}.trading-settings-modal .ts-range-meta{justify-content:space-between;gap:8px;margin-top:6px;display:flex}.trading-settings-modal .ts-range-meta span{font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-tertiary,#8e97a3);font-size:10.5px}.trading-settings-modal .ts-range-meta b{color:var(--text-secondary,#5f6872);font-weight:600}.trading-settings-modal .ts-limit-switch{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-secondary,#5f6872);align-items:center;gap:8px;margin-top:7px;font-size:11.5px;font-weight:500;display:flex}.trading-settings-modal .ts-limit-switch input{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.trading-settings-modal .ts-limit-track{background:var(--surface-3,#e8ecf0);border-radius:9px;flex-shrink:0;width:30px;height:17px;transition:background .2s;position:relative}.trading-settings-modal .ts-limit-track:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0000002e}.trading-settings-modal .ts-limit-switch.on .ts-limit-track{background:var(--accent,#2563eb)}.trading-settings-modal .ts-limit-switch.on .ts-limit-track:after{transform:translate(13px)}.trading-settings-modal .ts-ai-card{border:1px solid var(--border,#e2e6ea);border-radius:12px;transition:border-color .2s;overflow:hidden}.trading-settings-modal .ts-ai-card.on{border-color:#2563eb59}.trading-settings-modal .ts-ai-head{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:12px 14px;transition:background .15s;display:flex}.trading-settings-modal .ts-ai-head:hover{background:var(--surface-2,#f3f5f7)}.trading-settings-modal .ts-ai-card.on .ts-ai-head{background:var(--accent-subtle,#eef3ff)}.trading-settings-modal .ts-ai-head input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.trading-settings-modal .ts-ai-ico{background:var(--accent-subtle,#eef3ff);width:28px;height:28px;color:var(--accent,#2563eb);border:1px solid #2563eb33;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;transition:all .2s;display:flex}.trading-settings-modal .ts-ai-card.on .ts-ai-ico{background:var(--accent,#2563eb);border-color:var(--accent,#2563eb);color:#fff}.trading-settings-modal .ts-ai-head-text{flex:1;min-width:0}.trading-settings-modal .ts-ai-head .ts-checkbox-label{color:var(--text-primary,#1a1d23);font-size:13px;font-weight:600}.trading-settings-modal .ts-ai-sub{color:var(--text-tertiary,#8e97a3);margin-top:1px;font-size:11px}.trading-settings-modal .ts-ai-collapse{grid-template-rows:0fr;transition:grid-template-rows .28s cubic-bezier(.4,0,.2,1);display:grid}.trading-settings-modal .ts-ai-collapse[data-open=true]{grid-template-rows:1fr}.trading-settings-modal .ts-ai-collapse-inner{overflow:hidden}.trading-settings-modal .ts-ai-fields{border-top:1px solid var(--border-light,#eef1f4);flex-direction:column;gap:13px;padding:14px;display:flex}.trading-settings-modal .ts-summary{border-top:1px solid var(--border-light,#eef1f4);grid-auto-flow:column;justify-content:space-between;gap:12px;padding:9px 24px 10px;transition:background .2s;display:grid}.trading-settings-modal .ts-summary-long{background:var(--green-subtle,#ecfdf5)}.trading-settings-modal .ts-summary-short{background:var(--red-subtle,#fef2f2)}.trading-settings-modal .ts-summary-item{flex-direction:column;gap:2px;min-width:0;display:flex}.trading-settings-modal .ts-summary-k{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary,#8e97a3);font-size:9.5px;font-weight:700}.trading-settings-modal .ts-summary-v{font-family:var(--font-mono,"JetBrains Mono", monospace);white-space:nowrap;font-size:11.5px;font-weight:600}.trading-settings-modal .ts-summary-long .ts-summary-v{color:var(--green-text,#047857)}.trading-settings-modal .ts-summary-short .ts-summary-v{color:var(--red-text,#b91c1c)}.trading-settings-backdrop.MuiBackdrop-root{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1d2373}.strategies-pnl-summary{gap:var(--sp-3,12px);margin-bottom:var(--sp-4,16px);grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(240px,2fr);display:grid}.strategies-pnl-block{background:var(--surface-1,#fff);border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-md,8px);padding:var(--sp-3,12px) var(--sp-4,16px);flex-direction:column;justify-content:space-between;min-height:96px;display:flex}.strategies-pnl-block-title{color:var(--text-secondary,#5f6872);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.strategies-pnl-block-value{color:var(--text-primary,#1a1d23);margin-top:var(--sp-2,8px);font-family:JetBrains Mono,monospace;font-size:22px;font-weight:600}.strategies-pnl-block-value.positive{color:#047857}.strategies-pnl-block-value.negative{color:#b91c1c}.strategies-pnl-block-empty{color:var(--text-tertiary,#8e97a3);margin-top:var(--sp-2,8px);font-size:13px}.strategies-pnl-block-net{color:var(--text-tertiary,#8e97a3);text-transform:lowercase;letter-spacing:0;margin-left:2px;font-size:11px;font-weight:500}.strategies-pnl-chart-container{width:100%;height:96px}.strategies-pnl-chart-empty{height:100%;color:var(--text-tertiary,#8e97a3);justify-content:center;align-items:center;font-size:13px;display:flex}.strategies-page{--surface-0:#fafbfc;--surface-1:#fff;--surface-2:#f3f5f7;--surface-3:#e8ecf0;--border:#e2e6ea;--border-light:#eef1f4;--text-primary:#1a1d23;--text-secondary:#5f6872;--text-tertiary:#8e97a3;--accent:#2563eb;--green:#10b981;--green-subtle:#ecfdf5;--green-text:#047857;--red:#ef4444;--red-subtle:#fef2f2;--red-text:#b91c1c;--amber:#f59e0b;--amber-subtle:#fffbeb;--amber-text:#b45309;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--radius-sm:6px;--radius-md:8px;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;background:var(--surface-0);font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;flex:1;min-height:0;font-size:14px;display:flex}.strategies-page-header{padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;display:flex}.strategies-page-header-left{align-items:center;gap:var(--sp-4);display:flex}.strategies-page-title{color:var(--text-primary);font-size:20px;font-weight:700}.strategies-page-subtitle{color:var(--text-tertiary);font-size:13px}.strategies-btn-new{align-items:center;gap:var(--sp-1);border-radius:var(--radius-md);background:var(--green);color:#fff;font-family:var(--font-sans);cursor:pointer;border:none;padding:8px 16px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.strategies-btn-new:hover{background:var(--green-text)}.strategies-toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6);border-bottom:1px solid var(--border-light);background:var(--surface-1);display:flex}.strategies-search-input{align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);width:280px;height:36px;transition:border-color .15s;display:flex}.strategies-search-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1a}.strategies-search-input svg{color:var(--text-tertiary);flex-shrink:0}.strategies-search-input input{font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.strategies-search-input input::placeholder{color:var(--text-tertiary)}.strategies-filter-chips{gap:var(--sp-2);display:flex}.strategies-filter-chip{cursor:pointer;border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);font-size:12px;font-weight:500;font-family:var(--font-sans);border-radius:20px;align-items:center;gap:4px;padding:6px 12px;transition:all .15s;display:inline-flex}.strategies-filter-chip:hover{border-color:var(--accent);color:var(--accent)}.strategies-filter-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.strategies-toolbar-hint{color:var(--text-tertiary);align-items:center;gap:4px;margin-left:auto;font-size:12px;display:flex}.strategies-table-wrap{padding:0 var(--sp-6);flex:1;overflow-y:auto}.strategies-table{border-collapse:separate;border-spacing:0;width:100%}.strategies-table thead th{background:var(--surface-0);padding:var(--sp-3);text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:600;position:sticky;top:0}.strategies-table thead th.sortable{cursor:pointer;transition:color .15s}.strategies-table thead th.sortable:hover{color:var(--text-primary)}.strategies-table thead th.sort-asc,.strategies-table thead th.sort-desc{color:var(--accent)}.strategies-table thead th.sort-asc:after{content:" ↑"}.strategies-table thead th.sort-desc:after{content:" ↓"}.strategies-table tbody tr{cursor:pointer;transition:background .1s}.strategies-table tbody tr:hover{background:var(--surface-2)}.strategies-table td{padding:var(--sp-3);color:var(--text-primary);border-bottom:1px solid var(--border-light);white-space:nowrap;font-size:13px}.strategies-table .col-ticker{font-weight:600;font-family:var(--font-mono)}.strategies-table .col-mono{font-family:var(--font-mono);font-size:12px}.strategies-status{border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.strategies-status.running{background:var(--green-subtle);color:var(--green-text)}.strategies-status.paused-by-ai{background:var(--amber-subtle);color:var(--amber-text)}.strategies-status.stopped{background:var(--surface-2);color:var(--text-tertiary)}.strategies-status-dot{border-radius:50%;width:6px;height:6px}.strategies-status.running .strategies-status-dot{background:var(--green)}.strategies-status.paused-by-ai .strategies-status-dot{background:var(--amber)}.strategies-status.stopped .strategies-status-dot{background:var(--text-tertiary)}.strategies-status-ai-icon{font-size:12px;line-height:1}.strategies-account-badge{background:var(--surface-2);color:var(--text-secondary);border-radius:4px;padding:2px 8px;font-size:11px}.strategies-actions{gap:4px;display:flex}.strategies-action-btn{border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .1s;display:flex}.strategies-action-btn:hover{background:var(--surface-3);color:var(--text-primary)}.strategies-action-btn.danger:hover{background:var(--red-subtle);color:var(--red-text)}.strategies-action-btn svg{width:16px;height:16px;font-size:16px}.strategies-footer{padding:var(--sp-3) var(--sp-6);border-top:1px solid var(--border);background:var(--surface-1);color:var(--text-tertiary);justify-content:space-between;align-items:center;font-size:12px;display:flex}.strategies-footer strong{color:var(--text-primary);font-weight:600}.strategies-loading{color:var(--text-tertiary);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.strategies-empty{justify-content:center;align-items:center;gap:var(--sp-3);color:var(--text-tertiary);flex-direction:column;flex:1;font-size:14px;display:flex}.strategies-retry-link{color:var(--accent);cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.backtests-page{--surface-0:#fafbfc;--surface-1:#fff;--surface-2:#f3f5f7;--surface-3:#e8ecf0;--border:#e2e6ea;--border-light:#eef1f4;--text-primary:#1a1d23;--text-secondary:#5f6872;--text-tertiary:#8e97a3;--accent:#2563eb;--accent-subtle:#eef3ff;--accent-text:#1e40af;--green:#10b981;--green-subtle:#ecfdf5;--green-text:#047857;--red:#ef4444;--red-subtle:#fef2f2;--red-text:#b91c1c;--orange:#f59e0b;--orange-subtle:#fffbeb;--orange-text:#92400e;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000a;--shadow-card:0 1px 3px #0000000a, 0 0 0 1px #00000008;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;background:var(--surface-0);font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;flex:1;min-height:0;font-size:14px;display:flex}.bt-page-header{padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;display:flex}.bt-page-title{color:var(--text-primary);font-size:20px;font-weight:700}.bt-page-subtitle{color:var(--text-tertiary);margin-top:2px;font-size:13px}.bt-body{flex:1;grid-template-columns:380px 1fr;min-height:0;display:grid;overflow:hidden}.bt-runs-panel{border-right:1px solid var(--border);background:var(--surface-1);flex-direction:column;min-height:0;display:flex}.bt-runs-toolbar{align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border-light);display:flex}.bt-runs-search{align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);flex:1;height:34px;transition:border-color .15s;display:flex}.bt-runs-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1a}.bt-runs-search svg{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.bt-runs-search input{font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-size:13px}.bt-runs-search input::placeholder{color:var(--text-tertiary)}.bt-runs-list{padding:var(--sp-2);flex:1;overflow-y:auto}.bt-run-card{gap:var(--sp-1);padding:var(--sp-3);border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;flex-direction:column;transition:all .12s;display:flex}.bt-run-card:hover{background:var(--surface-2)}.bt-run-card.selected{background:var(--accent-subtle);border-color:var(--accent)}.bt-run-card-top{justify-content:space-between;align-items:center;gap:var(--sp-2);display:flex}.bt-run-card-strategy{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.bt-run-card-pnl{font-family:var(--font-mono);white-space:nowrap;font-size:12px;font-weight:600}.bt-run-card-bottom{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.bt-run-card-tag{font-size:11px;font-family:var(--font-mono);background:var(--surface-2);color:var(--text-secondary);border-radius:4px;padding:1px 6px}.bt-run-card.selected .bt-run-card-tag{color:var(--accent-text);background:#2563eb1a}.bt-run-card-date{color:var(--text-tertiary);margin-left:auto;font-size:11px}.bt-status{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.bt-status-dot{border-radius:50%;width:6px;height:6px}.bt-status.completed{background:var(--green-subtle);color:var(--green-text)}.bt-status.completed .bt-status-dot{background:var(--green)}.bt-status.running{background:var(--accent-subtle);color:var(--accent-text)}.bt-status.running .bt-status-dot{background:var(--accent)}.bt-status.queued,.bt-status.pending{background:var(--orange-subtle);color:var(--orange-text)}.bt-status.queued .bt-status-dot,.bt-status.pending .bt-status-dot{background:var(--orange)}.bt-status.failed,.bt-status.cancelled{background:var(--red-subtle);color:var(--red-text)}.bt-status.failed .bt-status-dot,.bt-status.cancelled .bt-status-dot{background:var(--red)}.bt-detail-panel{gap:var(--sp-5);padding:var(--sp-5) var(--sp-6);background:var(--surface-0);flex-direction:column;display:flex;overflow-y:auto}.bt-detail-empty{color:var(--text-tertiary);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.bt-detail-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.bt-detail-header-left{gap:var(--sp-1);flex-direction:column;display:flex}.bt-detail-title{color:var(--text-primary);font-size:18px;font-weight:700}.bt-detail-meta{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.bt-detail-meta-item{color:var(--text-secondary);align-items:center;gap:4px;font-size:13px;display:flex}.bt-detail-meta-item .material-icons-outlined{color:var(--text-tertiary);font-size:16px}.bt-metrics-row{gap:var(--sp-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.bt-metric-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-3) var(--sp-4);flex-direction:column;gap:2px;display:flex}.bt-metric-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);font-size:11px;font-weight:600}.bt-metric-value{font-family:var(--font-mono);color:var(--text-primary);font-size:18px;font-weight:700}.bt-metric-value.positive{color:var(--green-text)}.bt-metric-value.negative{color:var(--red-text)}.bt-equity-section{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.bt-section-title{color:var(--text-primary);margin-bottom:var(--sp-3);align-items:center;gap:var(--sp-2);font-size:14px;font-weight:600;display:flex}.bt-section-title .material-icons-outlined{color:var(--text-tertiary);font-size:18px}.bt-equity-chart{width:100%;height:280px}.bt-strategy-section{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.bt-strategy-grid{gap:var(--sp-4);grid-template-columns:1fr 1fr;display:grid}.bt-strategy-block-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:var(--sp-2);font-size:11px;font-weight:600}.bt-strategy-conditions{gap:var(--sp-1);flex-direction:column;display:flex}.bt-condition-item{font-family:var(--font-mono);color:var(--text-secondary);background:var(--surface-2);border-radius:var(--radius-sm);align-items:center;gap:var(--sp-2);padding:4px 8px;font-size:12px;display:flex}.bt-condition-op{color:var(--accent);font-weight:600}.bt-strategy-params{gap:var(--sp-2);grid-template-columns:1fr 1fr;display:grid}.bt-strategy-param{flex-direction:column;gap:1px;display:flex}.bt-strategy-param-label{color:var(--text-tertiary);font-size:11px}.bt-strategy-param-value{font-family:var(--font-mono);color:var(--text-primary);font-size:13px;font-weight:600}.bt-trades-section{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-4)}.bt-trades-table-wrap{border-radius:var(--radius-sm);max-height:480px;overflow-y:auto}.bt-trades-table{border-collapse:separate;border-spacing:0;width:100%}.bt-trades-table thead th{background:var(--surface-0);padding:var(--sp-2) var(--sp-3);text-align:left;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);white-space:nowrap;z-index:1;font-size:11px;font-weight:600;position:sticky;top:0}.bt-trades-table thead th.align-right{text-align:right}.bt-trades-table tbody tr{transition:background .1s}.bt-trades-table tbody tr:hover{background:var(--surface-2)}.bt-trades-table td{padding:var(--sp-2) var(--sp-3);color:var(--text-primary);border-bottom:1px solid var(--border-light);white-space:nowrap;font-size:13px}.bt-trades-table td.align-right{text-align:right}.bt-trades-table td.col-mono{font-family:var(--font-mono);font-size:12px}.bt-trades-table td.col-pnl{font-family:var(--font-mono);font-size:12px;font-weight:600}.bt-side-chip{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.bt-side-chip.buy{background:var(--green-subtle);color:var(--green-text)}.bt-side-chip.sell{background:var(--red-subtle);color:var(--red-text)}.bt-exit-chip{background:var(--surface-2);color:var(--text-secondary);border-radius:4px;padding:2px 8px;font-size:11px}.bt-exit-chip.stop_loss{background:var(--red-subtle);color:var(--red-text)}.bt-exit-chip.take_profit{background:var(--green-subtle);color:var(--green-text)}.bt-loading{color:var(--text-tertiary);justify-content:center;align-items:center;gap:var(--sp-2);flex:1;font-size:14px;display:flex}.bt-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite bt-spin}@keyframes bt-spin{to{transform:rotate(360deg)}}.bt-error{padding:var(--sp-3) var(--sp-4);background:var(--red-subtle);color:var(--red-text);border-radius:var(--radius-md);font-size:13px}.bt-runs-empty{justify-content:center;align-items:center;gap:var(--sp-2);color:var(--text-tertiary);padding:var(--sp-6);text-align:center;flex-direction:column;flex:1;font-size:13px;display:flex}.bt-runs-count{color:var(--text-tertiary);padding:var(--sp-2) var(--sp-4);border-top:1px solid var(--border-light);font-size:12px}.phase-segment-tooltip{z-index:11;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-2,8px) var(--sp-3,12px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);white-space:nowrap;flex-direction:column;gap:2px;font-size:11px;line-height:1.4;display:flex;position:absolute;transform:translate(12px,12px);box-shadow:0 2px 8px #0000002e}.phase-segment-tooltip-phase{color:var(--text-primary,#1a1d23);font-size:12px;font-weight:700}.phase-segment-tooltip-row{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.phase-segment-tooltip-label{color:var(--text-tertiary,#8e97a3);font-size:10px;font-weight:500}.phase-segment-tooltip-value{color:var(--text-primary,#1a1d23);font-weight:500}.phase-segment-tooltip-bounds{color:var(--text-tertiary,#8e97a3);font-size:10px}.chart-legend-overlay{top:var(--sp-2,8px);left:var(--sp-3,12px);z-index:10;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-2,8px) var(--sp-3,12px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);flex-direction:column;gap:2px;font-size:11px;line-height:1.4;display:flex;position:absolute}.legend-ticker-row{align-items:baseline;gap:var(--sp-2,8px);display:flex}.legend-ticker-symbol{color:var(--text-primary,#1a1d23);font-size:13px;font-weight:700}.legend-ticker-name{font-family:var(--font-sans,"DM Sans", sans-serif);color:var(--text-tertiary,#8e97a3);font-size:11px}.legend-ohlcv-row{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.legend-label{color:var(--text-tertiary,#8e97a3);text-transform:uppercase;font-size:10px;font-weight:500}.legend-value{color:var(--text-primary,#1a1d23);margin-right:6px;font-weight:500}.legend-value.positive{color:var(--green,#10b981)}.legend-value.negative{color:var(--red,#ef4444)}.legend-change{margin-left:2px;font-weight:600}.legend-change.positive{color:var(--green,#10b981)}.legend-change.negative{color:var(--red,#ef4444)}.legend-indicators-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.legend-indicator-item{align-items:center;gap:3px;display:inline-flex}.legend-indicators-bb-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.legend-indicator-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.legend-indicator-label{color:var(--text-tertiary,#8e97a3);font-size:10px;font-weight:500}.legend-indicator-value{color:var(--text-primary,#1a1d23);font-weight:500}.macd-chart-wrapper{background:var(--surface-1,#fff);border-top:1px solid var(--border,#e2e6ea);width:100%;height:100%;position:relative}.macd-chart-container{width:100%;height:100%}.macd-legend{top:var(--sp-2,8px);left:var(--sp-3,12px);z-index:10;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-1,4px) var(--sp-2,8px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);align-items:baseline;gap:8px;font-size:11px;line-height:1.4;display:flex;position:absolute}.macd-legend-title{color:var(--text-primary,#1a1d23);font-weight:600}.macd-legend-item{align-items:center;gap:3px;display:inline-flex}.macd-legend-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.macd-legend-value{color:var(--text-primary,#1a1d23);font-weight:500}.macd-reset-scale{top:var(--sp-2,8px);z-index:10;pointer-events:auto;background:var(--surface-1,#fff);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-sm,6px);cursor:pointer;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);padding:2px 6px;font-size:11px;line-height:1.4;transition:color .15s,border-color .15s;position:absolute;right:60px}.macd-reset-scale:hover{color:var(--accent,#2962ff);border-color:var(--accent,#2962ff)}.rsi-chart-wrapper{background:var(--surface-1,#fff);border-top:1px solid var(--border,#e2e6ea);width:100%;height:100%;position:relative}.rsi-chart-container{width:100%;height:100%}.rsi-legend{top:var(--sp-2,8px);left:var(--sp-3,12px);z-index:10;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-1,4px) var(--sp-2,8px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);align-items:baseline;gap:8px;font-size:11px;line-height:1.4;display:flex;position:absolute}.rsi-legend-title{color:var(--text-primary,#1a1d23);font-weight:600}.rsi-legend-item{align-items:center;gap:3px;display:inline-flex}.rsi-legend-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.rsi-legend-value{color:var(--text-primary,#1a1d23);font-weight:500}.rsi-reset-scale{top:var(--sp-2,8px);z-index:10;pointer-events:auto;background:var(--surface-1,#fff);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-sm,6px);cursor:pointer;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);padding:2px 6px;font-size:11px;line-height:1.4;transition:color .15s,border-color .15s;position:absolute;right:60px}.rsi-reset-scale:hover{color:var(--accent,#2962ff);border-color:var(--accent,#2962ff)}.adx-chart-wrapper{background:var(--surface-1,#fff);border-top:1px solid var(--border,#e2e6ea);width:100%;height:100%;position:relative}.adx-chart-container{width:100%;height:100%}.adx-legend{top:var(--sp-2,8px);left:var(--sp-3,12px);z-index:10;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-1,4px) var(--sp-2,8px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);align-items:baseline;gap:8px;font-size:11px;line-height:1.4;display:flex;position:absolute}.adx-legend-title{color:var(--text-primary,#1a1d23);font-weight:600}.adx-legend-item{align-items:center;gap:3px;display:inline-flex}.adx-legend-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.adx-legend-value{color:var(--text-primary,#1a1d23);font-weight:500}.adx-reset-scale{top:var(--sp-2,8px);z-index:10;pointer-events:auto;background:var(--surface-1,#fff);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-sm,6px);cursor:pointer;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);padding:2px 6px;font-size:11px;line-height:1.4;transition:color .15s,border-color .15s;position:absolute;right:60px}.adx-reset-scale:hover{color:var(--accent,#2962ff);border-color:var(--accent,#2962ff)}.iv-chart-wrapper{background:var(--surface-1,#fff);border-top:1px solid var(--border,#e2e6ea);width:100%;height:100%;position:relative}.iv-chart-container{width:100%;height:100%}.iv-legend{top:var(--sp-2,8px);left:var(--sp-3,12px);z-index:10;pointer-events:none;background:var(--surface-1,#fff);padding:var(--sp-1,4px) var(--sp-2,8px);border-radius:var(--radius-sm,6px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);align-items:baseline;gap:8px;font-size:11px;line-height:1.4;display:flex;position:absolute}.iv-legend-title{color:var(--text-primary,#1a1d23);font-weight:600}.iv-legend-item{align-items:center;gap:3px;display:inline-flex}.iv-legend-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.iv-legend-label{color:var(--text-secondary,#5f6872)}.iv-legend-value{color:var(--text-primary,#1a1d23);font-weight:500}.iv-reset-scale{top:var(--sp-2,8px);z-index:10;pointer-events:auto;background:var(--surface-1,#fff);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-sm,6px);cursor:pointer;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary,#5f6872);padding:2px 6px;font-size:11px;line-height:1.4;transition:color .15s,border-color .15s;position:absolute;right:60px}.iv-reset-scale:hover{color:var(--accent,#2962ff);border-color:var(--accent,#2962ff)}.indicator-dialog-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#1a1d2373;justify-content:center;align-items:center;animation:.2s indicatorDialogFadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes indicatorDialogFadeIn{0%{opacity:0}to{opacity:1}}.indicator-dialog{background:var(--surface-1);width:340px;padding:var(--sp-6);border-radius:14px;animation:.25s cubic-bezier(.4,0,.2,1) indicatorDialogSlideIn;box-shadow:0 24px 48px #00000029}@keyframes indicatorDialogSlideIn{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.indicator-dialog-title{color:var(--text-primary);margin-bottom:var(--sp-4);font-size:16px;font-weight:600}.indicator-dialog-field{margin-bottom:var(--sp-4)}.indicator-dialog-label{color:var(--text-secondary);margin-bottom:var(--sp-1);font-size:12px;font-weight:500;display:block}.indicator-dialog-input{width:100%;height:40px;padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-0);color:var(--text-primary);font-family:var(--font-mono);box-sizing:border-box;outline:none;font-size:14px;transition:border-color .15s,box-shadow .15s}.indicator-dialog-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1a}.indicator-dialog-input.invalid{border-color:var(--red);box-shadow:0 0 0 3px #ef44441a}.indicator-dialog-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.indicator-dialog-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.indicator-dialog-input[type=number]{-moz-appearance:textfield}.indicator-dialog-hint{color:var(--text-tertiary);margin-top:4px;font-size:11px}.indicator-dialog-hint.error{color:var(--red)}.indicator-dialog-swatches{flex-wrap:wrap;gap:6px;display:flex}.indicator-dialog-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;outline:none;width:28px;height:28px;padding:0;transition:border-color .15s,transform .1s}.indicator-dialog-swatch:hover{transform:scale(1.15)}.indicator-dialog-swatch.selected{border-color:var(--text-primary)}.indicator-dialog-actions{justify-content:flex-end;gap:var(--sp-2);margin-top:var(--sp-5);display:flex}.indicator-dialog-btn-ghost{border-radius:var(--radius-md);height:36px;color:var(--text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s}.indicator-dialog-btn-ghost:hover{background:var(--surface-2);color:var(--text-primary)}.indicator-dialog-btn-primary{border-radius:var(--radius-md);height:36px;font-family:var(--font-sans);cursor:pointer;background:var(--accent);color:#fff;border:none;justify-content:center;align-items:center;padding:0 20px;font-size:13px;font-weight:600;transition:background .15s;display:inline-flex}.indicator-dialog-btn-primary:hover{background:var(--accent-hover)}.indicator-dialog-btn-primary:disabled{opacity:.5;cursor:not-allowed}.topbar{background:var(--surface-1);border-bottom:1px solid var(--border);width:100%;min-width:0;height:52px;position:relative;overflow:visible}.topbar-scroll{align-items:center;gap:var(--sp-4);height:100%;padding:0 var(--sp-5);scrollbar-width:none;-ms-overflow-style:none;min-width:0;display:flex;overflow:auto hidden}.topbar-scroll::-webkit-scrollbar{display:none}.ticker-autocomplete-wrapper{align-items:center;gap:var(--sp-2);flex:0 320px;min-width:180px;max-width:360px;display:flex}.perp-badge{border-radius:var(--radius-sm);background:var(--amber-bg,#f59e0b26);color:var(--amber-text,#f59e0b);border:1px solid var(--amber-text,#f59e0b);letter-spacing:.5px;text-transform:uppercase;flex-shrink:0;align-items:center;padding:2px 6px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.timeframe-group{background:var(--surface-2);border-radius:var(--radius-md);flex-shrink:0;align-items:center;gap:2px;padding:2px;display:flex}.timeframe-btn{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font-mono);background:0 0;border:none;flex-direction:column;align-items:center;gap:1px;padding:3px 10px;transition:all .15s;display:flex;position:relative}.timeframe-btn:hover{color:var(--text-primary)}.timeframe-btn.active{background:var(--surface-1);color:var(--text-primary);box-shadow:var(--shadow-sm)}.timeframe-btn.fibo-long:after,.timeframe-btn.fibo-short:after,.timeframe-btn.fibo-none:after,.timeframe-btn.fibo-invalid:after{content:"";border-radius:50%;width:5px;height:5px;position:absolute;bottom:2px;right:2px}.timeframe-btn.fibo-long:after{background:#16a34a}.timeframe-btn.fibo-short:after{background:#ef4444}.timeframe-btn.fibo-none:after{background:#9ca3af}.timeframe-btn.fibo-invalid:after{background:0 0;border:1px solid #9ca3af}.tf-phase-label{letter-spacing:.2px;font-size:9px;font-weight:600;line-height:1;font-family:var(--font-sans)}.tf-phase-label.trend_up{color:#16a34a}.tf-phase-label.trend_down{color:#ef4444}.tf-phase-label.range{color:#9ca3af}.tf-phase-label.transition{color:#f59e0b}.topbar-divider{background:var(--border);flex-shrink:0;width:1px;height:24px}.alerts-controls{align-items:center;gap:var(--sp-3);flex-shrink:0;display:flex}.topbar-toggle{align-items:center;gap:var(--sp-2);color:var(--text-secondary);font-size:12px;font-family:var(--font-mono);white-space:nowrap;display:inline-flex}.topbar-toggle input{accent-color:var(--accent)}.btn-icon{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-icon:hover{background:var(--surface-2);color:var(--text-primary)}.btn-icon .material-icons-outlined{font-size:18px}.btn-icon.panel-toggle-btn.active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.btn-text{align-items:center;gap:var(--sp-1);height:34px;padding:0 var(--sp-3) 0 var(--sp-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:var(--text-secondary);font-size:12px;font-weight:500;font-family:var(--font-mono);white-space:nowrap;cursor:pointer;flex-shrink:0;transition:all .15s;display:flex}.btn-text:hover{background:var(--surface-2);color:var(--text-primary)}.btn-text .material-icons-outlined{font-size:18px}.indicator-popover-anchor{flex-shrink:0;position:relative}.indicator-popover{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);width:320px;box-shadow:var(--shadow-lg);z-index:50;padding:var(--sp-3);animation:.15s popoverIn;display:none;position:absolute;top:calc(100% + 8px);right:0}.indicator-popover.open{display:block}@keyframes popoverIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.popover-section-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);padding:var(--sp-1) var(--sp-2);margin-top:var(--sp-2);font-size:10px;font-weight:600}.popover-section-title:first-child{margin-top:0}.popover-grid{margin-top:var(--sp-1);grid-template-columns:1fr 1fr;gap:4px;display:grid}.popover-item{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .1s;display:flex}.popover-item:hover{background:var(--surface-2)}.popover-item .pop-check{border:1.5px solid var(--border);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .1s;display:flex}.popover-item .pop-check .material-icons-outlined{color:#fff;font-size:12px;display:none}.popover-item.checked .pop-check{background:var(--accent);border-color:var(--accent)}.popover-item.checked .pop-check .material-icons-outlined{display:block}.popover-item .pop-color{border-radius:50%;flex-shrink:0;width:8px;height:8px}.popover-item .pop-label{font-family:var(--font-mono);color:var(--text-secondary);font-size:12px;font-weight:500}.popover-item.checked .pop-label{color:var(--text-primary)}.ema-list{margin-top:var(--sp-1);flex-direction:column;gap:2px;display:flex}.ema-row{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);border-radius:var(--radius-sm);transition:background .1s;display:flex}.ema-row:hover{background:var(--surface-2)}.ema-row.inactive{opacity:.5}.ema-row-color{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ema-row-label{font-family:var(--font-mono);color:var(--text-secondary);flex:1;min-width:0;font-size:12px;font-weight:500}.ema-row.inactive .ema-row-label{color:var(--text-tertiary)}.ema-row-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.ema-row-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .1s;display:flex}.ema-row-btn:hover{background:var(--surface-2);color:var(--text-primary)}.ema-row-btn .material-icons-outlined{font-size:16px}.ema-add-btn{align-items:center;gap:var(--sp-1);padding:6px var(--sp-2);border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-tertiary);font-family:var(--font-mono);cursor:pointer;background:0 0;margin-top:4px;font-size:12px;font-weight:500;transition:all .1s;display:flex}.ema-add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.ema-add-btn .material-icons-outlined{font-size:16px}.sma-list{margin-top:var(--sp-1);flex-direction:column;gap:2px;display:flex}.sma-row{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);border-radius:var(--radius-sm);transition:background .1s;display:flex}.sma-row:hover{background:var(--surface-2)}.sma-row.inactive{opacity:.5}.sma-row-color{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sma-row-label{font-family:var(--font-mono);color:var(--text-secondary);flex:1;min-width:0;font-size:12px;font-weight:500}.sma-row.inactive .sma-row-label{color:var(--text-tertiary)}.sma-row-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.sma-row-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .1s;display:flex}.sma-row-btn:hover{background:var(--surface-2);color:var(--text-primary)}.sma-row-btn .material-icons-outlined{font-size:16px}.sma-add-btn{align-items:center;gap:var(--sp-1);padding:6px var(--sp-2);border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-tertiary);font-family:var(--font-mono);cursor:pointer;background:0 0;margin-top:4px;font-size:12px;font-weight:500;transition:all .1s;display:flex}.sma-add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle)}.sma-add-btn .material-icons-outlined{font-size:16px}.fibo-list{margin-top:var(--sp-1);flex-direction:column;gap:2px;display:flex}.fibo-row{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);border-radius:var(--radius-sm);transition:background .1s;display:flex}.fibo-row:hover{background:var(--surface-2)}.fibo-row.inactive{opacity:.5}.fibo-row-label{font-family:var(--font-mono);color:var(--text-secondary);flex:1;min-width:0;font-size:12px;font-weight:500}.fibo-row.inactive .fibo-row-label{color:var(--text-tertiary)}.fibo-row-rename-input{min-width:0;font-family:var(--font-mono);color:var(--text-primary);background:var(--surface-2);border:1px solid var(--accent);border-radius:var(--radius-sm);outline:none;flex:1;padding:2px 6px;font-size:12px;font-weight:500}.fibo-row-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.fibo-row-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .1s;display:flex}.fibo-row-btn:hover{background:var(--surface-2);color:var(--text-primary)}.fibo-row-btn .material-icons-outlined{font-size:16px}.popover-overlay{z-index:49;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.popover-overlay.open{display:block}.sidebar-toggle-group{background:var(--surface-2);border-radius:var(--radius-md);flex-shrink:0;align-items:center;gap:2px;padding:2px;display:flex}.strategy-pnl-card{background:var(--surface-1,#fff);border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-md,8px);padding:var(--sp-3,12px) var(--sp-4,16px);margin:var(--sp-3,12px);gap:var(--sp-2,8px);flex-direction:column;display:flex}.strategy-pnl-card-header{justify-content:space-between;align-items:center;gap:var(--sp-2,8px);display:flex}.strategy-pnl-card-title{color:var(--text-secondary,#5f6872);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.strategy-pnl-card-net{color:var(--text-tertiary,#8e97a3);text-transform:lowercase;letter-spacing:0;margin-left:2px;font-size:11px;font-weight:500}.strategy-pnl-card-header-meta{align-items:center;gap:6px;display:flex}.strategy-pnl-card-status,.strategy-pnl-card-age{color:var(--text-tertiary,#8e97a3);font-size:11px;font-style:italic}.strategy-pnl-card-age.stale{color:#b45309}.strategy-pnl-card-rows{flex-direction:column;gap:4px;display:flex}.strategy-pnl-card-row{justify-content:space-between;align-items:center;gap:var(--sp-2,8px);display:flex}.strategy-pnl-card-label{color:var(--text-secondary,#5f6872);font-size:12px}.strategy-pnl-card-value{color:var(--text-primary,#1a1d23);font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.strategy-pnl-card-value.positive{color:#047857}.strategy-pnl-card-value.negative{color:#b91c1c}.strategy-pnl-card-placeholder,.strategy-pnl-card-empty,.strategy-pnl-card-loading{color:var(--text-tertiary,#8e97a3);text-align:center;padding:var(--sp-2,8px) 0;font-size:13px}.right-panel{border-left:1px solid var(--border);background:var(--surface-0);z-index:15;flex-direction:column;max-width:560px;transition:width .3s cubic-bezier(.4,0,.2,1),min-width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.right-panel.no-transition{transition:none!important}.resize-handle{cursor:col-resize;z-index:25;width:6px;transition:background .15s;position:absolute;top:0;bottom:0;left:-3px}.resize-handle:after{content:"";background:0 0;border-radius:1px;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:2px}.resize-handle:hover:after,.resize-handle.dragging:after{background:var(--accent)}.panel-header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;display:flex}.panel-title{color:var(--text-primary);font-size:14px;font-weight:600}.panel-count{color:var(--text-tertiary);font-size:12px;font-family:var(--font-mono);background:var(--surface-2);border-radius:10px;padding:2px 8px}.panel-filter-btn{width:28px;height:28px;color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.panel-filter-btn:hover{background:var(--surface-2);color:var(--text-secondary)}.panel-filter-btn .material-icons-outlined{font-size:18px}.scope-tabs{background:var(--surface-2);border-radius:var(--radius-md);margin:var(--sp-3) var(--sp-4) 0;align-items:center;gap:2px;padding:2px;display:flex}.scope-tabs button{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;flex:1;padding:4px 10px;transition:all .15s}.scope-tabs button:hover{color:var(--text-primary)}.scope-tabs button.active{background:var(--surface-1);color:var(--text-primary);box-shadow:var(--shadow-sm)}.btn-add-strategy{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-md);background:var(--green);color:#fff;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-sans);margin:var(--sp-3) var(--sp-4);border:none;transition:all .15s;display:flex}.btn-add-strategy:hover{background:#1e9684}.btn-add-strategy .material-icons-outlined{font-size:16px}.strategies-list{padding:var(--sp-2) var(--sp-3);gap:var(--sp-2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.strategies-list::-webkit-scrollbar{width:4px}.strategies-list::-webkit-scrollbar-track{background:0 0}.strategies-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.strategy-card-skeleton{background:var(--surface-2);border-radius:var(--radius-lg);border:1px solid var(--border);height:120px;animation:1.5s ease-in-out infinite skeleton-pulse}@keyframes skeleton-pulse{0%,to{opacity:.6}50%{opacity:.3}}.strategies-load-error{color:var(--text-secondary);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:24px 16px;font-size:13px;display:flex}.btn-retry-load{border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background:0 0;padding:4px 12px;font-size:12px}.btn-retry-load:hover{background:var(--surface-2)}.strategy-card{background:var(--surface-1);border-radius:var(--radius-lg);border:1px solid var(--border);padding:var(--sp-3) var(--sp-4);cursor:pointer;transition:all .15s;position:relative}.strategy-card:hover{background:var(--surface-2);box-shadow:var(--shadow-md);border-color:var(--border)}.strategy-card-header{margin-bottom:var(--sp-2);justify-content:space-between;align-items:center;display:flex}.strategy-ticker-group{align-items:center;gap:var(--sp-1);display:inline-flex}.strategy-ticker-badge{font-size:11px;font-weight:600;font-family:var(--font-mono);background:var(--accent-subtle);color:var(--accent);letter-spacing:.3px;white-space:nowrap;border-radius:4px;align-items:center;padding:1px 6px;display:inline-flex}.strategy-type{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);font-size:10px;font-weight:600}.strategy-actions{align-items:center;gap:var(--sp-1);display:flex}.strategy-menu-btn{width:24px;height:24px;color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.strategy-menu-btn:hover{background:var(--surface-2);color:var(--text-secondary)}.strategy-menu-btn .material-icons-outlined{font-size:16px}.strategy-switch-ticker-btn{width:20px;height:20px}.strategy-switch-ticker-btn .material-icons-outlined{font-size:14px}.strategy-visibility{width:24px;height:24px;color:var(--accent);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .1s;display:flex}.strategy-visibility:hover{background:var(--accent-subtle)}.strategy-visibility.hidden{color:var(--text-tertiary);opacity:.5}.strategy-visibility .material-icons-outlined{font-size:16px}.strategy-range{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);display:flex}.strategy-range-value{font-family:var(--font-mono);letter-spacing:-.5px;font-size:18px;font-weight:700}.strategy-range-separator{color:var(--text-tertiary);font-size:14px}.strategy-range-currency{font-family:var(--font-mono);color:var(--text-tertiary);margin-left:auto;font-size:11px}.strategy-indicators{margin-bottom:var(--sp-2);flex-wrap:wrap;gap:3px;display:flex}.mini-chip{font-family:var(--font-mono);background:var(--surface-2);color:var(--text-tertiary);border-radius:4px;padding:2px 6px;font-size:9px;font-weight:500}.strategy-meta{gap:var(--sp-3);margin-bottom:var(--sp-3);display:flex}.strategy-meta-item{flex-direction:column;gap:1px;display:flex}.strategy-meta-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.strategy-meta-value{font-family:var(--font-mono);color:var(--text-secondary);font-size:12px;font-weight:500}.buy-only-higher-badge{text-transform:uppercase;letter-spacing:.5px;background:var(--accent-subtle);color:var(--accent);margin-bottom:var(--sp-2);border-radius:4px;align-items:center;padding:2px 8px;font-size:10px;font-weight:600;display:inline-flex}.strategy-footer{padding-top:var(--sp-2);border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.status-badge{border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-badge .dot{border-radius:50%;width:6px;height:6px}.status-badge.running{background:var(--green-subtle);color:var(--green-text)}.status-badge.running .dot{background:var(--green);animation:2s ease-in-out infinite pulse}.status-badge.paused-by-ai{background:var(--orange-subtle);color:var(--orange-text)}.status-badge.paused-by-ai .dot{background:var(--orange)}.status-badge.stopped{background:var(--surface-2);color:var(--text-tertiary)}.status-badge.stopped .dot{background:var(--text-tertiary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.toggle-switch{background:var(--surface-3);cursor:pointer;border:none;border-radius:10px;flex-shrink:0;width:36px;height:20px;padding:0;transition:background .2s;position:relative}.toggle-switch.active{background:var(--green)}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000026}.toggle-switch.active:after{transform:translate(16px)}.panel-summary{padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);background:var(--surface-1)}.panel-summary-row{justify-content:space-between;align-items:center;display:flex}.panel-summary-row+.panel-summary-row{margin-top:6px}.panel-summary-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:11px}.panel-summary-value{font-family:var(--font-mono);font-size:13px;font-weight:600}.context-menu{z-index:150;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);min-width:160px;padding:4px 0;animation:.12s ctxIn;position:absolute;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014}@keyframes ctxIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.context-menu-item{align-items:center;gap:var(--sp-2);font-family:var(--font-sans);color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;padding:8px 14px;font-size:13px;transition:background .1s;display:flex}.context-menu-item:hover{background:var(--surface-2)}.context-menu-item .material-icons-outlined{color:var(--text-secondary);font-size:16px}.context-menu-item.danger,.context-menu-item.danger .material-icons-outlined{color:var(--red-text)}.context-menu-item.danger:hover{background:var(--red-subtle)}.context-menu-sep{background:var(--border);height:1px;margin:4px 0}.context-menu-item.sort-item.active{color:var(--accent);background:var(--accent-subtle)}.context-menu-item.sort-item.active .material-icons-outlined{color:var(--accent)}.sort-menu-anchor{position:relative}.sort-menu-anchor .context-menu{position:absolute;top:32px;left:auto;right:0}.ai-chat-sidebar .resize-handle{cursor:col-resize;z-index:25;width:6px;transition:background .15s;position:absolute;top:0;bottom:0;left:-3px}.ai-chat-sidebar .resize-handle:after{content:"";background:0 0;border-radius:1px;width:2px;transition:background .15s;position:absolute;top:0;bottom:0;left:2px}.ai-chat-sidebar .resize-handle:hover:after,.ai-chat-sidebar .resize-handle.dragging:after{background:var(--accent)}.ai-chat-sidebar{border-left:1px solid var(--border);background:var(--surface-0);z-index:15;flex-direction:column;max-width:560px;transition:width .3s cubic-bezier(.4,0,.2,1),min-width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.ai-chat-sidebar.no-transition{transition:none!important}.ai-chat-header{padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);background:var(--surface-1);justify-content:space-between;align-items:center;display:flex}.ai-chat-header-title{color:var(--text-primary);font-size:14px;font-weight:600}.ai-chat-header-actions{align-items:center;gap:var(--sp-2);display:flex}.ai-chat-header-ticker{color:var(--text-tertiary);font-size:12px;font-family:var(--font-mono);background:var(--surface-2);border-radius:10px;padding:2px 8px}.ai-chat-clear-btn{border:1px solid var(--border);background:var(--surface-0);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.ai-chat-clear-btn:hover:not(:disabled){border-color:var(--text-error,#ef4444);color:var(--text-error,#ef4444);background:var(--surface-error,#ef444414)}.ai-chat-clear-btn:disabled{color:var(--text-tertiary);background:var(--surface-1);cursor:not-allowed}.ai-chat-clear-btn .material-icons-outlined{font-size:18px}.ai-chat-disclaimer{align-items:flex-start;gap:var(--sp-2,8px);padding:var(--sp-2,8px) var(--sp-3,12px);background:var(--surface-warning,#f59e0b14);border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:12px;line-height:1.4;display:flex}.ai-chat-disclaimer-text{flex:1}.ai-chat-disclaimer-dismiss{width:20px;height:20px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .15s;display:inline-flex}.ai-chat-disclaimer-dismiss:hover{color:var(--text-primary)}.ai-chat-disclaimer-dismiss .material-icons-outlined{font-size:16px}.ai-chat-messages{padding:var(--sp-3);gap:var(--sp-2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-chat-messages::-webkit-scrollbar{width:4px}.ai-chat-messages::-webkit-scrollbar-track{background:0 0}.ai-chat-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.ai-chat-empty{padding:var(--sp-6) var(--sp-5);justify-content:center;align-items:center;gap:var(--sp-4);flex-direction:column;flex:1;display:flex}.ai-chat-empty-icon{background:var(--accent-subtle,#eef3ff);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.ai-chat-empty-icon svg{width:24px;height:24px;color:var(--accent,#2563eb)}.ai-chat-empty-text{text-align:center;flex-direction:column;gap:4px;display:flex}.ai-chat-empty-title{color:var(--text-primary);font-size:14px;font-weight:600}.ai-chat-empty-desc{color:var(--text-tertiary);font-size:12px;line-height:1.4}.ai-chat-empty-hints{gap:var(--sp-2,8px);flex-direction:column;width:100%;display:flex}.ai-chat-empty-hint{align-items:center;gap:var(--sp-2,8px);padding:var(--sp-2,8px) var(--sp-3,12px);border-radius:var(--radius-md,8px);border:1px solid var(--border,#e2e6ea);background:var(--surface-1,#fff);color:var(--text-secondary,#5f6872);font-size:12px;font-family:var(--font-sans);cursor:pointer;text-align:left;line-height:1.4;transition:all .15s;display:flex}.ai-chat-empty-hint:hover{border-color:var(--accent,#2563eb);background:var(--accent-subtle,#eef3ff);color:var(--accent-text,#1e40af)}.ai-chat-empty-hint-arrow{color:var(--text-tertiary);flex-shrink:0;margin-left:auto;font-size:14px;transition:color .15s}.ai-chat-empty-hint:hover .ai-chat-empty-hint-arrow{color:var(--accent,#2563eb)}.ai-chat-message{flex-direction:column;max-width:85%;animation:.15s msgIn;display:flex}@keyframes msgIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ai-chat-message.user{align-self:flex-end}.ai-chat-message.ai{align-self:flex-start}.ai-chat-message-bubble{padding:var(--sp-2) var(--sp-3);border-radius:var(--radius-lg);word-break:break-word;font-size:13px;line-height:1.5}.ai-chat-message.user .ai-chat-message-bubble{background:var(--accent);color:var(--text-inverse);border-bottom-right-radius:var(--radius-sm);white-space:pre-wrap}.ai-chat-message.ai .ai-chat-message-bubble{background:var(--surface-2);color:var(--text-primary);border-bottom-left-radius:var(--radius-sm)}.ai-chat-markdown>:first-child{margin-top:0}.ai-chat-markdown>:last-child{margin-bottom:0}.ai-chat-markdown p,.ai-chat-markdown ul,.ai-chat-markdown ol,.ai-chat-markdown pre{margin:0 0 var(--sp-2)}.ai-chat-markdown h1,.ai-chat-markdown h2,.ai-chat-markdown h3,.ai-chat-markdown h4{margin:0 0 var(--sp-2);font-weight:700;line-height:1.3}.ai-chat-markdown h1{font-size:18px}.ai-chat-markdown h2{font-size:16px}.ai-chat-markdown h3{font-size:14px}.ai-chat-markdown h4{font-size:13px}.ai-chat-markdown ul,.ai-chat-markdown ol{padding-left:18px}.ai-chat-markdown li+li{margin-top:4px}.ai-chat-markdown strong{font-weight:700}.ai-chat-markdown em{font-style:italic}.ai-chat-inline-code{font-family:var(--font-mono,"JetBrains Mono", monospace);background:#0f172a14;border-radius:4px;padding:0 4px;font-size:12px;line-height:1.4;display:inline-block}.ai-chat-code-block{padding:var(--sp-2);border-radius:var(--radius-md);white-space:pre;background:#0f172a14;overflow-x:auto}.ai-chat-code-block code{font-family:var(--font-mono,"JetBrains Mono", monospace);font-size:12px}.ai-chat-markdown-link{color:var(--accent);word-break:break-all;text-decoration:underline}.ai-chat-hr{border:none;border-top:1px solid var(--border-light,#eef1f4);margin:var(--sp-2,8px) 0}.ai-chat-table-wrap{margin:0 0 var(--sp-2,8px);border:1px solid var(--border-light,#eef1f4);border-radius:6px;overflow-x:auto}.ai-chat-table{border-collapse:collapse;width:100%;font-size:12px}.ai-chat-table th{text-align:left;color:var(--text-tertiary,#8e97a3);background:var(--surface-2,#f3f5f7);border-bottom:1px solid var(--border-light,#eef1f4);white-space:nowrap;padding:5px 8px;font-size:11px;font-weight:600}.ai-chat-table td{color:var(--text-primary,#1a1d23);border-bottom:1px solid var(--border-light,#eef1f4);vertical-align:top;padding:4px 8px}.ai-chat-table tr:last-child td{border-bottom:none}.ai-chat-table tr:hover td{background:var(--surface-0,#fafbfc)}.ai-chat-message-time{color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono);margin-top:2px}.ai-chat-message.user .ai-chat-message-time{text-align:right}.ai-chat-message.ai .ai-chat-message-time{text-align:left}.ai-chat-market-badge{color:var(--text-tertiary);align-self:flex-end;align-items:center;gap:3px;margin-top:1px;font-size:10px;display:inline-flex}.ai-chat-market-badge-icon{font-size:12px}.ai-chat-loading-history{padding:var(--sp-4) var(--sp-3);justify-content:center;align-self:center;align-items:center;gap:4px;display:flex}.ai-chat-loading-history-text{color:var(--text-tertiary);margin-left:4px;font-size:12px}.ai-chat-typing{padding:var(--sp-2) var(--sp-3);align-self:flex-start;align-items:center;gap:4px;display:flex}.ai-chat-typing-dot{background:var(--text-tertiary);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite typingBounce}.ai-chat-typing-dot:nth-child(2){animation-delay:.2s}.ai-chat-typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.bt-card{margin-top:var(--sp-2,8px);border-radius:var(--radius-lg,12px);border:1px solid var(--border,#e2e6ea);background:var(--surface-0,#fafbfc);border-left:3px solid var(--border,#e2e6ea);flex-direction:column;padding:0;display:flex;overflow:hidden}.bt-card.bt-completed{border-left-color:var(--text-success,#16a34a)}.bt-card.bt-running{border-left-color:var(--accent,#2563eb)}.bt-card.bt-queued{border-left-color:var(--text-warning,#f59e0b)}.bt-card.bt-failed{border-left-color:var(--text-error,#ef4444)}.bt-card.bt-cancelled{border-left-color:var(--text-tertiary,#9ca3af)}.bt-card-header{padding:10px 12px 0}.bt-card-title-group{align-items:center;gap:8px;min-width:0;display:flex}.bt-card-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:600;line-height:1.3;overflow:hidden}.bt-card-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:4px;flex-shrink:0;padding:3px 6px;font-size:10px;font-weight:600;line-height:1}.bt-card-badge.bt-completed{color:var(--text-success,#16a34a);background:#16a34a1a}.bt-card-badge.bt-running{color:var(--accent,#2563eb);background:#2563eb1a}.bt-card-badge.bt-queued{color:var(--text-warning,#d97706);background:#f59e0b1a}.bt-card-badge.bt-failed{color:var(--text-error,#ef4444);background:#ef44441a}.bt-card-badge.bt-cancelled{color:var(--text-tertiary,#9ca3af);background:#9ca3af1a}.bt-card-pnl{font-size:20px;font-weight:700;font-family:var(--font-mono,"JetBrains Mono", monospace);letter-spacing:-.5px;padding:2px 12px 0;line-height:1.2}.bt-card-pnl.positive{color:var(--text-success,#16a34a)}.bt-card-pnl.negative{color:var(--text-error,#ef4444)}.bt-card-metrics{background:var(--border,#e2e6ea);border-radius:var(--radius-md,8px);gap:1px;margin:4px 10px 0;display:flex;overflow:hidden}.bt-card-metric{background:var(--surface-1,#f1f3f5);flex-direction:column;flex:1;gap:3px;min-width:0;padding:7px 8px;display:flex}.bt-card-metric-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;line-height:1;overflow:hidden}.bt-card-metric-value{font-size:13px;font-weight:700;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-primary);line-height:1}.bt-card-metric-value.negative{color:var(--text-error,#ef4444)}.bt-card-footer{flex-wrap:wrap;align-items:center;gap:5px;padding:6px 12px 10px;display:flex}.bt-card-tag{font-size:10px;font-weight:600;font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-secondary);background:var(--surface-2,#e9ecef);border-radius:4px;padding:2px 6px;line-height:1.3}.bt-card-date{color:var(--text-tertiary);font-size:10px;font-family:var(--font-mono,"JetBrains Mono", monospace);margin-left:auto}.bt-chart-toggle-btn{border:1px solid var(--surface-3,#dee2e6);cursor:pointer;width:24px;height:24px;color:var(--text-tertiary);background:0 0;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s;display:inline-flex}.bt-chart-toggle-btn:hover{border-color:var(--text-secondary);color:var(--text-secondary)}.bt-chart-toggle-btn .material-icons-outlined{font-size:14px}.bt-chart-toggle-btn.buy.active{color:#26a69a;border-color:#26a69a}.bt-chart-toggle-btn.sell.active{color:#ef5350;border-color:#ef5350}.ai-chat-error{padding:var(--sp-2) var(--sp-3);margin:0 var(--sp-3);color:var(--text-error,#ef4444);background:var(--surface-error,#ef444414);border-radius:var(--radius-md);text-align:center;font-size:12px}.ai-chat-dialog-copy{color:var(--text-primary);font-size:14px;line-height:1.5}.ai-chat-dialog-error{margin-top:var(--sp-3);padding:var(--sp-2) var(--sp-3);color:var(--text-error,#ef4444);background:var(--surface-error,#ef444414);border-radius:var(--radius-md);font-size:12px}.ai-chat-input-area{padding:var(--sp-3);border-top:1px solid var(--border);background:var(--surface-1);position:relative}.ai-chat-input-row{align-items:flex-end;gap:var(--sp-2);display:flex}.ai-chat-input{resize:none;border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--sp-2) var(--sp-3);font-family:var(--font-sans);color:var(--text-primary);background:var(--surface-0);outline:none;flex:1;min-height:36px;max-height:120px;font-size:13px;line-height:1.5;transition:border-color .15s}.ai-chat-input::placeholder{color:var(--text-tertiary)}.ai-chat-input:focus{border-color:var(--accent)}.ai-chat-quick-actions-wrapper{flex-shrink:0;position:relative}.ai-chat-quick-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-0);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.ai-chat-quick-btn:hover,.ai-chat-quick-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-subtle,#eef3ff)}.ai-chat-quick-btn.active svg{transform:rotate(45deg)}.ai-chat-quick-btn svg{transition:transform .2s}.ai-chat-quick-dropdown{background:var(--surface-0);border:1px solid var(--border);border-radius:var(--radius-lg,12px);z-index:100;min-width:240px;animation:.15s quickDropdownIn;position:absolute;bottom:calc(100% + 8px);left:0;overflow:hidden;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014}@keyframes quickDropdownIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ai-chat-quick-dropdown-header{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:10px 14px 6px;font-size:11px;font-weight:600}.ai-chat-quick-dropdown-item{width:100%;font-family:var(--font-sans);color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:8px 14px;font-size:13px;transition:background .1s;display:flex}.ai-chat-quick-dropdown-item:hover{background:var(--accent-subtle,#eef3ff)}.ai-chat-quick-dropdown-item:last-child{margin-bottom:4px}.ai-chat-quick-dropdown-icon{text-align:center;flex-shrink:0;width:20px;font-size:15px}.ai-chat-quick-dropdown-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ai-chat-analyze-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-0);width:36px;height:36px;color:var(--accent);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.ai-chat-analyze-btn:hover:not(:disabled){border-color:var(--accent);background:var(--accent-subtle,#eef3ff)}.ai-chat-analyze-btn:disabled{color:var(--text-tertiary);background:var(--surface-1);cursor:not-allowed}.ai-chat-analyze-btn .material-icons-outlined{font-size:18px}.ai-chat-send-btn{border-radius:var(--radius-md);background:var(--accent);width:36px;height:36px;color:var(--text-inverse);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.ai-chat-send-btn:hover:not(:disabled){background:var(--accent-hover)}.ai-chat-send-btn:disabled{background:var(--surface-3);color:var(--text-tertiary);cursor:not-allowed}.ai-chat-send-btn .material-icons-outlined{font-size:18px}@keyframes ai-chat-word-fade{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.ai-chat-message.ai .word-fade{opacity:0;animation:.24s ease-out forwards ai-chat-word-fade;display:inline-block}.ai-chat-message.ai .word-fade-list{padding-left:0;list-style:none}.ai-chat-message.ai .word-fade-list>li{align-items:baseline;gap:.5em;display:flex}.ai-chat-message.ai .word-fade-li-body{flex:1;min-width:0}.ai-chat-message.ai .word-fade-marker{flex:none;font-size:1.15em;line-height:1}@media (prefers-reduced-motion:reduce){.ai-chat-message.ai .word-fade{opacity:1;animation:none}}.chart-splitter{cursor:row-resize;background:var(--border,#e2e6ea);flex-shrink:0;width:100%;height:6px;transition:background .15s;position:relative}.chart-splitter:before{content:"";position:absolute;top:-4px;bottom:-4px;left:0;right:0}.chart-splitter:hover,.chart-splitter.dragging{background:var(--accent,#2962ff)}.chart-splitter-dots{gap:3px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chart-splitter-dot{background:var(--text-secondary,#5f6872);border-radius:50%;width:3px;height:3px}.chart-splitter:hover .chart-splitter-dot,.chart-splitter.dragging .chart-splitter-dot{background:#fff}.alerts-dialog .MuiPaper-root{background:#fff;border-radius:16px;flex-direction:column;width:480px;max-width:480px;max-height:85vh;margin:0;padding:0;display:flex;overflow:hidden;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.alerts-backdrop.MuiBackdrop-root{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1a1d2373}.al-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px 16px;display:flex}.al-header-left{flex-direction:column;gap:2px;display:flex}.al-title{color:#1a1d23;margin:0;font-family:DM Sans,sans-serif;font-size:16px;font-weight:700}.al-subtitle{color:#8e97a3;font-family:JetBrains Mono,monospace;font-size:12px}.al-close{color:#8e97a3;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:all .15s;display:flex}.al-close:hover{color:#1a1d23;background:#f3f5f7}.al-body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:0 24px 20px;display:flex;overflow-y:auto}.al-body::-webkit-scrollbar{width:4px}.al-body::-webkit-scrollbar-thumb{background:#e2e6ea;border-radius:2px}.al-add-row{justify-content:flex-end;display:flex}.al-btn-add{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;height:34px;padding:0 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #2563eb4d}.al-btn-add:hover{background:#1d4fd7}.al-form{background:#f8faff;border:1.5px solid #2563eb;border-radius:10px;flex-direction:column;gap:12px;padding:16px;display:flex}.al-form-title{text-transform:uppercase;letter-spacing:.8px;color:#2563eb;font-family:DM Sans,sans-serif;font-size:12px;font-weight:600}.al-form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.al-field{flex-direction:column;gap:4px;display:flex}.al-field-label{color:#5f6872;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500}.al-field-input{color:#1a1d23;box-sizing:border-box;background:#fff;border:1px solid #e2e6ea;border-radius:8px;outline:none;width:100%;height:38px;padding:0 12px;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s}.al-field-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.al-field-input::placeholder{color:#c5cdd6;font-weight:400}.al-field-input-text{font-family:DM Sans,sans-serif}.al-field-textarea{color:#1a1d23;box-sizing:border-box;resize:vertical;background:#fff;border:1px solid #e2e6ea;border-radius:8px;outline:none;width:100%;min-height:60px;padding:10px 12px;font-family:DM Sans,sans-serif;font-size:13px;transition:border-color .15s,box-shadow .15s}.al-field-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.al-field-textarea::placeholder{color:#c5cdd6}.al-field-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.al-field-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.al-field-input[type=number]{-moz-appearance:textfield}.al-form-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.al-btn-save{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;height:34px;padding:0 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #2563eb4d}.al-btn-save:hover{background:#1d4fd7}.al-btn-save:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.al-btn-cancel{color:#5f6872;cursor:pointer;background:0 0;border:none;border-radius:8px;height:34px;padding:0 14px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .15s}.al-btn-cancel:hover{color:#1a1d23;background:#f3f5f7}.al-section{flex-direction:column;display:flex}.al-section-title{text-transform:uppercase;letter-spacing:.8px;color:#8e97a3;border-bottom:1px solid #eef1f4;margin-bottom:4px;padding-bottom:8px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:600}.al-section-empty{color:#c5cdd6;padding:12px 0;font-family:DM Sans,sans-serif;font-size:13px}.al-row{border-bottom:1px solid #f3f5f7;align-items:center;gap:10px;padding:10px 0;transition:background .1s;display:flex}.al-row:last-child{border-bottom:none}.al-row.inactive{opacity:.6}.al-row-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.al-row-main{align-items:center;gap:8px;display:flex}.al-row-price{color:#1a1d23;font-family:JetBrains Mono,monospace;font-size:14px;font-weight:600}.al-row-title{color:#8e97a3;text-overflow:ellipsis;white-space:nowrap;font-family:DM Sans,sans-serif;font-size:12px;overflow:hidden}.al-badge{border-radius:10px;flex-shrink:0;align-items:center;padding:1px 8px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:500;display:inline-flex}.al-badge.active{color:#047857;background:#ecfdf5}.al-badge.triggered{color:#5f6872;background:#f3f5f7}.al-badge.expired{color:#92400e;background:#fffbeb}.al-row-note{color:#8e97a3;text-overflow:ellipsis;white-space:nowrap;font-family:DM Sans,sans-serif;font-size:11px;overflow:hidden}.al-row-actions{flex-shrink:0;gap:2px;display:flex}.al-row-btn{color:#8e97a3;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;transition:all .15s;display:flex}.al-row-btn:hover{color:#1a1d23;background:#f3f5f7}.al-row-btn.danger:hover{color:#ef4444;background:#fef2f2}.al-row-btn svg{width:16px;height:16px}.al-error-bar{color:#b91c1c;background:#fef2f2;border:1px solid #ef44441f;border-radius:8px;align-items:center;gap:8px;padding:8px 14px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:500;line-height:1.4;display:flex}.al-footer{border-top:1px solid #eef1f4;flex-shrink:0;justify-content:flex-end;align-items:center;padding:14px 24px;display:flex}.al-btn-close{color:#5f6872;cursor:pointer;background:0 0;border:none;border-radius:8px;height:34px;padding:0 16px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;transition:all .15s}.al-btn-close:hover{color:#1a1d23;background:#f3f5f7}.place-order-modal.MuiPaper-root{background:var(--surface-1,#fff);border-radius:16px;width:420px;max-width:420px;max-height:90vh;margin:0;padding:0;overflow-y:auto;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.place-order-modal.MuiPaper-root::-webkit-scrollbar{width:4px}.place-order-modal.MuiPaper-root::-webkit-scrollbar-thumb{background:var(--border,#e2e6ea);border-radius:2px}.place-order-modal .ts-header{padding:var(--sp-5,20px) var(--sp-6,24px);border-bottom:1px solid var(--border-light,#eef1f4);justify-content:space-between;align-items:center;display:flex}.place-order-modal .ts-header-left{flex-direction:column;gap:2px;display:flex}.place-order-modal .ts-title{color:var(--text-primary,#1a1d23);font-size:16px;font-weight:700;font-family:var(--font-sans,"DM Sans", sans-serif)}.place-order-modal .ts-subtitle-row{align-items:center;gap:6px;display:flex}.place-order-modal .ts-subtitle{color:var(--text-tertiary,#8e97a3);font-size:12px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.place-order-modal .ts-subtitle-sep{color:var(--border,#e2e6ea);font-size:12px}.place-order-modal .ts-subtitle-info{color:var(--text-tertiary,#8e97a3);font-size:11px;font-family:var(--font-mono,"JetBrains Mono", monospace)}.place-order-modal .ts-body{padding:var(--sp-5,20px) var(--sp-6,24px);gap:var(--sp-5,20px);flex-direction:column;display:flex}.place-order-modal .ts-field-group{gap:var(--sp-3,12px);flex-direction:column;display:flex}.place-order-modal .ts-field-group-title{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary,#8e97a3);font-size:10px;font-weight:600}.place-order-modal .ts-field{gap:var(--sp-1,4px);flex-direction:column;display:flex}.place-order-modal .ts-field-label{color:var(--text-secondary,#5f6872);font-size:12px;font-weight:500;font-family:var(--font-sans,"DM Sans", sans-serif)}.place-order-modal .ts-field-input{height:40px;padding:0 var(--sp-3,12px);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);font-family:var(--font-mono,"JetBrains Mono", monospace);color:var(--text-primary,#1a1d23);background:var(--surface-1,#fff);box-sizing:border-box;outline:none;width:100%;font-size:14px;font-weight:500;transition:border-color .15s,box-shadow .15s}.place-order-modal .ts-field-input:focus{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb1a}.place-order-modal .ts-field-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.place-order-modal .ts-field-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.place-order-modal .ts-field-input[type=number]{-moz-appearance:textfield}.place-order-modal .ts-field-hint{color:var(--text-tertiary,#8e97a3);margin-top:2px;font-size:11px}.place-order-modal .ts-field-select{height:40px;padding:0 var(--sp-3,12px);border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);font-family:var(--font-sans,"DM Sans", sans-serif);color:var(--text-primary,#1a1d23);background:var(--surface-1,#fff);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-sizing:border-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238E97A3' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;outline:none;width:100%;padding-right:36px;font-size:13px;transition:border-color .15s}.place-order-modal .ts-field-select:focus{border-color:var(--accent,#2563eb);box-shadow:0 0 0 3px #2563eb1a}.place-order-modal .ts-field-row{gap:var(--sp-3,12px);grid-template-columns:1fr 1fr;display:grid}.place-order-modal .ts-info-alert{align-items:center;gap:var(--sp-2,8px);padding:var(--sp-3,12px) var(--sp-4,16px);background:var(--accent-subtle,#eef3ff);border-radius:var(--radius-md,8px);color:var(--accent-text,#1e40af);border:1px solid #2563eb26;font-size:13px;display:flex}.place-order-modal .ts-error-bar{align-items:center;gap:var(--sp-2,8px);padding:var(--sp-2,8px) var(--sp-4,16px) var(--sp-2,8px) var(--sp-6,24px);background:var(--red-subtle,#fef2f2);color:var(--red-text,#b91c1c);border-top:1px solid #ef444426;flex-shrink:0;font-size:12px;font-weight:500;line-height:1.4;display:flex}.place-order-modal .ts-error-bar-text{flex:1;min-width:0}.place-order-modal .ts-error-bar-close{width:24px;height:24px;color:var(--red-text,#b91c1c);cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:opacity .15s;display:flex}.place-order-modal .ts-error-bar-close:hover{opacity:1;background:#ef44441a}.place-order-modal .ts-footer{justify-content:flex-end;align-items:center;gap:var(--sp-3,12px);padding:var(--sp-4,16px) var(--sp-6,24px);border-top:1px solid var(--border-light,#eef1f4);display:flex}.place-order-modal .ts-btn-ghost{height:36px;padding:0 var(--sp-4,16px);border-radius:var(--radius-md,8px);color:var(--text-secondary,#5f6872);font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:500;transition:all .15s}.place-order-modal .ts-btn-ghost:hover{background:var(--surface-2,#f3f5f7);color:var(--text-primary,#1a1d23)}.place-order-modal .ts-btn-ghost:disabled{opacity:.5;cursor:not-allowed}.place-order-modal .ts-btn-primary{height:36px;padding:0 var(--sp-5,20px);border-radius:var(--radius-md,8px);background:var(--accent,#2563eb);color:#fff;font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;border:none;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 1px 2px #2563eb4d}.place-order-modal .ts-btn-primary:hover{background:var(--accent-hover,#1d4fd7)}.place-order-modal .ts-btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.place-order-modal .po-btn-buy{background:var(--green,#10b981);box-shadow:0 1px 2px #10b9814d}.place-order-modal .po-btn-buy:hover{background:var(--green-text,#047857)}.place-order-modal .po-btn-sell{background:var(--red,#ef4444);box-shadow:0 1px 2px #ef44444d}.place-order-modal .po-btn-sell:hover{background:var(--red-text,#b91c1c)}.po-direction-toggle{border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-md,8px);grid-template-columns:1fr 1fr;gap:0;display:grid;overflow:hidden}.po-dir-btn{background:var(--surface-1,#fff);height:40px;font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;color:var(--text-tertiary,#8e97a3);border:none;font-size:13px;font-weight:600;transition:all .15s}.po-dir-btn:first-child{border-right:1px solid var(--border,#e2e6ea)}.po-dir-buy.active{background:var(--green-subtle,#ecfdf5);color:var(--green-text,#047857)}.po-dir-sell.active{background:var(--red-subtle,#fef2f2);color:var(--red-text,#b91c1c)}.po-kind-selector{gap:var(--sp-2,8px);grid-template-columns:1fr 1fr 1fr;display:grid}.po-kind-btn{border:1px solid var(--border,#e2e6ea);border-radius:var(--radius-sm,6px);background:var(--surface-1,#fff);height:36px;font-family:var(--font-sans,"DM Sans", sans-serif);cursor:pointer;color:var(--text-secondary,#5f6872);font-size:12px;font-weight:500;transition:all .15s}.po-kind-btn:hover{border-color:var(--accent,#2563eb);color:var(--accent-text,#1e40af)}.po-kind-btn.active{background:var(--accent-subtle,#eef3ff);border-color:var(--accent,#2563eb);color:var(--accent-text,#1e40af)}.drawing-toolbar{background:0 0;border-right:1px solid #e2e6ea;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;width:40px;padding:6px 0;display:flex}.drawing-toolbar__btn{color:#8e97a3!important;border-radius:6px!important;width:32px!important;height:32px!important;transition:color .15s,background .15s!important}.drawing-toolbar__btn:hover{color:#1a1d23!important;background:#f3f5f7!important}.drawing-toolbar__btn--active{color:#2563eb!important;background:#eef3ff!important}.drawing-toolbar__btn--active:hover{background:#dbe6fd!important}.option-board{background:var(--surface-1,#fff);border:1px solid var(--border-light,#eef1f4);border-radius:var(--radius-md,8px);padding:var(--sp-3,12px);font-family:var(--font-mono,"JetBrains Mono", "SF Mono", "Fira Code", monospace);color:var(--text-primary,#1a1d23)}.option-board__header{align-items:center;gap:var(--sp-3,12px);margin-bottom:var(--sp-2,8px);flex-wrap:wrap;display:flex}.option-board__expirations{background:var(--surface-2,#f3f5f7);border-radius:var(--radius-md,8px);flex-wrap:wrap;gap:2px;padding:2px;display:flex}.option-board__exp-btn{color:var(--text-secondary,#5f6872);cursor:pointer;border-radius:var(--radius-sm,6px);background:0 0;border:none;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.option-board__exp-btn:hover{color:var(--text-primary,#1a1d23)}.option-board__exp-btn--active{background:var(--surface-1,#fff);color:var(--text-primary,#1a1d23);box-shadow:var(--shadow-sm,0 1px 2px #0000000a)}.option-board__underlying{color:var(--text-secondary,#5f6872);align-items:baseline;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.option-board__underlying-value{color:var(--text-primary,#1a1d23);font-weight:600}.option-board__banner{background:var(--orange-subtle,#fffbeb);color:var(--orange-text,#92400e);border-radius:var(--radius-sm,6px);margin-bottom:var(--sp-2,8px);border:1px solid #fde68a;padding:6px 10px;font-size:12px}.option-board__status,.option-board__empty,.option-board__error{color:var(--text-tertiary,#8e97a3);padding:var(--sp-3,12px);text-align:center;font-size:13px}.option-board__error{color:var(--red-text,#b91c1c)}.option-board__table-wrap{overflow-x:auto}.option-board__table{border-collapse:collapse;width:100%;font-size:12px}.option-board__table thead th{background:var(--surface-2,#f3f5f7);color:var(--text-secondary,#5f6872);text-align:right;border-bottom:1px solid var(--border,#e2e6ea);padding:4px 6px;font-weight:600}.option-board__group{text-transform:uppercase;letter-spacing:.04em;text-align:center!important}.option-board__group--call{color:var(--green-text,#047857)}.option-board__group--put{color:var(--red-text,#b91c1c)}.option-board__group--strike{color:var(--text-primary,#1a1d23);text-align:center!important}.option-board__cell{text-align:right;border-bottom:1px solid var(--border-light,#eef1f4);color:var(--text-primary,#1a1d23);font-variant-numeric:tabular-nums;padding:3px 6px}.option-board__cell--theor{color:var(--text-secondary,#5f6872)}.option-board__cell--greek{color:var(--text-secondary,#5f6872);font-size:.92em}.option-board__strike{text-align:center;color:var(--text-primary,#1a1d23);background:var(--surface-2,#f3f5f7);border-left:1px solid var(--border,#e2e6ea);border-right:1px solid var(--border,#e2e6ea);border-bottom:1px solid var(--border-light,#eef1f4);padding:3px 8px;font-weight:600}.option-board__cell--itm-call{background:#22c55e0d}.option-board__cell--itm-put{background:#ef44440d}.option-board__row--atm .option-board__strike{outline:1px solid var(--accent,#2563eb);outline-offset:-1px}.option-board__row--atm{box-shadow:inset 0 0 0 1px var(--accent,#2563eb)}.terminal-page{--surface-0:#fafbfc;--surface-1:#fff;--surface-2:#f3f5f7;--surface-3:#e8ecf0;--border:#e2e6ea;--border-light:#eef1f4;--text-primary:#1a1d23;--text-secondary:#5f6872;--text-tertiary:#8e97a3;--text-inverse:#fff;--accent:#2563eb;--accent-hover:#1d4fd7;--accent-subtle:#eef3ff;--accent-text:#1e40af;--green:#10b981;--green-subtle:#ecfdf5;--green-text:#047857;--red:#ef4444;--red-subtle:#fef2f2;--red-text:#b91c1c;--orange:#f59e0b;--orange-subtle:#fffbeb;--orange-text:#92400e;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 2px #0000000a;--shadow-md:0 2px 8px #0000000f;--shadow-lg:0 4px 16px #00000014;--shadow-card:0 1px 3px #0000000a, 0 0 0 1px #00000008;--font-sans:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SF Mono", "Fira Code", monospace;font-family:var(--font-sans);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}.terminal-page .MuiAutocomplete-root{width:100%}.terminal-page .MuiOutlinedInput-root{background:var(--surface-1);border-radius:var(--radius-md);font-family:var(--font-mono);height:36px;font-size:13px;padding:2px var(--sp-2)!important}.terminal-page .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline{border-color:var(--border);transition:border-color .15s}.terminal-page .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--accent)}.terminal-page .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--accent);border-width:1.5px}.terminal-page .MuiInputBase-input{font-family:var(--font-mono);color:var(--text-primary);font-size:13px;font-weight:500;padding:0!important}.terminal-page .MuiInputLabel-root{font-family:var(--font-sans);color:var(--text-tertiary);font-size:13px}.terminal-page .MuiInputLabel-root.Mui-focused{color:var(--accent)}.terminal-page .MuiAutocomplete-paper{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin-top:4px}.terminal-page .MuiAutocomplete-listbox{padding:var(--sp-1) 0;font-family:var(--font-mono);font-size:13px}.terminal-page .MuiAutocomplete-option{font-family:var(--font-mono);color:var(--text-secondary);border-radius:0;font-size:13px;padding:var(--sp-2) var(--sp-3)!important;min-height:unset!important}.terminal-page .MuiAutocomplete-option:hover,.terminal-page .MuiAutocomplete-option[data-focus=true]{color:var(--text-primary);background:var(--surface-2)!important}.terminal-page .MuiAutocomplete-option[aria-selected=true]{color:var(--accent-text);background:var(--accent-subtle)!important}.drag-confirm-dialog .MuiPaper-root{border-radius:16px;width:360px;max-width:90vw;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden;box-shadow:0 24px 48px #00000029,0 0 0 1px #0000000a}.drag-confirm-dialog .MuiDialogTitle-root{color:#1a1d23;padding:16px 20px 8px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:700}.drag-confirm-dialog .MuiDialogContent-root{padding:8px 20px 16px}.drag-confirm-dialog .drag-confirm-label{color:#5f6872;margin-bottom:8px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500}.drag-confirm-dialog .drag-confirm-prices{color:#1a1d23;align-items:center;gap:12px;font-family:JetBrains Mono,SF Mono,Fira Code,monospace;font-size:18px;font-weight:600;display:flex}.drag-confirm-dialog .drag-confirm-sep{color:#8e97a3;font-size:16px;font-weight:400}.drag-confirm-dialog .drag-confirm-dir{margin-left:-4px;font-size:12px}.drag-confirm-dialog .drag-confirm-dir.up{color:#10b981}.drag-confirm-dialog .drag-confirm-dir.down{color:#ef4444}.drag-confirm-dialog .drag-confirm-error{color:#b91c1c;background:#fef2f2;border-radius:6px;margin-top:12px;padding:8px 12px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;font-weight:500}.drag-confirm-dialog .MuiDialogActions-root{border-top:1px solid #eef1f4;gap:8px;padding:12px 20px}.drag-confirm-dialog .btn-cancel{color:#5f6872;text-transform:none;border-radius:8px;min-width:0;padding:8px 16px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500}.drag-confirm-dialog .btn-cancel:hover{color:#1a1d23;background:#f3f5f7}.drag-confirm-dialog .btn-save{text-transform:none;color:#fff;box-shadow:none;background:#2563eb;border-radius:8px;min-width:0;padding:8px 20px;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:600}.drag-confirm-dialog .btn-save:hover{box-shadow:none;background:#1d4fd7}.drag-confirm-dialog .btn-save:disabled{color:#8e97a3;background:#e8ecf0}.chart-context-menu{z-index:1200;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);min-width:168px;box-shadow:var(--shadow-lg);padding:var(--sp-1)}.chart-context-menu-item{width:100%;color:var(--text-primary);text-align:left;cursor:pointer;border-radius:var(--radius-sm);font-family:var(--font-sans);background:0 0;border:none;padding:8px 10px;font-size:13px;font-weight:500}.chart-context-menu-item:hover{background:var(--surface-2)}.chart-context-menu-separator{background:var(--border);height:1px;margin:var(--sp-1) 0}.chart-context-menu-item--danger{color:var(--red)}.chart-context-menu-item--danger:hover{background:var(--red-subtle)}
