/* MathJax（CHTML）公式字号与字体控制
 *
 * 说明：MathJax v3 会给每个 <mjx-container> 写入内联 style（例如 font-size: 113.1%）。
 * 普通 CSS 规则无法覆盖内联样式，所以这里对字号使用了 !important。
 */
:root {
  /* 公式字体：按你电脑已安装字体顺序填写 */
  --math-font-family: "STIX Two Math", "Cambria Math", "Times New Roman", "Noto Serif", "STSong", serif;

  /* 建议用 rem 方便全站一致（1rem 通常=16px，受主题整体字号影响） */
  --math-display-size: 1.10rem;
  --math-inline-size: 1.00rem;

  /* 数学环境中的中文（例如 align 里的“求/设/及”或 \text{中文}）字体与字重 */
  --math-cjk-font-family: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", "Hiragino Sans GB", sans-serif;
  --math-cjk-font-weight: 500;
}

/* 字体 + 基础排版（兼容旧的 .mjx-container 类名） */
mjx-container[jax="CHTML"],
.mjx-container {
  font-family: var(--math-font-family) !important;
  line-height: 1.4;
  font-variant-ligatures: none;
}

/* 强化数学环境下的中文显示：避免细/淡/发虚（优先针对 mjx-utext） */
mjx-container[jax="CHTML"] mjx-utext {
  font-family: var(--math-cjk-font-family) !important;
  font-weight: var(--math-cjk-font-weight) !important;
  font-style: normal !important;
  line-height: 1.25;
  -webkit-font-smoothing: auto;
  text-rendering: geometricPrecision;
}

/* 行间公式字号（覆盖 MathJax 内联 font-size） */
mjx-container[jax="CHTML"][display="true"],
.mjx-container[display="true"] {
  font-size: var(--math-display-size) !important;
}

/* 行内公式字号（覆盖 MathJax 内联 font-size；display 属性可能不存在） */
mjx-container[jax="CHTML"]:not([display="true"]),
.mjx-container:not([display="true"]) {
  font-size: var(--math-inline-size) !important;
}

/* 移动端稍微缩小，减少溢出 */
@media (max-width: 600px) {
  mjx-container[jax="CHTML"][display="true"],
  .mjx-container[display="true"] {
    font-size: calc(var(--math-display-size) * 0.95) !important;
  }

  mjx-container[jax="CHTML"]:not([display="true"]),
  .mjx-container:not([display="true"]) {
    font-size: calc(var(--math-inline-size) * 0.95) !important;
  }
}
