/* sweetalert-modern.css */
/* ============================================
   DISEÑO MODERNO Y LIMPIO PARA SWEETALERT2
   ============================================ */

/* — BACKDROP / OVERLAY — */
.swal2-container:not(.swal2-toast-shown) {
  position: fixed !important;
  inset: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: rgba(0, 0, 0, 0.4) !important;
  z-index: 999999 !important;
}

/* — POPUP PRINCIPAL (no toasts) — */
.swal2-container:not(.swal2-toast-shown) .swal2-popup {
  position: relative !important;
  border-radius: 20px !important;
  font-family: 'DM Sans', -apple-system, sans-serif !important;
  padding: 28px 32px 24px 32px !important;
  width: 420px !important;
  max-width: 90vw !important;
  overflow: visible !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
}

/* — OCULTAR ICONO — */
.swal2-container:not(.swal2-toast-shown) .swal2-icon {
  display: none !important;
}

/* — BOTÓN DE CERRAR (X) — */
.swal2-container:not(.swal2-toast-shown) .swal2-close {
  display: flex !important;
  position: absolute !important;
  top: 16px !important;
  right: 16px !important;
  width: 28px !important;
  height: 28px !important;
  font-size: 22px !important;
  color: #888 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 0 !important;
  line-height: 1 !important;
  z-index: 10 !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-close:hover {
  color: #333 !important;
  background: #f0f0f0 !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-close:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* — TÍTULO — */
.swal2-container:not(.swal2-toast-shown) .swal2-title {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  text-align: left !important;
  padding: 0 !important;
  margin: 0 0 12px 0 !important;
  line-height: 1.3 !important;
}

/* — CONTENIDO / MENSAJE — */
.swal2-container:not(.swal2-toast-shown) .swal2-html-container {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #555 !important;
  text-align: left !important;
  padding: 0 !important;
  margin: 0 0 24px 0 !important;
  line-height: 1.5 !important;
}

/* — CONTENEDOR DE ACCIONES (BOTONES) — */
.swal2-container:not(.swal2-toast-shown) .swal2-actions {
  flex-direction: row !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  border-top: none !important;
}

/* — ESTILOS BASE PARA BOTONES — */
.swal2-container:not(.swal2-toast-shown) .swal2-styled {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  padding: 10px 24px !important;
  border-radius: 25px !important;
  min-width: 100px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: none !important;
  margin: 0 !important;
  text-transform: none !important;
}

/* — BOTÓN CANCELAR (OUTLINE) — */
.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel {
  background-color: transparent !important;
  color: #444 !important;
  border: 1.5px solid #ccc !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel:hover {
  background-color: #f5f5f5 !important;
  border-color: #bbb !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel:focus {
  box-shadow: none !important;
}

/* — BOTÓN CONFIRMAR (PRIMARY/AZUL) — */
.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-confirm {
  background-color: #1a1aff !important;
  color: #fff !important;
  border: none !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-confirm:hover {
  background-color: #0000dd !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-confirm:focus {
  box-shadow: none !important;
}

/* — BOTÓN DENEGAR (ROJO) — */
.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-deny {
  background-color: #dc3545 !important;
  color: #fff !important;
  border: none !important;
}

.swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-deny:hover {
  background-color: #c82333 !important;
}

/* ============================================
   DARK MODE SUPPORT
   ============================================ */

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-popup,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-popup {
  background-color: #2d2d2d !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-title,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-title {
  color: #f0f0f0 !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-html-container,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-html-container {
  color: #b0b0b0 !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-close,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-close {
  color: #888 !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-close:hover,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-close:hover {
  color: #e0e0e0 !important;
  background: #404040 !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel {
  background-color: transparent !important;
  color: #c0c0c0 !important;
  border-color: #555 !important;
}

html.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel:hover,
body.dark-mode .swal2-container:not(.swal2-toast-shown) .swal2-styled.swal2-cancel:hover {
  background-color: #404040 !important;
  border-color: #666 !important;
}

/* ============================================
   TOASTS - NO MODIFICAR (mantener estilos originales)
   ============================================ */
/* Los toasts mantienen su estilo original definido en core.less */
