/* ==========================================
   SWEETALERT2 - MINIMALISTA (Verde e Cinza)
   ========================================== */

:root {
    --swal-primary: #6bbc47;
    --swal-text-dark: #111827;
    --swal-text-medium: #6b7280;
    --swal-text-light: #9ca3af;
    --swal-border: #e5e7eb;
    --swal-bg-light: #f9fafb;
}

/* ==========================================
   ESPAÇAMENTO DOS BOTÕES
   ========================================== */

.swal2-actions {
    gap: 12px !important;
    padding: 0 !important;
    margin-top: 1.5rem !important;
    display: flex !important;
    justify-content: center !important;
}

/* ==========================================
   ESTILO DOS BOTÕES
   ========================================== */

.swal2-confirm,
.swal2-cancel {
    padding: 10px 24px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    min-width: 120px !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    border: 1px solid !important;
}

/* Botão Confirmar (Verde) */
.swal2-confirm {
    background: var(--swal-primary) !important;
    color: white !important;
    border-color: var(--swal-primary) !important;
    box-shadow: 0 2px 8px rgba(107, 188, 71, 0.2) !important;
}

.swal2-confirm:hover {
    background: #5a9e3a !important;
    border-color: #5a9e3a !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(107, 188, 71, 0.3) !important;
}

.swal2-confirm:active {
    transform: translateY(0) !important;
}

/* Botão Cancelar (Cinza) */
.swal2-cancel {
    background: white !important;
    color: var(--swal-text-medium) !important;
    border-color: var(--swal-border) !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

.swal2-cancel:hover {
    background: var(--swal-bg-light) !important;
    color: var(--swal-text-dark) !important;
    border-color: var(--swal-text-light) !important;
    transform: translateY(-1px) !important;
}

.swal2-cancel:active {
    transform: translateY(0) !important;
}

/* ==========================================
   POPUP/MODAL
   ========================================== */

.swal2-popup {
    border-radius: 12px !important;
    padding: 2rem !important;
    border: 1px solid var(--swal-border) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
}

/* ==========================================
   ÍCONES
   ========================================== */

/* Sucesso - Verde */
.swal2-icon.swal2-success {
    border-color: var(--swal-primary) !important;
}

.swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: var(--swal-primary) !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(107, 188, 71, 0.3) !important;
}

/* Aviso - Amarelo Suave */
.swal2-icon.swal2-warning {
    border-color: #f59e0b !important;
    color: #f59e0b !important;
}

.swal2-icon.swal2-warning .swal2-icon-content {
    color: #f59e0b !important;
}

/* Erro - Vermelho Suave */
.swal2-icon.swal2-error {
    border-color: #991b1b !important;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #991b1b !important;
}

/* Pergunta - Cinza */
.swal2-icon.swal2-question {
    border-color: var(--swal-text-medium) !important;
    color: var(--swal-text-medium) !important;
}

/* Info - Verde */
.swal2-icon.swal2-info {
    border-color: var(--swal-primary) !important;
    color: var(--swal-primary) !important;
}

/* ==========================================
   TÍTULO
   ========================================== */

.swal2-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--swal-text-dark) !important;
    margin-bottom: 0.5rem !important;
}

/* ==========================================
   CONTEÚDO/MENSAGEM
   ========================================== */

.swal2-html-container {
    font-size: 0.9375rem !important;
    line-height: 1.6 !important;
    color: var(--swal-text-medium) !important;
    margin: 1rem 0 !important;
}

/* ==========================================
   LOADING SPINNER
   ========================================== */

.swal2-loader {
    border-color: var(--swal-primary) transparent var(--swal-primary) transparent !important;
}

/* ==========================================
   INPUT FIELDS
   ========================================== */

.swal2-input,
.swal2-textarea,
.swal2-select {
    border: 1px solid var(--swal-border) !important;
    border-radius: 8px !important;
    padding: 0.75rem !important;
    font-size: 0.9375rem !important;
    color: var(--swal-text-dark) !important;
}

