/* CSS Document */
@font-face {
	font-family: 'Berlin Sans FB';
	src: local('berlin'),
		url('/fonts/berlin.ttf') format('truetype'),
		url('/fonts/berlin.woff') format('woff');
}

* {
	box-sizing: border-box;
	font-family: "Berlin Sans FB";
	font-style: normal;
}

body {
	position: absolute !important;
	margin: 0px;
	padding: 0px;
}

	header {
		position: fixed;
		top: 0px;
		left: 0px;
		width: 100%;
		height: 44px;
		border-bottom: solid 2px black;
		z-index: 10;
		background-color: white;
	}
		body.AD header {
			background-color: #fcc;
		}
		header img {
			position: absolute;
			height: 65px;
		}
		header img.boton {
			background-color: #ddd;
			display: none;
			cursor: pointer;
			transition: 0.4s;
			right: 0px;
			height: 42px;
		}
			header img.boton:hover {
				padding: 3px;
				background-color: orange;
			}

		header h1,
		header h2 {
			width: 100%;
			text-align: center;
			color: black;
			margin: 4px;
		}
			header sup,
			header sub {
				display: inline-block;
				font-size: 0.9em;
			}
			header sup,
			header sub,
			header .pequena {
				color: #777;
			}
			header sup {
				vertical-align: text-bottom;
				line-height: 1.75em;
				margin-right: -4px;
			}
			header sub {
				vertical-align: top;
				line-height: 2.3em;
				margin-left: -2px;
			}


	#fondo {
		position: absolute;
		width: 80%;
		left: 20%;
		height: 100%;
		background-position: center;
		background-size: cover;
		z-index: 0;
	}

	#cuerpo {
		position: fixed;
		top: 44px;
		bottom: 50px;
		width: 100%;
		z-index: 2;

		overflow: auto;
	}
		#escaparate {
			overflow: hidden;
		}
			#escaparate div.img {
				top: 0px;
				left: 0px;
				width: 100%;
				height: 100%;
				display: none;
				z-index: 0;
				background-size: cover;
				position: absolute;
			}
				#escaparate div.img.actual {
					z-index: 1;
					transition: background-position 12s;
					background-size: cover;
				}
			.microVisor {
				position: absolute;
				width: 100%;
				bottom: 0px;
				text-align: center;
				z-index: 50;
				margin-bottom: 10px;
			}
				div.micro {
					height: 25px;
					width: 25px;
					display: inline-block;
					border-radius: 50%;
					background-size: contain;
					cursor: pointer;
					transition: 0.2s;
					vertical-align: middle;
					border: solid 2px black;
					box-shadow: 0px 0px 1px 2px white;
				}
				div.micro.actual {
					height: 35px;
					width: 35px;
				}

		.miniaturas {
			text-align: justify;
		}
			.miniaturas div.img.mini {
				width: 100px;
				height: 100px;
				margin: 1px;
				cursor: pointer;
				display: none;
			}
				.miniaturas div.img.mini:hover {
					border: solid 3px orange;
				}
		.filtroAplicado {
			font-size: 0.6em;
			color: grey;
		}
		.filtroAplicado:before {
			content: "Filtro: ";
			padding-left: 20px;
		}

	div.img {
		background-size: cover;
		background-repeat: no-repeat;
	}

	a {
		transition: 0.4s;
		color: blue;
		font-weight: bold;
		letter-spacing: 2px;
	}
		a:hover {
			color: red;
			letter-spacing: 1px;
		}
	p {
		text-align: justify;
		text-indent: 20px;
	}
	button {
		cursor: pointer;
	}

	.trozo {
		overflow: hidden;
		margin-bottom: 3px;
	}
		.trozo h3 {
			cursor: ns-resize;
			margin: 0px;
			background-color: #e7efff;
			background-image: url('/_img/desplegar.up.png');
			background-repeat: no-repeat;
			background-position: 98% 55%;
			background-size: 20px;
			padding: 3px 10px;
			transition: 0.5s;
		}
			.trozo h3:hover {
				padding-left: 30px;
				letter-spacing: -1px;
			}
		.trozo h3 + * {
			margin-top: 5px;
		}
			.trozo.cerrado h3 {
				background-image: url('/_img/desplegar.down.png');
			}
			.trozo.cerrado h3:after {
				content: " (pulsa para desplegar)";
				font-size: 0.6em;
				color: gray;
				padding-left: 20px;
			}
		.trozo p {
			padding-left: 20px;
			margin: 5px 0px 0px;
		}
			.trozo p.middle {
				text-align: left;
				margin: 10px 0px 10px 20px;
				border: solid 1px #ccc;
				padding: 10px;
				word-wrap: break-word;
			}
		.trozo.cerrado > :not(h3) {
			display: none;
		}

	.menu {
		padding: 0px;
		width: 25%;
		height: 100%;

		overflow: auto;

		border-left: solid 1px #ccc;
		background-color: white;
		z-index: 11;
	}
		.menu div {
			background-color: white;
		}
		.menu a,
		.menu ul {
			display: block;
			border-bottom: solid 1px #ccc;
			text-align: center;
			text-decoration: none;
			margin: 0px;
			color: #888;
			font-weight: 400;
			padding: 0px;
		}
			.menu a {
				padding: 10px 0px;
				background-color: #d5e0ea;
			}
			.menu ul {
				display: none;
				padding-bottom: 10px;
			}
			.menu a:hover {
				background-color: #eee;
				letter-spacing: 0px;
				font-weight: 900;
				color: blue;
				padding-left: 20px;
			}
			.menu a.activo {
				background-color: #ace;
				color: white;
			}
				.menu li {
					margin-left: 10px;
					border-left: solid 1px #ccc;
					background-color: #fec;
					list-style: none;
				}
					.menu li a {
						background-color: #efda9f;
					}
					.menu li a.activo {
						background-color: #efc346;
					}
					.menu ul a {
						text-align: right;
						padding: 6px 10px;
					}
					.menu ul span {
						text-align: left;
						padding: 6px 10px;
						width: 100%;
						display: inline-block;
						border-bottom: solid 1px #ccc;
						word-wrap: break-word;
					}
						.menu ul span b {
							color: #666;
						}
					ul span:before {
						font-weight: lighter;
						color: #888;
						content: attr(name) ": ";
					}

	.pagina {
		display: none;
		position: absolute;
		width: 75%;
		height: 100%;
		overflow: auto;
		font-size: 1.4em;
		background-color: rgba(255, 255, 255, 0.85);
	}
		.pagina h1 {
			padding: 1px 20px 5px 0px;
			margin: 0px;
			background-color: #bdf;
			text-align: right;
			font-size: 20px;
			transition: 0.5s;
		}
			.pagina h1:hover {
				padding-right: 40px;
				letter-spacing: -1px;
			}
			.pagina h1 img {
				float: left;
				height: 50px;
			}
		.pagina .contenido {
			padding: 10px;
		}
		.pagina li {
			margin-top: 15px;
		}

		fieldset {
			display: inline-block;
			font-size: 17px;
			vertical-align: top;
			border: solid 1px #bce;
			border-radius: 5px;
			padding: 0px;
			margin-bottom: 10px;
			background-color: #fec;
		}
			fieldset div {
				padding: 5px 8px;
			}
				fieldset div input,
				fieldset div select,
				fieldset div textarea,
				fieldset div button {
					border: solid 1px #ccc;
					padding: 3px;
					font-size: 17px;
					background-color: white;
					border-radius: 5px;
					margin-top: 3px;
				}
				fieldset div textarea {
					width: 100%;
				}
				fieldset div button {
					padding: 4px 8px;
				}

		form p label,
		form p input,
		form p textarea,
		form p select,
		form p button {
			font-size: 1em;
			margin: 0px;
			width: 48%;
		}
			form .tercio {
				width: 16%;
			}
		form p textarea {
			margin-bottom: -11px;
		}
		form p label {
			display: inline-block;
			border-bottom: solid 1px #ccc;
			padding: 4px 10px 5px;
		}
		form p input,
		form p select,
		form p textarea {
			border: solid 1px #ccc;
			padding: 5px 10px;
			background-color: #fbf288;
			font-family: tahoma, arial;
		}
			form input + label,
			form select,
			form input[type='text'] {
				transition: 1s;
			}
			form p select {
				padding: 4px 10px;
			}
			form input:checked + label {
				padding: 0px 4px;
				border-radius: 3px;
			}
			form input:checked + label,
			form select.conValor,
			form input[type='text'].conValor {
				background-color: #fc7;
				letter-spacing: 2px;
			}
			input:disabled + label {
				color: #bcd;
			}
		form p button {
			margin-top: 3px;
			padding: 4px 10px;
			cursor: pointer;
		}
		
		form div.nota {
			margin: 10px 0px 5px 37px;
			font-size: 14px;
			max-width: 500px;
			text-indent: -25px;
			padding-left: 25px;
		}

	.flex {
		display: -webkit-flex;
		display: flex;
		width: 100%;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
	}
		.flex.izq {
			-webkit-justify-content: flex-start;
			justify-content: flex-start;
		}
		.flex fieldset {
			margin: 0px 5px 10px;
		}

	footer {
		position: fixed;
		bottom: 0px;
		left: 0px;
		width: 100%;
		height: 50px;
		border-top: solid 1px black;
		z-index: 10;
		background-color: white;

		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
	}
		footer a {
			height: 90%;
			border-radius: 5px;
			margin: 0px 5px;
		}
			footer a img {
				height: 100%;
				border-radius: 5px;
			}

