*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-tertiary: #252525;--text-primary: #ffffff;--text-secondary: #a0a0a0;--accent: #00d4aa;--accent-hover: #00b894;--danger: #e74c3c;--success: #27ae60;--border: #333}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}button.primary{background:var(--accent);color:var(--bg-primary)}button.primary:hover{background:var(--accent-hover)}button.secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}button.secondary:hover{background:var(--bg-secondary)}input{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;padding:10px 14px;font-size:14px;color:var(--text-primary);width:100%}input:focus{outline:none;border-color:var(--accent)}.container{max-width:1400px;margin:0 auto;padding:0 20px}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border);padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.header-logo{font-size:20px;font-weight:700;color:var(--accent)}.header-user{display:flex;align-items:center;gap:16px}.header-user span{color:var(--text-secondary)}.main-content{flex:1;padding:24px}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:40px;width:100%;max-width:400px}.login-card h1{text-align:center;margin-bottom:8px;color:var(--accent)}.login-card p{text-align:center;color:var(--text-secondary);margin-bottom:32px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:14px}.form-error{background:#e74c3c1a;border:1px solid var(--danger);color:var(--danger);padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px}.dashboard-grid{display:grid;grid-template-columns:1fr 350px;gap:24px}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}.card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;overflow:hidden}.card-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.card-header h2{font-size:16px;font-weight:600}.card-body{padding:20px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:12px;padding:20px}.stat-label{color:var(--text-secondary);font-size:13px;margin-bottom:8px}.stat-value{font-size:24px;font-weight:700}.symbol-list{max-height:600px;overflow-y:auto}.symbol-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s}.symbol-item:hover{background:var(--bg-tertiary)}.symbol-item.active{background:var(--bg-tertiary);border-left:3px solid var(--accent)}.symbol-name{font-weight:600}.symbol-price{text-align:right}.symbol-price .price{font-weight:600}.symbol-price .change{font-size:12px}.symbol-price .change.positive{color:var(--success)}.symbol-price .change.negative{color:var(--danger)}.chart-container{height:500px}.loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary)}.spinner{width:24px;height:24px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin-right:12px}@keyframes spin{to{transform:rotate(360deg)}}
