/* estilo del popup*/
#alert-popup {
  display: none;
  /* Oculto por defecto  */
  position: fixed;
  z-index: 99999 !important; /* Mayor que el z-index del header y nav */
  /* Mayor que el z-index del header y nav */
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  /*
  background-color: black; 
  opacity: 1;
  */
  background-color: rgba(0, 0, 0, 0.4);
  margin: 0em;
}

.custom-alert {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  overflow: hidden;
  max-width: 300px;
  width: 100%;
}

.confirmation-dialog-header {
  background-color: #4CAF50;
  color: #fff;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.confirmation-dialog-header h3 {
  margin: 0;
  /* Elimina el margen predeterminado del título */
  text-align: center;
  /* Centra horizontalmente */
  flex: 1;
  /* Ajusta la proporción de espacio que ocupan en el contenedor */

}



.confirmation-dialog-content {
  padding: 15px;
}

.confirmation-dialog-content p {
  text-align: center;
  /* Centra el texto dentro del párrafo */
  font-weight: bold;
  /* Aplica negrita al texto */
  color: rgb(2, 73, 95);
  /* Cambia el color del texto según tu preferencia */
  margin-bottom: 15px;
}

.confirmation-dialog-buttons {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
}

.confirmation-dialog-buttons button,
.custom-button {
  width: 48%;
  /* Ajusta según tus necesidades, deja espacio para el borde y el margen */
  padding: 8px 16px;
  cursor: pointer;
  border: none;
  color: #fff;
  border-radius: 20px;
  /* Ajusta el valor del radio */
}

#confirmButton {
  background-color: blue;
}

#cancelButton {
  background-color: #f44336;
}

/*  ...... */

.message-alert-header {
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message-alert-header h3 {
  margin: 0;
  /* Elimina el margen predeterminado del título */
  text-align: center;
  /* Centra horizontalmente */
  flex: 1;
  /* Ajusta la proporción de espacio que ocupan en el contenedor */

}

.message-alert-content {
  padding: 15px;
}

.message-alert-content p {
  text-align: center;
  /* Centra el texto dentro del párrafo */
  font-weight: bold;
  /* Aplica negrita al texto */
  margin-top: 15px;
}

.success-header {
  background-color: #66c069;
  /* Color de fondo para éxito en el header */
  color: #fff;
  /* Color del texto para éxito en el header */
}

.success-content {
  background-color: #fff;
  /* Color de fondo para éxito en el contenido */
  color: rgb(9, 112, 172);
  /* Color del texto para éxito en el contenido */
}

.error-header {
  background-color: #f44336;
  /* Color de fondo para error en el header */
  color: #fff;
  /* Color del texto para error en el header */
}

.error-content {
  background-color: #fff;
  /* Color de fondo para error en el contenido */
  color: red;
  /* Color del texto para error en el contenido */
}


/* Contenedor base del modal (ya lo tienes) */
/* estilo del popup*/
#alert-popup {
  display: none;
  /* Oculto por defecto  */
  position: fixed;
  z-index: 3000;
  /* Mayor que el z-index del header y nav */
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  /*
  background-color: black; 
  opacity: 1;
  */
  background-color: rgba(0, 0, 0, 0.4);
  margin: 0em;
}

.custom-alert {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  border-radius: 5px;
  overflow: hidden;
  max-width: 300px;
  width: 100%;
}

.confirmation-dialog-header {
  background-color: #4CAF50;
  color: #fff;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.confirmation-dialog-header h3 {
  margin: 0;
  /* Elimina el margen predeterminado del título */
  text-align: center;
  /* Centra horizontalmente */
  flex: 1;
  /* Ajusta la proporción de espacio que ocupan en el contenedor */

}



.confirmation-dialog-content {
  padding: 15px;
}

.confirmation-dialog-content p {
  text-align: center;
  /* Centra el texto dentro del párrafo */
  font-weight: bold;
  /* Aplica negrita al texto */
  color: rgb(2, 73, 95);
  /* Cambia el color del texto según tu preferencia */
  margin-bottom: 15px;
}

.confirmation-dialog-buttons {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
}

.confirmation-dialog-buttons button,
.custom-button {
  width: 48%;
  /* Ajusta según tus necesidades, deja espacio para el borde y el margen */
  padding: 8px 16px;
  cursor: pointer;
  border: none;
  color: #fff;
  border-radius: 20px;
  /* Ajusta el valor del radio */
}

