/* 自托管字体：让 Web 端和 APK WebView 渲染保持一致。
   Google Fonts 在 APK 里走 https://fonts.gstatic.com 时受国内网络/国产 ROM 影响，
   常常加载失败而退到系统字体，结果同一个 "念心" 字样 Web 是楷意、APK 是黑体。
   把字符子集（一念心学堂自我吾身…）打成 21 KB woff2 自带，问题就根除了。 */

@font-face {
  font-family: 'Ma Shan Zheng';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  /* 路径用绝对：APK 里 SPA 在子路由时相对路径会解错（学堂打不开同款原因） */
  src: url('/fonts/MaShanZheng-subset.woff2') format('woff2');
  /* 关键：unicode-range 必须只覆盖子集里【真正含有】的 56 个字形。
     若声明整个 CJK 区(U+4E00-9FFF)，浏览器会认为本字体覆盖所有汉字，于是任何"子集外"的汉字
     (权限页/动态标题等)用本字体渲染时不回退系统楷体 → 显示成豆腐方框(□)。收窄后子集外的字正常回退。 */
  unicode-range: U+4E00, U+4E0A, U+4E0B, U+4E2D, U+4E4B, U+4E4E, U+4E5F, U+4E7E, U+4ECA, U+4EEA, U+4FEE, U+5149, U+5165, U+5173, U+524D, U+5360, U+5366, U+53E4, U+540E, U+543E, U+5730, U+5802, U+5927, U+5929, U+5B66, U+5BFB, U+5C71, U+5E08, U+5EA7, U+5F00, U+5FC3, U+5FF5, U+601D, U+6210, U+6211, U+65F6, U+6C34, U+6CFD, U+706B, U+76DF, U+77E5, U+8005, U+81EA, U+884C, U+89E3, U+8A00, U+8D77, U+8EAB, U+9053, U+949F, U+957F, U+95EE, U+96E8, U+96F7, U+9759, U+98CE;
}
