/* Hallmark · genre: atmospheric · macrostructure: app shell (Arena HUD) · nav: top bar + mobile tab bar · footer: none (app)
 * theme: custom (vibe: "PS5 arena after hours, brand black white yellow")
 * paper oklch(14% 0.006 95) · accent oklch(88% 0.165 95) brand-yellow · display Saira (expanded) + body Plus Jakarta Sans
 * axes: dark / display-heavy / warm · tone: technical-playful · anchor hue: 95
 * Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V5
 */
:root {
  /* paper & ink (warm neutral, hue 95 = brand yellow) */
  --c-paper:   oklch(14% 0.006 95);
  --c-paper-2: oklch(18% 0.008 95);
  --c-paper-3: oklch(22% 0.010 95);
  --c-paper-4: oklch(27% 0.012 95);
  --c-rule:    oklch(32% 0.012 95);
  --c-rule-2:  oklch(42% 0.012 95);
  --c-faint:   oklch(60% 0.010 95);
  --c-muted:   oklch(76% 0.010 95);
  --c-ink:     oklch(96% 0.006 95);

  /* brand: VEGAN yellow (logo "A" gradient) */
  --c-accent:      oklch(88% 0.165 95);
  --c-accent-2:    oklch(82% 0.160 78);
  --c-accent-ink:  oklch(20% 0.030 90);
  --c-accent-dim:  oklch(88% 0.165 95 / 0.14);
  --c-accent-line: oklch(88% 0.165 95 / 0.38);
  --c-focus:       oklch(88% 0.165 95);

  /* semantic (data only, never decoration) */
  --c-win:   oklch(80% 0.170 150);
  --c-loss:  oklch(70% 0.190 25);
  --c-live:  oklch(66% 0.220 25);
  --c-info:  oklch(78% 0.110 230);
  --c-wa:    oklch(72% 0.170 150);

  /* tiers (ranking badges) */
  --t-rookie:   oklch(70% 0.010 95);
  --t-bronze:   oklch(70% 0.110 55);
  --t-silver:   oklch(84% 0.020 250);
  --t-gold:     oklch(86% 0.160 88);
  --t-platinum: oklch(82% 0.080 200);
  --t-diamond:  oklch(78% 0.130 260);
  --t-master:   oklch(72% 0.200 330);

  /* HUD broadcast (kartu & profil atlet): garis hologram tipis + bar panas merah ke kuning */
  --c-holo:      oklch(84% 0.110 210);
  --c-holo-line: oklch(84% 0.110 210 / 0.42);
  --c-holo-dim:  oklch(84% 0.110 210 / 0.14);
  --c-stage:     oklch(13% 0.018 240);
  --c-stage-2:   oklch(19% 0.030 240);
  --c-heat-1:    oklch(60% 0.215 27);
  --c-heat-2:    oklch(72% 0.190 52);

  /* glass (player cards are translucent by brief) */
  --c-glass:      oklch(22% 0.010 95 / 0.58);
  --c-glass-edge: oklch(96% 0.006 95 / 0.10);
  --c-scrim:      oklch(10% 0.006 95 / 0.72);

  /* type */
  --font-display: "Saira", "Plus Jakarta Sans", system-ui, sans-serif;
  --font-body: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --wide: 125%;
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: 1.75rem;
  --text-3xl: clamp(1.9rem, 3vw + 1rem, 2.6rem);
  --text-score: clamp(4.5rem, 16vw, 10rem);

  /* space (4pt) */
  --space-1: 4px;  --space-2: 8px;  --space-3: 12px; --space-4: 16px;
  --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px;
  --space-12: 48px; --space-16: 64px;

  /* shape */
  --r-sm: 8px; --r-md: 12px; --r-lg: 18px; --r-pill: 999px;
  --cut: 14px;

  /* motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 220ms;
  --dur-long: 420ms;

  --shadow-lift: 0 18px 40px -22px oklch(8% 0.01 95 / 0.9);
  --shadow-glow: 0 0 0 1px var(--c-accent-line), 0 14px 40px -18px oklch(88% 0.165 95 / 0.45);
  --tabbar-h: 64px;
}
