.jquery-waiting-base-container {
    position: fixed !important;
    top: 0px !important;
    left: 0px !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 999999 !important;
    text-align: center;
    background-color: rgba(25, 29, 32, 0.7) !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.ClassCarregando {
    width: 64px !important;
    height: 64px !important;
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    margin: -32px 0 0 -32px !important;
    z-index: 1000000 !important;
    opacity: 1 !important;
    border-radius: 8px !important;
    background: #fff url("../img/loading.gif") center center no-repeat !important;
    background-size: 48px 48px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
    display: block !important;
    visibility: visible !important;
}

/* Spinner CSS como fallback caso a imagem não carregue */
.ClassCarregando::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    margin: -20px 0 0 -20px;
    border: 4px solid #f3f3f3;
    border-top: 4px solid #1976d2;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    display: none; /* Oculto por padrão, aparece se a imagem falhar */
}

/* Se a imagem não carregar, mostra o spinner CSS */
.ClassCarregando:not([style*="background-image"])::after,
.ClassCarregando[style*="background-image: none"]::after {
    display: block;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Garantir que o divProcessando esteja visível */
#divProcessando {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 999998 !important;
    display: block !important;
    visibility: visible !important;
}

/* Barra de progresso do NProgress */
#nprogress .bar {
    background: #1976d2 !important;
    height: 3px !important;
    z-index: 1000001 !important;
}

#nprogress .peg {
    box-shadow: 0 0 10px #1976d2, 0 0 5px #1976d2 !important;
}

#nprogress .spinner {
    display: block !important;
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    margin: -20px 0 0 -20px !important;
    z-index: 1000002 !important;
}

#nprogress .spinner-icon {
    width: 40px !important;
    height: 40px !important;
    box-sizing: border-box !important;
    border: solid 3px transparent !important;
    border-top-color: #1976d2 !important;
    border-left-color: #1976d2 !important;
    border-radius: 50% !important;
    animation: nprogress-spinner 0.6s linear infinite !important;
    display: block !important;
    visibility: visible !important;
}

@keyframes nprogress-spinner {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Desabilita outros loadings para usar apenas NProgress */
.pace {
    display: none !important;
    visibility: hidden !important;
}

#page-loader {
    display: none !important;
    visibility: hidden !important;
}

.pace-progress,
.pace-activity {
    display: none !important;
}

