:root {
  /* Palette */
  --bg-0: #08030F;
  --bg-1: #15082A;
  --bg-2: #1F0A3A;
  --bg-3: #2A0E4F;

  --cyan:   #00FFD1;
  --cyan-2: #00C9A8;
  --pink:   #FF2E92;
  --violet: #9D4EFF;
  --violet-2:#C08BFF;
  --gold:   #FFD84D;
  --gold-2: #FFA94D;

  --fg:      #F5EFFF;
  --fg-2:    #CDB6FF;
  --muted:   #8F7BB6;
  --muted-2: #5E4B84;

  --glass:        rgba(255,255,255,0.04);
  --glass-2:      rgba(255,255,255,0.06);
  --glass-border: rgba(157,78,255,0.28);
  --glass-border-hi: rgba(0,255,209,0.45);

  --success: #36F6A8;
  --danger:  #FF4D6D;

  /* Type */
  --f-display: 'Space Grotesk', system-ui, sans-serif;
  --f-body: 'Inter', system-ui, sans-serif;
  --f-mono: 'JetBrains Mono', ui-monospace, monospace;

  /* Radii */
  --r-1: 8px;
  --r-2: 14px;
  --r-3: 22px;
  --r-pill: 999px;

  /* Shadows + glows */
  --glow-cyan: 0 0 24px rgba(0,255,209,0.35), 0 0 48px rgba(0,255,209,0.18);
  --glow-pink: 0 0 24px rgba(255,46,146,0.40), 0 0 48px rgba(255,46,146,0.20);
  --glow-gold: 0 0 20px rgba(255,216,77,0.40), 0 0 36px rgba(255,216,77,0.20);
  --glow-violet: 0 0 26px rgba(157,78,255,0.38);
  --shadow-card: 0 18px 48px -16px rgba(0,0,0,0.6), 0 2px 0 rgba(255,255,255,0.04) inset;

  /* Motion */
  --ease-spring: cubic-bezier(.2,.9,.25,1.25);
  --ease-out: cubic-bezier(.2,.7,.2,1);
  --ease-in:  cubic-bezier(.8,.2,.8,.6);

  /* Spacing rhythm */
  --s-1: 4px;
  --s-2: 8px;
  --s-3: 12px;
  --s-4: 16px;
  --s-5: 24px;
  --s-6: 36px;
  --s-7: 56px;
  --s-8: 80px;

  /* Safe areas (iPhone notch) */
  --sa-t: env(safe-area-inset-top, 0px);
  --sa-b: env(safe-area-inset-bottom, 0px);
}

@media (prefers-reduced-motion: reduce) {
  :root { --ease-spring: ease; --ease-out: ease; --ease-in: ease; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
