:root{--bg-primary:#0d1117;--bg-secondary:#161b22;--bg-tertiary:#21262d;--border-color:#30363d;--border-hover:#484f58;--text-primary:#e6edf3;--text-secondary:#8b949e;--accent-blue:#58a6ff;--accent-purple:#a371f7;--accent-green:#3fb950;--accent-red:#f85149;--accent-orange:#d29922;--accent-cyan:#39c5cf}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0d1117;background-color:var(--bg-primary);color:#e6edf3;color:var(--text-primary);font-family:Inter,Roboto,Helvetica,Arial,sans-serif;margin:0;padding:0}.app-container{margin:16px auto 32px;max-width:1600px;padding:24px}.control-panel{padding:24px}.chart-container,.control-panel{background-color:#161b22;background-color:var(--bg-secondary);border:1px solid #30363d;border:1px solid var(--border-color);border-radius:12px;margin-bottom:24px}.chart-container{padding:16px}.recharts-surface,.recharts-wrapper{background-color:initial!important}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line,.recharts-cartesian-grid line{stroke:#30363d!important;stroke:var(--border-color)!important}.recharts-text{fill:#8b949e!important;fill:var(--text-secondary)!important}.recharts-legend-item-text{color:#e6edf3!important;color:var(--text-primary)!important}.chart-tooltip,.recharts-tooltip-wrapper .recharts-default-tooltip{background-color:#21262d!important;background-color:var(--bg-tertiary)!important;border:1px solid #30363d!important;border:1px solid var(--border-color)!important;border-radius:8px!important;box-shadow:0 8px 24px #0006!important;padding:12px 16px!important}.recharts-tooltip-label{color:#e6edf3!important;color:var(--text-primary)!important;font-weight:600!important;margin-bottom:8px!important}.recharts-tooltip-item,.recharts-tooltip-item-name{color:#8b949e!important;color:var(--text-secondary)!important}.recharts-tooltip-item-value{color:#e6edf3!important;color:var(--text-primary)!important;font-weight:500!important}.recharts-brush{background-color:#21262d;background-color:var(--bg-tertiary)}.recharts-brush rect.recharts-brush-slide{fill:#58a6ff33!important;stroke:#58a6ff!important;stroke:var(--accent-blue)!important}.recharts-brush rect.recharts-brush-traveller{fill:#58a6ff!important;fill:var(--accent-blue)!important}.recharts-brush-texts text{fill:#8b949e!important;fill:var(--text-secondary)!important}.date-picker-input{background-color:#161b22;background-color:var(--bg-secondary);border:1px solid #30363d;border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:#e6edf3;color:var(--text-primary);font-size:1rem;padding:10px 14px;transition:border-color .2s ease;width:100%}.date-picker-input:hover{border-color:#484f58;border-color:var(--border-hover)}.date-picker-input:focus{border-color:#58a6ff;border-color:var(--accent-blue);box-shadow:0 0 0 3px #58a6ff1a;outline:none}.react-datepicker-wrapper,.react-datepicker__input-container{width:100%}.react-datepicker{background-color:#161b22!important;background-color:var(--bg-secondary)!important;border:1px solid #30363d!important;border:1px solid var(--border-color)!important;border-radius:12px!important;font-family:inherit!important}.react-datepicker__header{background-color:#21262d!important;background-color:var(--bg-tertiary)!important;border-bottom:1px solid #30363d!important;border-bottom:1px solid var(--border-color)!important}.react-datepicker__current-month,.react-datepicker__day,.react-datepicker__day-name{color:#e6edf3!important;color:var(--text-primary)!important}.react-datepicker__day:hover{background-color:#21262d!important;background-color:var(--bg-tertiary)!important}.react-datepicker__day--selected{background-color:#58a6ff!important;background-color:var(--accent-blue)!important}.signal-intensity-indicator{align-items:center;display:flex}.signal-intensity-bar{background-color:#21262d;background-color:var(--bg-tertiary);border:1px solid #30363d;border:1px solid var(--border-color);border-radius:5px;height:10px;margin-right:8px;overflow:hidden}.signal-intensity-value{border-radius:5px;height:100%;transition:width .3s ease}@media (max-width:600px){.app-container,.control-panel{padding:16px}}.spinner-container{align-items:center;display:flex;height:200px;justify-content:center}.chip-strong-buy{background-color:#3fb95033!important;border:1px solid #3fb950!important;border:1px solid var(--accent-green)!important;color:#3fb950!important;color:var(--accent-green)!important}.chip-weak-buy{background-color:#3fb9501a!important;border:1px solid #3fb95066!important;color:#56d364!important}.chip-strong-sell{background-color:#f8514933!important;border:1px solid #f85149!important;border:1px solid var(--accent-red)!important;color:#f85149!important;color:var(--accent-red)!important}.chip-weak-sell{background-color:#f851491a!important;border:1px solid #f8514966!important;color:#ff7b72!important}.signal-table-container{border-radius:8px;max-height:600px;overflow-y:auto}.signal-table-container::-webkit-scrollbar{width:8px}.signal-table-container::-webkit-scrollbar-track{background:#0d1117;background:var(--bg-primary)}.signal-table-container::-webkit-scrollbar-thumb{background:#30363d;background:var(--border-color);border-radius:4px}.signal-table-container::-webkit-scrollbar-thumb:hover{background:#484f58;background:var(--border-hover)}.MuiCard-root{transition:border-color .2s ease,box-shadow .2s ease}.MuiCard-root:hover{border-color:#484f58;border-color:var(--border-hover)}.metric-card{background:linear-gradient(135deg,#161b22,#21262d);background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-tertiary) 100%);border:1px solid #30363d;border:1px solid var(--border-color);border-radius:12px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.metric-card:hover{box-shadow:0 8px 24px #0000004d;transform:translateY(-2px)}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#58a6ff,#a371f7);background:linear-gradient(135deg,var(--accent-blue) 0,var(--accent-purple) 100%);-webkit-background-clip:text;background-clip:text}::selection{background-color:#58a6ff4d;color:#e6edf3;color:var(--text-primary)}:focus-visible{outline:2px solid #58a6ff;outline:2px solid var(--accent-blue);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}.glow-blue{box-shadow:0 0 20px #58a6ff4d}.glow-green{box-shadow:0 0 20px #3fb9504d}.glow-red{box-shadow:0 0 20px #f851494d}