.swal2-input:focus,
.swal2-textarea:focus,
.swal2-select:focus {
    border-color: var(--swal-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(107, 188, 71, 0.1) !important;
}

/* ==========================================
   VALIDATION MESSAGE
   ========================================== */

.swal2-validation-message {
    background: #fef2f2 !important;
    color: #991b1b !important;
    border: 1px solid #fecaca !important;
    border-radius: 8px !important;
    font-size: 0.875rem !important;
}

/* ==========================================
   PROGRESS STEPS
   ========================================== */

.swal2-progress-steps .swal2-progress-step {
    background: var(--swal-bg-light) !important;
    color: var(--swal-text-medium) !important;
}

.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step {
    background: var(--swal-primary) !important;
}

.swal2-progress-steps .swal2-progress-step-line {
    background: var(--swal-border) !important;
}

/* ==========================================
   TOAST NOTIFICATIONS
   ========================================== */

.swal2-toast {
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    border: 1px solid var(--swal-border) !important;
}

.swal2-toast .swal2-title {
    font-size: 0.9375rem !important;
    margin: 0 !important;
    color: var(--swal-text-dark) !important;
}

.swal2-toast .swal2-icon {
    margin: 0 0.5rem 0 0 !important;
}

/* Toast Success */
.swal2-toast.swal2-icon-success {
    border-left: 4px solid var(--swal-primary) !important;
}

/* Toast Error */
.swal2-toast.swal2-icon-error {
    border-left: 4px solid #991b1b !important;
}

/* Toast Warning */
.swal2-toast.swal2-icon-warning {
    border-left: 4px solid #f59e0b !important;
}

/* Toast Info */
.swal2-toast.swal2-icon-info {
    border-left: 4px solid var(--swal-primary) !important;
}

/* ==========================================
   TIMER PROGRESS BAR
   ========================================== */

.swal2-timer-progress-bar {
    background: var(--swal-primary) !important;
}

/* ==========================================
   BACKDROP
   ========================================== */

.swal2-container.swal2-backdrop-show {
    background: rgba(0, 0, 0, 0.4) !important;
}

/* ==========================================
   RESPONSIVO - MOBILE
   ========================================== */

@media (max-width: 576px) {
    .swal2-popup {
        width: calc(100% - 2rem) !important;
        padding: 1.5rem !important;
    }
    
    .swal2-actions {
        flex-direction: column !important;
        gap: 8px !important;
        width: 100% !important;
    }
    
    .swal2-confirm,
    .swal2-cancel {
        width: 100% !important;
        margin: 0 !important;
    }
    
    /* Ordem: Confirmar em cima no mobile */
    .swal2-actions.swal2-reversed {
        flex-direction: column-reverse !important;
    }
    
    .swal2-title {
        font-size: 1.125rem !important;
    }
}

/* ==========================================
   ANIMAÇÕES SUAVES
   ========================================== */

.swal2-show {
    animation: swal2-show 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.swal2-hide {
    animation: swal2-hide 0.2s ease-out !important;
}

@keyframes swal2-show {
    0% {
        opacity: 0;
        transform: scale(0.95) translateY(10px);
    }
    100% {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

@keyframes swal2-hide {
    0% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(0.95);
    }
}

/* ==========================================
   CLASSES AUXILIARES
   ========================================== */

/* Tabelas dentro do SweetAlert */
.swal2-html-container table {
    width: 100%;
    border-collapse: collapse;
}

.swal2-html-container table td {
    padding: 0.5rem;
    border-bottom: 1px solid var(--swal-border);
}

.swal2-html-container table tr:last-child td {
    border-bottom: none;
}

/* Badges */
.swal2-html-container .badge {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

.swal2-html-container .badge.bg-success {
    background: var(--swal-primary) !important;
}

.swal2-html-container .badge.bg-warning {
    background: #fef3c7 !important;
    color: #92400e !important;
    border: 1px solid #fde68a !important;
}

/* Alertas dentro do SweetAlert */
.swal2-html-container .alert {
    border-radius: 8px;
    padding: 0.75rem;
    font-size: 0.875rem;
}

.swal2-html-container .alert-info {
    background: var(--swal-bg-light);
    color: var(--swal-text-medium);
    border: 1px solid var(--swal-border);
}

/* ==========================================
   FIM DO ARQUIVO
   ========================================== */