.trading-chart-wrapper{background:var(--bg-primary);display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.trading-chart{flex:1 1;min-height:400px;overflow:hidden;width:100%}.indicator-chart{background:var(--bg-primary);border-top:1px solid var(--border-primary);overflow:hidden;position:relative;width:100%}.indicator-chart>div{width:100%!important}.indicator-chart>.indicator-label{background:#0f1419e6;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);font-weight:600;left:12px;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase;top:8px;z-index:10}.indicator-chart>.indicator-label,.pattern-marker{font-family:JetBrains Mono,monospace;font-size:.65rem;position:absolute}.pattern-marker{align-items:center;border-radius:50%;cursor:pointer;display:flex;font-weight:700;height:20px;justify-content:center;transition:transform var(--transition-fast);width:20px}.pattern-marker:hover{transform:scale(1.2)}.pattern-marker.bullish{background:#0f83;border:2px solid var(--accent-green);color:var(--accent-green)}.pattern-marker.bearish{background:#f363;border:2px solid var(--accent-red);color:var(--accent-red)}.pattern-line{pointer-events:none;position:absolute}.pattern-line.bullish{stroke:var(--accent-green)}.pattern-line.bearish{stroke:var(--accent-red)}.fib-level{height:1px;left:0;pointer-events:none;position:absolute;right:0}.fib-level-label{background:#0f1419e6;border:1px solid;border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:500;padding:2px 6px;position:absolute;right:8px;transform:translateY(-50%)}.fib-level.retracement{background:#ffcc004d}.fib-level.extension{background:#9945ff4d}.fib-level.fe{background:#00f0ff4d}.fib-level.target{background:#00ff884d}.chart-loading{align-items:center;background:#060810e6;display:flex;inset:0;justify-content:center;position:absolute;z-index:100}.tv-lightweight-charts .tv-crosshair-label{font-family:JetBrains Mono,monospace!important}@media (max-width:768px){.trading-chart-wrapper{flex:1 1;min-height:0;overflow-y:auto}.trading-chart{flex-shrink:0;min-height:250px}.indicator-chart{flex-shrink:0}.indicator-chart>div{height:85px!important}}.indicator-controls{align-items:center;display:flex;flex-direction:column;gap:2px}.controls-label{color:var(--text-muted);font-size:.5rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.controls-buttons{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);display:flex;gap:2px;padding:2px}.indicator-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.55rem;gap:3px;padding:3px 6px;transition:all var(--transition-fast)}.indicator-btn:hover{background:#ffffff0d;color:var(--text-primary)}.indicator-btn.active{background:var(--accent-cyan)}.indicator-btn.active,.indicator-btn.active .indicator-icon{color:var(--bg-primary)}.indicator-icon{color:var(--accent-cyan);font-size:.65rem;transition:color var(--transition-fast)}.indicator-label{font-family:JetBrains Mono,monospace;font-weight:600;letter-spacing:.02em}@media (max-width:768px){.controls-label,.indicator-label{display:none}}.save-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.save-modal{animation:slideUp .3s ease-out;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:0 10px 40px #00000080,0 0 60px #00f0ff1a;max-width:450px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.save-modal-header{align-items:center;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.save-modal-header h3{align-items:center;color:var(--text-primary);display:flex;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:600;gap:var(--spacing-sm)}.save-modal-header .close-btn{background:#0000;border:none;color:var(--text-muted);cursor:pointer;font-size:1.5rem;line-height:1;padding:0;transition:color var(--transition-fast)}.save-modal-header .close-btn:hover{color:var(--text-primary)}.save-modal-content{padding:var(--spacing-lg)}.save-modal-info{background:#00f0ff0d;border:1px solid #00f0ff1a;border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.info-item{align-items:center;display:flex;gap:var(--spacing-xs)}.info-label{color:var(--text-muted);font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}.info-value{color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:500}.info-value.interval-badge{background:#00f0ff26;border-radius:var(--radius-sm);padding:2px 8px}.save-modal-content .form-field{margin-bottom:var(--spacing-md)}.save-modal-content .form-field label{color:var(--text-secondary);display:block;font-size:.75rem;font-weight:500;letter-spacing:.05em;margin-bottom:6px;text-transform:uppercase}.save-modal-content .form-field input,.save-modal-content .form-field textarea{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.9rem;padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);width:100%}.save-modal-content .form-field input:focus,.save-modal-content .form-field textarea:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 2px #00f0ff33;outline:none}.save-modal-content .form-field input::placeholder,.save-modal-content .form-field textarea::placeholder{color:var(--text-muted);font-family:Outfit,sans-serif}.save-modal-content .form-field textarea{min-height:80px;resize:vertical}.save-modal-error{align-items:center;background:#ff33661a;border:1px solid #ff33664d;border-radius:var(--radius-md);color:var(--accent-red);display:flex;font-size:.8rem;gap:var(--spacing-sm);justify-content:space-between;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.save-modal-error button{background:none;border:none;color:var(--accent-red);cursor:pointer;font-size:1rem;line-height:1;padding:0}.save-modal-success{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-md);justify-content:center;padding:var(--spacing-xl);text-align:center}.save-modal-success .success-icon{animation:popIn .3s ease-out;color:var(--accent-green);font-size:3rem}@keyframes popIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.save-modal-success span:nth-child(2){color:var(--accent-green);font-size:1rem}.save-modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg)}.save-modal-actions .cancel-btn{background:#0000;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-family:Outfit,sans-serif;font-size:.85rem;padding:var(--spacing-sm) var(--spacing-lg);transition:all var(--transition-fast)}.save-modal-actions .cancel-btn:hover:not(:disabled){border-color:var(--text-secondary);color:var(--text-primary)}.save-modal-actions .save-btn{background:linear-gradient(135deg,var(--accent-cyan) 0,#08a 100%);border:none;border-radius:var(--radius-md);color:var(--bg-primary);cursor:pointer;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:600;padding:var(--spacing-sm) var(--spacing-lg);transition:all var(--transition-fast)}.save-modal-actions .save-btn:hover:not(:disabled){box-shadow:0 4px 15px #00f0ff66;transform:translateY(-1px)}.save-modal-actions .cancel-btn:disabled,.save-modal-actions .save-btn:disabled{cursor:not-allowed;opacity:.5}.save-modal.edit-mode{border-color:#ffc10766;box-shadow:0 10px 40px #00000080,0 0 60px #ffc10726}.save-modal.edit-mode .save-modal-header{border-bottom-color:#ffc1074d}.edit-mode-banner{align-items:center;background:#ffc1071a;border:1px solid #ffc1074d;border-radius:var(--radius-md);display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.edit-mode-banner .banner-icon{font-size:1rem}.edit-mode-banner .banner-text{color:var(--text-secondary);flex:1 1;font-size:.8rem}.edit-mode-banner .banner-text strong{color:#ffc107;font-weight:500}.edit-mode-banner .exit-edit-btn{background:#00f0ff1a;border:1px solid #00f0ff4d;border-radius:var(--radius-sm);color:var(--accent-cyan);cursor:pointer;font-size:.7rem;padding:4px 8px;transition:all var(--transition-fast)}.edit-mode-banner .exit-edit-btn:hover{background:#00f0ff33}.save-modal-actions .save-btn.update-btn{background:linear-gradient(135deg,#ffc107,#c90);color:#000}.save-modal-actions .save-btn.update-btn:hover:not(:disabled){box-shadow:0 4px 15px #ffc10766}.dashboard{background:var(--bg-primary);display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;width:100%}.welcome-screen{align-items:center;display:flex;flex:1 1;justify-content:center;padding:var(--spacing-xl)}.welcome-content{max-width:500px;text-align:center}.welcome-icon{animation:glowPulse 2s ease-in-out infinite;color:var(--accent-cyan);font-size:4rem;margin-bottom:var(--spacing-lg);text-shadow:0 0 30px var(--accent-cyan),0 0 60px #00f0ff4d}.welcome-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--text-primary),var(--accent-cyan));-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin-bottom:var(--spacing-md)}.welcome-subtitle{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-xl)}.welcome-features{display:flex;flex-direction:column;gap:var(--spacing-md)}.feature{align-items:center;background:#00f0ff0d;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;font-size:.875rem;gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-sm) var(--spacing-md)}.feature-icon{color:var(--accent-cyan)}.dashboard-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);display:flex;gap:var(--spacing-md);justify-content:space-between;padding:var(--spacing-sm) var(--spacing-lg)}.header-left{display:flex;flex-direction:column;gap:2px;min-width:0}.asset-info-row{align-items:baseline;display:flex;gap:6px;white-space:nowrap}.asset-name{color:var(--text-primary);font-size:.85rem;font-weight:700}.asset-full-name-label,.quote-name{color:var(--text-muted);font-weight:400}.asset-full-name-label{font-family:JetBrains Mono,monospace;font-size:.65rem}.exchange-badge{align-self:flex-start;background:#9945ff1a;border:1px solid var(--accent-purple);border-radius:var(--radius-sm);color:var(--accent-purple);font-family:JetBrains Mono,monospace;font-size:.55rem;font-weight:600;letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}.header-center{align-items:center;display:flex}.interval-selector{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);display:flex;gap:2px;padding:2px}.interval-btn{align-items:center;background:#0000;border:none;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.65rem;gap:1px;padding:4px 8px}.interval-btn:hover{background:#ffffff0d;color:var(--text-primary)}.interval-btn.active{background:var(--accent-cyan);color:var(--bg-primary)}.interval-pattern-count{align-items:center;display:flex;font-size:.5rem;gap:1px;line-height:1}.ipc-bullish{color:var(--text-primary)}.ipc-sep{color:inherit}.ipc-bearish{color:var(--text-muted)}.interval-btn.active .ipc-bearish,.interval-btn.active .ipc-bullish,.interval-btn.active .ipc-sep{color:var(--bg-primary)}.header-right{align-items:center;display:flex;gap:var(--spacing-sm)}.save-analysis-btn{background:#00141ecc;border:1px solid #00f0ff66;border-radius:var(--radius-sm);color:var(--accent-cyan);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:600;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase;transition:all var(--transition-fast);white-space:nowrap}.save-analysis-btn:hover{background:#00f0ff26;border-color:var(--accent-cyan);box-shadow:0 0 10px #00f0ff33}.save-analysis-btn.edit-mode{background:#1e1400cc;border-color:#ffb40080;color:#ffb400}.save-analysis-btn.edit-mode:hover{background:#ffb40026;border-color:#ffb400;box-shadow:0 0 10px #ffb40033}.chart-container{flex:1 1;min-width:0;overflow:hidden;position:relative;width:100%}.chart-loader{align-items:center;background:#060810e6;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.875rem;gap:var(--spacing-md);inset:0;justify-content:center;position:absolute;z-index:10}.chart-loader .loader-spinner{height:48px;width:48px}@media (max-width:768px){.dashboard{height:100vh;overflow:hidden}.dashboard-header{flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm)}.header-left{flex:0 0 auto;order:1}.header-center{flex:1 1 100%;justify-content:center;order:3}.header-right{flex:0 0 auto;margin-left:auto;order:2}.asset-info-row{gap:4px}.asset-name{font-size:.75rem}.asset-full-name-label{font-size:.55rem}.exchange-badge{display:none}.interval-selector{flex-wrap:wrap;justify-content:center}.interval-btn{font-size:.6rem;padding:4px 6px}.save-analysis-btn{font-size:.55rem;padding:3px 8px}.chart-container{flex:1 1;min-height:0}}.sync-section-wrapper{margin-bottom:12px;margin-bottom:var(--spacing-md,12px);margin-top:12px;margin-top:var(--spacing-md,12px);padding:0 12px}.admin-lock-icon{font-size:.8rem;margin-left:auto;opacity:.7}.admin-notice{align-items:center;background:#ff99001a;border:1px solid #ff99004d;border-radius:6px;color:#f90;display:flex;font-size:.75rem;gap:8px;margin-bottom:8px;padding:10px 12px}.admin-notice .notice-icon{font-size:1rem}.admin-notice .notice-text{flex:1 1;line-height:1.3}.sync-dropdown-toggle{align-items:center;background:linear-gradient(135deg,#00ff8814,#00ff8805);border:1px solid #0f83;border-radius:8px;color:#e8e8e8;color:var(--text-primary,#e8e8e8);cursor:pointer;display:flex;gap:8px;padding:10px 12px;position:relative;transition:all .2s ease;width:100%}.sync-dropdown-toggle:hover{background:linear-gradient(135deg,#00ff881f,#00ff880d);border-color:#0f86}.sync-dropdown-toggle.expanded{border-bottom-color:#0000;border-radius:8px 8px 0 0}.sync-dropdown-toggle.has-tasks{border-color:#f39c1280}.toggle-icon{color:#0f8;color:var(--accent-color,#0f8);font-size:1.1rem}.sync-dropdown-toggle.has-tasks .toggle-icon{animation:spin 2s linear infinite}.toggle-text{flex:1 1;font-size:.85rem;font-weight:500;text-align:left}.active-badge{background:#f39c12;background:var(--warning-color,#f39c12);border-radius:50%;height:8px;width:8px}.active-badge.pulse{animation:pulse 1.5s ease-in-out infinite}.expand-arrow{color:#888;color:var(--text-secondary,#888);font-size:.7rem}.sync-dropdown-content{background:#1a1a2e;background:var(--surface-color,#1a1a2e);border:1px solid #0f83;border-radius:0 0 8px 8px;border-top:none;overflow:hidden}.tasks-mini{background:#0003;border-bottom:1px solid #ffffff0d;display:flex;flex-wrap:wrap;gap:4px;padding:8px}.task-mini-item{align-items:center;background:#16213e;background:var(--bg-secondary,#16213e);border-left:2px solid #666;border-left:2px solid var(--text-tertiary,#666);border-radius:4px;display:flex;font-size:.7rem;gap:4px;padding:3px 6px}.task-mini-item.status-success{border-left-color:#2ecc71;border-left-color:var(--success-color,#2ecc71)}.task-mini-item.status-error{border-left-color:#e74c3c;border-left-color:var(--danger-color,#e74c3c)}.task-mini-item.status-pending{border-left-color:#f39c12;border-left-color:var(--warning-color,#f39c12)}.task-icon{font-size:.75rem}.task-mini-item.status-pending .task-icon{animation:spin 1s linear infinite}.task-name{color:#888;color:var(--text-secondary,#888)}.task-dismiss{background:none;border:none;color:#666;color:var(--text-tertiary,#666);cursor:pointer;font-size:.8rem;line-height:1;padding:0 2px}.task-dismiss:hover{color:#e74c3c;color:var(--danger-color,#e74c3c)}.sync-item{border-bottom:1px solid #ffffff0d}.sync-item:last-child{border-bottom:none}.sync-item-header{align-items:center;background:#0000;border:none;color:#e8e8e8;color:var(--text-primary,#e8e8e8);cursor:pointer;display:flex;gap:8px;padding:10px 12px;transition:background .2s ease;width:100%}.sync-item-header:hover{background:#ffffff08}.sync-item-header.active{background:#00ff880d}.item-icon{font-size:.9rem}.item-title{flex:1 1;font-size:.8rem;text-align:left}.item-arrow{color:#888;color:var(--text-secondary,#888);font-size:.8rem}.sync-item-content{background:#00000026;padding:10px 12px}.param-row{display:flex;gap:8px;margin-bottom:8px}.param-row label{color:#888;color:var(--text-secondary,#888);display:flex;flex:1 1;flex-direction:column;font-size:.75rem;gap:4px}.param-row input[type=number]{background:#16213e;background:var(--bg-secondary,#16213e);border:1px solid #2a2a4e;border:1px solid var(--border-color,#2a2a4e);border-radius:4px;color:#e8e8e8;color:var(--text-primary,#e8e8e8);font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:.8rem;padding:6px 8px}.param-row input[type=number]:focus{border-color:#0f8;border-color:var(--accent-color,#0f8);outline:none}.checkbox-row{align-items:center;color:#888;color:var(--text-secondary,#888);cursor:pointer;display:flex;font-size:.75rem;gap:8px;margin-bottom:8px}.checkbox-row input[type=checkbox]{accent-color:#0f8;accent-color:var(--accent-color,#0f8);cursor:pointer;height:14px;width:14px}.error-msg{background:#e74c3c1a;border-radius:4px;font-size:.7rem;gap:8px;margin-bottom:8px;padding:6px 8px}.error-msg,.error-msg button{color:#e74c3c;color:var(--danger-color,#e74c3c)}.error-msg button{font-size:.9rem}.info-msg{color:#666;color:var(--text-tertiary,#666);font-size:.75rem;padding:10px;text-align:center}.sync-action-btn{background:linear-gradient(135deg,#0f8,#00cc6a);background:linear-gradient(135deg,var(--accent-color,#0f8),#00cc6a);border:none;border-radius:6px;color:#0f0f23;color:var(--bg-color,#0f0f23);cursor:pointer;font-size:.8rem;font-weight:600;padding:8px 12px;transition:all .2s ease;width:100%}.sync-action-btn:hover:not(:disabled){box-shadow:0 4px 12px #00ff884d;transform:translateY(-1px)}.sync-action-btn:disabled{background:#2a2a4e;background:var(--border-color,#2a2a4e);color:#888;color:var(--text-secondary,#888);cursor:not-allowed;opacity:.5}.sync-action-btn.accent{background:linear-gradient(135deg,#00d4ff,#00a8cc);background:linear-gradient(135deg,var(--secondary-accent,#00d4ff),#00a8cc)}.bulk-filter-group{margin-bottom:10px}.filter-label{align-items:center;color:#888;color:var(--text-secondary,#888);display:flex;font-size:.75rem;gap:6px;margin-bottom:6px}.filter-icon{color:#0f8;color:var(--accent-color,#0f8);font-size:.8rem}.bulk-exchange-select{-webkit-appearance:none;appearance:none;background:#16213e;background:var(--bg-secondary,#16213e);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230f8' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #2a2a4e;border:1px solid var(--border-color,#2a2a4e);border-radius:6px;color:#e8e8e8;color:var(--text-primary,#e8e8e8);cursor:pointer;font-size:.8rem;padding:8px 30px 8px 10px;transition:border-color .2s ease;width:100%}.bulk-exchange-select:focus,.bulk-exchange-select:hover{border-color:#0f8;border-color:var(--accent-color,#0f8)}.bulk-exchange-select:focus{box-shadow:0 0 0 2px #00ff881a;outline:none}.bulk-exchange-select option{background:#16213e;background:var(--bg-secondary,#16213e);color:#e8e8e8;color:var(--text-primary,#e8e8e8)}.bulk-search-wrapper{position:relative}.bulk-search-input{background:#16213e;background:var(--bg-secondary,#16213e);border:1px solid #2a2a4e;border:1px solid var(--border-color,#2a2a4e);border-radius:6px;color:#e8e8e8;color:var(--text-primary,#e8e8e8);font-size:.8rem;padding:8px 32px 8px 10px;transition:border-color .2s ease;width:100%}.bulk-search-input::placeholder{color:#666;color:var(--text-tertiary,#666)}.bulk-search-input:hover{border-color:#0f86}.bulk-search-input:focus{border-color:#0f8;border-color:var(--accent-color,#0f8);box-shadow:0 0 0 2px #00ff881a;outline:none}.bulk-search-clear{align-items:center;background:none;border:none;border-radius:50%;color:#666;color:var(--text-tertiary,#666);cursor:pointer;display:flex;font-size:1rem;height:20px;justify-content:center;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:all .2s ease;width:20px}.bulk-search-clear:hover{background:#e74c3c33;color:#e74c3c;color:var(--danger-color,#e74c3c)}.loading-spinner{animation:spin 1s linear infinite;display:inline-block}.no-results{color:#666;color:var(--text-tertiary,#666);font-size:.75rem;grid-column:1/-1;padding:16px;text-align:center}.bulk-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.selected-count{color:#0f8;color:var(--accent-color,#0f8);font-size:.75rem;font-weight:500}.select-all-btn{background:#0000;border:1px solid #2a2a4e;border:1px solid var(--border-color,#2a2a4e);border-radius:4px;color:#888;color:var(--text-secondary,#888);cursor:pointer;font-size:.7rem;padding:4px 8px;transition:all .2s ease}.select-all-btn:hover{border-color:#0f8;border-color:var(--accent-color,#0f8);color:#0f8;color:var(--accent-color,#0f8)}.asset-checkboxes{grid-gap:4px;background:#0003;border-radius:6px;display:grid;gap:4px;grid-template-columns:repeat(2,1fr);margin-bottom:10px;max-height:200px;overflow-y:auto;padding:8px}.asset-checkbox{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:6px;padding:4px 6px;transition:background .15s ease}.asset-checkbox:hover{background:#ffffff0d}.asset-checkbox input[type=checkbox]{accent-color:#0f8;accent-color:var(--accent-color,#0f8);cursor:pointer;height:12px;width:12px}.asset-name{color:#e8e8e8;color:var(--text-primary,#e8e8e8);font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:.7rem}.asset-name .quote,.asset-name .ticker-hint{color:#666;color:var(--text-tertiary,#666)}.asset-name .ticker-hint{font-size:.65rem}.last-task{color:#666;color:var(--text-tertiary,#666);font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:.7rem;margin-bottom:8px}.asset-checkboxes::-webkit-scrollbar{width:4px}.asset-checkboxes::-webkit-scrollbar-track{background:#0000}.asset-checkboxes::-webkit-scrollbar-thumb{background:#2a2a4e;background:var(--border-color,#2a2a4e);border-radius:2px}.asset-checkboxes::-webkit-scrollbar-thumb:hover{background:#0f8;background:var(--accent-color,#0f8)}.task-count-badge{background:#00d4ff33;border-radius:4px;color:#00d4ff;color:var(--secondary-accent,#00d4ff);font-size:.65rem;font-weight:600;padding:2px 6px}.tasks-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.tasks-title{font-size:.75rem;font-weight:500}.refresh-btn,.tasks-title{color:#888;color:var(--text-secondary,#888)}.refresh-btn{align-items:center;background:#16213e;background:var(--bg-secondary,#16213e);border:1px solid #2a2a4e;border:1px solid var(--border-color,#2a2a4e);border-radius:4px;cursor:pointer;display:flex;font-size:.9rem;height:24px;justify-content:center;transition:all .2s ease;width:24px}.refresh-btn:hover:not(:disabled){border-color:#0f8;border-color:var(--accent-color,#0f8);color:#0f8;color:var(--accent-color,#0f8)}.refresh-btn:disabled{cursor:not-allowed;opacity:.5}.tasks-list{display:flex;flex-direction:column;gap:4px;max-height:250px;overflow-y:auto}.task-item{background:#0003;border-radius:6px;overflow:hidden}.task-item-header{align-items:center;cursor:pointer;display:flex;gap:8px;padding:8px 10px;transition:background .15s ease}.task-item-header:hover{background:#ffffff08}.task-status-dot{background:#666;background:var(--text-tertiary,#666);border-radius:50%;flex-shrink:0;height:8px;width:8px}.task-status-dot.status-success{background:#2ecc71;background:var(--success-color,#2ecc71)}.task-status-dot.status-error{background:#e74c3c;background:var(--danger-color,#e74c3c)}.task-status-dot.status-pending{animation:pulse 1.5s ease-in-out infinite;background:#f39c12;background:var(--warning-color,#f39c12)}.task-name-label{color:#e8e8e8;color:var(--text-primary,#e8e8e8);flex:1 1;font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace);font-size:.75rem}.task-status-label{background:#ffffff0d;border-radius:3px;color:#888;color:var(--text-secondary,#888);font-size:.65rem;padding:2px 6px}.task-status-label.status-success{background:#2ecc7126;color:#2ecc71;color:var(--success-color,#2ecc71)}.task-status-label.status-error{background:#e74c3c26;color:#e74c3c;color:var(--danger-color,#e74c3c)}.task-status-label.status-pending{background:#f39c1226;color:#f39c12;color:var(--warning-color,#f39c12)}.task-expand-arrow{color:#666;color:var(--text-muted,#666);font-size:.6rem}.task-item-details{background:#00000026;border-top:1px solid #ffffff0d;padding:8px 10px}.task-detail-row{align-items:center;display:flex;font-size:.7rem;justify-content:space-between;padding:4px 0}.detail-label{color:#666;color:var(--text-tertiary,#666)}.detail-value{color:#888;color:var(--text-secondary,#888)}.detail-value.mono{font-family:JetBrains Mono,monospace;font-family:var(--font-mono,"JetBrains Mono",monospace)}.cancel-task-btn{background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:4px;color:#e74c3c;color:var(--danger-color,#e74c3c);cursor:pointer;font-size:.7rem;margin-top:8px;padding:6px 10px;transition:all .2s ease;width:100%}.cancel-task-btn:hover{background:#e74c3c33;border-color:#e74c3c;border-color:var(--danger-color,#e74c3c)}.health-indicator{font-size:.7rem;height:10px;width:10px}.health-indicator.healthy{color:#2ecc71;color:var(--success-color,#2ecc71)}.health-indicator.unhealthy{color:#e74c3c;color:var(--danger-color,#e74c3c)}.health-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.health-overall{align-items:center;border-radius:6px;display:flex;gap:8px;margin-bottom:4px;padding:10px 12px}.health-overall.healthy{background:linear-gradient(135deg,#2ecc7126,#2ecc710d);border:1px solid #2ecc714d}.health-overall.unhealthy{background:linear-gradient(135deg,#e74c3c26,#e74c3c0d);border:1px solid #e74c3c4d}.health-overall-icon{font-size:1rem}.health-overall.healthy .health-overall-icon{color:#2ecc71;color:var(--success-color,#2ecc71)}.health-overall.unhealthy .health-overall-icon{color:#e74c3c;color:var(--danger-color,#e74c3c)}.health-overall-text{font-size:.8rem;font-weight:500}.health-overall.healthy .health-overall-text{color:#2ecc71;color:var(--success-color,#2ecc71)}.health-overall.unhealthy .health-overall-text{color:#e74c3c;color:var(--danger-color,#e74c3c)}.health-component{background:#0003;border-left:2px solid #2a2a4e;border-left:2px solid var(--border-color,#2a2a4e);border-radius:6px;padding:8px 10px}.health-component.healthy{border-left-color:#2ecc71;border-left-color:var(--success-color,#2ecc71)}.health-component.unhealthy{border-left-color:#e74c3c;border-left-color:var(--danger-color,#e74c3c)}.health-component-header{align-items:center;display:flex;gap:8px}.health-dot{border-radius:50%;height:6px;width:6px}.health-dot.healthy{background:#2ecc71;background:var(--success-color,#2ecc71)}.health-dot.unhealthy{background:#e74c3c;background:var(--danger-color,#e74c3c)}.health-component-name{color:#e8e8e8;color:var(--text-primary,#e8e8e8);flex:1 1;font-size:.75rem;font-weight:500}.health-component-status{border-radius:3px;font-size:.65rem;padding:2px 6px}.health-component-status.healthy{background:#2ecc7126;color:#2ecc71;color:var(--success-color,#2ecc71)}.health-component-status.unhealthy{background:#e74c3c26;color:#e74c3c;color:var(--danger-color,#e74c3c)}.health-component-message{color:#888;color:var(--text-secondary,#888);font-size:.7rem;margin-top:4px;padding-left:14px}.health-component-error{color:#e74c3c;color:var(--danger-color,#e74c3c);font-size:.65rem;margin-top:4px;padding-left:14px;word-break:break-word}.health-list::-webkit-scrollbar,.tasks-list::-webkit-scrollbar{width:4px}.health-list::-webkit-scrollbar-track,.tasks-list::-webkit-scrollbar-track{background:#0000}.health-list::-webkit-scrollbar-thumb,.tasks-list::-webkit-scrollbar-thumb{background:#2a2a4e;background:var(--border-color,#2a2a4e);border-radius:2px}.health-list::-webkit-scrollbar-thumb:hover,.tasks-list::-webkit-scrollbar-thumb:hover{background:#0f8;background:var(--accent-color,#0f8)}.saved-analysis-section{display:flex;flex:0 0 auto;flex-direction:column;max-height:none;min-height:0;overflow:hidden;transition:flex var(--transition-fast)}.saved-analysis-section.section-expanded{flex:1 1;max-height:350px}.saved-analysis-section.section-collapsed{flex:0 0 auto}.saved-analysis-section .section-label.collapsible{align-items:center;background:#0000;border:none;border-bottom:1px solid #8b000033;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.75rem;font-weight:600;gap:var(--spacing-sm);letter-spacing:.05em;padding:var(--spacing-sm) var(--spacing-md);text-transform:uppercase;transition:all var(--transition-fast);width:100%}.saved-analysis-section .section-label.collapsible:hover{background:#8b00001a;color:var(--text-primary)}.saved-analysis-section .section-label.collapsible.expanded{border-bottom-color:#8b00004d}.saved-analysis-section .section-icon{color:#8b0000;font-size:.9rem}.saved-analysis-section .section-title{flex:1 1;text-align:left}.saved-analysis-section .count-badge{background:#8b000033;border-radius:8px;color:#dc3545;font-size:.65rem;font-weight:500;padding:2px 6px}.saved-analysis-section .collapse-arrow{color:var(--text-muted);font-size:.6rem;transition:transform var(--transition-fast)}.saved-analysis-search{border-bottom:1px solid #8b00001a;padding:var(--spacing-xs) var(--spacing-sm)}.saved-analysis-search .search-input-wrapper{align-items:center;display:flex;position:relative}.saved-analysis-search .search-input{background:#8b00000d;border:1px solid #8b000033;border-radius:var(--radius-sm);color:var(--text-primary);font-size:.75rem;padding:var(--spacing-xs) var(--spacing-sm);padding-left:calc(var(--spacing-sm) + 16px);padding-right:var(--spacing-lg);transition:all var(--transition-fast);width:100%}.saved-analysis-search .search-input::placeholder{color:var(--text-muted)}.saved-analysis-search .search-input:focus{background:#8b00001a;border-color:#8b0000;outline:none}.saved-analysis-search .search-icon{color:var(--text-muted);font-size:.85rem;left:var(--spacing-xs);pointer-events:none;position:absolute}.saved-analysis-search .search-clear-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;line-height:1;padding:2px 6px;position:absolute;right:var(--spacing-xs);transition:color var(--transition-fast)}.saved-analysis-search .search-clear-btn:hover{color:var(--accent-red)}.edit-mode-indicator{align-items:center;background:#ffc10726;border:1px solid #ffc10766;border-radius:var(--radius-sm);color:#ffc107;display:flex;font-size:.7rem;gap:var(--spacing-xs);margin:var(--spacing-xs) var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm)}.edit-mode-indicator .edit-icon{font-size:.8rem}.edit-mode-indicator span:nth-child(2){flex:1 1}.edit-mode-indicator .exit-edit-btn{background:none;border:none;color:#ffc107;cursor:pointer;font-size:1rem;line-height:1;opacity:.7;padding:0;transition:opacity var(--transition-fast)}.edit-mode-indicator .exit-edit-btn:hover{opacity:1}.saved-analysis-error{align-items:center;background:#ff33661a;border:1px solid #ff33664d;border-radius:var(--radius-sm);color:var(--accent-red);display:flex;font-size:.7rem;gap:var(--spacing-sm);justify-content:space-between;margin:var(--spacing-xs) var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md)}.saved-analysis-error button{background:none;border:none;color:var(--accent-red);cursor:pointer;font-size:.9rem;line-height:1;padding:0}.saved-analysis-success{align-items:center;background:#00ff881a;border:1px solid #00ff884d;border-radius:var(--radius-sm);color:var(--accent-green);display:flex;font-size:.7rem;gap:var(--spacing-xs);justify-content:center;margin:var(--spacing-xs) var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md)}.saved-analysis-success .success-icon{font-size:.85rem}.saved-analysis-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-md)}.saved-analysis-loading .loading-spinner{animation:spin 1s linear infinite;color:#8b0000;font-size:1rem}.saved-analysis-empty{align-items:center;display:flex;flex-direction:column;gap:var(--spacing-xs);justify-content:center;padding:var(--spacing-lg) var(--spacing-md);text-align:center}.saved-analysis-empty .empty-icon{font-size:2rem;opacity:.5}.saved-analysis-empty span:nth-child(2){color:var(--text-secondary);font-size:.8rem}.saved-analysis-empty .empty-hint{color:var(--text-muted);font-size:.7rem;max-width:200px}.saved-analysis-list{flex:1 1;margin:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 var(--spacing-xs)}.saved-analysis-list::-webkit-scrollbar{width:4px}.saved-analysis-list::-webkit-scrollbar-track{background:#8b00001a}.saved-analysis-list::-webkit-scrollbar-thumb{background:#8b000066;border-radius:2px}.saved-analysis-list::-webkit-scrollbar-thumb:hover{background:#8b000099}.saved-analysis-item{background:#0000;border:none;border-left:2px solid #0000;display:flex;flex-direction:column;margin-bottom:1px;overflow:visible;transition:all var(--transition-fast);width:100%}.saved-analysis-item:hover{background:#8b00000d}.saved-analysis-item.item-expanded{background:#8b000014;border-left-color:#8b000080}.saved-analysis-item.editing{background:#ffc1070d;border-left-color:#ffc107}.saved-analysis-item.loading{opacity:.6;pointer-events:none}.saved-analysis-item .analysis-main-row{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-xs);overflow:visible;padding:var(--spacing-xs) var(--spacing-sm);padding-right:var(--spacing-xs)}.saved-analysis-item .analysis-info{flex:1 1;min-width:0}.saved-analysis-item .analysis-name{align-items:center;color:var(--text-primary);display:flex;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:500;gap:4px;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-analysis-item .expand-indicator{color:var(--text-muted);flex-shrink:0;font-size:.5rem}.saved-analysis-item .has-description-dot{color:#8b0000;font-size:1.2rem;line-height:0;margin-left:2px}.saved-analysis-item .analysis-meta{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:.65rem;gap:4px}.saved-analysis-item .meta-asset{color:#8b0000;font-weight:500}.saved-analysis-item .meta-separator{opacity:.5}.saved-analysis-item .meta-interval{background:#8b000033;border-radius:2px;color:#dc3545;padding:1px 4px}.saved-analysis-item .meta-exchange{opacity:.7}.saved-analysis-item .analysis-date{color:var(--text-muted);font-size:.6rem;margin-top:2px}.saved-analysis-item .analysis-actions{align-items:center;display:flex;flex-shrink:0;gap:2px;margin-right:2px;opacity:0;transition:opacity var(--transition-fast)}.saved-analysis-item.editing .analysis-actions,.saved-analysis-item.item-expanded .analysis-actions,.saved-analysis-item:hover .analysis-actions{opacity:1}.saved-analysis-item .action-btn{background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.55rem;opacity:.6;padding:3px 4px;transition:all var(--transition-fast)}.saved-analysis-item .action-btn:hover{background:#ffffff1a;opacity:1}.saved-analysis-item .action-btn.edit-btn.active,.saved-analysis-item .action-btn.edit-btn:hover{background:#ffc10733}.saved-analysis-item .action-btn.edit-btn.active{opacity:1}.saved-analysis-item .action-btn.view-btn:hover{background:#00f0ff33}.saved-analysis-item .action-btn.delete-btn:hover{background:#f363}.saved-analysis-item .action-btn.delete-btn.confirm{animation:pulse .5s ease-in-out infinite;background:#f363;opacity:1}.saved-analysis-item .action-btn:disabled{cursor:not-allowed;opacity:.3}.saved-analysis-item .analysis-expanded-content{animation:slideDown .2s ease-out;border-top:1px dashed #8b000033;padding:var(--spacing-xs) var(--spacing-sm) var(--spacing-sm);padding-left:calc(var(--spacing-sm) + 12px)}.saved-analysis-item .description-section{font-size:.75rem}.saved-analysis-item .description-header{align-items:center;display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.saved-analysis-item .description-label{color:var(--text-secondary);font-weight:500}.saved-analysis-item .edit-description-btn{background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.7rem;opacity:.6;padding:2px 4px;transition:all var(--transition-fast)}.saved-analysis-item .edit-description-btn:hover{background:#ffc10733;opacity:1}.saved-analysis-item .description-text{color:var(--text-primary);line-height:1.4;white-space:pre-wrap;word-break:break-word}.saved-analysis-item .no-description{color:var(--text-muted);font-style:italic}.saved-analysis-item .description-edit{display:flex;flex-direction:column;gap:var(--spacing-xs)}.saved-analysis-item .description-edit textarea{background:#8b00000d;border:1px solid #8b00004d;border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:.75rem;min-height:60px;padding:var(--spacing-xs);resize:vertical;width:100%}.saved-analysis-item .description-edit textarea:focus{border-color:#8b0000;outline:none}.saved-analysis-item .description-edit textarea::placeholder{color:var(--text-muted)}.saved-analysis-item .description-edit-actions{display:flex;gap:var(--spacing-xs)}.saved-analysis-item .cancel-desc-btn,.saved-analysis-item .save-desc-btn{border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.7rem;padding:4px 8px;transition:all var(--transition-fast)}.saved-analysis-item .save-desc-btn{background:#0f83;color:var(--accent-green)}.saved-analysis-item .save-desc-btn:hover{background:#00ff884d}.saved-analysis-item .save-desc-btn:disabled{cursor:not-allowed;opacity:.5}.saved-analysis-item .cancel-desc-btn{background:#8b949e33;color:var(--text-secondary)}.saved-analysis-item .cancel-desc-btn:hover{background:#8b949e4d}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.user-section-wrapper{border-bottom:1px solid var(--border-primary)}.user-dropdown-toggle{align-items:center;background:linear-gradient(135deg,#8b000026,#6414141a);border:none;border-left:3px solid #0000;color:var(--text-primary);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-md);transition:all var(--transition-fast);width:100%}.user-dropdown-toggle:hover{background:linear-gradient(135deg,#8b000040,#64141433);border-left-color:#8b0000}.user-dropdown-toggle.expanded{background:linear-gradient(135deg,#8b00004d,#64141440);border-left-color:#8b0000}.user-avatar-mini{align-items:center;background:#8b00004d;border:2px solid #8b000080;border-radius:50%;display:flex;flex-shrink:0;height:32px;justify-content:center;overflow:hidden;width:32px}.user-avatar-mini img{height:100%;object-fit:cover;width:100%}.user-avatar-mini .avatar-placeholder{color:#dc3545;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700}.user-info-mini{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.user-name{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{border-radius:var(--radius-sm);font-size:.65rem;font-weight:500;letter-spacing:.05em;padding:1px 6px;text-transform:uppercase}.user-role.admin{background:#8b00004d;border:1px solid #8b000080;color:#dc3545}.user-role.user{background:#64646433;border:1px solid #6464644d;color:var(--text-secondary)}.user-dropdown-toggle .expand-arrow{color:#8b0000;font-size:.6rem;transition:transform var(--transition-fast)}.user-dropdown-content{background:#140a0a4d;border-top:1px solid #8b000033;max-height:calc(100vh - 120px);overflow-y:auto}.user-item{border-bottom:1px solid #8b00001a}.user-item:last-child{border-bottom:none}.user-item-header{align-items:center;background:#0000;border:none;border-left:2px solid #0000;color:var(--text-primary);cursor:pointer;display:flex;font-size:.8rem;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);width:100%}.user-item-header:hover{background:#8b00001a;border-left-color:#8b000080}.user-item-header.active{background:#8b000026;border-left-color:#8b0000}.user-item-header .item-icon{color:#8b0000;font-size:.9rem;text-align:center;width:20px}.user-item-header .item-title{flex:1 1;font-size:.8rem;text-align:left}.user-item-header .item-arrow{color:var(--text-muted);font-size:.7rem}.user-item-content{background:#0a05054d;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md)}.form-field{margin-bottom:var(--spacing-sm)}.form-field label{color:var(--text-secondary);display:block;font-size:.7rem;font-weight:500;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.form-field input{background:#060810cc;border:1px solid #8b00004d;border-radius:var(--radius-sm);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.8rem;padding:var(--spacing-sm);transition:all var(--transition-fast);width:100%}.form-field input:focus{border-color:#8b0000;box-shadow:0 0 0 2px #8b000033;outline:none}.form-field input::placeholder{color:var(--text-muted);font-family:Outfit,sans-serif}.field-hint{color:var(--text-muted);display:block;font-size:.65rem;margin-top:4px}.field-hint.error{color:var(--accent-red)}.password-errors{display:flex;flex-direction:column;gap:2px}.field-hint.strength-weak{color:var(--accent-red)}.field-hint.strength-medium{color:#ffb400}.field-hint.strength-strong{color:var(--accent-green)}.user-action-btn{align-items:center;background:linear-gradient(135deg,#8b0000,#5a0000);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:500;gap:var(--spacing-sm);justify-content:center;margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast);width:100%}.user-action-btn:hover:not(:disabled){background:linear-gradient(135deg,#a00000,#6a0000);box-shadow:0 2px 10px #8b00004d}.user-action-btn:disabled{cursor:not-allowed;opacity:.5}.error-msg{align-items:center;background:#ff33661a;border:1px solid #ff33664d;border-radius:var(--radius-sm);color:var(--accent-red);display:flex;font-size:.75rem;gap:var(--spacing-sm);justify-content:space-between;margin-top:var(--spacing-sm);padding:var(--spacing-sm)}.error-msg button{background:none;border:none;color:var(--accent-red);cursor:pointer;font-size:1rem;line-height:1;padding:0}.success-msg{align-items:center;background:#00ff881a;border:1px solid #00ff884d;border-radius:var(--radius-sm);color:var(--accent-green);display:flex;font-size:.85rem;gap:var(--spacing-sm);justify-content:center;padding:var(--spacing-md)}.success-icon{font-size:1.2rem}.avatar-preview-container{display:flex;justify-content:center;margin-bottom:var(--spacing-sm)}.avatar-preview{background:#8b000033;border:3px solid #8b000066;border-radius:50%;cursor:pointer;height:80px;overflow:hidden;position:relative;transition:all var(--transition-fast);width:80px}.avatar-preview:hover{border-color:#8b0000;transform:scale(1.05)}.avatar-preview img{height:100%;object-fit:cover;width:100%}.avatar-placeholder-large{font-family:Outfit,sans-serif;font-size:2rem;font-weight:700}.avatar-loading,.avatar-placeholder-large{align-items:center;color:#8b0000;display:flex;height:100%;justify-content:center;width:100%}.avatar-loading{animation:spin 1s linear infinite;font-size:1.5rem}.avatar-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-fast)}.avatar-preview:hover .avatar-overlay{opacity:1}.avatar-overlay span{font-size:1.5rem}.avatar-hint{color:var(--text-secondary);font-size:.75rem;margin-bottom:4px;text-align:center}.avatar-formats{color:var(--text-muted);font-size:.65rem;text-align:center}.exchange-item{padding:0}.exchange-header{cursor:default!important;padding:var(--spacing-xs) var(--spacing-md)!important}.exchange-header:hover{background:#0000!important;border-left-color:#0000!important}.exchange-content{padding:0 var(--spacing-md) var(--spacing-sm)!important}.user-exchange-select{-webkit-appearance:none;appearance:none;background:#060810cc;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238b0000' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border:1px solid #8b00004d;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.78rem;padding:6px 28px 6px 8px;transition:all var(--transition-fast);width:100%}.user-exchange-select:hover{border-color:#8b0000}.user-exchange-select:focus{border-color:#8b0000;box-shadow:0 0 0 2px #8b000033;outline:none}.user-exchange-select option{background:var(--bg-secondary);color:var(--text-primary)}.user-dropdown-content .sync-section-wrapper{margin:0;padding:0}.user-dropdown-content .sync-dropdown-toggle{background:#0000;border:none;border-bottom:1px solid #8b00001a;border-left:2px solid #0000;border-radius:0;padding:var(--spacing-sm) var(--spacing-md)}.user-dropdown-content .sync-dropdown-toggle:hover{background:#8b00001a;border-left-color:#8b000080}.user-dropdown-content .sync-dropdown-toggle.expanded{background:#8b000026;border-bottom-color:#8b000033;border-left-color:#8b0000;border-radius:0}.user-dropdown-content .toggle-icon{color:#8b0000;font-size:.9rem}.user-dropdown-content .toggle-text{font-size:.8rem}.user-dropdown-content .sync-dropdown-toggle .expand-arrow{color:#8b0000;font-size:.6rem}.user-dropdown-content .sync-dropdown-content{background:#0a05054d;border:none;border-bottom:1px solid #8b00001a;border-radius:0}.user-dropdown-content .sync-item{border-bottom-color:#8b00001a}.user-dropdown-content .sync-item-header:hover{background:#8b000014}.user-dropdown-content .sync-item-header.active{background:#8b00001f}.user-dropdown-content .sync-item-content{background:#0a050566}.user-dropdown-content .sync-action-btn{background:linear-gradient(135deg,#8b0000,#5a0000);color:#fff}.user-dropdown-content .sync-action-btn:hover:not(:disabled){background:linear-gradient(135deg,#a00000,#6a0000);box-shadow:0 2px 10px #8b00004d;transform:none}.user-dropdown-content .sync-action-btn.accent{background:linear-gradient(135deg,#8b0000,#5a0000)}.user-dropdown-content .sync-action-btn:disabled{background:var(--bg-card);color:var(--text-muted)}.logout-item{margin-top:var(--spacing-xs)}.logout-btn{background:#0000!important}.logout-btn:hover{background:#ff33661a!important;border-left-color:var(--accent-red)!important}.logout-btn .item-icon{color:var(--accent-red)!important}.logout-btn .item-title{color:var(--accent-red)}.sidebar{background:var(--bg-secondary);border-right:none;display:flex;flex-direction:column;flex-shrink:0;height:100vh;max-width:0;min-width:0;overflow:hidden;position:relative;transition:width var(--transition-normal),min-width var(--transition-normal),max-width var(--transition-normal);width:0;z-index:100}.sidebar.open{border-right:1px solid var(--border-primary);max-width:var(--sidebar-width);min-width:var(--sidebar-width);width:var(--sidebar-width)}.sidebar-header{border-bottom:1px solid var(--border-primary);justify-content:space-between;min-height:var(--header-height);padding:var(--spacing-md)}.logo,.sidebar-header{align-items:center;display:flex}.logo{gap:var(--spacing-sm)}.logo-icon{animation:glowPulse 2s ease-in-out infinite;color:var(--accent-cyan);font-size:1.5rem;text-shadow:0 0 10px var(--accent-cyan)}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-purple));-webkit-background-clip:text;background-clip:text;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700;letter-spacing:.1em}.sidebar-toggle{align-items:center;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.75rem;height:28px;justify-content:center;transition:all var(--transition-fast);width:28px}.sidebar-toggle:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.sidebar-section{border-bottom:1px solid var(--border-primary);padding:var(--spacing-md)}.section-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;font-weight:600;gap:var(--spacing-sm);letter-spacing:.08em;margin-bottom:var(--spacing-sm);text-transform:uppercase}.section-label.collapsible{background:#0000;border:none;cursor:pointer;margin-bottom:0;padding:8px 0;transition:color var(--transition-fast);width:100%}.section-label.collapsible:hover{color:var(--accent-cyan)}.section-label.collapsible .section-title{flex:1 1;text-align:left}.section-label.collapsible .collapse-arrow{color:var(--text-muted);font-size:.6rem;transition:transform var(--transition-fast)}.section-icon,.section-label.collapsible.expanded .collapse-arrow{color:var(--accent-cyan)}.section-icon{font-size:.875rem}.count-badge{background:#00f0ff1a;border-radius:var(--radius-sm);color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-size:.65rem;margin-left:auto;padding:2px 6px}.count-badge.patterns{background:#a855f726;color:#a855f7;color:var(--accent-purple,#a855f7)}.exchange-select{background:var(--bg-card);cursor:pointer}.exchange-select:hover{border-color:var(--accent-cyan)}.search-input-wrapper{position:relative}.search-input{padding-right:36px}.search-icon{right:12px}.search-clear-btn,.search-icon{color:var(--text-muted);font-size:1rem;position:absolute;top:50%;transform:translateY(-50%)}.search-clear-btn{background:none;border:none;cursor:pointer;line-height:1;padding:4px;right:32px;transition:color var(--transition-fast)}.search-clear-btn:hover{color:var(--accent-red)}.asset-list-section{display:flex;flex:0 0 auto;flex-direction:column;min-height:0;overflow:hidden;transition:flex var(--transition-fast)}.asset-list-section.section-expanded{flex:1 1}.asset-list-section.section-collapsed{flex:0 0 auto}.asset-list{flex:1 1;margin:0 calc(var(--spacing-md)*-1);min-height:0;overflow-y:auto;padding:0 var(--spacing-sm)}.grouped-asset-list{display:flex;flex:1 1;flex-direction:column;min-height:0}.patterns-list{min-height:0}.group-country{margin-bottom:2px}.group-header{align-items:center;border:none;cursor:pointer;display:flex;font-family:JetBrains Mono,monospace;gap:6px;text-align:left;transition:background var(--transition-fast);width:100%}.country-header{background:#ffffff08;color:#00f0ff;color:var(--accent-cyan,#00f0ff);font-size:.72rem;font-weight:700;letter-spacing:.05em;padding:5px var(--spacing-md);text-transform:uppercase}.country-header:hover{background:#00f0ff0f}.kind-header{background:#0000;color:#aaa;color:var(--text-secondary,#aaa);font-size:.68rem;font-weight:600;padding:3px var(--spacing-md) 3px calc(var(--spacing-md) + 10px)}.kind-header:hover{background:#ffffff08}.group-arrow{color:inherit;flex-shrink:0;font-size:.55rem;opacity:.6;width:10px}.group-label{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-pattern-count{background:#a855f726;border-radius:var(--radius-sm);color:#a855f7;color:var(--accent-purple,#a855f7);flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:.58rem;margin-left:auto;padding:1px 4px}.group-count{flex-shrink:0;font-size:.6rem;margin-left:4px;opacity:.5}.asset-item{align-items:flex-start;background:#0000;border:none;border-left:2px solid #0000;color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;font-family:JetBrains Mono,monospace;font-size:.78rem;gap:1px;padding:3px var(--spacing-md) 3px calc(var(--spacing-md) + 20px);text-align:left;transition:all var(--transition-fast);width:100%}.asset-item:hover{background:#00f0ff0d;border-left-color:var(--accent-cyan-dim)}.asset-item.selected{background:#00f0ff1a;border-left-color:var(--accent-cyan)}.asset-symbol{color:var(--text-primary);font-size:.78rem;font-weight:600}.asset-quote{color:var(--text-muted);font-weight:400}.pattern-dot{background:#a855f7;background:var(--accent-purple,#a855f7);border-radius:50%;box-shadow:0 0 4px #a855f780;display:inline-block;flex-shrink:0;height:6px;margin-right:5px;vertical-align:middle;width:6px}.asset-full-name-sub{color:var(--text-muted);font-size:.65rem;font-weight:400;max-width:100%;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patterns-section .section-icon{color:#a855f7;color:var(--accent-purple,#a855f7)}.patterns-list .asset-item.pattern-item{align-items:center;border-left:2px solid #0000;flex-direction:row;gap:4px;height:42px;max-height:42px;min-height:42px;overflow:hidden;padding:0;padding-left:var(--spacing-sm)}.patterns-list .asset-item.pattern-item:hover{background:#a855f70d;border-left-color:#a855f7;border-left-color:var(--accent-purple,#a855f7)}.patterns-list .asset-item.pattern-item.selected{background:#a855f71a;border-left-color:#a855f7;border-left-color:var(--accent-purple,#a855f7)}.patterns-list .asset-item.pattern-item.confirm-delete{background:#ff33661a;border-left-color:var(--accent-red)}.pattern-item-content{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex:1 1;flex-direction:row;gap:var(--spacing-sm);height:100%;justify-content:space-between;min-width:0;overflow:hidden;padding:0 var(--spacing-sm);text-align:left}.pattern-item-main{display:flex;flex-direction:column;gap:1px;min-width:0;overflow:hidden}.pattern-item-meta{font-size:.65rem;gap:4px;gap:var(--spacing-xs,4px);white-space:nowrap}.pattern-delete-btn,.pattern-item-meta{align-items:center;color:var(--text-muted);display:flex}.pattern-delete-btn{background:none;border:none;border-left:1px solid var(--border-primary);cursor:pointer;font-size:.7rem;height:100%;justify-content:center;min-height:40px;opacity:0;transition:all var(--transition-fast);width:24px}.patterns-list .asset-item.pattern-item:hover .pattern-delete-btn{opacity:.6}.pattern-delete-btn:hover{background:#ff33661a;color:var(--accent-red);opacity:1!important}.pattern-delete-btn.confirming{animation:pulse-warning .5s ease infinite alternate;background:#ffcc0026;color:var(--accent-yellow);opacity:1!important}@keyframes pulse-warning{0%{background:#ffcc001a}to{background:#ffcc0040}}.pattern-delete-btn:disabled{animation:spin 1s linear infinite;cursor:not-allowed}.pattern-date{font-family:JetBrains Mono,monospace}.pattern-count{background:#a855f726;border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.6rem;padding:1px 5px}.pattern-count,.stat-value.patterns{color:#a855f7;color:var(--accent-purple,#a855f7)}.empty-state{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;font-size:.875rem;gap:var(--spacing-sm);padding:var(--spacing-xl)}.empty-icon{font-size:2rem;opacity:.5}.sidebar-footer{background:var(--bg-tertiary);border-top:1px solid var(--border-primary);display:flex;gap:var(--spacing-md);padding:var(--spacing-md)}.stat-item{display:flex;flex:1 1;flex-direction:column;gap:2px}.stat-label{color:var(--text-muted);font-size:.65rem;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.patterns-panel{background:var(--bg-secondary);border-left:none;display:flex;flex-direction:column;flex-shrink:0;height:100vh;max-width:0;min-width:0;overflow:hidden;position:relative;transition:width var(--transition-normal),min-width var(--transition-normal),max-width var(--transition-normal);width:0;z-index:90}.patterns-panel.open{border-left:1px solid var(--border-primary);max-width:320px;max-width:var(--patterns-panel-width,320px);min-width:320px;min-width:var(--patterns-panel-width,320px);width:320px;width:var(--patterns-panel-width,320px)}.patterns-panel-header{align-items:center;background:linear-gradient(135deg,var(--bg-tertiary) 0,var(--bg-secondary) 100%);border-bottom:1px solid var(--border-primary);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg)}.header-title{align-items:center;display:flex;gap:var(--spacing-sm)}.header-icon{color:var(--accent-cyan);font-size:1.1rem}.header-title h3{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;margin:0}.patterns-count{background:#00f0ff26;border:1px solid var(--accent-cyan);border-radius:var(--radius-sm);color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:600;padding:2px 8px}.collapse-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.9rem;height:28px;justify-content:center;transition:all var(--transition-fast);width:28px}.collapse-btn:hover{border-color:var(--accent-cyan);box-shadow:var(--glow-cyan);color:var(--accent-cyan)}.display-settings-container{background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);flex-shrink:0}.settings-header{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-lg);transition:background var(--transition-fast);width:100%}.settings-header:hover{background:#00f0ff0d}.settings-header-title{align-items:center;color:var(--text-secondary);display:flex;font-size:.7rem;font-weight:600;gap:var(--spacing-sm);letter-spacing:.03em;text-transform:uppercase}.settings-header-icon{color:var(--accent-purple);font-size:.9rem}.settings-expand-icon{color:var(--text-muted);font-size:.8rem;transition:transform var(--transition-fast),color var(--transition-fast)}.settings-expand-icon.expanded{color:var(--accent-cyan);transform:rotate(180deg)}.display-settings-container.expanded .settings-header{border-bottom:1px solid var(--border-primary)}.display-settings-container.expanded .settings-header-title{color:var(--accent-cyan)}.display-settings{animation:slideDown .2s ease;display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg)}.settings-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.settings-label{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;gap:var(--spacing-sm)}.settings-icon{color:var(--accent-purple)}.settings-value{color:var(--accent-cyan);font-family:JetBrains Mono,monospace;font-weight:600;margin-left:auto}.settings-slider{-webkit-appearance:none;appearance:none;background:var(--bg-card);border-radius:var(--radius-sm);cursor:pointer;height:6px;width:100%}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);border-radius:50%;box-shadow:0 0 10px #00f0ff80;cursor:pointer;height:16px;-webkit-transition:transform var(--transition-fast);transition:transform var(--transition-fast);width:16px}.settings-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.settings-slider::-moz-range-thumb{background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);border:none;border-radius:50%;cursor:pointer;height:16px;width:16px}.settings-checkbox-label{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:4px 0;-webkit-user-select:none;user-select:none}.settings-checkbox{display:none}.checkbox-custom{background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);flex-shrink:0;height:16px;position:relative;transition:all var(--transition-fast);width:16px}.checkbox-custom:after{color:var(--accent-cyan);content:"✓";font-size:.7rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform var(--transition-fast)}.settings-checkbox:checked+.checkbox-custom{background:#00f0ff1a;border-color:var(--accent-cyan)}.settings-checkbox:checked+.checkbox-custom:after{transform:translate(-50%,-50%) scale(1)}.settings-checkbox-label:hover .checkbox-custom{border-color:var(--accent-cyan)}.checkbox-text{color:var(--text-secondary);font-size:.75rem}.settings-checkbox-label.monochromatic{border-top:1px dashed var(--border-primary);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.settings-checkbox-label.monochromatic .checkbox-custom{border-color:var(--text-muted)}.settings-checkbox-label.monochromatic:hover .checkbox-custom{border-color:#888}.settings-checkbox-label.monochromatic .settings-checkbox:checked+.checkbox-custom{background:#8883;border-color:#888}.settings-checkbox-label.monochromatic .settings-checkbox:checked+.checkbox-custom:after{color:#ccc}.settings-sub-options{border-left:2px solid var(--border-primary);display:flex;flex-direction:column;gap:4px;margin-left:24px;padding:var(--spacing-xs) 0 var(--spacing-xs) var(--spacing-sm)}.settings-radio-label{align-items:center;cursor:pointer;display:flex;gap:var(--spacing-sm);padding:2px 0;-webkit-user-select:none;user-select:none}.settings-radio{display:none}.radio-custom{background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:50%;flex-shrink:0;height:14px;position:relative;transition:all var(--transition-fast);width:14px}.radio-custom:after{background:var(--accent-cyan);border-radius:50%;content:"";height:6px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform var(--transition-fast);width:6px}.settings-radio:checked+.radio-custom{background:#00f0ff1a;border-color:var(--accent-cyan)}.settings-radio:checked+.radio-custom:after{transform:translate(-50%,-50%) scale(1)}.settings-radio-label:hover .radio-custom{border-color:var(--accent-cyan)}.radio-text{color:var(--text-muted);font-size:.7rem}.line-style-section{border-top:1px dashed var(--border-primary);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.settings-section-title{color:var(--text-muted);font-size:.65rem;font-weight:600;letter-spacing:.05em;margin-bottom:var(--spacing-xs);text-transform:uppercase}.settings-radio-group{display:flex;flex-direction:column;gap:4px;padding-left:var(--spacing-sm)}.settings-checkbox-label.sub-option{font-size:.7rem;margin-top:var(--spacing-xs);padding-left:var(--spacing-sm)}.settings-checkbox-label.sub-option .checkbox-text{color:var(--text-muted);font-size:.65rem}.patterns-list{flex:1 1;overflow-y:auto;padding:var(--spacing-sm)}.no-patterns{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-xl)}.no-patterns-icon{font-size:2rem;margin-bottom:var(--spacing-md);opacity:.5}.no-patterns p{font-size:.8rem}.interval-group{margin-bottom:var(--spacing-md)}.interval-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md)}.interval-badge{background:linear-gradient(135deg,#9945ff33,#00f0ff1a);border:1px solid var(--accent-purple);border-radius:var(--radius-sm);color:var(--accent-purple);font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:3px 10px;text-transform:uppercase}.interval-count{color:var(--text-muted);font-size:.65rem}.interval-patterns{display:flex;flex-direction:column;gap:4px}.pattern-item{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.pattern-item:hover{border-color:var(--border-secondary)}.pattern-item.selected{border-color:var(--accent-cyan);box-shadow:0 0 15px #00f0ff33}.pattern-item.expanded{background:var(--bg-tertiary)}.pattern-header{width:100%}.pattern-header,.pattern-header-main{align-items:center;background:#0000;display:flex;transition:background var(--transition-fast)}.pattern-header-main{border:none;cursor:pointer;flex:1 1;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) var(--spacing-md)}.pattern-header-main:hover,.pattern-header:hover{background:#00f0ff0d}.pattern-main{align-items:center;display:flex;gap:var(--spacing-sm)}.pattern-direction{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:.65rem;height:22px;justify-content:center;width:22px}.pattern-direction.bullish{background:#00ff8826;border:1px solid var(--accent-green);color:var(--accent-green)}.pattern-direction.bearish{background:#ff336626;border:1px solid var(--accent-red);color:var(--accent-red)}.pattern-name{color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.pattern-status{font-size:.5rem}.pattern-status.formed{color:var(--accent-green)}.pattern-status.forming{color:var(--accent-yellow)}.pattern-meta{align-items:center;display:flex;gap:var(--spacing-sm)}.pattern-confluence-count,.pattern-date{color:var(--text-muted);font-size:.65rem}.pattern-confluence-count{background:#ffffff0f;border:1px solid var(--border-primary);border-radius:6px;font-family:JetBrains Mono,monospace;font-weight:600;margin-left:auto;margin-right:var(--spacing-sm);min-width:1.25rem;padding:1px 6px;text-align:center}.pattern-confluence-count.has-confluences{background:#00f0ff1a;border-color:#00f0ff59;color:var(--accent-cyan)}.pattern-item.has-active-options{border-left:2px solid var(--accent-cyan)}.expand-btn{align-items:center;background:#0000;border:none;border-left:1px solid var(--border-primary);cursor:pointer;display:flex;height:100%;justify-content:center;min-height:36px;padding:0;transition:all var(--transition-fast);width:28px}.expand-btn:hover{background:#00f0ff1a}.expand-btn:hover .expand-icon{color:var(--accent-cyan)}.expand-btn.expanded{background:#00f0ff0d}.expand-icon{color:var(--text-muted);font-size:.8rem;transition:transform var(--transition-fast),color var(--transition-fast)}.expand-btn.expanded .expand-icon{color:var(--accent-cyan);transform:rotate(180deg)}.pattern-details{animation:slideDown .2s ease;border-top:1px solid var(--border-primary);padding:var(--spacing-sm) var(--spacing-md)}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:1000px;opacity:1}}.details-section{border-bottom:1px dashed var(--border-primary);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.details-title{color:var(--text-muted);font-size:.65rem;font-weight:600;letter-spacing:.05em;margin-bottom:var(--spacing-xs);text-transform:uppercase}.pattern-info-callout{background:#b8960b;border:1px solid #00000038;border-radius:10px;box-shadow:0 1px 4px #00000026;color:#0d0d0d;margin-bottom:var(--spacing-sm);padding:8px 10px 10px}.pattern-info-callout-toggle{align-items:flex-start;background:#0000;border:none;border-radius:6px;color:inherit;cursor:pointer;display:flex;font-family:inherit;gap:6px;margin:0;padding:4px 2px;text-align:left;transition:background .12s;width:100%}.pattern-info-callout-toggle:hover{background:#00000014}.pattern-info-chevron{color:#000;flex-shrink:0;font-size:.55rem;line-height:1.4;opacity:.85;width:10px}.pattern-info-icon{color:#000;flex-shrink:0;font-size:1rem;line-height:1;margin-top:1px}.pattern-info-callout-title{color:#000;font-size:.72rem;font-weight:700;letter-spacing:.02em;line-height:1.3}.pattern-info-structure{font-weight:600;margin-left:4px;opacity:.72}.pattern-info-body{border-top:1px solid #0000001f;margin-top:4px;padding:8px 2px 2px calc(22px + 1rem)}.pattern-info-lead{color:#000;font-size:.58rem;font-weight:700;letter-spacing:.06em;margin:8px 0 3px;text-transform:uppercase}.pattern-info-lead:first-child{margin-top:0}.pattern-info-text{color:#111;font-size:.65rem;font-weight:500;line-height:1.45;margin:0}.strategy-section{background:#9945ff0d;border-left:2px solid var(--accent-purple);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);padding:var(--spacing-sm)}.strategy-section .details-title{color:var(--accent-purple)}.strategy-row{display:flex;flex-direction:column;gap:4px}.strategy-item{align-items:center;background:var(--bg-card);border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:3px 6px}.strategy-label{color:var(--text-muted);font-size:.55rem;letter-spacing:.02em;text-transform:uppercase}.strategy-label,.strategy-value{font-family:JetBrains Mono,monospace}.strategy-value{align-items:center;color:var(--text-primary);display:flex;font-size:.6rem;gap:4px}.strategy-detail{color:var(--accent-cyan);font-size:.55rem}.points-row{display:flex;flex-wrap:wrap;gap:4px}.point-mini{align-items:center;background:var(--bg-card);border-radius:var(--radius-sm);display:flex;flex-direction:column;min-width:48px;padding:4px 8px}.point-label{color:var(--accent-cyan);font-size:.55rem;font-weight:700}.point-label,.point-value{font-family:JetBrains Mono,monospace}.point-value{color:var(--text-primary);font-size:.6rem}.retraces-row{display:flex;flex-wrap:wrap;gap:4px}.retrace-mini{background:var(--bg-card);border-radius:var(--radius-sm);display:flex;gap:4px;padding:3px 6px}.retrace-key{color:var(--text-muted)}.retrace-key,.retrace-val{font-family:JetBrains Mono,monospace;font-size:.55rem}.retrace-val{color:var(--accent-cyan);font-weight:600}.display-options-row{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(2,1fr)}.display-option{align-items:center;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-size:.6rem;gap:4px;padding:4px 8px;transition:all var(--transition-fast)}.display-option:hover:not(.disabled){background:var(--bg-card-hover);border-color:var(--border-secondary)}.display-option.active{background:#00f0ff1a;border-color:var(--accent-cyan);color:var(--accent-cyan)}.display-option.disabled{cursor:not-allowed;opacity:.4}.option-icon{font-size:.7rem}.option-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fib-section{background:#0003;border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs);padding:var(--spacing-sm)}.details-title.fib-retracement{color:var(--accent-yellow)}.details-title.fib-extension{color:var(--accent-purple)}.details-title.fib-fe{color:var(--accent-cyan)}.details-title.fib-targets{color:var(--accent-green)}.fib-grid{grid-gap:3px;display:grid;gap:3px;grid-template-columns:repeat(2,1fr)}.fib-grid.targets{grid-template-columns:repeat(2,1fr)}.fib-item{background:var(--bg-card);border-left:2px solid var(--border-secondary);border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:3px 6px}.fib-item.target-tp{border-left-color:var(--accent-green)}.fib-item.target-prz{border-left-color:var(--accent-yellow)}.fib-item.target-sl{border-left-color:var(--accent-red)}.fib-lvl{color:var(--text-secondary)}.fib-lvl,.fib-prc{font-family:JetBrains Mono,monospace;font-size:.55rem}.fib-prc{color:var(--text-primary)}.fib-item.clickable{border:none;cursor:pointer;text-align:left;transition:all var(--transition-fast);width:100%}.fib-item.clickable:hover{background:var(--bg-card-hover);transform:translateX(2px)}.fib-item.clickable.visible{border-left:2px solid var(--accent-cyan)}.fib-item.clickable.hidden{border-left:2px solid var(--border-primary);opacity:.35}.fib-item.clickable.hidden:hover{opacity:.6}.fib-item.clickable.visible.target-tp{border-left-color:var(--accent-green)}.fib-item.clickable.visible.target-prz{border-left-color:var(--accent-yellow)}.fib-item.clickable.visible.target-sl{border-left-color:var(--accent-red)}.fe-leg-group{border-bottom:1px solid var(--border-primary);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs)}.fe-leg-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.fe-leg-group.collapsed{padding-bottom:0}.fe-leg-header{align-items:center;display:flex;gap:6px;margin-bottom:4px}.fe-leg-group.collapsed .fe-leg-header{margin-bottom:0}.fe-leg-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;height:14px;justify-content:center;padding:0;width:14px}.toggle-arrow{color:var(--text-muted);font-size:.5rem;transition:transform .2s ease}.toggle-arrow.expanded{transform:rotate(90deg)}.fe-leg-name,.fe-leg-toggle:hover .toggle-arrow{color:var(--accent-cyan)}.fe-leg-name{background:#00f0ff1a;border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:600;padding:1px 4px}.fe-leg-levels{font-family:JetBrains Mono,monospace}.fe-leg-desc,.fe-leg-levels{color:var(--text-muted);font-size:.5rem}.fe-leg-desc{font-style:italic}.fe-chart-toggle{background:none;border:none;color:var(--text-muted);cursor:pointer;filter:grayscale(100%);font-size:.6rem;opacity:.5;padding:0;transition:all .2s ease}.fe-chart-toggle:hover{opacity:.8}.fe-chart-toggle.active{color:var(--accent-cyan);filter:grayscale(0);opacity:1}.fe-info-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.65rem;margin-left:auto;opacity:.6;padding:0;transition:all .2s ease}.fe-info-btn.active,.fe-info-btn:hover{color:var(--accent-cyan);opacity:1}.fe-leg-group.disabled-group{opacity:.5}.fe-leg-group.disabled-group .fe-leg-name{background:#8080801a;color:var(--text-muted)}.fe-info-tooltip{animation:fadeIn .15s ease;background:var(--bg-secondary);border:1px solid var(--accent-cyan);border-radius:var(--radius-sm);font-size:.55rem;margin:4px 0;padding:8px}.fe-info-patterns{color:var(--text-secondary);margin-bottom:4px}.fe-info-patterns strong{color:var(--accent-cyan);font-weight:600}.fe-info-desc{color:var(--text-primary);line-height:1.4}.completion-row{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:1fr 1fr}.completion-item{background:var(--bg-card);border-radius:var(--radius-sm);display:flex;font-family:JetBrains Mono,monospace;font-size:.6rem;justify-content:space-between;padding:4px 8px}.completion-item.max span:last-child{color:var(--accent-green);font-weight:600}.completion-item.min span:last-child{color:var(--accent-red);font-weight:600}.completion-item span:first-child{color:var(--text-muted)}.patterns-list.monochromatic .pattern-direction.bullish{background:#0000;border:1px solid #fff;color:#fff}.patterns-list.monochromatic .pattern-direction.bearish{background:#0000;border:1px solid #ffffff80;color:#ffffff80}.patterns-list.monochromatic .completion-item.max span:last-child{color:#fff}.patterns-list.monochromatic .completion-item.min span:last-child{color:#ffffff80}.shared-intervals{border-top:1px dashed var(--border-primary);display:flex;flex-direction:column;gap:4px;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.shared-label{color:var(--text-muted);font-size:.55rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.interval-buttons{display:flex;flex-wrap:wrap;gap:3px}.interval-btn{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-family:JetBrains Mono,monospace;font-size:.55rem;font-weight:500;padding:2px 6px;transition:all var(--transition-fast)}.interval-btn.active,.interval-btn:hover{border-color:var(--accent-purple);color:var(--accent-purple)}.interval-btn.active{background:#9945ff33;box-shadow:0 0 8px #9945ff4d}.shared-lines-section{background:linear-gradient(135deg,#9945ff0d 0,var(--bg-tertiary) 100%);border-top:1px solid var(--border-primary);flex-shrink:0;max-height:200px;overflow-y:auto}.shared-lines-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);position:-webkit-sticky;position:sticky;top:0;z-index:1}.shared-lines-icon{color:var(--accent-purple);font-size:.9rem}.shared-lines-title{font-size:.7rem;letter-spacing:.05em;text-transform:uppercase}.shared-lines-count,.shared-lines-title{color:var(--accent-purple);font-weight:600}.shared-lines-count{background:#9945ff33;border:1px solid var(--accent-purple);border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.6rem;padding:1px 6px}.shared-lines-list{padding:var(--spacing-xs)}.shared-line-item{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px;margin-bottom:4px;padding:var(--spacing-xs) var(--spacing-sm)}.shared-line-item:last-child{margin-bottom:0}.shared-line-info{align-items:center;display:flex;gap:var(--spacing-xs)}.shared-line-direction{align-items:center;border-radius:3px;display:flex;font-size:.5rem;height:16px;justify-content:center;width:16px}.shared-line-direction.bullish{background:#00ff8826;border:1px solid var(--accent-green);color:var(--accent-green)}.shared-line-direction.bearish{background:#ff336626;border:1px solid var(--accent-red);color:var(--accent-red)}.shared-line-pattern{color:var(--text-primary);font-size:.65rem}.shared-line-interval,.shared-line-pattern{font-family:JetBrains Mono,monospace;font-weight:600}.shared-line-interval{background:#00f0ff1a;border:1px solid var(--accent-cyan);border-radius:3px;color:var(--accent-cyan);font-size:.55rem;padding:1px 4px}.shared-line-category{color:var(--text-muted);font-size:.6rem;padding-left:20px}.shared-line-targets{align-items:center;display:flex;flex-wrap:wrap;gap:4px;padding-left:20px}.shared-to-label{color:var(--accent-purple);font-size:.7rem}.shared-to-interval{background:#9945ff1a;border:1px solid var(--accent-purple);border-radius:3px;color:var(--accent-purple);font-family:JetBrains Mono,monospace;font-size:.5rem;font-weight:500;padding:1px 4px}.shared-to-interval.current{background:#9945ff4d;box-shadow:0 0 6px #9945ff66}.confluences-section .details-title{align-items:center;color:var(--accent-cyan);display:flex;justify-content:space-between}.confluence-score{background:#00c8781f;border-radius:8px;color:var(--accent-green);font-size:.6rem;font-weight:500;letter-spacing:0;padding:1px 6px;text-transform:none}.confluences-list{display:flex;flex-direction:column;gap:6px}.confluence-category{display:flex;flex-direction:column;gap:2px}.confluence-cat-title{align-items:center;background:#0000;border:none;border-radius:2px;color:var(--text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:.6rem;font-weight:600;gap:4px;margin:0;padding:3px 2px 3px 0;text-align:left;transition:background .12s,color .12s;width:100%}.confluence-cat-title:hover{background:#ffffff0f;color:var(--text-secondary)}.confluence-cat-title.has-hits{color:var(--text-secondary)}.confluence-cat-title.has-hits:hover{color:var(--text-primary)}.confluence-cat-chevron{flex-shrink:0;font-size:.5rem;opacity:.75;width:10px}.confluence-cat-title-text{flex:1 1;line-height:1.25;min-width:0}.cat-hits{color:var(--accent-green);font-size:.55rem;font-weight:500;opacity:.8}.confluence-items{display:flex;flex-direction:column;gap:1px;padding-left:4px}.confluence-item{align-items:center;display:flex;font-size:.6rem;gap:5px;padding:1px 0;transition:opacity .15s}.confluence-item.inactive{opacity:.4}.confluence-item.active{opacity:1}.confluence-dot{flex-shrink:0;font-size:.5rem;text-align:center;width:10px}.confluence-dot.hit,.confluence-dot.miss{color:#fff}.confluence-label{color:var(--text-secondary);flex:1 1}.confluence-item.active .confluence-label{color:var(--text-primary)}.confluence-conf{color:var(--accent-green);font-size:.55rem;font-weight:600;min-width:28px;text-align:right}@media (max-width:1400px){.patterns-panel.open{max-width:280px;min-width:280px;width:280px}}.login-container{align-items:center;background:var(--bg-primary);bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0}.login-bg-pattern{background-image:linear-gradient(#00f0ff05 1px,#0000 0),linear-gradient(90deg,#00f0ff05 1px,#0000 0);background-size:50px 50px;bottom:0;left:0;right:0;top:0}.login-bg-glow,.login-bg-pattern{pointer-events:none;position:absolute}.login-bg-glow{animation:glowFloat 8s ease-in-out infinite;border-radius:50%;filter:blur(100px)}.login-bg-glow-1{background:radial-gradient(circle,#9945ff26 0,#0000 70%);height:500px;left:-10%;top:-20%;width:500px}.login-bg-glow-2{animation-delay:-4s;background:radial-gradient(circle,#00f0ff1a 0,#0000 70%);bottom:-20%;height:600px;right:-10%;width:600px}@keyframes glowFloat{0%,to{opacity:.5;transform:translate(0) scale(1)}50%{opacity:.8;transform:translate(30px,-20px) scale(1.1)}}.login-content{align-items:center;display:flex;gap:var(--spacing-xl);justify-content:center;max-width:1000px;padding:var(--spacing-xl);width:100%;z-index:1}.login-form-container{flex:0 0 380px}.login-form-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0c1018d9;border:1px solid #00f0ff33;border-radius:var(--radius-xl);box-shadow:0 0 40px #00000080,0 0 80px #00f0ff0d,inset 0 1px 0 #ffffff0d;padding:var(--spacing-xl)}.login-header{margin-bottom:var(--spacing-xl);text-align:center}.login-logo{align-items:center;display:flex;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-sm)}.login-logo-icon{animation:glowPulse 2s ease-in-out infinite;color:var(--accent-cyan);font-size:2rem;text-shadow:0 0 20px var(--accent-cyan)}.login-logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-purple));-webkit-background-clip:text;background-clip:text;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:.15em}.login-subtitle{color:var(--text-secondary);font-size:.9rem;margin:0}.login-form{gap:var(--spacing-md)}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:var(--spacing-xs)}.form-group label{align-items:center;color:var(--text-secondary);display:flex;font-size:.8rem;font-weight:600;gap:var(--spacing-sm);letter-spacing:.08em;text-transform:uppercase}.label-icon{color:var(--accent-cyan);font-size:.9rem}.form-input{background:#060810cc;border:1px solid var(--border-secondary);border-radius:var(--radius-md);color:var(--text-primary);font-family:JetBrains Mono,monospace;font-size:.95rem;padding:var(--spacing-md);transition:all var(--transition-fast);width:100%}.form-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00f0ff1a,0 0 20px #00f0ff1a;outline:none}.form-input::placeholder{color:var(--text-muted);font-family:Outfit,sans-serif}.form-input:disabled{cursor:not-allowed;opacity:.6}.password-input-wrapper{position:relative}.password-input-wrapper .form-input{padding-right:48px}.password-toggle{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.1rem;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--accent-cyan)}.form-group.has-error .form-input{border-color:var(--accent-red)}.form-group.has-error .form-input:focus{box-shadow:0 0 0 3px #ff33661a,0 0 20px #ff33661a}.error-message{font-size:.75rem;gap:4px}.error-message,.form-error-alert{align-items:center;color:var(--accent-red);display:flex}.form-error-alert{animation:shake .5s ease-in-out;background:#ff33661a;border:1px solid #ff33664d;border-radius:var(--radius-md);font-size:.85rem;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md)}.error-icon{font-size:1rem}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}.login-submit-btn{align-items:center;background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);border:none;border-radius:var(--radius-md);color:var(--bg-primary);cursor:pointer;display:flex;font-family:Outfit,sans-serif;font-size:1rem;font-weight:600;gap:var(--spacing-sm);justify-content:center;letter-spacing:.05em;margin-top:var(--spacing-sm);overflow:hidden;padding:var(--spacing-md) var(--spacing-lg);position:relative;transition:all var(--transition-fast)}.login-submit-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.login-submit-btn:hover:not(:disabled):before{left:100%}.login-submit-btn:hover:not(:disabled){box-shadow:0 4px 20px #00f0ff66,0 0 40px #9945ff33;transform:translateY(-2px)}.login-submit-btn:active:not(:disabled){transform:translateY(0)}.login-submit-btn:disabled{cursor:not-allowed;opacity:.7}.login-submit-btn.loading{background:var(--bg-card);border:1px solid var(--accent-cyan);color:var(--accent-cyan)}.btn-icon{font-size:1.2rem;transition:transform var(--transition-fast)}.login-submit-btn:hover:not(:disabled) .btn-icon{transform:translateX(4px)}.spinner{animation:spin 1s linear infinite}.login-footer{border-top:1px solid var(--border-primary);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);text-align:center}.login-footer-text{color:var(--text-muted);font-size:.75rem;letter-spacing:.05em}.login-chart-container{align-items:center;display:flex;flex:0 0 500px;justify-content:center}.login-chart-wrapper{border:1px solid #9945ff33;border-radius:var(--radius-lg);box-shadow:0 0 60px #00000080,0 0 100px #9945ff1a;overflow:hidden;position:relative}.login-chart-canvas{border-radius:var(--radius-lg);display:block}.login-chart-overlay{align-items:center;background:linear-gradient(#0000,#060810e6);bottom:0;display:flex;justify-content:space-between;left:0;padding:var(--spacing-md);position:absolute;right:0}.chart-label{align-items:center;color:var(--accent-purple);display:flex;font-family:JetBrains Mono,monospace;font-size:.8rem;font-weight:600;gap:var(--spacing-sm)}.chart-label-icon{animation:glowPulse 2s ease-in-out infinite;font-size:1rem}.chart-info{display:flex;font-family:JetBrains Mono,monospace;font-size:.7rem;gap:var(--spacing-md)}.bullish-label{color:var(--accent-green)}.bearish-label{color:var(--accent-red)}@media (max-width:1000px){.login-content{flex-direction:column-reverse;gap:var(--spacing-lg)}.login-form-container{flex:0 0 auto;max-width:400px;width:100%}.login-chart-container{flex:0 0 auto;max-width:500px;width:100%}.login-chart-canvas{height:auto;width:100%}}@media (max-width:540px){.login-content{padding:var(--spacing-md)}.login-form-card{padding:var(--spacing-lg)}.login-chart-container{display:none}}:root{--bg-primary:#060810;--bg-secondary:#0c1018;--bg-tertiary:#121620;--bg-card:#0f1419;--bg-card-hover:#151b24;--accent-cyan:#00f0ff;--accent-cyan-dim:#00a0aa;--accent-magenta:#f0a;--accent-purple:#9945ff;--accent-green:#0f8;--accent-red:#f36;--accent-orange:#f93;--accent-yellow:#fc0;--text-primary:#e6edf3;--text-secondary:#8b949e;--text-muted:#484f58;--text-accent:#00f0ff;--border-primary:#21262d;--border-secondary:#30363d;--border-accent:#00f0ff4d;--chart-bullish:#0f8;--chart-bearish:#f36;--chart-volume:#00f0ff4d;--chart-grid:#ffffff08;--glow-cyan:0 0 20px #00f0ff4d;--glow-green:0 0 20px #00ff884d;--glow-red:0 0 20px #ff33664d;--shadow-card:0 4px 24px #0006;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--transition-fast:0.15s ease;--transition-normal:0.25s ease;--transition-slow:0.4s ease;--sidebar-width:280px;--sidebar-collapsed:60px;--right-panel-width:360px;--patterns-panel-width:320px;--header-height:56px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#060810;background:var(--bg-primary);color:#e6edf3;color:var(--text-primary);font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;overflow-x:hidden}body:before{background:radial-gradient(ellipse at top left,#00f0ff0d 0,#0000 50%),radial-gradient(ellipse at bottom right,#9945ff0d 0,#0000 50%),linear-gradient(180deg,#060810,#0c1018);background:radial-gradient(ellipse at top left,#00f0ff0d 0,#0000 50%),radial-gradient(ellipse at bottom right,#9945ff0d 0,#0000 50%),linear-gradient(180deg,var(--bg-primary) 0,var(--bg-secondary) 100%)}body:after,body:before{bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:-1}body:after{background-image:linear-gradient(#00f0ff05 1px,#0000 0),linear-gradient(90deg,#00f0ff05 1px,#0000 0);background-size:50px 50px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0c1018;background:var(--bg-secondary);border-radius:4px;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb{background:#30363d;background:var(--border-secondary);border:2px solid #0c1018;border:2px solid var(--bg-secondary);border-radius:4px;border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:#00a0aa;background:var(--accent-cyan-dim)}::selection{background:#00f0ff4d;color:#e6edf3;color:var(--text-primary)}.app{flex-direction:row;width:100%}.app,.main-content{display:flex;min-height:100vh;overflow:hidden}.main-content{flex:1 1;flex-direction:column;min-width:0;position:relative;transition:flex .25s ease;transition:flex var(--transition-normal)}h1,h2,h3,h4,h5,h6{color:#e6edf3;color:var(--text-primary);font-family:Outfit,sans-serif;font-weight:600;letter-spacing:-.02em}.mono{font-family:JetBrains Mono,Fira Code,monospace}.btn{align-items:center;background:#0f1419;background:var(--bg-card);border:1px solid #30363d;border:1px solid var(--border-secondary);border-radius:8px;border-radius:var(--radius-md);color:#e6edf3;color:var(--text-primary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:500;gap:8px;gap:var(--spacing-sm);justify-content:center;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md);transition:all .15s ease;transition:all var(--transition-fast)}.btn:hover{background:#151b24;background:var(--bg-card-hover);border-color:#00f0ff;border-color:var(--accent-cyan);box-shadow:0 0 20px #00f0ff4d;box-shadow:var(--glow-cyan)}.btn-primary{background:linear-gradient(135deg,#00f0ff,#9945ff);background:linear-gradient(135deg,var(--accent-cyan) 0,var(--accent-purple) 100%);border-color:#0000;color:#060810;color:var(--bg-primary)}.btn-primary:hover{box-shadow:0 0 20px #00f0ff4d;box-shadow:var(--glow-cyan);opacity:.9}.btn-sm{font-size:.75rem;padding:4px 8px;padding:var(--spacing-xs) var(--spacing-sm)}.btn-icon{border-radius:8px;border-radius:var(--radius-md);height:36px;padding:0;width:36px}.input{background:#0c1018;background:var(--bg-secondary);border:1px solid #30363d;border:1px solid var(--border-secondary);border-radius:8px;border-radius:var(--radius-md);color:#e6edf3;color:var(--text-primary);font-family:inherit;font-size:.875rem;padding:8px 16px;padding:var(--spacing-sm) var(--spacing-md);transition:all .15s ease;transition:all var(--transition-fast);width:100%}.input:focus{border-color:#00f0ff;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00f0ff1a;outline:none}.input::placeholder{color:#484f58;color:var(--text-muted)}.select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%238b949e' d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.card{background:#0f1419;background:var(--bg-card);border:1px solid #21262d;border:1px solid var(--border-primary);border-radius:12px;border-radius:var(--radius-lg);padding:24px;padding:var(--spacing-lg);transition:all .15s ease;transition:all var(--transition-fast)}.card:hover{border-color:#30363d;border-color:var(--border-secondary)}.label{align-items:center;background:#00f0ff1a;border:1px solid #00f0ff;border:1px solid var(--accent-cyan);border-radius:4px;border-radius:var(--radius-sm);color:#00f0ff;color:var(--accent-cyan);display:inline-flex;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:500;letter-spacing:.05em;padding:2px 8px;text-transform:uppercase}.label-bullish{background:#00ff881a;border-color:#0f8;border-color:var(--accent-green);color:#0f8;color:var(--accent-green)}.label-bearish{background:#ff33661a;border-color:#f36;border-color:var(--accent-red);color:#f36;color:var(--accent-red)}.loader{align-items:center;display:flex;justify-content:center;padding:32px;padding:var(--spacing-xl)}.loader-spinner{animation:spin 1s linear infinite;border:3px solid #30363d;border-top-color:#00f0ff;border:3px solid var(--border-secondary);border-radius:50%;border-top-color:var(--accent-cyan);height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.auth-loading{align-items:center;color:#8b949e;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.9rem;gap:16px;gap:var(--spacing-md);justify-content:center;min-height:100vh;width:100%}.auth-loading .loader-spinner{height:50px;width:50px}.fade-in{animation:fadeIn .3s ease forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{box-shadow:0 0 5px #00f0ff4d}50%{box-shadow:0 0 20px #00f0ff80}}.neon-text{text-shadow:0 0 10px currentColor,0 0 20px currentColor}.patterns-panel-toggle{align-items:center;background:linear-gradient(135deg,#121620,#0c1018);background:linear-gradient(135deg,var(--bg-tertiary) 0,var(--bg-secondary) 100%);border:1px solid #00f0ff;border:1px solid var(--accent-cyan);border-radius:12px 0 0 12px;border-radius:var(--radius-lg) 0 0 var(--radius-lg);border-right:none;box-shadow:-4px 0 20px #00f0ff33;color:#00f0ff;color:var(--accent-cyan);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 8px;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:all .15s ease;transition:all var(--transition-fast);z-index:50}.patterns-panel-toggle:hover{background:#121620;background:var(--bg-tertiary);box-shadow:-4px 0 30px #00f0ff66;padding-right:12px}.patterns-panel-toggle .toggle-icon{font-size:1.2rem}.patterns-panel-toggle .toggle-count{background:#00f0ff26;border-radius:4px;border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:.65rem;font-weight:700;padding:2px 6px}.sidebar-panel-toggle{align-items:center;background:linear-gradient(135deg,#121620,#0c1018);background:linear-gradient(135deg,var(--bg-tertiary) 0,var(--bg-secondary) 100%);border:1px solid #9945ff;border:1px solid var(--accent-purple);border-left:none;border-radius:0 12px 12px 0;border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:4px 0 20px #9945ff33;color:#9945ff;color:var(--accent-purple);cursor:pointer;display:flex;flex-direction:column;gap:4px;left:0;padding:12px 8px;position:absolute;top:50%;transform:translateY(-50%);transition:all .15s ease;transition:all var(--transition-fast);z-index:50}.sidebar-panel-toggle:hover{background:#121620;background:var(--bg-tertiary);box-shadow:4px 0 30px #9945ff66;padding-left:12px}.sidebar-panel-toggle .toggle-icon{font-size:1.2rem}@media (max-width:1200px){:root{--sidebar-width:240px;--right-panel-width:320px;--patterns-panel-width:280px}}@media (max-width:768px){:root{--sidebar-width:280px;--right-panel-width:100%;--patterns-panel-width:100%}.app{flex-direction:row}.main-content{height:100vh;min-height:100vh}.patterns-panel.open,.sidebar.open{bottom:0;left:0;max-width:100%;position:fixed;right:0;top:0;width:100%;z-index:200}.patterns-panel.open{left:auto}}