/* Code generated by tools/dsgen from web/design-system/tokens.json (design system 1790993653-3c75 2026-10-02 https://claude.ai/artifact/Kos6rzJcPPiYcBHfgpe2Zh). DO NOT EDIT.
   Daylight (light) is the default; Evening (dark) applies with data-theme="dark",
   or with prefers-color-scheme: dark unless data-theme="light" (R-DS-A11Y-1, E01-S07). */

/* Daylight */
:root, [data-theme="light"] {
  color-scheme: light;
  --ground: #f6f1e7;
  --surface: #fffcf6;
  --surface-sunk: #efe7d8;
  --line: #e0d5c1;
  --line-strong: #8e8572;
  --ink: #1d2a21;
  --ink-muted: #56604f;
  --pine: #1f4d3a;
  --pine-deep: #163a2b;
  --on-pine: #fffcf6;
  --pine-soft: #dcebdf;
  --clay: #a84a22;
  --on-clay: #fffcf6;
  --clay-soft: #f6e0d2;
  --wheat: #e2ad3f;
  --on-wheat: #2a1f06;
  --sky: #2c6a88;
  --sky-soft: #dbeaf1;
  --success: #24704a;
  --warning: #8a5a00;
  --danger: #b3261e;
  --danger-soft: #f8dcd8;
  --focus: #0f5f8a;
  --shadow-soft: 0 1px 2px rgba(29,42,33,0.06), 0 8px 24px rgba(29,42,33,0.07);
  --shadow-lift: 0 2px 4px rgba(29,42,33,0.08), 0 18px 40px rgba(29,42,33,0.12);
}

/* Evening */
[data-theme="dark"] {
  color-scheme: dark;
  --ground: #121813;
  --surface: #1a221c;
  --surface-sunk: #0d120e;
  --line: #2c3a30;
  --line-strong: #6c7d70;
  --ink: #eef1e8;
  --ink-muted: #a8b3a4;
  --pine: #86c9a6;
  --pine-deep: #a6dcbf;
  --on-pine: #0e1a13;
  --pine-soft: #20382a;
  --clay: #ee9468;
  --on-clay: #24120a;
  --clay-soft: #3a2419;
  --wheat: #e8b850;
  --on-wheat: #2a1f06;
  --sky: #86c0dc;
  --sky-soft: #18303b;
  --success: #7ad3a0;
  --warning: #f0bb5a;
  --danger: #f4938a;
  --danger-soft: #3d1d1a;
  --focus: #9fd3f0;
  --shadow-soft: 0 1px 2px rgba(0,0,0,0.4), 0 8px 24px rgba(0,0,0,0.35);
  --shadow-lift: 0 2px 4px rgba(0,0,0,0.5), 0 18px 40px rgba(0,0,0,0.5);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --ground: #121813;
    --surface: #1a221c;
    --surface-sunk: #0d120e;
    --line: #2c3a30;
    --line-strong: #6c7d70;
    --ink: #eef1e8;
    --ink-muted: #a8b3a4;
    --pine: #86c9a6;
    --pine-deep: #a6dcbf;
    --on-pine: #0e1a13;
    --pine-soft: #20382a;
    --clay: #ee9468;
    --on-clay: #24120a;
    --clay-soft: #3a2419;
    --wheat: #e8b850;
    --on-wheat: #2a1f06;
    --sky: #86c0dc;
    --sky-soft: #18303b;
    --success: #7ad3a0;
    --warning: #f0bb5a;
    --danger: #f4938a;
    --danger-soft: #3d1d1a;
    --focus: #9fd3f0;
    --shadow-soft: 0 1px 2px rgba(0,0,0,0.4), 0 8px 24px rgba(0,0,0,0.35);
    --shadow-lift: 0 2px 4px rgba(0,0,0,0.5), 0 18px 40px rgba(0,0,0,0.5);
  }
}

/* Spacing, radius and type families (theme-independent) */
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-pill: 999px;
  --font-display: Fraunces, Georgia, serif;
  --font-sans: Figtree, "Segoe UI", system-ui, sans-serif;
}

/* Type styles: utility classes .t-<style> (never fn-) */
.t-display-xl {
  font-family: var(--font-display);
  font-size: 64px;
  line-height: 68px;
  font-weight: 560;
  letter-spacing: -1.5px;
}
.t-display-lg {
  font-family: var(--font-display);
  font-size: 44px;
  line-height: 50px;
  font-weight: 560;
  letter-spacing: -1px;
}
.t-heading {
  font-family: var(--font-display);
  font-size: 28px;
  line-height: 34px;
  font-weight: 560;
  letter-spacing: -0.4px;
}
.t-title {
  font-family: var(--font-sans);
  font-size: 19px;
  line-height: 26px;
  font-weight: 650;
}
.t-body-lg {
  font-family: var(--font-sans);
  font-size: 18px;
  line-height: 28px;
  font-weight: 400;
}
.t-body {
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
}
.t-small {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 20px;
  font-weight: 450;
}
.t-label {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 16px;
  font-weight: 650;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}
.t-numeral {
  font-family: var(--font-sans);
  font-size: 32px;
  line-height: 36px;
  font-weight: 650;
  letter-spacing: -0.5px;
  font-variant-numeric: tabular-nums;
}

/* Headlines step down one size under 760px (R-DS-TYPE-3) */
@container screen (max-width: 759.98px) {
  .t-display-xl {
    font-size: 44px;
    line-height: 50px;
    letter-spacing: -1px;
  }
  .t-display-lg {
    font-size: 28px;
    line-height: 34px;
    letter-spacing: -0.4px;
  }
}
