/* ============================================
   StockUprise — Design Tokens & Base Styles
   ============================================ */

:root {
  /* Background */
  --bg-primary: #0f1117;
  --bg-secondary: #1a1d29;
  --bg-card: #222536;
  --bg-hover: #2a2d3e;
  --bg-active: #323650;

  /* Text */
  --text-primary: #e1e4ea;
  --text-secondary: #8b8fa3;
  --text-tertiary: #5d6178;

  /* Accent */
  --accent: #5b8def;
  --accent-hover: #7aa3f5;

  /* Semantic */
  --green: #26a69a;
  --green-bg: rgba(38, 166, 154, 0.12);
  --red: #ef5350;
  --red-bg: rgba(239, 83, 80, 0.12);

  /* Borders */
  --border: #2a2d3a;
  --border-light: #353850;

  /* Typography */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', Consolas, 'Courier New', monospace;

  /* Radii */
  --radius: 6px;
  --radius-lg: 10px;

  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.5);

  /* Transitions */
  --transition-fast: 0.15s ease;
  --transition-normal: 0.25s ease;
}

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

/* ---- Base ---- */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--font-sans);
  background: var(--bg-primary);
  color: var(--text-primary);
  font-size: 13px;
  line-height: 1.5;
  overflow: hidden;
}

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

a:hover {
  color: var(--accent-hover);
}

/* ---- Scrollbar ---- */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--border-light);
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--text-tertiary);
}

/* Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--border-light) transparent;
}

/* ---- Selection ---- */
::selection {
  background: rgba(91, 141, 239, 0.3);
  color: var(--text-primary);
}
