@media (max-width:1980px) and (min-width: 480px) {

  .contenedorcot {

    display: block;
    margin: auto;
    width: 1300px;



  }

  .MeanWellcel {

    display: none;
  }

  .ocultar2 {

    display: none;
  }


}

/* funcion celular logo */
@media (max-width:600px) {

  .ocultar {

    display: none;
  }

  .MeanWellcel {
    position: relative;
    right: -4px;
    top: -24px;
    height: 69px;
  }

}

/* Tamaño del logo para los informes */
.logoinforme {

  height: 60px;
}

.qr {

  height: 98px;
}


.qrimagen {

  width: 150px;
}


.MeanWell {
  height: 71px;

}



.logoinfImprimir {
  height: 74px;
}







.txcolor p {

  color: #e72e25;
  font-size: 16px;
  font-family: Arial;
  text-transform: uppercase;
  font-weight: 2;
  font-weight: bold;
  text-align: justify;
}







/*foto del fondo del login */
.login-page {
  margin: 0;
  padding: 0;
  background: #F3F3F3;
  background-size: cover;
  background-position: center;
  font-family: sans-serif;
}


/* Tamaño del logo dentro del programa */
.logomennu {
  width: 183px;
  /* height: 33px; */
  margin-left: -3px;
}

/* tamaño de logo en el acceso */
.logoEmpresa {
  width: 170px;
  height: 90px;
}

/* Tamaño del logo cuando se encoje*/
.p {
  width: 51px;
  height: 38px;
  margin-left: 4px;
  margin-top: 11px;
}

/* tamaño de logo en el acceso */
.logologin {
  width: 170px;
  height: 80px;
}


/* tamaño de logo al actualizar datos */
.logod {
  width: 150px;
  height: 70px;
}

/* zoom para la imagenes */
.zoom {
  /* Aumentamos la anchura y altura durante 2 segundos */
  transition: width 2s, height 2s, transform 2s;
  -moz-transition: width 2s, height 2s, -moz-transform 2s;
  -webkit-transition: width 2s, height 2s, -webkit-transform 2s;
  -o-transition: width 2s, height 2s, -o-transform 2s;
}

.zoom:hover {
  /* tranformamos el elemento al pasar el mouse por encima al doble de
        su tamaño con scale(2). */
  transform: scale(3);
  -moz-transform: scale(3);
  /* Firefox */
  -webkit-transform: scale(3);
  /* Chrome - Safari */
  -o-transform: scale(3);
  /* Opera */
}



/* stilo iconos  */

.nav-icon {
  color: #FFFFFF;
}

.nav-icon:hover {
  color: #FFFFFF;
}

/* stilo letras  */
.letra {
  color: #FFFFFF;
}

.letra:hover {
  color: #FFFFFF;
}





/* Estilo del formulario de actualizacion de datos  */


.cuadro {
  background: #F3F3F3;
  color: #000000;
}


/*Estilo para el cliente*/
.cliente {

  color: #000000FF;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  text-align: center;
  font-size: 12px;
}

/*Estilo para el cliente*/
.clienten {

  color: #000000FF;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  text-align: center;
  font-size: 12px;
}

/*Estilo para el cliente nuevo*/
.texnoregistrado {

  background: #404040FF;
  color: #FFFFFFFF;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  text-align: center;
}


.letracliente {

  color: #000000FF;
}

.letracliente:hover {

  color: #0094FFFF;
}











.dataTables_wrapper .dataTables_paginate .paginate_button,
.icon {

  font-size: 13px
}



/*datos de pago*/
.numero {

  font-size: 15px;
  font-family: Arial;
  color: #000000;
}



.colormenu {
  background: #000000;
}

.brand-link {
  background: #FFFFFFFF;
}


.bg-navy {
  background-color: #232b54 !important;
}


.fa-copy,
.fa-file-excel,
.fa-file-csv,
.fa-file-pdf,
.fa-print {
  color: #000000FF;
}







/****************    
CODIGO SPINNER
****************/
#contenedor-spinner {
  background-color: rgba(250, 240, 245, 0.9);
  height: 100%;
  width: 100%;
  position: fixed;
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
  z-index: 10000;
}

.spinner,
.spinner:after {
  display: block;
  margin: auto;
  width: 60px;
  height: 60px;
  border-radius: 50%;
}

