:root {
  --color-paper: #F3EFE6;
  --color-paper-raised: #FBF9F4;
  --color-paper-sunk: #E9E3D6;
  --color-ink: #1E2321;
  --color-ink-soft: #3C4440;
  --color-ink-muted: #5C635F;
  --color-ink-faint: #8E948F;
  --color-line: #D9D2C3;
  --color-line-strong: #B8AF9C;
  --color-dai: #2D4B48;
  --color-dai-strong: #1F3633;
  --color-dai-soft: #DCE6E2;
  --color-cinnabar: #A3412C;
  --color-cinnabar-soft: #F3E0D8;
  --color-warn: #7A4E0E;
  --color-warn-soft: #F4E7CC;
  --color-danger: #9B2C2C;
  --color-danger-soft: #F6E1DC;
  --color-ok: #2F5D3A;
  --color-ok-soft: #DDEADF;
  --color-on-dai: #FBF9F4;
  --color-scrim: rgba(20, 24, 22, 0.42);
  --color-proto: #2B2640;
  --color-proto-ink: #EFECF8;
  --color-proto-accent: #C9BCFF;
  --color-proto-soft: #ECE9F7;
  --color-focus: #2D4B48;
  --font-serif: "Songti SC", "STSong", "Noto Serif SC", "Noto Serif CJK SC", "Source Han Serif SC", "SimSun", serif;
  --font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  --size-caption: 12px;
  --size-meta: 13px;
  --size-body: 15px;
  --size-reading: 17px;
  --size-title: 19px;
  --size-heading: 24px;
  --size-display: 34px;
  --size-hero: 44px;
  --leading-tight: 1.3;
  --leading-body: 1.6;
  --leading-reading: 1.85;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-14: 56px;
  --radius-s: 6px;
  --radius-m: 10px;
  --radius-l: 16px;
  --radius-pill: 999px;
  --touch-min: 44px;
  --layout-band: 44px;
  --layout-header: 52px;
  --layout-context: 48px;
  --layout-tabbar: 56px;
  --layout-reading-max: 680px;
  --layout-page-max: 760px;
  --layout-rail: 232px;
  --layout-aside: 336px;
  --layout-bp-tablet: 720px;
  --layout-bp-desktop: 1200px;
  --shadow-card: 0 1px 0 rgba(30, 35, 33, 0.04), 0 6px 18px rgba(30, 35, 33, 0.06);
  --shadow-sheet: 0 -6px 28px rgba(30, 35, 33, 0.14);
  --shadow-pop: 0 12px 40px rgba(30, 35, 33, 0.18);
  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-slow: 320ms;
  --motion-calm: 600ms;
  --motion-breath: 1200ms;
  --motion-turn: 1600ms;
  --motion-ease-out: cubic-bezier(0.2, 0.7, 0.2, 1);
  --motion-ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
}
