// SCROLLBARS
// =====================================================================================
::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}
::-moz-scrollbar {
	width: 6px;
	height: 6px;
}
::-webkit-scrollbar-thumb {
	background-color: @g9;
	border-radius: 0px;
}
::-moz-scrollbar-thumb {
	background-color: @g9;
	border-radius: 0px;
}
::-webkit-scrollbar-track {
	background: @e6;
}
::-moz-scrollbar-track {
	background: @e6;
}


// COLORES
// ===================================================================================== 
.data-ok {
	color: rgb(83, 169, 75);
}
.data-ok-bg {
	background-color: rgb(83, 169, 75);
}   
.progress-ok {
    background-color: rgba(216, 240, 80, 0.6);
}
.data-limite {
    color: rgb(240, 158, 52);
}
.data-limite-bg {
	background-color: rgb(240, 158, 52);
} 
.progress-limite {
    background-color: rgba(240, 158, 52, 0.8);
}
.data-mal {
    color: rgb(240, 80, 80);
}
.data-gris {
    color: #c6c6c6;
}
.data-mal-bg {
	background-color: rgb(240, 80, 80);
}
.progress-mal {
    background-color: rgba(240, 80, 80, 0.9);
}
.verde-produccion {
    background-color: rgba(40, 148, 31,0.8);
}
.rojo-gestion {
    background-color: rgba(148, 31, 31,0.6);
}
.azul-produccion {
    background: rgb(0, 192, 239);
}
.gris-gestion {
    background: rgb(200, 200, 200);
}
.rojo {
	color: @rojo;
}
.azul {
    color: rgb(0, 192, 239);
}

// MIXINS
// ===================================================================================== 
.transition(@transition) {
  -webkit-transition: @transition;
  -moz-transition: @transition;
  -ms-transition: @transition;
  -o-transition: @transition;
  transition: @transition;
}
.transform(@transform) {
  -webkit-transform: @transform;
  -moz-transform: @transform;
  -ms-transform: @transform;
  -o-transform: @transform;
  transform: @transform;
}
.box-shadow(@box-shadow) {
  -webkit-box-shadow: @box-shadow;
  -moz-box-shadow: @box-shadow;
  -ms-box-shadow: @box-shadow;
  -o-box-shadow: @box-shadow;
  box-shadow: @box-shadow;
}
.text-shadow(@text-shadow) {
  -webkit-text-shadow: @text-shadow;
  -moz-text-shadow: @text-shadow;
  -ms-text-shadow: @text-shadow;
  -o-text-shadow: @text-shadow;
  text-shadow: @text-shadow;
}

// VARIABLES
// ===================================================================================== 
@i: !important;
@d4: #d4d4d4;
@ef: #efefef;
@e6: #e6e6e6;
@f5: #f5f5f5;
@g1: #f1f1f1;
@g3: #333333;
@g6: #666666;
@g9: #999999;
@b: #FFFFFF;
@savvy1: #009ffa;
@savvy2: #334351;
@n: #000000;
@rojo: #e74a25;
@verde: #10c38e;
@t: transparent;
@corporativo: #f57b20;
@ef15: all 0.15s ease-in-out;
@fa: 'Font Awesome 5 Pro';

// ESTILOS
// ===================================================================================== 
html, body {
  font-family: 'Roboto', sans-serif;
  -webkit-font-smoothing: antialiased;
  min-height: 100%;
  overflow-x: hidden @i;
}
body {
	font-size: 14px;
	color: @g3;
	min-height: 100%;
	background: #f5f5f5;

	.header {
		position: fixed;
		height: 50px;
		top: 0;
		left: 0;
		right: 0;
		z-index: 1030;
		display: flex;
		justify-content: space-between;
		align-items: center;
		background-color: #333333;

		> div {
			width: 235px;
			padding: 8px 16px;
			display: flex;
			flex-flow: row nowrap;
			align-content: center;
			justify-content: space-between;
			align-items: center;

			&.logo-top {
				width: 100%;
				display: block;
			}

			.logo {
				.icon {
					max-height: 30px;
					max-width: 140px;
				}
			}

			.sidebar-toggle {
				.icon-bar {
					display: block;
					width: 22px;
					height: 2px;
					background: @b @i;
					.transition(@ef15);

					+ .icon-bar {
						margin-top: 4px;
					}
				}

				&:hover {
					.icon-bar {
						background: @b @i;
						width: 26px;
					}
				}
			}
		}

		nav.navbar {
			display: flex;
			justify-content: flex-end;
			width: calc(~'100% - 46px');

			a {
				color: @b;
			}

			.navbar-nav {
				> .user-menu {
					display: flex;
					flex-flow: row nowrap;
					justify-content: center;
					align-content: center;
					align-items: center;

					> a {
						font-weight: 500;

						&.config {
							font-size: 1.4em @i;

							> i {
								.transition(@ef15);
							}

							&:hover i {
								.transform(rotate(45deg));
							}
						}

						&.usuario {
							display: flex;
							align-items: center;

							&.dropdown-toggle::after {
								content: '\f0d7';
								font-family: @fa;
								font-weight: 900;
								color: @b;
							    display: flex;
							    justify-content: flex-end;
							    align-items: center;
							    width: 10px;
							    height: 5px;
							    margin: 0px 5px;
							    border: none;
							}
						}

						> img {
							margin-left: 5px;
							width: 30px;
							height: 30px;
						}					
					}

					&.show > .dropdown-menu {
						opacity: 1;
						visibility: visible;
					}

					> .dropdown-menu {
						padding: 0px;
						width: 280px;
					    right: -5px;
					    left: initial;
					    top: calc(~'100% + 1px');
					    border: none;
					    border-radius: 5px;
					    background: @g3;
					    position: absolute;
					    z-index: 2300;
					    opacity: 0;
					    visibility: hidden;			    
					    .transition(@ef15);
					    .box-shadow(0px 3px 6px rgba(0, 0, 0, 0.1));					    

					    > li.user-header {
					    	padding: 20px;
					    	text-align: center;

					    	> a {
					    		display: block;
					    		margin: 0 0 15px @i;

					    		&:hover {
					    			background-color: @t;
					    		}

					    		> img {
						    		width: 72px;
						    		height: auto;
						    		margin: 0px;
						    		z-index: 5;
						    	}
					    	}

					    	> p {
					    		font-size: 18px;
					    		color: #cccccc;
					    		margin: 2px 0px 0px;
					    		z-index: 5;

					    		&:first-of-type {
					    			margin-bottom: 5px;
					    		}

					    		> small {
					    			font-size: 12px;
					    			display: block;

					    			> i {
						    			margin-right: 5px;
						    		}
					    		}
					    	}				    	
					    }

					    > li.user-footer {
					    	padding: 0 15px 15px;
					    }
					}
				}	

				> .breadcrumb {
					list-style: none;
					border-radius: 0;
					padding: inherit;
					background-color: transparent;
					white-space: nowrap;
					overflow: hidden;
					text-overflow: ellipsis;

					ul#registro-activo {
						font-size: 0.9em;
						height: initial;
						margin: 0px; 
						padding: 0px;
						background-color: @t;
						display: flex;
						flex-wrap: nowrap;
						white-space: nowrap;
						overflow: hidden;
						text-overflow: ellipsis;

					    > li {
					    	color: @b;
					    	font-weight: 500;
					    	white-space: nowrap;
					    	overflow: hidden;
					    	text-overflow: ellipsis;
					    	animation-name: parpadeo;
						    animation-duration: 3s;
						    animation-timing-function: linear;
						    animation-iteration-count: infinite;
						    -webkit-animation-name: parpadeo;
						    -webkit-animation-duration: 3s;
						    -webkit-animation-timing-function: linear;
						    -webkit-animation-iteration-count: infinite;

						    @-moz-keyframes parpadeo{  
							  0% { opacity: 1.0; }
							  50% { opacity: 0.5; }
							  100% { opacity: 1.0; }
							}

							@-webkit-keyframes parpadeo {  
							  0% { opacity: 1.0; }
							  50% { opacity: 0.5; }
							   100% { opacity: 1.0; }
							}

							@keyframes parpadeo {  
							  0% { opacity: 1.0; }
							   50% { opacity: 0.5; }
							  100% { opacity: 1.0; }
							}

						    &:after {
							    content: '\f105';
							    font-family: 'Font Awesome 5 Pro';
							    font-weight: 400;
							    margin: 0 8px;
						    }

						    &:last-child {
						    	padding-right: 0px;

						    	&:after {
								    display: none;
								}
							}

							&.tareas {
								color: @g9;
							}
					    }
					}
				}
			}
		}
	}	

	.row-offcanvas {
		padding-top: 50px;
	    min-height: 100%;
	
		.left-side {
			position: absolute;
			width: 220px;
			top: 0;
			position: fixed;
			opacity: 1;
			visibility: visible;
			background: @b;
			.transition(all 0.15s ease-out);

			> .sidebar {
				height: calc(~'100vh - 50px');
				overflow: auto;
				border-right: solid 1px @e6;

				> .sidebar-menu {
					list-style: none;
					margin: 0;
					padding: 0;
					overflow: auto;					

					> li {
						margin: 0;
						padding: 0;
						position: relative;
						overflow: hidden;		

						> a {
						    display: flex;
						    flex-flow: row nowrap;
						    justify-content: flex-start;
						    align-items: center;
							.transition(@ef15);
							height: 50px;
							padding: 15px 20px 15px 55px;
							position: relative;

							&::after {
								content: '';
								display: block;
								height: 1px;
								left: 0;
								right: 0;
								background-color: @e6;
								position: absolute;
								bottom: 0;
							}

							&.active {
								font-weight: 500;

								&::after {
									background-color: @b;
								}

								> i {
									font-weight: 900;
								}
							}

							&.active, &:hover, &:active, &:focus {
								background-color: @e6;
								text-decoration: none;
							}

							> i {
								font-size: 21px;
								width: 30px;
								text-align: center;
								position: absolute;
								left: 15px;
								top: 50%;
								.transform(translateY(calc(~'-50% - 1px')));
							}

							> span {
								font-size: 1rem;
								line-height: 1rem;
								position: absolute;
								left: 53px;
								-webkit-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
								-moz-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
								-ms-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
								transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
								opacity: 1;
								visibility: visible;
							}

							.gif-menu {
								width: 16px;
								margin-left: auto;
							}
						}

						> ul {
							padding: 5px 5px 5px 16px;
							display: none;
							background: @f5;
							border-bottom: 1px solid @e6;

							> li {
								> a {
									color: @g6;
									line-height: 35px;
									height: 35px;
									display: block;
									padding: 0px 0px 0px 35px;
									position: relative;

									> span {
										width: calc(~'100% - 35px');
										display: block;
										white-space: nowrap;
										overflow: hidden;
										text-overflow: ellipsis;
										position: absolute;
										left: 38px;
										top: 0;
										bottom: 0;
										-webkit-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
										-moz-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
										-ms-transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
										transition: left 0.15s ease-out, opacity 0.15s ease-out, visibility 0.15s ease-out;
									}

									> i {
										font-size: 15px;
										text-align: center;
										position: absolute;
										width: 19px;
										left: 4px;
										bottom: 50%;
										.transform(translateY(calc(~'50% - 1px')));
										-webkit-transition: left 0.15s ease-out;
										-moz-transition: left 0.15s ease-out;
										-ms-transition: left 0.15s ease-out;
										transition: left 0.15s ease-out;
									}

									&.active {
										font-weight: 500;

										> i {
											font-weight: 900 @i;
										}
									}

									&:hover, &:focus, &.active {
										color: @n;
									}
								}
							}

							&.active {
								display: block;
							}
						}
					}
				}
			}

			&.collapse-left {
				> .sidebar {
					> .sidebar-menu > li {
					 	> a {
						 	padding: 15px;

						 	> i {
						 		margin-right: 0px;
						 		text-align: center;
						 	}

						 	> span {
							 	opacity: 0;
							 	visibility: hidden;
							 	left: 47px;
							}
						}

						> ul > li > a {
							padding: 10px 0px 10px 0px;

							> span {
								left: 32px;
								opacity: 0;
							 	visibility: hidden;
							}
						}
					}
				}
			}
		}

		.right-side {
			position: absolute;
			left: 220px;
			right: 0px;
			.transition(@ef15);

			> .content-header {
				margin: 0px 15px;
				padding: 15px 15px;
				display: flex;
				flex-flow: row wrap;
				justify-content: space-between;
				align-items: center;
				border-bottom-left-radius: 5px;
			    border-bottom-right-radius: 5px;
			    border: solid 1px @e6;
			    background: @b;
			    position: relative;

			    h1 {
		    		margin-bottom: 0px;
		    	}

			    > div {
			    	display: flex;
			    	flex-flow: row wrap;
			    	justify-content: space-between;
			    	align-items: center;
			    	margin-right: 15px;		    	

			    	#num-recursos-activos {
						font-size: 1.1em;
						color: @b;
						font-weight: 500;
						display: flex;
						justify-content: center;
						align-items: center;
						width: 26px;
						height: 26px;
						margin: 0 15px;
						background-color: @g3;
					    border-radius: 50%;

					    &.extra {
					    	padding: 2px 7px;
						    border-radius: 7px;
						    width: auto;
						    margin: 0px 15px 0px 0px;
					    }
					}
				}
			}

			> .content {
				padding: 15px;
				overflow: auto;
			}
		}

		.right-side, .left-side {
			min-height: calc(~'100vh - 50px');
		}
	}	

	&.login {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100vh;

		.login-wrapper {
			padding: 20px;
			width: 280px;
			border: solid 1px #dedede;
			background: @b;
			border-radius: 5px;

			.login-logo {
				text-align: center;
				padding: 10px 0px 15px;

				.titulo {
					font-weight: 500;
				    color: @g6;
				    margin-top: 10px;
				}

				img {
					/*height: 61px;*/
				}
			}			

			.form-group {
				margin-bottom: 0px;

				.form-control {
					height: 42px;
				}
			}

			.footer {
				padding-top: 10px;

				.btn {
					width: 100%;
				}
			}

			#cargando {
				display: none;
				text-align: center;

				img {
					width: 50px;
				}
			}
		}
	}

	#breadcrumb {
		font-size: 0.9em;
		font-weight: 500;
		padding: 0px;
		margin-bottom: 0;
		background-color: transparent;

		> li {
			> a {
				color: #777777;
				text-decoration: none;

				&:hover {
					color: inherit;
				}
			}

			+ li:before {
				content: '\f105';
				font-family: @fa;
				font-weight: 400;
				margin: 0 8px;
				position: relative;
				top: 1px;
			}
		}
	}
}
h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	color: @n;
    margin-bottom: 20px;

    strong {
    	font-weight: 700;
    }
}
h1 {
	font-size: 1.8em;
}
h2 {
	font-size: 1.5em;
}
h3 {
	font-size: 1.3em;
}
h4 {
	font-size: 1.15em;
	font-weight: 500;

	&.modal-title {
		font-size: 1.7em;
		font-weight: 400;
		color: @b;
		width: 100%;    
	}
}
p {
	margin-bottom: 15px;
}
a {
	color: @g3;
	.transition(@ef15);

	&:hover, &:active, &:focus {
		color: @n;
		text-decoration: none;
		outline: none;
	}
}
.fw-500 {
	font-weight: 500;
}
strong, .fw-600 {
	font-weight: 600;

	small {
		font-weight: 700;
	}
}
.fw-700, .negrita {
    font-weight: 700;
}
small {
	font-size: 85%;
}
.no-padding-y-axis {
	padding: 0 20px;
}
.pull-right {
    float: right @i;
}
.pull-left {
    float: left @i;
}
.leyenda {
	padding: 20px;
}
.der {
    float: right;
    text-align: right;
    
    i {
	    margin: 0px 5px 0px 10px;
	}
}
.extra-left {
    position: absolute;
    top: 8px;
    left:0px;
    z-index: 3;
    color:#C0C0C0;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.6);
}
.extra-right {
    position: absolute;
    top: 8px;
    left:98%;
    z-index: 3;
    color:#C0C0C0;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.6);
}
.error {
    .box-shadow(inset 0px 0px 2px rgba(255,0,0,0.8));
}
.cierre {
	width: 100%;
	clear: both;
}
.sin-borde {
	border: none @i;
	box-shadow: none;
}
.inline {
	display: inline-block;
}
.section-acciones {
	background: #f5f5f5; 
	-webkit-box-shadow: inset -3px 0px 8px -4px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: inset -3px 0px 8px -4px rgba(0, 0, 0, 0.1);
	box-shadow: inset -3px 0px 8px -4px rgba(0, 0, 0, 0.07);
}
.radius-0 {
	border-radius: 0px @i;
}
.radius-top-0 {
	border-top-left-radius: 0px @i;
	border-top-right-radius: 0px @i;
}
.radius-bottom-0 {
	border-bottom-left-radius: 0px @i;
	border-bottom-right-radius: 0px @i;
}
.separador {
	width: 100%;
	height: 1px;
	background-color: @d4;
	margin: 40px 0px;
}
.no-padding {
	padding: 0px @i;
}
.no-padding-left {
	padding-left: 0 @i;
}
.no-padding-right {
	padding-right: 0 @i;
}
.padding-0-5 {
	padding: 0px 5px @i;
}
.padding-5 {
	padding: 5px @i;
}
.tapar {
	visibility: hidden;
}
.right {
	display: inline-block;
	float: right;
}
.notas, .aviso {
	font-size: 1em;
    font-weight: 500;
    color: @g3;
    margin: 0px;
    padding: 10px 15px;
    display: inline-block;
    border-radius: 5px;
    background: @b;
    margin-top: 16px;
    border: solid 1px @e6;

    p {
	    position: relative;
	    padding-left: 25px;
	    margin-bottom: 0px;

	    i {
	    	position: absolute;
	    	top: 3px;
	    	left: 0px;
	    }
	}

	i {
		font-size: 1.2em;
		color: @rojo;
		position: relative;
		top: 1px;
		margin-right: 5px;
	}
}
.ocultar-inicio, .oculto, .oculta {
    display: none @i;
}
.relative {
    position: relative;
}
.mostrar {
	cursor: pointer;
}
.desktop {
	display: block;
	opacity: 1;
	visibility: visible;
}
.responsive {
	display: none;
	opacity: 0;
	visibility: hidden;
}
hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
    margin: 20px 0px;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}
