/*
 * 字体声明。
 *
 * 设计稿原本自带 6 个苹方（PingFang SC）woff2，每个约 5 MB、合计 31 MB。
 * 这两点都不能上线：
 *   1. 苹方是苹果的系统字体，把字体文件放在自己服务器上分发不符合授权；
 *   2. 一个页面拉几 MB 字体，首屏会被明显拖慢。
 *
 * 所以改成只用 local()：苹果设备直接取系统里已有的苹方，渲染和设计稿一致；
 * 其他系统按顺序落到微软雅黑、思源黑体这类等价字重上。
 *
 * 关键在于回退写在 @font-face 里而不是各处的 font-family：css.css 里像
 * `.lang-cn .ff-bold{font-family:'PingFangSC-Semibold'}` 这种规则只写了一个
 * 字族名，没有回退，字体加载不到就会掉到浏览器默认字体（常常是宋体）。
 * 把等价字体列进同一个 @font-face 的 src，css.css 一个字都不用改。
 *
 * 原始 woff2 仍保留在 doc/xuyong/skins/fonts/ 里；将来若买到可嵌入授权的
 * 中文字体，把文件放回 assets/fonts/ 并在对应 @font-face 补一行 url() 即可。
 *
 * Roboto 是 Apache License 2.0，可自由分发，照旧自托管。
 */


/* 苹方-简 极细体 */
@font-face {
	font-family: 'PingFangSC-Ultralight';
	src: local('PingFang SC Ultralight'),
	     local('PingFangSC-Ultralight'),
	     local('Microsoft YaHei Light'),
	     local('Hiragino Sans GB W3'),
	     local('Source Han Sans SC ExtraLight'),
	     local('Noto Sans CJK SC Thin');
	font-display: swap;
}

/* 苹方-简 纤细体 */
@font-face {
	font-family: 'PingFangSC-Thin';
	src: local('PingFang SC Thin'),
	     local('PingFangSC-Thin'),
	     local('Microsoft YaHei Light'),
	     local('Hiragino Sans GB W3'),
	     local('Source Han Sans SC Light'),
	     local('Noto Sans CJK SC Light');
	font-display: swap;
}

/* 苹方-简 细体 */
@font-face {
	font-family: 'PingFangSC-Light';
	src: local('PingFang SC Light'),
	     local('PingFangSC-Light'),
	     local('Microsoft YaHei Light'),
	     local('Hiragino Sans GB W3'),
	     local('Source Han Sans SC Light'),
	     local('Noto Sans CJK SC Light');
	font-display: swap;
}

/* 苹方-简 常规体 */
@font-face {
	font-family: 'PingFangSC-Regular';
	src: local('PingFang SC'),
	     local('PingFangSC-Regular'),
	     local('Microsoft YaHei'),
	     local('Hiragino Sans GB'),
	     local('Source Han Sans SC'),
	     local('Noto Sans CJK SC');
	font-display: swap;
}

/* 苹方-简 中黑体 */
@font-face {
	font-family: 'PingFangSC-Medium';
	src: local('PingFang SC Medium'),
	     local('PingFangSC-Medium'),
	     local('Microsoft YaHei'),
	     local('Hiragino Sans GB W6'),
	     local('Source Han Sans SC Medium'),
	     local('Noto Sans CJK SC Medium');
	font-display: swap;
}

/* 苹方-简 中粗体 */
@font-face {
	font-family: 'PingFangSC-Semibold';
	src: local('PingFang SC Semibold'),
	     local('PingFangSC-Semibold'),
	     local('Microsoft YaHei Bold'),
	     local('Hiragino Sans GB W6'),
	     local('Source Han Sans SC Bold'),
	     local('Noto Sans CJK SC Bold');
	font-display: swap;
}

/*
 * Roboto 服务的是 latin + latin-ext 子集的 woff2，不是原始 ttf。
 * 原始 ttf 每个约 160 KB（首页要两个＝178 KB），子集 woff2 每个 23 KB。
 * ttf 留在 src 末尾，只有拿不到 woff2 的老浏览器才会去取；文件本身也是
 * 重新生成子集的母本：
 *
 *   python3 -m fontTools.subset assets/fonts/Roboto-Regular.ttf \
 *     --unicodes='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,U+0100-02AF,U+1E00-1E9F,U+1EF2-1EFF,\
 *                 U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF' \
 *     --layout-features='kern,liga,clig,calt' --drop-tables+=DSIG \
 *     --flavor=woff2 --output-file=assets/fonts/Roboto-Regular.woff2
 *
 * 只覆盖拉丁字母：Roboto 在这套设计里只用于英文和数字，中文走苹方那几个族。
 */

@font-face {
	font-family: 'Roboto-Regular';
	src: url('../fonts/Roboto-Regular.woff2') format('woff2'),
	     url('../fonts/Roboto-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Roboto-Bold';
	src: url('../fonts/Roboto-Bold.woff2') format('woff2'),
	     url('../fonts/Roboto-Bold.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Roboto-Medium';
	src: url('../fonts/Roboto-Medium.woff2') format('woff2'),
	     url('../fonts/Roboto-Medium.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Roboto_Condensed-Bold';
	src: url('../fonts/Roboto_Condensed-Bold.woff2') format('woff2'),
	     url('../fonts/Roboto_Condensed-Bold.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
