/* Generated by tokens_to_css.py — edit tokens.json, not this file. */

:root {
  /* primitives */
  --cv-color-ink-50: #F8F8FC;
  --cv-color-ink-100: #F0EFF7;
  --cv-color-ink-200: #DDDCE8;
  --cv-color-ink-300: #C5C2D5;
  --cv-color-ink-400: #9A96AF;
  --cv-color-ink-500: #726D86;
  --cv-color-ink-600: #504B61;
  --cv-color-ink-700: #373343;
  --cv-color-ink-800: #211F2D;
  --cv-color-ink-900: #15131E;
  --cv-color-ink-950: #0A0A16;
  --cv-color-teal-50: #ECFCF8;
  --cv-color-teal-100: #D4F7EF;
  --cv-color-teal-200: #A7EFDF;
  --cv-color-teal-300: #6BE0CC;
  --cv-color-teal-400: #39CEB5;
  --cv-color-teal-500: #14BEA8;
  --cv-color-teal-600: #0E9C8A;
  --cv-color-teal-700: #0A7A6B;
  --cv-color-teal-800: #095F54;
  --cv-color-teal-900: #064B43;
  --cv-color-violet-50: #F5F3FF;
  --cv-color-violet-100: #EDE9FE;
  --cv-color-violet-200: #DDD6FE;
  --cv-color-violet-300: #C4B5FD;
  --cv-color-violet-400: #A78BFA;
  --cv-color-violet-500: #8B5CF6;
  --cv-color-violet-600: #7C3AED;
  --cv-color-violet-700: #6D3EE0;
  --cv-color-violet-800: #5B21B6;
  --cv-color-violet-900: #4C1D95;
  --cv-color-magenta-300: #F0A6FB;
  --cv-color-magenta-500: #E879F9;
  --cv-color-magenta-700: #A21CAF;
  --cv-color-magenta-900: #700A79;
  --cv-color-success-light-bg: #D1FAE5;
  --cv-color-success-light-fg: #065F40;
  --cv-color-success-dark-bg: #06251A;
  --cv-color-success-dark-fg: #6FE7AD;
  --cv-color-warning-light-bg: #FEF3C7;
  --cv-color-warning-light-fg: #92400E;
  --cv-color-warning-dark-bg: #2D1704;
  --cv-color-warning-dark-fg: #FDD473;
  --cv-color-danger-light-bg: #FFE4E6;
  --cv-color-danger-light-fg: #9F1239;
  --cv-color-danger-action: #BE123C;
  --cv-color-danger-action-hover: #9F1239;
  --cv-color-danger-dark-bg: #320511;
  --cv-color-danger-dark-fg: #FDA5AE;
  --cv-color-info-light-bg: #DBEBFE;
  --cv-color-info-light-fg: #1E40AF;
  --cv-color-info-dark-bg: #111D3F;
  --cv-color-info-dark-fg: #93B4FD;
  --cv-color-white: #FFFFFF;
  --cv-font-display: "DM Serif Display", "Georgia", serif;
  --cv-font-body: "Inter", ui-sans-serif, system-ui, sans-serif;
  --cv-font-mono: "SFMono-Regular", "Consolas", monospace;
  --cv-text-xs: 0.75rem;
  --cv-text-sm: 0.875rem;
  --cv-text-base: 1rem;
  --cv-text-lg: 1.125rem;
  --cv-text-xl: 1.25rem;
  --cv-text-2xl: 1.5rem;
  --cv-text-3xl: 1.875rem;
  --cv-text-4xl: 2.25rem;
  --cv-text-5xl: 3rem;
  --cv-text-6xl: 4.25rem;
  --cv-space-1: 4px;
  --cv-space-2: 8px;
  --cv-space-3: 12px;
  --cv-space-4: 16px;
  --cv-space-5: 20px;
  --cv-space-6: 24px;
  --cv-space-8: 32px;
  --cv-space-10: 40px;
  --cv-space-12: 48px;
  --cv-space-16: 64px;
  --cv-space-20: 80px;
  --cv-space-24: 96px;
  --cv-radius-sm: 4px;
  --cv-radius-md: 8px;
  --cv-radius-lg: 12px;
  --cv-radius-xl: 20px;
  --cv-radius-full: 9999px;
  --cv-border-1: 1px;
  --cv-border-2: 2px;
  --cv-target-sm: 40px;
  --cv-target-md: 44px;
  --cv-target-lg: 52px;
  --cv-duration-fast: 120ms;
  --cv-duration-base: 200ms;
  --cv-duration-slow: 320ms;
  --cv-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --cv-ease-emphasized: cubic-bezier(0.3, 0, 0, 1);
  --cv-z-base: 0;
  --cv-z-dropdown: 1000;
  --cv-z-sticky: 1100;
  --cv-z-overlay: 1200;
  --cv-shadow-sm: 0px 2px 8px 0px rgb(10 10 22 / 0.08);
  --cv-shadow-md: 0px 8px 24px 0px rgb(10 10 22 / 0.14);
  --cv-shadow-lg: 0px 16px 40px 0px rgb(10 10 22 / 0.22);

  /* role tokens — default theme: dark */
  --cv-bg: var(--cv-color-ink-950);
  --cv-bg-raised: var(--cv-color-ink-900);
  --cv-bg-sunken: var(--cv-color-ink-800);
  --cv-fg: var(--cv-color-ink-50);
  --cv-fg-muted: var(--cv-color-ink-200);
  --cv-fg-subtle: var(--cv-color-ink-300);
  --cv-accent: var(--cv-color-teal-300);
  --cv-accent-hover: var(--cv-color-teal-200);
  --cv-accent-fg: var(--cv-color-ink-950);
  --cv-accent-hover-fg: var(--cv-color-ink-950);
  --cv-accent-text: var(--cv-color-teal-300);
  --cv-link: var(--cv-color-teal-300);
  --cv-border: var(--cv-color-ink-700);
  --cv-border-strong: var(--cv-color-ink-400);
  --cv-ring: var(--cv-color-teal-300);
  --cv-success-fg: var(--cv-color-success-dark-fg);
  --cv-success-bg: var(--cv-color-success-dark-bg);
  --cv-warning-fg: var(--cv-color-warning-dark-fg);
  --cv-warning-bg: var(--cv-color-warning-dark-bg);
  --cv-danger-fg: var(--cv-color-danger-dark-fg);
  --cv-danger-bg: var(--cv-color-danger-dark-bg);
  --cv-info-fg: var(--cv-color-info-dark-fg);
  --cv-info-bg: var(--cv-color-info-dark-bg);
  --cv-danger-action: var(--cv-color-danger-action);
  --cv-danger-action-hover: var(--cv-color-danger-action-hover);
  --cv-danger-action-fg: var(--cv-color-white);
  --cv-mind: var(--cv-color-violet-300);
  --cv-money: var(--cv-color-teal-300);
  --cv-momentum: var(--cv-color-magenta-300);
  --cv-callout-bg: var(--cv-color-violet-900);
  --cv-callout-fg: var(--cv-color-ink-50);
  --cv-callout-accent: var(--cv-color-violet-200);
}

