/* Generated from app/lib/core/theme by web/tool/tokens/extract.mjs — do not edit.
   Run `npm run tokens` after changing the Dart source. */

:root {
  color-scheme: light dark;

  --cadence-color-canvas: #fbfaf8;
  --cadence-color-surface: #ffffff;
  --cadence-color-surface-high: #f2f0ec;
  --cadence-color-surface-highest: #e7e4de;
  --cadence-color-outline: #e1ddd6;
  --cadence-color-outline-soft: #efece7;
  --cadence-color-text-primary: #16161a;
  --cadence-color-text-secondary: #5d5d66;
  --cadence-color-text-tertiary: #8e8e98;
  --cadence-color-accent: #d63e16;
  --cadence-color-on-accent: #ffffff;
  --cadence-color-success: #1f9d62;
  --cadence-color-warning: #b07908;
  --cadence-color-danger: #d32f4c;
  --cadence-color-scrim: #00000066;

  --cadence-space-xxs: 2px;
  --cadence-space-xs: 4px;
  --cadence-space-sm: 8px;
  --cadence-space-md: 12px;
  --cadence-space-lg: 16px;
  --cadence-space-xl: 20px;
  --cadence-space-xxl: 24px;
  --cadence-space-x3l: 32px;
  --cadence-space-x4l: 40px;
  --cadence-space-x5l: 56px;

  --cadence-radius-xs: 6px;
  --cadence-radius-sm: 10px;
  --cadence-radius-md: 14px;
  --cadence-radius-lg: 20px;
  --cadence-radius-xl: 28px;
  --cadence-radius-pill: 999px;

  --cadence-touch-min: 44px;
  --cadence-touch-comfortable: 48px;
  --cadence-touch-car: 72px;

  --cadence-motion-instant: 90ms;
  --cadence-motion-fast: 160ms;
  --cadence-motion-normal: 240ms;
  --cadence-motion-slow: 340ms;
  --cadence-motion-screen: 420ms;

  --cadence-ease-enter: cubic-bezier(0.16, 1, 0.3, 1);
  --cadence-ease-exit: cubic-bezier(0.4, 0, 1, 1);
  --cadence-ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);

  --cadence-font-display: 'Manrope', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --cadence-font-body: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;

  --cadence-type-display-large-family: var(--cadence-font-display);
  --cadence-type-display-large-size: 40px;
  --cadence-type-display-large-weight: 800;
  --cadence-type-display-large-height: 1.05;
  --cadence-type-display-large-tracking: -1.2px;
  --cadence-type-display-medium-family: var(--cadence-font-display);
  --cadence-type-display-medium-size: 32px;
  --cadence-type-display-medium-weight: 800;
  --cadence-type-display-medium-height: 1.08;
  --cadence-type-display-medium-tracking: -0.9px;
  --cadence-type-display-small-family: var(--cadence-font-display);
  --cadence-type-display-small-size: 26px;
  --cadence-type-display-small-weight: 700;
  --cadence-type-display-small-height: 1.15;
  --cadence-type-display-small-tracking: -0.6px;
  --cadence-type-title-large-family: var(--cadence-font-display);
  --cadence-type-title-large-size: 22px;
  --cadence-type-title-large-weight: 700;
  --cadence-type-title-large-height: 1.2;
  --cadence-type-title-large-tracking: -0.4px;
  --cadence-type-title-medium-family: var(--cadence-font-display);
  --cadence-type-title-medium-size: 18px;
  --cadence-type-title-medium-weight: 700;
  --cadence-type-title-medium-height: 1.25;
  --cadence-type-title-medium-tracking: -0.3px;
  --cadence-type-title-small-family: var(--cadence-font-display);
  --cadence-type-title-small-size: 15px;
  --cadence-type-title-small-weight: 700;
  --cadence-type-title-small-height: 1.3;
  --cadence-type-title-small-tracking: -0.1px;
  --cadence-type-body-large-family: var(--cadence-font-body);
  --cadence-type-body-large-size: 16px;
  --cadence-type-body-large-weight: 500;
  --cadence-type-body-large-height: 1.4;
  --cadence-type-body-large-tracking: 0px;
  --cadence-type-body-medium-family: var(--cadence-font-body);
  --cadence-type-body-medium-size: 14px;
  --cadence-type-body-medium-weight: 500;
  --cadence-type-body-medium-height: 1.45;
  --cadence-type-body-medium-tracking: 0px;
  --cadence-type-body-small-family: var(--cadence-font-body);
  --cadence-type-body-small-size: 13px;
  --cadence-type-body-small-weight: 500;
  --cadence-type-body-small-height: 1.4;
  --cadence-type-body-small-tracking: 0px;
  --cadence-type-label-large-family: var(--cadence-font-body);
  --cadence-type-label-large-size: 15px;
  --cadence-type-label-large-weight: 600;
  --cadence-type-label-large-height: 1.2;
  --cadence-type-label-large-tracking: -0.1px;
  --cadence-type-label-medium-family: var(--cadence-font-body);
  --cadence-type-label-medium-size: 13px;
  --cadence-type-label-medium-weight: 600;
  --cadence-type-label-medium-height: 1.2;
  --cadence-type-label-medium-tracking: 0px;
  --cadence-type-label-small-family: var(--cadence-font-body);
  --cadence-type-label-small-size: 11px;
  --cadence-type-label-small-weight: 600;
  --cadence-type-label-small-height: 1.2;
  --cadence-type-label-small-tracking: 0.4px;
  --cadence-type-overline-family: var(--cadence-font-body);
  --cadence-type-overline-size: 11px;
  --cadence-type-overline-weight: 700;
  --cadence-type-overline-height: 1.2;
  --cadence-type-overline-tracking: 1.1px;
  --cadence-type-mono-family: var(--cadence-font-body);
  --cadence-type-mono-size: 12px;
  --cadence-type-mono-weight: 600;
  --cadence-type-mono-height: 1.2;
  --cadence-type-mono-tracking: 0px;
}

