@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;700&display=swap");

:root {
  --anchoMax: 1000px;
  --colorPrimario: rgb(200, 0, 0);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
}
body {
  background-color: var(--colorPrimario);
  font-family: "Roboto", sans-serif;
}
#cont {
  min-height: 100vh;
  margin: 0 auto;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 1em;
}
#popScreen{
  display: none;
  position: absolute;
  top: 0;
}
.backMenu{
  width: 100%;
  max-width: var(--anchoMax);
  padding: 0 1em;
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
  align-content: flex-start;
}
.menuFixed{
  z-index: 60;
  background-color: rgba(50,0,0,0.8);
  padding: 2em;
  max-width: 80vw;
  width: fit-content;
  position: fixed;
  top: 2em;
  border-radius: 1em;
  flex-direction: column;
}
.backMenu > h1, .backMenu > h2, .titulo, #backRender > h2{
  width: 100%;
  color: white;
  border-bottom: 3px solid white;
  display: flex;
}
.backMenu > h1 > span {
  font-size: 1.5rem;
}
.backMenu > h2, #backRender > h2{
  border-bottom: 2px solid white;
  align-items: baseline;
  position: relative;
}
.backMenu > span {
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
}
#cont .backSubMenu{
  gap: 1em;
  margin-bottom: 2em;
  flex-grow: 1;
}
.backSubMenu > h1{
  font-size: 1.6em;
}
#backMenuShow{
  align-self:center;
  margin-left: auto;
  font-size: 1rem;
  cursor: pointer;
  display: none;
}
.backCard {
  background-color: white;
  display: flex;
  flex-direction: column;
  gap: 1em;
  border-radius: 1em;
  padding: 1em;
  width: 170px;
  justify-content: center;
  align-items: center;
  text-align: center;
  cursor: pointer;
  user-select: none;
}
.backCard:hover > h1 {
  color: var(--colorPrimario);
}
.backCard h1 {
  transition: 0.5s;
  font-size: 1.2em;
}
.backCard img {
  height: 35px;
}
#backRender {
  margin: 0 auto;
  padding: 0 1em;
  flex-grow: 1;
  max-width: 1000px;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
}
#backRender #prodCards, #backRender #localCards{
  display: flex;
  gap: 2em;
  flex-wrap: wrap;
  justify-content: center;
}
#backRender .backListaProdCard, #backRender .backListaLocalCard{
  background-color: white;
  width: 300px;
  border-radius: 1em;
  overflow: hidden;
  position: relative;
  padding: 1em;
  padding-top: 160px;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#backRender .backListaProdCard img, #backRender .backListaLocalCard img{
  width: 100%;
  position: absolute;
  left: 0;
  top: -150px;
}
#backRender .backListaProdCard h1, #backRender .backListaLocalCard h1{
  font-size: 1.5em;
}
#backRender .backListaFotosCard{
  background-color: white;
  width: 300px;
  border-radius: 1em;
  overflow: hidden;
  position: relative;
  padding: 1em;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#backRender .backListaFotosCard h1{
  font-size: 1.5em;
}
#backRender .backListaFotosCard h2{
  font-size: 1.2em;
}
#backRender .backListaFotosCard img{
  width: 50%;
}
table {
  border-collapse: collapse;
  font-size: 0.8em;
}
table thead, .totalTabla {
  color: white;
  background-color: gray;
}
table tbody tr {
  background-color: white;
}
table tbody tr:nth-child(odd) {
  background-color: rgb(207, 207, 207);
}
table tbody tr:hover {
  background-color: gray;
  color: white;
}
table tbody tr .editar {
  cursor: pointer;
}
table th,
table td {
  border-collapse: collapse;
  padding: 0.7em;
}
table input{
  padding: 0.3em;
  width: 6em;
  text-align: right;
}
.numTabla{
  text-align: right;
}
.unchecked{
  color: gray;
}
.fila td{
  display: flex;
  cursor: pointer;
}
.fila td label{
  flex-grow: 1;
  cursor: pointer;
  padding: 0.7em;
}
.fila td input{
  margin: 0.7em;
}
#tablaCategorias{
  width: auto;
}
.tablaCategoria{
  font-weight: 600;
  color: white;
  background-color: darkred;
  text-align: center;
  font-size: 1.2em;
}
#preciosForm{
  margin: 1em 0;
  width: fit-content;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#preciosEnviar, #entregarPedidos{
  margin: 1em;
}
.contPreciosEnviar{
  background-color: white;
  display: flex;
  justify-content: center;
  position: sticky;
  bottom: 0;
  left: 0;
  width: 100%;
  box-shadow: 0 -8px 15px rgba(0,0,0,0.5);
}
#preciosFabricaEnviar{
  margin: 0.5em;
}
#backRender .editor{
  display: flex;
  flex-direction: column;
  gap: 1em;
  background-color: white;
  padding: 2em;
  border-radius: 1em;
  max-width: 400px;
}
#backRender .editor span{
  display: flex;
  gap: 1em;
  align-items: baseline;
}
#backRender .editor label{
  width: 120px;
  display: flex;
  gap: 0.3em;
}
#backRender .editor label img{
  height: 17px;
}
#backRender .editor h2{
  display: flex;
  gap: 0.5em;
  align-items: center;
}
#backRender .editor h2 img{
  height: 20px;
}
#backRender .editor textarea{
  flex-grow: 1;
}
#backRender .editor input{
  padding: 0.3em;
  flex-grow: 1;
}
#backRender .editor input[type="checkbox"]{
  flex-grow: unset;
}
#backRender .editor #variedades, #backRender .editor #editProdNuevaVariedadCreacion{
  flex-direction: column;
}
#backRender .editor #variedades>span{
  gap: 0;
  align-items: center;
}
.backListaProdCardBoton, .btn{
  padding: 0.5em;
  text-align: center;
  cursor: pointer;
  font-weight: 600;
  border-radius: 5px;
  border: 0;
  display: flex;
  width: fit-content;
  align-items: center;
}
.btnNaranja{
  background-color: darkorange;
}
.btnRojo{
  background-color: var(--colorPrimario);
  color:white;
}
.btnVerde{
  background-color: green;
  color:white;
}
.btnVerdeOutline{
  color: green;
  border: 3px solid green;
}
.btnAzul{
  background-color: blue;
  color:white;
}
.btnGris{
  background-color: gray;
  color:white;
  cursor: auto;
}
.btnSmall{
  font-size: 0.9em;
}
.off{
  opacity: 0.5;
}
.inputBtn{
  border: 0;
}
.backListaProdTablaBoton, .backListaProdFabricaBoton{
  cursor: pointer;
  font-weight: 600;
}
#editProdNuevaVariedad, #editProdEliminarVariedad{
  background-color: rgb(207, 207, 207);
  padding: 0.25em;
}
header{
  width: 100%;
  background-color: white;
  display: flex;
  justify-content: center;
}
header > span{
  width: 100%;
  max-width: var(--anchoMax);
  display: flex;
  gap: 1em;
  align-items: center;
  justify-content: center;
  padding: 1em;
  position: relative;
}
header span img {
  width: 150px;
}
header h3{
  color: gray;
}
#userIcon {
  font-size: 0.9em;
  display: flex;
  flex-direction: column;
  align-items: center;
  font-weight: 600;
  margin-left: auto;
  position: relative;
  cursor: pointer;
  user-select: none;
}
#userIcon img {
  width: 2em;
  margin-bottom: 0.2em;
}
#cerrarSesion{
  width: max-content;
  flex-direction: column;
  gap: 0.5em;
  background-color: white;
  font-weight: 600;
  font-size: 0.85em;
  position: absolute;
  bottom: -90px;
  right: 0px;
  padding: 1em;
  border-radius: 0.5em;
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
  cursor: default;
  z-index: 70;
}
#cerrarSesionBtn{
  cursor: pointer;
  color:red;
}
#cerrarSesionBtn:hover{
  color:darkred;
}
#loginForm {
  background-color: white;
  max-width: 400px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding: 2em;
  border-radius: 1em;
}
#loginForm span {
  font-size: 1.5em;
}
#loginForm input {
  padding: 0.5em;
}
footer {
  background-color: darkred;
  display: flex;
  padding: 1em;
  align-items: center;
  justify-content: center;
  justify-self: flex-end;
  color: white;
  margin-top: 1em;
  width: 100%;
  position: relative;
}
footer a {
  color: inherit;
}
footer img {
  width: 100px;
}
.small {
  width: 100px;
  font-size: 0.7em;
}
.small img {
  height: 25px;
}
.medium{
  font-size: 0.9em;
}
.fotosHeader{
  display: flex;
  align-items: baseline;
  color: white;
  gap: 0.5em;
  margin-bottom: 1em;
  border-bottom: 3px solid white;
  width: 100%;
}
.fotosHeader h1{
  font-size: 1.6em;
}
.fotosHeader h2{
  font-size: 1.3em;
}
#cortina, .cortina, .fondoCortina{
  position: fixed;
  top: 0;
  left: 0;
  min-width: 100vw;
  min-height: 100vh;
  height: 100%;
  background-color: rgba(0,0,0,0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 100;
}
.fondoCortina, #cortina.fondoCortina{
  display: none;
  z-index: 55;
}
#cortina #confirmarEliminar, #cortina #confirmarAbrirCajaAuto, #cortina #confirmarIngreso{
  background-color: white;
  padding: 1em;
  width: 300px;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#cortina #confirmarEliminar span, #cortina #confirmarIngreso span{
  display: flex;
  gap: 1em;
}
.tachado{
  text-decoration: line-through;
}
#errores{
  position: fixed;
  top:0;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 1em;
  gap: 1em;
  z-index: 60;
}
.mensajeErrorForm, .mensajeInfo{
  /* position: fixed;
  top: 10px;
  left: 10px;*/
  max-width: 600px; 
  width: fit-content;
  background-color: darkred;
  color: white;
  padding: 2em;
  border-radius: 1em;
  font-weight: 600;
  cursor: pointer;
  box-shadow: 2px 2px 12px rgba(0,0,0,0.5);
  animation-name: errorForm;
  animation-duration: 8s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}