@media (prefers-color-scheme: light) {
  :root:not([data-theme]) {
    --cv-bg: var(--cv-color-ink-50);
    --cv-bg-raised: var(--cv-color-white);
    --cv-bg-sunken: var(--cv-color-ink-100);
    --cv-fg: var(--cv-color-ink-900);
    --cv-fg-muted: var(--cv-color-ink-700);
    --cv-fg-subtle: var(--cv-color-ink-600);
    --cv-accent: var(--cv-color-teal-500);
    --cv-accent-hover: var(--cv-color-teal-600);
    --cv-accent-fg: var(--cv-color-ink-950);
    --cv-accent-hover-fg: var(--cv-color-ink-950);
    --cv-accent-text: var(--cv-color-teal-700);
    --cv-link: var(--cv-color-teal-700);
    --cv-border: var(--cv-color-ink-200);
    --cv-border-strong: var(--cv-color-ink-500);
    --cv-ring: var(--cv-color-teal-700);
    --cv-success-fg: var(--cv-color-success-light-fg);
    --cv-success-bg: var(--cv-color-success-light-bg);
    --cv-warning-fg: var(--cv-color-warning-light-fg);
    --cv-warning-bg: var(--cv-color-warning-light-bg);
    --cv-danger-fg: var(--cv-color-danger-light-fg);
    --cv-danger-bg: var(--cv-color-danger-light-bg);
    --cv-info-fg: var(--cv-color-info-light-fg);
    --cv-info-bg: var(--cv-color-info-light-bg);
    --cv-danger-action: var(--cv-color-danger-action);
    --cv-danger-action-hover: var(--cv-color-danger-action-hover);
    --cv-danger-action-fg: var(--cv-color-white);
    --cv-mind: var(--cv-color-violet-700);
    --cv-money: var(--cv-color-teal-700);
    --cv-momentum: var(--cv-color-magenta-700);
    --cv-callout-bg: var(--cv-color-violet-100);
    --cv-callout-fg: var(--cv-color-ink-900);
    --cv-callout-accent: var(--cv-color-violet-700);
  }
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme]) {
    --cv-bg: var(--cv-color-ink-950);
    --cv-bg-raised: var(--cv-color-ink-900);
    --cv-bg-sunken: var(--cv-color-ink-800);
    --cv-fg: var(--cv-color-ink-50);
    --cv-fg-muted: var(--cv-color-ink-200);
    --cv-fg-subtle: var(--cv-color-ink-300);
    --cv-accent: var(--cv-color-teal-300);
    --cv-accent-hover: var(--cv-color-teal-200);
    --cv-accent-fg: var(--cv-color-ink-950);
    --cv-accent-hover-fg: var(--cv-color-ink-950);
    --cv-accent-text: var(--cv-color-teal-300);
    --cv-link: var(--cv-color-teal-300);
    --cv-border: var(--cv-color-ink-700);
    --cv-border-strong: var(--cv-color-ink-400);
    --cv-ring: var(--cv-color-teal-300);
    --cv-success-fg: var(--cv-color-success-dark-fg);
    --cv-success-bg: var(--cv-color-success-dark-bg);
    --cv-warning-fg: var(--cv-color-warning-dark-fg);
    --cv-warning-bg: var(--cv-color-warning-dark-bg);
    --cv-danger-fg: var(--cv-color-danger-dark-fg);
    --cv-danger-bg: var(--cv-color-danger-dark-bg);
    --cv-info-fg: var(--cv-color-info-dark-fg);
    --cv-info-bg: var(--cv-color-info-dark-bg);
    --cv-danger-action: var(--cv-color-danger-action);
    --cv-danger-action-hover: var(--cv-color-danger-action-hover);
    --cv-danger-action-fg: var(--cv-color-white);
    --cv-mind: var(--cv-color-violet-300);
    --cv-money: var(--cv-color-teal-300);
    --cv-momentum: var(--cv-color-magenta-300);
    --cv-callout-bg: var(--cv-color-violet-900);
    --cv-callout-fg: var(--cv-color-ink-50);
    --cv-callout-accent: var(--cv-color-violet-200);
  }
}

