

:root {
  
  --cream: #fff7dd;
  --cream-deep: #f6e8c8;
  --cream-light: #fffdf5;
  --sky: #bfe6f6;
  --lavender: #cfcbe6;
  --strawberry: #e65c83;
  --plum: #493b51;
  --plum-soft: #6e5f76;
  --mint: #aee2cf;
  --sun: #ffd36a;

  
  --paper: #fffaf0;
  --paper-dim: #fdf3df;
  --ink: var(--plum);
  --ink-muted: rgb(73 59 81 / 72%);
  --ink-faint: rgb(73 59 81 / 48%);
  --card: #fffdf5;

  
  --pixel-line: 3px;
  --pixel-shadow: 4px 4px 0 var(--plum);
  --pixel-shadow-sm: 3px 3px 0 var(--plum);
  --pixel-shadow-lg: 6px 6px 0 var(--plum);

  
  --font-display: "Songti SC", "STSong", "Source Han Serif SC", "Noto Serif CJK SC", Georgia, serif;
  --font-body: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB",
    "Noto Sans CJK SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-pixel: "SFMono-Regular", ui-monospace, Menlo, "Cascadia Mono", monospace;

  
  --page-max: 1100px;
  --tap: 44px;
  --topbar-h: 54px;
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
  --safe-right: env(safe-area-inset-right, 0px);

  
  --ease-soft: cubic-bezier(0.22, 0.68, 0.16, 1);
  --dur-crossfade: 480ms;
  --dur-flip: 720ms;

  --book-ratio: 0.7143;
  color-scheme: light;
}
