/* 首屏过渡层（从 index.html 内联样式移出）
   放在 public/ 下，Vite dev 不做 CSS 转换，HTML 请求不再被内联样式处理拖慢；
   Vue 挂载后由 src/main.js 给 #boot-splash 加 .is-done 淡出并移除。 */
#boot-splash {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #efe9de;
  color: #26231e;
  font-family: "PingFang SC", "SF Pro Text", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  transition: opacity .32s ease;
}
#boot-splash.is-done {
  opacity: 0;
  pointer-events: none;
}
html.dark #boot-splash {
  background: #171310;
  color: #e9e1d1;
}
#boot-splash .bs-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
#boot-splash .bs-title {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: .08em;
}
#boot-splash .bs-line {
  position: relative;
  width: 132px;
  height: 2px;
  border-radius: 999px;
  background: rgba(38, 35, 30, .12);
  overflow: hidden;
}
html.dark #boot-splash .bs-line {
  background: rgba(233, 225, 209, .14);
}
#boot-splash .bs-line > span {
  position: absolute;
  top: 0;
  left: 0;
  width: 40%;
  height: 100%;
  border-radius: 999px;
  background: #c0402a;
  animation: bs-sweep 1.15s ease-in-out infinite;
}
#boot-splash .bs-sub {
  font-size: 12px;
  color: #6f6754;
}
html.dark #boot-splash .bs-sub {
  color: #b3a890;
}
@keyframes bs-sweep {
  0%   { transform: translateX(-100%); }
  100% { transform: translateX(250%); }
}
@media (prefers-reduced-motion: reduce) {
  #boot-splash .bs-line > span {
    animation: none;
    width: 100%;
  }
}