.no-overflow {
	overflow-x: hidden @i;
}
.overflow-x {
	overflow-x: auto;
}
.jqstooltip {
    box-sizing: content-box;
}
#fila.registro-fila {
    display: none;
}
#tb-gastos {
	padding: 20px;
	width: 900px;
	max-width: 100%;

	h2 strong {
		float: right;
		padding-right: 15px;
		color: #F05050;
	}

	.form input {
		margin: 0px 5px;
	}

	.fila {
		border-bottom: 1px solid #333;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
}
#datos-gastos {
	margin: 30px 0;

	img {
		display: block;
		margin: auto;
	}

	input, textarea {
		border: 0px;
		margin-bottom: 15px;
	}
}
#fecha_gantt {
	width: 200px;
}
#bloque_stop_fecha {
    position: absolute;
}
#fecha_stop, #hora_stop {
    width: 140px @i;
}
#icono-actual {
	cursor: pointer;

	i {
		line-height: 24px;
		margin-right: 10px;
	}
}

// BOTONES / LISTAS
// ===================================================================================== 
.btn {
	font-size: 1em;
	font-weight: 500;
    color: @b;
    display: flex @i;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    flex: 1 0 60px;
    min-width: 60px;
    width: fit-content;
    height: 42px;
    border-radius: 5px;
    border: 1px solid transparent;
    background: transparent;
    padding: 0px 10px;
    box-shadow: none;
    .transition(@ef15);

    i {
		font-size: 1.2em;
		margin-right: 6px;
	}

	&.round {
		font-size: 0.9em;
		font-weight: 700;
		color: @b;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 auto;
		padding: 0px;
		min-width: auto;
		width: 28px;
		height: 28px;
		background-color: @g9;
		border: none;
		border-radius: 50%;		

		i {
			font-size: 1.1em;
			margin-right: 0px @i;
		}

		&.micro {
			width: 24px;
			min-width: 24px;
			height: 24px;
			position: relative;

			i {
				font-size: 0.8em;
				margin-right: 0px @i;
				position: absolute;
				top: 50%;
				left: 50%;
				.transform(translate(-50%, -50%));
			}
		}

		&.color {
			width: 17px;
			min-width: 17px;
			height: 17px;
		}

		&.color-xl {
			margin: 0px;
			width: 24px;
			min-width: 24px;
			height: 24px;
			border: solid 1px #a6a6a6;
		}
	}

	&.top-radius-0 {
		border-top-left-radius: 0px;
		border-top-right-radius: 0px;
	}

	&.bottom-radius-0 {
		border-bottom-left-radius: 0px;
		border-bottom-right-radius: 0px;
	}

	&.padding-0 {
		padding: 0px;
	}

	&.mini {
		font-size: 0.9em;
		font-weight: 500;
		height: 32px;
		min-width: 42px;
		padding: 0 8px;

		i {
			font-size: 1em;
			top: 0px;
			margin-right: 5px;
		}

		&.icon {
			min-width: 40px;
			height: 32px;

			i {
				font-size: 1.3em;
				margin-right: 0px;
				top: 0;
			}
		}
	}

	&.micro {
		font-size: 0.8em;
		font-weight: 400;
		height: 24px;
		min-width: 32px;

		i {
			font-size: 1.2em;
			margin-right: 5px;
			position: relative;
			top: -1px;			

			&.fa-exclamation-circle, &.fa-stop {
				top: 0px;
			}
		}

		&.icon {
			min-width: 32px;
			flex: 1 0 32px;

			i {
				font-size: 0.8em;
				margin-right: 0px;
				top: 0;
			}
		}
	}

	&.btn-extra-mini {
		display: inline-block;
	    float: right;
	    margin-right: 15px;
	    margin-left: 6px;
	    padding: 7px;
	    background: #367fa9;
	    color: #fff;
	    border-bottom: 1px solid #367fa9;
	    cursor: pointer;
	}

	&.w-100 {
		width: 100%;
	}

	&.icon {
		min-width: 60px;

		i {
			margin-right: 0px;
		}
	}

	&.outline {
		color: @g3 @i;
		background: @b @i;
		border-color: @g9 @i;

		&:hover {
			color: @b @i;
			background: @g6 @i;
			border-color: @g6 @i;
		}

		&.rojo {
			color: @rojo @i;
			background: @b @i;
			border-color: @rojo @i;

			&:hover {
				color: @b @i;
				background: @rojo @i;
				border-color: @rojo @i;
			}
		}
	}

	&.verde {
		color: @b @i;
	    background: @verde @i;
	    border-color: @verde @i;

	    &:hover {
	    	background: #00a775 @i;
	    	border-color: #00a775 @i;
	    }
	}

	&.rojo {
		color: @b @i;
	    background: @rojo @i;
	    border-color: @rojo @i;

	    &:hover {
	    	background: #d4320c @i;
	    	border-color: #d4320c @i;
	    }
	}

	&.amarillo {
		color: @b @i;
	    background: #f3b704 @i;
	    border-color: #f3b704 @i;

	    &:hover, &:focus, &:active, &.activo {
	    	color: @b @i;
	    	background: #e8af04 @i;
	    	border-color: #e8af04 @i;
	    }
	}	

	&.azul {
		color: @b @i;
		background: #00C0EF @i;
		border-color: #00C0EF @i;

		&:hover {
		    background: #009dc3 @i;
		    border-color: #009dc3 @i;
		}
	}

	&.morado {
		color: @b @i;
		background: #8e44ad @i;
		border-color: #8e44ad @i;

	    &:hover {
	    	background: #9b59b6 @i;
	    	border-color: #9b59b6 @i;
	    }
	}
	
	&.blanco {
		color: @g3 @i;
		background: @b @i;
		border-color: @b @i;

		&:hover {
			color: @b @i;
			background: @g6 @i;
			border-color: @g6 @i;
		}
	}

	&.corporativo {
		color: @b @i;
		background: @corporativo @i;
		border-color: @corporativo @i;

		&:hover {
			color: @b @i;
			background: @g3 @i;
			border-color: @g3 @i;
		}
	}			

	&.transparente {
		color: #444444 @i;
		background: @t @i;
		border-color: @t @i;

		&:hover {
			color: @n @i;
			background: @t @i;
			border-color: @t @i;
		}
	}

	&.g {
		color: @g3 @i;
		background: #dddddd @i;
		border-color: #bbbbbb @i;

		&:hover {
			color: @b @i;
			background: @g3 @i;
			border-color: @g3 @i;
		}
	}

	&.g3 {
		color: @b @i;
		background: @g3 @i;
		border-color: @g3 @i;

		&:hover {
			color: @b @i;
			background: @n @i;
			border-color: @n @i;
		}
	}

	&.g6 {
		color: @b @i;
		background: @g6 @i;
		border-color: @g6 @i;

		&:hover {
			color: @b @i;
			background: @g3 @i;
			border-color: @g3 @i;
		}
	}

	&.g9 {
		color: @b @i;
		background: @g9 @i;
		border-color: @g9 @i;

		&:hover {
			color: @b @i;
			background: @g3 @i;
			border-color: @g3 @i;
		}
	}

	&.e6 {
		color: @g3 @i;
		background: @e6 @i;
		border-color: @d4 @i;

		&:hover {
			color: @n @i;
			background: #d6d6d6 @i;
			border-color: #d6d6d6 @i;
		}
	}

	&.animated {
		min-width: 32px;
	    width: 32px;
	    overflow: hidden;
	    justify-content: flex-start;
	    border-radius: 16px;
	    .transition(@ef15);

	    i {
	    	font-size: 1.2em;
	    	margin-right: 7px;
	    }

	    &:hover {
	    	width: 132px;

	    	i {
	    		font-size: 1em;
	    	}
	    }
	}

	&.oculto {
		display: none @i;
	}

	&:hover, &:focus, &:active, &.activo {
		color: @b;
		border-color: @g3;
		background: @g3;
		outline: none;
		box-shadow: none;
	}
}
input[type="color"] {
	padding: 0px;
	background-color: transparent;
	border: none;
    width: 30px;
    cursor: pointer;
    
	&:hover {
		background-color: transparent;	
	}
}
.toggle {
	position: relative;
	display: block;
	width: 40px;
	height: 20px;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transform: translate3d(0,0,0);
	margin: 0px;

	&:before {
		content: "";
		position: relative;
		top: 50%;
		left: 3px;
		width: 34px;
		height: 14px;
		display: block;
		background: #9A9999;
		border-radius: 8px;
		transition: background .2s ease;
		transform: translateY(-50%);
	}

	span {
		position: absolute;
		top: 50%;
		left: 0;
		width: 20px;
		height: 20px;
		display: block;
		background: @g3;
		border-radius: 10px;
		box-shadow: 0 3px 8px rgba(154,153,153,.5);
		transition: all .2s ease;
		transform: translateY(-50%);

		&:before {
			content: "";
			position: absolute;
			display: block;
			margin: -18px;
			width: 56px;
			height: 56px;
			background: rgba(244,124,0,.5);
			border-radius: 50%;
			transform: scale(0);
			opacity: 1;
			pointer-events: none;
		}
	}
}
.check-button {
	display: none;
}
.check-button:checked + .toggle {
	&:before {
		background: #00C0EF66;
	}

	span {
		background: #00C0EF;
		transform: translate(20px,-50%);
		transition: all .2s cubic-bezier(.8,.4,.3,1.25), background .15s ease;
		box-shadow: 0 3px 8px rgba(40,167,69,.2);

		&:before {
			transform: scale(1);
			opacity: 0;
			transition: all .4s ease;
			background: rgba(40,167,69,0.5);
		}
	}
}
ul {
	list-style-type: none;
	margin: 0px;
	padding: 0px;
}
ul.timeline {
	width: 100%;
	margin: 0px;
	padding: 0px;
	list-style: none;
	position: relative;

	&:before {
		content: '';
		position: absolute;
		top: 20px;
		bottom: 0px;
		width: 2px;
		background: #e0e0e0;
		left: 24px;
		margin: 0;
		border-radius: 2px;
	}

	> li {
		position: relative;
		margin-bottom: 10px;

		&:last-child {
			margin-bottom: 0px;
		}

		&.time-label {
			margin-top: 20px;

			&:first-of-type {
				margin-top: 0px;
			}

			> span {
				color: @g3;
				font-weight: 600;
				padding: 5px 10px;
				display: inline-block;
				/*background: @e6;*/
				background: @b;
				border: solid 1px @d4;
				border-radius: 5px;
				.box-shadow(0 0 0 4px @b);
			}
		}

		&.event {
			> .timeline-item {
				margin-bottom: 15px;
			    margin-left: 50px;
			    padding: 15px;
			    position: relative;
			    border: solid 1px #e0e0e0;
			    border-radius: 5px;
			    background: @b;

				.timeline-header {
					font-size: 1em;
					color: @g3;
					line-height: 20px;
					margin-bottom: 5px;

					a {
						font-weight: 600;

						img {
							width: 20px;
							position: relative;
							top: -2px;
						}
					}			
				}

				.timeline-body {
					padding-left: 24px;
					position: relative;

					&.activo {
						font-size: 120%;
					}

					&::before {
						content: '\f4ae';
						font-family: @fa;
						font-weight: 400;
						position: absolute;
						top: 0px;
						left: 2px;
					}

					p {
						margin-bottom: 5px;
					}

					ul, ol {
						list-style-type: initial;
						margin-left: 15px;
					}
				}

				.timeline-info {
					> li {
						&:first-of-type {
							i {
								margin: 0 2px;
							}

							span {
								font-weight: 600;
							}
						}

						&:last-of-type {
							a {
								opacity: 0.8;
								.transition(@ef15);

								&:hover {
									opacity: 1;
								}
							}
						}
					}
				}
			}

			> .tags {
				position: absolute;
				width: 50px;
				display: flex;
				flex-flow: column wrap;
				align-items: center;

				i {
					font-size: 0.8em;
					line-height: 26px;
					color: @g6;
					text-align: center;	
					width: 26px;
					height: 26px;
					background: @ef;
					border-radius: 50%;
					margin: 4px 0px 6px;
					.box-shadow(0 0 0 4px @b);

					&.logo-importante {
						font-size: 1.6em;
						color: @rojo;
						background: @b;
					}
				}
			}
		}
	}
}
.note-editable {
	-webkit-user-select: initial;
	user-select: initial;
	
	ul, ol {
		list-style-type: initial;
		margin-left: 15px;
	}
}
.flex-row {
	display: inline-flex;
	flex-flow: row wrap;
	align-items: flex-start;
	padding: 0px;
	margin-bottom: 15px;

	&.left {
		justify-content: flex-start;
		float: none;
	}

	&.right {
		justify-content: flex-end;
		float: none;
	}

	> li {
		margin-bottom: 15px;
	}

	.flex-row {
		margin-bottom: 0px;

		> li {
			margin-bottom: 5px;
		}
	}

	h1, h2, h3, h4, h5, h6 {
		margin-bottom: 0px;
	}

	&.li-mb-0 {
		> li {
			margin-bottom: 0px;
		}
	}

	&.li-mb-5 {
		> li {
			margin-bottom: 5px;
		}
	}

	&.li-mb-10 {
		> li {
			margin-bottom: 10px;
		}
	}

	&.nowrap {
		flex-wrap: nowrap;
	}

	&.width-100 {
		width: 100%;
	}

	&.border {
		border: 1px solid @d4 @i;
	}

	&.li-spacing {
		margin-left: -5px;
		margin-right: -5px;

		> li {
			padding-left: 5px;
			padding-right: 5px;
		}
	}

	&.li-spacing-md {
		margin-left: -10px;
		margin-right: -10px;

		> li {
			padding-left: 10px;
			padding-right: 10px;
		}
	}

	&.li-spacing-xl {
		margin-left: -15px;
		margin-right: -15px;

		> li {
			padding-left: 15px;
			padding-right: 15px;
		}
	}

	&.space-between {
		display: flex;
		justify-content: space-between;
	}

	&.last-right {
		display: flex;

		> div, > li, > span {
			&:last-of-type {
				margin-left: auto;
			}
		}
	}

	&.ml-auto {
		margin-left: auto;
	}

	&.va-start {
		align-items: flex-start;
	}

	&.va-center {
		align-items: center;

		label, input, select {
			margin-bottom: 0px;
		}
	}

	&.va-end {
		align-items: flex-end;
	}

	&.rotate {
		.fa-chevron-down.r-180 {
			.transform(rotate(180deg));
		}
	}

	&.btn-list {
		border-radius: 5px;

		> li {
			border-left: solid 1px @b;
			margin-bottom: 0px;

			.btn {
				color: @g3;
				font-weight: 500;
				height: 30px;
				cursor: pointer;
				border: none;
				border-radius: 0px;
				background: @b;

				&:hover, &.activo, &.active, &.selected {
					color: @n;
					background: @e6;
					box-shadow: none;
				}

				&.mini.icon {
					&.activo {
						i {
							font-weight: 900;
						}
					}
				}
			}

			input {
				border-radius: 0px;
				margin: 0px;
			}

			&:first-child {
				border-left: none;

				.btn, input {
					border-top-left-radius: 4px;
					border-bottom-left-radius: 4px;
					
				}
			}

			&:last-child {
				.btn, input {
					border-top-right-radius: 4px;
					border-bottom-right-radius: 4px;
					
				}
			}
		}

		&.controles_paginacion {
			background: #ececec;

			> li {
				.btn {
					color: @g6;
					width: 36px;
					background: @b @i;

					&:hover {
						color: @b @i;
						background: @g6 @i;
					}

					&.micro.icon i {
						font-size: 1em;

						&.fa-caret-left, &.fa-caret-right {
							font-size: 1.5em;
						}
					}
				}
			}
		}

		&.bg {
			> li {
				border-color: @d4;

				.btn {
					&:hover, &.activo, &.active, &.selected {
						background: @e6;
					}
				}
			}
		}

		&.border {
			> li {
				border-color: @d4;
			}
		}
	}

	&.seleccion {
		background: @b;
		border-radius: 5px;
		flex-wrap: nowrap;

		&.bg {
			background: @ef;
		}

		&.border {
			position: relative;
			border: none @i;

			&::before {
				content: '';
				display: block;
				border-radius: 5px;
				border: 1px solid @d4 @i;
				position: absolute;
			    top: 0;
			    right: 0;
			    bottom: 0;
			    left: 0;
			}
		}

		&.txt-right {
			justify-content: flex-end;
		}

		> li {
			padding: 0px;
			margin-bottom: 0px;

			label, span, input, select {
				height: 32px;
				margin: 0px 5px;
				display: inline;
			}

			label, input, select {
				border: none @i;
				min-width: initial @i;				
			}

			input {
				margin-bottom: 0px;
				padding: 0 5px;
				width: 95px;
				text-align: center;
				background: transparent;
				position: relative;
				z-index: 1;

				&.criterio {
					width: 215px;
					text-align: left;
					margin: 0px;
					padding: 0 10px;
				    overflow: hidden;
				    text-overflow: ellipsis;
				    display: block;

				}
			}

			img {
				width: 34px;
				height: 34px;
				margin: 0px 10px;
			}

			> i {
				position: relative;
				top: 1px;
			}		

			&:last-child {
				.btn {
					display: inline-block;
					margin-left: 0px;
					margin-right: 0px;

					&.mini {
						border-top-left-radius: 0px;
						border-bottom-left-radius: 0px;
						border-top-right-radius: 5px;
						border-bottom-right-radius: 5px;

						&.icon {
							position: relative;
							color: @g6;
							border-left: solid 1px @d4;

							&:hover, &:focus, &:active {
								background-color: @e6;
								border-color: @d4;
							}

							i {
								position: absolute;
								top: 5px;
								left: 20px;
								width: 20px;
								height: 20px;
								text-align: center;
								line-height: 20px;

								&.cargando {
									-webkit-transform: rotate(360deg);
								    -webkit-transition-delay: 0s;
								    -webkit-animation-timing-function: linear;
								    -webkit-animation-iteration-count: infinite;
								    -moz-transform: rotate(360deg);
								    -moz-transition-duration: 1.5s;
								    -moz-transition-delay: 0s;
								    -moz-animation-timing-function: linear;
								    -moz-animation-iteration-count: infinite;
								    transform: rotate(360deg);
								    transition-delay: 0s;
								    animation-timing-function: linear;
								    animation-iteration-count: infinite;
								}
							}

							&.buscar {
								&::before {
									content: '\f002';
									font-family: @fa;
									font-size: 17px;
									line-height: 20px;
									position: absolute;
									width: 20px;
									height: 20px;
									top: calc(~'50% - 10px');
									left: calc(~'50% - 10px');
								}								

								&.cargando_tabla_ajax::before {
									content: '\f2f1';
									-webkit-transform: rotate(360deg);
								    -webkit-transition-duration: 1s;
								    -webkit-transition-delay: now;
								    -webkit-animation-timing-function: linear;
								    -webkit-animation-iteration-count: infinite;
								}
							}
						}
					}
				}
			}
		}
	}

	&.controles_pagina, &.cerrar-registro {
		> li {
			margin-bottom: 0px;
		}
	}

	&.edicion-fecha-hora {
		input {
			text-align: center;
			width: 98px;
			height: 32px;
			margin-bottom: 0px;
			background: @b;
		}
	}

	&.seleccion-fecha {
		position: relative;

		i {
			margin: 0px;
		}

		i, span {
			cursor: pointer;
		}

		#fecha-seleccion {
		    font-weight: 700;
		    margin: 0 5px;
		}

		#fecha-input {
		    position: absolute;
		    left: 16px;
		    z-index: 2;
		    border: 0px;
		    width: 74px;
		    height: 30px;
		    opacity: 0;
		    margin: 0px;
		    padding: 0px;
		    cursor: pointer;
		}

		#fecha-hoy {
			padding-top: 1px;
			padding-left: 10px;

			i span {
				font-family: 'Roboto';
				font-weight: 500;
				font-size: 0.9em;
				margin-left: 3px;
			}
		}
	}

	&.timeline-info {
		> li {
			margin-bottom: 0px;
		}
	}

	&.column {
		flex-direction: column @i;

		&.start {
			align-items: flex-start @i;
		}
	}
}
.flex-column {
	margin-bottom: 15px;

	&.li-spacing {
		margin-top: -5px;

		> li {
			padding-top: 5px;
			padding-bottom: 5px;
		}
	}

	&.li-spacing-md {
		margin-top: -10px;

		> li {
			padding-top: 10px;
			padding-bottom: 10px;
		}
	}

	&.li-spacing-xl {
		margin-top: -15px;

		> li {
			padding-top: 15px;
			padding-bottom: 15px;
		}
	}

	> li ul {
		margin-bottom: 0px;
	}
}

