@charset "utf-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%; background: transparent; list-style:none; 
	webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body {line-height: 1;}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {content: '';content: none;}
:focus {outline: 0;}
ins {text-decoration: none;}
del {text-decoration: line-through;}
table {border-collapse: collapse;border-spacing: 0;}
a {text-decoration:none;}
sup{ vertical-align: super; font-size: smaller; }
*{ webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
/* -------------------------------------------------------------------- */
body { font-family: 'Montserrat', sans-serif; font-size: 13px; letter-spacing: 1.3px; line-height: 1.6; overflow-x: hidden; }

.title_gen{ font-size: 37px; font-weight: 300px; line-height: 1.4; margin-bottom: 40px; }
.txtgen{ font-size: 13px; line-height: 1.3; }
.txtgen p, .txtgen h1, .txtgen h2, .txtgen h3{ margin-bottom: 20px; }
.txtgen h1{ font-size: 140%; }
.txtgen h2{ font-size: 120%;  }
.txtgen h3{ font-size: 100%; }
.txtgen img { max-width: 100% !important; /*max-width: 1200px !important;*/ height: auto !important; }
.txtgen a{ color: #29ABE2; }
.txtgen a:hover{ text-decoration: underline; }
.txtgen ul, .txtgen ol{ padding-left:40px; margin-bottom:25px; margin-top:15px; }
.txtgen ul li, .txtgen ol li{  list-style:outside; margin-bottom:12px; }
.txtgen ol li { list-style:decimal; }
.txtgen iframe { max-width: 100%; height: 300px; }

.button{ cursor: pointer; }
.button:hover{ opacity: .7; }

.transition{
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.shadow{ box-shadow: 0 2px 6px -2px rgba(0,0,0,.16), 0 2px 6px 0 rgba(0,0,0,.12); }

.radius{ -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

::selection { background: #F1F1F1; }
::-moz-selection { background: #F1F1F1; }

.clear{ clear: both; }

textarea{ font-family: 'Montserrat', sans-serif; font-size:12px; }
input[type="checkbox"], label{ cursor: pointer; }

.outer{ position: relative; left: 50%; float: left; }
.inner { position: relative; left: -50%; float: left; }

.col{ webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	.col33{ float: left; width: 33.333%; padding: 20px; }
	.col66{ float: left; width: 66.666%; padding: 20px; }
	.col50{ float: left; width: 50%; padding: 20px; }
	.col100{ width: 100%; padding: 20px; }

.contingut{ width: 100%; max-width: 1300px; margin: 30px auto; padding: 0 20px; }

/*
.swal2-container{ z-index: 999999 !important; }
.swal2-container *{ font-size: 12px; }
*/

.underline:hover{ text-decoration: underline; }


/* HEADER =================================================================================================== */
.header{ width: 100%; height: 45px; background-color: #f1f1f1; border-bottom: 1px solid #a6a6a6; }	
	.logo_gen{ position: absolute; margin-left: 10px; margin-top: 6px; }
	.logo_gen img{ height: 32px; width: auto; }
	
.admin_salir{ float: right; margin-right: 15px; margin-top: 10px; color: #000; opacity: .8; }	
	.admin_salir div{ padding-bottom: 2px; border-bottom: 1px solid #000; float: left; position: relative; }
	.admin_salir span{ float: left; margin-top: -9px; margin-left: 6px; font-size: 26px; }	
	.admin_salir:hover{ opacity: 1; }

.menu{ width: 100%; height: 30px; background-color: #fff; border-bottom: 1px solid #a6a6a6; }
	.menu ul{ display: inline-flex; }
	.menu ul li{ padding: 7px; font-size: 11px; }
	.menu ul li a{ color: #000; }
	.menu ul li a:hover{ text-decoration: underline; }


.menu_current{ font-weight: bold; }

@media only screen and (max-width: 750px) {
	.logo_gen{ position: absolute; margin-left: 5px; margin-top: 4px; }
	.logo_gen img{ height: 40px; width: auto; }
}


/* BOTONS ================================================================================================== */
.bts_right{ float: right; }
.bts_left{ float: left; }


.bt{ display: inline-block; color: #fff; padding: 12px 22px; cursor: pointer; font-size: 12px; }
	.bt_guardar{ background-color: #1abc9c; }
	.bt_guardar:hover{ background-color: #159A80; }
	
	.bt_nuevo{ background-color: #1ABC9C; }
	.bt_nuevo:hover{ background-color: #159A80; }

	.bt_borrar{ background-color: #f1556c; }
	.bt_borrar:hover{ background-color: #EE324D; }

	.bt_mail{ background-color: #6c757d; }
	.bt_mail:hover{ background-color: #5A6268; }

	.bt_volver{ background-color: #f7b84b; }
	.bt_volver:hover{ background-color: #F5AA26; }

.bt span{ font-size: 15px; }

.separa30{ height: 30px; }


/* LOGIN ==================================================================================================== */
.login{ position: absolute; width: 100%; max-width: 340px; background-color: #f1f1f1; left: 50%; margin-left: -160px; margin-top: 100px;  
	border: 1px solid #ccc; padding: 10px 20px 20px 20px; box-shadow: rgba(0,0,0,0.4) 0 4px 10px -1px; }

.login_image{ text-align: center; margin-top: 10px; }
.login_image img{ width: 100%; max-width: 250px; height: auto; }

.login label { color: #000; display: block; margin-top: 1.4em; margin-bottom: 0.5em; font-size: 13px; padding-left: 5px; }
 
.login .input[type="text"], .login .input[type="password"] {
	webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	font-weight: normal;
	padding: 12px 10px; border: none; border: 1px solid #ccc;
	-webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px;
	width: 100%;
	font-size: 13px;
}

.button-primary { margin-top: 25px; font-weight: bold; cursor: pointer; text-transform: uppercase; width: 120px; text-align: center; color: #fff;
	border: none; -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; padding: 10px 0; background-color: #000; }
.button-primary:hover{ opacity: .7; }

.error_login{ position: absolute; padding-left: 140px; color: red; font-size: 12px; margin-top: 28px; font-weight: bold; display: none; }

.remember_link{ font-size: 11px; padding-top: 20px; }
.remember_link a{ color: #21759B; }
.remember_link:hover{ text-decoration: underline; }


/* remember ------------------  */
.loader_remember { margin-top: 50px; display: none;}
.loader_remember img { width:100%; }

#return{ position: absolute; right: 25px; margin-top: 70px; font-size: 11px; color: #21759B; }
#return:hover{ text-decoration: underline; }



/* ADMINISTRADOR ================================================================================================= */
.tabla_general{ width: 100% !important; border-bottom: 1px solid #ddd; }

	.tabla_general td{ border-right: 1px solid #ddd; }

	.tabla_general thead tr{ background-color: rgba(0,0,0,.9); }
	.tabla_general thead td{ font-weight: bold; color: #fff; font-size: 11px; }
	
	.tabla_general tbody{ font-size: 12px; }
	.tabla_general tbody tr:nth-child(even) { background-color: #f4f8fb; }
	.tabla_general tbody tr:nth-child(odd) { background-color: #fff; }

	.tabla_general span{ font-size: 25px; cursor: pointer; }

	.tabla_general a{ color: #000; }

	.td_verd{ background-color: rgb(89, 185, 158); }
	.td_gris{ background-color: rgb(160, 160, 160); }


.input_data{ background-color: transparent; border: none; font-family: 'Montserrat', sans-serif; font-size: 13px; letter-spacing: 1.3px  }


/* DESCARGAR EXCEL */
.download_excel{ width: 680px; border: 1px solid #ccc; padding: 20px; }

.download_excel input[type='text'], .download_excel textarea, .download_excel select{ 
		width: 100%; border: none; border: 1px solid #ccc; padding: 10px; margin: 4px 0 15px 0; font-weight: normal; }

.down_excel_inicio{ float: left; width: 200px; padding-right: 10px; }
.down_excel_final{ float: left; width: 200px; padding-left: 10px; }
.down_excel_bt{ float: left; width: 235px; padding-left: 25px; padding-top: 17px; }


.tabla_titulo{ font-size: 15px; font-weight: bold; }




.tr_checkout span{ opacity: 0; font-size: 10px; }

.td_active{ background-color: #008F39; }