/* 中文（/zh/fonts/）专用增强：中文字体预览 + 中文样式行的字体效果。
   只定义本页新增的类，不改动英文站 /fonts/ 的样式。
   字体文件为 SIL Open Font License 1.1，来源与署名见 /static/fonts/NOTICE.txt */

/* ---------- 自托管开源中文字体 ---------- */

@font-face {
  font-family: "ZH Song";
  src: local("Noto Serif SC"), local("Source Han Serif SC"),
       url("/static/fonts/noto-serif-sc.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH Hei";
  src: local("Noto Sans SC"), local("Source Han Sans SC"),
       url("/static/fonts/noto-sans-sc.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH XiaoWei";
  src: url("/static/fonts/zcool-xiaowei.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH KuaiLe";
  src: url("/static/fonts/zcool-kuaile.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH HuangYou";
  src: url("/static/fonts/zcool-qingke-huangyou.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH MaoKai";
  src: url("/static/fonts/ma-shan-zheng.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH Xing";
  src: url("/static/fonts/zhi-mang-xing.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH LongCang";
  src: url("/static/fonts/long-cang.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "ZH MaoCao";
  src: url("/static/fonts/liu-jian-mao-cao.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

/* ---------- 中文字体选择区（只在 /zh/fonts/ 主页面渲染） ---------- */

.zh-fonts { margin-top: 26px; }

.zh-fonts .zh-fonts-lede {
  color: var(--muted);
  font-size: 15px;
  margin: 0 0 12px;
}

.zh-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 4px;
}

.zh-chip {
  font: inherit;
  font-size: 14px;
  line-height: 1;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  cursor: pointer;
}

.zh-chip:hover { border-color: #c3ccd6; background: #fbfcfd; }

.zh-chip[aria-pressed="true"] {
  background: var(--brand);
  border-color: var(--brand);
  color: #fff;
  font-weight: 600;
}

.zh-chip.is-missing {
  border-style: dashed;
  color: var(--muted);
}

.zh-chip.is-missing[aria-pressed="true"] { color: #fff; }

.zh-chip-tag {
  font-size: 11px;
  margin-left: 4px;
  opacity: 0.7;
}

.zh-preview {
  margin-top: 12px;
  padding: 16px 18px;
  min-height: 92px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  font-size: 32px;
  line-height: 1.55;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.zh-font-note[hidden] { display: none; }

/* 每款字体的实际字族；系统字体均带后备，缺字体时不会变成方框 */
.zh-preview[data-font="noto-serif"] { font-family: "ZH Song", "Noto Serif SC", "Songti SC", "SimSun", serif; }
.zh-preview[data-font="noto-sans"] { font-family: "ZH Hei", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif; }
.zh-preview[data-font="xiaowei"] { font-family: "ZH XiaoWei", "Songti SC", "SimSun", serif; }
.zh-preview[data-font="kuaile"] { font-family: "ZH KuaiLe", "YouYuan", "Yuanti SC", sans-serif; }
.zh-preview[data-font="huangyou"] { font-family: "ZH HuangYou", "Microsoft YaHei", sans-serif; }
.zh-preview[data-font="maokai"] { font-family: "ZH MaoKai", "KaiTi", "Kaiti SC", cursive; }
.zh-preview[data-font="xing"] { font-family: "ZH Xing", "KaiTi", "Kaiti SC", cursive; }
.zh-preview[data-font="longcang"] { font-family: "ZH LongCang", "KaiTi", "Kaiti SC", cursive; }
.zh-preview[data-font="maocao"] { font-family: "ZH MaoCao", "KaiTi", "Kaiti SC", cursive; }
.zh-preview[data-font="kai"] { font-family: "KaiTi", "Kaiti SC", "STKaiti", "KaiTi_GB2312", serif; }
.zh-preview[data-font="fangsong"] { font-family: "FangSong", "Fangsong SC", "STFangsong", "FangSong_GB2312", serif; }
.zh-preview[data-font="lishu"] { font-family: "LiSu", "STLiti", "Baoli SC", "STXinwei", serif; }
.zh-preview[data-font="youyuan"] { font-family: "YouYuan", "Yuanti SC", "STYuanti", sans-serif; }
.zh-preview[data-font="yahei"] { font-family: "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif; }
.zh-preview[data-font="mono"] { font-family: "Sarasa Mono SC", "Noto Sans Mono CJK SC", "WenQuanYi Zen Hei Mono", ui-monospace, monospace; }

/* ---------- 中文样式行：中文没有 Unicode 花体字符，用字体效果近似 ---------- */

.style-out .zh-bold { font-weight: 700; }
.style-out .zh-italic { font-style: italic; }
.style-out .zh-hand { font-family: "KaiTi", "Kaiti SC", "STKaiti", "KaiTi_GB2312", cursive; }
.style-out .zh-old { font-family: "LiSu", "STLiti", "Baoli SC", "STXinwei", serif; }
.style-out .zh-mono { font-family: "Sarasa Mono SC", "Noto Sans Mono CJK SC", ui-monospace, monospace; }
/* 空心效果需要描边支持，不支持的浏览器保持普通填充，避免文字变成不可见 */
@supports ((-webkit-text-stroke: 1px #000) or (text-stroke: 1px #000)) {
  .style-out .zh-hollow {
    color: transparent;
    -webkit-text-stroke: 1px var(--ink);
    text-stroke: 1px var(--ink);
  }
}

/* 中文输入时的提示行 */
.zh-hint[hidden] { display: none; }

@media (max-width: 640px) {
  .zh-preview { font-size: 24px; padding: 12px 14px; }
  .zh-chip { font-size: 13px; padding: 8px 10px; }
}