.mensajeErrorForm a{
  color: orange;
}
.mensajeErrorFormV2{
  position: relative;
  width: fit-content;
}
@keyframes errorForm {
  0% {
    opacity: 0;
    translate: 0 -100px;
  }
  20% {
    opacity: 1;
    translate: 0;
  }
  80% {
    opacity: 1;
    translate: 0;
  }
  100% {
    opacity: 0;
    translate: 0 -100px;
    display: none;
  }
}
#timeBar{
  display: flex;
  width: 100%;
  height: 5px;
  background-color: rgba(0,0,0,0.5);
  margin-top: 0.5em;
  animation-name: errorFormTimeBar;
  animation-duration: 6s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
}
@keyframes errorFormTimeBar {
  0% {
    width: 0%;
    opacity: 1;
  }
  90% {
    width: 90%;
    opacity: 1;
  }
  100%{
    width: 100%;
    opacity: 0;
  }
}
.mensajeInfo{
  position: fixed;
  background-color: darkgreen;
  /* top: unset;
  left: unset; */
  bottom: 10px;
  right: 10px;
}
.pedidosCont, .produccionCont, #produccionHeader, .titulo, .reporte{
  display: flex;
  gap: 2em;
  margin: 1em auto;
  width: 100vw;
  max-width: 1000px;
}
.produccionCont{
  width: 100%;
}
.pedidos, .produccion{
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  gap: 1em;
}
.pedidosCard, .pedidosProdCard{
  background-color: white;
  border-radius: 1em;
  padding: 1em;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  position: relative;
}
.pedidosCard .pedidosCardTipo, .pedidosProdCard .pedidosCardTipo{
  position: absolute;
  width: 40px;
  top: 0px;
  right: -10px;
}
.pedidosCard .pedidosCardMsj, .pedidosProdCard .pedidosCardMsj, #calendarioPedidosLocal .pedidosCardMsj, .pedidoCard .pedidosCardMsj{
  position: absolute;
  width: 30px;
  top: 50px;
  right: -10px;
  animation-name: mensajeNuevo;
  animation-duration: 0.6s;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
  animation-timing-function: ease-in-out;
}
.overflowScroll{
  overflow: auto;
}
@keyframes mensajeNuevo {
  from{
    transform: translateY(-3px) rotate(0deg);
  }
  to{
    transform: translateY(3px) rotate(10deg);
  }  
}
#calendarioPedidosLocal .pedidosCardMsj{
  top: 5px;
  right: -5px;
}
.pedidoCard .pedidosCardMsj{
  top: 3px;
  right: 3px;
  width: 20px;
}
.pedidoCardNuevo{
  font-weight: 600;
  background-color: orange;
  animation-name: pedidoNuevo;
  animation-duration: 1s;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
  order: 10;
}
@keyframes pedidoNuevo {
  from{transform: scale(100%);}
  to{transform: scale(105%);}
}
.pedidoCardLeido{
  order: 5;
}
.pedidoCardEntregado{
  order: 3;
}
.pedidoCardCancelado{
  order: 2;
}
.pedidoCardEntregado, .pedidoCardCancelado{
  display: none;
}
.verPedidosCerrados, #verPedidosProduccion{
  background-color: white;
  border-radius: 1em;
  padding: 1em;
  display: flex;
  flex-direction: row;
  order: 1;
  align-items: center;
  cursor: pointer;
  font-size: 0.9em;
  gap: 1em;
}
.verPedidosCerrados img{
  width: 30px;
}
.pedidoProdentregado{
  display: none;
}
#verPedidosProduccion{
  background-color: orange;
  order: 0;
}
#verPedidosProduccion img{
  width: 50px;
}
.pedidoProdcancelado{
  display: none;
}
.pedidosChat, .produccionPedido{
  display: flex;
  flex-direction: column;
  gap: 1em;
  width: 100%;
}
.chatMensajes{
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.chatMensaje{
  padding: 1em;
  display: flex;
  flex-direction: column;
  width: fit-content;
}
.chatMensaje .chatMensajeFecha{
  font-size: 0.8em;
  opacity: 0.7;
  border-bottom: 1px solid gray;
  margin-bottom: 0.5em;
}
#msjL, #mensajeLocal{
  background-color: lightsalmon;
  border-radius: 1em 1em 0 1em;
  margin-left: 2em;
  align-self: flex-end;
}
#msjU, #mensajeFabrica{
  background-color: white;
  border-radius: 1em 1em 1em 0;
  margin-right: 2em;
}
.chatSend{
  align-self: flex-end;
  display: flex;
  width: 100%;
  position: relative;
}
.chatBtnEnviar{
  background-color: orange;
  padding: 0.5em;
  font-weight: 600;
  cursor: pointer;
  border: 0
}
.chatInput{
  flex-grow: 1;
  padding: 0.5em;
}
.inputError{
  display: none;
  position: absolute;
  top: -100px;
  padding: 1em;
  background-color: orange;
  opacity: 0;
  animation-name: none;
  animation-duration: 6s;
  animation-fill-mode: forwards;
}

