/* fonts.en.css — scripts/build_fonts.py の生成物。直接編集しない (再生成で失われる)。
 * en のページが実際に使う書体宣言だけを収めたロケール別 CSS。
 * (⚠️ このコメントに at-font-face の綴りを書かないこと — 宣言の数を素朴に grep で
 *  数える道具が 1 件多く見積もる。実際に計測スクリプトが引っかかった)
 * 実使用文字だけを収めた自前 woff2 をセルフホスト (Google Fonts 依存なし)。
 * unicode-range で UI / 本文 に分割してあり、ブラウザはそのページに出る文字を含む
 * スライスだけを取得する (Google Fonts と同じ仕組みを 100 分割ではなく 2 分割で)。
 * どの face をどのロケールへ載せるかは build_fonts.py が書体スタックから機械的に決める。
 * 読み込みは src/layouts/Base.astro / Reader.astro の <link>、名前の受け渡しは
 * src/data/fonts-manifest.json。ライセンス: SIL OFL 1.1 — public/fonts/OFL.txt */

/* EB Garamond 400i / ui — 115 字 / 14,148 B */
@font-face {
  font-family: 'EB Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ebgaramond-400i-ui.a8f046a9.woff2') format('woff2');
  unicode-range: U+20-7E,U+B7,U+2010,U+2013-2015,U+2018-2019,U+201C-201D,U+2020,U+2025-2026,U+2190-2193,U+3008-300B;
}

/* EB Garamond 400 / ui — 117 字 / 13,744 B */
@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ebgaramond-400-ui.af63a672.woff2') format('woff2');
  unicode-range: U+20-7E,U+B7,U+14D,U+16B,U+2010,U+2013-2015,U+2018-2019,U+201C-201D,U+2020,U+2025-2026,U+2190-2193,U+3008-300B;
}

/* EB Garamond 400 / prose — 2 字 / 1,144 B */
@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ebgaramond-400-prose.24c9a21f.woff2') format('woff2');
  unicode-range: U+E9,U+12B;
}

