/* ==========================================================================
   tokens.css — 全站唯一的设计令牌来源。改这一处，全站生效。
   颜色按「用途」拆开：填充色 / 文字色 / 图形色不共用一支。
   同一支色既当按钮底又当链接文字，必然有一头对比度不达标。
   ========================================================================== */

:root {
  /* ── 品牌色：三支各管一件事，禁止互相顶班 ───────────────────────────── */
  --brand:        #6A58E8;  /* 只做填充：按钮底 / 选中片底。考核「白字压得住吗」 */
  --brand-hover:  #5B4BD6;  /* 填充 hover */
  --brand-ink:    #5B4BD6;  /* 只做文字：浅底链接与强调。白底 6.1:1 */
  --brand-mark:   #6A58E8;  /* 只做图形：圆点 / 描边 / 箭头，≥3:1 即可 */
  --brand-soft:   #F2F1FE;  /* 浅色品牌底 */
  --brand-line:   rgba(122, 110, 240, .30);

  /* ── 点缀色（只在深底上出现）───────────────────────────────────────── */
  --accent:       #5AC8FA;

  /* ── 中性色阶（原始值，供上层派生）────────────────────────────────── */
  --ink-900: #14141F;
  --ink-700: #5C5C72;
  --ink-500: #6B6B7B;
  --ink-100: #E6E6F0;
  --paper:   #FFFFFF;
  --paper-2: #F7F7FB;

  --night:        #08080F;
  --night-2:      #0B0B14;
  --night-3:      #0E0E1A;
  --night-card:   #12121E;
  --night-accent: #1A172F;
  --night-row:    #101018;
  --night-line:   #26263B;
  --lit-100: #F4F4F8;
  --lit-300: #8E8EA6;
  --lit-400: #8484A0;
  --lit-brand: #9D8CFF;

  /* ── 语义色：浅色主题（默认）─────────────────────────────────────────
     组件只写 var(--surface) / var(--text-body) 这类语义名，
     深色主题只重映射这一组，组件代码一行都不用改。 */
  --bg:         var(--paper-2);
  --band:       var(--paper);
  --surface:    var(--paper);
  --surface-2:  var(--brand-soft);
  --surface-flat: var(--paper);
  --line:       var(--ink-100);
  --text:       var(--ink-900);
  --text-body:  var(--ink-700);
  --text-soft:  var(--ink-500);
  --ink:        var(--brand-ink);
  --fill:       var(--brand);
  --fill-hover: var(--brand-hover);
  --on-fill:    #FFFFFF;
  --mark:       var(--brand-mark);
  --card-shadow: 0 1px 2px rgba(20, 20, 31, .04), 0 14px 34px -22px rgba(20, 20, 31, .22);

  /* ── 内容宽度：全站只有这两档 ──────────────────────────────────────── */
  --w-container: 1200px;   /* 所有区块 / 栅格 */
  --w-prose:      820px;   /* 长文阅读位 */

  /* ── 间距 ─────────────────────────────────────────────────────────── */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px; --sp-5: 20px;
  --sp-6: 24px; --sp-7: 32px; --sp-8: 40px; --sp-9: 48px; --sp-10: 64px;
  --sp-11: 76px; --sp-12: 86px; --sp-13: 96px;

  /* ── 圆角 ─────────────────────────────────────────────────────────── */
  --r-sm:  8px;  --r-md: 14px; --r-lg: 18px; --r-xl:  20px;
  --r-2xl: 22px; --r-3xl: 28px; --r-4xl: 32px; --r-pill: 999px;

  /* ── 字号（移动端在 layout.css 的断点里整体降档）──────────────────── */
  --fs-1: 12px;   --fs-2: 12.5px; --fs-3: 13px;   --fs-4: 13.5px;
  --fs-5: 14px;   --fs-6: 14.5px; --fs-7: 15px;   --fs-8: 15.5px;
  --fs-9: 16px;   --fs-10: 18px;  --fs-11: 19px;  --fs-12: 21px;
  --fs-13: 26px;  --fs-14: 28px;  --fs-15: 30px;  --fs-16: 34px;
  --fs-17: 36px;  --fs-18: 38px;  --fs-19: 40px;  --fs-20: 42px;
  --fs-21: 46px;  --fs-22: 52px;

  /* ── 字体：全部走系统栈，不引外链字体（国内访问 Google Fonts 不通）── */
  --font-sans: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB",
               "Microsoft YaHei", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-num:  Inter, "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC",
               "Microsoft YaHei", sans-serif;
}

/* ── 深色主题：只重映射语义色 ───────────────────────────────────────────── */
body.theme-dark {
  --bg:         var(--night);
  --band:       var(--night-2);
  --surface:    var(--night-card);
  --surface-2:  var(--night-accent);
  --surface-flat: var(--night-row);
  --line:       var(--night-line);
  --text:       var(--lit-100);
  --text-body:  var(--lit-300);
  --text-soft:  var(--lit-400);
  --ink:        var(--lit-brand);
  --fill:       var(--brand);
  --fill-hover: #7D6BF0;
  --on-fill:    #FFFFFF;
  --mark:       var(--lit-brand);
  --card-shadow: none;
}
