/* ============================================================
   Yojo+ — Self-hosted webfonts
   ------------------------------------------------------------
   日本語フォント（Shippori Mincho / Noto Sans JP）は、現在のコピーに
   含まれる文字＋かな・英数・約物一式にサブセット化してあります。
   コピーを大きく変更して字形が欠けた場合は、次を再実行してください：

       npm i @fontsource/shippori-mincho @fontsource/noto-sans-jp
       python3 tools/subset-fonts.py

   サブセットを使わず Google Fonts CDN から配信したい場合は、各 HTML の
   <head> にコメントアウトしてある <link> を有効化し、この fonts.css の
   読み込みを外してください。
   ============================================================ */

/* ---- EB Garamond (display / EN) ---- */
@font-face {
  font-family: "EB Garamond";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/eb-garamond-latin-400-normal.woff2") format("woff2");
  unicode-range: 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;
}
@font-face {
  font-family: "EB Garamond";
  font-style: normal; font-weight: 500; font-display: swap;
  src: url("../assets/fonts/eb-garamond-latin-500-normal.woff2") format("woff2");
}
@font-face {
  font-family: "EB Garamond";
  font-style: italic; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/eb-garamond-latin-400-italic.woff2") format("woff2");
}

/* ---- Jost (UI labels / small caps) ---- */
@font-face {
  font-family: "Jost";
  font-style: normal; font-weight: 300; font-display: swap;
  src: url("../assets/fonts/jost-latin-300-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Jost";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/jost-latin-400-normal.woff2") format("woff2");
}
@font-face {
  font-family: "Jost";
  font-style: normal; font-weight: 500; font-display: swap;
  src: url("../assets/fonts/jost-latin-500-normal.woff2") format("woff2");
}

/* ---- Shippori Mincho (display / JA) — subset ---- */
@font-face {
  font-family: "Shippori Mincho";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/shippori-mincho-400.woff2") format("woff2");
}
@font-face {
  font-family: "Shippori Mincho";
  font-style: normal; font-weight: 500; font-display: swap;
  src: url("../assets/fonts/shippori-mincho-500.woff2") format("woff2");
}

/* ---- Noto Sans JP (body / JA) — subset ---- */
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal; font-weight: 300; font-display: swap;
  src: url("../assets/fonts/noto-sans-jp-300.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/noto-sans-jp-400.woff2") format("woff2");
}

/* ============================================================
   簡体字（zh-Hans）— subset
   フルセットは1書体 5〜10MB あります。必ず tools/subset-fonts.py 経由で
   生成したものを置いてください。unicode-range は付けません
   （サブセット済みなので、当たれば全部必要な字です）。
   ============================================================ */
@font-face {
  font-family: "Noto Serif SC";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/noto-serif-sc-400.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Serif SC";
  font-style: normal; font-weight: 500; font-display: swap;
  src: url("../assets/fonts/noto-serif-sc-500.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans SC";
  font-style: normal; font-weight: 300; font-display: swap;
  src: url("../assets/fonts/noto-sans-sc-300.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans SC";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/noto-sans-sc-400.woff2") format("woff2");
}

/* ============================================================
   アラビア語（ar）— subset
   ★ アラビア文字は連結書体です。サブセット時に OpenType feature
   （init / medi / fina / isol / rlig / liga / mark / mkmk）を落とすと
   字が1つずつ分離して表示されます。tools/subset-fonts.py は
   --layout-features='*' を必ず渡しています。無効化しないでください。
   ============================================================ */
@font-face {
  font-family: "Noto Naskh Arabic";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/noto-naskh-arabic-400.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Naskh Arabic";
  font-style: normal; font-weight: 500; font-display: swap;
  src: url("../assets/fonts/noto-naskh-arabic-500.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans Arabic";
  font-style: normal; font-weight: 300; font-display: swap;
  src: url("../assets/fonts/noto-sans-arabic-300.woff2") format("woff2");
}
@font-face {
  font-family: "Noto Sans Arabic";
  font-style: normal; font-weight: 400; font-display: swap;
  src: url("../assets/fonts/noto-sans-arabic-400.woff2") format("woff2");
}
