.pix-loader {
    position: fixed;
    inset: 0;
    background: rgba(255,255,255,0.85);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pix-loader-box {
    background: #ffffff;
    border-radius: 6px;
    padding: 30px 40px;
    text-align: center;
    box-shadow: 0 8px 30px rgba(0,0,0,.08);
    max-width: 360px;
}

    .pix-loader-box h4 {
        margin: 15px 0 5px;
        font-weight: 600;
        color: #1f2a44;
    }

    .pix-loader-box p {
        font-size: 14px;
        color: #6b7280;
    }

.pix-spinner {
    width: 48px;
    height: 48px;
    border: 4px solid #e5e7eb;
    border-top-color: #0b3a8f; /* azul institucional */
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
    margin: auto;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}