.spinner {
  background-color: transparent;
  border-top: 5px solid rgb(220, 53, 69);
  border-right: 5px solid rgb(220, 53, 69);
  border-bottom: 5px solid rgb(220, 53, 69);
  border-left: 5px solid rgba(66, 139, 202, .2);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-duration: .8s;
  animation-name: spinner-loading;
  position: absolute;

  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@keyframes spinner-loading {
  0% {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(1turn)
  }
}

/****************    
FIN CODIGO SPINNER
****************/













/****************    
foto de perfil de tercero
****************/


.upload-btn {

  display: block;
  text-align: center;
  margin: 20px auto 20px;
  width: 50%;
  height: 30px;
  background-color: #001f3f;
  color: #FFFFFFFF;
  line-height: 30px;

}

.upload-btn:hover {
  background-color: #007bff;
  color: #FFFFFFFF;
  cursor: pointer;
}


.modal-header {

  background: #001f3f;
  color: white;
}


.close {
  color: white;

}

.close:hover {

  color: #FFFFFFFF;
}



.cajatotal {
  background: #000000FF;
  color: #00FF21FF;
  text-align: center;
  font-size: 35px;
}




.navbar-navy {
  -webkit-box-shadow: 0px 3px 2px 1px rgba(0, 0, 0, 0.75);
  -moz-box-shadow: 0px 3px 2px 1px rgba(0, 0, 0, 0.75);
  box-shadow: 0px 3px 2px 1px rgba(0, 0, 0, 0.75);
}



.multimediaFisica {

  border: black dashed 1px;
  height: 100px;
  text-align: center;
  color: #000;
  padding-top: 12px;
  cursor: pointer;
}

.active-drop {
  background: #77bafa !important;
  border: solid 2px blue !important;
  opacity: .5;
  color: black !important;
}

hr {
  height: 2px;
  width: 100%;
  background-color: #001f3f;
}




.datoscliente {

  color: #FFFFFFFF;

}


.datoscliente:hover {

  color: #0094FFFF;

}


.buscarinput {

  text-align: center;
  font-size: 20px;
  font-family: Arial;
  text-transform: uppercase;
  font-weight: 2;
  text-align: center;
  font-weight: bold;

}

.buscarinput:hover {

  border: solid 2px #001f3f;
}


.botonbuscar {

  box-shadow: 0 1px 3px rgb(0 0 0 / 12%), 0 1px 2px rgb(0 0 0 / 24%) !important;
  border-radius: 0;
  border-width: 6px;
  box-shadow: none;
}


.iconobuscar {

  font-size: 20px;
  font-weight: bold;
}



.navbar-nav li:hover>ul {

  display: block;
}

.navbar-navy {
  background-color: #232b54;
}


.sidebar-dark-primary .nav-sidebar>.nav-item>.nav-link.active,
.sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active {
  background-color: #635caa;
  color: #fff;
}




.card-navy:not(.card-outline)>.card-header {
  background-color: #232b54;
}




.modal-header {
  background: #232b54;
  color: white;
}









.txcodigo {

  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}



.letras {

  text-align: center;
  font-size: 13px;
  font-family: Arial;
  font-weight: 2;
  text-align: center;
  font-weight: bold;

}

.letras2 {

  text-align: center;
  font-size: 16px;
  font-family: Arial;
  text-transform: uppercase;
  font-weight: 2;
  text-align: center;
  font-weight: bold;

}


.boton {

  padding: 1px;
}





.table .thead-dark th {
  color: #fff;
  background-color: #232b54;
  border-color: #383f45;
}


.tablecot {
  color: #fff;
  background-color: #232b54;
  border-color: #383f45;

}

.txcot {


  font-size: 13px;
  font-family: Arial;
  text-align: left
}


.txcot2 {

  font-size: 16px;
  font-family: Arial;
  text-transform: uppercase;
  font-weight: 2;
  font-weight: bold;

}






.texto {
  font-size: 18px;
  white-space: pre;
}

.textobs {
  font-size: 12px;
}



.textodos {
  position: relative;
  right: auto;
}


/* salto de linea al imprimir */
@media print {

  /* Aquí irían tus reglas CSS específicas para imprimir */
  .article {
    page-break-before: always;
  }

}


.thhome {

  background-color: #000000FF;
}


.thtxtotal {


  font-size: 20px;
  font-family: Arial;
  text-transform: uppercase;
  font-weight: 2;
  font-weight: bold;
  color: #00FF28FF;
  white-space: pre;
}



.txtittle {

  font-size: 12px;
}



.pesos {

  font-size: 29px;
}




.parrafo {
  margin-top: 0;
  margin-bottom: 0rem;
}


.container-imagen {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}



#imagent {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
 
  margin: auto;
  /* Centra la imagen horizontalmente */
  display: block;
  /* Para que se apliquen correctamente los márgenes */
}






