/* 页面跳转过渡：Loading + 燃尽动画（不依赖第三方库） */
.page-transition-overlay { 
  position: fixed; inset: 0; z-index: 999999; 
  display: none; align-items: center; justify-content: center; 
  pointer-events: none; /* 激活时开启 */
  /* 美化等待期：加深背景避免纯白屏 */
  background: radial-gradient(80vmax 80vmax at 50% 50%, rgba(255,255,255,.06) 0, rgba(255,255,255,0) 60%),
              linear-gradient(180deg, #0B1F3F 0%, #0B0F19 100%);
}
.page-transition-overlay.active { display: flex; pointer-events: all; }

.pt-loading { 
  position: absolute; top: 50%; transform: translateY(-70px); 
  color: var(--brand-primary, #0B1F3F); font-weight: 600; letter-spacing: .06em;
  background: rgba(255,255,255,.92); padding: 8px 14px; border-radius: 999px; 
  box-shadow: 0 2px 8px rgba(16,24,40,.08);
  display: inline-flex; align-items: center; gap: 8px;
  animation: ptFadeIn .25s ease-out both;
}

.pt-spinner { position: relative; width: 20px; height: 20px; display: inline-block; }
.pt-spinner::before { 
  content: ""; box-sizing: border-box; position: absolute; inset: 0; 
  border: 2px solid currentColor; border-top-color: transparent; border-radius: 50%;
  animation: ptSpin 0.9s linear infinite;
}

.pt-label { line-height: 1; }

/* 顶部轻量进度条（不阻塞导航，仅视觉反馈） */
.pt-progress {
  display: none !important; /* 仅保留 Loading 转圈，不显示顶部进度条 */
}
/* 顶部进度条动画移除 */

.pt-burn { 
  display: none !important; /* 移除白色圆圈燃尽动画 */
}
.pt-burn.burn { /* 不再使用动画 */ }

@keyframes ptFadeIn { from { opacity: 0; transform: translateY(-80px); } to { opacity: 1; transform: translateY(-70px);} }
/* 删除燃尽动画关键帧（保留注释以便需要时恢复） */

/* 进度条动画：先快速到 70%，随后缓慢向 92% 推进 */
@keyframes ptProgressQuick { from { width: 0; } to { width: 70%; } }
@keyframes ptProgressSlow  { from { width: 70%; } to { width: 92%; } }

@keyframes ptSpin { to { transform: rotate(360deg); } }

/* 避免滚动条闪烁：过渡时锁定滚动 */
body.pt-lock-scroll { overflow: hidden; }

/* iOS Safari 回退：禁用燃尽动画并移除白色圆圈，使用深色背景保持统一视觉 */
body.pt-ios .pt-burn { 
  background: transparent; 
  clip-path: none; 
  animation: none !important; 
  box-shadow: none !important;
}
