/* One persistent loader from HTML startup through authenticated page readiness. */
#boot-fallback{position:fixed;inset:0;z-index:99999;display:grid;place-content:center;justify-items:center;gap:12px;padding:28px;text-align:center;overflow:hidden;color:#102b63;font-family:"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at 50% 36%,#fff1df,transparent 33%),linear-gradient(180deg,#fffdf8,#fff9f1 60%,#f0faff)}
#boot-fallback:before{content:"";position:absolute;left:-80px;bottom:8%;width:210px;height:90px;background:#e4f4ff;border-radius:50%;box-shadow:110px 30px 0 15px #e4f4ff,230px 45px 0 20px #eaf7ff,350px 30px 0 15px #e4f4ff;opacity:.7}
#boot-fallback:after{content:"✦";position:absolute;right:17%;top:29%;color:#ffb23d;font-size:25px}
#boot-fallback>*{position:relative;z-index:1}
#boot-fallback img{width:62px;height:62px;object-fit:contain;animation:qyvBootPulse 1.2s ease-in-out infinite}
#boot-message{font-size:16px;font-weight:700;line-height:1.6;max-width:340px;margin:0}
#boot-retry{padding:12px 24px;border:0;border-radius:12px;background:linear-gradient(110deg,#ff7367,#ff4e59);color:white;font:inherit;font-weight:600}
@keyframes qyvBootPulse{50%{transform:scale(1.06);filter:drop-shadow(0 3px 12px #ed9a5e33)}}
@media(prefers-reduced-motion:reduce){#boot-fallback img{animation:none}}
