/* Innerverse Design System 2.0 — GENERATED by scripts/build-tokens.py. Do not edit; change tokens/*.tokens.json. */
/* Theme: day (default) on :root, stage on [data-theme="stage"]. Either theme can be set on <html> or on any subtree. */
/* Component tokens are re-declared per theme so var() resolves against the nearest theme, not :root. */

:root {
  --iv-violet-50: #F6F5FF;
  --iv-violet-100: #ECEAFF;
  --iv-violet-200: #DCD8FE;
  --iv-violet-300: #C0BAFD;
  --iv-violet-400: #9D94F8;
  --iv-violet-500: #7768E8;
  --iv-violet-600: #4B35C4;
  --iv-violet-700: #3D27A6;
  --iv-violet-800: #2F1D80;
  --iv-violet-900: #23165E;
  --iv-violet-950: #171040;
  --iv-ink-0: #FFFFFF;
  --iv-ink-25: #FBFAFE;
  --iv-ink-50: #F5F4FA;
  --iv-ink-100: #ECEBF4;
  --iv-ink-200: #DEDDEA;
  --iv-ink-300: #C5C4D5;
  --iv-ink-400: #A3A2B8;
  --iv-ink-500: #7E7D96;
  --iv-ink-600: #5F5E78;
  --iv-ink-700: #4A4963;
  --iv-ink-800: #36354F;
  --iv-ink-900: #272541;
  --iv-ink-950: #1F1D3B;
  --iv-ink-1000: #12111F;
  --iv-lime-50: #FAFEE8;
  --iv-lime-100: #F3FDC9;
  --iv-lime-200: #E8FB9A;
  --iv-lime-300: #DCF866;
  --iv-lime-400: #C7E83C;
  --iv-lime-500: #A5C41F;
  --iv-lime-600: #7F9814;
  --iv-lime-700: #5F7212;
  --iv-lime-800: #475513;
  --iv-lime-900: #343E13;
  --iv-lime-950: #1F2609;
  --iv-teal-50: #EAF8F5;
  --iv-teal-100: #CFEFE9;
  --iv-teal-200: #A8E0D6;
  --iv-teal-300: #7ECFC2;
  --iv-teal-400: #45B3A5;
  --iv-teal-500: #14968A;
  --iv-teal-600: #08766C;
  --iv-teal-700: #075E57;
  --iv-teal-800: #074A45;
  --iv-teal-900: #063A36;
  --iv-teal-950: #032421;
  --iv-amber-50: #FFF6E8;
  --iv-amber-100: #FFE9C4;
  --iv-amber-200: #FDD592;
  --iv-amber-300: #F7BE5C;
  --iv-amber-400: #EDA22E;
  --iv-amber-500: #D98A0B;
  --iv-amber-600: #B26A04;
  --iv-amber-700: #8A5003;
  --iv-amber-800: #6B3E05;
  --iv-amber-900: #4E2D04;
  --iv-amber-950: #2F1A02;
  --iv-red-50: #FFF2F0;
  --iv-red-100: #FFDFD9;
  --iv-red-200: #FDC2B7;
  --iv-red-300: #FB9E8D;
  --iv-red-400: #F07560;
  --iv-red-500: #DC5440;
  --iv-red-600: #BE3D2A;
  --iv-red-700: #992C1C;
  --iv-red-800: #772315;
  --iv-red-900: #5A170D;
  --iv-red-950: #380C06;
  --iv-stage-surface: #1A1930;
  --iv-stage-raised: #232140;
  --iv-stage-line: #2E2C4A;
  --iv-stage-deep: #0B0A15;
  --iv-logo-violet: #4B35C4;
  --iv-logo-lime: #DCF866;
  --iv-logo-ink: #1F1D3B;
  --iv-logo-violet-reverse: #8E7EF5;
  --iv-font-family-display: "Rooyin", "IRAN Rounded", "Tahoma", sans-serif;
  --iv-font-family-body: "IRAN Rounded", "Tahoma", sans-serif;
  --iv-font-family-mono: ui-monospace, "SFMono-Regular", "Menlo", monospace;
  --iv-font-weight-body: 400;
  --iv-font-weight-label: 560;
  --iv-font-weight-title: 620;
  --iv-font-weight-heading: 660;
  --iv-font-weight-h1: 700;
  --iv-font-weight-display: 720;
  --iv-font-weight-hero: 760;
  --iv-space-0: 0;
  --iv-space-0-5: 2px;
  --iv-space-1: 4px;
  --iv-space-2: 8px;
  --iv-space-3: 12px;
  --iv-space-4: 16px;
  --iv-space-5: 20px;
  --iv-space-6: 24px;
  --iv-space-8: 32px;
  --iv-space-10: 40px;
  --iv-space-12: 48px;
  --iv-space-16: 64px;
  --iv-space-20: 80px;
  --iv-space-24: 96px;
  --iv-radius-xs: 6px;
  --iv-radius-sm: 8px;
  --iv-radius-md: 12px;
  --iv-radius-lg: 20px;
  --iv-radius-xl: 28px;
  --iv-radius-2xl: 36px;
  --iv-radius-full: 9999px;
  --iv-duration-instant: 0;
  --iv-duration-fast: 120ms;
  --iv-duration-base: 200ms;
  --iv-duration-slow: 320ms;
  --iv-duration-stage: 560ms;
  --iv-easing-standard: cubic-bezier(0.2, 0, 0, 1);
  --iv-easing-emphasized: cubic-bezier(0.3, 0, 0, 1);
  --iv-easing-exit: cubic-bezier(0.4, 0, 1, 1);
  --iv-easing-linear: cubic-bezier(0, 0, 1, 1);
  --iv-breakpoint-sm: 360px;
  --iv-breakpoint-md: 768px;
  --iv-breakpoint-lg: 1024px;
  --iv-breakpoint-xl: 1280px;
  --iv-breakpoint-2xl: 1440px;
  --iv-z-base: 0;
  --iv-z-sticky: 10;
  --iv-z-popover: 30;
  --iv-z-drawer: 40;
  --iv-z-dialog: 50;
  --iv-z-toast: 60;
}

