@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@300;400;600;700&display=swap');
/*
font-family: 'Assistant', sans-serif;
*/

/*VARS*/
:root {
	--bk-color:#f4f6f9;
	
	--main-font-color:#626262;
	--main-font-family:'Assistant', sans-serif;

	--color-main:#25afa4;
	--color-main-dark:#0d464a;
	--color-main-light:#309197;
	--color-bk-light:#fafafa;
	--color-bk-light-1:#fdfdfd;

	--color-1:#0e676d;
	--color-2:#dff1ff;
	--color-3:#25afa4;  
	--color-4:#1d3858;  
	--color-5:#0e676d;
	--color-6:#bce7e4;
	
	--color-white:#FFFFFF;
	
	--shade-1:#6096BA; /*BLUE*/
	--shade-2:#A3CEF1; /*BLUE LIGHT*/
	--shade-3:#1c857e; /*AQUA*/
	--shade-4:#00c6bb; /*AQUA LIGHT*/
	
	/*PALLETE 
	https://mycolor.space/?hex=%2303467B&sub=1 

	Spot Palette
	#274C77 (azul)
	#A3CEF1 (azul frio)
	#dff1ff (gris frio)
	#daa21c (amarillo ocre)
	*/
			
	--color-borde:#eeeeee; /*GRIS*/
	--color-black:#000000; /*NEGRO*/
	--color-light:#f8f8f8; /*GRIS CLARO*/		
	
	--color-alert:#e77200;
	--color-errror:#bd1313;
	--color-ok:#209700;

	--sidebar-max-width:250px;
	--sidebar-min-width:-250px;
	--sidebar-bk-color:var(--color-main);
	--sidebar-bk-color-admin:var(--color-5);
	--sidebar-font-color:#c2c7d0;

	--contrast-light:rgba(255,255,255,.1);
	--contrast-dark:rgba(0,0,0,.1);
	--contrast-dark-1:#f5f5f5;
	--contrast-white:var(--sidebar-font-color);
	
	--color-acento-rojo:var(--color-errror);
	
	--border-radius:.25rem;
	
	--font-light:300;
	--font-regular:400;
	--font-bold:600;
	--font-black:700;
	
	--padding-tabla:3px 8px;
	
	--margin-micro:.25rem;
	--margin-mini:.5rem;
	--margin-small:1rem;
	--margin-med:1.5rem;	
	--margin-big:2.5rem;
	--margin-xxl:5rem;	
	
	--radius-mini:.3rem;
	--radius-small:.5rem;
	--radius-med:1rem;
	--radius-big:3rem;
	--radius-xxl:5rem;	
	
	--canvas-width-max:1440px;
	--canvas-width-med:1100px;
	--canvas-width-small:800px;	
	--canvas-width-mini:400px;
}

/**/

body{ 	
	height: 100%;
	padding: 0;
	font-size:16px;	
	text-align:justify;
	margin:0;
	position:relative;
	font-family: var(--main-font-family), sans-serif;
    font-weight: var(--font-regular);
	color: var(--main-font-color);
	background: var(--bk-color)
}	

html{
	padding: 0;
}		
	
img{ 
	border:none;
	vertical-align:middle;
}
	
a,button{
	outline:0 !important;
}
   
/*MAIN*/

