/* ============================================================
   广微课堂 · 字体语义层
   ------------------------------------------------------------
   组件只引用语义变量，不直接写字体名：
     --font-en          英文正文 / 常规题目 / 标题强调 (KIDS Text，粗体用于标题)
     --font-zh          中文                     (汉仪正圆)
     --font-hand        模拟手写答案             (Sassoon Primary)
     --font-trace       四线三格书写练习         (外研版英文体)

   另有一个组合别名，供中英混排使用：
     --font-ui          英文栈 + 中文栈（正文/界面/题干）
   注意：英文栈结尾不能放 sans-serif，否则会先截住中文，
   中文就永远到不了 --font-zh。所以栈（stack）与最终变量分开定义。

   换字体只改本文件的 @font-face 与 *-stack；system 模式用于对比与兜底。
   字体版权与来源见 fonts/README.md，禁止外传。
   ============================================================ */

@font-face{
  font-family:"GW Kids Text";
  src:url("kids-text-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW Kids Text";
  src:url("kids-text-bold.woff2") format("woff2");
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW HYZhengYuan";
  src:url("hyzhengyuan-55w-subset.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW HYZhengYuan";
  src:url("hyzhengyuan-75w-subset.woff2") format("woff2");
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW Sassoon Primary";
  src:url("sassoon-primary-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW Sassoon Primary";
  src:url("sassoon-primary-bold.woff2") format("woff2");
  font-weight:700;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW Sassoon Infant";
  src:url("sassoon-infant-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW Sassoon Sans";
  src:url("sassoon-sans-regular.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}
@font-face{
  font-family:"GW WaiYanBan Trace";
  src:url("waiyanban-trace.woff2") format("woff2");
  font-weight:400;font-style:normal;font-display:swap;
}

/* 默认：广微字体方案。字体名只出现在这里。 */
:root, html[data-fontmode="gw"]{
  --font-zh-stack:"GW HYZhengYuan","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC";
  --font-en-stack:"GW Kids Text","Trebuchet MS","Arial Rounded MT Bold","Helvetica Neue",Arial;
  --font-hand-stack:"GW Sassoon Primary","Chalkboard SE","Comic Sans MS","Marker Felt","PingFang SC";
  --font-trace-stack:"GW WaiYanBan Trace","GW Kids Text","Trebuchet MS","Arial","PingFang SC";

  --font-en:var(--font-en-stack),sans-serif;
  --font-zh:var(--font-zh-stack),sans-serif;
  --font-hand:var(--font-hand-stack),sans-serif;
  --font-trace:var(--font-trace-stack),sans-serif;
  --font-ui:var(--font-en-stack),var(--font-zh-stack),sans-serif;
}

/* 手写体可选档位：Primary（默认）/ Infant（低龄）/ Sans（备用）。 */
html[data-hand="infant"]{
  --font-hand-stack:"GW Sassoon Infant","Chalkboard SE","Comic Sans MS","PingFang SC";
}
html[data-hand="sans"]{
  --font-hand-stack:"GW Sassoon Sans","Chalkboard SE","Comic Sans MS","PingFang SC";
}

/* 对比 / 兜底：系统字体，不加载任何 woff2。 */
html[data-fontmode="system"]{
  --font-zh-stack:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC";
  --font-en-stack:"Trebuchet MS","Arial Rounded MT Bold","Helvetica Neue",Arial;
  --font-hand-stack:"Chalkboard SE","Comic Sans MS","Marker Felt","PingFang SC";
  --font-trace-stack:"Courier New","PingFang SC";
}