#imgShow {
	position: fixed;
	top: 0px;
	bottom: 0px;
	left: 0px;
	right: 0px;
	overflow: auto;
	z-index: 11;
	background-color: black;

	display: none;
}
	#imgShow #botones {
		position: fixed;
		top: 10px;
		right: 20px;
	}
		#imgShow #botones img {
			width: 40px;
			cursor: pointer;
		}
		#imgShow #botones #imgMaxim {
			display: none;
		}
		#imgShow.ajustada #botones #imgMaxim {
			display: initial;
		}
		#imgShow.ajustada #botones #imgMinim {
			display: none;
		}
	#imgShow #versiones {
		position: fixed;
		top: 60px;
		right: 20px;
	}
		#imgShow #versiones img {
			opacity: 0.5;
			cursor: pointer;
		}
		#imgShow #versiones img.activo {
			opacity: 1;
		}

	#imgShow #imagen {
		position: absolute;
	}
	#imgShow.ajustada #imagen {
		height: 100%;
		width: 100%;
		text-align: center;
	}
		#imgShow.ajustada #imagen img {
			width: initial;
			height: inherit;
		}

		#imgShow #tapa {
			position: absolute;
			top: 0px;
			left: 0px;
			height: 100%;
			width: 100%;
		}
	#imgShow #datos {
		position: fixed;
		top: 30px;
		right: 140px;
		opacity: 0.5;
	}
		#imgShow #datos:hover {
			opacity: 1;
		}
		#imgShow #datos ul.datosImagen {
			background-color: white;
			padding: 5px 10px 5px 25px;
			margin: 0px;
			border: solid 1px black;
			border-radius: 10px 0px 10px 10px;
			box-shadow: 0px 0px 20px black;
		}
			#imgShow #datos ul.datosImagen li {
				margin: 0px 0px 0px -15px;
				color: #444;
				list-style: none;
			}

	#presupuesto-resultado #elPresupuesto {
		padding-bottom: 5px;
		border-radius: 5px;
		transition: background-color 1s;
	}
		#presupuesto-resultado #elPresupuesto.siHay {
			background-color: #cfa;
		}
		#presupuesto-resultado #elPresupuesto.noHay {
			background-color: #f99;
		}
		#presupuesto-resultado #elPresupuesto strong {
			background-color: rgba(255,255,255,.8);
			letter-spacing: 2px;
			padding: 0px 5px 2px;
			border-radius: 3px;
			font-size: 130%;
		}
	#presupuesto #presupuestoImg img {
		display: none;
		width: 100%;
		position: absolute;
	}
	#presupuesto .filtrosPresupuesto,
	#presupuesto #numElementosBorrar {
		display: none;
	}
	#cambiarPresupuesto {
		background-color: #fcc;
	}
		#divCaras {
			display: none;
		}

	#etiquetas .inicial {
		text-transform: capitalize;
		color: blue;
		background-color: white;
		padding: 0px 5px;
		border: solid 1px;
		border-radius: 5px;
	}
	#etiquetas button {
		font-size: 12px;
		font-weight: 100;
		padding: 0px 3px 2px;
		vertical-align: bottom;
	}