// ESTRUCTURAS
// =====================================================================================
.box {
	margin-bottom: 15px;
	padding: 20px;
	width: 100%;
	overflow: hidden;
	background: @b;
	position: relative;
	border-radius: 5px;
	border: solid 1px @e6;

	.box-header {
		margin-bottom: 25px;

		h1, h2, h3, h4, h5, h6 {
			line-height: 32px;
			margin-bottom: 0px;
		}

		h3 {
		    i {
		    	font-size: 21px;
		    	margin-right: 10px;
		    	position: relative;
		    	top: -1px;
		    }
		}

		> .box-tools {			
		    margin-left: auto;
		    width: 18px;
		    height: 18px;

		    button {
		    	font-size: 24px;
		    	line-height: 20px;
		    	width: 20px;
		    	padding: 0px;
		    	border: none;
			    background: none;
			    cursor: pointer;

			    &:hover, &:focus, &:active {
			    	box-shadow: none;
			    	outline: none;
			    }
		    }
		}
	}

	.box-body {
		.box-inner {
			margin-top: 25px;
		}

		.wrapper_tabla .criterio {
			margin-left: 0px;
		}

		/*
		.box-timeline {
			border: none;
			background: @t;
			padding: 10px 0px;

			ul.timeline {
				> li {
					&.time-label > span {
						background-color: @e6;
					}

					&.event > .timeline-item {
						background: #f5f5f5;
					}
				}
			}
		}
		*/
	}

	.box-footer {
		padding: 25px 0px 0px;
	}

	.inner-box {
		padding: 16px;	 
		margin-bottom: 16px;  
	    border: solid 1px #e0e0e0;
	    border-radius: 5px;
	    position: relative;
	    overflow: hidden;

	    &.tabs.nav-tabs-custom {
	    	.box-header {
		    	.nav-tabs li a {
		    		&.active, &:active, &:hover, &:focus {
		    			background: @ef;
		    		}
		    	}
		    }
	    }

	    .flex-row {
	    	&.btn-list > li .btn {
			    background: @b;

			    &:hover, &.activo, &.active, &.selected {
			    	background: @g6;
			    }
			}

			&.seleccion.bg {
				background: @b;
			}
		}

	    input, textarea, select {
	    	background: @b;
	    }

	    input[type="file"] {
	    	background: @t;
	    }

	    table {
	    	tr {
	    		background: @t;

		    	&.filaimpar {
				    background: #fff;
				}
			}

			tbody tr:nth-child(odd) {
				background: @b;
			}
		}

		&#calendario {
			background: @g1;

			table:not(.fc-header) {
				tr {
					background: @b;
				}
			}
		}		
	}

	&.transparent {
		background-color: @t;
		.box-shadow(none);
	}

	&.lista_recursos {
		margin-bottom: 0px;
	}

	&:not(.no-padding) table.table {
		.box-shadow(none);
	}

	&.detalle {
		ul.flex-row > li > ul.flex-row.li-spacing > li {
			padding-left: 0px;
			padding-right: 0px;

			button {
				margin-left: 5px;
				margin-right: 5px;
			}
		}
	}

	&.tabs {
		padding: 0px 15px 20px;
	}

	&.info-panel {
		border-width: 2px;

		h2 {
			font-size: 3.2rem;
			font-weight: 500;
			line-height: 0.8;
			color: @b;
			margin-bottom: 5px;
		}

		p {
			font-weight: 500;
		}

		> i {
			font-size: 2rem;
			position: absolute;
			top: 20px;
			right: 20px;
		}
	}
}
.box-timeline {
	width: 100%;
	/*box-shadow: none;*/
	/*background: #f9f9f9;*/
	/*border: 1px solid #e2e2e2;*/
	/*margin: 0px;*/
	/*padding: 30px 20px;*/
	/*position: relative;*/
	/*border-radius: 5px;*/
}
.tabs {
	> .box-header {
		color: @b;
		padding-bottom: 0px;			
		margin: 0px -15px 30px;
		background: @e6;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;

		h2, h3 {
			line-height: 1;
			margin-right: auto;
			padding: 10px 15px;
		}
	}

	.nav-tabs {
		border: none;

		li {
			a {
				font-weight: 500;
				letter-spacing: 0.1px;				
				display: block;
				padding: 10px 15px;
				background: @e6;

				&.active, &:active, &:hover, &:focus {
					color: @n;
					background: @b;
				}
			}

			&.active, &:active, &:hover, &:focus {
				a {
					color: @n;
					background: @b;
				}
			}

			&:first-child {
				border: none;
			}

			&:last-child {
				a {
					border-top-right-radius: 5px;
				}
			}
		}
	}

	> .tab-content {
		background: #fff;

		> .tab-pane.chart {
			height: 300px;
		}
	}

	&.inner-box {
		> .box-header {
			margin: -16px -16px 30px;
		}
	}
}
.small-box {
	margin-bottom: 15px;
	background: @b;
	border-radius: 5px;

	> .inner {
		padding: 15px;

		a {
			display: block;
		    padding: 0px;
			margin: 0 0 20px 0;
			white-space: nowrap;
		}

		p {
			font-size: 15px;
			z-index: 5;

			> small {
				display: block;
				color: #f9f9f9;
				font-size: 13px;
				margin-top: 5px;
			}
		}

		.icon {
			font-size: 90px;
			color: rgba(0, 0, 0, 0.15);
			position: absolute;
			top: auto;
			bottom: 5px;
			right: 5px;
			z-index: 0;
		}

		&:after {
			content: '';
			display: block;
			width: 50px;
			height: 50px;
		    background-position: center;
		    background-repeat: no-repeat;
		    background-size: contain;
		    position: absolute;
		    top: 20px;
		    right: 20px;
		    transform: rotate(20deg);
		    transition: all 0.3s ease-out;
		}
	}

	> .small-box-footer {
		font-size: 14px;
		color: @b;
		font-weight: 500;
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 36px;
		padding: 0px 10px;
		background: @g6;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;

		&:hover {
			background: @g3;
		}

		i {
			font-size: 16px;
			margin-right: 5px;
			position: relative;
			top: 1px;
		}
	}

	&.panelexcel .inner:after{
		background-image: url('../../gestor/modulos/proyectos/style/img/excel.svg');	
	}

	&.panelinforme .inner:after{
		background-image: url('../../gestor/modulos/proyectos/style/img/pdf.svg');	
	}

	&:hover {
		text-decoration: none;
		color: #f9f9f9;

		> .inner {
			h3 {
				color: @b;
			}

			.icon {
				animation-name: tansformAnimation;
				animation-duration: .5s;
				animation-iteration-count: 1;
				animation-timing-function: ease;
				animation-fill-mode: forwards;
				-webkit-animation-name: tansformAnimation;
				-webkit-animation-duration: .5s;
				-webkit-animation-iteration-count: 1;
				-webkit-animation-timing-function: ease;
				-webkit-animation-fill-mode: forwards;
				-moz-animation-name: tansformAnimation;
				-moz-animation-duration: .5s;
				-moz-animation-iteration-count: 1;
				-moz-animation-timing-function: ease;
				-moz-animation-fill-mode: forwards;
			}

			&:after {
				width: 56px;
				height: 56px;
				transform: rotate(0deg);
			}
		}
	}
}

