/* ==========================================================================
   全站背景层：动态 SVG 舞台 + 柔化遮罩（登录页与查询页共用）
   —— 由 app/bg.js 把 assets/bg-anim.svg 注入到 [data-bg-src] 容器
   ========================================================================== */

.bg-stage {
  position: fixed; inset: 0; z-index: 0;
  overflow: hidden; pointer-events: none;
}
/* 显式铺满视口：SVG 无固有尺寸，不能依赖 height:auto，否则会被压扁 */
.bg-stage svg {
  display: block;
  width: 100%; height: 100%;
}

/* SVG 未能挂载时的静态兜底（file:// 或脚本被禁） */
.bg-stage.bg-static {
  background:
    radial-gradient(900px 520px at 78% 12%, rgba(140,168,107,.22), rgba(140,168,107,0) 70%),
    radial-gradient(700px 440px at 10% 22%, rgba(174,196,140,.18), rgba(174,196,140,0) 70%),
    radial-gradient(600px 380px at 92% 78%, rgba(185,151,91,.10), rgba(185,151,91,0) 70%);
}

/* 顶部与底部柔化，保证正文对比度 */
.bg-veil {
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background: linear-gradient(180deg,
    rgba(251,249,242,.70) 0%,
    rgba(251,249,242,.28) 40%,
    rgba(251,249,242,.62) 100%);
}