/* Zen Kaku Gothic New 400 / ui — 808 字 / 95,560 B */
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/zenkakugothicnew-400-ui.e1571d79.woff2') format('woff2');
  unicode-range: U+20-7E,U+A9,U+B7,U+D7,U+2010,U+2013-2014,U+2018-2019,U+201C-201D,U+2025-2026,U+203B,U+2190-2193,U+2212,U+25A0,U+25BC,U+3000-3002,U+3005,U+3007-3011,U+3013-3015,U+301C,U+3042,U+3044,U+3046,U+3048,U+304A-304D,U+304F-3055,U+3057-3061,U+3063-3064,U+3066-306B,U+306D-3070,U+3072-3073,U+3075-3079,U+307B,U+307E-3082,U+3084,U+3086-308C,U+308F,U+3092-3093,U+30A1-30A4,U+30A6-30AD,U+30AF-30B1,U+30B3-30B5,U+30B7-30BB,U+30BF-30C1,U+30C3-30C4,U+30C6-30CA,U+30CD-30D8,U+30DA-30DC,U+30DE-30E3,U+30E5,U+30E7-30ED,U+30EF,U+30F3,U+30FB-30FC,U+4E00,U+4E03,U+4E07,U+4E09-4E0B,U+4E0D-4E0E,U+4E16,U+4E21,U+4E2D,U+4E3B,U+4E86,U+4E89,U+4E8B-4E8C,U+4E94,U+4EA1,U+4EA4,U+4EBA,U+4ECA-4ECB,U+4ED4-4ED5,U+4ED8,U+4EE3,U+4EE5,U+4EFB,U+4F10,U+4F1A,U+4F1D,U+4F4D,U+4F53,U+4F55,U+4F5C,U+4F7F,U+4F8B,U+4F9D,U+4FDD,U+4FE1,U+505C,U+5074,U+5099,U+50CF,U+5143-5144,U+5148-5149,U+5165,U+5168,U+516B-516D,U+5175,U+5177,U+518D,U+5192,U+5199,U+51FA,U+5203,U+5206-5207,U+520A,U+5230,U+5236,U+523B,U+524D,U+5263,U+526F,U+5275,U+5287,U+529B,U+52A0,U+52A9,U+52C7,U+52D5,U+52DF,U+52E2,U+5316,U+533A-533B,U+5341,U+5343,U+534A,U+5353,U+5357,U+5370,U+5375,U+539F,U+53BB,U+53CE,U+53D6-53D7,U+53E3,U+53EA,U+53EF-53F0,U+53F2-53F3,U+5408,U+540C-540D,U+5411,U+5426,U+5439,U+5473,U+547C-547D,U+548C,U+54C1,U+54E1,U+554F,U+56DB,U+56DE,U+56E0,U+56F0,U+56FD,U+5728,U+5730,U+578B,U+57F7,U+57FA,U+5831,U+5875,U+5883,U+58EB,U+58F0,U+58F2,U+5909,U+5915-5916,U+591A,U+591C,U+5927,U+5929,U+5931,U+5947,U+5973,U+5996,U+59B9,U+59C9,U+59CB,U+59D4,U+59FF,U+5A01,U+5A18,U+5B50,U+5B57-5B58,U+5B66,U+5B87-5B89,U+5B8C,U+5B98-5B9A,U+5B9F,U+5BA3,U+5BB6,U+5BBF,U+5BC4,U+5BC6,U+5BDF,U+5BFE-5BFF,U+5C02,U+5C0B,U+5C0F,U+5C11,U+5C4A,U+5C5E,U+5DE3,U+5DE5,U+5DE8,U+5DEE,U+5DFB,U+5E2B,U+5E74,U+5E7B-5E7D,U+5E97,U+5EA6-5EA7,U+5F0F,U+5F15,U+5F37,U+5F53,U+5F62,U+5F69,U+5F71,U+5F7C,U+5F85,U+5F8C,U+5F93,U+5FA9,U+5FC3,U+5FD7-5FD8,U+6016,U+601D,U+6050,U+6065,U+606F,U+60C5,U+60D1,U+60F3,U+610F,U+611F,U+6210,U+6226,U+623B,U+6249,U+624B,U+624D,U+6253,U+627E-627F,U+6295,U+6297,U+629C,U+629E,U+62D2,U+6301,U+6307,U+6311,U+6355,U+6388,U+63A2,U+63B2,U+63CF,U+653E,U+6545,U+6551,U+6557,U+656C,U+6570,U+6587,U+6599,U+65AD,U+65B0,U+65B9,U+65C5,U+65CF,U+65E2,U+65E5,U+65E9,U+6602,U+660E,U+661F-6620,U+6642,U+666F,U+6691,U+66AE,U+66F8,U+66FE-6700,U+6708-6709,U+6717,U+671D,U+672A,U+672C,U+675F,U+6761,U+6765,U+677F,U+67CA,U+6839,U+683C,U+685C,U+68B0,U+68D2,U+696D,U+6975,U+697D,U+69CB,U+6A19,U+6A2A,U+6A4B,U+6A5F,U+6B21,U+6B4C,U+6B4E,U+6B62-6B63,U+6B73-6B74,U+6B7B,U+6B8A-6B8B,U+6BBA,U+6BCD-6BCE,U+6BD2,U+6C11,U+6C17,U+6C7A,U+6CBB,U+6CD5,U+6D0B,U+6D3B,U+6D41,U+6D74,U+6D77,U+6D99,U+6E21,U+6E96,U+706F,U+70B9,U+7121,U+7136,U+713C,U+7167,U+7236,U+7247-7248,U+7269,U+7279,U+72B6,U+72D0,U+72EC,U+72FC,U+731B,U+7363,U+738B,U+73FE,U+7403,U+7406,U+751F,U+7528,U+754C,U+7559,U+7570,U+7642,U+767A,U+767D-767E,U+7684,U+76EE,U+76F4,U+76F8,U+770B,U+771F-7720,U+77E5,U+77ED,U+78BA,U+78E8,U+790E,U+793A,U+793C,U+793E,U+7956,U+795E,U+7968,U+7981,U+79D1,U+79D8,U+79F0,U+79FB,U+7A3C,U+7A3F,U+7A7A,U+7A81,U+7A93,U+7ACB,U+7AE0,U+7B2C,U+7B46,U+7B4B,U+7B54,U+7C21,U+7C8B,U+7CBE,U+7D00,U+7D04,U+7D14,U+7D19,U+7D22,U+7D30,U+7D42,U+7D44,U+7D50,U+7D61,U+7D99-7D9A,U+7DCB,U+7DDA,U+7DE8,U+7DF4,U+7E26,U+7E41,U+7E54,U+7E70,U+7F6E,U+7FA4,U+7FA9,U+7FFB,U+8001,U+8003,U+8005,U+8074,U+80CC,U+80FD,U+811A,U+81D3,U+81EA,U+820C,U+821E,U+82BD,U+82F1,U+8336,U+8349,U+83EF,U+8449,U+8457,U+8535,U+8840,U+884C,U+8868,U+88CF,U+8981,U+898B,U+898F,U+89A7,U+89AA,U+89B3,U+89E3,U+8A00,U+8A08,U+8A0E,U+8A13,U+8A18,U+8A2D,U+8A33,U+8A3C,U+8A66,U+8A71,U+8A8D,U+8A9E,U+8AA4,U+8AAC-8AAD,U+8AB0,U+8ABF,U+8AD6,U+8AF8,U+8B1D,U+8B66,U+8B70,U+8B77,U+8C61,U+8C8C,U+8CA7,U+8CAC,U+8CC7,U+8CDB,U+8CEA,U+8D77,U+8D8A,U+8DA3,U+8DE1,U+8E8D,U+8EAB,U+8EE2,U+8EF8,U+8F09,U+8FBC,U+8FD1,U+8FD4,U+8FEB,U+9000-9001,U+9014,U+901A,U+901F,U+9023,U+9032,U+904E,U+9053-9054,U+9060,U+9078,U+9084,U+90E8,U+90FD,U+91CD-91CF,U+91D1,U+9280,U+9320,U+93E1,U+9577,U+958B,U+9593,U+95A2,U+95D8,U+9650,U+967A,U+968A,U+96A0,U+96C4,U+96C6,U+96E3,U+96F7,U+9759,U+9762,U+97F3,U+9801,U+983C,U+9858,U+985E,U+98A8,U+98DF,U+990A,U+9996,U+9A13,U+9AC4,U+9AD4,U+9AD8,U+9B54,U+9BE8,U+9D28,U+9ED2,U+9F62,U+FF01,U+FF05-FF06,U+FF08-FF0C,U+FF0E-FF0F,U+FF1A-FF1B,U+FF1D,U+FF1F-FF20,U+FF5C;
}