// TABLAS
// =====================================================================================
table {
	line-height: 1rem;
	width: 100%;
	margin-bottom: 0px;	

	tr {
		th {
			font-weight: 600;
			white-space: nowrap;
		}

		td {
			&.loader {
		    	text-align: center;
		    	vertical-align: middle;
		    	width: 58px;
		    	padding: 0px 12px;	    	

		    	img {
		    		width: 34px;
		    		height: 34px;
		    	}

		    	i {
		    		font-size: 20px;
		    		margin-right: 0px;
		    	}
		    }

		    &.alerta {
		    	color: @rojo;

		    	i {
		    		font-size: 15px;
		    		margin-right: 0px @i;
		    	}
		    }

		    .progress {
		    	margin: 0;
			}
	    }
	}

	tbody {
		tr {
			border-top: solid 1px @e6;
		}
	}

	&.table {
		margin-bottom: 15px;
		border-radius: 5px;
		.box-shadow(0px 1px 3px rgba(0, 0, 0, 0.1));

		thead {
			tr {
				background-color: @b;

				th {
					padding: 4px 12px;
					vertical-align: middle;
					border: none;
					white-space: nowrap;
					.transition(@ef15);

					a {
						color: @n;
					}
				}
			}
		}

		tbody {
			line-height: 1.1em;

			tr {
				background-color: @b;
				
				&.marcado {
					background-color: @e6;
					.transition(@ef15);
				}

				&.transparent {
					background-color: @t;

					&:hover {
						background-color: @t;
					}
				}

				th, td {
					padding: 10px 12px;
					vertical-align: middle;
					border: none;
					.transition(@ef15);
				}

				td {
					&.accion {
						a {
							cursor: pointer;
							display: block;							
							white-space: nowrap;							
							overflow: hidden;
							text-overflow: ellipsis;

							i {
								color: @g6;
								width: 20px;
								text-align: center;
								.transition(@ef15);
								margin-right: 10px;
							}
							
							&:hover, &:focus, &:active {
								i {
									color: @n;
								}
							}
						}
					}

					&.delete-accion {
						font-size: 20px;
						text-align: right;
						cursor: pointer;

						i {
							margin-right: 0px;
				    	}
				    }

				    &.enlace, &.guardar {
						width: 44px;

						&:hover {
							color: @n;
							cursor: pointer;
						}
					}

					&.guardar, &.delete-accion, &.delete-proyecto, &.ver-proyecto, &.estado-proyecto, &.aviso-proyecto {
						width: 36px;
						vertical-align: top;
						text-align: center;
					}

					&.delete-accion, &.delete-proyecto {
						a {
							font-size: 20px;
							line-height: 20px;
							cursor: pointer ;
						}
					}

					&.fila-separador {
					    height: 10px;
					    padding: 0px;
					    background-color: #eaeaea;
					    position: relative;

					    &::after {
						    display: block;
						    content: '';
						    height: 3px;
						    background: @g6;
						    position: absolute;
						    bottom: 0;
						    left: 0;
						    right: 0;
						    border-top-left-radius: 5px;
						    border-top-right-radius: 5px;
						}
					}

					&.fila-separador-fino {
						padding: 1px 0 0;
						background: @g9;
					}

					&.estrecho {
						width: 25px @i;
						padding: 5px 0px @i;

						i {
							text-align:center;
							margin-right: 0px @i;
							padding-left: 10px;
						}
					}

					&.tarea {
						max-width: 150px;
						padding: 10px 12px 10px 34px;
					    white-space: nowrap;				    
					    vertical-align: top;
					    overflow: hidden;
					    text-overflow: ellipsis;
					    position: relative;

					    a {
					    	cursor: pointer;
					    	position: absolute;
					    	left: 10px;

					    	i {
					    		font-size: 16px;
					    		line-height: 20px;
					    		position: relative;
					    		top: -3px;
					    	}
					    }
					}

					&.contenido_gantt {
						&:hover {
						    background-color: @b @i;
						}
					}

					#centrar {
					    position: absolute;
					    right: 5px;
					    text-align: center;
					    border: none;
					    color: #72afd2;
					}

					.proyecto {
						white-space: nowrap;
					  	overflow: hidden;
						text-overflow: ellipsis @i;
						position: relative @i;
						left: 0px @i;
					}

					.btn i {
						margin-right: 7px;
					}

					select {
						display: block;
						width: 100%;
						margin-top: 8px;
						margin-bottom: 0px;
						background: @b;
					}

					img {
						margin-right: 10px;
					}
				}
			}

			&.modificado {
				tr {
					border: none;
				}
			}
		}

		&.border-bottom {
			tr {
				border-bottom: 1px solid #dee2e6;
			}
		}
	}

	&.table-hover {
		thead {
			tr:hover {
				background-color: transparent;
			}
		}

		tr {
			.transition(@ef15);

			&:hover, &:focus, &:active {
				background-color: @e6;
			}			

			&.no-hover {
				&:hover, &:focus, &:active {
					background-color: @b;				
				}

				&.transparent {
					&:hover, &:focus, &:active {
						background-color: @t;				
					}
				}
			}

			a, span {
				.transition(@ef15);
			}
		}
	}

	&.estrecha {
		th, td {
			padding: 7px 12px;
		}
	}

	&.gantt {
		thead {
		    z-index: 3;

		    tr {
				&:last-child {
					border-top: 1px solid @e6;
				}

				th {
					font-size: 0.94em;
					padding: 11px 12px;

					&.horas {
						padding: 0px @i;
					    display: flex;
					    flex-flow: row wrap;
					    border-top: solid 1px @e6;

					    span {
					    	font-size: 0.9em;
					    	overflow: hidden;
						    white-space: nowrap;
						    text-overflow: ellipsis;
						    border-left: 1px solid #dee2e6;
						    padding: 3px 0 0 5px;						    
						    height: 25px;
						    position: relative;

						    &:first-of-type {
						    	border-left: none;	
						    }

						    &#centrar {
							    color: @g3;
							    cursor: pointer;
							    border: none;
							    padding: 0px;							    
							    display: flex;
							    width: 100%;
							    height: 37px;
							    justify-content: center;
							    align-items: center;
							    position: absolute;
							    top: 0px;
							    z-index: 1;

							    i {
							    	margin-right: 5px;
							    }					    

							    &:hover {
							    	color: @n;
							    }
						    }
						}
					}

					#mostrar-fechas {
						position: relative;
						z-index: 10;
					}
				}
		    }
		}

		tbody {
			tr {
				td {
					position: relative;
					padding: 0px @i;
					vertical-align: middle;
					width: 100%;

					&:first-child {
						padding: 10px 12px @i;
					}					

					&.ajustar {
						width: 15%;
					}

					&.fila {
					    display: flex;
					    flex-flow: row wrap;
					    justify-content: flex-end;
					    align-items: center;
					    padding: 10px 12px @i;

						a.registro {
						    height: 100%;
						    border-left: 1px solid #E6E6E6;
						    opacity: 0.5;
						    z-index: 2;
						    position: absolute;
						    top: 0;
						}
					}

					.accion {
						display: inline-block;
						opacity: 0.6;
					}

					.total {
						display: inline-block;
					    position: absolute;
					    top: 14px;
					    right: 0;
					    color: #A7A7A7;
					    margin-left: 0px;
					    margin-right: 15px;
					    vertical-align: -webkit-baseline-middle;
					}
				}

				&.marcar {
					td.grafico {
						padding: 0px @i;
					}
				}
			}
		}

		.cabecera_gantt {
	    	border-left: solid 1px #c8c8c8;
	    }
	}

	&.tareas {
		tr {
			height: 40px;
		}

		thead {
			tr th {
				&#progresion {
					padding: 10px 0px;
					position: relative;

					.intervalo {
						position: absolute;
						top: 0px;
						height: 100%;
						vertical-align: middle;
						border-left: 1px solid #dddddd;
						padding: 12px;
					}
				}
			}
		}

		tbody {
			tr {
				border-top: 1px solid #dddddd;

				&:last-of-type {
					border-bottom: 1px solid #dddddd;
				}

				td {
					&.nb-tarea {
						max-width: 300px;
						padding-right: 40px;
						white-space: nowrap;
						overflow: hidden;
						text-overflow: ellipsis;
						vertical-align: middle @i;
						border-right: 1px solid #dddddd;
						position: relative;
						
						> i {
							padding-left: 0px;
							opacity: 0.6;
							font-size: 14px;

							&:hover {
								opacity: 1;
								color: @g3;
							}

							&.fa-user::before {
								position: relative;
								left: 3px;
							}
						}

						> i, > .i, a:not(.nb-tarea) {
							width: 24px;
							display: inline-block;
						}						

						.info {
							position: absolute;
							top: 0;
							right: 2px;
							bottom: 0;
							z-index: 10;							

							&.stats {
								cursor: pointer;
								opacity: 0;
								visibility: hidden;
								background: rgba(255,255,255,0.9);
								padding-right: 2px;
								right: 0px;
								width: 100%;
								.transition(@ef15);

								&.active {
									opacity: 1;
									visibility: visible;
								}

								span {
									font-size: 12px;
									line-height: 12px;
									font-weight: 500;
									text-align: right;
									display: block;
									padding-top: 1px;

								    i {
								    	font-size: 10px;
								    	color: @g3;
								    	margin-left: 3px;
								    	width: 12px;
								    	text-align: left;
								    }
								}

								a.close {
									position: absolute;
									left: 9px;
									top: 0;
									bottom: 0;
									opacity: 1;

									i {
										font-size: 20px;
										line-height: 39px;
										color: @n;
									}
								}
							}

							&.resumen {
								cursor: pointer;
								right: 12px;
								top: 50%;
								.transform(translateY(-50%));
								display: block;
								height: 14px;

								i:hover {
									color: inherit;
								}
							}
						}
					}

					&.grafica {
						width: 100%;
						position: relative;
						padding: 0px;

						.reg-tarea {
							display: block;
							background-color: #00C0EF;
							position: absolute;
							bottom:0px;
							z-index: 99;

							&.resto {
								background-color:#EF005B;
							}
						}
					}
				}
			}
		}

		.completado {
		    font-size: 14px;
		    font-weight: 700;		    
		}

		.fecha {
		    color: rgb(52, 120, 240);
		}

		.completado .input {
		    border: none @i;
		    background-color: inherit;
		}
	}

	&.mostrar-tareas {
		margin-top: 30px;

		thead tr th, tbody tr td {
			border-left: solid 1px #dddddd;

			&:first-of-type {
				border: none;
				width: 300px;
			}
		}

		tbody tr {
			border-top: solid 1px #dddddd;

			&:last-of-type {
				border-bottom: 1px solid #dddddd;
			}

			td i {
				opacity: 0.6;
				font-size: 14px;
				width: 24px;

				&:hover {
					opacity: 1;
					color: #00C0EF;
				}
			}
		}
	}

	&.table-equal {
	    table-layout: fixed;
	}

	&.table-nowrap {
		white-space: nowrap;
	}

	&.table-no-overflow {
		overflow: hidden;
	}

	&.table-responsive {
		display: table;
	}

	&.fc-header {
		tr {
			border-top: none;
		}
	}

	&.modificado, &.tabla_datos {
		thead tr {
			border: none;

			th {
				border: none;

				h6 {
					font-size: 1em;
					color: @g3;
					font-weight: 600;
					margin-bottom: 0px;
					cursor: pointer;					
					.transition(@ef15);

					span {
						text-transform: capitalize;
						white-space: nowrap;
						padding-left: 15px;
						position: relative;

						&::before {
							content: '';
							font-family: @fa;
							position: absolute;
							left: 0;
						}
					}

					&:hover {
						color: @n;
					}
				}

				&.asc h6 span::before {
					content: '\f0de';
				}

				&.desc h6 span::before {
					content: '\f0dd';
				}

				&.cabecera {
					h6 span {
						padding-left: 0px;
					}
				}
			}
		}

		tbody tr {
			.transition(@ef15);

			&:hover {
				background-color: @f5;
			}

			&:nth-child(odd) {
				input {
					background: @b;
				}
			}
		}

		tr {
			th {
				vertical-align: top;
				border-top: 1px solid #ddd;
				white-space: nowrap;
			}
			
			th, td {
			    /*padding: 5px 8px @i;*/
			    padding: 7px @i;

			    a {
				    color: inherit;
				    /*white-space: nowrap;*/
				}
			}

			td {
				input {
					margin-bottom: 0px;
				}

				i {
					margin-right: 7px;

					/*&.fa-check {
						color: @verde;
					}*/

					&[class*="fa-check"] {
						color: @verde;
					}

					&.fa-times {
						color: @rojo;
					}
				}

				.btn.round.micro {
					margin: 0px;
				}
			}
		}		
	}

	&.table-acciones, &.table-proyectos, &.gantt {
		tr {
			position: relative;

			&::after {
				content: '';
				display: block;
				height: 1px;
				position: absolute;
				left: 0;
				right: 0;
				bottom: 0;
				background-color: #dee2e6;
			}
		}

		tbody {
			tr {
				&:last-child {
					border-bottom: none;
				}
			}
		}
	}

	&.table-acciones {
		width: 100%;

		tr {
			th, td {
				width: 100%;
			}
		}
	}

	&.no-border {
		tbody {
			tr {
				border: none;

				td {
					vertical-align: top;

					&:first-of-type {
						white-space: nowrap;
					}
				}
			}
		}
	}

	&.no-padding-lr {
		tbody {
			tr {
				td {
					&:first-of-type {
						padding-left: 0px;
					}

					&:last-of-type {
						padding-right: 0px;
					}
				}
			}
		}
	}
}
.table-responsive {
	display: block;
	width: calc(~'100% + 8px');
	padding-right: 10px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	-ms-overflow-style: -ms-autohiding-scrollbar;
}
.table-embed {
	overflow-x: scroll;

	table td {
		min-width: 60px;
		border: 1px solid #c4c4c4;

		input{
			margin-bottom: 0px;
			background: transparent;
		}
	}

	tr td:first-child{
		min-width: 20px;
	}
}
.tpv {
	ul {
		&.opciones {
			margin: 0 -10px;
			align-items: center;

			li {
				&:last-child {
				    margin-left: auto;
				}

				&.menu-boton {
					display: none;
				    position: absolute;
				    top: 1px;
				    right: 0px;
				    font-size: 20px;
				}

				&.crono {
					font-size: 18px;
					padding: 0 10px;
					display: flex;
					flex-flow: row wrap;
					align-items: center;

					i {
						font-size: 22px;
						margin-left: 10px;
					}

					img {
						width: 34px;
						margin-left: 10px;
					}
				}

				form {
					display: none;
					margin-bottom: 30px;

					input {
						display: block;
					    width: 100%;
					    padding: 5px 10px;
					    margin-bottom: 0px;
					    font-size: 16px;
					}
				}
			}

			&.autoaccion {
				li.boton {
					padding: 0 10px;
				}
			}

			&:after {
				content: '';
				display: block;
				clear: both;
			}

			#mostrar-cierre {
				line-height: 28px;
				width: 20px;			    
			    border-bottom-right-radius: 5px;
			    border-top-right-radius: 5px;
			    background: @g3;
			    cursor: pointer;
			    position: relative;

			    &::before {
			    	content: '';
			    	display: block;
			    	position: absolute;
			    	width: 3px;
			    	left: -3px;
			    	top: 0;
			    	bottom: 0;
			    	background-color: @g3;
			    }

			    i {
			    	color: @b;
			    	line-height: 36px;
			    	position: relative;
			    	left: 3px;
			    }
			}
		}

		ul {
			margin: 0px;
		}
	}

	.listado {
	    display: none;
	    margin-top: 0px;

	    ul {
	    	display: flex;
		    flex-flow: row wrap;
		    padding: 0px;
		    margin: 0 -10px;

	    	li.boton {
	    		white-space: nowrap;
	    		margin: 10px;
	    		display: flex;
	    		width: calc(~'25% - 20px');
				position: relative;				

		    	> a {
		    		font-size: 15px;
		    		line-height: 1.15;
		    		font-weight: 500;
			    	color: @b;
			    	padding: 10px;
				    white-space: normal;
				    border: none;
				    height: 100px;
				    display: flex;
				    flex-direction: column;
				    justify-content: center;
				    align-content: center;

				    i {
				    	font-size: 22px;
				    	margin: 0 0 7px 0;
				    }
				    
				}

				> .delete-accion, > .delete-proyecto {
					display: block;
					width: 30px;
					height: 30px;
					text-align: center;
					position: absolute;
					right: -14px;
					top: -13px;
					background-color: @g3;
					border: solid 3px @b;
					border-radius: 50%;
					cursor: pointer;
					.transition(@ef15);

					i {
						font-size: 18px;
						line-height: 26px;    
						color: @b;
					}
				}

				&.marcado {
					> a {
						background: @g3 @i;
					}
				}
			}
	    }
	}	
}
.tabla_ajax_resultados {
	.texto_elementos, .texto_paginas {
		font-size: 0.8em;
	    color: @g9;
	    display: block;
	    text-align: right;
	}

	.texto_elementos {
	    margin-bottom: 10px;	    
	}
}

