/* Dipindah dari inline <style> di index.html supaya Content-Security-Policy
   bisa memblokir style-src tanpa 'unsafe-inline' (lihat berkas _headers). */
#splash{position:fixed;inset:0;background:radial-gradient(120% 120% at 50% 0%,#1E293B 0%,#0F172A 55%,#0B1220 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99;transition:opacity .45s var(--ease,ease),transform .45s var(--ease,ease)}
#splash img{width:130px;height:130px;object-fit:contain;margin-bottom:18px;filter:drop-shadow(0 10px 24px rgba(0,0,0,.25));animation:splash-pop .6s var(--ease,ease) both}
#splash .splash-name{color:#3B82F6;font-weight:800;letter-spacing:.06em;font-size:15px;text-transform:uppercase;animation:splash-fade-up .5s .1s var(--ease,ease) both}
#splash .splash-status{color:#a9c2d6;font-size:12px;margin-top:10px;animation:splash-fade-up .5s .18s var(--ease,ease) both}
#splash .splash-loader{margin-top:16px;display:flex;gap:6px}
#splash .splash-loader span{width:7px;height:7px;border-radius:50%;background:#3B82F6;animation:splash-bounce 1s ease-in-out infinite}
#splash .splash-loader span:nth-child(2){animation-delay:.15s}
#splash .splash-loader span:nth-child(3){animation-delay:.3s}
#splash .splash-from{position:absolute;bottom:46px;color:#7f97ab;font-size:12px;text-align:center;animation:splash-fade-up .5s .26s var(--ease,ease) both}
#splash .splash-from .badge{display:inline-grid;place-items:center;width:26px;height:26px;background:#3B82F6;color:#0F172A;border-radius:7px;font-weight:900;font-size:11px;margin-top:6px}
#splash.fade{opacity:0;transform:scale(1.03);pointer-events:none}
@keyframes splash-pop{from{opacity:0;transform:scale(.8) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
@keyframes splash-fade-up{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes splash-bounce{0%,80%,100%{transform:translateY(0);opacity:.55}40%{transform:translateY(-6px);opacity:1}}
