/*
 * AXIS — Design Tokens (shared)
 * Source: style-guide/tokens.css
 */

:root {
  --font-display: 'Space Grotesk', 'IBM Plex Sans', 'Inter', sans-serif;
  --font-body: 'IBM Plex Sans', 'Inter', sans-serif;
  --font-mono: 'IBM Plex Mono', 'SFMono-Regular', 'Courier New', monospace;

  --color-bg: #f7f6f9;
  --color-bg-soft: #ecebf1;
  --color-bg-warm: #f5efe8;

  --color-surface: #ffffff;
  --color-surface-soft: #f6f5f9;

  --color-ink: #171419;
  --color-ink-soft: #5c4e7c;
  --color-ink-inverse: #f6f3f9;

  --color-accent: #843367;
  --color-accent-strong: #6b2a52;
  --color-accent-muted: rgba(132, 51, 103, 0.12);
  --color-accent-rgb: 132, 51, 103;

  --color-signal: #2b759a;
  --color-signal-strong: #1d5f80;
  --color-signal-rgb: 43, 117, 154;

  --color-warning: #b8860b;
  --color-warning-muted: rgba(184, 134, 11, 0.12);
  --color-warning-rgb: 184, 134, 11;

  --color-success: #1b9f86;
  --color-success-muted: rgba(27, 159, 134, 0.12);
  --color-success-rgb: 27, 159, 134;

  --color-error: #d85a6f;
  --color-error-muted: rgba(216, 90, 111, 0.12);
  --color-error-rgb: 216, 90, 111;

  --color-divider: rgba(23, 20, 25, 0.08);
  --color-divider-strong: rgba(23, 20, 25, 0.15);

  --gradient-accent: linear-gradient(135deg, #843367, #6b2a52);
  --gradient-signal: linear-gradient(135deg, #1b9f86, #2b759a);
  --gradient-accent-signal: linear-gradient(135deg, #843367, #2b759a);
  --gradient-error-accent: linear-gradient(135deg, #d85a6f, #843367);

  --surface-card: rgba(255, 255, 255, 0.82);
  --surface-card-dark: rgba(15, 20, 29, 0.92);
  --surface-glass: rgba(255, 255, 255, 0.6);
  --surface-glass-strong: rgba(255, 255, 255, 0.88);

  --shadow-card: 0 2px 8px rgba(23, 20, 25, 0.04), 0 12px 40px rgba(23, 20, 25, 0.06);
  --shadow-card-hover: 0 8px 24px rgba(132, 51, 103, 0.10), 0 24px 64px rgba(23, 20, 25, 0.10);
  --shadow-glow-accent: 0 0 40px rgba(132, 51, 103, 0.15), 0 0 80px rgba(132, 51, 103, 0.05);
  --shadow-card-inset: inset 0 1px 0 rgba(255, 255, 255, 0.55);
  --shadow-soft: 0 14px 24px rgba(15, 19, 26, 0.06);
  --shadow-float: 0 22px 44px rgba(15, 19, 26, 0.14);

  --radius-xs: 0.3rem;
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --radius-xl: 1.25rem;
  --radius-2xl: 1.5rem;
  --radius-3xl: 1.75rem;
  --radius-pill: 999px;

  --container-max: 1140px;
  --nav-height: 68px;

  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-smooth: cubic-bezier(0.4, 0, 0, 1);

  --space-2xs: 0.3rem;
  --space-xs: 0.5rem;
  --space-sm: 0.8rem;
  --space-md: 1.15rem;
  --space-lg: 1.6rem;
  --space-xl: 2.2rem;
  --space-2xl: 3.1rem;
  --space-3xl: 4.4rem;
  --space-4xl: 5.6rem;

  --display-1: clamp(2.8rem, 7.5vw, 7rem);
  --display-2: clamp(1.9rem, 4.6vw, 4rem);
  --headline-1: clamp(1.4rem, 2.4vw, 2.3rem);
  --headline-2: clamp(1.15rem, 1.8vw, 1.7rem);
  --body-lg: clamp(1.02rem, 1.12vw, 1.24rem);
  --body-md: 1rem;
  --body-sm: 0.9rem;
  --caption: 0.78rem;

  --section-gap: clamp(6rem, 12vw, 10rem);
  --section-gap-sm: clamp(2.4rem, 5vw, 4.6rem);

  --z-header: 30;
  --z-floating: 35;
}