.alert a {
  color: #000000;
  text-decoration: underline;
}


input[readonly] {
  /* Estilos que deseas aplicar a los campos de entrada con el atributo readonly */
  background-color: #99999969;
  /* Ejemplo de cambio de color de fondo */
  color: #000;
  /* Ejemplo de cambio de color de texto */
  /* Otros estilos... */
}



.txcajacaracteristicas {

  height: 100px !important;
}

/*cambio de colores del iconos de descripcion en el cotizador */
/*globo */
.coloRespuesta:before {

  color: #28a745;
}

.coloRojo:before {

  color: #dc3545;
}

.coloGris:before {

  color: #6c757d;
}


.coloAzul:before {

  color: #007bff;
}


/*Imagen foto  */
.txcolori:before {

  color: #000;
}

/* Centrar el campo de búsqueda para la tabla #tblproductos */
#tblproductos_wrapper .dataTables_filter {
  text-align: center;
  margin-bottom: 10px;
  /* Espaciado opcional al final del campo de búsqueda */
}

#tblproductos_wrapper .dataTables_filter input[type="search"] {
  width: 89%;
  height: 36px;
  display: inline-block;
  border: 1px solid #d4d4d4;
  font-size: 24px;
}




/* Centrar el campo de búsqueda para la tabla #tblproductos */
#tbllistadoimportacion_wrapper .dataTables_filter {
  /* text-align: center; */
  margin-bottom: 10px;
  /* Espaciado opcional al final del campo de búsqueda */
}

#tbllistadoimportacion_wrapper .dataTables_filter input[type="search"] {
  width: 89%;
  height: 36px;
  display: inline-block;
  border: 1px solid #d4d4d4;
  font-size: 24px;
}



.styledTextarea {
  width: 100%;
  /* Ajusta el ancho según tus preferencias */
  height: 150px;
  /* Ajusta la altura según tus preferencias */
  padding: 10px;
  /* Agrega espaciado interno según tus preferencias */
  border: 1px solid #ccc;
  /* Agrega un borde según tus preferencias */
  border-radius: 5px;
  /* Ajusta el radio de borde según tus preferencias */
  font-family: Arial, sans-serif;
  /* Elige una fuente */
  font-size: 14px;
  /* Elige un tamaño de fuente */
  resize: vertical;
  /* Permite redimensionar verticalmente */
  /* Agrega más estilos según tus necesidades */
}



.resaltar {
  background-color: #dc3545 !important;
  color: #ffff;
}


.tablereservas {
  cursor: pointer;
}





.nuevo-input {
  text-align: center;
  -moz-border-radius: 200px 200px 200px 200px;
  -webkit-border-radius: 200px 200px 200px 200px;
  display: block;
  width: 100%;
  height: calc(2.25rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #fff;
  background-color: #f00;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

body {
  font-family: Arial, sans-serif;
}



.corteInputsContainer {
  display: flex;
  flex-wrap: wrap;
  /* Permite que los elementos se envuelvan automáticamente */
}

.corteInput {
  flex: 0 0 auto;
  /* Indica que los elementos pueden crecer y encogerse automáticamente */
  margin-right: 10px;
  /* Espacio entre cada input */
  margin-bottom: 10px;
  /* Espacio debajo de cada fila de inputs */
}

.corteInput input {
  width: 80px;
  text-align: center;
  border-radius: 63px;
  /* Puedes especificar un solo valor para los bordes */
  border: 1px solid #f00f0f;
  margin-right: 400px;
}

.corteInput input[readonly] {
  background-color: #ff000000;
  color: #000;
}





/* Estilo del scrollbar */
::-webkit-scrollbar {
  width: 10px;
  /* Ancho del scrollbar */
}

/* Estilo del track del scrollbar (la parte no desplazada) */
::-webkit-scrollbar-track {
  background: #f1f1f1;
  /* Color de fondo del track */
}

/* Estilo del thumb del scrollbar (la barra desplazable) */
::-webkit-scrollbar-thumb {
  background: #888;
  /* Color del thumb */
}

/* Estilo del thumb del scrollbar cuando se pasa el mouse por encima */
::-webkit-scrollbar-thumb:hover {
  background: #555;
  /* Color del thumb al pasar el mouse */
}


.txjustificar:focus {
  border-color: red !important;
  /* Cambiar el color del borde al enfocar el campo */
  box-shadow: 0 0 5px red !important;
  /* Agregar una sombra al enfocar el campo */
}




img.mediana {
  width: 71px !important;
  height: 72px !important;
}











/*Spiner de movimineto para filtar cuando buscan en el datatable*/

.contenedor-spinner {
  background-color: rgba(0, 0, 0, 0.5);
  /* Color de fondo con transparencia */
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  /* Asegura que esté por encima de la tabla */
  display: none;
  /* Por defecto oculto */
  justify-content: center;
  align-items: center;
}

#spinner,
#spinner:after {
  display: block;
  margin: auto;
  width: 60px;
  height: 60px;
  border-radius: 50%;
}

#spinner {
  background-color: transparent;
  border-top: 5px solid rgb(220, 53, 69);
  border-right: 5px solid rgb(220, 53, 69);
  border-bottom: 5px solid rgb(220, 53, 69);
  border-left: 5px solid rgba(66, 139, 202, .2);
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-duration: .8s;
  animation-name: spinner-loading;
  position: absolute;

  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@keyframes spinner-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


.tablecalculo thead th {
  vertical-align: bottom;
  /* border-bottom: 2px solid #dee2e6; */
}

.error-message {
  color: red;
  font-size: 12px;
  display: none;
  margin-top: 5px;
}


/* Estilos para el cliente con ID 1 */
.cliente-1 {
  background-color: #ffcccc;
  /* Color de fondo rosa claro */
}


#observacionesList {
  list-style-type: none;
  /* Quitar los puntos de la lista */
  padding: 0;
}

