input[type=text]{
	outline: none;
	box-sizing: border-box;
}
.cont{
	display: flex;
}
.opt {
	flex-direction: row;
	display: flex;
	flex-grow: 1;
}
.menu{
	flex-grow: 1;
}
.inst {
	font-size: 1.2em;
	text-align: center;
	padding: 5px 10px;
	box-sizing: border-box;
	box-shadow: 0 3px 5px black;
	background-color: #EDC8FF;
}

.opciones>div {
	margin: 0 10px;
}

.opciones {
	display: flex;
	flex-direction: column;
	padding-top: 1em;
	min-width: 20vw;
	width: 20vw;
}
#year{
	width: 5em;
}

#imprimir {
	min-height: 80vh;
	flex-grow: 1;
	border:20px solid #13BBAF;
	margin: 20px 40px;
	padding: 20px;
	box-shadow: 0 0 10px black;
	overflow: auto;
}

.menuy{
	display: flex;
	justify-content: center;
	align-items: center;
}
.menuy img{
	height: 2em;
}

.menuy>span:hover{
	transform: scale(1.1);
}
.menuy>span{
	transition: all .5s;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5em;
	margin-bottom: .5em;
}
.bott,.opcionesbott {
	align-items: center;
	display: flex;
	flex-direction: column;
	text-align: center;
	padding: 10px 10px;
}
.opcionesbott label{
	display: block;
}
.opcionesbott>div>div{

    display: flex;
    flex-direction: column;
    align-items: center;
}
.opcionesbott>div{
	margin: 1em 0;
}

.intervalo input,
.loader input {
	display: none;
}

.intervalo label:hover {
	background-color: whitesmoke;
	border: 3px solid lightblue;
}

.intervalo label {
	border-radius: 10px;
	padding: 3px;
	cursor: pointer;
	margin: 0 10px;
	font-size: 1.1em;
}

.prodSel {
	/*background-color: cornflowerblue;*/
	border: 3px solid cornflowerblue;
	background-color: white;
}

.loader {
	align-items: center;
}

.loader img:hover {
	border-color:#13BBAF;
}

.loader img {
	border: 2px solid transparent;
	max-height: 2em;
	max-width: 2em;
	cursor: pointer;
}

.switch input {
	display: none;
}

.switch input:checked+.bola {
	right: 1px;
	left: unset;
	background-color: cornflowerblue;
}

.switch .bola {
	width: 18px;
	height: 18px;
	border-radius: 50%;
	position: absolute;
	top: 1px;
	left: 1px;
	background-color: lightgrey;
}

.switch:hover {
	background-color: lavender;
}

.switch {
	cursor: pointer;
	position: relative;
	display: inline-block;
	width: 40px;
	border: 1px solid lightblue;
	border-radius: 10px;
	height: 20px;
	background-color: white;
}

.tabla {
	position: relative;
	z-index: -4;
	background-color: white;
}

.opciones label,
input[type=button] {
	cursor: pointer
}



.centrar{

	display: flex;
	flex-direction: row;
	height: 30vh;
	margin: 40px;
	justify-content: center;
}
.imagen {
	justify-content: center;
	display: flex
}

.tabla {
	width: 25cm
}

.centrar {
	flex-direction: column
}

#cal {
	width: 100%;
	border-collapse: collapse
}

#cal tr:first-child {
	background-color: #9370DB;
	height: 2em
}

#cal th {
	border: 2px solid #000;
	font-size: 1.5em;
}

#cal td {
	width: 26.5mm;
	height: 26.6mm;
	border: 1px solid #000;
	font-size: 2em;
	font-weight: 700
}

.imagen img {
	max-width: 100%;
	height: 15cm
}

.opciones>div>* {
	display: flex;
	justify-content: center
}

.opciones>div:hover {
	background-color: #add8e6
}




.opciones label div:not(.bola) {
	display: none;
	position: absolute;
	background-color: rgba(255, 255, 255, .9);
	justify-content: center;
	align-items: center;
	border: 1px solid grey;
	z-index: 2;
	height: 2em
}

.opciones label:hover div:not(.bola) {
	display: flex
}

.fondo {
	position: absolute;
	object-fit: contain;
	z-index: -1;
	max-height: 100%!important;
	opacity: .3
}

.titulo {
	font-size: 2em;
	text-align: center
}

.tabla {
	text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
	position: relative
}

@media screen and (max-width: 700px){
	.cont{
		flex-direction: column;
	}
	.opciones{
		width: auto;
		min-width: unset;
	}
}