/* Full-screen loader overlay */
.pm-loader-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0;
    width: 100vw; height: 100vh;
    background: radial-gradient(circle at 50% 0%, rgba(0,123,255,0.15) 0%, rgba(0,123,255,0) 42%),
                linear-gradient(180deg, rgba(255,255,255,0.01) 0%, rgba(255,255,255,0) 100%),
                rgb(0,0,0);
    z-index: 99999;
    justify-content: center;
    align-items: center;
}
.pm-loader-overlay.active { display: flex; }

/* Synology-style block loader */
.sharentis-loader {
    display: flex;
    gap: 6px;
}
.sharentis-loader .block {
    width: 14px; height: 14px;
    background: rgb(0, 123, 255);
    animation: loader-pulse 1.2s infinite ease-in-out;
}
.sharentis-loader .block:nth-child(1) { animation-delay: 0s; }
.sharentis-loader .block:nth-child(2) { animation-delay: 0.2s; }
.sharentis-loader .block:nth-child(3) { animation-delay: 0.4s; }
.sharentis-loader .block:nth-child(4) { animation-delay: 0.6s; }

@keyframes loader-pulse {
    0%, 80%, 100% { opacity: 0.2; transform: scale(0.8); }
    40%           { opacity: 1;   transform: scale(1); }
}