:root,
[data-theme="day"] {
  color-scheme: light;
  --iv-bg-canvas: var(--iv-ink-50);
  --iv-bg-surface: var(--iv-ink-0);
  --iv-bg-raised: var(--iv-ink-0);
  --iv-bg-subtle: var(--iv-ink-100);
  --iv-bg-brand-subtle: var(--iv-violet-100);
  --iv-bg-inverse: var(--iv-ink-950);
  --iv-bg-media: var(--iv-ink-1000);
  --iv-text-primary: var(--iv-ink-950);
  --iv-text-secondary: var(--iv-ink-600);
  --iv-text-disabled: var(--iv-ink-400);
  --iv-text-brand: var(--iv-violet-600);
  --iv-text-on-brand: var(--iv-ink-0);
  --iv-text-on-signal: var(--iv-ink-950);
  --iv-text-inverse: var(--iv-ink-50);
  --iv-text-success: var(--iv-teal-700);
  --iv-text-warning: var(--iv-amber-700);
  --iv-text-error: var(--iv-red-700);
  --iv-border-subtle: var(--iv-ink-200);
  --iv-border-strong: var(--iv-ink-300);
  --iv-border-control: var(--iv-ink-500);
  --iv-border-focus: var(--iv-violet-600);
  --iv-border-error: var(--iv-red-600);
  --iv-border-warning: var(--iv-amber-600);
  --iv-action-primary-bg: var(--iv-violet-600);
  --iv-action-primary-bg-hover: var(--iv-violet-700);
  --iv-action-primary-bg-pressed: var(--iv-violet-800);
  --iv-action-primary-fg: var(--iv-ink-0);
  --iv-action-secondary-bg: var(--iv-ink-0);
  --iv-action-secondary-bg-hover: var(--iv-ink-50);
  --iv-action-secondary-bg-pressed: var(--iv-ink-100);
  --iv-action-secondary-fg: var(--iv-ink-950);
  --iv-action-secondary-border: var(--iv-ink-300);
  --iv-action-tertiary-bg-hover: var(--iv-violet-100);
  --iv-action-tertiary-bg-pressed: var(--iv-violet-200);
  --iv-action-tertiary-fg: var(--iv-violet-600);
  --iv-action-signal-bg: var(--iv-lime-300);
  --iv-action-signal-bg-hover: var(--iv-lime-400);
  --iv-action-signal-bg-pressed: var(--iv-lime-500);
  --iv-action-signal-fg: var(--iv-ink-950);
  --iv-action-destructive-bg: var(--iv-red-600);
  --iv-action-destructive-bg-hover: var(--iv-red-700);
  --iv-action-destructive-bg-pressed: var(--iv-red-800);
  --iv-action-destructive-fg: var(--iv-ink-0);
  --iv-action-disabled-bg: var(--iv-ink-100);
  --iv-action-disabled-fg: var(--iv-ink-400);
  --iv-status-neutral-fg: var(--iv-ink-700);
  --iv-status-neutral-bg: var(--iv-ink-100);
  --iv-status-neutral-border: var(--iv-ink-200);
  --iv-status-neutral-solid: var(--iv-ink-500);
  --iv-status-info-fg: var(--iv-violet-700);
  --iv-status-info-bg: var(--iv-violet-100);
  --iv-status-info-border: var(--iv-violet-200);
  --iv-status-info-solid: var(--iv-violet-600);
  --iv-status-success-fg: var(--iv-teal-800);
  --iv-status-success-bg: var(--iv-teal-100);
  --iv-status-success-border: var(--iv-teal-200);
  --iv-status-success-solid: var(--iv-teal-600);
  --iv-status-warning-fg: var(--iv-amber-800);
  --iv-status-warning-bg: var(--iv-amber-100);
  --iv-status-warning-border: var(--iv-amber-200);
  --iv-status-warning-solid: var(--iv-amber-600);
  --iv-status-error-fg: var(--iv-red-800);
  --iv-status-error-bg: var(--iv-red-100);
  --iv-status-error-border: var(--iv-red-200);
  --iv-status-error-solid: var(--iv-red-600);
  --iv-ai-bg: var(--iv-violet-50);
  --iv-ai-border: var(--iv-violet-200);
  --iv-ai-fg: var(--iv-violet-700);
  --iv-ai-highlight: var(--iv-violet-200);
  --iv-logo-mark: var(--iv-logo-violet);
  --iv-logo-door: var(--iv-logo-lime);
  --iv-logo-wordmark: var(--iv-logo-ink);
  --iv-signal: var(--iv-lime-300);
  --iv-type-display-xl-family: var(--iv-font-family-display);
  --iv-type-display-xl-weight: var(--iv-font-weight-hero);
  --iv-type-display-xl-size: 96px;
  --iv-type-display-xl-line-height: 1.1667;
  --iv-type-display-xl-tracking: -0.01em;
  --iv-type-display-family: var(--iv-font-family-display);
  --iv-type-display-weight: var(--iv-font-weight-display);
  --iv-type-display-size: 72px;
  --iv-type-display-line-height: 1.2222;
  --iv-type-display-tracking: -0.005em;
  --iv-type-heading-1-family: var(--iv-font-family-display);
  --iv-type-heading-1-weight: var(--iv-font-weight-h1);
  --iv-type-heading-1-size: 48px;
  --iv-type-heading-1-line-height: 1.3333;
  --iv-type-heading-1-tracking: 0;
  --iv-type-heading-2-family: var(--iv-font-family-display);
  --iv-type-heading-2-weight: var(--iv-font-weight-heading);
  --iv-type-heading-2-size: 36px;
  --iv-type-heading-2-line-height: 1.4444;
  --iv-type-heading-2-tracking: 0;
  --iv-type-heading-3-family: var(--iv-font-family-display);
  --iv-type-heading-3-weight: var(--iv-font-weight-title);
  --iv-type-heading-3-size: 28px;
  --iv-type-heading-3-line-height: 1.5;
  --iv-type-heading-3-tracking: 0;
  --iv-type-heading-4-family: var(--iv-font-family-display);
  --iv-type-heading-4-weight: var(--iv-font-weight-title);
  --iv-type-heading-4-size: 22px;
  --iv-type-heading-4-line-height: 1.5455;
  --iv-type-heading-4-tracking: 0;
  --iv-type-body-lg-family: var(--iv-font-family-body);
  --iv-type-body-lg-weight: var(--iv-font-weight-body);
  --iv-type-body-lg-size: 18px;
  --iv-type-body-lg-line-height: 1.8889;
  --iv-type-body-lg-tracking: 0;
  --iv-type-body-family: var(--iv-font-family-body);
  --iv-type-body-weight: var(--iv-font-weight-body);
  --iv-type-body-size: 16px;
  --iv-type-body-line-height: 1.875;
  --iv-type-body-tracking: 0;
  --iv-type-body-sm-family: var(--iv-font-family-body);
  --iv-type-body-sm-weight: var(--iv-font-weight-body);
  --iv-type-body-sm-size: 14px;
  --iv-type-body-sm-line-height: 1.8571;
  --iv-type-body-sm-tracking: 0;
  --iv-type-label-family: var(--iv-font-family-display);
  --iv-type-label-weight: var(--iv-font-weight-label);
  --iv-type-label-size: 15px;
  --iv-type-label-line-height: 1.4667;
  --iv-type-label-tracking: 0;
  --iv-type-label-sm-family: var(--iv-font-family-display);
  --iv-type-label-sm-weight: var(--iv-font-weight-label);
  --iv-type-label-sm-size: 13px;
  --iv-type-label-sm-line-height: 1.3846;
  --iv-type-label-sm-tracking: 0;
  --iv-type-caption-family: var(--iv-font-family-body);
  --iv-type-caption-weight: var(--iv-font-weight-body);
  --iv-type-caption-size: 12px;
  --iv-type-caption-line-height: 1.6667;
  --iv-type-caption-tracking: 0;
  --iv-type-eyebrow-latin-family: var(--iv-font-family-display);
  --iv-type-eyebrow-latin-weight: var(--iv-font-weight-label);
  --iv-type-eyebrow-latin-size: 13px;
  --iv-type-eyebrow-latin-line-height: 1.2308;
  --iv-type-eyebrow-latin-tracking: 0.1em;
  --iv-elevation-0: 0 0 0 1px rgb(31 29 59 / 0.08);
  --iv-elevation-1: 0 1px 2px 0 rgb(31 29 59 / 0.06), 0 2px 6px -1px rgb(31 29 59 / 0.06), 0 0 0 1px rgb(31 29 59 / 0.05);
  --iv-elevation-2: 0 8px 24px -6px rgb(31 29 59 / 0.14), 0 2px 4px 0 rgb(31 29 59 / 0.05), 0 0 0 1px rgb(31 29 59 / 0.05);
  --iv-elevation-3: 0 24px 56px -12px rgb(31 29 59 / 0.26), 0 4px 10px 0 rgb(31 29 59 / 0.06), 0 0 0 1px rgb(31 29 59 / 0.05);
  --iv-focus-ring-color: var(--iv-border-focus);
  --iv-focus-ring-width: 2px;
  --iv-focus-ring-offset: 2px;
  --iv-focus-offset-color: var(--iv-bg-surface);
  --iv-button-height-sm: 36px;
  --iv-button-height-md: 44px;
  --iv-button-height-lg: 52px;
  --iv-button-padding-inline-sm: var(--iv-space-3);
  --iv-button-padding-inline-md: var(--iv-space-5);
  --iv-button-padding-inline-lg: 26px;
  --iv-button-radius-sm: 10px;
  --iv-button-radius-md: var(--iv-radius-md);
  --iv-button-radius-lg: 14px;
  --iv-button-typography-family: var(--iv-type-label-family);
  --iv-button-typography-weight: var(--iv-type-label-weight);
  --iv-button-typography-size: var(--iv-type-label-size);
  --iv-button-typography-line-height: var(--iv-type-label-line-height);
  --iv-button-typography-tracking: var(--iv-type-label-tracking);
  --iv-button-gap: var(--iv-space-2);
  --iv-button-primary-bg: var(--iv-action-primary-bg);
  --iv-button-primary-bg-hover: var(--iv-action-primary-bg-hover);
  --iv-button-primary-bg-pressed: var(--iv-action-primary-bg-pressed);
  --iv-button-primary-fg: var(--iv-action-primary-fg);
  --iv-button-secondary-bg: var(--iv-action-secondary-bg);
  --iv-button-secondary-bg-hover: var(--iv-action-secondary-bg-hover);
  --iv-button-secondary-border: var(--iv-action-secondary-border);
  --iv-button-secondary-fg: var(--iv-action-secondary-fg);
  --iv-button-signal-bg: var(--iv-action-signal-bg);
  --iv-button-signal-bg-hover: var(--iv-action-signal-bg-hover);
  --iv-button-signal-fg: var(--iv-action-signal-fg);
  --iv-button-destructive-bg: var(--iv-action-destructive-bg);
  --iv-button-destructive-bg-hover: var(--iv-action-destructive-bg-hover);
  --iv-button-destructive-fg: var(--iv-action-destructive-fg);
  --iv-button-disabled-bg: var(--iv-action-disabled-bg);
  --iv-button-disabled-fg: var(--iv-action-disabled-fg);
  --iv-input-height-md: 48px;
  --iv-input-height-mobile: 52px;
  --iv-input-radius: var(--iv-radius-md);
  --iv-input-padding-inline: 14px;
  --iv-input-bg: var(--iv-bg-surface);
  --iv-input-fg: var(--iv-text-primary);
  --iv-input-placeholder: var(--iv-text-secondary);
  --iv-input-border: var(--iv-border-control);
  --iv-input-border-width: 1px;
  --iv-input-border-focus: var(--iv-border-focus);
  --iv-input-border-focus-width: 2px;
  --iv-input-halo-focus: var(--iv-action-tertiary-bg-pressed);
  --iv-input-border-error: var(--iv-border-error);
  --iv-input-label-family: var(--iv-type-label-family);
  --iv-input-label-weight: var(--iv-type-label-weight);
  --iv-input-label-size: var(--iv-type-label-size);
  --iv-input-label-line-height: var(--iv-type-label-line-height);
  --iv-input-label-tracking: var(--iv-type-label-tracking);
  --iv-input-hint-family: var(--iv-type-body-sm-family);
  --iv-input-hint-weight: var(--iv-type-body-sm-weight);
  --iv-input-hint-size: var(--iv-type-body-sm-size);
  --iv-input-hint-line-height: var(--iv-type-body-sm-line-height);
  --iv-input-hint-tracking: var(--iv-type-body-sm-tracking);
  --iv-card-radius: var(--iv-radius-lg);
  --iv-card-padding: var(--iv-space-6);
  --iv-card-bg: var(--iv-bg-surface);
  --iv-card-border: var(--iv-border-subtle);
  --iv-card-shadow: var(--iv-elevation-1);
  --iv-panel-radius: var(--iv-radius-xl);
  --iv-panel-padding: var(--iv-space-8);
  --iv-panel-bg: var(--iv-bg-surface);
  --iv-dialog-radius: var(--iv-radius-xl);
  --iv-dialog-shadow: var(--iv-elevation-3);
  --iv-dialog-z: var(--iv-z-dialog);
  --iv-badge-height: 28px;
  --iv-badge-radius: var(--iv-radius-full);
  --iv-badge-padding-inline: 10px;
  --iv-badge-typography-family: var(--iv-type-label-sm-family);
  --iv-badge-typography-weight: var(--iv-type-label-sm-weight);
  --iv-badge-typography-size: var(--iv-type-label-sm-size);
  --iv-badge-typography-line-height: var(--iv-type-label-sm-line-height);
  --iv-badge-typography-tracking: var(--iv-type-label-sm-tracking);
  --iv-switch-width: 44px;
  --iv-switch-height: 26px;
  --iv-switch-thumb: 20px;
  --iv-switch-on: var(--iv-action-primary-bg);
  --iv-switch-off: var(--iv-border-control);
  --iv-nav-item-height: 44px;
  --iv-nav-item-radius: var(--iv-radius-md);
  --iv-nav-item-active-bg: var(--iv-bg-brand-subtle);
  --iv-nav-item-active-fg: var(--iv-text-brand);
  --iv-threshold-width: 4px;
  --iv-threshold-height: 16px;
  --iv-threshold-skew: -28;
  --iv-threshold-color-active: var(--iv-action-primary-bg);
  --iv-threshold-color-live: var(--iv-signal);
  --iv-ai-result-bg: var(--iv-ai-bg);
  --iv-ai-result-border: var(--iv-ai-border);
  --iv-ai-result-fg: var(--iv-ai-fg);
  --iv-ai-result-radius: 22px;
  --iv-motion-hover: var(--iv-duration-fast);
  --iv-motion-menu: var(--iv-duration-base);
  --iv-motion-sheet: var(--iv-duration-slow);
  --iv-motion-ease: var(--iv-easing-standard);
}

