/* Chinese pages (site/zh/): loaded last, after every other stylesheet.
   The Latin faces stay first so numbers, model names and "B = f(P, E)" keep
   the house look; Chinese glyphs fall through to the system CJK face.
   Tight negative tracking suits Latin display type, not Hanzi, so headings
   go back to normal spacing and body copy gets a little more line height. */

:root { --zh-sans: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Noto Sans SC', 'Source Han Sans SC', sans-serif; }

html[lang="zh-CN"] body,
html[lang="zh-CN"] .font-body,
html[lang="zh-CN"] p, html[lang="zh-CN"] li, html[lang="zh-CN"] td, html[lang="zh-CN"] th,
html[lang="zh-CN"] dd, html[lang="zh-CN"] dt, html[lang="zh-CN"] label, html[lang="zh-CN"] input,
html[lang="zh-CN"] textarea, html[lang="zh-CN"] select, html[lang="zh-CN"] button, html[lang="zh-CN"] summary {
  font-family: 'Manrope', var(--zh-sans);
}
html[lang="zh-CN"] h1, html[lang="zh-CN"] h2, html[lang="zh-CN"] h3, html[lang="zh-CN"] h4,
html[lang="zh-CN"] .font-headline, html[lang="zh-CN"] .font-display {
  font-family: 'Space Grotesk', var(--zh-sans);
  letter-spacing: 0 !important;
  word-break: normal;
  line-break: strict;
}
html[lang="zh-CN"] h1 { line-height: 1.2; }
html[lang="zh-CN"] h2, html[lang="zh-CN"] h3 { line-height: 1.3; }

/* uppercase tracked labels read as spaced-out Hanzi; keep them compact */
html[lang="zh-CN"] [class*="uppercase"],
html[lang="zh-CN"] [class*="tracking-"] { letter-spacing: .06em; }

html[lang="zh-CN"] .prose-article p,
html[lang="zh-CN"] .prose-article li { line-height: 1.9; letter-spacing: .01em; }
html[lang="zh-CN"] .prose-article .lede { font-style: normal; }

/* Chinese has no italics */
html[lang="zh-CN"] em, html[lang="zh-CN"] i:not(.material-symbols-outlined) { font-style: normal; }

/* the note on translated legal pages */
.zh-legal-note { margin: 18px 0 0; padding: 12px 16px; color: #aebacd; font-size: 13.5px; line-height: 1.7;
                 background: #0f1b29; border: 1px solid #22344a; border-radius: 12px; }
.zh-legal-note a { color: #6dddff; text-decoration: underline; text-underline-offset: 3px; }

/* table headers are short in Chinese; keep them on one line rather than one
   character per line in a narrow column */
html[lang="zh-CN"] .prose-article .art-table thead th { white-space: nowrap; word-break: keep-all; }
html[lang="zh-CN"] .prose-article .art-score thead th { white-space: normal; }