header, main, aside{
	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

body, html {
  min-height: 100%;
}

.enable-transition{
	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.clear-list-group ul, .clear-list-group li, aside ul, aside li{
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.btn-primary {
  background-color: var(--color-main) !important;
  border-color: var(--color-main)!important;
}

.btn-primary i{
	margin: 0 var(--margin-mini);
}

.btn-full{
	width: 100%;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:visited,
.btn-primary:focus,
div.btn-primary
{
  background-color: var(--color-main-dark) !important;
  border-color: var(--color-main-dark) !important;
}

.btn-list{
	background-color: var(--shade-1);
	border-color: var(--shade-1);
	color: #FFF;
	white-space: nowrap;
	font-size: .95rem;
}

.btn-list:hover,
.btn-list:active,
.btn-list:visited,
.btn-list:focus {
  background-color: var(--shade-2) !important;
  border-color: var(--shade-2) !important;
  color: #FFF;
}

.btn-alt-color{
	background-color: var(--color-1) !important;
	border-color: var(--color-1) !important;
	color: #FFF;
}

.btn-alt-color:hover,
.btn-alt-color:active,
.btn-alt-color:visited,
.btn-alt-color:focus {
	color: #FFF;
	background-color: var(--color-main) !important;
	border-color: var(--color-main) !important;
}

.btn-mini{
	display: flex;
	text-transform: uppercase;
	height: 25px;
	padding-top: unset;
	padding-bottom: unset;
	align-items: center;
	font-size: .8rem;
	justify-content: space-around;
}



/**/
	
.rollOver{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1;
	opacity: 1;
	
	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
	
	cursor: pointer;
}

.rollOver:hover{
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}

.ocultar{
	display: none !important;
}

.maxWidth{
    width: 100%;
    display: inline-block;
    box-sizing: border-box;
    max-width: 1400px !important;
    margin: 0 auto;
    text-align: initial;
}



.float-left  { float: left !important; }
.float-right { float: right !important; }
.float-none  { float: none !important; }

.align-left  { text-align: left !important; }
.align-right { text-align: right !important; }
.align-center  { text-align: center !important; }

.elevation-2 {
  box-shadow: 0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23) !important;
}

.elevation-4 {
  box-shadow: 0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22) !important;
}

.form-select{
	min-width: 100px !important;
}

.div-placeholder{
	padding: 0 !important;
	margin: 0 !important;
	width: 100%;
}

.link-basic, .link-basic:hover, .link-basic:active, .link-basic:link, .link-basic:visited{
	color: var(--color-1);
	text-decoration: none;
}

.link-basic i{
	margin-right: 3px;
}

.link-main{
	color: var(--main-font-color);
	text-decoration: none;
}

.link-main:hover{
	color: var(--color-3);
	text-decoration: none;
}

.grecaptcha-badge { 
    visibility: hidden;
}

/*INTRO*/

div.full_h{
	display: flex;
	width: 100%;
	height: 100vh;	
	position: relative;
	justify-content: center;
	align-items: center;
}

.card{
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 0 solid rgba(0,0,0,.125);
    border-radius: var(--border-radius);
}

.wrapper-maxw{
	max-width: 1200px;
}

/*INPUTS*/
.form-select, .form-control{
	font-family: var(--main-font-family);
}

.input-group {
    position: relative;
    display: flex;   
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%;
	margin-bottom: 1rem;
}

.input-group-text {	
	height: 100%;    
    display: flex;    
    align-items: center;
    font-size: 1rem;    
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: var(--border-radius);
}

.warning{
	padding-bottom: 1rem;
	color: #dc3545;
	display: none;
}

/*LOGIN*/

.loginBox{
	padding: 1rem;
	background: #FFF;
	width: 95%;
	max-width:320px; 
}

.loginBox .logo{
	text-align: center;
	margin-bottom: 1rem;
}

.loginBox .logo img{
	width: 100%;
	max-width: 200px;
}

#welcomeBox{
	font-size:2rem;
	text-align: center;
	padding: 1rem;	
	font-weight: var(--font-bold);	
	padding-bottom: 2rem;
}

/*LAYOUT*/

header{		
	background: #FFF;
	margin-left:var(--sidebar-max-width); 
	border-bottom: 1px solid #dee2e6;
}

aside{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	position: fixed;	
	top:0;
	/*background:var(--sidebar-bk-color);*/
	background:var(--sidebar-bk-color-admin);
	width:var(--sidebar-max-width);
	height: 100vh;
	overflow-y: auto;
	overflow-x: hidden;
	z-index: 9999;
}

aside.admin-sidebar{
	background:var(--sidebar-bk-color-admin);
}

main{
	margin-left: var(--sidebar-max-width);
	padding:1rem;
}

.logo_small{
	margin: -100%;
	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

/*HEADER*/
.btn-responsivo{
	display: inline-block;
	box-sizing: border-box;
	position: fixed;
	z-index: 999;
	left: 0;
	top:0;
	background: #FFF;
	width: 40px;
	height: 41px;
	text-align: center;
	border: none;	
	margin-left: -40px;
	
	border-bottom: 1px solid #dee2e6;
	border-right:  1px solid #dee2e6;
	
	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}


.main-header{
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	padding: 8px 0;
}

.main-header ul, .main-header li{
	display: inherit
}

.main-header li{
	padding:0 10px;
}

.main-header ul li{
	border-right: 1px solid var(--main-font-color);
}

.main-header ul li:last-child{
	border: none;
}

.main-header a{
	color: var(--main-font-color);
	text-decoration: none;
	text-transform: uppercase;
	font-size: .9rem;
}
.main-header a i{
	margin-right: 5px;
}

.sidebar-collapsed .btn-responsivo{
	left:var(--sidebar-max-width);
}

.sidebar-collapsed aside{
	left:0px;
}

.sb-overlay{
	left: 0;
	top: 0;
	position: fixed;
	display: none;
	width: 100vw;
	height: 100vh;
	background:rgba(0,0,0,.8);
}

/*SIDEBAR*/

.main-sidebar .nav-link{
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	text-align: left;

}

.main-sidebar .nav-link:hover, .main-sidebar .nav-link.activo {
	background-color: var(--contrast-light);
	color: #fff;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.main-sidebar .sb-header .logo{
	display: flex;
	justify-content: space-around;
	width: 100%;
}

.main-sidebar .sb-header .logo img{
	width: 100%;
	max-width: 150px;
}



.main-sidebar .nav-item .right{
	position: absolute;
	right: .3rem;
	top: .8rem;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);

	transition: -webkit-transform ease-in-out .3s;
    transition: transform ease-in-out .3s;
    transition: transform ease-in-out .3s,-webkit-transform ease-in-out .3s;
}

.main-sidebar .nav-item.open .right{
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}


aside nav{
	display: flex;
}

aside .sb-wrapper{
	width: 100%;
	height: inherit;
	color: var(--sidebar-font-color);
}

.main-sidebar .bloque{
	width: 100%;
	padding: 1rem;
	border-bottom: 1px solid var(--contrast-light);
}

.main-sidebar .bloque-nav{
	padding: .5rem;
}

.main-sidebar .sb-header img{
	width: 100%;
}

.main-sidebar .sb-perfil{
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
	align-items: center;
}

.main-sidebar .foto{
	width: 40px;
	height: 40px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	overflow: hidden;
}

.main-sidebar .foto img{
	width: inherit;
	height: inherit;
	object-fit: cover;
}

.main-sidebar .nombre{
	padding-left: 1rem;
}

.main-sidebar .nav-sidebar{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.main-sidebar .nav-item{
	flex-grow: 1;
	width: 100%;
}

.main-sidebar .nav-link{
	text-decoration: none;
	color: var(--sidebar-font-color);
	position: relative;
	padding: .5rem .8rem;
	padding-left: 2rem;
}

.main-sidebar .nav-link > i:first-child{
	margin-right: .5rem;
	font-size: .8rem;
	position: absolute;
	left:.5rem;
	top: .85rem;
}

#btn_change_usr i:first-child{
	top: unset;
}

/*SIDEBAR MENU*/
.nav-item > ul{
	display: none;
	overflow: hidden;
	margin-top: .5rem;
	padding-left: .5rem;
}

.main-sidebar .nav-item.abierto .right{
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.main-sidebar .nav-button, .main-sidebar .nav-button:hover, .main-sidebar .nav-button:active{
	background-color: var(--color-2);
	color: var(--color-main);
	border: none;
}

/*MAIN*/
h1.titulo-main{
	font-size: 1.1rem;
	font-weight: var(--font-black);
	text-transform: uppercase;
	margin-bottom: 1rem;
	color: var(--color-1);
	display: flex;
	align-items: center;
}

h1.titulo-main i{
	margin-right: 5px;
	font-size: .8rem;
}

.caja{
	align-content: start;
	border: 0 solid rgba(0,0,0,.125);
    border-radius: var(--border-radius);
	background-color: #fff;
    background-clip: border-box;
	word-wrap: break-word;
	display: flex;
	flex-wrap: wrap;
	box-shadow: 0 .125rem .25rem rgba(0,0,0,.075) !important;
	margin-bottom: 1rem;
}

.caja > div{
	flex-grow: 1;
	width: 100%;
	padding:.8rem 1rem;
}

.caja-header{
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
	background: var(--color-1);
	color: #FFF;
	-webkit-border-radius: var(--border-radius) var(--border-radius) 0 0;
	border-radius: var(--border-radius) var(--border-radius) 0 0;
	font-weight: var(--font-bold);
	padding: .5rem 1rem !important;

}

.caja-header-extra{
	-webkit-border-radius: 0;
	border-radius: 0;
}

.caja-header h2{
	font-weight: var(--font-bold);
	text-transform: uppercase;
	font-size: .9em;
	padding: 0px;
	margin: 0px;
}

.caja-transparente{
	background: unset !important;
	padding: 0 !important;
	border:unset !important;
	box-shadow:unset !important;
}

.caja-transparente > div{
	padding:.8rem 0 !important;
}

.caja-especial{
	border: solid 1px var(--color-1)
}

.caja-items-wrapper{
	display: flex;
	justify-content: flex-start;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--margin-small);
}

.caja-items-wrapper .caja-item{
	display: flex;
	justify-content: flex-start;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--margin-mini);
	padding: var(--margin-mini);

	border: 0 solid rgba(0,0,0,.125);
	border-radius: var(--border-radius);
	background-color: var(--bk-color);
}

