/**
 * Page Transition Styles
 */

/* Overlay for page transitions */
.vslocks-transition-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: #0a0a0a;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.vslocks-transition-overlay.active {
    opacity: 1;
    pointer-events: all;
}

/* Page content fade-in on load */
body:not(.vslocks-no-transition) {
    animation: vslocksPageIn 0.4s ease-out;
}

@keyframes vslocksPageIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .vslocks-transition-overlay {
        display: none !important;
    }

    body:not(.vslocks-no-transition) {
        animation: none !important;
    }
}

/* Prevent flash of unstyled content */
.vslocks-leaving body {
    overflow: hidden;
}
