/**
 * BannerCast - Design Tokens
 * 
 * Dark neon gaming theme optimized for streamers
 * Bright colors on dark backgrounds for maximum visibility
 */

:root {
  /* ================================
     PRIMARY COLORS (Neon Gaming)
     ================================ */
  
  --color-primary: #00F0FF;
  --color-primary-hover: #00D4E0;
  --color-primary-active: #00B8C4;
  --color-primary-glow: rgba(0, 240, 255, 0.4);
  
  --color-secondary: #FF00AA;
  --color-secondary-hover: #E0009A;
  --color-secondary-active: #C4008A;
  --color-secondary-glow: rgba(255, 0, 170, 0.4);
  
  --color-accent: #AAFF00;
  --color-accent-glow: rgba(170, 255, 0, 0.4);
  
  /* ================================
     TEXT COLORS
     WCAG 2.2 AA requires 4.5:1 for normal text
     ================================ */
  
  --color-text: #FFFFFF;                /* 21:1 on #0A0A10 ✓ */
  --color-text-muted: #9E9EB0;          /* 6.5:1 on #0A0A10 ✓ (was #A0A0B0) */
  --color-text-light: #8A8A9C;          /* 4.8:1 on #0A0A10 ✓ (was #707080 - FAILED 4.1:1) */
  --color-text-inverse: #0A0A10;        /* 21:1 on #FFFFFF ✓ */
  --color-text-link: var(--color-primary);        /* 12.5:1 on #0A0A10 ✓ */
  --color-text-link-hover: var(--color-secondary); /* 5.1:1 on #0A0A10 ✓ */
  
  /* ================================
     BACKGROUND COLORS
     ================================ */
  
  --color-bg: #0A0A10;
  --color-bg-secondary: #12121A;
  --color-bg-tertiary: #1A1A24;
  --color-bg-card: #16161E;
  --color-bg-inverse: #FFFFFF;
  --color-bg-hover: rgba(255, 255, 255, 0.05);
  --color-bg-active: rgba(255, 255, 255, 0.1);
  
  /* Gradients */
  --gradient-bg: linear-gradient(135deg, #0A0A10 0%, #12121A 50%, #0A0A10 100%);
  --gradient-card: linear-gradient(180deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0) 100%);
  
  /* ================================
     BORDER COLORS
     ================================ */
  
  --color-border: rgba(255, 255, 255, 0.1);
  --color-border-strong: rgba(255, 255, 255, 0.2);
  --color-border-light: rgba(255, 255, 255, 0.05);
  --color-border-focus: var(--color-primary);
  --color-border-glow: var(--color-primary-glow);
  
  /* ================================
     STATUS COLORS
     WCAG 2.2 AA: 4.5:1 minimum for text
     Status colors on --color-bg (#0A0A10)
     ================================ */
  
  --color-error: #FF6B78;               /* 6.2:1 on #0A0A10 ✓ (was #FF4757 - 5.0:1) */
  --color-error-bg: rgba(255, 107, 120, 0.1);
  --color-error-border: rgba(255, 107, 120, 0.3);
  
  --color-warning: #FFB833;             /* 9.8:1 on #0A0A10 ✓ (was #FFA502 - 8.5:1, OK but improved) */
  --color-warning-bg: rgba(255, 184, 51, 0.1);
  --color-warning-border: rgba(255, 184, 51, 0.3);
  
  --color-success: #4ADE80;             /* 10.1:1 on #0A0A10 ✓ (was #2ED573 - 8.0:1, OK but improved) */
  --color-success-bg: rgba(74, 222, 128, 0.1);
  --color-success-border: rgba(74, 222, 128, 0.3);
  
  --color-info: #60A5FA;                /* 7.2:1 on #0A0A10 ✓ (was #1E90FF - 5.3:1) */
  --color-info-bg: rgba(96, 165, 250, 0.1);
  --color-info-border: rgba(96, 165, 250, 0.3);
  
  /* LIVE indicator */
  --color-live: #FF0040;
  --color-live-glow: rgba(255, 0, 64, 0.6);
  
  /* ================================
     SPACING
     ================================ */
  
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-2xl: 48px;
  --spacing-3xl: 64px;
  
  /* ================================
     TYPOGRAPHY
     ================================ */
  
  --font-display: 'Orbitron', 'Rajdhani', sans-serif;
  --font-body: 'Rajdhani', 'Exo 2', sans-serif;
  --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
  
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-md: 1rem;
  --font-size-lg: 1.25rem;
  --font-size-xl: 1.5rem;
  --font-size-2xl: 2rem;
  --font-size-3xl: 2.5rem;
  --font-size-4xl: 3rem;
  
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;
  
  --letter-spacing-tight: -0.02em;
  --letter-spacing-normal: 0;
  --letter-spacing-wide: 0.05em;
  --letter-spacing-wider: 0.1em;
  
  /* ================================
     BORDERS & RADIUS
     ================================ */
  
  --border-width: 1px;
  --border-width-thick: 2px;
  
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;
  --radius-full: 9999px;
  
  /* ================================
     SHADOWS & EFFECTS
     ================================ */
  
  --shadow-sm: 0 2px 4px 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);
  --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.6);
  
  /* Neon glow effects */
  --glow-primary: 0 0 20px var(--color-primary-glow), 0 0 40px var(--color-primary-glow);
  --glow-secondary: 0 0 20px var(--color-secondary-glow), 0 0 40px var(--color-secondary-glow);
  --glow-accent: 0 0 20px var(--color-accent-glow), 0 0 40px var(--color-accent-glow);
  --glow-live: 0 0 10px var(--color-live-glow), 0 0 20px var(--color-live-glow);
  
  /* ================================
     TRANSITIONS
     ================================ */
  
  --transition-fast: 150ms ease;
  --transition-normal: 250ms ease;
  --transition-slow: 400ms ease;
  --transition-bounce: 400ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
  
  /* ================================
     Z-INDEX
     ================================ */
  
  --z-base: 0;
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-modal-backdrop: 300;
  --z-modal: 400;
  --z-tooltip: 500;
  --z-toast: 600;
  
  /* ================================
     FOCUS (A11Y)
     ================================ */
  
  --focus-ring-color: var(--color-primary);
  --focus-ring-width: 3px;
  --focus-ring-offset: 2px;
  
  /* ================================
     NEWS BAR SPECIFIC
     ================================ */
  
  --bar-height: 48px;
  --bar-height-compact: 36px;
  --tab-min-width: 80px;
  --scroll-speed: 50s;
  --separator-width: 40px;
}
