/*
 * NorwegianAI Pro design tokens
 * The shared foundation for marketing, product, and assistant surfaces.
 */

:root {
  /* Typography */
  --font-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-md: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: clamp(1.7rem, 3.5vw, 2.6rem);
  --font-size-3xl: clamp(2.2rem, 5vw, 3.6rem);
  --line-height-tight: 1.15;
  --line-height-heading: 1.2;
  --line-height-body: 1.6;

  /* Brand and semantic colors */
  --color-brand-900: #0a0f1e;
  --color-brand-800: #0d1530;
  --color-brand-700: #111e45;
  --color-brand-600: #1a2d6b;
  --color-brand-500: #2563eb;
  --color-brand-400: #3b82f6;
  --color-brand-300: #60a5fa;
  --color-brand-100: #dbeafe;
  --color-accent-600: #4f46e5;
  --color-accent-500: #7c3aed;
  --color-success: #10b981;
  --color-danger: #ef4444;
  --color-danger-text: #b91c1c;
  --color-warning: #f59e0b;
  --color-success-soft: #d1fae5;
  --color-danger-soft: #fee2e2;
  --color-warning-soft: #fef3c7;
  --color-white: #ffffff;
  --color-gray-50: #f8fafc;
  --color-gray-100: #f1f5f9;
  --color-gray-200: #e2e8f0;
  --color-gray-400: #94a3b8;
  --color-gray-600: #475569;
  --color-gray-800: #1e293b;
  --color-text: #0f172a;
  --color-text-muted: #475569;
  --color-on-dark-muted: #94a3b8;
  --color-focus-ring: rgba(37, 99, 235, 0.28);

  /* Layout and spacing */
  --content-max: 1120px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* Shape, elevation, and motion */
  --radius-sm: 8px;
  --radius: 12px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-pill: 999px;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.15);
  --duration-fast: 150ms;
  --duration-standard: 200ms;
  --duration-slow: 350ms;
  --ease-standard: ease;
  --transition: var(--duration-standard) var(--ease-standard);

  /* Legacy aliases retained for the current site */
  --blue-900: var(--color-brand-900);
  --blue-800: var(--color-brand-800);
  --blue-700: var(--color-brand-700);
  --blue-600: var(--color-brand-600);
  --blue-500: var(--color-brand-500);
  --blue-400: var(--color-brand-400);
  --blue-300: var(--color-brand-300);
  --blue-100: var(--color-brand-100);
  --accent: var(--color-accent-600);
  --accent-2: var(--color-accent-500);
  --green: var(--color-success);
  --red: var(--color-danger);
  --red-text: var(--color-danger-text);
  --white: var(--color-white);
  --gray-50: var(--color-gray-50);
  --gray-100: var(--color-gray-100);
  --gray-200: var(--color-gray-200);
  --gray-400: var(--color-gray-400);
  --gray-600: var(--color-gray-600);
  --gray-800: var(--color-gray-800);
  --text: var(--color-text);
  --text-muted: var(--color-text-muted);
  --on-dark-muted: var(--color-on-dark-muted);

  /* Shared convenience aliases used by the portable design-system reference */
  --navy-950: var(--color-brand-900);
  --navy-900: var(--color-brand-800);
  --navy-800: var(--color-brand-700);
  --violet-500: var(--color-accent-500);
  --sky-100: var(--color-brand-100);
  --slate-950: var(--color-text);
  --slate-800: var(--color-gray-800);
  --slate-600: var(--color-gray-600);
  --slate-400: var(--color-gray-400);
  --slate-200: var(--color-gray-200);
  --slate-100: var(--color-gray-100);
  --slate-50: var(--color-gray-50);
  --success: var(--color-success);
  --success-bg: var(--color-success-soft);
  --danger: var(--color-danger);
  --danger-bg: var(--color-danger-soft);
  --warning: var(--color-warning);
  --warning-bg: var(--color-warning-soft);
  --sans: var(--font-sans);
  --content: var(--content-max);
  --r-sm: var(--radius-sm);
  --r-md: var(--radius);
  --r-lg: var(--radius-lg);
  --r-xl: var(--radius-xl);
  --shadow-md: var(--shadow);
}