/* Foundation Tokens - Auto-generated */
:root {
  /* Color Palette */
  --palette-gray-50: #F9FAFB;
  --palette-gray-100: #F3F4F6;
  --palette-gray-200: #E5E7EB;
  --palette-gray-300: #D1D5DB;
  --palette-gray-400: #9CA3AF;
  --palette-gray-500: #6B7280;
  --palette-gray-600: #4B5563;
  --palette-gray-700: #374151;
  --palette-gray-800: #1F2937;
  --palette-gray-900: #111827;
  --palette-gray-950: #030712;
  --palette-blue-50: #EFF6FF;
  --palette-blue-100: #DBEAFE;
  --palette-blue-200: #BFDBFE;
  --palette-blue-300: #93C5FD;
  --palette-blue-400: #60A5FA;
  --palette-blue-500: #3B82F6;
  --palette-blue-600: #2563EB;
  --palette-blue-700: #1D4ED8;
  --palette-blue-800: #1E40AF;
  --palette-blue-900: #1E3A8A;
  --palette-blue-950: #172554;
  --palette-green-50: #F0FDF4;
  --palette-green-100: #DCFCE7;
  --palette-green-200: #BBF7D0;
  --palette-green-300: #86EFAC;
  --palette-green-400: #4ADE80;
  --palette-green-500: #22C55E;
  --palette-green-600: #16A34A;
  --palette-green-700: #15803D;
  --palette-green-800: #166534;
  --palette-green-900: #14532D;
  --palette-green-950: #052E16;
  --palette-purple-50: #FAF5FF;
  --palette-purple-100: #F3E8FF;
  --palette-purple-200: #E9D5FF;
  --palette-purple-300: #D8B4FE;
  --palette-purple-400: #C084FC;
  --palette-purple-500: #A855F7;
  --palette-purple-600: #9333EA;
  --palette-purple-700: #7E22CE;
  --palette-purple-800: #6B21A8;
  --palette-purple-900: #581C87;
  --palette-purple-950: #3B0764;
  --palette-red-50: #FEF2F2;
  --palette-red-100: #FEE2E2;
  --palette-red-200: #FECACA;
  --palette-red-300: #FCA5A5;
  --palette-red-400: #F87171;
  --palette-red-500: #EF4444;
  --palette-red-600: #DC2626;
  --palette-red-700: #B91C1C;
  --palette-red-800: #991B1B;
  --palette-red-900: #7F1D1D;
  --palette-red-950: #450A0A;
  --palette-yellow-50: #FEFCE8;
  --palette-yellow-100: #FEF9C3;
  --palette-yellow-200: #FEF08A;
  --palette-yellow-300: #FDE047;
  --palette-yellow-400: #FACC15;
  --palette-yellow-500: #EAB308;
  --palette-yellow-600: #CA8A04;
  --palette-yellow-700: #A16207;
  --palette-yellow-800: #854D0E;
  --palette-yellow-900: #713F12;
  --palette-yellow-950: #422006;
  --palette-emerald-50: #ECFDF5;
  --palette-emerald-100: #D1FAE5;
  --palette-emerald-200: #A7F3D0;
  --palette-emerald-300: #6EE7B7;
  --palette-emerald-400: #34D399;
  --palette-emerald-500: #10B981;
  --palette-emerald-600: #059669;
  --palette-emerald-700: #047857;
  --palette-emerald-800: #065F46;
  --palette-emerald-900: #064E3B;
  --palette-emerald-950: #022C22;
  --palette-white: #FFFFFF;
  --palette-black: #000000;

  /* Alpha Colors */
  --alpha-black-10: rgba(0, 0, 0, 0.1);
  --alpha-black-20: rgba(0, 0, 0, 0.2);
  --alpha-black-30: rgba(0, 0, 0, 0.3);
  --alpha-black-40: rgba(0, 0, 0, 0.4);
  --alpha-black-50: rgba(0, 0, 0, 0.5);
  --alpha-black-60: rgba(0, 0, 0, 0.6);
  --alpha-black-70: rgba(0, 0, 0, 0.7);
  --alpha-black-80: rgba(0, 0, 0, 0.8);
  --alpha-black-90: rgba(0, 0, 0, 0.9);
  --alpha-white-10: rgba(255, 255, 255, 0.1);
  --alpha-white-20: rgba(255, 255, 255, 0.2);
  --alpha-white-30: rgba(255, 255, 255, 0.3);
  --alpha-white-40: rgba(255, 255, 255, 0.4);
  --alpha-white-50: rgba(255, 255, 255, 0.5);
  --alpha-white-60: rgba(255, 255, 255, 0.6);
  --alpha-white-70: rgba(255, 255, 255, 0.7);
  --alpha-white-80: rgba(255, 255, 255, 0.8);
  --alpha-white-90: rgba(255, 255, 255, 0.9);

  /* Spacing */
  --spacing-0: 0px;
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 16px;
  --spacing-5: 20px;
  --spacing-6: 24px;
  --spacing-8: 32px;
  --spacing-10: 40px;
  --spacing-12: 48px;
  --spacing-16: 64px;
  --spacing-20: 80px;
  --spacing-24: 96px;

  /* Font Sizes */
  --font-size-xs: 12px;
  --font-size-sm: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-2xl: 24px;
  --font-size-3xl: 30px;
  --font-size-4xl: 36px;

  /* Font Weights */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* Line Heights */
  --line-height-tight: 1.25;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;

  /* Font Families */
  --font-family-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  --font-family-heading: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  --font-family-mono: 'Fira Code', 'Roboto Mono', 'Courier New', monospace;

  /* Border Radius
   * Boff UI uses a softer, modern geometry. xs/2xl/3xl extend the original
   * sm/md/lg/xl scale without breaking existing tokens. Semantic radius
   * aliases (--radius-card/button/input) live in semantic.css. */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 12px;
  --radius-2xl: 16px;
  --radius-3xl: 20px;
  --radius-pill: 9999px;

  /* Shadows (light-mode defaults; dark-family themes deepen these in
   * semantic.css / themes.css so elevation stays legible on dark surfaces).
   * elevation-4/5 are Boff UI additions for popovers / modals / palettes. */
  --shadow-elevation-0: none;
  --shadow-elevation-1: 0 1px 2px 0 rgba(15, 23, 42, 0.06), 0 1px 3px -1px rgba(15, 23, 42, 0.08);
  --shadow-elevation-2: 0 2px 4px -1px rgba(15, 23, 42, 0.07), 0 8px 16px -6px rgba(15, 23, 42, 0.10);
  --shadow-elevation-3: 0 8px 20px -6px rgba(15, 23, 42, 0.12), 0 16px 32px -12px rgba(15, 23, 42, 0.12);
  --shadow-elevation-4: 0 16px 32px -10px rgba(15, 23, 42, 0.16), 0 24px 56px -20px rgba(15, 23, 42, 0.18);
  --shadow-elevation-5: 0 24px 56px -16px rgba(15, 23, 42, 0.22), 0 40px 88px -32px rgba(15, 23, 42, 0.24);
  --shadow-focus: 0 0 0 3px rgba(37, 99, 235, 0.2);

  /* Glass blur primitives (consumed via backdrop-blur-[var(--blur-glass)]) */
  --blur-glass-sm: 8px;
  --blur-glass: 16px;
  --blur-glass-lg: 24px;

  /* Boff UI 2.0 — gloss / sheen primitives (hue-neutral alpha overlays).
   * Composed into theme-aware gradients in semantic.css. */
  --gloss-sheen-light: rgba(255, 255, 255, 0.1); /* top inner highlight, light surfaces */
  --gloss-sheen-dark: rgba(255, 255, 255, 0.055); /* fainter highlight, dark surfaces */
  --gloss-rim-light: rgba(15, 23, 42, 0.05); /* bottom rim shade, light */
  --gloss-rim-dark: rgba(0, 0, 0, 0.28); /* bottom rim shade, dark */
  /* Single allow-listed 3D-pop lift (transform only; collapsed in high-contrast). */
  --pop-lift-y: 0px;

  /* Motion Durations */
  --motion-duration-instant: 60ms;
  --motion-duration-fast: 140ms;
  --motion-duration-normal: 220ms;
  --motion-duration-slow: 320ms;
  --motion-duration-slower: 480ms;

  /* Motion Easings */
  --motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --motion-easing-emphasized: cubic-bezier(0.2, 0, 0, 1);
  --motion-easing-out: cubic-bezier(0.16, 1, 0.3, 1);
  --motion-easing-spring: cubic-bezier(0.22, 1, 0.36, 1);

  /* Z-Index */
  --z-base: 0;
  --z-dropdown: 1000;
  --z-sticky: 1100;
  --z-overlay: 1200;
  --z-modal: 1300;
  --z-toast: 1400;
}