.observation-item {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
  /* Espacio entre las observaciones */
}

.observation-item span {
  flex-grow: 1;
  /* Permitir que el texto de la observación ocupe todo el espacio disponible */
  margin-right: 10px;
  /* Espacio entre el texto de la observación y el botón */
}

.btn-remove {
  margin-left: 10px;
}

/* table.table-bordered.dataTable tbody th, table.table-bordered.dataTable tbody td {
    border-bottom-width: 1px;
}

table.table-bordered.dataTable th, table.table-bordered.dataTable td {
    border-left-width: 1px;
} */

/*.table-bordered th, .table-bordered td {
    border: 1px solid #e6dede82;
}*/


.fila-modificada {
  background: linear-gradient(135deg, #fd7e14 0%, rgba(253, 126, 20, 0.8) 100%);
}



.modo {
  margin-bottom: -1rem;
}

#modo {
  font-size: 30px;
  font-weight: bold;
  background: linear-gradient(90deg, #6c757d, #fff, #6c757d);
  background-size: 200%;

  -webkit-background-clip: text;
  background-clip: text;
  animation: moveLight 3s infinite;

}


.badges {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 250%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}





/* Ajustar la columna de "Producto" para que tenga un ancho amplio */
#tbllistadoConfirmar th:nth-child(2),
#tbllistadoConfirmar td:nth-child(2) {
  min-width: 300px;
  /* Ajusta el ancho según necesites */
  max-width: 400px;
  /* Limitar el ancho máximo para evitar desbordes */
  white-space: normal;
  /* Permitir quiebres de línea */
  word-wrap: break-word;
  /* Ajustar palabras largas */
}





/* Estilos iniciales */
.info-box {
  transition: all 0.3s ease;
}

.info-box .info-box-text {
  color: #000000;
  transition: color 0.3s ease;
  font-size: 15px;
}