[data-theme="light"], .surface-light {
  --cv-bg: var(--cv-color-ink-50);
  --cv-bg-raised: var(--cv-color-white);
  --cv-bg-sunken: var(--cv-color-ink-100);
  --cv-fg: var(--cv-color-ink-900);
  --cv-fg-muted: var(--cv-color-ink-700);
  --cv-fg-subtle: var(--cv-color-ink-600);
  --cv-accent: var(--cv-color-teal-500);
  --cv-accent-hover: var(--cv-color-teal-600);
  --cv-accent-fg: var(--cv-color-ink-950);
  --cv-accent-hover-fg: var(--cv-color-ink-950);
  --cv-accent-text: var(--cv-color-teal-700);
  --cv-link: var(--cv-color-teal-700);
  --cv-border: var(--cv-color-ink-200);
  --cv-border-strong: var(--cv-color-ink-500);
  --cv-ring: var(--cv-color-teal-700);
  --cv-success-fg: var(--cv-color-success-light-fg);
  --cv-success-bg: var(--cv-color-success-light-bg);
  --cv-warning-fg: var(--cv-color-warning-light-fg);
  --cv-warning-bg: var(--cv-color-warning-light-bg);
  --cv-danger-fg: var(--cv-color-danger-light-fg);
  --cv-danger-bg: var(--cv-color-danger-light-bg);
  --cv-info-fg: var(--cv-color-info-light-fg);
  --cv-info-bg: var(--cv-color-info-light-bg);
  --cv-danger-action: var(--cv-color-danger-action);
  --cv-danger-action-hover: var(--cv-color-danger-action-hover);
  --cv-danger-action-fg: var(--cv-color-white);
  --cv-mind: var(--cv-color-violet-700);
  --cv-money: var(--cv-color-teal-700);
  --cv-momentum: var(--cv-color-magenta-700);
  --cv-callout-bg: var(--cv-color-violet-100);
  --cv-callout-fg: var(--cv-color-ink-900);
  --cv-callout-accent: var(--cv-color-violet-700);
}

[data-theme="dark"], .surface-dark {
  --cv-bg: var(--cv-color-ink-950);
  --cv-bg-raised: var(--cv-color-ink-900);
  --cv-bg-sunken: var(--cv-color-ink-800);
  --cv-fg: var(--cv-color-ink-50);
  --cv-fg-muted: var(--cv-color-ink-200);
  --cv-fg-subtle: var(--cv-color-ink-300);
  --cv-accent: var(--cv-color-teal-300);
  --cv-accent-hover: var(--cv-color-teal-200);
  --cv-accent-fg: var(--cv-color-ink-950);
  --cv-accent-hover-fg: var(--cv-color-ink-950);
  --cv-accent-text: var(--cv-color-teal-300);
  --cv-link: var(--cv-color-teal-300);
  --cv-border: var(--cv-color-ink-700);
  --cv-border-strong: var(--cv-color-ink-400);
  --cv-ring: var(--cv-color-teal-300);
  --cv-success-fg: var(--cv-color-success-dark-fg);
  --cv-success-bg: var(--cv-color-success-dark-bg);
  --cv-warning-fg: var(--cv-color-warning-dark-fg);
  --cv-warning-bg: var(--cv-color-warning-dark-bg);
  --cv-danger-fg: var(--cv-color-danger-dark-fg);
  --cv-danger-bg: var(--cv-color-danger-dark-bg);
  --cv-info-fg: var(--cv-color-info-dark-fg);
  --cv-info-bg: var(--cv-color-info-dark-bg);
  --cv-danger-action: var(--cv-color-danger-action);
  --cv-danger-action-hover: var(--cv-color-danger-action-hover);
  --cv-danger-action-fg: var(--cv-color-white);
  --cv-mind: var(--cv-color-violet-300);
  --cv-money: var(--cv-color-teal-300);
  --cv-momentum: var(--cv-color-magenta-300);
  --cv-callout-bg: var(--cv-color-violet-900);
  --cv-callout-fg: var(--cv-color-ink-50);
  --cv-callout-accent: var(--cv-color-violet-200);
}