// FORMULARIOS
// ===================================================================================== 
label {
	font-weight: 500;
	line-height: 1;
	display: block;
    margin-bottom: 10px;

    &.inline {
    	display: inline-block;
    }
}
input, select, optgroup, option, textarea, button {
	color: @g3;
	font-weight: 500;
	border: none;
	box-shadow: none;
	background-color: @t;

	&:hover, &:focus, &:active {
		outline: none;
		box-shadow: none;
	}

	&::focus {
		outline: none;
    	.box-shadow(none);
	}

	&.mb-0px {
		margin-bottom: 0px;
	}
}
input, textarea, select, .input {
	height: 32px;
	border: solid 1px @d4;
    border-radius: 5px;
    padding: 4px 10px;
    margin-bottom: 10px;
    width: 100%;
}
input {
	background-color: @t;
}
select {
	font-weight: 400;

    &.select {
		display: block;
		width: 100%;
		padding: 6px 12px;
	    font-size: 14px;
	    line-height: 1.428571429;
	    color: #555;
	    border: 1px solid #ccc;
	}
}
input[name="buscar-timeline"] {
	padding: 6px 8px;
	width: 204px;
}
input[type="file"] {
    height: 34px;
    line-height: 34px;
    position: relative;    
    padding: 0px;
    padding-left: 17px;
    margin: 0px;
    border: none;
    background-color: @t;

    &::after {
    	content: '\f093';
	    font-family: 'Font Awesome 5 Pro';
	    font-size: 20px;
	    font-weight: 300;
	    color: @g3;
	    text-align: center;
	    line-height: 34px;
	    width: 156px;
	    position: absolute;
	    z-index: 1;
	    top: 0;
	    bottom: 0;
	    left: 0;
	    background-color: @b;
	    border: solid 1px #e0e0e0;
	    border-radius: 5px;
	    cursor: pointer;
	    .transition(@ef15);
    }

    &::before {
    	content: '';
    	width: 157px;
	    position: absolute;
	    z-index: 0;
	    top: 0;
	    bottom: 0;
	    left: 0;
	    background-color: @b;
    }

    &:hover::after {
    	color: @b;
    	background-color: @g6;
    }

    &:focus {
    	background-color: @t;
    }
}
input[type="radio"] {
	width: 24px;
	height: 24px;
	margin-right: 0px;
	margin-bottom: 0px;
}
textarea.form-control {
	padding: 10px;
	height: 230px;

	&.mini {
		height: 101px;
	}
}
label.enlace.mostrar {
	margin-bottom: 20px;

	i {
		margin-right: 10px;
	}
}
.form-group {
	margin-bottom: 25px;

	&.notificacion {
	    padding: 16px;
	    margin-bottom: 16px;
	    border: solid 1px @d4;
	    position: relative;
	    overflow: hidden;
	    border-radius: 5px;
	}

	&.radio-group {
		> div.flex-row {
			height: 2em;
			margin-bottom: 5px;
		}
	}
}
.form-control {
	font-size: inherit;
    line-height: 1;
    display: block;
    width: 100%;
    height: 34px;
    padding: 4px 10px;        
    background-color: @b;
    background-clip: padding-box;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;

    &:focus, &:active {
    	color: @n;
    	background-color: #ececec;
    	border-color: @g9 @i;
    	outline: none;
    	.box-shadow(none);
    }

    &.error {
    	border: none;
    	background-color: rgba(255, 0, 0, 0.1);
    	.box-shadow(inset 0px 0px 2px 1px rgba(255, 0, 0, 1));
    }

    input#color {
    	width: 38px;
    	padding: 2px;
    }
}
.icheckbox_minimal, .iradio_minimal {
	label {
		display: inline-block;
	}
}
.chosen-container {
	font-size: inherit;

	&.error {
		.chosen-single{
			border: none;
		    background-color: rgba(255, 0, 0, 0.1);
		    -webkit-box-shadow: inset 0px 0px 2px 1px #ff0000;
		    -moz-box-shadow: inset 0px 0px 2px 1px #ff0000;
		    -ms-box-shadow: inset 0px 0px 2px 1px #ff0000;
		    -o-box-shadow: inset 0px 0px 2px 1px #ff0000;
		    box-shadow: inset 0px 0px 2px 1px #ff0000;
		}
	}
}
.chosen-container-single {
	border-radius: 5px;

	.chosen-single {
		font-weight: 500;
		height: 34px;
		background: @b;
		border-color: @d4;
		border-radius: 5px;
	}
}
.chosen-container-active {
	.chosen-single {
		.box-shadow(none);
	}
}
.imagen-form {
	width: 120px;
	max-width: 120px;
	margin-top: 15px;
	margin-bottom: 31px;
}

