@font-face {
  font-family: "Source Han Sans SC";
  src: url("assets/fonts/SourceHanSansSC-Subset.woff2?v=28.4") format("woff2-variations");
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
}

:root {
  color-scheme: light;

  --color-page: #f4f4f2;
  --color-surface: #ffffff;
  --color-surface-2: #ececea;
  --color-surface-3: #e5e5e1;
  --color-text: #171716;
  --color-text-2: #4c4c49;
  --color-muted: #686864;
  --color-border: #deded9;
  --color-border-strong: #b9b9b2;
  --color-green: #76b900;
  --color-green-hover: #5f9700;
  --color-green-soft: #edf5df;
  --color-green-ink: #172000;
  --color-accent: var(--color-green);
  --color-accent-ink: var(--color-green-ink);
  --color-dark: #171817;
  --color-dark-2: #292b29;
  --color-light: #f8f8f5;
  --color-focus: #1769e0;
  --color-overlay: rgb(0 0 0 / 58%);
  --color-shadow: rgb(20 20 18 / 10%);
  --color-transparent: rgb(0 0 0 / 0%);
  --color-on-dark: #ffffff;
  --color-on-dark-muted: #d5d8d2;
  --color-stage: #d9ded8;
  --color-stage-ink: #30332f;
  --color-stage-muted: #5f635d;
  --color-preview-1: #dedbd4;
  --color-preview-2: #d6ddd9;
  --color-preview-3: #e1d8ce;
  --color-preview-4: #d8d9df;
  --color-preview-5: #d6dbd0;
  --color-preview-6: #ddd6d0;
  --color-preview-7: #e3e0da;
  --color-preview-8: #d9dedb;
  --color-preview-9: #ded9d2;
  --color-preview-10: #deddd8;
  --color-preview-11: #d7ddda;
  --color-preview-12: #d7dbd2;
  --color-border-soft: #e4e4df;
  --color-panel-border: #e3e3de;
  --color-control-border-hover: #aaaaaa;
  --color-control-hover: #8f918c;
  --color-control-ink: #343633;
  --color-selected: #242524;
  --color-green-strong: #518000;
  --color-note: #f0f2ec;
  --color-overlay-gradient: rgb(10 11 10 / 78%);
  --color-glass-dark: rgb(18 20 18 / 70%);
  --color-glass-border: rgb(255 255 255 / 35%);
  --color-glass-light: rgb(255 255 255 / 88%);
  --color-glass-light-border: rgb(255 255 255 / 75%);
  --color-shadow-soft: rgb(20 20 18 / 8%);
  --color-tap: rgb(23 24 23 / 10%);
  --color-error: #a12f26;

  --font-ui: "Source Han Sans SC", "Microsoft YaHei UI", sans-serif;
  --font-mono: "Cascadia Mono", 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: 4rem;
  --space-3xl: 5rem;

  --text-2xs: 0.6875rem;
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-md: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: clamp(1.75rem, 2.8vw, 2.5rem);
  --text-hero: clamp(1.875rem, 3vw, 2.625rem);

  --container: 90rem;
  --gutter: clamp(0.875rem, 2.5vw, 2.5rem);
  --radius-xs: 0.25rem;
  --radius-sm: 0.25rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-round: 50%;
  --rule: 1px;

  --dur-fast: 120ms;
  --dur-ui: 180ms;
  --dur-view: 280ms;
  --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);
}
