#galapa-page-loader {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    box-sizing: border-box;
    background: #161817;
    opacity: 1;
    transition: opacity .2s ease;
}
#galapa-page-loader[hidden] { display: none !important; }
#galapa-page-loader.gpl-dismissed { opacity: 0; pointer-events: none; }
#galapa-page-loader .gpl-stage { display: flex; flex-direction: column; align-items: center; gap: 26px; width: min(290px, 100%); }
#galapa-page-loader .gpl-logo { width: 100%; height: auto; overflow: visible; }
#galapa-page-loader .gpl-status { display: flex; align-items: center; gap: 10px; font: 14px/1.5 Arial, sans-serif; color: #bdc5c1; }
#galapa-page-loader .gpl-dots { display: flex; gap: 5px; }
#galapa-page-loader .gpl-dots span { width: 5px; height: 5px; background: #ef4430; border-radius: 50%; animation: gpl-dot 1.2s ease-in-out infinite; }
#galapa-page-loader .gpl-dots span:nth-child(2) { animation-delay: .15s; }
#galapa-page-loader .gpl-dots span:nth-child(3) { animation-delay: .3s; }
#galapa-page-loader .gpl-track { width: 168px; height: 3px; overflow: hidden; background: #303633; }
#galapa-page-loader .gpl-scan { height: 100%; width: 40%; background: #ef4430; animation: gpl-scan 1.8s ease-in-out infinite; }
#galapa-page-loader .gpl-toe { transform-box: fill-box; transform-origin: center; animation-duration: 3.2s; animation-timing-function: ease-out; animation-iteration-count: infinite; animation-fill-mode: both; }
#galapa-page-loader .gpl-toe-1 { animation-name: gpl-toe-one; }
#galapa-page-loader .gpl-toe-2 { animation-name: gpl-toe-two; }
#galapa-page-loader .gpl-toe-3 { animation-name: gpl-toe-three; }
#galapa-page-loader .gpl-toe-4 { animation-name: gpl-toe-four; }
#galapa-page-loader .gpl-toe-5 { animation-name: gpl-toe-five; }
@keyframes gpl-dot { 0%, 80%, 100% { opacity: .35; transform: scale(.8); } 35% { opacity: 1; transform: scale(1.15); } }
@keyframes gpl-scan { 0% { transform: translateX(-110%); } 100% { transform: translateX(350%); } }
@keyframes gpl-toe-one { 0% { opacity: 0; transform: scale(.7); } 12%, 85% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.7); } }
@keyframes gpl-toe-two { 0%, 14% { opacity: 0; transform: scale(.7); } 26%, 85% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.7); } }
@keyframes gpl-toe-three { 0%, 28% { opacity: 0; transform: scale(.7); } 40%, 85% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.7); } }
@keyframes gpl-toe-four { 0%, 42% { opacity: 0; transform: scale(.7); } 54%, 85% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.7); } }
@keyframes gpl-toe-five { 0%, 56% { opacity: 0; transform: scale(.7); } 68%, 85% { opacity: 1; transform: scale(1); } 100% { opacity: 0; transform: scale(.7); } }
@media (prefers-reduced-motion: reduce) {
    #galapa-page-loader { transition: none; }
    #galapa-page-loader .gpl-toe,
    #galapa-page-loader .gpl-dots span,
    #galapa-page-loader .gpl-scan { animation: none; opacity: 1; transform: none; }
}
