/* =====================================================================
   design tokens —— 扁平化 · 高级感 · 科技感
   扁平化：去掉厚重阴影，靠 1px 描边 + 层级灰底 + 留白建立层次
   科技感：深空侧栏 / 网格底纹 / 等宽数字 / 电光青强调 / 极细描边图标
   ===================================================================== */
:root{
  /* ---- 品牌与语义色（低饱和主色，高对比文字） ---- */
  --brand-600:#1F4FE0; --brand-500:#2F6BFF; --brand-400:#5A8BFF; --brand-050:#EDF3FF;
  --teal-600:#00A89A;  --teal-500:#00C2B2; --teal-050:#E1FBF7;
  --violet-500:#7A5AF8; --violet-050:#F0ECFF;
  --amber-600:#D9860A; --amber-500:#F5A524; --amber-050:#FEF4E2;
  --red-600:#D92D20;   --red-500:#F04438;   --red-050:#FEECEA;
  --green-600:#0E9F5D; --green-500:#17B26A; --green-050:#E4F7EE;
  --slate-500:#64748B; --slate-050:#EFF2F7;

  /* ---- 中性（去蓝偏灰的中性冷灰，脏色会让界面显旧） ---- */
  --bg:#F5F7FA;
  --bg-soft:#FAFBFC;
  --surface:#FFFFFF;
  --surface-2:#F8FAFC;
  --surface-3:#F1F4F8;
  --line:#E8ECF3;
  --line-strong:#D3DAE6;
  --line-soft:#F0F3F8;
  --text-1:#0E1726;
  --text-2:#475569;
  --text-3:#6B7A90;
  --text-4:#9AA6B8;

  /* ---- 侧栏（深空） ---- */
  --nav-bg:#0A1120;
  --nav-bg-2:#0F1A2E;
  --nav-line:rgba(146,176,232,.10);
  --nav-dim:#5B6B8C;
  --nav-text:#8E9CBC;
  --nav-hi:#FFFFFF;

  /* ---- 大屏深色域 ---- */
  --dk-bg:#060D1A;
  --dk-bg-2:#0A1424;
  --dk-panel:rgba(11,21,40,.66);
  --dk-panel-solid:#0C1628;
  --dk-line:rgba(94,138,220,.16);
  --dk-line-2:rgba(94,138,220,.28);
  --dk-text:#C6D6F2;
  --dk-strong:#EAF3FF;
  --dk-dim:#5D739A;
  --dk-cyan:#22E0C8;
  --dk-blue:#4E93FF;
  --dk-amber:#FFB020;
  --dk-red:#FF5A5A;
  --dk-violet:#A78BFA;

  /* ---- 尺寸 ---- */
  --nav-w:240px;
  --nav-w-mini:68px;
  --top-h:58px;

  --r-xs:4px;
  --r-sm:6px;
  --r-md:8px;
  --r-lg:12px;
  --r-xl:16px;

  --sp-1:4px;  --sp-2:8px;  --sp-3:12px;
  --sp-4:16px; --sp-5:20px; --sp-6:24px; --sp-8:32px;

  /* ══════════════════════════════════════════════════════════════════
     排版规范 —— 全站文字的唯一事实来源
     ──────────────────────────────────────────────────────────────────
     铁律：任何 CSS / 页面都不许再写 font-size、font-weight 硬编码。
     只能引用 --fs-* / --fw-* / --lh-* / --ls-*，或直接用 .t-* 语义类。
     改这里 = 全站同步生效，不会出现"同一层级在不同页面长得不一样"。
     ──────────────────────────────────────────────────────────────────
     语义类        字号 字重 行高  字距    颜色       用在什么地方
     ──────────────────────────────────────────────────────────────────
     .t-display  28  500  1.25 -.02em text-1  KPI 数值 / 大屏读数 / 仪表
     .t-h1       22  500  1.35  0     text-1  页面主标题（页头 h1）
     .t-h2       20  500  1.40  0     text-1  区块大标题 / 抽屉标题 / 登录品牌
     .t-h3       18  500  1.45  0     text-1  弹窗标题
     .t-h4       15  500  1.50  0     text-1  面板标题 / 分组标题 / 空态标题
     .t-sec      12  500  1.50 .06em  text-4  分节小标题（抽屉内 d-sec h4）
     .t-body     15  400  1.65  0     text-1  正文段落
     .t-list     14  400  1.55  0     text-2  表格 / 列表 / 菜单正文
     .t-detail   14  400  1.60  0     text-2  详情 / 键值对
     .t-strong   14  500  1.55  0     text-1  强调（表格主列、主信息）
     .t-control  14  500  1.40  0     text-2  按钮 / 输入框 / 选择框
     .t-label    13  500  1.50  0     text-2  表单标签 / 小按钮 / 链接 / 页码
     .t-caption  13  400  1.50  0     text-3  表头 / 图例 / 面包屑 / 统计说明
     .t-hint     12  400  1.60  0     text-3  提示 / 辅助说明
     .t-micro    12  500  1.50 .02em  text-4  角标 / 序号 / 时间戳 / 图表刻度
     ──────────────────────────────────────────────────────────────────
     侧栏深空域（字号字重同上，只有颜色不同）
     .t-nav      14  500  1.40  0     nav-text  侧栏菜单项
     .t-nav-sub  12  500  1.40 .06em  nav-dim   侧栏分组标题
     ══════════════════════════════════════════════════════════════════ */

  /* ---- 字号尺度：中性命名，只表示大小，不绑定用途 ----
     只有这 8 档，没有第 9 档。需要新的视觉层级 = 改用字重或颜色区分，
     而不是再加一个字号（每多一档，一致性就难维持一分）。 */
  --fs-3xl:28px;  --fs-2xl:22px;  --fs-xl:20px;   --fs-lg:18px;
  --fs-md:15px;   --fs-base:14px; --fs-sm:13px;   --fs-xs:12px;

  /* ---- 字重：只有两档，上限 500 ----
     中文系统字体（雅黑 / 苹方 / 鸿蒙）在 UI 字号下用到 600+ 会糊成墨团，
     "又憨又丑"就是这么来的；而 Inter Variable 的 500 对西文数字同样清晰。
     故全站不再出现 600 / 700 —— 需要更强的强调改用颜色或加粗以外的手段。 */
  --fw-body:400; --fw-strong:500;

  /* ---- 行高 ---- */
  --lh-display:1.25; --lh-h1:1.35; --lh-h2:1.4;   --lh-h3:1.45;
  --lh-h4:1.5;      --lh-body:1.65; --lh-list:1.55; --lh-detail:1.6;
  --lh-control:1.4; --lh-caption:1.5; --lh-hint:1.6; --lh-nav:1.4;

  /* ---- 字距 ---- */
  --ls-tight:-.02em;  /* 大号数字收紧 */
  --ls-normal:0;      /* 中文正文与标题：汉字等宽，负字距会挤成一团 */
  --ls-wide:.02em;    /* 表头、微标签 */
  --ls-caps:.06em;    /* 分节小标题、侧栏分组 */

  /* ---- 扁平化：阴影只留给真正的浮层 ---- */
  --sh-1:0 1px 2px rgba(13,21,38,.05);
  --sh-2:0 4px 14px rgba(13,21,38,.08);
  --sh-3:0 10px 34px rgba(13,21,38,.14);
  --sh-4:0 20px 60px rgba(13,21,38,.22);
  --sh-glow:0 0 0 3px rgba(47,107,255,.14);

  /* ---- 字体：定义在 fonts.css（自托管 Inter Variable + 中文系统栈） ---- */

  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  /* ---- 语义映射（组件只消费语义变量，换肤只改这里） ---- */
  --c-ok:var(--green-500);  --c-ok-bg:var(--green-050);
  --c-warn:var(--amber-500);--c-warn-bg:var(--amber-050);
  --c-danger:var(--red-500);--c-danger-bg:var(--red-050);
  --c-info:var(--brand-500);--c-info-bg:var(--brand-050);
  --c-violet:var(--violet-500);--c-violet-bg:var(--violet-050);
  --c-teal:var(--teal-500); --c-teal-bg:var(--teal-050);
  --c-gray:var(--slate-500);--c-gray-bg:var(--slate-050);
}

/* 深色大屏作用域变量覆写 */
.dk{
  --surface:var(--dk-panel);
  --line:var(--dk-line);
  --text-1:var(--dk-strong);
  --text-2:var(--dk-text);
  --text-3:var(--dk-dim);
  --text-4:#42587C;
}