.caja-items-wrapper .caja-item-header{
	display: flex;
	justify-content: space-between;
	width: 100%;
	gap: var(--margin-small);
	align-items: flex-start;
}

.tabs-main .tabs{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap:5px;
	margin-bottom: 1rem;
}

.tabs-main .tabs a{
	display: flex;
	padding: .5rem 1rem;
	color: #FFF;
	font-weight: var(--font-bold);
	background-color: var(--color-main);
	text-decoration: none;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.tabs-main .tabs a.activo{
	background-color: var(--color-main-dark);
}

.caja-foot{
	padding-top:0px !important;
	text-align: right;
}

.caja-foot-invisible{
	padding-bottom:0 !important;
}

.caja-mensaje{
	background: var(--color-2);
	color: var(--color-main);
}

.caja-mensaje i{
	margin-right: 10px;
}
/**/


/*DASHBOARD*/

.dashboard{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 1rem;
}

.dashboard > a{
	max-width: 350px;
	text-decoration: none;
	color: var(--color-main);
}

.dashboard .ver_mas{
	text-align: right;
	color: var(--color-main);
	font-weight: var(--font-bold);
}

.dashboard .ver_mas i{
	font-size: .7rem;
	margin-left: 5px;
}

.dashboard .caja-header{
	background: var(--color-3);
}

/*FORM*/
.grid-form, .grid-form-col, .grid-form-row{
	display: flex;
	gap: .3rem;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: center;
	text-align: left;
}

.grid_from_section{
	display: flex;
	width: 100%;
}

.grid-form-row{
	width: 100%;
	margin-bottom: .3rem;
}

.grid-form-row.grid-wrap {
	flex-wrap: wrap;
}

.grid-form-row.grid-wrap > div{
	width: 100%;
	min-width: 100%;
}

.grid-form-col.etiqueta{
	width: 190px;
	font-weight: var(--font-bold);
	font-size: .95em;
}

.ficha .grid-form-col.etiqueta{
	width: 160px;
	font-weight: var(--font-bold);
}

.grid-form-col.input_grid{
	flex-grow: 1;
}

.grid-form-col.input_grid .grid-col{
	flex-grow: 1;
	max-width: 60%;
}

.grid-form-col.input_grid .grid-col.full-width{
	max-width: 100%;
}

.grid-form-col.input_grid.grid-wrap{
	flex-wrap: wrap;
	gap: var(--margin-mini);
}

.grid-form-col.input_grid.grid-wrap > div{
	width: 100%;
	min-width: 100%;
}

.grid-form .item-single{
	width: 100%;
}

.max-input-w{
	max-width: 320px;
}

.caja-body h2, .lista-resultados h2{
	font-size: 1.3rem;
	font-weight: var(--font-black);
	margin: .5rem 0;
	padding: 0 .5rem .5rem 0;
	border-bottom: solid 1px var(--contrast-dark);
	border-right: solid 1px var(--contrast-dark);
	width: 100%;
}

.caja-body h3, .lista-resultados h3{
	font-size: 1.1rem;
	font-weight: var(--font-black);
	margin: .5rem 0;
	padding: 0 .5rem .5rem 0;
	border-bottom: solid 1px var(--contrast-dark);
	border-right: solid 1px var(--contrast-dark);
	width: 100%;
}


.form-select .parent{
	font-weight: var(--font-bold);
}

.form-box-row{
	margin-bottom: .3rem;
}

.form-box-row:last-child{
	margin-bottom: 0;
}

.form-box-row .grid-col{
	flex-grow: 1;
	display: flex;
	gap: .3rem;
	align-items: center;
}
.form-box-row .grid-col.full-width{
	flex-grow: 1;
	width: 100%;
}

.form-box-row .grid-col.etiqueta{
	white-space: nowrap;
	flex-grow: unset;
	font-size: .95em;
	font-weight: var(--font-bold);

}

/*LISTA RESULTADOS*/

.lista-resultados{
	width: 100%;
	overflow-x:auto;
	overflow-y:visible;
	margin-top: 1rem;
}

.tabla-resultados{
	width: 100%;
}

.tabla-resultados th, .tabla-resultados td{
	padding: var(--padding-tabla);
}

.tabla-resultados th{
	text-align: left;
	border-right: 1px solid var(--bk-color);
	background: var(--color-main);
	font-weight: var(--font-light);
	color: var(--color-white);
}

.tabla-resultados th:last-child{
	border: none;
}

.tabla-resultados td{
	vertical-align: top;
	border-bottom: solid 1px var(--contrast-dark)
}

.tabla-resultados .unread td{
	font-weight: var(--font-bold);
}

.th-sort{
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	font-weight: var(--font-bold);
}

.th-sort i{
	font-size: .7em;
}

.th-sort div:last-child{
	margin-left: 8px;
}

.tabla-resultados .listado, .tabla-listado .listado{
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.tabla-resultados a,
.tabla-listado a{
	text-decoration: none;
	color: inherit;
}

.tabla-resultados a:hover,
.tabla-listado a:hover{
	color: var(--color-3);
}

.tabla-resultados .listado a,
.tabla-resultados .listado a:hover,
.tabla-resultados .listado div,
.tabla-listado .listado div{
	background: var(--contrast-dark);
	font-size: .9em;
	padding: 3px 8px;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.controles-td{
	width: 1px;
}


.tabla-resultados .controles, .tabla-listado .controles{
	display: flex;
	gap: 5px;
	justify-content: flex-end;
	padding-top: .15rem;
}

.tabla-resultados .controles a,
.tabla-resultados .controles button,
.tabla-listado .controles a,
.tabla-listado .controles button,
.tabla-resultados .controles .boton-dummy,
.bnt-square{
	display: inherit;
	background: var(--color-main);
	color: #FFF;
	align-items: center;
	width: 25px;
	height: 25px;
	font-size: .7em;
	border: none;
	justify-content: center;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.tabla-listado .etiqueta{
	font-weight: var(--font-bold);
}

.bnt-square{
	display: inline-flex;
	padding:0;
	align-items: center;
	justify-content: space-around;
}

.tabla-resultados .controles .boton-dummy{
	visibility: hidden;
}

div.btn-primary{
	cursor: unset !important;
}

/*controles */
.controles-dropdown{
	width: 40px;
}

.controles-dropdown .dropdown{position:absolute;}

.controles-dropdown .dropdown .dropdown-trigger{
	width: 40px;
	text-align: center;
	padding: 0px 0px 1px 0px;
	color: var(--shade-1);
	border: none;
	letter-spacing: 2px;
	border-radius: 10px;
}

.controles-dropdown .dropdown .dropdown-menu{
	padding: 0px;
}

.controles-dropdown .dropdown .dropdown-menu a, .controles-dropdown .dropdown .dropdown-menu button{
	padding: 8px 8px;

	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.controles-dropdown .dropdown .dropdown-menu a i, .controles-dropdown .dropdown .dropdown-menu button i{
	margin-right: 5px;
}

.controles-dropdown .dropdown .dropdown-delete{
	border-top: 1px solid rgba(0,0,0,.15);
}

.dropdown-delete a, .dropdown-delete button, .dropdown-delete a:hover, .dropdown-delete button:hover{
	color:var(--color-errror);
}

/*LISTADOS*/
.caja-body > .lista-resultados{
	margin-top: 0px;
}

.tabla-listado{
	width: 100%;
	border-collapse: collapse;
}

.tabla-listado th{
	font-weight: var(--font-bold);
	background: var(--color-2);
}

.tabla-listado th, .tabla-listado td{

	padding:var(--padding-tabla);
	border-right: solid 1px #FFF;
	text-align: left;
	vertical-align: top;
	border-bottom: solid 1px var(--color-2);
}


.tabla-listado tr:nth-child(odd){
	/*background: var(--contrast-dark-1);*/
}

.lista-resultados .ficha-externo{
	background: var(--bk-color);
	padding: .5rem;
	border-radius: var(--border-radius);
	margin-top: .5rem;
	font-size: .95em;
}


/**/
.btn-rojo{
	background: var(--color-acento-rojo) !important;
}

.update-message{
	width: 100%;
	text-align: center;
	display: none;
}

.update-message i{
	font-size: .7em;
}

.update-box .update-message{
	display: inline-block;
	box-sizing: border-box;
}

.update-box .update-input{
	display: none;
}

.update-message-show{
	display: flex;
	gap: 5px;
	align-items: center;
	justify-content: space-between;
	font-size: .85em;
	padding: var(--padding-tabla);
	background: var(--contrast-dark);
	color: var(--color-main-dark);
	border-radius: var(--border-radius);
}

/*PERMISOS*/
.grid-2x{
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	justify-content: space-between;

}

.grid-2x .gc-col{
	flex-grow: 1;
	width: 48%;
}


.lista-add-remove{
	display: flex;
	flex-wrap: wrap;
	gap:.3rem;
}

.lista-add-remove .item{
	width: 100%;
	display: flex;
	text-align: left;
	padding:0px;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	border: solid 1px var(--color-2);
	background: var(--contrast-dark-1);

	align-items: center;
	overflow: hidden;

	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
	/*cursor: pointer;*/
}


.lista-add-remove.lista-big .item{
	padding: .5rem;
}

.lista-add-remove.lista-big .item.activo{
	background: var(--color-1);
	color:white;
}

.lista-add-remove .item.item-remove{
	padding-right: .5rem;
}

.lista-add-remove .item.item-remove .arrow{
	margin-right: .5rem;
}

.lista-add-remove .item.item-add{
	justify-content: space-between;
	padding-left: .5rem;
}

.lista-add-remove h2{
	font-size: 1.2em;
	width: 100%;
	margin-bottom: 5px;
	padding-bottom: 5px;
	color: var(--color-main);
	border-bottom: solid 1px var(--contrast-dark);
	margin-top: 1rem;
}

.lista-add-remove h2:first-child{
	margin-top:0px;
}

.lista-add-remove .arrow{
	background: var(--contrast-dark);
	padding: .3rem;
	font-size: .8em;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	color: #FFF;

	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;

	border: none;

	cursor: pointer;
}


.lista-add-remove .item .arrow:hover{
	background: var(--color-main);
	padding: .3rem .8rem;
}

.lista-add-remove .item.item-remove .arrow:hover{
	background: var(--color-acento-rojo);
}

/**/
.nota{
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	padding: .5rem;
	background: var(--color-2);
	margin-bottom: 1rem;
	font-size: .9em;
	width: 100%;
}

/*PAGINADO*/
.paginado{
	width: 100%;
	padding: 1rem;
	display: flex;
	gap: .3rem;
	justify-content: center;
}

.paginado .pag-btn{
	display: flex;
	width: 30px;
	height: 30px;
	background: var(--contrast-dark);
	text-decoration: none;
	color: var(--main-font-color);
	font-size: .9em;
	align-items: center;
	justify-content: center;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);

	transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
}

.paginado .pag-btn:hover, .paginado .pag-btn.pagActivo:hover{
	background: var(--color-1);
	color: var(--contrast-white);
}

.paginado .pag-btn.pagActivo{
	background: var(--color-main);
	color: var(--contrast-white);
}

/*FORM FILE*/

.hidden-input{
	position: absolute;
	top: -100px;
	width: 0px;
	height: 0px;
}

.form-file-list{
	display: flex;
	width: 100%;
	margin-bottom: .5rem;
}

.file-list-box{
	display: flex;
	gap: .5rem;
	width: 100%;
	padding: .5rem;
	background: var(--bk-color);
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	flex-wrap: wrap;
}

.file-list-box .file-row{
	display: flex;	
	width: 100%;
	flex-wrap: wrap;
	justify-content: space-between;
	gap:1rem;
}

.file-list-box .file-loader{
	flex-grow: 1;
	width: 100%;
}

.file-list-box .file-col:first-child{
	width: 50%;
}


.file-list-box .file-descripcion .nombre{
	font-weight: var(--font-bold);
}

.file-list-box .file-descripcion .descripcion{
	font-size: .85em;
	line-height: 1.2em;
}

.file-list-box .file-btn{
	text-align: right;
}

.file-list-box .file-descripcion .descripcion a, .file-list-box .file-descripcion .descripcion a:hover{
	text-decoration: none;
	color: var(--color-1);
}

.file-list-box .file-descripcion .descripcion a i{
	margin-right: .25rem;
}

.file-list-box .file-resultado{
	font-weight: var(--font-bold);
}

.file-list-box .file-resultado span i{
	margin-right: .25rem;
}

.file-list-box .file-resultado .checkFalse{
	color: var(--color-alert);
}

.file-list-box .file-resultado .checkTrue, .file-list-box .file-resultado .checkTrue a, .file-list-box .file-resultado .checkTrue a:hover{
	color: var(--color-ok);
	text-decoration: none;
}

/*PROGRESS BAR*/

.progress .barra{
	color:var(--color-main);
	font-weight: var(--font-black);
	text-align: center;
	font-size: .9em;
	text-transform: uppercase;
}

.no-wrap{
	white-space: nowrap !important;
}

.color-error{
	color: var(--color-errror) !important;
}

.color-ok{
	color: var(--color-ok) !important;
}

/**/
.swap-user .bloque{
	border: none;
}
.swap-user .nav-button{
	width: 100%;	
	text-align: left;
}

.swap-user .dropdown-menu{
	min-width: 100%;
	padding: 0;
	overflow: hidden;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.swap-user .dropdown-header{
	font-size: 1em;
	padding: .5rem .8rem;
	font-weight: var(--font-bold);	
	color: var(--color-4);
}

.swap-user .dropdown-divider{
	margin: 0;
}

.swap-user .dropdown-item{
	padding: .5rem .8rem;
	white-space: normal;
}

.swap-user .swap-user-button{
	display: flex;
}

.swap-user .swap-user-button i{
	padding-top:6px;
}

.grid-form-row.flex-start{   
	align-items:flex-start !important;
}

.access-denied{
	font-size: 1.2em;
	text-align: center;
	width: 100%;
	font-weight:var(--font-bold);
	text-transform: uppercase;
}

.no-margin-bottom{
	margin-bottom: unset !important;
}

.controles-list{
	display: inline-flex;
	gap: var(--margin-mini);
}

.auto-w{
	width: auto !important;
}

/*CUESTIONARIO*/
.cuestionario-form-view .cuestionario-wrapper > *:first-child{
	padding-top: unset;
	border: none;
	margin-top: unset;
}

.cuestionario-titulo{
	display: flex;
	width: 100%;
	flex-wrap: wrap;	
	border-top: solid 1px var(--color-borde);
	margin-top: var(--margin-mini);
	padding-top: var(--margin-mini);
	position: relative;
}

.cuestionario-titulo > *{
	width: 100%;
}

.cuestionario-titulo h1{
	font-size: 1.2em;
	font-weight: var(--font-bold);	
	width: 100%;
	margin: 0;
	color: var(--color-main-dark);
}

.cuestionario-wrapper{
	padding: 0;
	list-style-position: inside;
}

.cuestionario-wrapper .etiqueta-notas{
	font-size: .9em;
	padding-bottom: 5px;
	color:var(--color-3);
}
.cuestionario-wrapper  li{
	padding-bottom: var(--margin-mini);
}

/*EDITOR BLOQUE*/

.cuestionario-editor-view ol .cuestionario-titulo:first-child{
	border: unset;
	margin-top: unset;
}

.editor-bloque{
	background: var(--color-6);
}

.editor-bloque h1{
	text-transform: uppercase;
	font-size: 1em;
	width: 100%;
	font-weight: var(--font-black);
}

.cuestionario-editor-view li{
	background: var(--color-bk-light);	
	margin-bottom: var(--margin-mini);
	padding: var(--margin-mini);
	border-radius: var(--radius-mini);
	position: relative;
	width: 100%;
	margin-top: 45px !important;
	border: solid 1px var(--color-borde) !important;
}

.cuestionario-editor-view .controles{
	display: inline-flex;
	justify-content: flex-end;
	position: absolute;
	right: 0;
	top: -25px;
	width: 100%;
	gap: var(--margin-micro);
}

.cuestionario-editor-view .controles button{	
	display: inline-flex;
	align-items: center;
	justify-content: space-around;	
	font-size: .8em;
	background: var(--color-borde);
	color:var(--color-main);
	border: none;
	width: 25px;
	height: 25px;
	border-radius: var(--radius-mini) var(--radius-mini) 0 0;	
}

.cuestionario-editor-view .controles button:hover{
	background: var(--color-main);
	color:var(--color-borde);
}

.cuestionario-editor-view .controles .tipo{
	display: inline-flex;
	font-size: .9em;
	font-weight: var(--font-bold);
	color:var(--color-main);
}

.cuestionario-editor-view .campo .nota{
	background: var(--color-white);
	display: inline-flex;
	width: auto;
	margin: 0;
	color: rgba(0,0,0,.5);
	border: solid 1px var(--color-borde);
	padding: var(--margin-micro) var(--margin-small);
}

.cuestionario-editor-view .cuestionario-item .opciones{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	gap: var(--margin-mini);	
	padding: var(--margin-small) 0 var(--margin-small) var(--margin-small);
	
	
}

.cuestionario-editor-view .bloque-opcion{
	display: flex;
	width: 100%;	
	font-size: .9em;
	background: var(--color-white);
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	border: solid 1px var(--color-borde);
	gap: var(--margin-mini);
	padding: var(--margin-mini);
	align-items: flex-start;
	justify-content: space-around;
}


.cuestionario-editor-view .bloque-opcion .etiqueta{
	display: flex;
	flex-grow: 1;
	flex-wrap: wrap;
}

/*CUESTIONARIO LIST VIEW*/

.cuestionario-list-view ol, .cuestionario-list-view ul{
	margin: 0;
	padding-left: 1em;
}

.cuestionario-list-view ol > li::marker,
.cuestionario-list-view ul > li::marker
{
	font-weight: bold;
}

.cuestionario-list-view li{
	margin-bottom: var(--margin-mini);
}

/**/

.opcion-controles{
	display: inline-flex;
	gap:var(--margin-micro);
}

.opcion-controles button{
	display: flex;
	width: 20px;
	height: 20px;
	align-items: center;
	justify-content: space-around;
	font-size: .8em;
	border: none;
	background: var(--color-borde);
	color: var(--color-main);
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
}

.opcion-controles button:hover{
	background: var(--color-main);
	color: var(--color-borde);
}



.btn-simple{
	background: var(--contrast-dark);
	font-size: .9em;
	padding: 3px 8px;
	-webkit-border-radius: var(--border-radius);
	border-radius: var(--border-radius);
	width: 100%;
	text-align: center;
	white-space: nowrap;
	color: var(--main-font-color);
	text-decoration: none;
}

.btn-simple.activo{
	background: var(--color-main);
	color: var(--color-white);
}

.btn-simple.error{
	color: var(--color-errror);
}

.ck-powered-by-balloon{
	display: none !important;
}

/**/

.menu-tabs{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	border-bottom: solid 1px var(--color-main);
	width: 100%;
	gap: var(--margin-micro);
}

.menu-tabs a{
	display: inline-flex;
	align-items: center;
	font-size: .9em;
	color: var(--color-white);
	background: var(--color-main);
	padding: var(--margin-micro) var(--margin-small);
	border-radius: var(--border-radius) var(--border-radius) 0 0;
	flex-grow: 1;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: var(--font-bold);
}

.menu-tabs a.activo{
	background: var(--color-1);
}

/**/
@media (max-width: 1200px){
	.grid-form-col.input_grid .grid-col{
		max-width: 80%;
	}
}

@media (max-width: 1000px){
	.grid-form-col.input_grid .grid-col{
		max-width: 100%;
	}
}

@media (max-width: 920px){
	/*SIDEBAR*/

	.btn-responsivo{	
		margin-left: 0;
	}

	aside{
		left: var(--sidebar-min-width);	
	}

	aside.elevation-4{
		box-shadow: none !important;
	}

	.sidebar-collapsed aside.elevation-4{
		box-shadow: 0 14px 28px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.22) !important;
	}

	main, header{
		margin-left: 0;
	}

	.sidebar-collapsed .sb-overlay{
		display: inline-block;
	}

}

@media (max-width: 750px){
	.file-list-box .file-col:first-child{
		width: 100%;
	}
}

@media (max-width: 650px) {
	.max-input-w{
		max-width:100%;
	}
	
	.grid-form-col.input_grid .grid-col{
		max-width: 100%;
	}
	
	.form-box-row > div{
		width: 100%;
	}
}