/* ==========================================================================
   tokens.css — 语义色板：一套语义名，两套材质（浅色 / 深色）；主题默认跟随系统，可手动三态覆盖
   ========================================================================== */

/* ---- 浅色（mimo 原值） ---- */
:root,
html[data-theme="light"] {
  color-scheme: light;

  --color-bg-page:       #fcfaf8;
  --color-bg-card:       #faf7f3;
  --color-card:          #fff;        /* mimo 卡底是纯白（.m-card/.pm__card） */
  --color-bg-section:    #f0ebe5;
  --color-border-warm:   #f0ebe5;
  --color-line:          #f0ebe5;
  --color-surface-hover: #f7f3ef;
  --color-hover:         rgba(0, 0, 0, .045);
  --color-chip:          #ebe5dc;
  --color-eco-bg:        #f4f3f1;
  --color-card-img:      #f0f0f0;
  --color-hairline:      #f2f2f2;

  --color-primary:       #000;
  --color-primary-85:    rgba(0, 0, 0, .85);
  --color-text:          #000;
  --color-text-strong:   #000;
  --color-text-secondary:rgba(0, 0, 0, .55);
  --color-text-50:       rgba(0, 0, 0, .5);
  --color-muted:         #666;
  --color-faint:         #999;
  --color-highlight:     #1f2329;
  --color-pm-title:      #1d1d1f;
  --color-icon:          #8c8c8c;

  --color-invert:        #000;        /* 主按钮底：mimo 黑胶囊 */
  --color-on-invert:     #fff;
  --color-shadow:        rgba(31, 35, 41, .10);
  --color-scrollbar:     #d9d3ca;
  --color-notice-bg:     #000;
  --poster-dot:          rgba(31, 35, 41, .10);   /* 海报点阵 */
  --color-notice-ink:    #fff;
  --color-ok: #16a34a; --color-ok-soft: #dcfce7;
  --color-warn: #d97706; --color-warn-soft: #fef3c7;
  --color-danger: #dc2626; --color-danger-soft: #fef2f2;

  /* 品牌强调色：橄榄绿系，取自 mimo pill--soft 实测 rgba(82,110,62,*) */
  --accent:        #526e3e;
  --accent-soft:   rgba(82, 110, 62, .10);
  --accent-mid:    rgba(82, 110, 62, .22);
  --accent-line:   rgba(82, 110, 62, .34);
  --accent-ink:    #43592f;
  --accent-glow:   rgba(82, 110, 62, .16);


  --r-card: 24px;                     /* mimo 卡 24 圆角（--r-24） */
  --nav-blur: blur(12px);
  --nav-stuck-bg: color-mix(in srgb, var(--color-bg-page) 82%, transparent);
}

/* ---- 深色（Kimi 原值） ---- */
html[data-theme="dark"] {
  color-scheme: dark;

  --color-bg-page:       #121212;
  --color-bg-card:       #161616;
  --color-card:          #121212;     /* Kimi 卡与页同底，靠 1px 细线分层 */
  --color-bg-section:    rgba(255, 255, 255, .05);
  --color-border-warm:   rgba(255, 255, 255, .12);
  --color-line:          rgba(255, 255, 255, .10);
  --color-surface-hover: #1c1c1c;
  --color-hover:         rgba(255, 255, 255, .06);
  --color-chip:          #1c1c1c;
  --color-eco-bg:        #171717;
  --color-card-img:      #1c1c1c;
  --color-hairline:      rgba(255, 255, 255, .12);

  --color-primary:       #fafafa;
  --color-primary-85:    rgba(255, 255, 255, .84);
  --color-text:          rgba(255, 255, 255, .84);
  --color-text-strong:   #fafafa;
  --color-text-secondary:rgba(255, 255, 255, .56);
  --color-text-50:       rgba(255, 255, 255, .56);
  --color-muted:         rgba(255, 255, 255, .56);
  --color-faint:         rgba(255, 255, 255, .38);
  --color-highlight:     #fafafa;
  --color-pm-title:      #fafafa;
  --color-icon:          rgba(255, 255, 255, .38);

  --color-invert:        rgba(255, 255, 255, .84);
  --color-on-invert:     #121212;
  --color-shadow:        rgba(0, 0, 0, .5);
  --color-scrollbar:     rgba(255, 255, 255, .16);
  --color-notice-bg:     #1c1c1c;
  --poster-dot:          rgba(255, 255, 255, .10);
  --color-notice-ink:    rgba(255, 255, 255, .84);
  --color-ok: #4ade80; --color-ok-soft: rgba(74, 222, 128, .14);
  --color-warn: #fbbf24; --color-warn-soft: rgba(251, 191, 36, .14);
  --color-danger: #f87171; --color-danger-soft: rgba(248, 113, 113, .14);

  /* 品牌强调色（深色材质）：同橄榄绿提亮，保证对比度 */
  --accent:        #a3c280;
  --accent-soft:   rgba(163, 194, 128, .10);
  --accent-mid:    rgba(163, 194, 128, .20);
  --accent-line:   rgba(163, 194, 128, .32);
  --accent-ink:    #b7d19a;
  --accent-glow:   rgba(163, 194, 128, .14);


  --r-card: 0px;                      /* Kimi 直角卡 */
  --nav-blur: blur(20px);
  --nav-stuck-bg: rgba(18, 18, 18, .7);
}

