@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;500;700&display=swap');
@import url( 'colores.css?v=1' );
@import url( 'general.css?v=1' );
body {
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	background-color: var( --grisBorde );
}
.loginContainer {
	position: absolute;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}
.loginMain { width: 500px; max-width: 95%; margin: 0 auto; text-align: center; }
.loginMain img { height: 100px; margin-top: -100px; }
.loginDiv {
	width: 100%;
	border-radius: 8px;
	border: 1px solid var( --grisClaro );
	background-color: var( --azul );
	text-align: center;
	color: var( --grisClaro );
	box-sizing: border-box;
	padding: 30px;
}
.loginDiv h1 { margin: 5px 0; }
.loginDiv h2 { font-size: 15px; text-transform: uppercase; margin-top: 0; margin-bottom: 30px; }
.loginDiv input {
	background: transparent;
	color: var( --grisClaro );
	width: 100%;
	border: none;
	outline: none;
	border-left: 1px solid var( --grisClaro );
}
.loginDiv .inputGrupo {
	margin: 10px 0;
	display: flex;
	border: 1px solid var( --grisBorde );
	border-radius: 5px;
	align-items: center;
}
.loginDiv .inputGrupo i { width: 50px; text-align: center; display: block; }
.loginDiv ::-webkit-input-placeholder { color: var( --blanco ); }
.loginDiv .boton:hover { color: var( --azul ); }
.loader {
	display: none;
	width: 150px;
	text-align: center;
	position: fixed;
	top: 47%;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 10002;
}
.loader h1 { text-align: center; color: var( --blanco ); margin: 15px 0; }
.loader > div {
	width: 18px;
	height: 18px;
	background-color: var( --azul );
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.loader > div:first-child { background-color: var( --azulBoton ); }
.loader > div:last-child { background-color: var( --azul ); }
.loader .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}
.loader .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}
@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}
@keyframes sk-bouncedelay {
	0%, 80%, 100% {
		-webkit-transform: scale(0);
		transform: scale(0);
	} 40% {
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}
header, footer {
	position: fixed;
	background-color: var( --blanco );
	padding: 15px;
	box-sizing: border-box;
	width: 100%;
	z-index: 11;
}
header { top: 0; border-bottom: 1px solid var( --grisBorde ); }
header .principal { display: flex; align-items: center; justify-content: space-between; }
header .logoContainer { width: 300px; max-width: 30%;}
header .logoContainer img { width: auto; height: 50px; }
header .menuContainer ul { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; }
header .menuContainer ul li { margin-left: 15px; text-align: center; }
header .menuContainer ul li a { color: var( --azul ); transition: 0.4s all; }
header .menuContainer ul li a i { display: block; font-size: 30px; margin-bottom: 8px; }
header .menuContainer ul li a:hover { color: var( --grisLogo );; }
footer { bottom: 0; border-top: 1px solid var( --grisBorde ); }
footer .boton { width: 100%; display: block; }
.boton.deshabilitado { background-color: var( --grisLinea ); color: var( --blanco ); border: 1px solid var( --grisLinea ); }
.boton.deshabilitado:hover, .boton.deshabilitado.elegido { background-color: var( --blanco ); color: var( --grisLinea ); }
main { margin: 125px 0; }
.filtroHead { display: flex; align-items: center; justify-content: space-between; }
.headerTab { display: flex; align-items: center; justify-content: space-between; margin-top: 20px; }
.buscador {
	position: relative;
	min-width: 31%;
	border-radius: 30px;
	background-color: var( --blanco );
	overflow: hidden;
	margin-right: 1%;
	color: var( --negro );
}
.filtroSearch {
	position: relative;
	min-width: 31%;
	border-radius: 30px;
	overflow: hidden;
	margin-right: 1%;
}
.filtroSearch.big { width: 48%;}
.filtroSearch select { width: 100%; }
.buscador input { border: none; outline: none; padding: 6px !important; font-size: 12px; }
.buscador input:placeholder { color: var( --grisLinea ) }
.buscador i { position: absolute; right: 10px; top: 7px; font-size: 16px; z-index: 1; }
.categoriaTabs { width: 100%; overflow: hidden; position: relative; }
.categoriaTabs .boton { display: block; border-radius: 30px; }
.dFlex { display: flex; margin: 20px 0; }
.ventaContainer {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}
.ventaDetails {
	min-width: 400px;
	margin-left: 20px;
}
.ventaDetails .ticket {
	width: 100%;
	background-color: var( --blanco );
	border-radius: 30px;
	overflow: hidden;
	padding-bottom: 20px;
}
.ventaDetails .ticket h2 {
	font-weight: normal;
	text-align: center;
	font-size: 18px;
	width: 100%;
	padding: 8px;
	box-sizing: border-box;
}
.elementosVenta {
	border-bottom: 1px solid var( --grisLinea );
	border-top: 1px solid var( --grisLinea );
	list-style: none;
	padding: 0;
	margin: 0;
	margin-bottom: 10px;
}
.elementosVenta li {
	width: 100%;
	padding: 8px 15px;
	border-bottom: 1px solid var( --grisLinea );
	font-size: 12px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
}
.elementosVenta li .data { width: 140px; overflow: hidden; }
.elementosVenta li .data b, .elementosVenta li .data span { display: block; }
.elementosVenta li .subtotal { font-size: 16px; font-weight: bold; width: 70px; text-align: right; }
.elementosVenta li:last-child { border-bottom: none; }
.totales { list-style: none; padding: 0; margin: 0; }
.totales li { display: flex; align-items: center; justify-content: space-between; box-sizing: border-box; padding: 5px 15px; }
.totales li span { font-weight: bold; display: block; max-width: 50%; }
.ventaDetails .aditionalOptions { width: 100%; }
.ventaDetails .aditionalOptions select {
	padding: 6px !important;
    font-size: 14px;
    border-radius: 30px;
}
.productoElige {
	position: relative;
	display: flex;
	align-items: center;
	background-color: var( --blanco );
	border-radius: 30px;
	padding: 10px;
	box-sizing: border-box;
	margin: 10px;
	transition: 0.4s all;
	overflow: hidden;
}
.productoElige .imgCapa {
	min-width: 102px;
	max-width: 102px;
	height: 102px;
	margin-right: 10px;
	overflow: hidden;
	border: 1px solid var( --grisBorde );
	border-radius: 30px;
}
.productoElige img {
	width: 100%;
	height: auto;
}
.productoElige .info { width: 100%; }
.productoElige .info span, .productoElige .info b { display: block; word-break: break-all; }
.productoElige .acciones {
	opacity: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: var( --grisLinea );
	transition: 0.4s all;
	text-align: center;
	padding: 10px;
	box-sizing: border-box;
}
.productoElige .acciones .confirmaProducto { display: block; text-align: center; margin-bottom: 10px; }
.productoElige .acciones .agregaCarro, .inputData {
	display: flex;
	width: 100%;
	border-radius: 30px;
	overflow: hidden;
	align-items: center;
	margin-bottom: 10px;
}
.inputData { width: 100px; }
.productoElige .acciones .agregaCarro .cambiaCantidad, .inputData .cambiaCantidad {
	min-width: 40px;
	height: 40px;
	text-align: center;
	display: block;
	box-sizing: border-box;
	background-color: var( --azul );
	color: var( --blanco );
	font-size: 18px;
	line-height: 40px;
}
.inputData input { padding: 5px; font-size: 12px; }
.inputData .cambiaCantidad { min-width: 28px; height: 28px; line-height: 28px; font-size: 12px; }
.productoElige .acciones .botonCart {
	display: inline-block;
	width: 47%;
	margin: 0 1%;
	text-align: center;
	color: var( --negro );
}
.productoElige .acciones.tres .botonCart { width: 30%; }
.productoElige:hover > .acciones { opacity: 1; }
.swiper-pagination { position: relative !important; margin-top: 20px; }
.swiper-pagination-bullet-active { background: var( --azul ) }
.menuMobile { display: none; color: var( --azul ); }
.calculator {
	width: 480px;
	height: auto;
	max-width: 100%;
	padding: 0;
	margin: 0;
	background: #232323;
	border: none;
	border-radius: 7px;
	-webkit-border-radius: 7px;
	-moz-border-radius: 7px;
	box-shadow: rgba(0,0,0,0.4) 0px 2px 5px, inset rgba(255,255,255,0.9) 0px 1px 1px -1px;
	-webkit-box-shadow: rgba(0,0,0,0.4) 0px 2px 5px, inset rgba(255,255,255,0.9) 0px 1px 1px -1px;
	-moz-box-shadow: rgba(0,0,0,0.4) 0px 2px 5px, inset rgba(255,255,255,0.9) 0px 1px 1px -1px;
	background-image: -moz-linear-gradient(top, #333333, #1f1f1f);
	background-image: -webkit-linear-gradient(top, #333333, #1f1f1f);
	background-image: linear-gradient(top, #333333, #1f1f1f);
	overflow: hidden;
	text-align: center;
}
.calculator .screen {
	width: 424px;
	height: 93px;
	max-width: 100%;
	margin: 12px auto 30px;
	padding:15px 20px;
	color:#c0c0c0;
	text-align: right;
	font-size: 3em;
	letter-spacing: 3px;
	overflow:hidden;
	border:#000 1px solid;
	border-radius:7px;
	-webkit-border-radius:7px;
	-moz-border-radius:7px;
	box-shadow:inset rgba(0,0,0,1) 0px 1px 4px, inset rgba(225,225,225,0.3) 0px -2px 4px -2px;
	-webkit-box-shadow:inset rgba(0,0,0,1) 0px 1px 4px, inset rgba(225,225,225,0.3) 0px -2px 4px -2px;
	-moz-box-shadow:inset rgba(0,0,0,1) 0px 1px 4px, inset rgba(225,225,225,0.3) 0px -2px 4px -2px;
	background-image: -moz-linear-gradient(top, #3e3e3e 0%, #303030 100%);
	background-image: -webkit-linear-gradient(top, #3e3e3e 0%, #303030 100%);
	background-image: linear-gradient(top, #3e3e3e 0%, #303030 100%);
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
.calculator .buttons {
	padding:0;
	width: 423px;
	max-width: 100%;
	margin: auto;
	overflow: hidden;
	list-style: none;
}
.calculator .buttons li {
	display:inline;
	float: left;
	padding: 0px;
	margin-right: 13px;
	margin-bottom: 10px;
}
.calculator .buttons li:nth-child(4n) { margin-right:0; }
.calculator .buttons a {
	display:block;
	width: 95px;
	height: 68px;
	padding: 18px 0 12px;
	color:#c0c0c0 !important;
	font-family: "Myriad Pro", Arial, sans-serif;
	font-size:1.6em;
	font-weight: 500;
	letter-spacing: -2px;
	background-color:#2f2f2f;
	border: #000 1px solid;
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	text-align: center;
	text-decoration: none;
	text-shadow:#000 0px -1px 0px;
	box-shadow: inset rgba(255,255,255,0.1) 0px 1px 0px, inset rgba(0,0,0,0.2) 0px -2px 2px;
	-webkit-box-shadow: inset rgba(255,255,255,0.1) 0px 1px 0px, inset rgba(0,0,0,0.2) 0px -2px 2px;
	-moz-box-shadow: inset rgba(255,255,255,0.1) 0px 1px 0px, inset rgba(0,0,0,0.2) 0px -2px 2px;
	background-image:-moz-linear-gradient(top, #363636 0%, #313234 40%, #2f2f2f 100%);
	background-image:-webkit-linear-gradient(top, #363636 0%, #313234 40%, #2f2f2f 100%);
	background-image:linear-gradient(top, #363636 0%, #313234 40%, #2f2f2f 100%);
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	cursor: pointer;
	box-sizing: border-box;
}
.calculator .buttons a:active{
	box-shadow: inset rgba(0,0,0,0.5) 0px 2px 8px;
	background-image:-moz-linear-gradient(top, #2f2f2f 0%, #363636 100%);
	background-image:-webkit-linear-gradient(top, #2f2f2f 0%, #363636 100%);
	background-image:linear-gradient(top, #2f2f2f 0%, #363636 100%);
}
.calculator .tall{height:151px !important;}
.calculator .wide{width:205px !important;}
.calculator .shift{margin-top:-78px;}
.calculator .ctrls{
	list-style: none;
	margin:5px 0 0 20px;
	padding:0;
	position: absolute;
}
.calculator .ctrls li {
	float:left;
	display:inline;
}
.calculator .ctrls li a {
	display: block;
	width:18px;
	height:18px;
	margin-right:10px;
	border-radius:100%;
	box-shadow:rgba(255,255,255,0.3) 0px 0px 1px, inset rgba(0,0,0,1) 0px 1px 2px 1px;
	background-image: -moz-radial-gradient( 9px -4px, #FFF 0px, #fff 2px, rgba(255,255,255,0) 4px), -moz-linear-gradient(bottom, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0) 100%);
	background-image: -webkit-radial-gradient( 9px -4px, #FFF 0px, #fff 2px, rgba(255,255,255,0) 4px), -webkit-linear-gradient(bottom, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0) 100%);
	background-image: radial-gradient( 9px -4px, #FFF 0px, #fff 2px, rgba(255,255,255,0) 4px), linear-gradient(bottom, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0) 100%);
}
.modal.noBackground { background: none !important; box-shadow: none !important; padding: 0 !important }
#calculadora a.close-modal { top: -12px !important; right: 8px !important; }
.blocker { z-index: 11 !important; }
.select2-container { width: 100% !important; }
.select2-container--default .select2-selection--multiple { height: 28px; border: none !important; }
.select2-container .select2-selection--multiple .select2-selection__rendered { position: absolute; top: 0; margin: 0; }
.select2-container--default .select2-selection--single { border: none !important; }
.cajeroLog {
	position: fixed;
	top: 86px;
	background-color: var( --azulBoton );
	color: var( --blanco );
	box-sizing: border-box;
	padding: 5px;
	border-bottom-left-radius: 15px;
	border-bottom-right-radius: 15px;
	font-size: 12px;
	z-index: 11;
}
#detalleProducto .imgCapa {
	width: 100%;
	max-width: 162px;
	max-height: 162px;
	margin-right: 10px;
	overflow: hidden;
	border: 1px solid var( --grisBorde );
	border-radius: 30px;
}
#detalleProducto img { width: 100%; height: auto; border: 1px solid var( --grisBorde ); border-radius: 30px; }
#detalleProducto h1 { margin: 0; }
#detalleProducto h2 { margin: 0 0 5px; }
#detalleProducto p { word-break: break-all; }
#detalleProducto ul { list-style: none; margin: 0; padding: 0; }
#detalleProducto ul#atributosDetalle { columns: 2; }
#recuperaLink {
	position: fixed;
	right: 0;
	top: 200px;
	transform: rotate(270deg);
	margin-right: -50px;
    padding: 8px;
    background-color: var( --verde );
    color: var( --blanco );
    z-index: 11;
    border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	display: none;
}
.linkClient { margin-top: 10px; display: block; }
.tabla { width:100%; }
.tabla thead{
	background-color: var( --azulBoton );
	color: var( --blanco );
}
.tabla thead th{
	padding: 5px;
	font-size: 11px;
}
.tabla tbody tr td{
	padding:2px;
}
.tabla tbody tr:nth-child(even){
	background-color: var( --grisBorde );
}
.tabla tbody tr:hover {
	background-color: var( --grisBorde );
}
.tabla tbody tr a { color: var( --rojo ); font-size: 16px; margin: 0 5px; }
.tabla tbody tr a:hover, .tabla tbody tr:hover > a { color: var( --azul ); }
.responsiveDiv { width: 100%; overflow-x: auto; }
.whiteBorder {
	background-color: var( --blanco );
	border-radius: 30px;
	padding: 20px;
	box-sizing: border-box;
}
.pageTitle { margin: 10px 0; text-align: center; }
.volverHide { display: none; }
.usoCFDI, .servicioUsa, .clienteShow { display: none; }
.cambiaPrecio { cursor: pointer; color: var( --azulBoton ); }
.select2-container--default .select2-selection--single { border-radius: 30px !important; }
.swiper-pagination { display: none !important; }
.ui-datepicker { z-index: 111 !important; }
.pasoDos { display: none; }
div.dt-buttons {
	position: relative;
	float: none;
}
div.dt-buttons button {
	font-size: 12px;
    transition: all 0.4s;
    box-sizing: border-box;
    text-align: center;
    cursor: pointer;
    text-transform: uppercase;
    outline: none;
    white-space: nowrap;
    padding: 10px 30px;
    border-radius: 4px;
    border: 1px solid var(--azul);
    background-color: var(--azul);
    color: var(--blanco);
}
@media screen and ( max-width: 840px ) {
	main { margin: 125px 0 150px; }
}
@media screen and ( max-width: 768px ) {
	main { margin: 105px 0 150px; }
	.dFlex { display: block; }
	.ventaDetails, .ventaContainer { min-width: 100%; }
	.ventaDetails { margin-left: 0; }
	.menuMobile { display: block; }
	header .menuContainer ul {
		display: none;
		background-color: var( --blanco );
		position: absolute;
		top: 85px;
		left: 0;
		width: 100%;
	}
	header .menuContainer ul li {
		width: 100%;
		border-bottom: 1px solid var( --grisBorde );
		box-sizing: border-box;
		padding: 8px;
	}
	header .menuContainer ul li a { display: flex; align-items: center; width: 100%; }
	header .menuContainer ul li a i { display: inline-block; margin-bottom: 0; margin-right: 5px; }
}
@media screen and ( max-width: 680px ) {
	.headerTab, .filtroHead { display: block; }
	.filtroSearch { min-width: 100%; margin-bottom: 10px; }
	.buscador { display: none; }
	.select2-dropdown { width: 95% !important; }
}
@media screen and ( max-width: 580px ) {
	.calculator .buttons a { width: 75px; }
	.calculator .buttons, .calculator .screen { width: 350px; }
	.calculator .wide { width: 160px !important; }
	#detalleProducto .cuarenta, #detalleProducto .sesenta { width: 100%; float: none; }
	.filaFiltros .cincuenta { width: 100%; float: none; }
}
@media screen and ( max-width: 416px ) {
	.calculator .buttons a { width: 55px; }
	.calculator .buttons, .calculator .screen { width: 270px; }
	.calculator .wide { width: 120px !important; }
}
@media screen and ( max-width: 327px ) {
	.calculator .buttons a { width: 45px; }
	.calculator .buttons, .calculator .screen { width: 220px; }
	.calculator .wide { width: 95px !important; }
}
@media screen and ( max-width: 380px ) {
	main { margin: 125px 0; }
}