/* EB Garamond 400 に無い字を Noto Sans SC で肩代わり — 33 字 / 4,584 B */
@font-face {
  font-family: 'EB Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ebgaramond-400i-patch-notosanssc-400.26ace7f9.woff2') format('woff2');
  unicode-range: U+203B,U+3000-3002,U+300C-3011,U+3013-3015,U+30FB-30FC,U+FF01,U+FF05-FF06,U+FF08-FF0F,U+FF1A-FF1B,U+FF1D,U+FF1F-FF20,U+FF5C,U+FF5E;
}

/* EB Garamond 400 に無い字を Noto Sans SC で肩代わり — 96 字 / 17,280 B */
@font-face {
  font-family: 'EB Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/ebgaramond-400-patch-notosanssc-400.1ae4b338.woff2') format('woff2');
  unicode-range: U+203B,U+266A,U+3000-3002,U+300C-3011,U+3013-3015,U+301C,U+3044,U+304A-304B,U+304F,U+3051,U+3053,U+3055,U+3057,U+3059,U+305F-3060,U+3063,U+3066-3067,U+306A-306B,U+306E-306F,U+307E-307F,U+3089,U+3092-3093,U+30A8,U+30AF,U+30B3,U+30B9,U+30C8-30C9,U+30CD,U+30CF,U+30E0-30E1,U+30EA-30EB,U+30F3,U+30FB-30FC,U+4E0D,U+4EBA,U+4F5C,U+5165,U+518D,U+529B,U+53EA,U+54C1,U+5931,U+5B57,U+5F85,U+6295,U+6557,U+6B63,U+78BA,U+7968,U+7D9A,U+7DCB,U+8A66,U+8A8D,U+8AAD,U+8FBC,U+9078,U+91CE,U+9858,U+FF01,U+FF05-FF06,U+FF08-FF0F,U+FF1A-FF1B,U+FF1D,U+FF1F-FF20,U+FF5C,U+FF5E;
}

/* Zen Kaku Gothic New 400 に無い字を Noto Sans SC で肩代わり — 23 字 / 5,244 B */
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/fonts/zenkakugothicnew-400-patch-notosanssc-400.93c94f9b.woff2') format('woff2');
  unicode-range: U+2015,U+2020,U+203C,U+2048-2049,U+4E3A,U+521B,U+52A8,U+541E,U+5653,U+5699,U+5E26,U+6414,U+7B80,U+89C1,U+8BB2,U+8C01,U+8FC7,U+94ED,U+9875,U+9898,U+FF0D,U+FF5E;
}

/* 流れるテキスト (キャラクターズ・ヴォイス / 投稿コメント) はシステム書体に委ねる。
 * 理由: ①ヴォイスだけで 1,500 字超 = 専用スライス 400 KB 級になり、トップの装飾行に対して
 * 割が合わない ②投稿コメントは来訪者の自由入力でそもそもサブセット化できない
 * ③中途半端に当てると 1 行の中で書体が混ざる。ブランド書体は著者が書いた版面に集中させる。 */
.tick-item { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans GB", "Noto Sans JP", "Yu Gothic", "Meiryo", "Microsoft YaHei", "PingFang SC", sans-serif; }