/* Estilos para los gradientes y texto */
.info-box.gradient-red {
  background: linear-gradient(135deg, #dc3545 0%, #ff5a67 50%, rgba(220, 53, 69, 0.8) 100%);
}

.info-box.gradient-warning {
  background: linear-gradient(135deg, #ffc107 0%, #ffd65c 50%, rgba(255, 193, 7, 0.8) 100%);
}

.info-box.gradient-primary {
  background: linear-gradient(135deg, #007bff 0%, #3399ff 50%, rgba(0, 123, 255, 0.8) 100%);
}

.info-box.gradient-orange {
  background: linear-gradient(135deg, #fd7e14 0%, #ff9f4d 50%, rgba(253, 126, 20, 0.8) 100%);
}

.info-box.gradient-success {
  background: linear-gradient(135deg, #28a745 0%, #52c77a 50%, rgba(40, 167, 69, 0.8) 100%);
}

.info-box.gradient-maroon {
  background: linear-gradient(135deg, #d81b60 0%, #e57373 50%, rgba(216, 27, 96, 0.8) 100%);
}

.info-box.gradient-maroon .info-box-text {
  color: #ffffff !important;
}


/* Cambio de color del texto cuando está activo */
.info-box.gradient-red .info-box-text,
.info-box.gradient-warning .info-box-text,
.info-box.gradient-primary .info-box-text,
.info-box.gradient-orange .info-box-text,
.info-box.gradient-success .info-box-text {
  color: #ffffff !important;
}

.info-box {
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.125), 0 1px 3px rgba(0, 0, 0, 0.2);
  border-radius: 0.25rem;
  background-color: #fff;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  /* min-height: 80px; */
  padding: 0.2rem;
  position: relative;
  width: 100%;
}




.tabla-reservas {
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  width: 100%;
  max-width: 300px;
  margin: 10px 0;
  cursor: pointer;
  transition: all 0.3s ease;
}

.tabla-reservas:hover {
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transform: translateY(-2px);
}

.tabla-reservas tbody tr td {
  padding: 7px 15px;
  border-bottom: 1px solid #eee;
  text-align: center;
  /*    font-size: 14px;*/
}

.tabla-reservas tbody tr:last-child td {
  border-bottom: none;
}

.tabla-reservas td:first-child {
  background-color: #f8f9fa;
  font-weight: bold;
  width: 40px;
}

.tabla-reservas .cantidad-normal {
  color: #2c3e50;
  font-weight: 500;
}

.tabla-reservas .cantidad-alerta {
  color: #e74c3c;
  font-weight: bold;
  animation: parpadeo 2s infinite;
}

@keyframes parpadeo {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
  }
}




/*
Hacer el miodal mas grande
}*/








.modal-fullscreen {
  width: 100%;
  max-width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

.modal-fullscreen .modal-content {
  height: 100%;
  border-radius: 0;
}

.modal-fullscreen .modal-body {
  overflow-y: auto;
  height: calc(100% - 120px);
  /* Ajuste para header y footer */
}









/* Ocultar el borde del contenedor */
#reader__camera_selection,
#reader__dashboard_section {
  border: none;
}

/* Cambiar el color de fondo del lector */
#reader {
  background-color: #f9f9f9;
  padding: 10px;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

/* Botones de control */
#reader__dashboard_section_csr button {
  background-color: #007bff;
  /* Azul Bootstrap */
  color: #fff;
  border: none;
  padding: 10px 15px;
  border-radius: 4px;
  font-weight: bold;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

#reader__dashboard_section_csr button:hover {
  background-color: #0056b3;
}

/* Texto de estado */
#reader__status_span {
  font-size: 16px;
  color: #333;
  margin-top: 10px;
}

/* Estilo del contenedor principal */
#reader__dashboard_section_csr {
  display: none;
  text-align: center;
}

/* Contenedor para la selección de archivos */
#file-upload-container {
  text-align: center;
  margin: auto;
  margin-bottom: 20px;
  width: 80%;
  max-width: 600px;
  border: 6px dashed #d1d5db;
  /* Color gris claro */
  border-radius: 10px;
  /* Bordes redondeados */
  padding: 20px;
  background-color: #f9fafb;
  /* Fondo suave */
  transition: all 0.3s ease-in-out;
}

#file-upload-container:hover {
  border-color: #3b82f6;
  /* Cambia el color del borde al pasar el mouse */
  background-color: #f3f4f6;
  /* Fondo un poco más oscuro */
}

/* Botón de selección de archivos */
#html5-qrcode-button-file-selection {
  background-color: #3b82f6;
  /* Azul */
  color: #ffffff;
  border: none;
  border-radius: 5px;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

#html5-qrcode-button-file-selection:hover {
  background-color: #2563eb;
  /* Azul más oscuro */
}

/* Texto informativo */
#file-upload-container div {
  font-size: 14px;
  font-weight: 400;
  color: #6b7280;
  /* Gris oscuro */
  margin-top: 10px;
}

/* Botón para solicitar permisos de cámara */
#html5-qrcode-button-camera-permission {
  background-color: #10b981;
  /* Verde */
  color: #ffffff;
  border: none;
  border-radius: 5px;
  padding: 10px 20px;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  margin-bottom: 20px;
}

#html5-qrcode-button-camera-permission:hover {
  background-color: #059669;
  /* Verde más oscuro */
}











