/* ============================================================
   ZMFactory 官网 · 设计令牌
   全站唯一变量入口：改主题色与字号阶梯只动这一个文件。
   方向：QUIET 静默特写 · 暖纸底 × 松绿 × 极简高斯模糊
   ============================================================ */

:root{
  /* ---- 色阶 · 浅（暖纸底 + 3 级灰阶 + 松绿强调） ---- */
  --bg:#F3F2EC;
  --raise:#EBE9E1;
  --card:#FAF9F4;
  --tx:#20241F;
  --tx2:#4B5046;
  --tx3:#6E7363;
  --hair:rgba(32,36,31,.10);
  --hair2:rgba(32,36,31,.055);
  --mark:#2F5A48;
  --mark-soft:rgba(47,90,72,.08);
  --up:#B3402F;           /* 指标上升（涨红） */
  --dn:#2E7D4F;           /* 指标下降（跌绿） */
  --btn-bg:#232823;      /* 主按钮：墨黑底 */
  --btn-ink:#F2F3EC;     /* 主按钮：纸白字 */
  --btn-sh:rgba(52,54,50,.30);   /* 投影色：中性灰（不偏绿） */

  /* ---- 字体：sans 正文 + wei 展示位（logo） ---- */
  --f-sans:'Space Grotesk',-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Roboto,Helvetica,Arial,sans-serif;
  --f-wei:"FangSong","仿宋","STFangsong","FangSong_GB2312","TW-Sung",serif;
  --f-latin:'Space Grotesk',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;

  /* ---- 字号阶梯（6 级封顶） ---- */
  --t1:clamp(34px,4.4vw,58px);
  --t2:clamp(23px,2.6vw,32px);
  --t3:18px;
  --t4:16px;
  --t5:14px;
  --t6:12px;

  /* ---- 间距（8px 基数） ---- */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px;
  --s6:40px; --s7:64px; --s8:96px; --s9:128px;

  /* ---- 形态 ---- */
  /* 圆角三档：小件 / 卡片浮层 / 胶囊（圆形 50% 属几何形态不占档） */
  --r-sm:4px;
  --r-md:12px;
  --r-pill:999px;
  --bar:64px;
  /* 缓动 2+1：主力 ease + 下划线专用 spring */
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-spring:cubic-bezier(.3,1.35,.4,1);
  --ease-exit:cubic-bezier(.55,.06,.68,.19); /* 退出加速：末段快速收没，无滞留 */
  /* 过渡时长三档：微反馈 / 结构件 / 入场叙事（循环动画周期不占档） */
  --d-fast:.2s;
  --d-mid:.35s;
  --d-slow:.6s;
  /* 阴影一档：hover 抬升统一浅投影（大模糊+负扩散=柔和） */
  --sh-lift:0 16px 36px -18px var(--btn-sh);
  --wrap:1180px;
  --measure:760px;

  /* ---- 极光：五色融合，缓慢流动 ---- */
  --au1:rgba(110,170,130,.52);   /* 青绿 */
  --au2:rgba(120,148,208,.46);   /* 雾蓝 */
  --au3:rgba(184,146,208,.40);   /* 雾紫 */
  --au4:rgba(230,176,116,.44);   /* 杏 */
  --au5:rgba(224,138,142,.34);   /* 玫 */
  --au-op:.9;

  /* ---- 极简模糊材质：纯色薄罩 + 高斯模糊 ---- */
  --veil-bg:color-mix(in srgb,var(--bg) 52%,transparent);   /* 可按控件底纹：半透明，模糊可辨 */
  --veil-bg2:color-mix(in srgb,var(--bg) 45%,transparent);  /* 顶栏/菜单统一罩层：薄纱 45% */
  /* 模糊档：控件 16 / 顶栏·浮层·悬停统一薄纱 12（小样方案 A 定稿） */
  --veil-sm:blur(16px) saturate(1.45);
  --veil-lg:blur(12px) saturate(1.3);
  --veil-hi:blur(12px) saturate(1.3);

  /* ---- 磨砂玻璃：仅悬停/按压时激活，常态维持扁平 ---- */
  --glass-hi:rgba(255,255,255,.5);    /* 受光高光：悬停时浮现的顶缘亮线 */
  /* 磨砂悬停 = 内嵌受光高光 + 柔和抬升投影（配合 --veil-hi 加深模糊） */
  --sh-frost:inset 0 1px 0 var(--glass-hi),var(--sh-lift);
  /* 悬停光晕色：中性灰，非松绿 */
  --glow-c:rgba(52,54,50,.36);

  color-scheme:light;
}

/* 深色：跟随系统（未手动指定时生效） */
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#141613;
    --raise:#1C1F1B;
    --card:#20231F;
    --tx:#E3E5DD;
    --tx2:#B4B9AC;
    --tx3:#8A9184;
    --hair:rgba(227,229,221,.11);
    --hair2:rgba(227,229,221,.05);
    --mark:#98C1AA;
    --mark-soft:rgba(152,193,170,.13);
    --up:#E0785F;           /* 深色：指标上升 */
    --dn:#6FBF8B;           /* 深色：指标下降 */
    --btn-bg:#E4E6DF;      /* 深色：主按钮反转为纸白底 */
    --btn-ink:#1B1F19;
    --btn-sh:rgba(0,0,0,.5);
    --glass-hi:rgba(227,229,221,.14);
    --glow-c:rgba(0,0,0,.55);
    --au1:rgba(84,196,142,.36);
    --au2:rgba(92,140,222,.32);
    --au3:rgba(168,128,222,.32);
    --au4:rgba(216,160,106,.24);
    --au5:rgba(216,118,150,.26);
    --au-op:.9;
    color-scheme:dark;
  }
}

/* 深色：手动指定（覆盖系统偏好） */
:root[data-theme="dark"]{
  --bg:#141613;
  --raise:#1C1F1B;
  --card:#20231F;
  --tx:#E3E5DD;
  --tx2:#B4B9AC;
  --tx3:#8A9184;
  --hair:rgba(227,229,221,.11);
  --hair2:rgba(227,229,221,.05);
  --mark:#98C1AA;
  --mark-soft:rgba(152,193,170,.13);
  --btn-bg:#E4E6DF;
  --btn-ink:#1B1F19;
  --btn-sh:rgba(0,0,0,.5);
  --glass-hi:rgba(227,229,221,.14);
  --glow-c:rgba(0,0,0,.55);
  --au1:rgba(84,196,142,.36);
  --au2:rgba(92,140,222,.32);
  --au3:rgba(168,128,222,.32);
  --au4:rgba(216,160,106,.24);
  --au5:rgba(216,118,150,.26);
  --au-op:.9;
  color-scheme:dark;
}