/* ---- 与主题无关的尺度（mimo 实测） ---- */
:root {
  --container:   1260px;
  --gutter:      60px;
  --bleed:       7.5px;
  --sec-pad:     72px;
  --banner-h:    40px;
  --nav-h:       54px;
  --sticky-top:  52px;
  --sticky-feat: 148px;

  --r-6: 6px; --r-8: 8px; --r-12: 12px; --r-20: 20px; --r-24: 24px; --r-999: 999px;

  --ease-out-expo: cubic-bezier(.16, 1, .3, 1);
  --ease-std:      cubic-bezier(.4, 0, .2, 1);
  --reveal-dur:    .8s;
  --reveal-y:      60px;

  --bp-nav: 920px;

  --font-body: inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-main: "PingFang SC", -apple-system, MiSans, "Microsoft YaHei", sans-serif;
  --font-hero: "LXGW WenKai TC", "PingFang SC", -apple-system, "MiSans", sans-serif;
  --font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

/* ---- 本地等宽字体：Geist Mono（SIL OFL，Vercel）实测 137804 字节，随站分发 ---- */
@font-face {
  font-family: "Geist Mono";
  src: url("../fonts/GeistMonoVF.ttf") format("truetype-variations"),
       url("../fonts/GeistMonoVF.ttf") format("truetype");
  font-weight: 100 900;
  font-display: swap;
}

/* ==========================================================================
   老变量别名层 — docs.css / home.css 沿用旧内核站的 token 命名
   （--s-* 间距 / --line-* / --text-* / --surface-* / 状态色），
   这里统一映射到 tokens.css 语义变量，深浅主题自动跟随
   ========================================================================== */
:root {
  --s-2: 8px;  --s-3: 12px; --s-4: 16px; --s-5: 20px; --s-6: 24px;
  --s-8: 32px; --s-10: 40px; --s-12: 48px; --s-14: 56px; --s-18: 72px; --s-24: 96px;

  --line-1: var(--color-line);
  --line-2: var(--color-border-warm);
  --line-3: var(--color-hairline);

  --text-1: var(--color-text);
  --text-2: var(--color-text-secondary);
  --text-3: var(--color-faint);
  --text-full: var(--color-text-strong);

  --surface-0: var(--color-bg-page);
  --surface-1: var(--color-bg-card);
  --surface-2: var(--color-bg-section);
  --surface-3: var(--color-surface-hover);
  --surface-quiet: var(--color-eco-bg);

  --r-sm: var(--r-6);
  --r-md: var(--r-12);
  --r-pill: var(--r-999);

  --ok: var(--color-ok);           --ok-soft: var(--color-ok-soft);
  --warn: var(--color-warn);       --warn-soft: var(--color-warn-soft);
  --danger: var(--color-danger);   --danger-soft: var(--color-danger-soft);

  --ease: var(--ease-std);
  --dur-1: .15s; --dur-2: .3s;
  --shadow-1: var(--color-shadow);
  --shadow-2: 0 20px 60px var(--color-shadow);

  --a1: var(--accent-soft);
  --a2: var(--accent-mid);
  --accent-strong: var(--accent-ink);
  --announce-h: 0px;               /* 文档页无公告条，置 0 保持 sticky 计算正确 */
  --grid-line: var(--poster-dot);
  --hero-glow: var(--accent-glow);
  --font-sans: var(--font-main);
  --nav-h: 56px;
}
