/* tokens.css —— 设计令牌（唯一样式真相源，方案 §5.2）
   语义色规则：amber=有人在 / cyan=可交互 / neon=城市之声 / haze=距离 / paper=正文
   装饰只准用既有色的透明度，禁止新色相。 */

:root {
  /* 色 —— 六色各一义 */
  --ink: #060a13;
  --ink-2: #0b1220;
  --haze: #8ba3c7;
  --paper: #e8f1ff;
  --amber: #ffb868;
  --cyan: #6fe0ff;
  --neon: #ff5e9e;

  --line: rgba(111, 224, 255, 0.22);      /* 发丝线 */
  --line-dim: rgba(139, 163, 199, 0.16);
  --dim: rgba(232, 241, 255, 0.62);       /* 次级文字 */
  --faint: rgba(232, 241, 255, 0.38);
  --panel-bg: rgba(6, 10, 19, 0.86);

  /* 字 —— 三声部锁死 */
  --font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", serif;
  --font-sans: "Segoe UI", "Microsoft YaHei", "PingFang SC", "Noto Sans SC", sans-serif;
  --font-mono: "Cascadia Code", Consolas, "JetBrains Mono", ui-monospace, monospace;

  --fs-display: clamp(44px, 7vw, 84px);
  --fs-title: 28px;
  --fs-body: 16px;
  --fs-data: 20px;
  --fs-label: 12px;
  --lh-body: 1.7;

  /* 距 —— 8pt 网格 */
  --s1: 4px;
  --s2: 8px;
  --s3: 16px;
  --s4: 24px;
  --s5: 40px;
  --s6: 64px;

  /* 形 —— 直角取景器 */
  --r0: 0px;
  --r1: 2px;
  --shadow-float: 0 8px 40px rgba(0, 0, 0, 0.5);
  --ease: cubic-bezier(0.25, 0.8, 0.25, 1);
  --dur: 200ms;
}