@keyframes inputError {
  0%{opacity: 0; top: -50px}
  20%{opacity: 1; top: -100px}
  80%{opacity: 1; top: -100px}
  100%{opacity: 0; top: -150px}
}

.btnChat{
  display: none;
}

.respuestasRapidas{
  display: flex;
  gap: 1em;
  background-color: darkred;
  padding: 0.5em;
  border-radius: 0 0 1em 1em;
  justify-content: center;
}
.respuestasRapidas div{
  background-color: white;
  cursor: pointer;
  padding: 0.5em;
  border-radius: 0.5em;
}
#RRlisto{
  background-color:lightgreen;
}
#RRprep15, #RRprep30{
  background-color:lightskyblue;
}
#RRsinStock{
  background-color:lightcoral;
}
.pedidoCard{
  display: flex;
  flex-direction: column;
  gap: 0.25em;
  background-color: lightgray;
  padding: 0.5em;
  min-width: fit-content;
  position: relative;
}
.pedidoDetalle{
  display: flex;
  flex-direction: column;
  background-color: white;
  padding: 1em;
  gap: 0.5em;
}
.pedidoDetalle > h3:nth-child(1){
  display: flex;
  position: relative;
  height: fit-content;
}
.pedidoDetalle .produccionIconos{
  position: absolute;
  right: 0;
  bottom: 0;
}
.pedidoDetalle .produccionIconos img{
  width: 30px;
/*   position: absolute;
  right: 0;
  bottom: 0; */
  cursor: pointer;
}
.pedidoCard h1{
  font-size: 1em;
}
.pedidoEstado{
  display: flex;
  gap: 1em;
}
.pedidoEstado span{
  min-width: 8em;
}
.pedidoEstadoBoton{
  padding: 1em;
  border: 0;
  border-radius: 0.5em;
  cursor: pointer;
}
#actividadTableCont{
  position: relative;
  width: 90vw;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1em;
  margin-top: 1em;
}
/* #actividadFiltrar{
  position: absolute;
  top: 5px;
  right: 5px;
  padding: 0.4em;
  background-color: orange;
  border-radius: 0.5em;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.8em;
} */
/* #actividadFiltrosTabla{
  position: fixed;
} */
#actividadCerrarFiltros{
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
}
/* #actividadQuitarFiltros{
  background-color: red;
  padding: 0.4em;
  border-radius: 0.5em;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.8em;
  width: fit-content;
} */
#actividadPaginado{
  display: flex;
  align-self: flex-end;
  gap: 1em;
  color: white;
  background-color: gray;
  padding: 0.5em;
}
#actividadPaginado span, .cardCalendarioLocal, .cardCalendarioFabrica{
  cursor: pointer;
}
.anchoMax{
  max-width: 1000px;
  margin: 0 auto;
  width: 100%;
}
#tablaProduccionCard{
  text-align: center;
}
.pedidosProdInfo{
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding: 1em;
  background: white;
  margin-top: 1em;
}
.pedidosProdInfo h2{
  font-size: 1.2em;
}
#calendarioPedidos{
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
#calendarioPedidos div{
  display: flex;
  gap:1em;
  border-bottom: 1px solid gray;
  padding-bottom: 0.2em;
}
#calendarioPedidos div>span:first-child{
  font-weight: 600;
  width: 120px;
}
#calendarioPedidosLocal{
  display: flex;
  gap: 1em;
  overflow: auto;
}
#calendarioPedidosLocal > span {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  position: relative;
}
#calendarioPedidosLocal .btn{
  font-size: 0.9em;
}
#calendarioPedidosLocal h1{
  font-size: 1em;
}
#calendarioPedidosLocal h2{
  font-size: 0.8em;
  color: gray;
  border-bottom: 2px solid lightgray;
}
#calendarioPedidosLocal .pedidoCardLocal{
  padding: 0.5em;
  background-color: lightgray;
  display: flex;
  flex-direction: column;
}
.pedidosProdInfo .localEstadoPedido{
  display: flex;
  gap: 0.5em;
  align-items: center;
}
.pedidosProdInfo .localSemaforo{
  display: flex;
  height: 15px;
  width: 15px;
  border-radius: 50%;
}
.pedidosProdInfo .pedidoCard.proximo, #calendarioPedidosLocal .pedidoCardLocal.proximo{
  border-left: 6px solid grey;
}
.pedidosProdInfo .pedidoCard.abierto, #calendarioPedidosLocal .pedidoCardLocal.abierto{
  border-left: 6px solid yellow;
  order: -5;
}
.pedidosProdInfo .pedidoCard.demorado, #calendarioPedidosLocal .pedidoCardLocal.demorado{
  border-left: 6px solid orangered;
  order: -9;
}
.pedidosProdInfo .pedidoCard.cargado, #calendarioPedidosLocal .pedidoCardLocal.cargado{
  border-left: 6px solid green;
  order: -2;
}
.pedidosProdInfo .pedidoCard.aceptado, #calendarioPedidosLocal .pedidoCardLocal.aceptado{
  border-left: 6px solid blue;
}
.pedidosProdInfo .pedidoCard.entregado, #calendarioPedidosLocal .pedidoCardLocal.entregado{
  border-left: 6px solid violet;
  order: 2;
}
.pedidosProdInfo .pedidoCard.aplazado, #calendarioPedidosLocal .pedidoCardLocal.aplazado{
  border-left: 6px solid red;
  order: -10;
}
.pedidosProdInfo .pedidoCard.personalizado, #calendarioPedidosLocal .pedidoCardLocal.personalizado{
  border-left: 6px solid cyan;
  order: -3;
}
#calendarioPedidosLocal .pedidoCardLocal{
  order: unset !important; 
}
#backRender #nuevaProduccion{
  width: 100%;
  max-width: max-content;
}
#backRender .pedidoProduccionCeldaImporte span{
  display: inline-block;
}
#datosFloat{
  background-color: white;
  border-top: 2px solid gray;
  padding: 1em;
  width: 100%;
  display: flex;
  gap: 1em;
  position: fixed;
  bottom: 0;
  left: 0;
  justify-content: center;
  align-items: center;
  z-index: 2;
}
#backRender #datosFloat > span{
  gap: 0.5em;
}
#backRender #datosFloat input{
  padding: 0.5rem;
  font-size: 1em;
}
#pedidoProduccionTotal{
  font-weight: 600;
  font-size: 1.2em;
}
.pedidoProduccionCantidad{
  width: 4em;
}
.categoriaProduccion{
  border-left: 8px solid orange;
}
.pedidoProduccionUltimoPedido{
  width: 3em;
  text-align: center;
  display: none;
}
.visible{
  display: inline-block;
}
.invisible, #backRender .invisible{
  display: none;
}
#estadoPedidosLocales{
  position: relative;
}
#estadoPedidosLocales > span{
  position: absolute;
  top: 1em;
  right: 1em;
  display: flex;
}
#estadoPedidos{
  font-size: 0.8em;
  display: flex;
  flex-direction: column;
  gap: 1em;
  /* overflow-y: scroll;
  max-height: 350px; */
}
#estadoPedidos h2{
  display: block;
  width: 100%;
  border-bottom: 2px solid black;
}
#estadoPedidos > div > span{
  display: flex;
  flex-direction: row;
  gap: 1em;
  overflow-x: auto;
  border-top: 4px solid green;
  padding: 0.5em 0;
}
#estadoPedidos > div > span.cerrado{
  border-color: darkblue;
  color: rgb(30, 30, 30);
}
#estadoPedidos > div > span.demorado{
  border-color: orangered;
}
#estadoPedidos > div > span.proximo{
  border-color: lightgray;
}
#estadoPedidos > div > span.cerrado > .pedidoCard{
  background-color: lightblue;
  color: darkblue;
}
#estadoPedidos > div > span.proximo{
  opacity: 0.6;
}
/* .produccionSemaforo{
  display: flex;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
#produccionSemaforos{
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  align-items: center;
  border: 2px solid gray;
  padding: 0.5em;
  border-radius: 0.5em;
  align-items: flex-start;
}
#produccionSemaforos > span{
  font-size: 1.2em;
  align-self: center;
}
#produccionSemaforos > div{
  display: flex;
  gap: 1em;
  border-top: 1px solid gray;
  padding-top: 0.5em;
}
#produccionSemaforos > div div{
  display: flex;
  flex-direction: column;
  gap: 0.2em;
}
.prodSemaforoproximo{
  background-color: gray;
}
.prodSemaforoabierto{
  background-color: yellow;
}
.prodSemaforodemorado{
  background-color: orangered;
}
.prodSemaforocargado{
  background-color: green;
}
.prodSemaforoaceptado{
  background-color: blue;
}
.prodSemaforoentregado{
  background-color: blueviolet;
}
.prodSemaforoaplazado{
  background-color: red;
}
.prodSemaforopersonalizado{
  background-color: white;
  border: 1px solid black;
} */
#pedidoProduccionModificar{
  display: flex;
  align-items: center;
  justify-content: center;
  width: min-content;
}
#pedidoProdHeadForm{
  display: flex;
  gap: 0.5em;
}
.sinFlechas::-webkit-outer-spin-button,
.sinFlechas::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
 