.carrier-container {
  transition: all 0.3s ease;
  border-radius: 15px;
  padding: 15px;
  text-align: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.carrier-container:hover {
  transform: scale(1.05);
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2);
  background-color: #f8f9fa;
}

.carrier-image {
  width: 120px;
  height: 120px;
  object-fit: contain;
  border-radius: 50%;
  border: 3px solid #f8f9fa;
  transition: all 0.3s ease;
}

.carrier-container:hover .carrier-image {
  border-color: #007bff;
}

.carrier-name {
  margin-top: 10px;
  font-weight: bold;
  color: #333;
}






/* Estilo base para el input del lector QR */
#input-lectora-laser {
  border: 2px solid #d3d3d3;
  /* Borde gris claro por defecto */
  background-color: #f5f5f5;
  /* Fondo gris muy claro */
  opacity: 0.7;
  /* Reducir la opacidad para indicar que no está activo */
  transition: all 0.3s ease;
  cursor: not-allowed;
  /* Cursor indica que no está activo */
}

/* Estilo cuando el input está enfocado */
#input-lectora-laser:focus {
  border-color: #2ecc71;
  /* Verde suave */
  background-color: #e8f5e9;
  /* Fondo verde muy claro */
  opacity: 1;
  /* Opacidad completa */
  cursor: text;
  /* Cursor de texto */
  outline: none;
  /* Quitar el contorno por defecto */
  box-shadow: 0 0 5px rgba(46, 204, 113, 0.5);
  /* Sombra sutil verde */
}



.btn-orange {
  background-color: #fd7e14;
  border-color: #fd7e14;
  color: #ffffff;
}





.dropdown-menu-lg {
  max-width: 380px;
  min-width: 308px;
  padding: 11px;
}





.media {
  font-size: 0.9rem; /* Tamaño de fuente más pequeño */
}

.media .badge {
  font-size: 0.8rem; /* Tamaño de badge más pequeño */
}

.media p {
  margin-bottom: 0; /* Eliminar márgenes inferiores en los párrafos */
}



/* Contenedor principal para las tarjetas */
.historial-container {
  display: flex;
  flex-wrap: wrap; /* Permite que los elementos se envuelvan si no hay suficiente espacio */
  gap: 15px; /* Espaciado entre los elementos */
  justify-content: flex-start; /* Alinea los elementos al inicio */
}

/* Estilo para cada tarjeta del historial */
.historial-item {
    flex: 0 0 calc(33.333% - 15px);
    max-width: calc(33.333% - 15px);
    width: 471px;
    background-color: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Ajuste para pantallas más pequeñas */
@media (max-width: 768px) {
  .historial-item {
    flex: 0 0 calc(50% - 15px); /* Ocupa la mitad del ancho en pantallas pequeñas */
    max-width: calc(50% - 15px);
  }
}

@media (max-width: 480px) {
  .historial-item {
    flex: 0 0 100%; /* Ocupa todo el ancho en pantallas muy pequeñas */
    max-width: 100%;
  }
}




.active-card {
  border: 1px solid #007bff !important;
  box-shadow: 0 0 10px rgba(0,123,255,0.5);
  border-radius: 0.5rem;
}





.notificacion-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #28a745; /* verde éxito */
    color: white;
    padding: 12px 20px;
    z-index: 9999;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    font-family: 'Segoe UI', sans-serif;
    animation: slideDown 0.3s ease;
}

.notificacion-contenido {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
}

#mensaje-notificacion {
    font-weight: 500;
    font-size: 16px;
}

.btn-cerrar {
    background: transparent;
    border: none;
    color: white;
    font-size: 20px;
    cursor: pointer;
}

.btn-cerrar:hover {
    color: #ddd;
}

@keyframes slideDown {
    from { top: -60px; opacity: 0; }
    to { top: 0; opacity: 1; }
}




.highlight-erp {
  background-color: #d4edda !important; /* Verde suave tipo éxito */
  color: #155724 !important; /* Verde más fuerte para el texto */
  font-weight: bold;
}

.contenedor-etiquetas {
    overflow-x: auto;
    white-space: nowrap;
}




.etiqueta-bloque {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 60px;           /* ajusta según tu diseño */
    margin-bottom: 5px;
}

.etiqueta-bloque .btn {
    width: 100%;
    padding: 4px 0;
}

/* .cantidad-etiqueta {
    font-size: 12px;
    color: #333;
    margin-top: 2px;
} */
.fs-5 {
    font-size: 1.25rem !important; /* un poco más grande */
}

