/* generated by no-slop-design build_tokens.py — do not edit by hand */
:root {
  --border-width-hairline: 1.5px;
  --border-width-strong: 3px;
  --breakpoint-max: 1440px;
  --breakpoint-narrow: 600px;
  --breakpoint-regular: 905px;
  --breakpoint-wide: 1240px;
  --button-primary-bg: oklch(0.27 0.055 96);
  --button-primary-bg-hover: oklch(0.38 0.08 96);
  --button-primary-bg-pressed: oklch(0.2 0.014 96);
  --button-primary-fg: oklch(0.9 0.175 96);
  --button-secondary-bg: oklch(0.94 0.009 96);
  --button-secondary-bg-hover: oklch(0.91 0.01 96);
  --button-secondary-border: oklch(0.62 0.012 96);
  --button-secondary-fg: oklch(0.2 0.014 96);
  --color-action-destructive: oklch(0.58 0.20 25);
  --color-action-destructive-hover: oklch(0.42 0.17 25);
  --color-action-primary: oklch(0.27 0.055 96);
  --color-action-primary-hover: oklch(0.38 0.08 96);
  --color-action-primary-pressed: oklch(0.2 0.014 96);
  --color-action-secondary: oklch(0.94 0.009 96);
  --color-action-secondary-hover: oklch(0.91 0.01 96);
  --color-action-secondary-pressed: oklch(0.88 0.011 96);
  --color-black: #000000;
  --color-border-focus: oklch(0.27 0.055 96);
  --color-border-strong: oklch(0.62 0.012 96);
  --color-border-subtle: oklch(0.83 0.012 96);
  --color-brand-1: oklch(0.985 0.03 96);
  --color-brand-10: oklch(0.48 0.1 96);
  --color-brand-11: oklch(0.38 0.08 96);
  --color-brand-12: oklch(0.27 0.055 96);
  --color-brand-2: oklch(0.97 0.06 96);
  --color-brand-3: oklch(0.95 0.1 96);
  --color-brand-4: oklch(0.93 0.14 96);
  --color-brand-5: oklch(0.9 0.175 96);
  --color-brand-6: oklch(0.86 0.17 96);
  --color-brand-7: oklch(0.78 0.16 96);
  --color-brand-8: oklch(0.68 0.14 96);
  --color-brand-9: oklch(0.58 0.12 96);
  --color-danger-11: oklch(0.42 0.17 25);
  --color-danger-3: oklch(0.94 0.04 25);
  --color-danger-9: oklch(0.58 0.20 25);
  --color-focus: oklch(0.27 0.055 96);
  --color-info-11: oklch(0.42 0.12 245);
  --color-info-3: oklch(0.94 0.03 245);
  --color-info-9: oklch(0.58 0.14 245);
  --color-mark-fill: oklch(0.9 0.175 96);
  --color-mark-text: oklch(0.2 0.014 96);
  --color-neutral-dark-1: oklch(0.17 0.008 96);
  --color-neutral-dark-10: oklch(0.7 0.01 96);
  --color-neutral-dark-11: oklch(0.8 0.009 96);
  --color-neutral-dark-12: oklch(0.94 0.008 96);
  --color-neutral-dark-2: oklch(0.2 0.01 96);
  --color-neutral-dark-3: oklch(0.235 0.011 96);
  --color-neutral-dark-4: oklch(0.27 0.011 96);
  --color-neutral-dark-5: oklch(0.3 0.011 96);
  --color-neutral-dark-6: oklch(0.35 0.011 96);
  --color-neutral-dark-7: oklch(0.42 0.011 96);
  --color-neutral-dark-8: oklch(0.52 0.011 96);
  --color-neutral-dark-9: oklch(0.63 0.011 96);
  --color-neutral-1: oklch(0.985 0.006 96);
  --color-neutral-10: oklch(0.47 0.012 96);
  --color-neutral-11: oklch(0.42 0.012 96);
  --color-neutral-12: oklch(0.2 0.014 96);
  --color-neutral-2: oklch(0.965 0.008 96);
  --color-neutral-3: oklch(0.94 0.009 96);
  --color-neutral-4: oklch(0.91 0.01 96);
  --color-neutral-5: oklch(0.88 0.011 96);
  --color-neutral-6: oklch(0.83 0.012 96);
  --color-neutral-7: oklch(0.76 0.012 96);
  --color-neutral-8: oklch(0.62 0.012 96);
  --color-neutral-9: oklch(0.53 0.012 96);
  --color-scrim: oklch(0.2 0.014 96 / 0.5);
  --color-selection: oklch(0.9 0.175 96);
  --color-skeleton: oklch(0.91 0.01 96);
  --color-status-danger-fill: oklch(0.58 0.20 25);
  --color-status-danger-surface: oklch(0.94 0.04 25);
  --color-status-danger-text: oklch(0.42 0.17 25);
  --color-status-info-fill: oklch(0.58 0.14 245);
  --color-status-info-surface: oklch(0.94 0.03 245);
  --color-status-info-text: oklch(0.42 0.12 245);
  --color-status-success-fill: oklch(0.58 0.15 150);
  --color-status-success-surface: oklch(0.93 0.06 150);
  --color-status-success-text: oklch(0.4 0.11 150);
  --color-status-warning-fill: oklch(0.75 0.15 80);
  --color-status-warning-surface: oklch(0.95 0.06 80);
  --color-status-warning-text: oklch(0.45 0.12 80);
  --color-success-11: oklch(0.4 0.11 150);
  --color-success-3: oklch(0.93 0.06 150);
  --color-success-9: oklch(0.58 0.15 150);
  --color-surface-base: oklch(0.985 0.006 96); /* page background */
  --color-surface-inverse: oklch(0.2 0.014 96);
  --color-surface-overlay: oklch(0.985 0.006 96); /* menus, popovers, dialogs */
  --color-surface-raised: oklch(0.985 0.006 96); /* panels, interactive cards, sheets */
  --color-surface-sunken: oklch(0.965 0.008 96); /* wells, inputs on raised */
  --color-text-disabled: oklch(0.62 0.012 96);
  --color-text-link: oklch(0.27 0.055 96);
  --color-text-link-visited: oklch(0.42 0.012 96);
  --color-text-on-action: oklch(0.9 0.175 96);
  --color-text-on-destructive: #ffffff; /* Text on destructive fills; kept separate from on-action so dark mode can invert one without the other. */
  --color-text-on-inverse: oklch(0.985 0.006 96);
  --color-text-primary: oklch(0.2 0.014 96);
  --color-text-secondary: oklch(0.42 0.012 96);
  --color-text-tertiary: oklch(0.47 0.012 96); /* metadata; verify ≥ 4.5:1 on surface.base */
  --color-warning-11: oklch(0.45 0.12 80);
  --color-warning-3: oklch(0.95 0.06 80);
  --color-warning-9: oklch(0.75 0.15 80);
  --color-white: #ffffff;
  --duration-base: 220ms;
  --duration-fast: 140ms;
  --duration-instant: 90ms;
  --duration-slow: 360ms;
  --duration-slower: 620ms;
  --ease-accelerate: cubic-bezier(0.3, 0, 1, 1);
  --ease-decelerate: cubic-bezier(0, 0, 0, 1);
  --ease-emphasized: cubic-bezier(0.7, 0, 0.2, 1);
  --ease-standard: cubic-bezier(0.25, 0, 0, 1);
  --font-family-display: Archivo, "Arial Narrow", sans-serif;
  --font-family-mono: "IBM Plex Mono", ui-monospace, monospace;
  --font-family-text: Archivo, system-ui, sans-serif;
  --font-weight-bold: 700;
  --font-weight-medium: 500;
  --font-weight-regular: 400;
  --font-weight-semibold: 600;
  --input-bg: oklch(0.985 0.006 96);
  --input-border: oklch(0.62 0.012 96);
  --input-border-error: oklch(0.58 0.20 25);
  --input-border-focus: oklch(0.27 0.055 96);
  --input-placeholder: oklch(0.47 0.012 96);
  --opacity-disabled: 0.4;
  --opacity-overlay: 0.6;
  --opacity-skeleton: 0.12;
  --radius-0: 0px;
  --radius-1: 2px;
  --radius-2: 3px;
  --radius-3: 4px;
  --radius-4: 6px;
  --radius-5: 8px;
  --radius-6: 10px;
  --radius-7: 14px;
  --radius-card: 4px;
  --radius-control: 3px;
  --radius-full: 9999px;
  --radius-pill: 9999px;
  --radius-sheet: 8px;
  --shadow-modal: 0px 24px 64px -8px oklch(0.3 0.02 96 / 0.24);
  --shadow-overlay: 0px 4px 8px -2px oklch(0.3 0.02 96 / 0.08), 0px 16px 32px -4px oklch(0.3 0.02 96 / 0.14);
  --shadow-raised: 0px 1px 2px 0px oklch(0.3 0.02 96 / 0.06), 0px 4px 12px -2px oklch(0.3 0.02 96 / 0.08);
  --size-content-max: 1320px;
  --size-control-lg: 52px;
  --size-control-md: 44px;
  --size-control-sm: 36px;
  --size-icon-lg: 24px;
  --size-icon-md: 20px;
  --size-icon-sm: 16px;
  --size-measure-max: 62ch;
  --size-target-min: 44px;
  --space-0: 0px;
  --space-1: 3px;
  --space-10: 60px;
  --space-11: 72px;
  --space-12: 96px;
  --space-13: 120px;
  --space-14: 144px;
  --space-15: 192px;
  --space-2: 6px;
  --space-3: 9px;
  --space-4: 12px;
  --space-5: 18px;
  --space-6: 24px;
  --space-7: 30px;
  --space-8: 36px;
  --space-9: 48px;
  --space-gutter: 36px;
  --space-inline-lg: 24px;
  --space-inline-md: 18px;
  --space-inline-sm: 12px;
  --space-inline-xs: 6px;
  --space-inset-lg: 36px;
  --space-inset-md: 24px;
  --space-inset-sm: 12px;
  --space-inset-xl: 48px;
  --space-inset-xs: 6px;
  --space-margin-page: clamp(1rem, 0.5rem + 2.5vw, 3rem);
  --space-stack-lg: 36px;
  --space-stack-md: 24px;
  --space-stack-section: clamp(3rem, 2rem + 4vw, 6rem);
  --space-stack-sm: 12px;
  --space-stack-xl: 60px;
  --space-stack-xs: 6px;
  --typography-body-family: Archivo, system-ui, sans-serif;
  --typography-body-size: clamp(1.0625rem, 1rem + 0.2vw, 1.1875rem);
  --typography-body-weight: 400;
  --typography-body-lh: 1.58;
  --typography-body-tracking: 0;
  --typography-body-lg-family: Archivo, system-ui, sans-serif;
  --typography-body-lg-size: clamp(1.125rem, 1.08rem + 0.2vw, 1.25rem);
  --typography-body-lg-weight: 400;
  --typography-body-lg-lh: 1.6;
  --typography-body-lg-tracking: 0;
  --typography-body-sm-family: Archivo, system-ui, sans-serif;
  --typography-body-sm-size: 0.875rem;
  --typography-body-sm-weight: 400;
  --typography-body-sm-lh: 1.5;
  --typography-body-sm-tracking: 0;
  --typography-caption-family: Archivo, system-ui, sans-serif;
  --typography-caption-size: 0.75rem;
  --typography-caption-weight: 400;
  --typography-caption-lh: 1.35;
  --typography-caption-tracking: 0.01em;
  --typography-code-family: "IBM Plex Mono", ui-monospace, monospace;
  --typography-code-size: 0.9375rem;
  --typography-code-weight: 400;
  --typography-code-lh: 1.6;
  --typography-code-tracking: 0;
  --typography-display-family: Archivo, "Arial Narrow", sans-serif;
  --typography-display-size: clamp(3.4rem, 1.2rem + 7.6vw, 8.6rem);
  --typography-display-weight: 800;
  --typography-display-lh: 0.92;
  --typography-display-tracking: -0.035em;
  --typography-h1-family: Archivo, "Arial Narrow", sans-serif;
  --typography-h1-size: clamp(2.4rem, 1.6rem + 3.4vw, 4.6rem);
  --typography-h1-weight: 800;
  --typography-h1-lh: 0.98;
  --typography-h1-tracking: -0.03em;
  --typography-h2-family: Archivo, "Arial Narrow", sans-serif;
  --typography-h2-size: clamp(1.8rem, 1.4rem + 1.6vw, 2.8rem);
  --typography-h2-weight: 750;
  --typography-h2-lh: 1.05;
  --typography-h2-tracking: -0.02em;
  --typography-h3-family: Archivo, system-ui, sans-serif;
  --typography-h3-size: clamp(1.3rem, 1.2rem + 0.4vw, 1.55rem);
  --typography-h3-weight: 650;
  --typography-h3-lh: 1.2;
  --typography-h3-tracking: -0.01em;
  --typography-h4-family: Archivo, system-ui, sans-serif;
  --typography-h4-size: clamp(1.2rem, 1.128rem + 0.3587vw, 1.406rem);
  --typography-h4-weight: 500;
  --typography-h4-lh: 1.4;
  --typography-h4-tracking: 0;
  --typography-label-family: Archivo, system-ui, sans-serif;
  --typography-label-size: 0.875rem;
  --typography-label-weight: 500;
  --typography-label-lh: 1.3;
  --typography-label-tracking: 0;
  --z-base: 0;
  --z-modal: 1100;
  --z-overlay: 1000;
  --z-raised: 10;
  --z-sticky: 100;
  --z-toast: 1200;
}

