body.raovat1-ajax-progress-active {
    cursor: progress;
}

body.raovat1-ajax-progress-active::before {
    content: "";
    position: fixed;
    top: 0;
    right: auto;
    left: 0;
    z-index: 2147483647;
    width: 38%;
    height: 3px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        var(--raovat1-purple-strong, #d88cff) 32%,
        var(--raovat1-warm-accent, #ff815c) 68%,
        transparent 100%
    );
    background-size: 100% 100%;
    box-shadow: 0 0 14px rgba(216, 140, 255, 0.34);
    pointer-events: none;
    transform: translate3d(-120%, 0, 0);
    will-change: transform;
    animation: raovat1-ajax-progress-bar 1.05s linear infinite;
}

body.raovat1-browse-listings.raovat1-ajax-progress-active::before,
body.admin-bar.raovat1-ajax-progress-active::before {
    top: 0;
    z-index: 2147483647;
}

body.raovat1-browse-listings.raovat1-browse-results-updating.raovat1-ajax-progress-active::before {
    top: 0;
    z-index: 2147483647;
    height: 4px;
    background: linear-gradient(
        90deg,
        transparent 0%,
        var(--raovat1-purple-strong, #d88cff) 32%,
        var(--raovat1-warm-accent, #ff815c) 68%,
        transparent 100%
    );
    background-size: 100% 100%;
    box-shadow: 0 0 16px rgba(216, 140, 255, 0.4);
    pointer-events: none;
    animation: raovat1-ajax-progress-bar 1.05s linear infinite;
}

body.raovat1-theme-light.raovat1-ajax-progress-active::before {
    box-shadow: 0 0 12px rgba(155, 66, 209, 0.24);
}

@keyframes raovat1-ajax-progress-bar {
    from {
        transform: translate3d(-120%, 0, 0);
    }

    to {
        transform: translate3d(365%, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    body.raovat1-ajax-progress-active::before {
        animation: none;
        left: 31%;
        transform: none;
        will-change: auto;
    }
}
