/* UG Sports — Design tokens (V2) */
:root {
  /* ---- Surfaces (dark, layered elevation) ---- */
  --bg-main:      #070809;
  --bg-elevated:  #0C0E12;
  --surface:      #101319;
  --surface-2:    #151922;
  --surface-hover:#1B2029;
  --surface-active:#212734;

  /* ---- Brand & Module accents ---- */
  --accent:        #F5C518;
  --accent-hover:  #FFD84D;
  --accent-press:  #E0B30C;
  --accent-soft:   rgba(245, 197, 24, 0.13);
  --accent-ring:   rgba(245, 197, 24, 0.40);
  --on-accent:     #0A0A0A;

  /* Module color identities */
  --accent-sports:       #F5C518;
  --accent-sports-soft:  rgba(245, 197, 24, 0.14);
  --accent-sports-ring:  rgba(245, 197, 24, 0.40);
  --accent-tv:           #00E5FF;
  --accent-tv-soft:      rgba(0, 229, 255, 0.14);
  --accent-tv-ring:      rgba(0, 229, 255, 0.40);
  --accent-movies:       #E50914;
  --accent-movies-soft:  rgba(229, 9, 20, 0.14);
  --accent-movies-ring:  rgba(229, 9, 20, 0.40);
  --accent-series:       #9D4EDD;
  --accent-series-soft:  rgba(157, 78, 221, 0.14);
  --accent-series-ring:  rgba(157, 78, 221, 0.40);
  --accent-radio:        #FF8C00;
  --accent-radio-soft:   rgba(255, 140, 0, 0.14);
  --accent-radio-ring:   rgba(255, 140, 0, 0.40);

  /* ---- Glass & Ambient Surface Tokens ---- */
  --glass-bg:            rgba(16, 19, 25, 0.76);
  --glass-bg-subtle:     rgba(16, 19, 25, 0.52);
  --glass-border:        rgba(255, 255, 255, 0.08);
  --glass-border-light:  rgba(255, 255, 255, 0.14);
  --glass-card:          rgba(21, 25, 34, 0.68);
  --glass-card-hover:    rgba(27, 32, 43, 0.85);

  /* ---- Text ---- */
  --text-main:     #F3F5F8;
  --text-muted:    #9BA2AF;
  --text-dim:      #626A78;

  /* ---- Status ---- */
  --success:  #34D07A;
  --warning:  #E6B23A;
  --danger:   #E5484D;
  --live:     #FF4141;

  /* ---- Lines ---- */
  --border-subtle:  #191D25;
  --border:         #232833;
  --border-strong:  #313846;

  /* ---- Shadows / elevation ---- */
  --shadow-1: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-2: 0 6px 20px rgba(0,0,0,0.45);
  --shadow-3: 0 16px 44px rgba(0,0,0,0.55);
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.3);
  --shadow-md: 0 8px 24px rgba(0,0,0,0.45);
  --shadow-lg: 0 18px 48px rgba(0,0,0,0.65);
  --glow-accent: 0 6px 26px rgba(245,197,24,0.22);
  --glow-tv:     0 6px 26px rgba(0,229,255,0.22);
  --glow-movies: 0 6px 26px rgba(229,9,20,0.22);
  --glow-series: 0 6px 26px rgba(157,78,221,0.22);
  --glow-radio:  0 6px 26px rgba(255,140,0,0.22);

  /* ---- Spacing (4/8 rhythm) ---- */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 24px; --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px;

  /* ---- Radius ---- */
  --r-xs: 6px; --r-sm: 10px; --r-md: 14px; --r-lg: 18px; --r-xl: 26px; --r-pill: 999px;

  /* ---- Typography ---- */
  --font-display: "Bebas Neue", "Oswald", "Inter", system-ui, sans-serif;
  --font-body: "Source Sans 3", "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;
  --fs-xs: 12px; --fs-sm: 13px; --fs-base: 15px; --fs-md: 17px;
  --fs-lg: 20px; --fs-xl: 26px; --fs-2xl: 34px; --fs-3xl: 48px; --fs-4xl: 68px;
  --lh-tight: 1.1; --lh-snug: 1.3; --lh-body: 1.55;

  /* ---- Motion ---- */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --dur-fast: 140ms;
  --dur-norm: 220ms;
  --dur-slow: 320ms;
  --dur-1: 140ms;
  --dur-2: 220ms;
  --dur-3: 320ms;

  /* ---- Layout ---- */
  --header-h: 66px;
  --maxw: 1480px;

  /* ---- Z-index scale ---- */
  --z-nav: 50; --z-sticky: 40; --z-overlay: 100; --z-toast: 200;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-1: 0.001ms !important;
    --dur-2: 0.001ms !important;
    --dur-3: 0.001ms !important;
    --dur-fast: 0.001ms !important;
    --dur-norm: 0.001ms !important;
    --dur-slow: 0.001ms !important;
  }
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}
