/* ==========================================================================
   SUPANOVA Design Tokens
   3개 랜딩페이지 템플릿에서 추출한 디자인 변수
   ========================================================================== */

:root {
  /* ── Color: Base ── */
  --sn-black: #050505;
  --sn-white: #F5F5F5;
  --sn-gray-100: #f5f5f5;
  --sn-gray-200: #e5e5e5;
  --sn-gray-300: #d4d4d4;
  --sn-gray-400: #a3a3a3;
  --sn-gray-500: #888888;
  --sn-gray-600: #525252;
  --sn-gray-700: #333333;
  --sn-gray-800: #262626;
  --sn-gray-900: #0f0f0f;

  /* ── Color: Accent (Theme-A: Monochrome) ── */
  --sn-accent: #ffffff;
  --sn-accent-muted: rgba(255, 255, 255, 0.5);
  --sn-accent-subtle: rgba(255, 255, 255, 0.1);

  /* ── Color: Accent (Theme-B: Neon) ── */
  --sn-neon: #ccff00;
  --sn-neon-muted: rgba(204, 255, 0, 0.3);
  --sn-neon-subtle: rgba(204, 255, 0, 0.1);

  /* ── Color: Accent (Theme-C: Indigo) ── */
  --sn-indigo: #6366f1;
  --sn-indigo-muted: rgba(99, 102, 241, 0.3);
  --sn-indigo-subtle: rgba(99, 102, 241, 0.1);
  --sn-purple: #a855f7;
  --sn-purple-muted: rgba(168, 85, 247, 0.2);
  --sn-pink: #ec4899;
  --sn-pink-muted: rgba(236, 72, 153, 0.2);

  /* ── Surface ── */
  --sn-surface: #0f0f0f;
  --sn-surface-elevated: rgba(255, 255, 255, 0.05);
  --sn-surface-hover: rgba(255, 255, 255, 0.1);
  --sn-border: rgba(255, 255, 255, 0.1);
  --sn-border-hover: rgba(255, 255, 255, 0.2);

  /* ── Typography ── */
  --sn-font-sans: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --sn-font-mono: 'JetBrains Mono', 'Fira Code', monospace;

  /* ── Font Size ── */
  --sn-text-xs: 0.75rem;
  --sn-text-sm: 0.875rem;
  --sn-text-base: 1rem;
  --sn-text-lg: 1.125rem;
  --sn-text-xl: 1.25rem;
  --sn-text-2xl: 1.5rem;
  --sn-text-3xl: 1.875rem;
  --sn-text-4xl: 2.25rem;
  --sn-text-5xl: 3rem;
  --sn-text-6xl: 3.75rem;
  --sn-text-7xl: 4.5rem;
  --sn-text-8xl: 6rem;
  --sn-text-9xl: 8rem;

  /* ── Spacing ── */
  --sn-space-1: 0.25rem;
  --sn-space-2: 0.5rem;
  --sn-space-3: 0.75rem;
  --sn-space-4: 1rem;
  --sn-space-6: 1.5rem;
  --sn-space-8: 2rem;
  --sn-space-10: 2.5rem;
  --sn-space-12: 3rem;
  --sn-space-16: 4rem;
  --sn-space-20: 5rem;
  --sn-space-32: 8rem;

  /* ── Border Radius ── */
  --sn-radius-none: 0;
  --sn-radius-sm: 0.25rem;
  --sn-radius-md: 0.5rem;
  --sn-radius-lg: 1rem;
  --sn-radius-xl: 1.5rem;
  --sn-radius-2xl: 2rem;
  --sn-radius-full: 9999px;

  /* ── Animation Timing ── */
  --sn-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --sn-ease-smooth: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --sn-ease-bounce: cubic-bezier(0.4, 0, 0.6, 1);
  --sn-duration-fast: 0.2s;
  --sn-duration-normal: 0.3s;
  --sn-duration-slow: 0.5s;
  --sn-duration-slower: 0.7s;
  --sn-duration-slowest: 1s;

  /* ── Shadow ── */
  --sn-shadow-neon: 0 0 20px var(--sn-neon-muted);
  --sn-shadow-indigo: 0 0 40px var(--sn-indigo-muted);
  --sn-shadow-lg: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}
