/* 共享设计令牌：Slides 与 Demo 共用 ——「早报纸」风格 */

/* ---------- 字体（全部打包在 src/fonts，断网可用） ----------
 * 思源宋体（Noto Serif CJK SC）Black / Bold：标题，只含页面用到的字
 * 思源黑体（Noto Sans CJK SC）Regular：正文，含 3755 个常用汉字；Bold 只含用到的字
 * Instrument Serif：英文点缀；JetBrains Mono：报头、标签
 * 字体许可：SIL Open Font License 1.1
 */
@font-face { font-family: "TZ Serif"; font-weight: 900; font-display: block; src: url("../fonts/serif-black.woff2") format("woff2"); }
@font-face { font-family: "TZ Serif"; font-weight: 700; font-display: block; src: url("../fonts/serif-bold.woff2") format("woff2"); }
@font-face { font-family: "TZ Sans"; font-weight: 400; font-display: block; src: url("../fonts/sans-regular.woff2") format("woff2"); }
@font-face { font-family: "TZ Sans"; font-weight: 700; font-display: block; src: url("../fonts/sans-bold.woff2") format("woff2"); }
@font-face { font-family: "TZ Display"; font-style: italic; font-display: block; src: url("../fonts/instrument-serif-italic.woff2") format("woff2"); }
@font-face { font-family: "TZ Display"; font-style: normal; font-display: block; src: url("../fonts/instrument-serif.woff2") format("woff2"); }
@font-face { font-family: "TZ Mono"; font-display: block; src: url("../fonts/jetbrains-mono.woff2") format("woff2"); }

:root {
  /* 纸与墨 */
  --paper: #F1EBDD;
  --paper-2: #E8E0CE;
  --paper-3: #FBF8F1;
  --ink: #1C1A17;
  --ink-2: #4A443B;
  --ink-3: #8A8072;
  --rule: #1C1A17;
  --rule-soft: rgba(28, 26, 23, 0.18);
  --red: #C8361D;
  --red-soft: rgba(200, 54, 29, 0.10);
  --go: #2F6B3A;
  --adjust: #A86B00;
  --stop: #C8361D;

  /* 兼容 Demo 里沿用的旧令牌名 */
  --bg: var(--paper);
  --primary: var(--red);
  --primary-deep: var(--red);
  --primary-soft: var(--red-soft);
  --accent: #E9B44C;
  --accent-soft: #F3E6C6;
  --text: var(--ink);
  --text-2: var(--ink-3);
  --line: var(--rule-soft);
  --card: var(--paper-3);
  --go-soft: rgba(47, 107, 58, 0.10);
  --adjust-soft: rgba(168, 107, 0, 0.10);
  --stop-soft: var(--red-soft);
  --shadow: 0 1px 0 var(--rule-soft);
  --shadow-sm: 0 1px 0 var(--rule-soft);

  --serif: "TZ Serif", "Noto Serif SC", "Songti SC", "STSong", serif;
  --sans: "TZ Sans", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
  --display: "TZ Display", "Times New Roman", serif;
  --mono: "TZ Mono", "SF Mono", Menlo, Consolas, monospace;
  --font: var(--sans);

  /* 纸张颗粒 */
  --grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.1  0 0 0 0 0.09  0 0 0 0 0.07  0 0 0 .22 0'/></filter><rect width='220' height='220' filter='url(%23n)'/></svg>");
}

*,
*::before,
*::after { box-sizing: border-box; }

html,
body {
  margin: 0;
  padding: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
}

button { font-family: inherit; color: inherit; }

.em { color: var(--red); font-weight: 700; }