.sinFlechas[type=number] {
    -moz-appearance: textfield;
}

#backRender input[type=color] {
  flex-grow:0;
  padding: 0;
}

#muestraColorCategoria{
  display: inline-block;
  height: 10px;
  width: 20px;
}
.categoriaTabla{
  background-color: black;
  color: white;
}
.verProdFabrica{
  cursor: pointer;
  font-weight: 600;
  text-align: center;
  position: relative;
}
.verProdFabrica span{
  visibility: hidden;
  position: absolute;
  bottom: 40px;
  left: 30px;
  border: 10px solid white;
  border-radius: 1em 1em 1em 0;
  box-shadow: 2px 2px 8px rgba(0,0,0,0.5);
  flex-direction: column;
  background-color: white;
  color:black;
}
.verProdFabrica span img{
  width: 150px;
}
.verProdFabrica:hover span{
  visibility: visible;
}
#backRender .editor .cantidadCategoria{
  display: inline;
}
.servicioactivo{
  font-weight: 600;
  color: green;
}
#nuevoLocalCalendario, #nuevoLocalServicios{
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
#nuevoLocalCalendario div, #nuevoLocalServicios div{
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.reporte{
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.reporte h1, .reporte h2{
  color: white;
}
#reportesPedidos{
  display: flex;
  gap: 2em;
  align-items: flex-start;
  flex-wrap: wrap;
}
.tablaCeldaNumero{
  text-align: center;
}
#reportesValorizados table tbody tr td:first-child{
  text-align: left;
}
#reportesValorizados table tbody tr td{
  text-align: center;
}
#detallesFacturacion{
  font-size: 1em;
}
#detallesFacturacion input{
  font-size: 1em;
}
#detallesFacturacion td{
  padding: 0;
}
#detallesFacturacion .cod{
  width: 3em;
}
#detallesFacturacion .cant{
  width: 5em;
}
/* #detallesFacturacion .precio{
  width: 4em;
} */

#backRender #totalFacturacion{
  width: 100%;
}
#itemsfacturacion tr td:first-child,
#itemsfacturacion tr td .cant{
  text-align: center;
}
#itemsfacturacion tr td:nth-child(7),
#itemsfacturacion tr td:nth-child(8){
  text-align: right;
}
#errorInfoFacturacion{
  display: flex;
  width: 20%;
  position: fixed;
  top: 50%;
  left: 40%;
  background-color: var(--colorPrimario);
  color: white;
  font-weight: 600;
  justify-content: center;
  padding: 1em;
  border-radius: 1em;
  box-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}

#tablaReportePlanta{
  width: fit-content;
}
.factCont #factBotones{
  display: flex;
  flex-direction: column;
  gap: 0.7em;
}
.factCont #factBotones hr{
  border: 1px solid white;
}
.factCont #factBotones > h1{
  padding-top: 1em;
  border-top: 2px solid white;
  font-size: 1.2rem;
  color: white;
  cursor: pointer;
  transition: 1s;
  white-space: nowrap;
}
.factCont #factBotones > h1 b{
  display: inline-block;
  transition: 0.5s;
}
.rotar90{
  transform: rotate(90deg);
}
.factCont .factSubCont{
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row;
  gap: 2em;
  width: 100%;
  align-items: flex-start;
}
.factCont #backRender{
  max-width: inherit;
}
.factCont > header img{
  width: 100px;
}
.factCont #logoHeader, #cont #logoHeader{
  position: relative;
}
.factCont #logoHeader #notificacion, #cont #logoHeader #notificacion{
  width: 30px;
  position: absolute;
  top: 10px;
  right: 10px;
  animation-name: notificacionNueva;
  animation-duration: 0.6s;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
  animation-timing-function: ease-in-out;
  display: none;
  cursor: pointer;
}

@keyframes notificacionNueva {
  0%{
    transform: translateY(0px) rotate(0deg);
  }
  50%{
    transform: translateY(0px) rotate(0deg);
  }
  60%{
    transform: translateY(0px) rotate(10deg);
  }
  70%{
    transform: translateY(0px) rotate(0deg);
  }
  80%{
    transform: translateY(0px) rotate(10deg);
  } 
}