// DONUTS
// =====================================================================================
.highcharts-tracker {
	tspan {
		font-family: 'Roboto';
		font-size: 12px;
		color: @n;
		fill: #444;
		font-weight: 500;
		text-shadow: 1px 1px 1px #FFFFFF;

		&:nth-child(2) {
			font-weight: normal;
		}
	}
}
.highcharts-tooltip {
	text tspan:nth-child(2) {
		display: none;
	}
}
.linea-tiempo {
	display: block;
	position: absolute;
	top: 0;
	height: 100%;
	background-color: rgba(210, 210, 210, 0.8);
	width: 2px;
}
.no-sobresalir {
	overflow: hidden @i;
	position: relative;
}
.tooltip {
	z-index: 99999 @i;
}

// GRÁFICAS
// =====================================================================================
.marca-interv {
	font-size: 0.8em;
	color: @b;
	font-weight: 500;
	text-align: center;
	position: absolute;
	z-index: 1;
	top: -20px;
	right: -32px;	
	width: 80px;	
	padding: 30px 0px 5px 0px;
    .transform(rotate(45deg));
}
.marca-interv-bottom {
	position: absolute;
	bottom: -10px;
	right: -26px;
	z-index: 9999;
	width: 70px;
	text-align: center;
	padding: 2px 0px 17px 0px;
	font-size: 12px;
	font-weight: 500;
	.transform(rotate(-45deg));
	color: @b;
}
.progress {
	width: 100%;
	height: 16px;
	margin: 0px auto;
	border-radius: 12px;
	background-color: #c8c8c8;

	&.xs {
		height: 7px;
	}

	&.sm {
		height: 10px;
	}

	&.vertical {
		position: relative;
		width: 30px;
		height: 200px;
		display: inline-block;
		margin-right: 10px;

		> .progress-bar {
			width: 100%!important;
			position: absolute;
			bottom: 0;
		}

		&.sm {
			width: 20px;
		}

		&.xs {
			width: 10px;
		}
	}

    .progress-bar {
    	font-size: 0.85rem @i;
    	font-weight: 500 @i;	  
    	text-align: left @i;
	    padding: 0px 5px @i;

	    span {
	    	font-size: 0.85rem @i;
	    	line-height: 1 @i;    
	    	display: inline-block @i;
		    overflow: hidden @i;
		    text-overflow: ellipsis @i;
		    white-space: nowrap @i;
	    }
    }

    .progressbar-control {
    	height: 22px;
    	border: 0px @i;
    	background: none @i;
    	position: relative;

    	.item-bar {
    		height: 22px;
    		border: 0px @i;
			border-radius: 0px @i;
			opacity: 0.5 @i;
			margin: 0px @i;

			&.blue {
				background: #17a2b8 @i;
			}

			&.orange {
				background: #fd7e14 @i;
			}

			&.yellow {
				background: #ffc107 @i;
			}
    	}

    	span {
    		font-size: 0.85rem @i;
    		font-weight: bold;
	    	line-height: 1 @i;    
	    	display: inline-block @i;
		    overflow: hidden @i;
		    text-overflow: ellipsis @i;
		    white-space: nowrap @i;
		    color: #fff;
		    position: absolute;
		    top: 2px;
		    right: 10px;
    	}
    }
}
.progress-bar-light-blue,
.progress-bar-primary {
  background-color: #3c8dbc;
}
.progress-striped .progress-bar-light-blue,
.progress-striped .progress-bar-primary {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-green,
.progress-bar-success {
  background-color: #00a65a;
}
.progress-striped .progress-bar-green,
.progress-striped .progress-bar-success {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-aqua,
.progress-bar-info {
  background-color: #00c0ef;
}
.progress-striped .progress-bar-aqua,
.progress-striped .progress-bar-info {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-yellow,
.progress-bar-warning {
  background-color: #f39c12;
}
.progress-striped .progress-bar-yellow,
.progress-striped .progress-bar-warning {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-red,
.progress-bar-danger {
  background-color: #f56954;
}
.progress-striped .progress-bar-red,
.progress-striped .progress-bar-danger {
  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

#barra {
    width: 3em;
    height: 1.6em;
    top: 50%;
    margin-top: -.8em;
    text-align: center;
    line-height: 1.6em;
}
#slider {
	&.temperatura {
		background: rgba(221,221,221,1);
		background: -moz-linear-gradient(left, rgba(221,221,221,1) 0%, rgba(0,192,239,1) 100%);
		background: -webkit-gradient(left top, right top, color-stop(0%, rgba(221,221,221,1)), color-stop(100%, rgba(0,192,239,1)));
		background: -webkit-linear-gradient(left, rgba(221,221,221,1) 0%, rgba(0,192,239,1) 100%);
		background: -o-linear-gradient(left, rgba(221,221,221,1) 0%, rgba(0,192,239,1) 100%);
		background: -ms-linear-gradient(left, rgba(221,221,221,1) 0%, rgba(0,192,239,1) 100%);
		background: linear-gradient(to right, rgba(221,221,221,1) 0%, rgba(0,192,239,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#73a9fa', endColorstr='#89f084', GradientType=1 );
	}
}

// BOTONES
// =====================================================================================
.zona-horaria #btn-zona {
	display: inline-block;
	font-size: 18px;
	padding:3px 8px;
	border-radius: 5px;
	color: #000000;
	font-weight: 700;
	cursor:pointer;
	box-shadow: inset -2px -2px 2px rgba(0,0,0,0.4);
	text-align: center;
	background-color: rgba(161, 228, 89, 0.7);
	background-image: url(img/world.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 75%;

	&:hover {
		box-shadow: inset 2px 2px 2px rgba(0,0,0,0.4);
		background-color:rgba(135, 203, 61, 0.7);
	}
}
.btn-ver-mas {
	float: right;
	margin: 15px;
	color: #00c0ef;
	cursor: pointer;
}
.rotar:hover {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

// MODALS
// =====================================================================================
#mood-form {
	margin: 8px 0px;

	#wrapper-mood-bar {
		display: flex;
		/*
		height: 26px;	
		padding: 2px;
		background: @g3;
		border-radius: 5px;
		*/

		#mood-reporting {
			font-size: 12px;
			line-height: 22px;
			height: 22px;
			padding: 0 10px;
		}

		.mod-reporting-bar {
			height: 22px;
		}

		span {
			&:first-of-type {
				border-top-left-radius: 3px;
				border-bottom-left-radius: 3px;
			}

			&:last-of-type {
				border-top-right-radius: 3px;
				border-bottom-right-radius: 3px;
			}
		}
	}
}
.modal-content {
	border: none;
	background-color: @b @i;
	border-radius: 5px;

	.modal-header {
		padding: 15px;
		border: solid 2px @b;
		background-color: @g3;

		h2, h3, h4, h5, h6 {
			color: @b;
		}

		.close {
			font-size: 2em;
			color: @b;
			opacity: 1;
			.text-shadow(none);
			.transition(@ef15);

			&:hover, &:focus, &:active {
				color: @b;
				opacity: 0.8;
			}
		}
	}
}
#estado-actual {
	max-width: 500px;
	margin: 0 auto;
	border-radius: 10px;

	.modal-header {
		padding: 15px;
		border: solid 2px @b;
		background-color: @g3;
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;

		h4.modal-title {
			text-align: center;
		}

		button {
			font-size: 1.8em;
		    color: @b;
		    opacity: 1;
		    text-shadow: none;
		    width: 30px;
		    height: 30px;
		    position: absolute;
		    right: 15px;
		    top: 20px;
			padding: 0px;
			margin: 0px;
			.transition(@ef15);

			&:active, &:focus {
				outline: none;
			} 
		}
	}

	.modal-body {
		padding: 50px 10px 20px 0px;
		background-color: @b;
		border-bottom-right-radius: 5px;
		border-bottom-left-radius: 5px;

		.confort-bar {
			display: flex;
			flex-flow: row wrap;
			align-items: center;
			justify-content: space-between;
			position: absolute;
			top: 15px;
			left: 55px;
			right: 65px;

			&::after {
			    height: 1px;
			    left: 30px;
			    right: 30px;
			}
		}

		.actividad-bar {
			display: flex;
			flex-flow: column wrap;
			align-items: center;
			justify-content: space-between;
			position: absolute;
			right: 12px;
			top: 60px;
			bottom: 29px;
			width: 31px;

			&::after {
			    width: 1px;
			    top: 30px;
			    bottom: 30px;
			    right: -22px;
			}

			span {
				.transform(rotate(90deg));
			}

			> * {
				position: relative;
				left: -37px;
			}
			&::after {
				left: 16px;
			}
		}

		.confort-bar, .actividad-bar {
			&::after {
				content: '';
			    display: block;
			    position: absolute;
			    z-index: 0;
			    background: @g9;
			}

			span {
				font-size: 1.2em;
				font-weight: 500;
				display: inline-block;
			    padding: 0 10px;
			    background: #fff;
			    position: relative;
			    z-index: 1;
			}

			i {
				font-size: 1.4em;
			}
		}

		.puntos {
			text-align: center;
		}

		.mood-a:hover {
			border: 10px solid @i;
			margin: 0px @i;
			box-shadow: 0 3px 3px rgba(0,0,0,0.4) @i;
		}
	}
}
.modal-dialog {
	max-width: 90%;
}
.modal-body {
	padding: 30px 15px;
	background-color: @b;
}
button.close {
	cursor: pointer;
}

// ACTIVIDAD
// ===================================================================================== 
ul.cerrar-registro {
	&.desactivar {
		> li {
			/*&:first-of-type{
				display: none;
			}*/
			&#mostrar-cierre {
				i {
					transform: rotate(180deg);
				}
			}
		}
	}
	> li {
		margin-left: 0px;

		.btn {
			padding: 0px 10px 0 8px;
    		border: none;

    		&.desplegable {
    			width: 30px;
    			min-width: 30px;
    			padding: 8px 10px 8px 5px;
    			border-top-left-radius: 0px @i;
    			border-bottom-left-radius: 0px @i;
    			position: relative;

    			&::after {
    				content: '';
    				display: block;
    				position: absolute;
    				top: 0;
    				bottom: 0;
    				width: 3px;
    				left: -3px;
    				background: @g3;
    			}

    			i {
    				margin: 0px;
    			}

    			&:hover, &.acito, &.active, &.selected {
    				background: @g3 @i;
    			}
    		}
    	}
	}
}
#registro-actual {
	height: 32px;
	position: relative;
    z-index: 2;
    margin-left: 10px @i;
    margin-right: -5px @i;

	> li > span {
		font-weight: 600;
	}
}
#form-cierre {
	position: absolute;
	top: 100%;
    z-index: 1;
    width: calc(~'100% - 6px');

    form {
    	padding: 0px;
    	background: @f5;
    	border-bottom-right-radius: 5px;
    	opacity: 1;
    	visibility: visible;
    	.transition(@ef15);

    	.flex-row {
    		flex-wrap: nowrap;
    	}
    }

    &.ocultar-inicio {
    	form {
    		opacity: 0;
    		visibility: hidden;
    	}
    }
}
#panel-proyectos .table-proyectos,
#panel-acciones .table-acciones {
	.btn.mini {
		height: 29px;
	}

	thead tr th {
		height: 64px;

		.flex-row.li-spacing-xl {
		    margin-left: -12px;
		    margin-right: -12px;

		    > li {
		    	padding-left: 12px;
		    	padding-right: 12px;
		    }
		}
	}
}
#panel-gantt {
	table.gantt thead tr {
		th {
			width: 100%;
		}

		&:last-child {
			border-top: none;
		}
	}

	#actual {
	    position: absolute;
	    top: 66px;
	    bottom: 0;
	    border-left: 1px dotted #00C0EF;
	    z-index: 1;

	    span {
	    	font-size: 11px;
		    line-height: 11px;
		    color: #00c0EF;
		    text-align: center;
		    padding: 0px 4px;
		    border-radius: 3px;
		    position: absolute;
		    top: -12px;
		    left: -25px;
		    width: 50px;
		    height: 11px;
		}
	}
}
#caja-config {
	border-top: 1px solid @g9;	
}
#caja-timeline {
	> .box {
		max-height: 400px;
		border-top: 1px solid @g9;		
		overflow: auto;

		.box-timeline {
			padding: 50px 20px 30px;
		}
	}
}
.btn-group .selected {
	background: #E9E9E9;
	box-shadow: inset 1px 1px 3px rgba(211, 211, 211, 0.8);
}

