/* 优化的字体加载
 *
 * 1. 使用 font-display: swap 确保文本在字体加载期间可见
 * 2. 优先使用本地字体，减少网络请求
 * 3. 使用 optimizeLegibility 提高文本渲染质量
 * 4. 避免在HTML中预加载字体，防止"预加载但未使用"警告
 * 5. 使用CSS选择器精确匹配使用字体的元素，确保字体按需加载
 */

/* 使用 font-display: swap 确保文本在字体加载期间可见 */
@font-face {
  font-family: "HarmonyOS_Regular";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  /* 使用系统字体作为备用，不引用外部字体 */
  src: local("PingFang SC"), local("Microsoft YaHei"), local("Hiragino Sans GB");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD, U+4E00-9FFF, U+3400-4DBF, U+F900-FAFF, U+3000-303F, U+FF00-FFEF;
}

/* 使用系统字体作为备用 */
body {
  font-family: "HarmonyOS_Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

/* Pacifico-Regular 字体 - 使用ttf格式 */
@font-face {
  font-family: "Pacifico-Regular";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local("Pacifico-Regular"),
    url("/font/Pacifico-Regular.ttf") format("truetype");
  font-text-rendering: optimizeLegibility;
}

/* UnidreamLED 字体 - 使用ttf格式 */
@font-face {
  font-family: "UnidreamLED";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local("UnidreamLED"),
    url("/font/UnidreamLED.ttf") format("truetype");
  font-text-rendering: optimizeLegibility;
}

/* 字体加载优化脚本 - 确保字体在需要时才加载 */
@supports (font-display: swap) {

  /* 这个CSS块只在支持font-display的浏览器中执行 */
  :root {
    --font-loaded-pacifico: 0;
    --font-loaded-unidreamled: 0;
  }

  /* 当特定元素使用这些字体时，标记为已加载 */
  /* Message.vue, Main/Right.vue, MoreSet/index.vue 组件使用了 Pacifico-Regular 字体 */
  .message .logo .name,
  .message .description .content .text p:nth-of-type(1),
  .right .logo,
  .more .content .top .logo {
    --font-loaded-pacifico: 1;
  }

  /* Func/index.vue 组件和进度条样式使用了 UnidreamLED 字体 */
  .func .right .time .text,
  .el-progress-bar .el-progress-bar__inner {
    --font-loaded-unidreamled: 1;
  }
}