/* CLASES GENERICAS */

.gris { color: #aaa; }
.rojo { color: red; }
.azul { color: blue; }

.pequena {
	font-size: 0.7em;
}
.grande {
	font-size: 1.3em;
}
.total {
	width: 100%;
}

.sube {
	margin-top: -9px;
}

.derecha {
	text-align: right;
}
.centrado {
	text-align: center;
}
.fina {
	height: 10px;
}
.middle > * {
	vertical-align: middle;
}

.pegadoArriba {
	margin-top: 0px !important;
}
.pegadoAbajo {
	margin-bottom: 0px !important;
}

.esperando, .esperando * {
	cursor: wait !important;
}

.panel {
	float: right;
}

ul ul {
	list-style-type: square;
}

.oculto, .oculta {
	display: none !important;
}

/* MOVILES */
@media only screen and (orientation: landscape) {
	#imgShow.ajustada #imagen img {
		width: initial;
		height: inherit;
	}
}
@media only screen and (max-width: 700px) {
    .menu a {
		letter-spacing: 0px;
    }
}

@media only screen and (max-width: 500px) {
    .menu {
		display: block;
		position: fixed;
		background-color: white;
		box-shadow: 2px -4px 10px black;
		transition: 0.4s;
		width: 0%;
		right: 0px;
    }
		.menu.visible,
		.menu.casiVisible {
			width: 85%;
		}
			.menu.casiVisible {
				height: auto;
			}
				.menu.casiVisible div > a:not(.activo) {
					display: none;
				}

		header img.boton {
			display: block;
		}

	.pagina {
		width: 100% !important;
	}
		
		.pagina div.img.mini {
			width: 32%;
		}
		fieldset {
			display: block;
		}

	label {
		margin-top: 20px;
		display: inline-block;
	}
	textarea,
	select,
	button,
	input:not([type="checkbox"]):not([type="radio"]) {
		display: inline-block;
		width: 100% !important;
	}
	form p label,
	form p input,
	form p textarea {
		display: block;
	}
		form p textarea {
			margin-bottom: 0px;
		}
	form p label {
		margin-top: 10px;
		border: none;
		border-left: solid 1px #ccc;
		padding: 0px;
	}
	form p button {
		margin-left: 0px;
	}
	form div.nota {
		margin-left: 20px;
	}

	div.micro {
		height: 20px;
		width: 20px;
		border: solid 1px black;
		margin: 0px -2px;
	}
	div.micro.actual {
		height: 30px;
		width: 30px;
	}

	#imgShow #datos {
		right: 0px;
		width: 100% !important;
		opacity: 0.8;
	}

	#presupuesto {
		margin-bottom: 100px;
	}
	#presupuesto-resultado {
		position: fixed;
		bottom: 42px;
		background-color: white;
		left: 0px;
		box-shadow: 0px -2px 10px black;
		width: 100%;
	}
}

body.pensando, body.pensando * {
	cursor: wait !important;
}


form.Dibujos .Camisetas,
form.Dibujos .Montajes,
form.Camisetas .Dibujos,
form.Camisetas .Montajes,
form.Montajes .Dibujos,
form.Montajes .Camisetas {
	display: none;
}



.fb_iframe_widget {
	line-height: 34px;
}