.factCont > header > span{
  padding: 0.5em;
}
.factCont #factBotonesRapidos{
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 1em;
  height: fit-content;
}
.factCont #factBotonesRapidos > h1{
  font-size: 1.5em;
  color: white;
  width: 100%;
  border-bottom: 2px solid white;
  margin-bottom: 0.5em;
}
.factCont .factBotonRapido{
  display: flex;
  position: relative;
  overflow: hidden;
  height: 75px;
  width: 150px;
  cursor: pointer;
  border-radius: 15px 0 0 0;
  transition: 0.3s;
}
.factCont #factContCategorias .factBotonRapido{
  height: 140px;
}
.factCont .factBotonRapido .factBotonTxt{
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 150px;
  /* color: white; */
  font-weight: 600;
  font-size: 1.5em;
  /* text-shadow: 3px 3px 2px black; */
  background-color: rgba(255,255,255,0.7);
  padding: 0.2em;
}
.factCont .factBotonRapido .factBotonTxt h1{
  font-size: 0.6em;
}
.factCont .factBotonRapido .factBotonTxt h2{
  font-size: 0.5em;
}
.factCont .factBotonRapido img{
  width: 150px;
  height: 150px;
}
.factCont .factBotonRapido:hover{
  filter: grayscale(100%);
}
.factCont #factBotonesCategoria .factBotonCategoria{
  display: flex;
  padding: 0.5em;
  background-color: orangered;
  color: white;
  cursor: pointer;
  font-weight: 600;
  border-radius: 0.5em 0 0.5em 0;
}
.flexgrow{
  flex-grow: 1;
  justify-content: center;
}
#facturacionDetalles{
  flex-direction: column;
  z-index: 30;
  justify-content: flex-start;
  overflow-y: auto;
  padding: 1em;
}
.btnPedidoEntregado{
  font-size: 0.8em;
  margin-top: 0.5em;
}
#backRender .editor #btnSenia{
  display: none;
}
#backHome{
  font-weight: 600;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  margin-right: 3em;
}
#backHome img{
  width: 2em;
}
#InputRegistroFacturacion input, #InputRegistroGastos input, #inputDesperdicios input{
  margin-left: 0.5em;
  font-size: 1em;
  border: 0;
}
#InputRegistroFacturacion, #InputRegistroGastos, #inputDesperdicios{
  margin-bottom: 1em;
}
#contRegistroFact, #contRegistroGastos{
  display: flex;
  gap: 2em;
}
.resumenRegistroFact, #resumenRegistroGastos{
  background-color: white;
  padding: 1em;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  border-radius: 1em;
  height: fit-content;
}
.resumenRegistroFactSub{
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.resumenRegistroFactSub>div{
  flex-grow: 1;
}
.cortina span{
  display: flex;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  padding: 1em;
  background-color: black;
  animation-name: cortinaSpan;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
}
.cortina span #loadingImg{
  width: 80px;
  transform: translate(0, -7px);
  filter: invert(100%);
  animation-name: loadingImg;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
@keyframes cortinaSpan {
  0%{
    box-shadow: 0 0 0 black;
  }
  100%{
    box-shadow: 0 0 20px black;
  }
}
@keyframes loadingImg {
  0%{
    transform: rotate(0deg);
  }
  90%{
    transform: rotate(360deg);
  }
  100%{
    transform: rotate(360deg);
  }
}
.resumenFacturaciones{
  width: 100%;
  font-size: 0.9em;
}
#reportePlantaCategorias .nombresProductos{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5em;
  max-width: 400px;
}
#reportePlantaCategorias .nombreProducto, #AMcategoriaReportePlanta .productosFabrica span{
  background-color: rgb(62, 62, 62);
  padding: 0.5em;
  color: white;
}
#AMcategoriaReportePlanta .productosFabrica{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.5em;  
}
#backRender #AMcategoriaReportePlanta{
  max-width: 90vw;
}
#backRender #AMcategoriaReportePlanta input{
  max-width: 10em;
}
#editorFacturacion{
  position: relative;
  z-index: 3;
}
#btnFactXtra{
  display: flex;
  padding-left: 2em;
  width: 400px;
}
#btnFactXtra > div{
  background-color: darkorange;
  padding: 1em;
  height: 3em;
  border-radius: 0 0 1em 1em;
  z-index: 2;
}
#btnFactXtra > #btnLlave{
  background-color: lightgray;
}
#btnFactXtra > #btnLlave > img{
  width: 20px;
}
#inputCuit{
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#inputCuit #cuit{
  width: 8em;
  flex-grow: 0;
}
#cuitNombre{
  word-wrap: break-all;
}
#tablaFacturacionLocalRegistros, #tablaGastosLocalRegistros{
  height: fit-content;
}
#tablaFacturacionLocalRegistros tr td{
  height: 100%;
}
#tablaFacturacionLocalRegistros tr td:last-child{
  display: flex;
  gap: 0.5em;
}
#tablaFacturacionLocalRegistros tr td:last-child:hover{
  color: initial;
}
.facturarComanda, .btnNC, .reimprimirTicket{
  width: 25px;
  cursor: pointer;
  transition: 0.3s;
}
.facturarComanda:hover, .reimprimirTicket:hover, .btnNC:hover{
  filter: invert();
}
#facturacionLocalSenias tbody img, #tablaGastosLocalRegistros tbody img, .eliminarDesperdicio, .eliminarDesperdicioOff{
  width: 25px;
  cursor: pointer;
}
#backRender #formasDePago{
  display: flex;
  flex-direction: column;
  gap: 0;
}
#backRender #formasDePago > span{
  display: flex;
  gap: 0;
  width: 100%;
}
#backRender #formasDePago > span > input, #formasDePago > span > label{
  cursor: pointer;
  padding: 0.5em;
  flex-grow: 0;
}
#backRender #formasDePago > span > label{
  flex-grow: 1;
}
#formasDePago > span > label:hover{
  font-weight: 600;
  background-color: rgba(0,0,0,0.1);
}
.pagoMultiple{
  display: none;
}
#preloadSenia{
  display: flex;
  flex-direction: column;
}
#contGastos > div{
  height: fit-content;
}
.factBotoneraBtn{
  display: flex;
  background-color: darkred;
  /* width: 70px; */
 /*  position: absolute;
  bottom: 15px;
  right: 15px; */
  height: fit-content;
  cursor: pointer;
  padding: 0.7em;
  border-radius: 50%;
  transition: 0.5s;
  position: relative;
}
.factBotoneraBtn:hover{
  background-color: orangered;
}
.factBotoneraBtn img{
  width: 30px;
  /* height: auto; */
  filter: invert(100);
}
#factBotoneraXtra{
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.factAll{
  background-color: black;
  color: white;
  font-weight: 600;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.4em;
  height: 1.4em;
}
.factX{
  background-color: darkslategray;
  color: white;
}
.factA{
  background-color: darkblue;
  color: white;
}
.factB{
  background-color: darkgreen;
  color: white;
}
.factC{
  background-color: darkorange;
  color: white;
}
.factS{
  background-color: darkred;
  color: white;
}
.seniaAll{
  font-weight: 600;
}
.seniaPendiente{
  color: var(--colorPrimario);
}
.seniaRetirada{
  color: darkgreen;
}
.seniaCancelada{
  color: gray;
}
.importe{
  text-align: right;
}
.factRegObservaciones, .cierreCajaObservaciones{
  font-size: 1rem;
  display: none;
  flex-direction: column;
  background-color: white;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 1em;
  gap: 0.3em;
  z-index: 10;
  width: 100%;
  box-shadow: 0 0 20px rgba(0,0,0,0.5);
}
.cierreCajaObservaciones{
  font-size: 0.9rem;
}
.factRegObservaciones span, .cierreCajaObservaciones span{
  display: flex;
}
.factRegObservaciones hr:last-child{
  display: none;
}
.factRegInfo, .cierreCajaInfo{
  position: relative;
  cursor: pointer;
  font-size: 1.8em;
}
.factRegInfo:hover .factRegObservaciones, .cierreCajaInfo:hover .cierreCajaObservaciones{
  display: flex;
  color: black;
}
.cierreCajaInfo{
  font-size: 1em;
  font-weight: 600;
}
.factRegSenia{
  color: darkred;
}
.factRegNC{
  color: orangered;
}
.factRegDesc{
  color: darkgoldenrod;
}
#total{
  font-weight: 600;
  font-size: 1.5em;
}
#verMasSenias{
  margin-top: 1em;
}
.btnHeader{
  background-color: white;
  color: var(--colorPrimario);
  font-size: 0.6em;
  margin-left: 1em;
  border-radius: 0.5em 0.5em 0 0;
}
.proPersABM, .pointer{
  font-weight: 600;
  cursor: pointer;
}
.factCont #factBotonesPersonalizados, .factCont #factBotonesCategoria{
  /* margin-top: 1em; */
  display: flex;
  gap: 1em;
  flex-wrap: wrap;
  max-height: 0;
  overflow: hidden;
  transition: 1s;
}
.factBotonPersRapido{
  width: 150px;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  background-color: white;
  color: black;
  padding: 1em;
}
.factBotonPersRapido h1{
  font-size: 1em;
}
.factBotonPersRapido h2{
  font-size: 0.8em;
  color: gray;
}
#cierreCajaContenedor{
  display: flex;
  gap: 1em;
  font-size: 0.9em;
  align-items: stretch;
  align-content: center;
  margin: 1em 0;
}
#cierreCajaContenedor .resumenRegistroFact{
  height: auto;
}
.ocultar{
  display: none;
}
.cierreCajaSigno{
  font-size: 3em;
  color: white;
  font-weight: 600;
  align-self: center;
}
form.editor#cierreCajaCierre{
  max-width: fit-content;
}
form.editor#cierreCajaCierre table thead{
  background-color: white;
  color: black;
  border-bottom: 2px black solid;
}
form.editor#cierreCajaCierre table tbody tr{
  background-color: white;
  border-bottom: 1px black solid;
  transition: 0.3s;
}
form.editor#cierreCajaCierre table tbody tr:hover{
  background-color: lightgray;
  color: black;
}
form.editor#cierreCajaCierre table tbody tr #nombre{
  /* width: 100%; */
  text-align: left;
}
form.editor#cierreCajaCierre table tbody tr input{
  width: 10em;
}
#cierreCajaAperturaContenedor{
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.txtNegro{
  font-weight: 600;
}
.txtRojo{
  font-weight: 600;
  color: var(--colorPrimario);
}
.txtVerde{
  font-weight: 600;
  color: green;
}
.txtAzul{
  font-weight: 600;
  color: blue;
}
.txtGris{
  font-weight: 600;
  color: darkgray;
}
#tablaProduccion tbody tr td img{
  width: 25px;
  animation-name: mensajeNuevo;
  animation-duration: 0.6s;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
  animation-timing-function: ease-in-out;
}
.cierreCajaDetallesOperaciones{
  display: none;
  flex-direction: column;
  gap: 0.5em;
  padding: 1em;
  background-color: white;
  position: absolute;
  left: 150%;
  top: 0;
  box-shadow: 2px 2px 8px rgba(0,0,0,0.5);
  border-radius: 1em;
  font-size: 0.9rem;
  font-weight: 400;
  width: max-content;
}
#cierreCajaDetalles:hover .cierreCajaDetallesOperaciones{
  display: flex;
}
#cierreCajaReporteContenedor{
  display: flex;
  gap: 2em;
  align-items: flex-start;
}
#cierreCajaReporteContenedor hr{
  border: 1px solid gray;
}
#cierreCajaReporteContenedor #btnMas{
  position: absolute;
  top: 0;
  right: 0;
  font-size: 1.2rem;
  cursor: pointer;
  background-color: green;
  user-select: none;
}
#cierreCajaReporteContenedor > div:first-child > div{
  display: flex;
  transition: 0.2s;
  cursor: pointer;
}
#cierreCajaReporteContenedor > div:first-child > div:hover{
  background-color: lightgray;
}
#cierreCajaReporteContenedor > div:first-child > div > span:first-child{
  flex-grow: 1;
  padding-right: 1em;
}
#cierreCajaReporteContenedor > div:first-child > div.reporteOculto{
  font-size: 0.9em;
  display: none;
}
#cierreCajaReporteContenedor .reporteOculto span:first-child{
  width: 60%;
  display: inline-block;
}
#cierreCajaReporteContenedor .reporteOculto span:first-child:before{
  content: "● ";
  color: gray;
}
#cierreCajaReporteContenedor > div{
  background-color: white;
  padding: 2em;
  display: flex;
  flex-direction: column;
  gap: 0.5em;
  max-width: fit-content;
  border-radius: 1em;
}
#cierreCajaReporteContenedor > div h1{
  font-size: 1.5em;
  position: relative;
}
#cierreCajaReporteContenedor > div  h2{
  font-size: 1.2em;
}
#backRender #refPassword{
  display: none;
  font-size: 0.8em;
  border-left: 4px solid var(--colorPrimario);
  padding-left: 0.5em;
}
.sepTabla{
  border-left: 4px solid var(--colorPrimario);
}
.formBoton{
  display: inline-block;
}
#factContCategorias{
  gap: 2em;
  flex-wrap: wrap;
  align-content: center;
  overflow-y: auto;
}
#contSelectLista{
  font-size: 0.8em;
  margin-left: 2em;
  position: absolute;
  right: 0;
  bottom: 0;
  display: flex;
  gap: 1em;
  align-items: baseline;
}