[data-theme="dark"] {
  --button-primary-bg: oklch(0.9 0.175 96);
  --button-primary-bg-hover: oklch(0.93 0.14 96);
  --button-primary-bg-pressed: oklch(0.86 0.17 96);
  --button-primary-fg: oklch(0.17 0.008 96);
  --button-secondary-bg: oklch(0.235 0.011 96);
  --button-secondary-bg-hover: oklch(0.27 0.011 96);
  --button-secondary-border: oklch(0.52 0.011 96);
  --button-secondary-fg: oklch(0.94 0.008 96);
  --color-action-primary: oklch(0.9 0.175 96);
  --color-action-primary-hover: oklch(0.93 0.14 96);
  --color-action-primary-pressed: oklch(0.86 0.17 96); /* In dark mode pressed goes lighter, toward the light source. */
  --color-action-secondary: oklch(0.235 0.011 96);
  --color-action-secondary-hover: oklch(0.27 0.011 96);
  --color-action-secondary-pressed: oklch(0.3 0.011 96);
  --color-border-focus: oklch(0.9 0.175 96);
  --color-border-strong: oklch(0.52 0.011 96);
  --color-border-subtle: oklch(0.35 0.011 96);
  --color-focus: oklch(0.9 0.175 96);
  --color-mark-fill: oklch(0.86 0.17 96);
  --color-mark-text: oklch(0.17 0.008 96);
  --color-scrim: oklch(0.05 0.006 96 / 0.6);
  --color-selection: oklch(0.38 0.08 96);
  --color-skeleton: oklch(0.27 0.011 96);
  --color-surface-base: oklch(0.17 0.008 96); /* page background */
  --color-surface-inverse: oklch(0.94 0.008 96);
  --color-surface-overlay: oklch(0.235 0.011 96); /* menus, popovers, dialogs */
  --color-surface-raised: oklch(0.2 0.01 96); /* panels, interactive cards, sheets */
  --color-surface-sunken: oklch(0.17 0.008 96); /* wells, inputs on raised */
  --color-text-disabled: oklch(0.52 0.011 96);
  --color-text-link: oklch(0.9 0.175 96);
  --color-text-link-visited: oklch(0.78 0.16 96);
  --color-text-on-action: oklch(0.17 0.008 96); /* Dark text on the lighter dark-mode brand fill; white would fail 4.5:1 on brand.8. */
  --color-text-on-inverse: oklch(0.17 0.008 96);
  --color-text-primary: oklch(0.94 0.008 96);
  --color-text-secondary: oklch(0.8 0.009 96);
  --color-text-tertiary: oklch(0.7 0.01 96); /* metadata; verify ≥ 4.5:1 on surface.base */
  --input-bg: oklch(0.2 0.01 96);
  --input-border: oklch(0.52 0.011 96);
  --input-border-focus: oklch(0.9 0.175 96);
  --input-placeholder: oklch(0.7 0.01 96);
  --shadow-modal: 0px 24px 64px -8px oklch(0 0 0 / 0.6);
  --shadow-overlay: 0px 8px 24px -4px oklch(0 0 0 / 0.5);
  --shadow-raised: 0px 1px 2px 0px oklch(0 0 0 / 0.4);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --button-primary-bg: oklch(0.9 0.175 96);
    --button-primary-bg-hover: oklch(0.93 0.14 96);
    --button-primary-bg-pressed: oklch(0.86 0.17 96);
    --button-primary-fg: oklch(0.17 0.008 96);
    --button-secondary-bg: oklch(0.235 0.011 96);
    --button-secondary-bg-hover: oklch(0.27 0.011 96);
    --button-secondary-border: oklch(0.52 0.011 96);
    --button-secondary-fg: oklch(0.94 0.008 96);
    --color-action-primary: oklch(0.9 0.175 96);
    --color-action-primary-hover: oklch(0.93 0.14 96);
    --color-action-primary-pressed: oklch(0.86 0.17 96); /* In dark mode pressed goes lighter, toward the light source. */
    --color-action-secondary: oklch(0.235 0.011 96);
    --color-action-secondary-hover: oklch(0.27 0.011 96);
    --color-action-secondary-pressed: oklch(0.3 0.011 96);
    --color-border-focus: oklch(0.9 0.175 96);
    --color-border-strong: oklch(0.52 0.011 96);
    --color-border-subtle: oklch(0.35 0.011 96);
    --color-focus: oklch(0.9 0.175 96);
    --color-mark-fill: oklch(0.86 0.17 96);
    --color-mark-text: oklch(0.17 0.008 96);
    --color-scrim: oklch(0.05 0.006 96 / 0.6);
    --color-selection: oklch(0.38 0.08 96);
    --color-skeleton: oklch(0.27 0.011 96);
    --color-surface-base: oklch(0.17 0.008 96); /* page background */
    --color-surface-inverse: oklch(0.94 0.008 96);
    --color-surface-overlay: oklch(0.235 0.011 96); /* menus, popovers, dialogs */
    --color-surface-raised: oklch(0.2 0.01 96); /* panels, interactive cards, sheets */
    --color-surface-sunken: oklch(0.17 0.008 96); /* wells, inputs on raised */
    --color-text-disabled: oklch(0.52 0.011 96);
    --color-text-link: oklch(0.9 0.175 96);
    --color-text-link-visited: oklch(0.78 0.16 96);
    --color-text-on-action: oklch(0.17 0.008 96); /* Dark text on the lighter dark-mode brand fill; white would fail 4.5:1 on brand.8. */
    --color-text-on-inverse: oklch(0.17 0.008 96);
    --color-text-primary: oklch(0.94 0.008 96);
    --color-text-secondary: oklch(0.8 0.009 96);
    --color-text-tertiary: oklch(0.7 0.01 96); /* metadata; verify ≥ 4.5:1 on surface.base */
    --input-bg: oklch(0.2 0.01 96);
    --input-border: oklch(0.52 0.011 96);
    --input-border-focus: oklch(0.9 0.175 96);
    --input-placeholder: oklch(0.7 0.01 96);
    --shadow-modal: 0px 24px 64px -8px oklch(0 0 0 / 0.6);
    --shadow-overlay: 0px 8px 24px -4px oklch(0 0 0 / 0.5);
    --shadow-raised: 0px 1px 2px 0px oklch(0 0 0 / 0.4);
  }
}
