/* =========================================================
   HNYZ · 三套风格的字体
   ---------------------------------------------------------
   只改「字体栈」这一个维度，不动字号和布局：
     default  现代无衬线，标题收紧字距，像产品官网
     minimal  标题换成衬线，正文仍是黑体，像杂志内页
     hacker   全站等宽，连中文也走等宽回退，像终端窗口
   变量都在 :root 里定义一次，各风格只覆盖 --display / --sans。
   ========================================================= */

:root {
  --display: var(--sans);
  --display-tracking: -0.026em;
  --num: var(--mono);
}

h1,
h2,
h3,
h4,
.display-title {
  font-family: var(--display);
  letter-spacing: var(--display-tracking);
}

/* 统计数字、分数这类大数字用等宽，位数不跳 */
.hero-stat dt,
.hero-stat dt span,
.dino-run__score,
.quick-value,
.stat-value {
  font-variant-numeric: tabular-nums;
}

/* ---------- 1. 蓝白科技：几何无衬线，字距收紧 ---------- */
html[data-style="default"] {
  --display: "Inter", "SF Pro Display", "Segoe UI Variable Display", -apple-system,
    BlinkMacSystemFont, "Noto Sans SC", "PingFang SC", "Microsoft YaHei",
    "Helvetica Neue", Arial, sans-serif;
  --display-tracking: -0.028em;
}

/* ---------- 2. 极简：标题走衬线，正文保持黑体 ----------
   宋体在大字号下才好看，所以只换标题；正文继续用系统黑体保证可读性 */
html[data-style="minimal"] {
  --display: "Songti SC", "Source Han Serif SC", "Noto Serif SC",
    "Noto Serif CJK SC", "STSong", "SimSun", "Times New Roman", Georgia, serif;
  --display-tracking: 0.012em;
}

html[data-style="minimal"] .hero h1,
html[data-style="minimal"] h2,
html[data-style="minimal"] h3 {
  font-weight: 500;
}

html[data-style="minimal"] .hero h1 {
  line-height: 1.14;
}

/* 极简风的眉标、标签不再用等宽，改细一点的衬线小字 */
html[data-style="minimal"] .eyebrow,
html[data-style="minimal"] .hero-tag,
html[data-style="minimal"] .card-label {
  font-family: var(--display);
  letter-spacing: 0.08em;
}

/* ---------- 3. 黑客终端：全站等宽 ---------- */
html[data-style="hacker"] {
  --sans: "JetBrains Mono", "Cascadia Mono", "SFMono-Regular", "Sarasa Mono SC",
    "Noto Sans Mono CJK SC", "Liberation Mono", Consolas, monospace;
  --mono: "JetBrains Mono", "Cascadia Mono", "SFMono-Regular", "Sarasa Mono SC",
    "Noto Sans Mono CJK SC", "Liberation Mono", Consolas, monospace;
  --display: var(--mono);
  --display-tracking: 0.01em;
}

html[data-style="hacker"] .hero h1 {
  font-weight: 700;
  line-height: 1.08;
}

/* 终端里字距会显得松，正文稍微收一点 */
html[data-style="hacker"] body {
  letter-spacing: 0.01em;
}
