/* Прелоадер: перекрывает всю страницу, фон прозрачный, спиннер по центру */
#page-preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    pointer-events: all; /* блокирует клики по странице, пока прелоадер активен */
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

#page-preloader.is-active {
    visibility: visible;
    opacity: 1;
}

/* Спиннер */
.preloader-spinner {
    width: 60px;
    height: 60px;
    border: 5px solid rgba(0, 0, 0, 0.15);
    border-top-color: #337ab7; /* цвет как у navbar-default */
    border-radius: 50%;
    animation: preloader-spin 0.8s linear infinite;
}

@keyframes preloader-spin {
    to {
        transform: rotate(360deg);
    }
}