.etiqueta-bloque .btn.active {
    background-color: #0d6efd;
    color: white;
    border-color: #0d6efd;
}







.cantidad-etiqueta {
    font-size: 1rem;
    margin-top: 5px;
}

.active .cantidad-etiqueta {
    color: white;
}

.contenedor-etiquetas button.active {
    background-color: #007bff;
    border-color: #007bff;
    color: white;
}





.cantidad-etiqueta {
    position: sticky;
    top: 0;
    z-index: 1000;
    background-color: white;
    
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}


/* CSS para hacer sticky las etiquetas */
.contenedor-etiquetas-sticky {
    position: sticky;
    top: 0;
    z-index: 1000;
    background-color: white;
    padding: 15px 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    margin-bottom: 20px;
}

/* Efecto adicional al hacer scroll */
.contenedor-etiquetas-sticky.scrolled {
    box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}


/* Estilos compactos para instrucciones */
.step-num {
    background: rgba(255,255,255,0.2);
    border-radius: 50%;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 12px;
    flex-shrink: 0;
}

.step-item {
    transition: all 0.2s ease;
    font-size: 14px;
}

.step-item:hover {
    background: rgba(255,255,255,0.15) !important;
    transform: translateX(3px);
}

.step-text {
    font-weight: 500;
}

.instructions-compact .btn {
    border-radius: 15px;
    font-weight: 500;
    transition: all 0.2s ease;
}

.instructions-compact .btn:hover {
    transform: translateY(-1px);
}


@media (max-width: 991.98px) {
  .modal-content-scrollable {
    max-height: 95vh;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
  }
  .modal-content-scrollable .modal-body {
    flex: 1 1 auto;
    overflow-y: auto;
    max-height: none;
  }
}

/* Layout horizontal para las tarjetas de historial */
.historial-horizontal {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  justify-content: flex-start;
}

.historial-horizontal .historial-item {
  flex: 0 0 calc(33.333% - 10px);
  max-width: calc(33.333% - 10px);
}

@media (max-width: 768px) {
  .historial-horizontal .historial-item {
    flex: 0 0 calc(50% - 7.5px);
    max-width: calc(50% - 7.5px);
  }
}

@media (max-width: 480px) {
  .historial-horizontal .historial-item {
    flex: 0 0 100%;
    max-width: 100%;
  }
}



   /* Estilos para cuadros de filtros resaltados - MÁS ESPECÍFICOS */
        
        /* Estilos más específicos para el filtro activo */
        .filtro-cuadro.filtro-activo .info-box,
        .color.filtro-cuadro.filtro-activo .info-box {
            background-color: #fff3cd !important;
            border: 2px solid #ffc107 !important;
            box-shadow: 0 0 15px 3px rgba(255, 193, 7, 0.8) !important;
        }
        
        .filtro-cuadro.filtro-activo .info-box-icon,
        .color.filtro-cuadro.filtro-activo .info-box-icon {
            background-color: #ffc107 !important;
            box-shadow: 0 0 10px rgba(255, 193, 7, 0.7) !important;
        }
        
        /* Para el select de etiquetas - MÚLTIPLES SELECTORES */
        .bootstrap-select.filtro-activo .btn {
            background-color: #fff3cd !important;
            border-color: #ffc107 !important;
            color: #333 !important;
            box-shadow: 0 0 12px rgba(255, 193, 7, 0.7) !important;
        }
        
        .bootstrap-select.filtro-activo button {
            background-color: #fff3cd !important;
            border-color: #ffc107 !important;
            color: #333 !important;
            box-shadow: 0 0 12px rgba(255, 193, 7, 0.7) !important;
        }
        
        .btn-group.filtro-activo .btn {
            background-color: #fff3cd !important;
            border-color: #ffc107 !important;
            color: #333 !important;
            box-shadow: 0 0 12px rgba(255, 193, 7, 0.7) !important;
        }
        
        .form-group.filtro-activo .bootstrap-select .btn {
            background-color: #fff3cd !important;
            border-color: #ffc107 !important;
            color: #333 !important;
            box-shadow: 0 0 12px rgba(255, 193, 7, 0.7) !important;
        }
        
        /* Estilos para el select de shippment activo */
        .selectShippment.filtro-activo select {
            background-color: #fff3cd !important;
            border-color: #ffc107 !important;
            color: #333 !important;
            box-shadow: 0 0 12px rgba(255, 193, 7, 0.7) !important;
        }
        
        .selectShippment.filtro-activo {
            background-color: #fff3cd !important;
            border-radius: 5px;
            padding: 5px;
        }



 .pick-button {
  background-color: #d7d7d7;
  border: 1px solid #d7d7d7;
  color: white;
  padding: 10px 20px;
  border-radius: 20px;
  cursor: pointer;
  margin: 3px;
  font-size: 0.95em;
  font-weight: 600;
  transition: all 0.3s ease;
  min-width: 100px;
}