@font-face {
  font-family: 'Manrope';
  src: url('/fonts/Manrope.ttf') format('truetype-variations');
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url('/fonts/Inter.ttf') format('truetype-variations');
  font-weight: 100 900;
  font-display: swap;
}

.cadence-type-display-large {
  font-family: var(--cadence-type-display-large-family);
  font-size: var(--cadence-type-display-large-size);
  font-weight: var(--cadence-type-display-large-weight);
  line-height: var(--cadence-type-display-large-height);
  letter-spacing: var(--cadence-type-display-large-tracking);
}

.cadence-type-display-medium {
  font-family: var(--cadence-type-display-medium-family);
  font-size: var(--cadence-type-display-medium-size);
  font-weight: var(--cadence-type-display-medium-weight);
  line-height: var(--cadence-type-display-medium-height);
  letter-spacing: var(--cadence-type-display-medium-tracking);
}

.cadence-type-display-small {
  font-family: var(--cadence-type-display-small-family);
  font-size: var(--cadence-type-display-small-size);
  font-weight: var(--cadence-type-display-small-weight);
  line-height: var(--cadence-type-display-small-height);
  letter-spacing: var(--cadence-type-display-small-tracking);
}

.cadence-type-title-large {
  font-family: var(--cadence-type-title-large-family);
  font-size: var(--cadence-type-title-large-size);
  font-weight: var(--cadence-type-title-large-weight);
  line-height: var(--cadence-type-title-large-height);
  letter-spacing: var(--cadence-type-title-large-tracking);
}

.cadence-type-title-medium {
  font-family: var(--cadence-type-title-medium-family);
  font-size: var(--cadence-type-title-medium-size);
  font-weight: var(--cadence-type-title-medium-weight);
  line-height: var(--cadence-type-title-medium-height);
  letter-spacing: var(--cadence-type-title-medium-tracking);
}

.cadence-type-title-small {
  font-family: var(--cadence-type-title-small-family);
  font-size: var(--cadence-type-title-small-size);
  font-weight: var(--cadence-type-title-small-weight);
  line-height: var(--cadence-type-title-small-height);
  letter-spacing: var(--cadence-type-title-small-tracking);
}

.cadence-type-body-large {
  font-family: var(--cadence-type-body-large-family);
  font-size: var(--cadence-type-body-large-size);
  font-weight: var(--cadence-type-body-large-weight);
  line-height: var(--cadence-type-body-large-height);
  letter-spacing: var(--cadence-type-body-large-tracking);
}

.cadence-type-body-medium {
  font-family: var(--cadence-type-body-medium-family);
  font-size: var(--cadence-type-body-medium-size);
  font-weight: var(--cadence-type-body-medium-weight);
  line-height: var(--cadence-type-body-medium-height);
  letter-spacing: var(--cadence-type-body-medium-tracking);
}