#contSelectLista #listaDePrecios{
  /* font-size: 1em; */
  padding: 0.3em;
}
#headListaSelect{
  margin-bottom: 0.5em;
}

#headListaSelect span{
  flex-grow: 1;
}

#headListaSelect #listaDePrecios{
  display: flex;
  justify-self: flex-end;
  padding: 0.3em;
}
#listasDePreciosEditLocal{
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}
#listasDePreciosEditLocal div{
  display: flex;
  gap: 0.5em;
}
.filtroProduccionActivo{
  background-color: orange;
}
.statsCont{
  display: flex;
  gap: 1em;
  width: 100%;
  height: auto;
}
.statsCont .statsBotonera{
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding: 1em 0;
}
.statsCont span{
  padding: 1em;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.statsCont .statsSubBotonera{
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}
#statsCalendario{
  display: flex;
  flex-direction: column;
  gap: 1em;
  background-color: white;
  padding: 1em;
  border-radius: 0.5em;
}
#statsCalendario label{
  display: inline-block;
  width: 50px;
}

.statsCont #calendarioStats{
  color: white;
  font-size: 1em;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.5em;
  font-weight: 600;
}

#statsRef{
  position: relative;
  align-self: flex-end;
  font-size: 0.8em;
  display: none;
}

#statsRef:hover #statsRefProductos{
  display: flex;
}

