:root {
  --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-full: 9999px;
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.08);
  --shadow-lg: 0 8px 30px rgba(0,0,0,0.12);
  --success: #22c55e;
  --warning: #f59e0b;
  --error: #ef4444;
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --bg-primary: #ffffff;
    --bg-secondary: #f8fafc;
    --bg-tertiary: #f1f5f9;
    --bg-elevated: #ffffff;
    --text-primary: #0f172a;
    --text-secondary: #475569;
    --text-muted: #94a3b8;
    --border: #e2e8f0;
    --border-subtle: #f1f5f9;
    --player-bg: #ffffff;
    --surface: #ffffff;
    --surface-alt: #f1f5f9;
    --scrollbar-thumb: #cbd5e1;
    --scrollbar-track: #f1f5f9;
  }
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg-primary: #0f172a;
    --bg-secondary: #1e293b;
    --bg-tertiary: #334155;
    --bg-elevated: #1e293b;
    --text-primary: #f1f5f9;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;
    --border: #334155;
    --border-subtle: #1e293b;
    --player-bg: #1e293b;
    --surface: #1e293b;
    --surface-alt: #334155;
    --shadow-sm: 0 1px 2px rgba(0,0,0,0.2);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.3);
    --shadow-lg: 0 8px 30px rgba(0,0,0,0.4);
    --scrollbar-thumb: #475569;
    --scrollbar-track: #1e293b;
  }
}

[data-theme="light"] {
  --bg-primary: #ffffff;
  --bg-secondary: #f8fafc;
  --bg-tertiary: #f1f5f9;
  --bg-elevated: #ffffff;
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-muted: #94a3b8;
  --border: #e2e8f0;
  --border-subtle: #f1f5f9;
  --player-bg: #ffffff;
  --surface: #ffffff;
  --surface-alt: #f1f5f9;
  --scrollbar-thumb: #cbd5e1;
  --scrollbar-track: #f1f5f9;
}

[data-theme="dark"] {
  --bg-primary: #0f172a;
  --bg-secondary: #1e293b;
  --bg-tertiary: #334155;
  --bg-elevated: #1e293b;
  --text-primary: #f1f5f9;
  --text-secondary: #94a3b8;
  --text-muted: #64748b;
  --border: #334155;
  --border-subtle: #1e293b;
  --player-bg: #1e293b;
  --surface: #1e293b;
  --surface-alt: #334155;
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.2);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.3);
  --shadow-lg: 0 8px 30px rgba(0,0,0,0.4);
  --scrollbar-thumb: #475569;
  --scrollbar-track: #1e293b;
}

[data-color="blue"] { --accent: #3b82f6; --accent-hover: #2563eb; --accent-subtle: rgba(59,130,246,0.1); --accent-contrast: #ffffff; }
[data-color="indigo"] { --accent: #6366f1; --accent-hover: #4f46e5; --accent-subtle: rgba(99,102,241,0.1); --accent-contrast: #ffffff; }
[data-color="purple"] { --accent: #8b5cf6; --accent-hover: #7c3aed; --accent-subtle: rgba(139,92,246,0.1); --accent-contrast: #ffffff; }
[data-color="pink"] { --accent: #ec4899; --accent-hover: #db2777; --accent-subtle: rgba(236,72,153,0.1); --accent-contrast: #ffffff; }
[data-color="red"] { --accent: #ef4444; --accent-hover: #dc2626; --accent-subtle: rgba(239,68,68,0.1); --accent-contrast: #ffffff; }
[data-color="orange"] { --accent: #f97316; --accent-hover: #ea580c; --accent-subtle: rgba(249,115,22,0.1); --accent-contrast: #ffffff; }
[data-color="yellow"] { --accent: #eab308; --accent-hover: #ca8a04; --accent-subtle: rgba(234,179,8,0.1); --accent-contrast: #0f172a; }
[data-color="green"] { --accent: #22c55e; --accent-hover: #16a34a; --accent-subtle: rgba(34,197,94,0.1); --accent-contrast: #ffffff; }
[data-color="teal"] { --accent: #14b8a6; --accent-hover: #0d9488; --accent-subtle: rgba(20,184,166,0.1); --accent-contrast: #ffffff; }
[data-color="cyan"] { --accent: #06b6d4; --accent-hover: #0891b2; --accent-subtle: rgba(6,182,212,0.1); --accent-contrast: #ffffff; }

/* Transition and scrollbar styles are in main.css */
