/* Hallmark design tokens · Vellink paper system */
:root {
  --color-paper: oklch(95.2% 0.021 72);
  --color-paper-2: oklch(92.4% 0.026 71);
  --color-paper-3: oklch(88.8% 0.031 70);
  --color-ink: oklch(21.5% 0.018 55);
  --color-ink-2: oklch(38% 0.018 57);
  --color-muted: oklch(50% 0.019 60);
  --color-rule: oklch(72% 0.024 66);
  --color-rule-2: oklch(82% 0.022 68);
  --color-accent: oklch(54% 0.145 35);
  --color-accent-ink: oklch(96% 0.016 73);
  --color-focus: oklch(24% 0.09 35);
  --color-sage: oklch(48% 0.055 145);
  --color-sage-soft: oklch(87% 0.028 145);
  --color-error: oklch(45% 0.13 28);
  --color-success: oklch(43% 0.07 145);
  --color-device: oklch(24% 0.012 58);
  --color-device-edge: oklch(15.5% 0.01 58);
  --color-device-camera: oklch(43% 0.012 60);
  --color-note: oklch(76.5% 0.063 82);
  --color-shadow: color-mix(in oklch, var(--color-ink) 18%, transparent);
  --color-shadow-soft: color-mix(in oklch, var(--color-ink) 9%, transparent);

  --font-body: "LXGW WenKai Web", cursive;
  --font-display-zh: "Vellink Ximai Web", "LXGW WenKai Web", cursive;
  --font-display-en: "Caveat Web", "LXGW WenKai Web", cursive;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;

  --text-xs: 0.78rem;
  --text-sm: 0.9rem;
  --text-body: clamp(1rem, 0.96rem + 0.2vw, 1.16rem);
  --text-md: clamp(1.2rem, 1.08rem + 0.5vw, 1.52rem);
  --text-lg: clamp(1.6rem, 1.25rem + 1.2vw, 2.4rem);
  --text-xl: clamp(2.3rem, 1.5rem + 3vw, 4.6rem);
  --text-hero: clamp(4rem, 7vw, 7.25rem);
  --text-hero-mobile: clamp(3.2rem, 15vw, 4.8rem);
  --text-section: clamp(2.4rem, 1.8rem + 2.2vw, 4.25rem);
  --text-display: clamp(4.4rem, 8.8vw, 9.4rem);
  --text-display-mobile: clamp(3.5rem, 19vw, 5.8rem);

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 120ms;
  --dur-base: 280ms;
  --dur-slow: 720ms;

  --rule-thin: 1px;
  --rule-strong: 2px;
  --radius-paper: 0.4rem;
  --radius-control: 0.25rem;
  --page-gutter: clamp(1.1rem, 4vw, 4.5rem);
  --page-max: 92rem;
  --z-base: 1;
  --z-raised: 10;
}
