/* ★ 2026-08-18 UI字体系统重构（P0审计修复）：
 * - XuanKunSans-Bold (woff2, 83KB，自托管品牌定制字体) 用于标题/display；
 * - Inter（woff2 子集，每字重~22KB，自托管）用于正文西文/数字；
 * - 中文字体用系统字体栈（苹方/冬青黑/微软雅黑），零加载开销。
 * 变量：
 *   --font-ui        正文字体（Inter+系统中文栈）
 *   --font-display   标题/display字体（XuanKunSans-Bold+系统中文粗体兜底）
 *   --font-ui-mono   等宽字体
 */

/* XuanKunSans Bold：品牌定制display字体，用于32px+大标题 */
@font-face {
  font-family: 'XuanKunSans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/XuanKunSans-Bold.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/inter/Inter-Regular.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('/static/fonts/inter/Inter-Medium.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/static/fonts/inter/Inter-SemiBold.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/inter/Inter-Bold.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  /* 正文栈：西文Inter + 中文系统字体 */
  --font-ui: 'Inter', 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
  /* 标题/display栈：品牌定制字体 + 西文Inter粗 + 中文系统粗 */
  --font-display: 'XuanKunSans', 'Inter', 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif;
  /* 等宽（代码/日志/ID） */
  --font-ui-mono: 'SF Mono', 'Fira Code', 'JetBrains Mono', Consolas, 'Liberation Mono', Menlo, monospace;
  /* 全局默认字体（alias到--font-ui，兼容历史代码） */
  --xk-font: var(--font-ui);

  /* ★ 2026-08-18 P0统一设计令牌：所有颜色/阴影/圆角/语义色在此唯一定义，
   * main.css / admin.css / enterprise.css / ui-kit.css 均alias到这些变量。
   * 任何页面只要加载 ui-font.css 就能拿到完整设计令牌。 */

  /* ---- 品牌主色（light） ---- */
  --xk-primary: #2f6fed;
  --xk-primary-hover: #2457c9;
  --xk-primary-light: rgba(47,111,237,0.08);
  --xk-primary-border: rgba(47,111,237,0.25);

  /* ---- 文字三级 ---- */
  --xk-text-1: #17181c;
  --xk-text-2: #4b4d55;
  --xk-text-3: #8b8d97;

  /* ---- 背景 ---- */
  --xk-bg-page: #ffffff;
  --xk-bg-card: #ffffff;
  --xk-bg-sidebar: #f6f6f8;
  --xk-bg-hover: #f1f1f5;

  /* ---- 边框 ---- */
  --xk-border: #e8e8ee;

  /* ---- 圆角（统一尺度） ---- */
  --xk-radius-xs: 4px;
  --xk-radius-sm: 8px;
  --xk-radius-md: 10px;
  --xk-radius-lg: 12px;
  --xk-radius-xl: 16px;
  --xk-radius-pill: 9999px;

  /* ---- 阴影（主色调投影，无黑色rgba） ---- */
  --xk-shadow-card: 0 1px 2px rgba(47,111,237,0.04), 0 4px 12px rgba(47,111,237,0.05);
  --xk-shadow-pop: 0 8px 28px rgba(47,111,237,0.12);

  /* ---- 语义色（低饱和克制） ---- */
  --xk-success: #0f9d7a;
  --xk-warning: #e8871e;
  --xk-danger: #e5484d;
  --xk-info: var(--xk-primary);
}

/* ---- Dark mode 令牌（跟随 html[data-theme="dark"]） ---- */
:root[data-theme="dark"] {
  --xk-primary: #5b8df5;
  --xk-primary-hover: #7ba4f8;
  --xk-primary-light: rgba(91,141,245,0.14);
  --xk-primary-border: rgba(91,141,245,0.3);
  --xk-text-1: #eef0f4;
  --xk-text-2: #b6b9c3;
  --xk-text-3: #767a87;
  --xk-bg-page: #141518;
  --xk-bg-card: #1b1c20;
  --xk-bg-sidebar: #141518;
  --xk-bg-hover: #2a2c33;
  --xk-border: rgba(255,255,255,0.09);
  --xk-shadow-card: 0 1px 2px rgba(91,141,245,0.15), 0 4px 12px rgba(0,0,0,0.2);
  --xk-shadow-pop: 0 8px 28px rgba(0,0,0,0.4);
  --xk-success: #10b981;
  --xk-warning: #f59e0b;
  --xk-danger: #f87171;
}
