/* GENERATED by apps/web/scripts/build-tokens.mjs. Do not edit.
   Source of truth: packages/tokens, the same file the app renders from. */

:root {
  --w-bg: #FFFFFF;
  --w-bg-raised: #F1F3F2;
  --w-bg-sunken: #E7EAE8;
  --w-text: #0B0F0D;
  --w-text-secondary: #5C645F;
  --w-text-tertiary: #666E6A;
  --w-border: #DCE0DE;
  --w-border-strong: rgba(11, 15, 13, 0.28);
  --w-accent: #14603F;
  --w-on-accent: #FFFFFF;
  --w-accent-pressed: #0E4A30;
  --w-action-bg: #0B0F0D;
  --w-action-text: #FFFFFF;
  --w-well-heavy: #C0392E;
  --w-well-low: #C86F22;
  --w-well-okay: #A8811A;
  --w-well-good: #568F4A;
  --w-well-great: #14603F;
  color-scheme: light;

  /* Space, 4pt base. The app's scale verbatim. */
  --w-space-xs: 4px;
  --w-space-sm: 8px;
  --w-space-md: 12px;
  --w-space-lg: 16px;
  --w-space-xl: 24px;
  --w-space-2xl: 32px;
  --w-space-3xl: 44px;
  --w-space-4xl: 64px;

  /* Shape lock: actions and chips are pills, cards 20, wells 16, sheets 28. */
  --w-radius-input: 16px;
  --w-radius-card: 20px;
  --w-radius-sheet: 28px;
  --w-radius-pill: 100px;

  /* Motion. One curve, one rhythm. Nothing bounces. */
  --w-duration-tap: 180ms;
  --w-duration-transition: 320ms;
  --w-duration-settle: 480ms;
  --w-duration-reveal: 900ms;
  --w-ease-standard: cubic-bezier(0.23, 1, 0.32, 1);
  --w-ease-loop: cubic-bezier(0.37, 0, 0.63, 1);

  /* Type. Families and tracking are the app's; sizes fluid, see below. */
  --w-font-serif: 'InstrumentSerif', Iowan Old Style, Palatino, Georgia, serif;
  --w-font-sans: 'PlusJakartaSans', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --w-font-mono: 'JetBrainsMono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --w-track-display: -0.5px;
  --w-track-title: -0.2px;
  --w-track-label: 1.6px;

  /* Page rhythm. screenPadding is the app's 24 at the small end. */
  --w-gutter: clamp(20px, 5vw, 48px);
  --w-measure: 34rem;
  --w-page: 1120px;
  --w-tap: 44px;
}

/* Dark is not light with the colours flipped: near-black surfaces and
   deliberately restrained contrast, because Welle is opened at 5am. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
  --w-bg: #080A09;
  --w-bg-raised: #151918;
  --w-bg-sunken: #0E1211;
  --w-text: #F2F5F3;
  --w-text-secondary: #B4BDB8;
  --w-text-tertiary: #8A938E;
  --w-border: #272D2B;
  --w-border-strong: rgba(242, 245, 243, 0.34);
  --w-accent: #4FB98C;
  --w-on-accent: #080A09;
  --w-accent-pressed: #3E9C75;
  --w-action-bg: #F2F5F3;
  --w-action-text: #080A09;
  --w-well-heavy: #F0685C;
  --w-well-low: #F0964B;
  --w-well-okay: #E7C24F;
  --w-well-good: #84C673;
  --w-well-great: #4FB98C;
    color-scheme: dark;
  }
}

:root[data-theme='dark'] {
  --w-bg: #080A09;
  --w-bg-raised: #151918;
  --w-bg-sunken: #0E1211;
  --w-text: #F2F5F3;
  --w-text-secondary: #B4BDB8;
  --w-text-tertiary: #8A938E;
  --w-border: #272D2B;
  --w-border-strong: rgba(242, 245, 243, 0.34);
  --w-accent: #4FB98C;
  --w-on-accent: #080A09;
  --w-accent-pressed: #3E9C75;
  --w-action-bg: #F2F5F3;
  --w-action-text: #080A09;
  --w-well-heavy: #F0685C;
  --w-well-low: #F0964B;
  --w-well-okay: #E7C24F;
  --w-well-good: #84C673;
  --w-well-great: #4FB98C;
  color-scheme: dark;
}

:root[data-theme='light'] {
  --w-bg: #FFFFFF;
  --w-bg-raised: #F1F3F2;
  --w-bg-sunken: #E7EAE8;
  --w-text: #0B0F0D;
  --w-text-secondary: #5C645F;
  --w-text-tertiary: #666E6A;
  --w-border: #DCE0DE;
  --w-border-strong: rgba(11, 15, 13, 0.28);
  --w-accent: #14603F;
  --w-on-accent: #FFFFFF;
  --w-accent-pressed: #0E4A30;
  --w-action-bg: #0B0F0D;
  --w-action-text: #FFFFFF;
  --w-well-heavy: #C0392E;
  --w-well-low: #C86F22;
  --w-well-okay: #A8811A;
  --w-well-good: #568F4A;
  --w-well-great: #14603F;
  color-scheme: light;
}

/* The wellbeing scale is ordered, and its best step IS the brand green. It is
   never labelled and never numbered on this site either. */
:root {
  --w-well-order: heavy low okay good great;
  --w-ink-900: #0B0F0D;
}
