/**
 * S6O9 Theme Overrides
 */

/* Events Calendar - Loading States */

.s6o9-load-more__loading {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

/* Spinner Animation */

.s6o9-spinner {
    display: inline-block;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(0, 0, 0, 0.1);
    border-top-color: currentColor;
    border-radius: 50%;
    animation: s6o9-spin 0.6s linear infinite;
}

@keyframes s6o9-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Events Calendar - Fade In Animation */

.s6o9-event--fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.4s ease-out, transform 0.4s ease-out;
}

.s6o9-event--fade-in.s6o9-event--visible {
    opacity: 1;
    transform: translateY(0);
}

/* Events Calendar - AJAX Loading Wrapper */

.s6o9-event--loading {
    animation: s6o9-fade-in 0.4s ease-out forwards;
}

@keyframes s6o9-fade-in {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
