/* KM 文件清洗平台 —— 自架 web 字型（F98，2026-08-28）。
 *
 * 拉丁字母／數字用 Inter，中文（繁體）用 Noto Sans TC，woff2 檔自架在
 * `app/static/fonts/`（不連 Google Fonts CDN——公司內網、離線、隱私）。
 * 檔案取自 @fontsource（Inter 5.0.18 latin 子集、Noto Sans TC 5.0.11
 * chinese-traditional 子集），皆為 SIL Open Font License。
 *
 * 這支由登入前（auth.css）與登入後（app.css）兩邊的頁面都 <link> 進來，
 * 放在主樣式表之前。`font-display: swap`——字型還沒載入時先用系統字型
 * 顯示，載入後再換上，不擋首屏。
 *
 * Noto Sans TC 只自架 400／700 兩個字重；font-weight: 600 的元素會由
 * 瀏覽器 fallback 到 700（繁體中文的 semibold 視覺可接受），拉丁字母
 * 的 600 則有 Inter 對應字重。
 */

/* ---- Inter（拉丁字母／數字）---- */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/inter-latin-400.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/static/fonts/inter-latin-600.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/inter-latin-700.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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

/* ---- Noto Sans TC（繁體中文）---- */
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/static/fonts/notosanstc-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Noto Sans TC';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/static/fonts/notosanstc-700.woff2') format('woff2');
}
