/* ==========================================================
   AUTO-GENERATED from flux.json — do not edit directly.
   Run "npm run generate-tokens" or edit src/tokens/flux.json.
   ========================================================== */

:root {

  /* --- Primary Teal --- */
  --flux-primary-900: #021e24;
  --flux-primary-800: #032E36;
  --flux-primary-700: #034050;
  --flux-primary-600: #034955;
  --flux-primary-500: #056271;
  --flux-primary-400: #056F82;
  --flux-primary-300: #69A9B4;
  --flux-primary-200: #B4D4DA;
  --flux-primary-100: #E6F1F2;
  --flux-primary-50: #EFF5F5;

  /* --- Yellow (CTA) --- */
  --flux-yellow-800: #976100;
  --flux-yellow-600: #DC8E00;
  --flux-yellow-400: #FFBC42;
  --flux-yellow-300: #FFD78E;
  --flux-yellow-200: #FFEBC6;
  --flux-yellow-100: #FFF8EC;

  /* --- Pink / Magenta (The Dot) --- */
  --flux-pink-600: #AF0072;
  --flux-pink-400: #DE37A4;
  --flux-pink-300: #EB87C8;
  --flux-pink-200: #F5C3E4;
  --flux-pink-100: #FCEBF6;

  /* --- Puffin Beak Orange --- */
  --flux-orange-800: #9C1500;
  --flux-orange-600: #CF1B00;
  --flux-orange-400: #FF6F59;
  --flux-orange-300: #FFA99B;
  --flux-orange-200: #FFD4CD;
  --flux-orange-100: #FFF1EE;

  /* --- Poison Green --- */
  --flux-green-600: #197C04;
  --flux-green-400: #2BA711;
  --flux-green-300: #80CA70;
  --flux-green-200: #BFE5B8;
  --flux-green-100: #EAF6E7;

  /* --- Blue --- */
  --flux-blue-600: #356CD1;
  --flux-blue-400: #4285FF;
  --flux-blue-300: #8EB6FF;
  --flux-blue-200: #C6DAFF;
  --flux-blue-100: #ECF5FF;

  /* --- Purple --- */
  --flux-purple-600: #5A47D6;
  --flux-purple-400: #6F59FF;
  --flux-purple-300: #ADA0FF;
  --flux-purple-200: #D5CFFF;
  --flux-purple-100: #F1EFFF;

  /* --- Neutrals --- */
  --flux-black: #212121;
  --flux-grey-700: #374151;
  --flux-grey-500: #6B7280;
  --flux-grey-300: #878787;
  --flux-grey-200: #C3C3C3;
  --flux-grey-100: #EBEBEB;
  --flux-grey-50: #F5F5F5;
  --flux-background: #F9FAF8;
  --flux-white: #FFFFFF;

  /* --- Semantic --- */
  --flux-success: #10B981;
  --flux-error: #C1121F;
  --flux-warning: #F59E0B;
  --flux-info: #056F82;

  /* --- Product Layer Accents --- */
  --flux-layer-core: #056F82;
  --flux-layer-pex: #F18525;
  --flux-layer-edge: #DE37A4;
  --flux-layer-agents: #8B5CF6;

  /* --- Product Accents --- */
  --flux-quest-accent: #4F46E5;
  --flux-voyage-accent: #056F82;
  --flux-circle-accent: #047857;
  --flux-edge-accent: #DE37A4;
  --flux-agents-accent: #8B5CF6;

  /* --- Typography --- */
  --flux-font-sans: 'Lexend', system-ui, -apple-system, sans-serif;
  --flux-font-mono: 'JetBrains Mono', ui-monospace, monospace;

  /* --- Font Weights --- */
  --flux-weight-light: 300;
  --flux-weight-bold: 700;

  /* --- Type Scale --- */
  --flux-text-xs: 0.75rem;
  --flux-text-sm: 0.875rem;
  --flux-text-base: 1rem;
  --flux-text-lg: 1.125rem;
  --flux-text-xl: 1.25rem;
  --flux-text-2xl: 1.5rem;
  --flux-text-3xl: 1.875rem;
  --flux-text-4xl: 2.25rem;
  --flux-text-5xl: 3rem;

  /* --- Spacing (4px base) --- */
  --flux-space-24: 6rem;
  --flux-space-20: 5rem;
  --flux-space-16: 4rem;
  --flux-space-12: 3rem;
  --flux-space-10: 2.5rem;
  --flux-space-8: 2rem;
  --flux-space-6: 1.5rem;
  --flux-space-5: 1.25rem;
  --flux-space-4: 1rem;
  --flux-space-3: 0.75rem;
  --flux-space-2: 0.5rem;
  --flux-space-1: 0.25rem;

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

  /* --- Shadows --- */
  --flux-shadow-sm: 0 1px 2px 0 rgba(3, 46, 54, 0.05);
  --flux-shadow-md: 0 4px 6px -1px rgba(3, 46, 54, 0.07), 0 2px 4px -2px rgba(3, 46, 54, 0.05);
  --flux-shadow-lg: 0 10px 15px -3px rgba(3, 46, 54, 0.08), 0 4px 6px -4px rgba(3, 46, 54, 0.04);
  --flux-shadow-xl: 0 20px 25px -5px rgba(3, 46, 54, 0.08), 0 8px 10px -6px rgba(3, 46, 54, 0.04);

  /* --- Transitions --- */
  --flux-ease: cubic-bezier(0.4, 0, 0.2, 1);
  --flux-duration-fast: 150ms;
  --flux-duration-normal: 200ms;
  --flux-duration-slow: 300ms;

  /* --- flow --- */
  --flux-flow-header-height: 3rem;
  --flux-flow-header-bg: #F5F5F5;
  --flux-flow-header-border: #EBEBEB;
  --flux-flow-entry-duration: 300ms;
  --flux-flow-achieved-duration: 200ms;
  --flux-flow-return-countdown: 5000;
}
