/**
 * 整站字体配置 — IBM Plex Sans + IBM Plex Mono（自托管）
 *
 * 字体文件：ceomax-pro-child/assets/fonts/
 *
 *   IBM Plex Sans（无衬线，用于正文/标题/UI）
 *     IBMPlexSans-Regular.woff2    22 KB  — 400 字重
 *     IBMPlexSans-Medium.woff2     24 KB  — 500 字重
 *     IBMPlexSans-Bold.woff2       22 KB  — 700 字重
 *
 *   IBM Plex Mono（等宽，用于技术规格数字如 24bit/192kHz、512MB）
 *     IBMPlexMono-Regular.woff2    15 KB  — 400 字重
 *     IBMPlexMono-Bold.woff2       15 KB  — 700 字重
 *
 *   ZCOOL KuaiLe / 站酷快乐体（手写字，VIP 横幅 slogan 专用子集）
 *     ZCOOLKuaiLe-VipSlogan.woff2   2 KB  — 仅含「如果迟早要开，不如现在开！」
 *
 * 分工说明：
 *   英文 / 数字 / 符号（Latin unicode-range）→ IBM Plex Sans / Mono
 *   中文汉字 → 系统字体回退（Mac: PingFang SC；Win: 微软雅黑）
 *   如系统已安装 IBM Plex Sans SC，中文也将使用 IBM Plex 字形
 *
 * 已引入方式：header.php 自动检测子主题 font.css，无需额外配置。
 */

/* ══════════════════════════════════════════
   IBM Plex Sans — Latin 字母、数字、符号
   ══════════════════════════════════════════ */
@font-face {
  font-family: "IBM Plex Sans";
  src: url('./assets/fonts/IBMPlexSans-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: fallback;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
    U+02DA, U+02DC, U+0304, U+0308, U+0329, 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: "IBM Plex Sans";
  src: url('./assets/fonts/IBMPlexSans-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: fallback;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
    U+02DA, U+02DC, U+0304, U+0308, U+0329, 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: "IBM Plex Sans";
  src: url('./assets/fonts/IBMPlexSans-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: fallback;
  unicode-range:
    U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6,
    U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F,
    U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
    U+FEFF, U+FFFD;
}

/* ══════════════════════════════════════════
   IBM Plex Mono — 等宽字体（技术规格数字）
   ══════════════════════════════════════════ */
@font-face {
  font-family: "IBM Plex Mono";
  src: url('./assets/fonts/IBMPlexMono-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: fallback;
}

@font-face {
  font-family: "IBM Plex Mono";
  src: url('./assets/fonts/IBMPlexMono-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: fallback;
}

/* ══════════════════════════════════════════
   站酷快乐体 — VIP slogan 专用字图子集（约 2KB）
   仅包含：如果迟早要开，不如现在开！
   授权：SIL Open Font License 1.1
   ══════════════════════════════════════════ */
@font-face {
  font-family: "ZCOOL KuaiLe";
  src: url('./assets/fonts/ZCOOLKuaiLe-VipSlogan.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ══════════════════════════════════════════
   全局字体变量（供所有组件 CSS 通过 var() 引用）
   修改字体只需改这里，全站同步生效
   ══════════════════════════════════════════ */
:root {
  --font-sans: "IBM Plex Sans SC", "IBM Plex Sans", ui-sans-serif,
    system-ui, -apple-system, "Segoe UI", Roboto,
    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei",
    Arial, sans-serif;

  --font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular,
    Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  --font-handwriting: "ZCOOL KuaiLe", "STKaiti", "KaiTi", cursive;
}

/* ══════════════════════════════════════════
   全站主色调 — 暖纸米 (Warm Paper) 配色方案  v2
   修改配色只需改这里，全站同步生效。
   组件 CSS 中的局部颜色变量代理到这里：
     --ink: var(--color-ink);
     --accent: var(--color-accent);  ...以此类推
   ══════════════════════════════════════════ */
:root {
  /* ── RGB 基础通道（供 rgba() 叠加层使用） ── */
  --color-ink-rgb:    26, 23, 20;    /* #1a1714 */
  --color-accent-rgb: 244, 196, 0;   /* #f4c400 */
  --color-panel-rgb:  255, 253, 249; /* #fffdf9 */
  --color-shadow-rgb: 47, 34, 21;

  /* ── L0 背景层（body / 页面底色） ── */
  --color-bg-gradient: linear-gradient(180deg, #fcfaf4 0%, #f7f2e9 42%, #f1e8db 100%);
  --color-bg:          #f7f2e9;   /* 页面基础底色（单色备用） */
  --color-bg-2:        #f3ecdf;   /* 次级区块底色 */

  /* ── L1 section 承载层（半透明，让渐变透出） ── */
  --color-section-bg:  rgba(255, 253, 249, 0.58);

  /* ── L2 主面板 / 主内容窗口 ── */
  --color-panel:       #fffdf9;

  /* ── L3 次级内容块 / 内嵌卡片 / thead 背景 ── */
  --color-panel-2:     #fcf7ef;

  /* ── L4 tag / chip / 小型暖色信息块 ── */
  --color-panel-3:     #f7f0e4;
  --color-tag-bg:      #f7f0e4;   /* tag / chip 背景（同 panel-3） */
  --color-tag-ink:     #645b52;   /* tag / chip 文字（同 muted）*/

  /* ── L5 弹窗 / 下拉 / 浮层背景 ── */
  --color-float:       #fffefb;

  /* ── 文字 ── */
  --color-ink:         #1a1714;   /* 主文字 */
  --color-muted:       #645b52;   /* 次要文字 */
  --color-muted-2:     #736a61;   /* 辅助/占位文字 */

  /* ── 边框 / 分割线（三级体系） ── */
  --color-line-strong:   #cdbfaa;   /* 强边框（主面板 / section 容器）*/
  --color-line:          #ddd2c3;   /* 标准边框 / 中级卡片 */
  --color-line-soft:     #ebe2d6;   /* 轻边框 / 小卡片 / tag / 辅助分割 */
  --color-line-3:        #eee5d8;   /* 最轻分割线 / 表格行 */
  --color-line-emphasis: #6d5d49;   /* 强调边框（高亮卡专用）*/
  --color-line-2:        #d9ccb9;   /* 保留兼容 / thead 底边 */

  /* ── 强调色 ── */
  --color-accent:      #f4c400;   /* 主强调色（暖黄） */
  --color-accent-dk:   #c89e00;   /* 主强调色深版（悬停） */
  --color-accent-ink:  #161616;   /* 强调色上的文字 */
  --color-accent-2:    #2b6f8e;   /* 辅助强调色（低饱和灰蓝） */

  /* ── 功能色 ── */
  --color-ok:          #1f7a62;   /* 成功 / 可用 */
  --color-danger:      #bf4e3f;   /* 危险 / 错误 */
  --color-number:      #8f6a00;   /* 数字 / 统计高亮 */

  /* ── 阴影 ── */
  --color-shadow-sm:   0 4px 12px rgba(47, 34, 21, 0.07);
  --color-shadow:      0 14px 40px rgba(47, 34, 21, 0.08);
  --color-shadow-lg:   0 20px 48px rgba(47, 34, 21, 0.12);
}

/* ══════════════════════════════════════════
   整站基础样式
   ══════════════════════════════════════════ */
html,
body {
  font-family: var(--font-sans);
}

body {
  background: var(--color-bg-gradient);
  color: var(--color-ink);
  min-height: 100vh;
}