.cadence-type-body-small {
  font-family: var(--cadence-type-body-small-family);
  font-size: var(--cadence-type-body-small-size);
  font-weight: var(--cadence-type-body-small-weight);
  line-height: var(--cadence-type-body-small-height);
  letter-spacing: var(--cadence-type-body-small-tracking);
}

.cadence-type-label-large {
  font-family: var(--cadence-type-label-large-family);
  font-size: var(--cadence-type-label-large-size);
  font-weight: var(--cadence-type-label-large-weight);
  line-height: var(--cadence-type-label-large-height);
  letter-spacing: var(--cadence-type-label-large-tracking);
}

.cadence-type-label-medium {
  font-family: var(--cadence-type-label-medium-family);
  font-size: var(--cadence-type-label-medium-size);
  font-weight: var(--cadence-type-label-medium-weight);
  line-height: var(--cadence-type-label-medium-height);
  letter-spacing: var(--cadence-type-label-medium-tracking);
}

.cadence-type-label-small {
  font-family: var(--cadence-type-label-small-family);
  font-size: var(--cadence-type-label-small-size);
  font-weight: var(--cadence-type-label-small-weight);
  line-height: var(--cadence-type-label-small-height);
  letter-spacing: var(--cadence-type-label-small-tracking);
}

.cadence-type-overline {
  font-family: var(--cadence-type-overline-family);
  font-size: var(--cadence-type-overline-size);
  font-weight: var(--cadence-type-overline-weight);
  line-height: var(--cadence-type-overline-height);
  letter-spacing: var(--cadence-type-overline-tracking);
}

.cadence-type-mono {
  font-family: var(--cadence-type-mono-family);
  font-size: var(--cadence-type-mono-size);
  font-weight: var(--cadence-type-mono-weight);
  line-height: var(--cadence-type-mono-height);
  letter-spacing: var(--cadence-type-mono-tracking);
  font-variant-numeric: tabular-nums;
}

/* Dark is the palette this app was designed in; light is the second palette,
   not a second design. The default (no data-theme) follows the system, and an
   explicit choice wins in both directions. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
    --cadence-color-canvas: #08080a;
    --cadence-color-surface: #121216;
    --cadence-color-surface-high: #1c1c22;
    --cadence-color-surface-highest: #26262e;
    --cadence-color-outline: #2b2b34;
    --cadence-color-outline-soft: #1b1b21;
    --cadence-color-text-primary: #f7f6f4;
    --cadence-color-text-secondary: #9c9ca6;
    --cadence-color-text-tertiary: #63636d;
    --cadence-color-accent: #ff5c39;
    --cadence-color-on-accent: #1a0a05;
    --cadence-color-success: #4ed598;
    --cadence-color-warning: #f0b429;
    --cadence-color-danger: #ff5470;
    --cadence-color-scrim: #000000cc;
  }
}

:root[data-theme='dark'] {
  --cadence-color-canvas: #08080a;
  --cadence-color-surface: #121216;
  --cadence-color-surface-high: #1c1c22;
  --cadence-color-surface-highest: #26262e;
  --cadence-color-outline: #2b2b34;
  --cadence-color-outline-soft: #1b1b21;
  --cadence-color-text-primary: #f7f6f4;
  --cadence-color-text-secondary: #9c9ca6;
  --cadence-color-text-tertiary: #63636d;
  --cadence-color-accent: #ff5c39;
  --cadence-color-on-accent: #1a0a05;
  --cadence-color-success: #4ed598;
  --cadence-color-warning: #f0b429;
  --cadence-color-danger: #ff5470;
  --cadence-color-scrim: #000000cc;
}

:root[data-theme='light'] {
  --cadence-color-canvas: #fbfaf8;
  --cadence-color-surface: #ffffff;
  --cadence-color-surface-high: #f2f0ec;
  --cadence-color-surface-highest: #e7e4de;
  --cadence-color-outline: #e1ddd6;
  --cadence-color-outline-soft: #efece7;
  --cadence-color-text-primary: #16161a;
  --cadence-color-text-secondary: #5d5d66;
  --cadence-color-text-tertiary: #8e8e98;
  --cadence-color-accent: #d63e16;
  --cadence-color-on-accent: #ffffff;
  --cadence-color-success: #1f9d62;
  --cadence-color-warning: #b07908;
  --cadence-color-danger: #d32f4c;
  --cadence-color-scrim: #00000066;
}
