/**
 * 全站统一字体（同源 subset WOFF2，避免 OSS 跨域 CORS 拦截）
 * 视觉：Noto Sans SC ≡ Source Han Sans SC
 * 路径相对本 CSS（css/ → ../assets/fonts/subset/）
 * cache: nofontcdn-20260914
 */

/* —— Latin —— */
@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/latin-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/latin-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/latin-700-normal.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/latin-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  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+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* —— 简体中文（含 CJK 标点 / 全角） —— */
@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/chinese-simplified-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/chinese-simplified-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
  unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/chinese-simplified-700-normal.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
  unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}

@font-face {
  font-family: "Source Han Sans SC";
  src: url("../assets/fonts/subset/chinese-simplified-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
  unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF;
}

:root {
  --font-zh: "Source Han Sans SC", "思源黑体", "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-en: "Source Han Sans SC", "思源黑体", "Noto Sans SC", "Helvetica Neue", Helvetica, Arial, sans-serif;

  --font-serif: var(--font-en);
  --font-sans: var(--font-en);
  --font-display: var(--font-en);
  --font-brand-zh: var(--font-zh);
  --font-misans: var(--font-zh);
  --font-hero-title: var(--font-en);
}

html.lang-zh,
.lang-zh {
  --font-serif: var(--font-zh);
  --font-sans: var(--font-zh);
  --font-display: var(--font-zh);
  --font-brand-zh: var(--font-zh);
  --font-misans: var(--font-zh);
  --font-hero-title: var(--font-zh);
}

html.lang-en,
.lang-en {
  --font-serif: var(--font-en);
  --font-sans: var(--font-en);
  --font-display: var(--font-en);
  --font-hero-title: var(--font-en);
}

/* 字体就绪后标题强制走统一栈（防系统回退） */
html.is-serif-font-ready #highlights .media-card__title,
html.is-serif-font-ready #highlights .media-card--maw .media-card__title,
body.lang-zh #highlights .media-card__title,
body.lang-zh #highlights .media-card--maw .media-card__title {
  font-family: var(--font-zh) !important;
  font-synthesis: none;
}
