.auth-body {
  min-height: 100vh;
  /* ═══ TASK-1165（2026-09-28）· 首访最大头：登录页背景图 1.75MB → 80KB（-95.4%） ═══════════
     口径（逐字遵守任务书）：
       · **绝不真裁原图**、**不改构图** —— 原 `login-bg.jpg`（3840×2160）**逐字节保留**在盘上、
         URL 不变，只作回退；新增的只是同一画面的降采样 / 换格式副本（同一 16:9 构图、同一
         `center/cover`，不裁不换比例）。
       · **按显示尺寸降采样** —— `.auth-body` 是全视口元素（`cover`）：1440×900 视口 @1x 实际
         只渲染到 1600×900 物理像素 ⇒ 1x 档给 1920×1080（= 常见桌面 DPR1 视口的显示尺寸），
         2x 档给 3840×2160（原分辨率，retina 下不降）。
       · **保留回退** —— 下面的 `background` 简写 = 原 JPEG，任何不支持 `image-set()` 的浏览器
         行为与本批之前**逐字节一致**（零风险面）。
       · 格式协商顺序 AVIF → WebP → JPEG（`type()` 保证 UA 只挑自己能解的格式）；
         `-webkit-image-set()` 那一行覆盖「只认前缀版、不认标准版」的 Safari 14–16.3
         （本站已强依赖 `color-mix()` ⇒ 实际基线本就 ≥ Safari 16.2，WebP 全支持）。
       · 度量：PSNR@显示尺度 1x 档 45.6 dB / 2x 档 49.9 dB（>40 dB = 视觉无损级）。
     ⚠️ 改这里时别把 `background` 简写删掉（它是回退面），也别把 URL 换成带哈希的新路径
        （会让已缓存 7 天的老客户端拿不到）。 */
  background: url('/assets/img/login-bg.jpg') center/cover no-repeat fixed;
  background-image: -webkit-image-set(
    url('/assets/img/login-bg-1920.webp') 1x,
    url('/assets/img/login-bg-3840.webp') 2x
  );
  background-image: image-set(
    url('/assets/img/login-bg-1920.avif') type('image/avif') 1x,
    url('/assets/img/login-bg-3840.avif') type('image/avif') 2x,
    url('/assets/img/login-bg-1920.webp') type('image/webp') 1x,
    url('/assets/img/login-bg-3840.webp') type('image/webp') 2x,
    url('/assets/img/login-bg.jpg') type('image/jpeg') 1x
  );
  padding-bottom: 0 !important;
}

.auth-main {
  max-width: none;
  margin: 0;
  padding: 0;
}

.auth-layout {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 24px;
}

.auth-form-side {
  width: 460px;
  max-width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.auth-card {
  width: 100%;
  max-width: 420px;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  padding: 32px;
}

.auth-title {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 8px;
}

.auth-subtitle {
  font-size: 14px;
  color: var(--text-secondary);
  margin-bottom: 28px;
}

.auth-link {
  color: var(--green-600);
  font-weight: 600;
}

.auth-link:hover {
  color: var(--green-600);
}

@media (max-width: 768px) {
  .auth-layout {
    justify-content: center;
    padding: 16px;
  }
  .auth-form-side {
    width: 100%;
  }
  .auth-card {
    padding: 24px;
  }
}
