/* Hallmark · genre: modern-minimal · design-system: design.md
 * theme: custom · vibe: "precision search, quiet velocity" · axes: light / system-native / cool-neutral
 * paper: oklch(98% 0.006 255) · accent: oklch(66% 0.19 47)
 * display: MiSans/PingFang SC · body: MiSans/PingFang SC · studied: no
 * pre-emit critique: P5 H5 E4 S5 R5 V4
 */
:root {
  color-scheme: light;
  --color-paper: oklch(98% 0.006 255);
  --color-paper-2: oklch(95% 0.009 255);
  --color-surface: oklch(99% 0.004 255);
  --color-ink: oklch(19% 0.018 255);
  --color-ink-2: oklch(46% 0.018 255);
  --color-rule: oklch(86% 0.012 255);
  --color-rule-strong: oklch(70% 0.018 255);
  --color-accent: oklch(66% 0.19 47);
  --color-accent-hover: oklch(61% 0.19 47);
  --color-accent-ink: oklch(18% 0.012 255);
  --color-focus: oklch(62% 0.21 47);
  --color-good: oklch(63% 0.14 150);
  --color-warning: oklch(68% 0.16 72);
  --color-danger: oklch(61% 0.20 28);
  --color-danger-soft: oklch(94% 0.035 28);
  --color-glass: oklch(100% 0 0 / 0.48);
  --color-glass-hover: oklch(100% 0 0 / 0.64);
  --color-glass-rule: oklch(20% 0.018 255 / 0.12);
  --color-glass-highlight: oklch(100% 0 0 / 0.7);
  --color-glass-inset: oklch(100% 0 0 / 0.6);
  --color-capsule: oklch(100% 0 0 / 0.54);
  --color-capsule-hover: oklch(100% 0 0 / 0.75);
  --color-menu: oklch(98% 0.006 255 / 0.92);
  --shadow-glass: 0 0.5rem 2rem oklch(15% 0.015 255 / 0.12);
  --shadow-glass-active: 0 0.75rem 3rem oklch(15% 0.015 255 / 0.18);
  --shadow-menu: 0 1rem 3rem oklch(15% 0.015 255 / 0.2);

  --font-display: "MiSans", "PingFang SC", "Hiragino Sans GB", sans-serif;
  --font-body: "MiSans", "PingFang SC", "Hiragino Sans GB", sans-serif;
  --font-mono: "SFMono-Regular", Menlo, Consolas, monospace;

  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4.5rem;
  --space-3xl: 7rem;

  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 1.25rem;
  --text-xl: 1.75rem;
  --text-2xl: 2.5rem;
  --text-display: clamp(3rem, 8vw, 7rem);

  --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-short: 140ms;
  --dur-medium: 240ms;

  --rule-thin: 1px;
  --radius-control: 0.75rem;
  --radius-panel: 1.25rem;
  --radius-menu: 1.75rem;
  --radius-round: 999px;
}

[data-theme="dark"] {
  color-scheme: dark;
  --color-paper: oklch(15% 0.015 255);
  --color-paper-2: oklch(20% 0.018 255);
  --color-surface: oklch(23% 0.018 255);
  --color-ink: oklch(94% 0.008 255);
  --color-ink-2: oklch(70% 0.015 255);
  --color-rule: oklch(30% 0.018 255);
  --color-rule-strong: oklch(44% 0.022 255);
  --color-accent: oklch(70% 0.18 47);
  --color-accent-hover: oklch(75% 0.18 47);
  --color-accent-ink: oklch(17% 0.010 55);
  --color-focus: oklch(76% 0.20 47);
  --color-good: oklch(72% 0.14 150);
  --color-warning: oklch(76% 0.15 72);
  --color-danger: oklch(72% 0.18 28);
  --color-danger-soft: oklch(25% 0.045 28);
  --color-glass: oklch(100% 0 0 / 0.035);
  --color-glass-hover: oklch(100% 0 0 / 0.065);
  --color-glass-rule: oklch(100% 0 0 / 0.09);
  --color-glass-highlight: oklch(100% 0 0 / 0.2);
  --color-glass-inset: oklch(100% 0 0 / 0.07);
  --color-capsule: oklch(100% 0 0 / 0.07);
  --color-capsule-hover: oklch(100% 0 0 / 0.12);
  --color-menu: oklch(20% 0.022 270 / 0.94);
  --shadow-glass: 0 0.5rem 2rem oklch(2% 0.01 270 / 0.36);
  --shadow-glass-active: 0 0.75rem 3rem oklch(2% 0.01 270 / 0.48);
  --shadow-menu: 0 1rem 3rem oklch(2% 0.01 270 / 0.55);
}
