:root {
  --bg-primary:    #0d0d1a;
  --bg-secondary:  #12121f;
  --bg-panel:      #1a1a2e;
  --bg-card:       #16213e;
  --bg-input:      #1e1e3a;
  --border:        #2a2a4a;
  --border-light:  #323255;

  --text-primary:   #e8e8f0;
  --text-secondary: #8888aa;
  --text-muted:     #555577;

  --accent-purple: #7c4dff;
  --accent-blue:   #2979ff;
  --accent-cyan:   #00b0ff;

  --buy-color:     #00e676;
  --buy-dark:      #00c853;
  --sell-color:    #ff5252;
  --sell-dark:     #d32f2f;
  --neutral-color: #ffd600;

  --score-high:    #00c853;
  --score-mid:     #ffd600;
  --score-low:     #ff5252;

  --ema9-color:    #ffd600;
  --ema21-color:   #ff9100;
  --ema50-color:   #2979ff;
  --ema200-color:  #e0e0e0;
  --bb-color:      rgba(124,77,255,0.3);

  --shadow-sm:  0 2px 8px rgba(0,0,0,0.4);
  --shadow-md:  0 4px 16px rgba(0,0,0,0.5);
  --shadow-lg:  0 8px 32px rgba(0,0,0,0.6);

  --radius-sm:  6px;
  --radius-md:  10px;
  --radius-lg:  16px;

  --transition: 0.2s ease;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { font-size: 14px; }

body {
  font-family: 'Inter', system-ui, sans-serif;
  background: var(--bg-primary);
  color: var(--text-primary);
  line-height: 1.5;
  min-height: 100vh;
}

a { color: var(--accent-purple); text-decoration: none; }
a:hover { text-decoration: underline; }

code, pre {
  font-family: 'Consolas', 'Monaco', monospace;
  font-size: 12px;
}

.green { color: var(--buy-color) !important; }
.red   { color: var(--sell-color) !important; }
.yellow { color: var(--neutral-color) !important; }

/* Scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg-secondary); }
::-webkit-scrollbar-thumb { background: var(--border-light); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--accent-purple); }

/* Flash animations */
@keyframes flash-up {
  0%   { color: var(--buy-color); }
  100% { color: var(--text-primary); }
}
@keyframes flash-down {
  0%   { color: var(--sell-color); }
  100% { color: var(--text-primary); }
}
.price-up   { animation: flash-up 0.8s ease forwards; }
.price-down { animation: flash-down 0.8s ease forwards; }
