:root {
  --paper: #f7f3ea;
  --paper-2: #fffdf8;
  --desk: #e5ded0;
  --ink: #1f1a17;
  --ink-soft: #6a6058;
  --line: #ddd4c6;
  --line-strong: #c9bfb0;
  --seal: #8f2d2d;
  --kai: "KaiTi", "STKaiti", "FangSong", "Songti SC", "SimSun", serif;
  --serif: "Songti SC", "Noto Serif SC", "Source Han Serif SC", "STSong", "SimSun", "Palatino Linotype", Palatino, serif;
  --shadow: 0 18px 50px rgba(70, 52, 32, 0.08);
}

* { box-sizing: border-box; }
html, body { margin: 0; }
body {
  color: var(--ink);
  font-family: var(--serif);
  font-size: 17px;
  line-height: 1.7;
  background: var(--desk);
}
button, input, textarea, select { font: inherit; color: inherit; }
button { cursor: pointer; }
button:disabled { cursor: default; opacity: 0.45; }
:focus-visible { outline: 1px solid var(--seal); outline-offset: 3px; }
.hidden { display: none !important; }
