/* ==========================================================================
   玄鲲 · 设计令牌（唯一真相源）  v1  2026-09-29
   目的（对应 UI 审计 Phase 2 #2 统一设计令牌 / Phase 1 #1 品牌字体 / #3 渐变指纹）：
     1) 全平台唯一的令牌来源：主色/文字/底色/圆角/阴影/间距/字号；
     2) 兼容层：把历史上的 --primary-color / --primary / --primary-hover 等旧名
        alias 到同一套令牌，页面无需改 700KB CSS 即可收敛；
     3) 品牌展示字体 XuanKunSans 正式注册为 display 字体；
     4) 摘掉「AI 模板」最显眼的蓝紫渐变指纹（改同色系）。
   加载位置：应放在其它业务 CSS **之后**（靠层叠顺序覆盖旧值），见各页面 <head> 末尾。
   ========================================================================== */

/* ── 品牌展示字体（文件已存在，此前只在 PPT 渲染里注册过） ── */
@font-face {
  font-family: 'XuanKunSans';
  src: url('/static/fonts/XuanKunSans-Bold.woff2') format('woff2'),
       url('/static/fonts/XuanKunSans-Bold.ttf') format('truetype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  /* ── 主色（与 ui-kit.css 口径一致：浅色 #2f6fed / 深色 #5b8df5） ── */
  --xk-primary: #2f6fed;
  --xk-primary-hover: #2559c9;
  --xk-primary-light: rgba(47, 111, 237, 0.10);
  --xk-primary-border: rgba(47, 111, 237, 0.30);
  --xk-danger: #e5484d;
  --xk-warn: #d98418;
  --xk-ok: #2f9e6b;

  /* ── 圆角 / 间距 / 阴影（此前散落各处，此处给统一刻度） ── */
  --xk-radius-sm: 6px;
  --xk-radius: 10px;
  --xk-radius-lg: 14px;
  --xk-radius-pill: 999px;
  --xk-space-1: 4px;
  --xk-space-2: 8px;
  --xk-space-3: 12px;
  --xk-space-4: 16px;
  --xk-space-5: 24px;
  --xk-space-6: 32px;
  --xk-shadow-1: 0 1px 2px rgba(15, 23, 42, .06);
  --xk-shadow-2: 0 4px 12px rgba(15, 23, 42, .08);
  --xk-shadow-3: 0 10px 28px rgba(15, 23, 42, .12);

  /* ── 字体 ── */
  --xk-font-display: 'XuanKunSans', 'PingFang SC', 'Microsoft YaHei', 'Noto Sans SC', system-ui, sans-serif;
  --xk-font-body: 'PingFang SC', 'Microsoft YaHei', 'Noto Sans SC', system-ui, -apple-system, 'Segoe UI', sans-serif;

  /* ── 兼容层：旧名 → 同一套令牌（页面不必逐个改） ── */
  --primary-color: var(--xk-primary);
  --primary: var(--xk-primary);
  --primary-hover: var(--xk-primary-hover);
  --primary-light: var(--xk-primary-light);
  --main-color: var(--xk-primary);
  --brand-color: var(--xk-primary);
  --danger-color: var(--xk-danger);
  --red: var(--xk-danger);
}

: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, .30);

  --primary-color: var(--xk-primary);
  --primary: var(--xk-primary);
  --primary-hover: var(--xk-primary-hover);
  --primary-light: var(--xk-primary-light);
  --main-color: var(--xk-primary);
  --brand-color: var(--xk-primary);
}

/* ── 展示型标题统一使用品牌字体（此前标题字体声明与实际加载不一致）
     用 :root 前缀提高优先级，压过各页面 .page-title{font-family:var(--font)} 之类的旧规则 ── */
:root h1, :root h2, :root h3.xk-title,
:root .page-title, :root .modal-title, :root .hero-title, :root .card-title-lg,
.admin-header-title, .admin-page-title {
  font-family: var(--xk-font-display);
}
/* 个别页面（如总后台登录页）的标题字体是 JS/内联样式写死的 Inter——
   在 Phase 2 #8「内联样式收编」完成前，先用 !important 把标题字体统一到品牌字体；
   该规则只作用于标题，不改字号/字重/行高，视觉风险可控。 */
:root h1, :root h2, :root .page-title, :root .modal-title {
  font-family: var(--xk-font-display) !important;
}

/* ── 摘掉蓝紫渐变指纹：改同色系品牌色（审计 Phase 1 #3） ── */
.retry-btn.upgrade-btn:hover { background: linear-gradient(135deg, var(--xk-primary), var(--xk-primary-hover)) !important; }
.ppt-generation-status-fill { background: linear-gradient(90deg, var(--xk-primary), var(--xk-primary-hover)) !important; }
