:root {
  color-scheme: only light;
  --color-night: oklch(0.155 0.005 286);
  --color-night-panel: oklch(0.195 0.005 286);
  --color-night-rule: oklch(0.32 0.008 286);
  --color-white: oklch(0.985 0.002 95);
  --color-night-muted: oklch(0.78 0.012 260);
  --color-paper: oklch(0.972 0.006 95);
  --color-paper-blue: oklch(0.937 0.019 260);
  --color-ink: oklch(0.24 0.01 260);
  --color-muted: oklch(0.435 0.015 260);
  --color-rule: oklch(0.845 0.008 95);
  --color-accent: oklch(0.546 0.245 262.88);
  --color-accent-hover: oklch(0.488 0.243 264.38);
  --color-focus: var(--color-accent);
  --color-night-focus: oklch(0.715 0.143 254.62);
  --font-display: "Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: var(--font-display);
  --font-mono: "JetBrains Mono", ui-monospace, monospace;
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --radius-screen: 0.75rem;
  --radius-action: 0.5rem;
  --text-small: 0.8125rem;
  --text-body: 1rem;
  --text-heading: clamp(1.7rem, 3vw, 2.65rem);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-short: 150ms;
}

@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: only dark;
    --color-paper: oklch(0.205 0.008 260);
    --color-paper-blue: oklch(0.245 0.02 260);
    --color-ink: oklch(0.96 0.003 95);
    --color-muted: oklch(0.77 0.012 260);
    --color-rule: oklch(0.4 0.015 260);
    --color-focus: var(--color-night-focus);
  }
}
