   .ajax-loader-overlay {
        position: fixed;
        inset: 0;
        display: none;
        align-items: center;
        justify-content: center;
        background: rgba(0, 0, 0, 0.55);
        z-index: 999999;
    }

    .ajax-loader-box {
        width: 320px;
        max-width: 90%;
        padding: 35px 25px;
        text-align: center;
        background: #ffffff;
        border-radius: 15px;
        box-shadow: 0 10px 40px rgba(0,0,0,0.25);
        animation: loaderAppear 0.3s ease;
    }

    .ajax-spinner {
        width: 55px;
        height: 55px;
        margin: 0 auto 20px;
        border: 6px solid #e9ecef;
        border-top: 6px solid #0d6efd;
        border-radius: 50%;
        animation: ajaxSpin 0.8s linear infinite;
    }

    .ajax-loader-title {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 8px;
        color: #212529;
    }

    .ajax-loader-message {
        font-size: 14px;
        color: #6c757d;
    }
    @keyframes ajaxSpin {
        0% {
            transform: rotate(0deg);
        }
        100% {
            transform: rotate(360deg);
        }
    }

    @keyframes loaderAppear {
        from {
            opacity: 0;
            transform: scale(0.8);
        }
        to {
            opacity: 1;
            transform: scale(1);
        }

    }