@import url('https://fonts.googleapis.com/css2?family=Geist:wght@100..900&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap');

:root {
  /* Colors */
  --axiom-surface: #f8faf6;
  --axiom-surface-dim: #d9dad7;
  --axiom-surface-bright: #f8faf6;
  --axiom-surface-container-lowest: #ffffff;
  --axiom-surface-container-low: #f2f4f1;
  --axiom-surface-container: #edeeeb;
  --axiom-surface-container-high: #e7e9e5;
  --axiom-surface-container-highest: #e1e3e0;
  --axiom-on-surface: #191c1a;
  --axiom-on-surface-variant: #43474c;
  --axiom-inverse-surface: #2e312f;
  --axiom-inverse-on-surface: #f0f1ee;
  --axiom-outline: #74777c;
  --axiom-outline-variant: #c4c7cc;
  --axiom-primary: #132434;
  --axiom-on-primary: #ffffff;
  --axiom-primary-container: #293a4a;
  --axiom-on-primary-container: #92a4b7;
  --axiom-secondary: #006876;
  --axiom-secondary-container: #58e6ff;
  --axiom-tertiary: #370061;
  --axiom-tertiary-container: #531089;
  --axiom-cyan-accent: #00E5FF;
  --axiom-deep-purple: #1A0B2E;
  --axiom-border-subtle: #CCCCCC;
  --axiom-error: #ba1a1a;
  --axiom-surface-white: #FFFFFF;

  /* Typography */
  --axiom-font-heading: 'Geist', sans-serif;
  --axiom-font-body: 'Inter', sans-serif;
  --axiom-font-mono: 'JetBrains Mono', monospace;

  /* Spacing */
  --axiom-container-max: 1280px;
  --axiom-gutter: 24px;
  --axiom-margin-desktop: 64px;
  --axiom-margin-mobile: 20px;
  --axiom-unit: 8px;

  /* Border Radius */
  --axiom-radius-sm: 0.25rem;
  --axiom-radius: 0.5rem;
  --axiom-radius-md: 0.75rem;
  --axiom-radius-lg: 1rem;
  --axiom-radius-xl: 1.5rem;
  --axiom-radius-full: 9999px;

  /* Shadows */
  --axiom-shadow-ambient: 0 4px 60px -15px rgba(0, 0, 0, 0.05);
  --axiom-shadow-card: 0px 20px 40px rgba(41, 58, 74, 0.05);
  --axiom-shadow-elevated: 0px 20px 40px rgba(41, 58, 74, 0.15);
}

/* Typography utility classes */
.axiom-display-lg { font-family: var(--axiom-font-heading); font-size: 64px; font-weight: 700; line-height: 72px; letter-spacing: -0.02em; }
.axiom-headline-lg { font-family: var(--axiom-font-heading); font-size: 40px; font-weight: 600; line-height: 48px; letter-spacing: -0.01em; }
.axiom-headline-md { font-family: var(--axiom-font-heading); font-size: 28px; font-weight: 600; line-height: 36px; }
.axiom-headline-sm { font-family: var(--axiom-font-heading); font-size: 24px; font-weight: 600; line-height: 32px; }
.axiom-body-lg { font-family: var(--axiom-font-body); font-size: 18px; font-weight: 400; line-height: 28px; }
.axiom-body-md { font-family: var(--axiom-font-body); font-size: 16px; font-weight: 400; line-height: 24px; }
.axiom-label-sm { font-family: var(--axiom-font-mono); font-size: 12px; font-weight: 500; line-height: 16px; text-transform: uppercase; letter-spacing: 0.05em; }