// DASHBOARD
// ===================================================================================== 
.caja-gauge {
    position: relative;
    top: -40px;
    margin-bottom: -60px;

    .gauge {
    	position: relative;

	    .gauge-obj {
	    	position: absolute;
		    top: -1px;
		    left: -1px;
		    right: -1px;		    

		    tspan {
		    	display: none;
		    }
	    }

    	h4 {
    		text-align: center;
    		position: relative;
    		top: -40px;
    		margin: 0px;
    	}
    }
}

// PROYECTOS
// ===================================================================================== 
.caja-datos {
	> .dato {
		padding-bottom: 15px;
		position: relative;

		div.flex-row {
			margin-bottom: 9px;

			.icono {
		    	font-size: 1.5rem;
		    	line-height: 32px;
		    	text-align: center;
		    	width: 28px;
		    	margin-right: 5px;
		    }

			.txt {
				font-size: 1.2em;
				line-height: 32px;
				font-weight: 400;
			}

		    input {
		    	width: 110px;
		    	text-align: center;
		    	cursor: pointer;
		    }
	    }

	    a.cerrar {
	    	display: block;
	    	font-size: 28px;
	    	line-height: 32px;
	    	cursor: pointer;
	    }

	    .progress {
	    	height: 16px;
	    }

	    &:last-of-type {
			margin-bottom: 0px;
			padding-bottom: 0px;
			border: none;
		}
	}
}
.caja-fecha {
	margin-top: 15px;

	input {
		padding: 7px 10px;
		border: 1px solid #cccccc;
		border-radius: 5px;
	}
}
.gantt-embed {
	height: 82vh;
	overflow: auto;
}
.textodetalles {
	ul {
		list-style-type: disc;
		padding-left: 17px;
	}
}
#panelresumen {
	.box-header {
		padding: 20px;
		margin: -20px -20px 20px;
		background: @g6;
	}

	h2 {
		color: @b;
		font-weight: 500;
	}

	h3 {
		color: @b;
		font-size: 1.5em;
		font-weight: 500;
		line-height: 1.5em;
	}

	h4 {
		margin-bottom: 10px;
	}

	.foto-perfil {
		img {
			width: 38px;
			height: 38px;
			float: left;
		}
	}

	.icon {
		i {
			font-size: 30px;
		}
	}

	select.fases {
		color: @n;
		background-color: @b;
		margin-bottom: 29px;    
	}		

	ul.datos {
		padding-left: 50px;

		li {
			margin-bottom: 5px;
			padding-left: 25px;
			position: relative;

			i {
				position: absolute;
				left: 0;
				top: 50%;
				.transform(translateY(-50%));
			}
		}
	}

	.status {
		color: @b;

		i {
			font-size: 2rem;
			/*
			position: relative;
			box-shadow: 0px 0px 0px 3px @b;
			border-radius: 50%;

			&::before {
				position: relative;
				z-index: 1;
			}

			&::after {
				content: '';
			    display: block;
			    position: absolute;
			    top: 1px;
			    right: 1px;
			    bottom: 1px;
			    left: 1px;
			    background: @b;
			    z-index: 0;
			    border-radius: 50%;
			}
			*/
		}

		p {
			font-size: 0.8rem;
			font-weight: 500;
			margin: 0px;
		}
	}
}
#tablagastos {
	ul.descripcion-gasto {
		line-height: 1.2;
		padding: 10px 0px 0px;
		margin-top: 30px;
		border-radius: 5px;
		border: solid 1px @d4;
		background: #f7f7f7;

		> li {
		    padding: 10px 15px 0 25px;
		    position: relative;

		    &::before {
		    	content: '\f0da';
		    	font-family: @fa;
		    	font-size: 12px;
		    	font-weight: 900;
		    	position: absolute;
		    	top: 12px;
		    	left: 15px;
		    }

			&:last-child {
				padding: 10px 0px 0px;

				&::before {
					display: none;
				}
			}

			p {
				font-weight: 700;
				margin-bottom: 0px;
			}
		}
	}

	> .row {
		&:first-of-type {
			> [class^="col-"]:nth-of-type(2n+1) {
				clear: both;
			}

			[class^="col-"] {
				margin-bottom: 30px;
			}
		}
	}

	textarea {
		height: 132px;
	}
}
#panelrecursos {
	img, i {
		width: 18px;
		height: 18px;
		margin-right: 5px;
	}
}
#tablatareas {
	margin: 30px 0;
	.form-nueva-tarea {
		.flex-row {
			li {
				input, select, textarea {
					min-width: 240px;
				}

				input[type="checkbox"] {
					margin: 0 10px 0 0;
					min-width: initial;
					width: 16px;
					height: 16px;
				}
			}
		}
	}
}
#limpiarbusqueda {
	&.on {
		cursor: pointer;
		background: #367fa9;
	}
}

// MATRIZ HORAS
// =====================================================================================
.matriz-horas {
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 10px;

	table {
		width: 100%;
		height: 8px;
		margin-top: 10px;

		td {
			opacity: 0.7;

			&:hover {
				opacity: 1;
			}
		}
	}
}

// GANTT
// =====================================================================================
.rectangulo {
    width: 87px;
    height: 37px;
    padding:0;
}
.contenido_gantt {
    position: relative;
	height: 0px @i;
	padding: 0px @i;
	margin: 0px @i;
	border-top: 0px @i;
	z-index: 999;
	opacity: 0.5;
}
.leyenda_gantt {
	color: silver;
	text-align: right;
	width: 100%;
	opacity: 1;
	z-index: 999;
}
.pie_gantt {
    position: absolute;
}
#letra {
	background: #10c38e;
	font-size: 120px;
	padding: 20px 70px;
	min-width: 220px;
	text-align: center;
	border-radius: 50%;
	display: inline-block;
	margin: 20px;
	font-weight: bold;
	color: #ffffff;
}
#tablaplanificador {
	margin: 20px 0px 10px;
}

