/* ============================================================
   Fusion — Design Tokens
   ============================================================ */

:root {
  /* Brand Colors */
  --brand-primary: #e63946;
  --brand-secondary: #ff6b35;
  --brand-accent: #ffd166;
  --brand-gold: #f4a261;

  /* Background Layers */
  --bg-base: #0a0c12;
  --bg-surface: #11141e;
  --bg-elevated: #181c28;
  --bg-card: #1e2235;
  --bg-card-hover: #242840;
  --bg-glass: rgba(30, 34, 53, 0.7);
  --bg-glass-light: rgba(255,255,255,0.04);
  --bg-overlay: rgba(0, 0, 0, 0.7);

  /* Text */
  --text-primary: #f0f2ff;
  --text-secondary: #8b93b8;
  --text-muted: #4a5070;
  --text-inverse: #0a0c12;

  /* Border */
  --border-subtle: rgba(255,255,255,0.06);
  --border-default: rgba(255,255,255,0.1);
  --border-strong: rgba(255,255,255,0.18);
  --border-brand: rgba(230, 57, 70, 0.4);

  /* Status Colors */
  --success: #2ecc71;
  --success-bg: rgba(46, 204, 113, 0.12);
  --warning: #f39c12;
  --warning-bg: rgba(243, 156, 18, 0.12);
  --danger: #e74c3c;
  --danger-bg: rgba(231, 76, 60, 0.12);
  --info: #3498db;
  --info-bg: rgba(52, 152, 219, 0.12);

  /* Seat Colors */
  --seat-available: #2d3561;
  --seat-available-border: #3d4a8a;
  --seat-selected: #e63946;
  --seat-selected-border: #ff6b6b;
  --seat-booked: #1a1f35;
  --seat-booked-border: #2a2f45;
  --seat-premium: #7c3aed;
  --seat-premium-border: #9461ff;
  --seat-vip: #b45309;
  --seat-vip-border: #f59e0b;

  /* Typography */
  --font-sans: 'Inter', 'Segoe UI', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', 'Fira Code', monospace;

  --text-xs: 0.7rem;
  --text-sm: 0.8125rem;
  --text-base: 0.9375rem;
  --text-md: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 1.875rem;
  --text-4xl: 2.25rem;

  --fw-normal: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;

  /* Spacing */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;
  --sp-16: 4rem;

  /* Border Radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --radius-2xl: 28px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.4);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.5);
  --shadow-xl: 0 16px 64px rgba(0,0,0,0.6);
  --shadow-brand: 0 4px 24px rgba(230, 57, 70, 0.25);
  --shadow-glow: 0 0 30px rgba(230, 57, 70, 0.15);

  /* Transitions */
  --transition-fast: 120ms ease;
  --transition-base: 200ms ease;
  --transition-slow: 350ms ease;

  /* Sidebar */
  --sidebar-width: 240px;
  --sidebar-collapsed: 68px;
  --topbar-height: 64px;

  /* Z-Index */
  --z-sidebar: 100;
  --z-topbar: 90;
  --z-dropdown: 200;
  --z-modal: 300;
  --z-toast: 400;
}

/* Light mode override (optional) */
[data-theme="light"] {
  --bg-base: #f0f2f8;
  --bg-surface: #ffffff;
  --bg-elevated: #f8f9fd;
  --bg-card: #ffffff;
  --bg-card-hover: #f0f2f8;
  --bg-glass: rgba(255,255,255,0.8);
  --text-primary: #0a0c12;
  --text-secondary: #4a5070;
  --text-muted: #8b93b8;
  --border-subtle: rgba(0,0,0,0.06);
  --border-default: rgba(0,0,0,0.1);
  --border-strong: rgba(0,0,0,0.2);
  --seat-available: #dce3ff;
  --seat-available-border: #b0bcf0;
}