#statsRef #statsRefProductos{
  position: absolute;
  color: black;
  bottom: 3em;
  right: 1em;
  background-color: white;
  padding: 1em;
  border-radius: 1em;
  box-shadow: 1px 1px 12px #00000055;
  font-size: 0.8rem;
  display: none;
  flex-direction: column;
  gap: 0.5em;
  width: max-content;
  text-align: left;
}
#statsRef #statsRefProductos span{
  padding: 0;
}
#statsChartFabricaVentasDelDia{
  margin-top: 2em;
}
#signViveka{
  position: absolute;
  bottom: 10px;
  right: 15px;
  font-size: 0.8em;
}
#selectorLocal{
  position: fixed;
  background-color: white;
  padding: 2em;
  height: fit-content;
  display: none;
  flex-direction: column;
  gap: 1em;
  z-index: 60;
  left: 40%;
  width: 20%;
}
.tablaLocalesBtns{
  display: flex;
  gap: 0.5em;
}
#editorLocal #mesasCantidad{
  width: 4em;
}
.stickMenu{
  position: sticky;
  top: 0;
  background-color: var(--colorPrimario);
  z-index: 50;
}
#formDesperdicio{
  overflow: unset;
}
#formDesperdicio table{
  display: block;
  overflow-y: scroll;
}
#formDesperdicio > span {
  display: flex;
  gap: 1em;
}
.imgH1{
  width: 26px;
  margin-right: 0.2rem;
}
#menuExportXubio{
  display: flex;
  background-color: white;
  flex-direction: column;
  gap: 1em;
  padding: 1em;
}
#menuExportXubio img{
  width: 25px;
  margin-right: 0.3em;
}
#usuariosLecturaNotificaciones{
  display: flex;
  gap: 0.7em;
  padding: 1em;
  flex-wrap: wrap;
  background-color: white;
}
#usuariosLecturaNotificaciones > span{
  background-color: lightgray;
  padding: 0.5em;
  font-weight: 600;
  opacity: 0.6;
  order: 2;
  font-size: 0.9em;
}
#usuariosLecturaNotificaciones .notificacionLeida{
  background-color: green;
  color: white;
  opacity: 1;
  order: 1;
}
#notificacionesCont{
  display: flex;
  gap: 1em;
  flex-direction: column;
  margin: 1em 0;
}
#notificacionesCont table{
  width: fit-content;
}
#notificacionesCont table td span.userNotificado{
  display: flex;
  gap: 0.3em;
  max-width: 200px;
  padding: 0.5em;
  overflow-x: auto;
}
#notificacionesCont table td span.userNotificado span{
  color: green;
  background-color: white;
  padding: 0.4em;
  font-size: 0.9em;
}
#notificacionesCont table td{
  max-width: 300px;
  overflow-x: hidden;
  text-overflow: ellipsis;
}
.notificacionesLocalCont{
  background-color: white;
  width: 300px;
  padding: 1em;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.notificacionesLocalCont img{
  position: absolute;
  width: 35px;
  top: -20px;
  right: 10px;
}
.notificacionesLocalCont > .btn {
  width: fit-content;
}
.notificacionesLocal{
  position: fixed;
  align-items: stretch;
  justify-content: center;
  width: 100vw;
  max-height: 100vh;
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  z-index: 60;
  padding: 2em;
  overflow-y: scroll;
}
#backRender .editorFlotante{
  position: fixed;
  margin: auto;
  z-index: 56;
  top: 0;
  left: 0;
  width: 40%;
  margin: 0 30%;
  max-width: none;
  margin-top: 5em;
  overflow: hidden;
}
#backRender .editorFlotante select{
  max-width: 200px;
}
#actividadFiltrosTabla{
  width: fit-content;
}
#actividadTotal{
  position: absolute;
  top: 2em;
  right: 0;
  font-size: 0.9em;
  font-weight: 600;
}
#factEstadoWSFE{
  display: flex;
  width: 34px;
  height: 34px;
  transform: scale(75%);
}
#factEstadoWSFE circle{
  fill: green;
  transition: 1s;
}
#factEstadoWSFE #borde{
  fill: none;
  stroke-width: 4;
  stroke-linecap: round;
  stroke: darkgreen;
  stroke-dashoffset: 45;
  animation: borde 5s ease-out infinite;
}

