/* ============================================================
   造物原理 · 设计令牌（权威定义见 design-system/MASTER.md）
   ============================================================ */

:root {
  /* 纸面与墨 */
  --paper: #f6f3eb;
  --paper-2: #efebdf;
  --ink: #1d2733;
  --ink-2: #52626f;
  --rule: #d9d3c5;
  --rule-strong: #b9b19e;

  /* 动效舞台 */
  --scene: #101b26;
  --scene-2: #16242f;
  --scene-ink: #e9e4d6;
  --scene-ink-2: #9aa8b0;
  --scene-rule: rgba(233, 228, 214, 0.16);

  /* 语义 */
  --ok: #2e7d4f;
  --bad: #b3402a;
  /* 语义色在深色舞台（--scene）上的提亮变体，保证小字可读 */
  --ok-scene: #58a97a;
  --bad-scene: #e06a50;

  /* 页面 accent（默认=风电青瓷；各页在 body[data-page] 覆写） */
  --accent: #3d9db3;
  --accent-ink: #186379;
  --accent-soft: rgba(61, 157, 179, 0.12);

  /* 字体 */
  --font-display: "Noto Serif SC", "Songti SC", "STSong", SimSun, serif;
  --font-body: "Noto Sans SC", "PingFang SC", "Microsoft YaHei", "Segoe UI",
    sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas,
    monospace;

  /* 动效时长（ui-motion-craft 体系，不发明第三个时长） */
  --motion-fast: 150ms;
  --motion-base: 200ms;
  --motion-exit: 140ms;
  --motion-enter: 400ms;
  --ease-standard: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-entrance: cubic-bezier(0.16, 1, 0.3, 1);

  /* 布局 */
  --col: min(1080px, 92vw);
  --gap-1: 8px;
  --gap-2: 16px;
  --gap-3: 24px;
  --gap-4: 40px;
  --gap-5: 64px;
  --gap-6: 96px;

  /* 深浅阴影（极轻，图纸美学不靠阴影） */
  --shadow-plate: 0 1px 0 rgba(29, 39, 51, 0.06);
}

body[data-page="wind"] {
  --accent: #3d9db3;
  --accent-ink: #186379;
  --accent-soft: rgba(61, 157, 179, 0.12);
}
body[data-page="hydro"] {
  --accent: #4c7fb8;
  --accent-ink: #1e4e80;
  --accent-soft: rgba(76, 127, 184, 0.13);
}
body[data-page="solar"] {
  --accent: #d99a2b;
  --accent-ink: #8a5e10;
  --accent-soft: rgba(217, 154, 43, 0.14);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --motion-fast: 0.01ms;
    --motion-base: 0.01ms;
    --motion-exit: 0.01ms;
    --motion-enter: 0.01ms;
  }
}