[data-theme="stage"] {
  color-scheme: dark;
  --iv-bg-canvas: var(--iv-ink-1000);
  --iv-bg-surface: var(--iv-stage-surface);
  --iv-bg-raised: var(--iv-stage-raised);
  --iv-bg-subtle: var(--iv-stage-raised);
  --iv-bg-brand-subtle: var(--iv-violet-900);
  --iv-bg-inverse: var(--iv-ink-50);
  --iv-bg-media: var(--iv-stage-deep);
  --iv-text-primary: var(--iv-ink-50);
  --iv-text-secondary: var(--iv-ink-400);
  --iv-text-disabled: var(--iv-ink-600);
  --iv-text-brand: var(--iv-violet-300);
  --iv-text-on-brand: var(--iv-ink-1000);
  --iv-text-on-signal: var(--iv-ink-1000);
  --iv-text-inverse: var(--iv-ink-950);
  --iv-text-success: var(--iv-teal-300);
  --iv-text-warning: var(--iv-amber-300);
  --iv-text-error: var(--iv-red-300);
  --iv-border-subtle: var(--iv-stage-line);
  --iv-border-strong: var(--iv-ink-800);
  --iv-border-control: var(--iv-ink-500);
  --iv-border-focus: var(--iv-violet-300);
  --iv-border-error: var(--iv-red-300);
  --iv-border-warning: var(--iv-amber-300);
  --iv-action-primary-bg: var(--iv-violet-400);
  --iv-action-primary-bg-hover: var(--iv-violet-300);
  --iv-action-primary-bg-pressed: var(--iv-violet-200);
  --iv-action-primary-fg: var(--iv-ink-1000);
  --iv-action-secondary-bg: var(--iv-stage-surface);
  --iv-action-secondary-bg-hover: var(--iv-stage-raised);
  --iv-action-secondary-bg-pressed: var(--iv-ink-800);
  --iv-action-secondary-fg: var(--iv-ink-50);
  --iv-action-secondary-border: var(--iv-ink-700);
  --iv-action-tertiary-bg-hover: var(--iv-violet-900);
  --iv-action-tertiary-bg-pressed: var(--iv-violet-800);
  --iv-action-tertiary-fg: var(--iv-violet-300);
  --iv-action-signal-bg: var(--iv-lime-300);
  --iv-action-signal-bg-hover: var(--iv-lime-200);
  --iv-action-signal-bg-pressed: var(--iv-lime-400);
  --iv-action-signal-fg: var(--iv-ink-1000);
  --iv-action-destructive-bg: var(--iv-red-300);
  --iv-action-destructive-bg-hover: var(--iv-red-200);
  --iv-action-destructive-bg-pressed: var(--iv-red-400);
  --iv-action-destructive-fg: var(--iv-ink-1000);
  --iv-action-disabled-bg: var(--iv-stage-raised);
  --iv-action-disabled-fg: var(--iv-ink-600);
  --iv-status-neutral-fg: var(--iv-ink-300);
  --iv-status-neutral-bg: var(--iv-stage-raised);
  --iv-status-neutral-border: var(--iv-stage-line);
  --iv-status-neutral-solid: var(--iv-ink-500);
  --iv-status-info-fg: var(--iv-violet-200);
  --iv-status-info-bg: var(--iv-violet-900);
  --iv-status-info-border: var(--iv-violet-800);
  --iv-status-info-solid: var(--iv-violet-300);
  --iv-status-success-fg: var(--iv-teal-200);
  --iv-status-success-bg: var(--iv-teal-900);
  --iv-status-success-border: var(--iv-teal-800);
  --iv-status-success-solid: var(--iv-teal-300);
  --iv-status-warning-fg: var(--iv-amber-200);
  --iv-status-warning-bg: var(--iv-amber-900);
  --iv-status-warning-border: var(--iv-amber-800);
  --iv-status-warning-solid: var(--iv-amber-300);
  --iv-status-error-fg: var(--iv-red-200);
  --iv-status-error-bg: var(--iv-red-900);
  --iv-status-error-border: var(--iv-red-800);
  --iv-status-error-solid: var(--iv-red-300);
  --iv-ai-bg: var(--iv-violet-950);
  --iv-ai-border: var(--iv-violet-800);
  --iv-ai-fg: var(--iv-violet-200);
  --iv-ai-highlight: var(--iv-violet-800);
  --iv-logo-mark: var(--iv-logo-violet-reverse);
  --iv-logo-door: var(--iv-logo-lime);
  --iv-logo-wordmark: var(--iv-ink-50);
  --iv-signal: var(--iv-lime-300);
  --iv-type-display-xl-family: var(--iv-font-family-display);
  --iv-type-display-xl-weight: var(--iv-font-weight-hero);
  --iv-type-display-xl-size: 96px;
  --iv-type-display-xl-line-height: 1.1667;
  --iv-type-display-xl-tracking: -0.01em;
  --iv-type-display-family: var(--iv-font-family-display);
  --iv-type-display-weight: var(--iv-font-weight-display);
  --iv-type-display-size: 72px;
  --iv-type-display-line-height: 1.2222;
  --iv-type-display-tracking: -0.005em;
  --iv-type-heading-1-family: var(--iv-font-family-display);
  --iv-type-heading-1-weight: var(--iv-font-weight-h1);
  --iv-type-heading-1-size: 48px;
  --iv-type-heading-1-line-height: 1.3333;
  --iv-type-heading-1-tracking: 0;
  --iv-type-heading-2-family: var(--iv-font-family-display);
  --iv-type-heading-2-weight: var(--iv-font-weight-heading);
  --iv-type-heading-2-size: 36px;
  --iv-type-heading-2-line-height: 1.4444;
  --iv-type-heading-2-tracking: 0;
  --iv-type-heading-3-family: var(--iv-font-family-display);
  --iv-type-heading-3-weight: var(--iv-font-weight-title);
  --iv-type-heading-3-size: 28px;
  --iv-type-heading-3-line-height: 1.5;
  --iv-type-heading-3-tracking: 0;
  --iv-type-heading-4-family: var(--iv-font-family-display);
  --iv-type-heading-4-weight: var(--iv-font-weight-title);
  --iv-type-heading-4-size: 22px;
  --iv-type-heading-4-line-height: 1.5455;
  --iv-type-heading-4-tracking: 0;
  --iv-type-body-lg-family: var(--iv-font-family-body);
  --iv-type-body-lg-weight: var(--iv-font-weight-body);
  --iv-type-body-lg-size: 18px;
  --iv-type-body-lg-line-height: 1.8889;
  --iv-type-body-lg-tracking: 0;
  --iv-type-body-family: var(--iv-font-family-body);
  --iv-type-body-weight: var(--iv-font-weight-body);
  --iv-type-body-size: 16px;
  --iv-type-body-line-height: 1.875;
  --iv-type-body-tracking: 0;
  --iv-type-body-sm-family: var(--iv-font-family-body);
  --iv-type-body-sm-weight: var(--iv-font-weight-body);
  --iv-type-body-sm-size: 14px;
  --iv-type-body-sm-line-height: 1.8571;
  --iv-type-body-sm-tracking: 0;
  --iv-type-label-family: var(--iv-font-family-display);
  --iv-type-label-weight: var(--iv-font-weight-label);
  --iv-type-label-size: 15px;
  --iv-type-label-line-height: 1.4667;
  --iv-type-label-tracking: 0;
  --iv-type-label-sm-family: var(--iv-font-family-display);
  --iv-type-label-sm-weight: var(--iv-font-weight-label);
  --iv-type-label-sm-size: 13px;
  --iv-type-label-sm-line-height: 1.3846;
  --iv-type-label-sm-tracking: 0;
  --iv-type-caption-family: var(--iv-font-family-body);
  --iv-type-caption-weight: var(--iv-font-weight-body);
  --iv-type-caption-size: 12px;
  --iv-type-caption-line-height: 1.6667;
  --iv-type-caption-tracking: 0;
  --iv-type-eyebrow-latin-family: var(--iv-font-family-display);
  --iv-type-eyebrow-latin-weight: var(--iv-font-weight-label);
  --iv-type-eyebrow-latin-size: 13px;
  --iv-type-eyebrow-latin-line-height: 1.2308;
  --iv-type-eyebrow-latin-tracking: 0.1em;
  --iv-elevation-0: inset 0 0 0 1px #2E2C4A;
  --iv-elevation-1: inset 0 0 0 1px #2E2C4A;
  --iv-elevation-2: 0 12px 32px -8px rgb(0 0 0 / 0.55), 0 0 0 1px #36354F;
  --iv-elevation-3: 0 28px 64px -12px rgb(0 0 0 / 0.65), 0 0 0 1px #36354F;
  --iv-focus-ring-color: var(--iv-border-focus);
  --iv-focus-ring-width: 2px;
  --iv-focus-ring-offset: 2px;
  --iv-focus-offset-color: var(--iv-bg-surface);
  --iv-button-height-sm: 36px;
  --iv-button-height-md: 44px;
  --iv-button-height-lg: 52px;
  --iv-button-padding-inline-sm: var(--iv-space-3);
  --iv-button-padding-inline-md: var(--iv-space-5);
  --iv-button-padding-inline-lg: 26px;
  --iv-button-radius-sm: 10px;
  --iv-button-radius-md: var(--iv-radius-md);
  --iv-button-radius-lg: 14px;
  --iv-button-typography-family: var(--iv-type-label-family);
  --iv-button-typography-weight: var(--iv-type-label-weight);
  --iv-button-typography-size: var(--iv-type-label-size);
  --iv-button-typography-line-height: var(--iv-type-label-line-height);
  --iv-button-typography-tracking: var(--iv-type-label-tracking);
  --iv-button-gap: var(--iv-space-2);
  --iv-button-primary-bg: var(--iv-action-primary-bg);
  --iv-button-primary-bg-hover: var(--iv-action-primary-bg-hover);
  --iv-button-primary-bg-pressed: var(--iv-action-primary-bg-pressed);
  --iv-button-primary-fg: var(--iv-action-primary-fg);
  --iv-button-secondary-bg: var(--iv-action-secondary-bg);
  --iv-button-secondary-bg-hover: var(--iv-action-secondary-bg-hover);
  --iv-button-secondary-border: var(--iv-action-secondary-border);
  --iv-button-secondary-fg: var(--iv-action-secondary-fg);
  --iv-button-signal-bg: var(--iv-action-signal-bg);
  --iv-button-signal-bg-hover: var(--iv-action-signal-bg-hover);
  --iv-button-signal-fg: var(--iv-action-signal-fg);
  --iv-button-destructive-bg: var(--iv-action-destructive-bg);
  --iv-button-destructive-bg-hover: var(--iv-action-destructive-bg-hover);
  --iv-button-destructive-fg: var(--iv-action-destructive-fg);
  --iv-button-disabled-bg: var(--iv-action-disabled-bg);
  --iv-button-disabled-fg: var(--iv-action-disabled-fg);
  --iv-input-height-md: 48px;
  --iv-input-height-mobile: 52px;
  --iv-input-radius: var(--iv-radius-md);
  --iv-input-padding-inline: 14px;
  --iv-input-bg: var(--iv-bg-surface);
  --iv-input-fg: var(--iv-text-primary);
  --iv-input-placeholder: var(--iv-text-secondary);
  --iv-input-border: var(--iv-border-control);
  --iv-input-border-width: 1px;
  --iv-input-border-focus: var(--iv-border-focus);
  --iv-input-border-focus-width: 2px;
  --iv-input-halo-focus: var(--iv-action-tertiary-bg-pressed);
  --iv-input-border-error: var(--iv-border-error);
  --iv-input-label-family: var(--iv-type-label-family);
  --iv-input-label-weight: var(--iv-type-label-weight);
  --iv-input-label-size: var(--iv-type-label-size);
  --iv-input-label-line-height: var(--iv-type-label-line-height);
  --iv-input-label-tracking: var(--iv-type-label-tracking);
  --iv-input-hint-family: var(--iv-type-body-sm-family);
  --iv-input-hint-weight: var(--iv-type-body-sm-weight);
  --iv-input-hint-size: var(--iv-type-body-sm-size);
  --iv-input-hint-line-height: var(--iv-type-body-sm-line-height);
  --iv-input-hint-tracking: var(--iv-type-body-sm-tracking);
  --iv-card-radius: var(--iv-radius-lg);
  --iv-card-padding: var(--iv-space-6);
  --iv-card-bg: var(--iv-bg-surface);
  --iv-card-border: var(--iv-border-subtle);
  --iv-card-shadow: var(--iv-elevation-1);
  --iv-panel-radius: var(--iv-radius-xl);
  --iv-panel-padding: var(--iv-space-8);
  --iv-panel-bg: var(--iv-bg-surface);
  --iv-dialog-radius: var(--iv-radius-xl);
  --iv-dialog-shadow: var(--iv-elevation-3);
  --iv-dialog-z: var(--iv-z-dialog);
  --iv-badge-height: 28px;
  --iv-badge-radius: var(--iv-radius-full);
  --iv-badge-padding-inline: 10px;
  --iv-badge-typography-family: var(--iv-type-label-sm-family);
  --iv-badge-typography-weight: var(--iv-type-label-sm-weight);
  --iv-badge-typography-size: var(--iv-type-label-sm-size);
  --iv-badge-typography-line-height: var(--iv-type-label-sm-line-height);
  --iv-badge-typography-tracking: var(--iv-type-label-sm-tracking);
  --iv-switch-width: 44px;
  --iv-switch-height: 26px;
  --iv-switch-thumb: 20px;
  --iv-switch-on: var(--iv-action-primary-bg);
  --iv-switch-off: var(--iv-border-control);
  --iv-nav-item-height: 44px;
  --iv-nav-item-radius: var(--iv-radius-md);
  --iv-nav-item-active-bg: var(--iv-bg-brand-subtle);
  --iv-nav-item-active-fg: var(--iv-text-brand);
  --iv-threshold-width: 4px;
  --iv-threshold-height: 16px;
  --iv-threshold-skew: -28;
  --iv-threshold-color-active: var(--iv-action-primary-bg);
  --iv-threshold-color-live: var(--iv-signal);
  --iv-ai-result-bg: var(--iv-ai-bg);
  --iv-ai-result-border: var(--iv-ai-border);
  --iv-ai-result-fg: var(--iv-ai-fg);
  --iv-ai-result-radius: 22px;
  --iv-motion-hover: var(--iv-duration-fast);
  --iv-motion-menu: var(--iv-duration-base);
  --iv-motion-sheet: var(--iv-duration-slow);
  --iv-motion-ease: var(--iv-easing-standard);
}

@media (prefers-reduced-motion: reduce) {
  :root { --iv-duration-fast: 0ms; --iv-duration-base: 0ms; --iv-duration-slow: 0ms; --iv-duration-stage: 0ms; }
}