/* .pick-button:hover {
  background-color: #d7d7d7;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
} */

.pick-button.active {
    color:#333;
  background-color: #ffc107;
  border-color: #ffc107;
  box-shadow: 0 0 0 0.2rem rgba(0255, 193, 7, 0.7);
}

.pick-button.used {
  background-color: #6c757d;
  border-color: #6c757d;
  cursor: not-allowed;
  opacity: 0.65;
}

.pick-count {

  /* background-color: rgba(255, 255, 255, 0.3); */
  border-radius: 10px;
  padding: 2px 6px;
  font-size: 0.8em;
  margin-left: 8px;
}

.pick-status {
  font-size: 0.75em;
  display: block;
  margin-top: 2px;
  opacity: 0.8;
}

 #tbllistadoQuotesEti tbody tr {
      height: 40px; /* Altura reducida */
  }

  #tbllistadoQuotesEti tbody td {
      padding: 4px 8px; /* Padding reducido */
      vertical-align: middle;
  }

/* Estilos para tabla de movimientos por mes */
.movimientos-por-mes {
    transition: all 0.3s ease;
    animation: fadeInUp 0.4s ease-out;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.movimientos-por-mes h6 {
    color: #856404;
    font-weight: 600;
    margin-bottom: 8px;
}

.movimientos-por-mes .table {
    margin-bottom: 10px;
    background: white;
}

.movimientos-por-mes .table th,
.movimientos-por-mes .table td {
    text-align: center;
    vertical-align: middle;
    border: 1px solid #dee2e6;
    padding: 3px 2px;
}

.movimientos-por-mes .table th {
    background: #f8f9fa !important;
    font-weight: 600;
    font-size: 10px;
    text-transform: capitalize;
}

.movimientos-por-mes .table td {
    font-weight: 600;
    min-width: 39px;
    font-size: 15px;
}

/* Destacar meses del año anterior */
.movimientos-por-mes .table th[style*="background:#e3f2fd"],
.movimientos-por-mes .table td[style*="background:#e3f2fd"] {
    position: relative;
}


/* Destacar mes actual */
.movimientos-por-mes .table th[style*="background:#fff3e0"],
.movimientos-por-mes .table td[style*="background:#fff3e0"] {
    position: relative;
}

.movimientos-por-mes .table th[style*="background:#fff3e0"]:after,
.movimientos-por-mes .table td[style*="background:#fff3e0"]:after {
    content: "📊";
    position: absolute;
    top: -2px;
    right: 2px;
    font-size: 8px;
    opacity: 0.7;
}

/* Responsivo para la tabla */
@media (max-width: 768px) {
    .movimientos-por-mes .table {
        font-size: 9px;
    }

    .movimientos-por-mes .table th,
    .movimientos-por-mes .table td {
        padding: 4px 2px;
        min-width: 28px;
    }
}

/* Hover effect para las celdas */
.movimientos-por-mes .table td:hover {
    background-color: rgba(0, 123, 255, 0.1) !important;
    cursor: pointer;
    transform: scale(1.05);
    transition: all 0.2s ease;
}

/* SOLUCIÓN PARA DOBLE SCROLL - Panel de etiquetas y tabla */

/* Panel de etiquetas sticky - solo para scroll general */
.etiquetas-sticky {
    position: sticky;
    top: 0;
    z-index: 1000;
    background-color: white;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Encabezado de tabla sticky - SOLO PARA SCROLL INTERNO */
.table-responsive #tbllistadoimportacion thead th {
    position: sticky;
    top: 0; /* Solo para scroll interno del contenedor de 700px */
    z-index: 100;
    background-color: #f8f9fa !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* Asegurar que no haya sticky en el scroll general */
#tbllistadoimportacion thead th {
    position: static; /* Quitar cualquier sticky del scroll general */
}

/* Contenedor table-responsive con altura fija */
.table-responsive[style*="height"] {
    position: relative;
    z-index: 99;
    margin-top: 10px; /* Pequeño margen para separar del panel de etiquetas */
}

