/* 游戏用的字：**俐方体11号（Cubic 11）** ＋ 一小块後备
   ——————————————————————————————————————————————————————————————————————
   为什么单独一个档：这两条 `@font-face` 要被**三个入口**同时吃到（index.html 的游戏、
   admin.html 的後台、以及 build 出来的单文件版），但它们不能写进 css/admin.css ——
   tools/build.mjs 会把 admin.css 的每一条选择器都加上 `#adminRoot` 前缀，
   `@font-face{` 会被前缀成 `#adminRoot font-face{`，整块就废了。
   所以宣告放这里，两个 html 各自 link，单文件版由 build.mjs 把它连着字体一起内嵌。

   ── 为什么有两套 ──
   主字体是俐方体11号（她挑的）。它比上一套「缝合像素」好读：字身高一点、笔画开一点，
   同样 12px 就清楚不少。但它是**繁体为主**的字体，有两块洞正好打在这个游戏上：
     ① 6 个简体字：咂 噜 炖 绯 锏 飙（「该亲亲我噜」、「绯红团」、炖菜、剧情各一处）
     ② 18 个韩文字：金小葵讲话夹韩文（「괜찮아～」「맛있겠다」…），他一开口就是这些
   这 24 个字若退回系统字体，一句话里会混两种字（一边点阵一边苹方），非常显眼。
   所以留上一套当**後备**，只切那 24 个字 —— 才 2KB。

   两套的格子完全一样（unitsPerEm=1200、一个设计像素 100 单位），所以後备字形一样锐利、
   一样对得上萤幕的像素格。唯一差别是字宽：俐方体的汉字 13 设计px、缝合像素 12 ——
   那 24 个字会窄一格，几乎看不出来。

   授权：俐方体11号是自由字体（可商用、可修改、可散布；subset 属於修改，明文允许），
   全文在 assets/font-LICENSE.txt。後备那套是 OFL-1.1，全文在
   assets/font-fallback-LICENSE.txt。两份都跟着字体一起散布。
   怎么切的见 tools/buildfont.py。

   字号要清楚必须对齐点阵格 —— 两套字都是一个设计像素 = em/12，
   所以 font-size × dpr 要是 12 的倍数。css/game.css 的 :root 那一段有完整说明与字号表。 */

/* 点阵字只有一个粗细。这两行 `font-weight:100 900` 是**故意**把整段 weight 都认领下来，
   为的是关掉浏览器的「合成假粗体」—— 只宣告 400 的话，这个游戏满地的
   font-weight:700/800 会让浏览器自己把字横向糊开一点来假装粗体，点阵字一糊边就全毛了。
   代价：粗体与一般体长得一样，层级改由字号与颜色承担（.hint 本来就比较小又是 --muted）。
   想要更粗的话 css/game.css 的 --px-bold 那一段有个一行开关。 */
@font-face{
  font-family:'Cubic11';
  src:url('../assets/font.woff2?v=131') format('woff2');
  font-weight:100 900;
  font-style:normal;
  font-display:swap;     /* 75KB，境内手机大概几百毫秒。swap＝先用系统字顶着、到了就换；
                            block 会让字先空白一段，游戏里更难看。 */
}
@font-face{
  font-family:'FusionPixel';
  src:url('../assets/font-fallback.woff2?v=131') format('woff2');
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
  /* 只有主字体缺的那 24 个字（6 简体 ＋ 18 韩文）与几个符号。
     unicode-range 是效能优化也是保险：明确告诉浏览器「其他字别来问我」，
     免得它在主字体还没到的那几百毫秒里拿这一小包去凑整页的字。 */
  unicode-range:U+54C2, U+565C, U+7096, U+7EEF, U+94CF, U+98D9, U+AC00-D7AF;
}