@keyframes borde {
  0%{
    stroke-dasharray: 0 88;
    stroke-dashoffset: 45;
  }
  65%{
    stroke-dasharray: 88 0;
    stroke-dashoffset: 0;
  }
  100%{
    stroke-dasharray: 1 87;
    stroke-dashoffset: -130;
  }
}
#backRender .factSubCont #status{
  display: flex;
  gap: 0;
  align-items: center;
}
#backRender .factSubCont #status img{
  width: 23px;
}
#backRender .factSubCont #status #internetOffline{
  display: none;
}
#confirmarTxt{
  flex-direction: column;
}
#factBotonera{
  flex-wrap: wrap;
}
#backRender .editor #comandaOffline, #backRender .editor #factOffline{
  display: none;
}
.titilar{
  animation: titilar;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate-reverse;
}
@keyframes titilar {
  0%{
    background-color: darkgreen;
  }
  100%{
    transform: scale(95%);
    background-color: green;
  }
}
#regOffline > span{
  display: flex;
  gap: 1em;
}
#botonesPaginacion{
  background-color: var(--colorPrimario);
  padding: 0;
  padding-top: 1em;
  text-align: right;
}
#botonesPaginacion:hover{
  color: black;
}
#botonesPaginacion > span{
  display: flex;
  gap: 1em;
  justify-content: flex-end;
}
#botonesPaginacion > span > span{
  padding: 0.5em;
  cursor: pointer;
  background-color: white;
}
#botonesPaginacion > span > span:hover{
  background-color: gray;
}
#vistaPedidoProd{
  position: fixed;
  top: 1em;
  max-height: 90vh;
  overflow-y: scroll;
  z-index: 60;
  background-color: white;
  padding: 2em;
  display: flex;
  flex-direction: column;
  gap: 1em;
}
#vistaPedidoProd tr{
  border-bottom: 1px solid gray;
}
#vistaPedidoProd tr td:first-child{
  padding-left: 0;
}
#vistaPedidoProd tr td:last-child{
  padding-right: 0;
}
#vistaPedidoProd > span{
  display: flex;
  justify-content: flex-end;
  font-size: 1.2em;
  font-weight: 600;
}
#vistaPedidoProd #botonera{
  display: flex;
  gap: 1em;
  justify-content: center;
}
#usuariosLecturaNotifTabla{
  max-width: 100%;
  overflow-x: scroll;
}
#usuariosLecturaNotifTabla .notificado{
  color: green;
  cursor:help;
  font-weight: 600;
}
#usuariosLecturaNotifTabla tr:hover{
  color: inherit;
}
#usuariosLecturaNotifTabla tr td{
  position: relative;
  overflow: visible;
  border-left: 1px solid gray;
}
#usuariosLecturaNotifTabla tr td.notificado:hover{
  color: white;
  background-color: darkgreen;
}
#usuariosLecturaNotifTabla tr td .tipTool{
  background-color: white;
  color: black;
  width: max-content;
  padding: 0.5em;
  position: absolute;
  top: -2.5em;
  left: 0;
  z-index: 10;
  box-shadow: 2px 2px 6px rgba(0,0,0,0.5);
}
#botonesPaginacion > span > span.btnPaginacion.activo{
  background-color: darkorange;
}
.detallesDesperdicios{
  display: flex;
  flex-direction: column;
  font-size: 0.9em;
}
.detallesDesperdicios > span{
  padding: 0.5em;
  border-bottom: 1px solid gray;
}
.detallesDesperdicios > span:last-child{
  border-bottom: none;
}
.marcaAgua{
  opacity: 0.5;
  filter: grayscale(70%);
}
/* Media Style */
@media (max-width: 800px) {
  #contRegistroFact, #contRegistroGastos, #cierreCajaReporteContenedor, #cierreCajaContenedor{
    flex-direction: column-reverse;
  }
  #cierreCajaReporteContenedor{
    flex-direction: column;
  }
  #contRegistroFact .resumenRegistroFact, #tablaFacturacionLocalRegistros, #contRegistroGastos table, #contRegistroGastos span, #cierreCajaContenedor{
    width: fit-content;
  }
  #contRegistroFact #tablaFacturacionLocalRegistros, table#facturacionLocalSenias, #contRegistroGastos table, #tablaProduccion{
    table-layout: fixed;
    min-width: 100%;
  }
  #backRender #cierreCajaContenedor{
    margin: 2em 0;
  }
  #backRender #cierreCajaContenedor:nth-child(2){
    gap: 0;
  }
  #backRender #nuevaVenta{
    padding: 1em;
  }
  .produccionCont{
    flex-direction: column-reverse;
  }
  .statsCont{
    flex-direction: column;
  }
  .statsCont .statsBotonera {
    flex-direction: row;
  }
  footer{
    flex-direction: column;
    gap: 0.5em;
  }
  #signViveka{
    position: relative;
    bottom: auto;
    right: auto;
    text-align: center;
  }
  .fotosHeader{
    flex-direction: column;
  }
  #backRender .editorFlotante{
    width: 60%;
    margin: 0 20%;
    margin-top: 5em;
  }
  #contRegistroFact #tablaFacturacionLocalRegistros thead tr th:nth-child(6),
  #contRegistroFact #tablaFacturacionLocalRegistros tbody tr td:nth-child(6){
    display: none;
  }
}

@media (max-width: 576px) {
  #loginForm {
    margin: 0 2em;
  }
  header > span{
    flex-direction: column;
    gap: 0;
  }
  header > span span{
    text-align: center;
  }
  header > span > img {
    width: 120px;
    /* display: none; */
  }
  header > span #userIcon {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 0;
    background-color: gray;
    padding: 0.5rem;
    border-radius: 50%;
  }
  header > span #userIcon img{
    width: 30px;
    height: 30px;
    filter: invert(1);
  }
  header > span #userIcon div{
    font-size: 0.85rem;
    bottom: -120px;
  }
  header > span #estadoArca {
    position: absolute;
    top: 30px;
    left: 20px;
  }
  header > span #backHome {
    margin-right: 0;
    position: absolute;
    top: 1em;
    left: 1em;
  }
  
  .pedidoEstado{
    flex-direction: column;
  }
  #contRegistroFact #tablaFacturacionLocalRegistros thead tr th:nth-child(7),
  #contRegistroFact #tablaFacturacionLocalRegistros tbody tr td:nth-child(7){
    display: none;
  }
  table#facturacionLocalSenias thead tr th:nth-child(1),
  table#facturacionLocalSenias tbody tr td:nth-child(1),
  table#facturacionLocalSenias thead tr th:nth-child(8),
  table#facturacionLocalSenias tbody tr td:nth-child(8){
    display: none;
  }
  #tablaCierreDeCaja thead tr th:nth-child(1),
  #tablaCierreDeCaja tbody tr td:nth-child(1){
    display: none;
  }
  #backRender #cierreCajaCerrar span label{
    width: unset;
  }
  #calendarioPedidos div>span:first-child{
    width: min-content;
  }
  #tablaProduccionCard{
    table-layout: fixed;
    width: 100%;
  }
  #pedidoProduccionTabla{
    table-layout: fixed;
    width: 100%;
  }
  #pedidoProduccionTabla thead tr th:nth-child(1),
  #pedidoProduccionTabla tbody tr td:nth-child(1),
  #pedidoProduccionTabla thead tr th:nth-child(3),
  #pedidoProduccionTabla tbody tr td:nth-child(3),
  #pedidoProduccionTabla thead tr th:nth-child(7),
  #pedidoProduccionTabla tbody tr td:nth-child(7){
    display: none;
  }
  #pedidoProduccionTabla tbody tr .categoriaTabla{
    display: none;
  }
  #backRender #nuevaProduccion{
    padding: 1em;
  }
  #pedidoProdHeadForm{
    flex-direction: column;
  }
  #datosFloat{
    flex-direction: column;
  }
  #tablaProduccion thead tr th:nth-child(2),
  #tablaProduccion tbody tr td:nth-child(2),
  #tablaProduccion thead tr th:nth-child(4),
  #tablaProduccion tbody tr td:nth-child(4),
  #tablaProduccion thead tr th:nth-child(6),
  #tablaProduccion tbody tr td:nth-child(6){
    display: none;
  }
  .menuFixed{ 
    position: absolute;
    top: 0;
    max-height: 100vh;
    overflow-y: scroll;
    flex-wrap: nowrap;
    margin: 0;
    max-width: none;
    border-radius: 0;
  }
  .menuFixed img{
    display: none;
  }
  #contSelectLista{
    font-size: 0.8em;
    margin-left: 0;
    position: relative;
    right: 0;
    bottom: 0;
    flex-direction: column;
    gap: 0;
    flex-grow: 1;
    align-items: flex-end;
  }
  #backRender .editorFlotante{
    width: 80%;
    margin: 0 10%;
    margin-top: 5em;
  }
  #cierreCajaReporteContenedor > div{
    min-width: 100%;
  }
}