:root {
  color-scheme: dark;

  --background: #05080d;
  --background-rgb: 5, 8, 13;
  --surface: #0b111a;
  --surface-rgb: 11, 17, 26;
  --surface-secondary: #101925;
  --surface-tertiary: #132131;
  --navy: #102b46;
  --blue: #1479c9;
  --electric-blue: #36a9ff;
  --electric-blue-rgb: 54, 169, 255;
  --cyan-muted: #64c4ef;
  --green: #55d6a7;
  --amber: #e4b15a;
  --red: #ef6f86;

  --text-primary: #f4f7fa;
  --text-secondary: #9eacba;
  --text-tertiary: #6f7f8f;
  --text-inverse: #06111c;

  --line: rgba(84, 155, 220, 0.22);
  --line-strong: rgba(84, 155, 220, 0.42);
  --line-faint: rgba(84, 155, 220, 0.1);
  --panel-overlay: rgba(10, 16, 25, 0.86);
  --header-overlay: rgba(5, 8, 13, 0.78);

  --shadow-small: 0 12px 30px rgba(0, 0, 0, 0.22);
  --shadow-medium: 0 28px 70px rgba(0, 0, 0, 0.32);
  --shadow-blue: 0 16px 45px rgba(20, 121, 201, 0.18);

  --font-heading: "Space Grotesk", "Inter", system-ui, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono: "IBM Plex Mono", "Cascadia Code", "SFMono-Regular", Consolas, monospace;

  --step--1: clamp(0.78rem, 0.73rem + 0.16vw, 0.9rem);
  --step-0: clamp(0.95rem, 0.89rem + 0.24vw, 1.08rem);
  --step-1: clamp(1.1rem, 1rem + 0.42vw, 1.36rem);
  --step-2: clamp(1.35rem, 1.15rem + 0.78vw, 1.85rem);
  --step-3: clamp(1.75rem, 1.35rem + 1.42vw, 2.7rem);
  --step-4: clamp(2.25rem, 1.65rem + 2.55vw, 4.35rem);
  --step-5: clamp(3.7rem, 2.3rem + 5.4vw, 8.75rem);

  --space-1: 0.375rem;
  --space-2: 0.625rem;
  --space-3: 0.875rem;
  --space-4: 1.25rem;
  --space-5: 1.75rem;
  --space-6: 2.5rem;
  --space-7: 3.5rem;
  --space-8: 5rem;
  --space-9: 7.5rem;
  --space-10: 10rem;

  --radius-small: 0.35rem;
  --radius-medium: 0.75rem;
  --radius-large: 1.15rem;

  --border: 1px solid var(--line);
  --border-strong: 1px solid var(--line-strong);

  --content-width: 92rem;
  --narrow-width: 74rem;
  --header-height: 4.75rem;

  --ease-standard: cubic-bezier(0.2, 0.75, 0.2, 1);
  --ease-sharp: cubic-bezier(0.55, 0, 0.1, 1);
  --duration-fast: 160ms;
  --duration-medium: 360ms;
  --duration-slow: 720ms;
}

html[data-theme="light"] {
  color-scheme: light;

  --background: #edf2f6;
  --background-rgb: 237, 242, 246;
  --surface: #ffffff;
  --surface-rgb: 255, 255, 255;
  --surface-secondary: #e5edf4;
  --surface-tertiary: #dbe7f0;
  --navy: #12314c;
  --blue: #086bb5;
  --electric-blue: #007fd4;
  --electric-blue-rgb: 0, 127, 212;
  --cyan-muted: #176f9d;
  --green: #087f5b;
  --amber: #9a6810;
  --red: #b43d55;

  --text-primary: #0b1722;
  --text-secondary: #4d5d6c;
  --text-tertiary: #70808f;
  --text-inverse: #f8fbfd;

  --line: rgba(31, 98, 145, 0.2);
  --line-strong: rgba(31, 98, 145, 0.38);
  --line-faint: rgba(31, 98, 145, 0.09);
  --panel-overlay: rgba(255, 255, 255, 0.88);
  --header-overlay: rgba(237, 242, 246, 0.82);

  --shadow-small: 0 12px 30px rgba(31, 55, 75, 0.08);
  --shadow-medium: 0 28px 70px rgba(31, 55, 75, 0.12);
  --shadow-blue: 0 16px 45px rgba(0, 127, 212, 0.12);
}
