/* Refresh design tokens — generated from tokens.json. Themes: light, dark (default: light).
   Switch theme with <html data-theme="dark">. */
:root, [data-theme="light"] {
  --paper: #eae8e2;
  --sheet: #f5f4f0;
  --sunk: #dddbd4;
  --rule-soft: #c9c7c0;
  --rule: #7f7d77;
  --ink-soft: #55544f;
  --ink: #1b1b19;
  --on-ink: var(--paper);
  --shade: #a9a7a0;
  --ghost: #bdbbb4;
  --flash: #0e0e0d;
  --tint: #94412f;
  --tint-wash: #ebd2c5;
  --shadow-hair: 0 0 0 1px #c9c7c0;
  --shadow-page: 0 0 0 1px #c9c7c0, 0 3px 0 -1px #f5f4f0, 0 3px 0 0 #c9c7c0;
  --shadow-stack: 0 0 0 1px #c9c7c0, 0 3px 0 -1px #f5f4f0, 0 3px 0 0 #c9c7c0, 0 6px 0 -2px #f5f4f0, 0 6px 0 -1px #c9c7c0;
  --shadow-hard: 4px 4px 0 0 #1b1b19;
  --shadow-device: 0 0 0 1.5px #1b1b19, 6px 6px 0 0 #1b1b19;
  --shadow-focus: 0 0 0 2px #eae8e2, 0 0 0 4px #1b1b19;
  color-scheme: light;
}
[data-theme="dark"] {
  --paper: #161615;
  --sheet: #1f1f1d;
  --sunk: #0d0d0c;
  --rule-soft: #353431;
  --rule: #74726c;
  --ink-soft: #aeaca5;
  --ink: #ecebe5;
  --on-ink: var(--paper);
  --shade: #5c5b57;
  --ghost: #4a4945;
  --flash: #f4f3ee;
  --tint: #e39478;
  --tint-wash: #4a2a20;
  --shadow-hair: 0 0 0 1px #353431;
  --shadow-page: 0 0 0 1px #353431, 0 3px 0 -1px #1f1f1d, 0 3px 0 0 #353431;
  --shadow-stack: 0 0 0 1px #353431, 0 3px 0 -1px #1f1f1d, 0 3px 0 0 #353431, 0 6px 0 -2px #1f1f1d, 0 6px 0 -1px #353431;
  --shadow-hard: 4px 4px 0 0 #000000;
  --shadow-device: 0 0 0 1.5px #ecebe5, 6px 6px 0 0 #000000;
  --shadow-focus: 0 0 0 2px #161615, 0 0 0 4px #ecebe5;
  color-scheme: dark;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-device: 18px;
  --radius-full: 9999px;
  --duration-snap: 90ms;
  --duration-settle: 240ms;
  --duration-flash: 300ms;
  --duration-turn: 320ms;
  --duration-ghost: 700ms;
  --duration-shimmer: 1600ms;
  --easing-snap: steps(1, end);
  --easing-waveform: steps(4, end);
  --easing-turn: cubic-bezier(.65, 0, .35, 1);
  --easing-ghost: cubic-bezier(.2, .6, .3, 1);
  --easing-settle: cubic-bezier(.2, .8, .2, 1);
  --font-serif: "Literata", "Iowan Old Style", "Georgia", ui-serif, serif;
  --font-sans: "Libre Franklin", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --type-display-family: var(--font-serif);
  --type-display-size: 56px;
  --type-display-line: 60px;
  --type-display-weight: 350;
  --type-display-tracking: -0.015em;
  --type-numeral-family: var(--font-serif);
  --type-numeral-size: 96px;
  --type-numeral-line: 96px;
  --type-numeral-weight: 250;
  --type-numeral-tracking: -0.02em;
  --type-title-family: var(--font-serif);
  --type-title-size: 32px;
  --type-title-line: 38px;
  --type-title-weight: 450;
  --type-title-tracking: -0.01em;
  --type-heading-family: var(--font-serif);
  --type-heading-size: 20px;
  --type-heading-line: 26px;
  --type-heading-weight: 600;
  --type-reading-family: var(--font-serif);
  --type-reading-size: 18px;
  --type-reading-line: 30px;
  --type-reading-weight: 400;
  --type-body-family: var(--font-sans);
  --type-body-size: 15px;
  --type-body-line: 22px;
  --type-body-weight: 400;
  --type-label-family: var(--font-sans);
  --type-label-size: 13px;
  --type-label-line: 16px;
  --type-label-weight: 600;
  --type-label-tracking: 0.01em;
  --type-overline-family: var(--font-sans);
  --type-overline-size: 11px;
  --type-overline-line: 14px;
  --type-overline-weight: 700;
  --type-overline-tracking: 0.14em;
}
/* Type styles as utility classes (optional) */
.type-display { font-family: var(--type-display-family); font-size: var(--type-display-size); line-height: var(--type-display-line); font-weight: var(--type-display-weight); letter-spacing: var(--type-display-tracking); }
.type-numeral { font-family: var(--type-numeral-family); font-size: var(--type-numeral-size); line-height: var(--type-numeral-line); font-weight: var(--type-numeral-weight); letter-spacing: var(--type-numeral-tracking); }
.type-title { font-family: var(--type-title-family); font-size: var(--type-title-size); line-height: var(--type-title-line); font-weight: var(--type-title-weight); letter-spacing: var(--type-title-tracking); }
.type-heading { font-family: var(--type-heading-family); font-size: var(--type-heading-size); line-height: var(--type-heading-line); font-weight: var(--type-heading-weight); }
.type-reading { font-family: var(--type-reading-family); font-size: var(--type-reading-size); line-height: var(--type-reading-line); font-weight: var(--type-reading-weight); }
.type-body { font-family: var(--type-body-family); font-size: var(--type-body-size); line-height: var(--type-body-line); font-weight: var(--type-body-weight); }
.type-label { font-family: var(--type-label-family); font-size: var(--type-label-size); line-height: var(--type-label-line); font-weight: var(--type-label-weight); letter-spacing: var(--type-label-tracking); }
.type-overline { font-family: var(--type-overline-family); font-size: var(--type-overline-size); line-height: var(--type-overline-line); font-weight: var(--type-overline-weight); letter-spacing: var(--type-overline-tracking); }
