/* Loading glow effect for image processing buttons */
.loading-glow-img {
    position: relative;
    animation: loadingGlow 1.5s ease-in-out infinite alternate;
    pointer-events: none !important;
}

@keyframes loadingGlow {
    0% {
        box-shadow: 0 0 5px rgba(18, 158, 217, 0.3);
    }
    100% {
        box-shadow: 0 0 15px rgba(18, 158, 217, 0.8), 0 0 25px rgba(18, 158, 217, 0.4);
    }
}

.loading-glow-img:before {
    content: '';
    position: absolute;
    top: -2px;
    left: -2px;
    right: -2px;
    bottom: -2px;
    background: linear-gradient(45deg, transparent, rgba(18, 158, 217, 0.1), transparent);
    border-radius: inherit;
    z-index: -1;
    animation: loadingShimmer 2s linear infinite;
}

@keyframes loadingShimmer {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
} 