/* ==========================================================================
   Design Tokens — Roman / AI Web Developer Portfolio
   ========================================================================== */

:root {
  /* ---- Color: Surface ---- */
  --bg-0: #05060a;
  --bg-1: #090b14;
  --bg-2: #0c0f1c;
  --surface-1: rgba(255, 255, 255, 0.035);
  --surface-2: rgba(255, 255, 255, 0.06);
  --surface-3: rgba(255, 255, 255, 0.09);
  --border-1: rgba(255, 255, 255, 0.08);
  --border-2: rgba(255, 255, 255, 0.14);
  --border-glow: rgba(120, 140, 255, 0.35);

  /* ---- Color: Text ---- */
  --text-0: #f7f8fc;
  --text-1: #d7dae6;
  --text-2: #9aa0b4;
  --text-3: #656b82;

  /* ---- Color: Accents ---- */
  --blue: #4f7dff;
  --blue-soft: #7c9bff;
  --purple: #9b5cf6;
  --purple-soft: #b98cf9;
  --cyan: #2dd4ee;
  --cyan-soft: #7ce8f5;
  --pink: #ef5da8;

  --gradient-primary: linear-gradient(120deg, var(--blue) 0%, var(--purple) 52%, var(--cyan) 100%);
  --gradient-primary-vertical: linear-gradient(180deg, var(--blue) 0%, var(--purple) 55%, var(--cyan) 100%);
  --gradient-text: linear-gradient(100deg, #8fb0ff 0%, #c6a4ff 45%, #7ce8f5 100%);
  --gradient-radial-1: radial-gradient(circle at 30% 20%, rgba(79, 125, 255, 0.35), transparent 60%);
  --gradient-radial-2: radial-gradient(circle at 80% 60%, rgba(155, 92, 246, 0.3), transparent 60%);
  --gradient-radial-3: radial-gradient(circle at 50% 90%, rgba(45, 212, 238, 0.22), transparent 60%);

  /* ---- Typography ---- */
  --font-display: "Sora", "Inter", system-ui, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, sans-serif;

  --fs-hero: clamp(2.6rem, 6.4vw, 6rem);
  --fs-h1: clamp(2.2rem, 4.4vw, 3.6rem);
  --fs-h2: clamp(1.8rem, 3.2vw, 2.6rem);
  --fs-h3: clamp(1.25rem, 1.8vw, 1.5rem);
  --fs-body-lg: clamp(1.05rem, 1.4vw, 1.25rem);
  --fs-body: 1rem;
  --fs-sm: 0.875rem;
  --fs-xs: 0.75rem;

  /* ---- Spacing ---- */
  --space-section: clamp(5rem, 10vw, 9rem);
  --space-3xl: 6rem;
  --space-2xl: 4rem;
  --space-xl: 2.5rem;
  --space-lg: 1.75rem;
  --space-md: 1.25rem;
  --space-sm: 0.75rem;
  --space-xs: 0.375rem;

  --container-w: 1280px;
  --container-pad: clamp(1.25rem, 5vw, 3rem);

  /* ---- Radius ---- */
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-full: 999px;

  /* ---- Shadow ---- */
  --shadow-sm: 0 4px 20px rgba(0, 0, 0, 0.25);
  --shadow-md: 0 12px 40px rgba(0, 0, 0, 0.35);
  --shadow-lg: 0 24px 70px rgba(0, 0, 0, 0.45);
  --shadow-glow-blue: 0 0 60px rgba(79, 125, 255, 0.25);
  --shadow-glow-purple: 0 0 60px rgba(155, 92, 246, 0.22);

  /* ---- Motion ---- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 0.2s;
  --dur-mid: 0.45s;
  --dur-slow: 0.9s;

  /* ---- Blur ---- */
  --blur-glass: blur(20px);

  --header-h: 84px;
}
