/* ===================================================
   SAFETYA - Estilos Personalizados para SweetAlert2
   Diseño elegante y profesional que mantiene la 
   identidad visual del sitio
   =================================================== */

/* Popup principal */
.safetya-swal-popup {
    border-radius: 12px !important;
    padding: 2em !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
    font-family: 'Nunito', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Título */
.safetya-swal-title {
    color: #333 !important;
    font-size: 1.75em !important;
    font-weight: 600 !important;
    margin-bottom: 0.5em !important;
}

/* Contenido HTML */
.safetya-swal-html {
    color: #555 !important;
    font-size: 1.1em !important;
    line-height: 1.6 !important;
    margin: 1em 0 !important;
}

/* Enlaces en el contenido */
.safetya-swal-html a {
    color: #98b051 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: color 0.3s ease !important;
}

.safetya-swal-html a:hover {
    color: #7a8d3f !important;
    text-decoration: underline !important;
}

/* Botón de confirmación */
.safetya-swal-confirm {
    background: linear-gradient(135deg, #98b051 0%, #7a8d3f 100%) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 0.9em 2.5em !important;
    font-size: 1.1em !important;
    font-weight: 600 !important;
    min-width: 130px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(152, 176, 81, 0.3) !important;
    margin: 0.5em !important;
}

.safetya-swal-confirm:hover {
    background: linear-gradient(135deg, #7a8d3f 0%, #98b051 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(152, 176, 81, 0.4) !important;
}

.safetya-swal-confirm:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px rgba(152, 176, 81, 0.3) !important;
}

.safetya-swal-confirm:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(152, 176, 81, 0.3) !important;
}

/* Botón de cancelación */
.safetya-swal-cancel {
    background-color: #e0e0e0 !important;
    color: #555 !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 0.9em 2.5em !important;
    font-size: 1.1em !important;
    font-weight: 600 !important;
    min-width: 130px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    margin: 0.5em !important;
}

.safetya-swal-cancel:hover {
    background-color: #ccc !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

.safetya-swal-cancel:active {
    transform: translateY(0) !important;
}

/* Botón cerrar (X) */
.swal2-close {
    color: #999 !important;
    font-size: 2em !important;
    transition: all 0.3s ease !important;
}

.swal2-close:hover {
    color: #555 !important;
    transform: scale(1.1) !important;
}

/* Iconos de SweetAlert2 - Personalizados */
.swal2-icon.swal2-success {
    border-color: #98b051 !important;
}

.swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: #98b051 !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(152, 176, 81, 0.3) !important;
}

.swal2-icon.swal2-error {
    border-color: #e74c3c !important;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #e74c3c !important;
}

.swal2-icon.swal2-warning {
    border-color: #e0ae4a !important;
    color: #e0ae4a !important;
}

.swal2-icon.swal2-info {
    border-color: #3498db !important;
    color: #3498db !important;
}

/* Animaciones suaves */
.swal2-popup.swal2-show {
    animation: swal2-show 0.3s ease-out !important;
}

.swal2-popup.swal2-hide {
    animation: swal2-hide 0.3s ease-in !important;
}

/* Overlay de fondo */
.swal2-container {
    background-color: rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(3px) !important;
}

/* Responsive - Móviles */
@media (max-width: 768px) {
    .safetya-swal-popup {
        padding: 1.5em !important;
        margin: 0 1em !important;
    }

    .safetya-swal-title {
        font-size: 1.4em !important;
    }

    .safetya-swal-html {
        font-size: 1em !important;
    }

    .safetya-swal-confirm,
    .safetya-swal-cancel {
        padding: 0.75em 1.5em !important;
        font-size: 1em !important;
        min-width: 100px !important;
    }
}

/* Estados especiales para diferentes tipos de alerta */
.swal2-icon.swal2-success,
.swal2-icon.swal2-error,
.swal2-icon.swal2-warning,
.swal2-icon.swal2-info {
    margin: 1.5em auto 1em !important;
}

/* Loading spinner personalizado */
.swal2-loader {
    border-color: #98b051 transparent #98b051 transparent !important;
}