// CONFIGURACIÓN
// =====================================================================================
.caja-logos {
	span {
		cursor: pointer;
		margin-right: 10px;
	}
}
#aviso {
	font-size: 18px;
	font-weight: 500;
	color: @b;
	text-align: center;
	display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100px;
    padding: 15px 20px;
	position: fixed;
	z-index: 9999;
	top: 100vh;
	background: rgba(0, 0, 0, 0.95);
	opacity: 0;
	.transition(all 0.4s ease-in-out);

	p {
		padding-left: 36px;
		position: relative;

		i {
			font-size: 26px;
			position: absolute;
			left: 0;
		}
	}

    * {
    	&:last-of-type {
    		margin-bottom: 0px;
    	}
    }

    &.rojo {
    	background: rgba(220, 53, 69, 0.9);
    }

    &.verde {
    	background: rgba(40, 167, 69, 0.9);
    }

    &.visible {
    	opacity: 1;
    	top: calc(~'100vh - 100px');
    }
}
.loader {
	text-align:center;
	
	img {
		max-width: 60px @i;
	}
}

// INFORMES
// =====================================================================================
#tbl-hoy-proyectos {
	> div {
		margin-bottom: 30px;

		&:last-of-type {
			margin-bottom: 0px;
		}
	}

	h4 {
		position: relative;
		background: @b;
    	margin-bottom: 10px;
	}
}
#tbl-hoy-recursos {
	.row {
		padding-top: 15px;
		padding-bottom: 15px;
		border-top: solid 1px @e6;

		&:first-of-type {
			border-top: none;
		}

		&:last-of-type {
			padding-bottom: 0px;
		}
	}
}
#tbl-personal {
	table tr {
		th, td {
			max-width: 190px;
		}
	}
}
#tbl-personal, .table-responsive {
	max-height: 500px;
	overflow-y: auto;

	table tr {
		th, td {
			a {
				overflow: hidden;
				text-overflow: ellipsis;
				/*display: inline-block;*/
			}
		}
	}
}

// DATEPICKERRANGE
// ===================================================================================== 
#datepickerrange {
	font-weight: 500;
	line-height: 30px;
	background: @b;
	cursor: pointer;
	padding: 0px 10px;
	border-radius: 5px;
	border: solid 1px @e6;
	width: 100%;
	height: 32px;

	&.gris {
	 	background: #f1f1f1;
	 	box-shadow: none;
	 	border: solid 1px #e0e0e0;
	}

	i:last-of-type {
	    margin-left: 5px;
	}
}
.daterangepicker {
	.ranges li.active {
		background: #00c0ef !important;
	}
	td.active, .daterangepicker td.active:hover {
		background: #00c0ef !important;	
	}
	.drp-buttons {
		clear: both;
		.btn {
			float: left;
			margin: 0px 5px 10px;
			color: #334351 !important;
		    background: #FFFFFF !important;
		    border-color: #999999 !important;
		    font-size: 12px;
		    font-weight: 500;
		    height: 32px;
		    min-width: 42px;
		    padding: 0 8px;
		    text-transform: uppercase;
		    cursor: pointer;
		}
	}
}

// MODAL DEL PLANIFICADOR
// ===================================================================================== 
.gantt_cal_light {
	.gantt_section_time{	
		.gantt_time_selects {
			width: 100%;
			float: none;

			select {
				width: 33%;
			}
		}
		.gantt_duration {
			float: none;
			margin: 10px 0;
		}
	}
}

// MODAL DEL PLANIFICADOR
// =====================================================================================
#estados {
	display: flex;
	flex-wrap: wrap;

	.panel-resumen {
		margin-bottom: 16px;

		.box-header {
			padding: 7px 10px;
			background: @g6;
			border-top-left-radius: 5px;
			border-top-right-radius: 5px;
			margin-bottom: 0px;

		    h2 {
				color: @g3;
				font-weight: 500;
				font-size: 1.1rem;
				text-transform: uppercase;
				background: @b;
				padding: 5px 8px;
				line-height: 1;
				border-radius: 5px;
			}

			span {
				font-size: 0.9rem;
				letter-spacing: -0.5px;
				font-weight: 600;
				display: flex;
				justify-content: center;
				align-items: center;
				width: 27px;
				height: 27px;
				border-radius: 15px;
				background: @b;
			}
		}

		.box-body {
			min-height: 150px;
			max-height: 335px;
			margin-top: 4px;
			overflow: auto;

			.proyecto {
				padding: 10px;
				margin-top: 4px;				
				border: solid 1px #eeeeee;
				cursor: -webkit-grab;
				cursor: grab;
				background-color: @b;
				.transition(@ef15);

				&:hover {
					background: #f7f7f7;
					border-color: #cccccc;
				}

				&:first-of-type {
					margin-top: 0px;
				}

				&:last-of-type {
					border-bottom-left-radius: 5px;
					border-bottom-right-radius: 5px;
				}

				> .flex-row {
					margin-bottom: 10px;
				}

				> ul > li > h3 {
					font-size: 1.1rem;
					padding-top: 2px;
				}

				.detalles {
					> .inner {
						hr {
							margin: 15px 0px;
						}

						h3 {
							font-size: 1rem;
							font-weight: 500;
							margin: 3px 0px 10px;
						}

						.btn.micro.icon i {
							font-size: 1.1em;
						}

						select {
							display: none;
						}

						.caja-datos {
							margin-left: -5px;
							margin-right: -5px;

							.dato {
								padding-left: 5px;
								padding-right: 5px;

								> div.label {
									display: flex;
									flex-flow: nowrap;
									align-items: center;
									margin-bottom: 5px;

									i {
										margin-right: 5px;
									}

									span {
										display: block;
										overflow: hidden;
										text-overflow: ellipsis;
										white-space: nowrap;
									}
								}
							}
						}
					}
				}

				.btn.micro.icon i {
					font-size: 1em;
				}
			}
		}			
	}
}	

// RESPONSIVE MEDIA QUERIES
// ===================================================================================== 
@media screen and (max-width: 1400px) {
	
	table.table tbody tr td.accion a {
		max-width: 193px;
	}

}

@media screen and (max-width: 1199px) {
	
	.small-box > .inner:after {
		width: 40px;
		height: 40px;
		position: initial;
	}

	#estados {
		.panel-resumen {
			.box-body {
				.proyecto {
					.detalles {
						> .inner select {
							display: block;
						}
					}
				}
			}
		}
	}

}

@media screen and (min-width: 992px) {
	
	body {
		.row-offcanvas {
			.left-side {
				top: 50px;

				&.collapse-left {
					left: 0px;
					width: 60px;
				}
			}

			.right-side.strech {
				/*margin-left: 60px;*/
				left: 60px;

				> .content-header {
					margin-top: 0px;
				}
			}
		}
	}

}

@media screen and (max-width: 992px) {
	
	body {
		.row-offcanvas {
			.left-side {
				width: 165px;
				top: 50px;

				.sidebar > .sidebar-menu > li > a {
			    	padding: 15px;

			    	> span {
			    		left: 55px;
						opacity: 1;
						visibility: visible;
			    	}
				}

				&.collapse-left {
					width: 60px;
					left: 0;

					> .sidebar > .sidebar-menu > li > a > span {
						left: 50px;
			    		opacity: 0;
			    		visibility: hidden;
					}
				}
			}

			.right-side {
				/*margin-left: 160px;*/
				left: 160px;

				&.strech {
					/*margin-left: 60px;*/
					left: 60px;
				}
			}
		}		
	}

}

@media screen and (max-width: 768px) {

	.desktop {
		display: none;
		opacity: 0;
		visibility: hidden;
	}

	.responsive {
		display: block;
		opacity: 1;
		visibility: visible;
	}	

	h1 {
		font-size: 1.6em;
	}

	h2 {
		font-size: 1.3em;
	}	

	body {
		.logo-top {
			height: 25px;
			background-color: #272727;
			display: flex;
			justify-content: center;
			align-items: center;
			position: fixed;
			z-index: 1030;
			top: 0;
			left: 0;
			right: 0;

			a {
				img {
					height: 15px;
				}
			}
		}

		.header {
			height: 40px;
			top: 25px;

			> div {
				width: initial;
				height: 40px;

				.logo {
					width: 140px;
					height: 34px;
					margin-right: 15px;

					.icon {
						height: 34px;
						max-width: 100%;
					}
				}
			}

			> div, .navbar {
				height: 40px;
			}

			nav.navbar .navbar-nav > .user-menu > a > img {
				width: 22px;
				height: 22px;
			}
		}

		.row-offcanvas {
			padding-top: 65px;
			.transition(@ef15);

			.left-side {
				width: 165px;
				top: 65px;
				left: 0;

				&.collapse-left {					
					left: -165px;
					width: 165px;
				}

				> .sidebar {
					height: calc(~'100vh - 65px');
				}
			}

			.right-side {
				left: 165px;
				position: relative;

				> .content-header {
					margin: 0px 10px;
				}

				> .content {
		    		padding: 10px;
		    	}

		    	&.strech {
		    		left: 0px;
		    	}
			}
	    }
	}
	
	.btn {
		flex: 1 0 54px;
		min-width: 54px;
		height: 38px;
	}
	
	.flex-row {
		&.seleccion > li {
			label, span, input, select {
				margin: 0px 1px;
			}
		}

		&.btn-list {
			> li .btn {
				padding: 0 6px;
			}
		}
	}
	
	.box {
		padding: 15px 10px;

		.inner-box {
			padding: 15px;
		}

		&.tabs {
			padding: 0px 10px 15px;
		}
	}

	.tabs {
		> .box-header {
			margin: 0px -10px 30px;
		}

		.nav-tabs li a {
			padding: 10px 10px;
		}
	}

	.tpv {
		ul {
			li.boton {
				width: 50%;
			}

			&.opciones {
				> li.boton {
					display: none;
				}

				&.visible {
					> li {
						&.boton {
							display: block;
						}

						&.crono {
							padding-top: 15px;
						}
					}
				}

				li {
					&.menu-boton {
						display: block;
					}

					&.crono {
				        padding-top: 0px;
				    }
				}
			}
		}

		.listado ul li {
	        width: 33%;
	    }
	}

	#form-cierre {
		width: 100%;
	}

	#panel-proyectos .table-proyectos,
	#panel-acciones .table-acciones {
		thead tr th {
			height: initial;
			padding: 10px 12px;

			h2 {
				line-height: 29px;
			}
		}
	}

}

@media screen and (max-width: 580px) {

	body {
		font-size: 14px;

		.header {
			> div, .navbar {
				padding: 5px 10px;
			}

			> div .logo {
				width: 100px;
			}
		}

		 .row-offcanvas {
		 	.left-side {
			 	.sidebar > .sidebar-menu > li {
				 	> a {
				 		> span {
						 	font-size: 0.9rem;
						 	left: 42px;
						 }

						 > i {
						 	font-size: 18px;
						 	width: 20px;
						 	.transform(translateY(calc(-50%)));
						 }
					}

					> ul {
						padding: 5px 5px 5px 15px;

						> li > a {
							font-size: 12px;
							padding: 0px 0px 0px 25px;

							> i {
								font-size: 14px;
								left: 0px;
							}

							> span {
								left: 26px;
							}
						}
					}
				}

				&.collapse-left {
					width: 50px;

					> .sidebar > .sidebar-menu > li {
						> a > span {
							left: 40px;
						}

						> ul > li > a > span {
							left: 23px;
						}
					}
				}
			}

			.right-side {
				position: relative;
			}
		 }
	}

	#form-cierre {
		top: calc(~'100% - 15px');

		form {
			padding-top: 15px;
		}
	}

}

@media screen and (max-width: 420px) {

	.perfil-imagen {
		width: 120px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.box-timeline.box {
	    padding-left: 5px @i;
	    margin-left: 0 @i;
	    margin-right: 0 @i;
	}

	.timeline {
		&:before {
		    left: 15px;
		}

		> li {
			> .fa {
				left: -3px;
			}

			> .timeline-item {
			    margin-left: 0px;
			    margin-right: 0px;
			}
		}

		.fa {
			z-index: 2;
		}

		li .timeline-item {
			h3 {
				margin-left: 25px @i;
			}
			.timeline-body {
				padding: 4px;
			}
		}
	}

	.tpv .listado ul li {
        width: 50%;
    }

}

@media print {

	a[href]:after {
		content: none @i;
	}

}