#confirmButton {
  background-color: blue;
}

#cancelButton {
  background-color: #f44336;
}

/*  ...... */

.message-alert-header {
  padding: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.message-alert-header h3 {
  margin: 0;
  /* Elimina el margen predeterminado del título */
  text-align: center;
  /* Centra horizontalmente */
  flex: 1;
  /* Ajusta la proporción de espacio que ocupan en el contenedor */

}

.message-alert-content {
  padding: 15px;
}

.message-alert-content p {
  text-align: center;
  /* Centra el texto dentro del párrafo */
  font-weight: bold;
  /* Aplica negrita al texto */
  margin-top: 15px;
}

.success-header {
  background-color: #66c069;
  /* Color de fondo para éxito en el header */
  color: #fff;
  /* Color del texto para éxito en el header */
}

.success-content {
  background-color: #fff;
  /* Color de fondo para éxito en el contenido */
  color: rgb(9, 112, 172);
  /* Color del texto para éxito en el contenido */
}

.error-header {
  background-color: #f44336;
  /* Color de fondo para error en el header */
  color: #fff;
  /* Color del texto para error en el header */
}

.error-content {
  background-color: #fff;
  /* Color de fondo para error en el contenido */
  color: red;
  /* Color del texto para error en el contenido */
}


/* Contenedor base del modal detalles del producto */
/*
.div-modal-detalles-producto {
  display: none; 
  position: fixed; 
  z-index: 3000; 
  padding-top: 100px; 
  left: 0;
  top: 0;
  width: 100%; 
  height: 100%;
  overflow: auto; 
  background-color: rgba(0, 0, 0, 0.4);
  margin: 0em;
}
*/


/* Contenido del modal ver detalles  del producto */
/*
.modal-content-custom {
  background-color: white;
  margin: auto;
  width: 90%;
  max-width: 900px;
  border-radius: 12px;
  animation: slideDown 0.3s ease;
  max-height: 85vh;
  overflow-y: auto;
  position: relative;
}
  */

.div-modal-detalles-producto {
  display: none;
  position: fixed;
  z-index: 3000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}

/* Contenido del modal */
.modal-content-custom {
  background-color: white;
  margin: 20px auto;
  /* 👈 sube el modal */
  width: 90%;
  max-width: 900px;
  border-radius: 12px;
  animation: slideDown 0.3s ease;
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  position: relative;
}


/* Animación de entrada */
@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-50px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Header del modal */
.modal-content-custom .modal-header {
  padding: 20px 24px;
  border-radius: 12px 12px 0 0;
  position: sticky;
  top: 0;
  z-index: 10;
}

.modal-content-custom .modal-title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}

/* Body del modal */
.modal-content-custom .modal-body {
  padding: 24px;
}

/* Footer del modal */
.modal-content-custom .modal-footer {
  padding: 16px 24px;
  border-radius: 0 0 12px 12px;
  position: sticky;
  bottom: 0;
  background-color: #f8f9fa;
}

/* Estilos para las tarjetas de información */
.modal-content-custom .card.border-0.bg-light {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.modal-content-custom .card.border-0.bg-light:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Scrollbar personalizado para el contenido del modal */
.modal-content-custom::-webkit-scrollbar {
  width: 8px;
}

.modal-content-custom::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}

.modal-content-custom::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

.modal-content-custom::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* Responsive para tablets */
@media (max-width: 992px) {
  .modal-content-custom {
    width: 95%;
  }

  .div-modal-detalles-producto {
    padding-top: 80px;
  }
}

/* Responsive para móviles */
@media (max-width: 768px) {
  .modal-content-custom {
    width: 98%;
    max-height: 90vh;
  }

  .div-modal-detalles-producto {
    padding-top: 60px;
  }

  .modal-content-custom .modal-header,
  .modal-content-custom .modal-body,
  .modal-content-custom .modal-footer {
    padding: 16px;
  }
}

/* Estilos para el botón de cerrar */
.modal-content-custom .btn-close {
  opacity: 1;
}

.modal-content-custom .btn-close:hover {
  opacity: 0.8;
}

/* Asegurar que el contenido no se vea afectado por otros estilos */
.modal-content-custom * {
  box-sizing: border-box;
}

/*fin del estilo del modal detalle de producto*/