
/* ------------------ BOOTSTRAP GLOBAL CHANGES ------------------ */

/* .datepicker {z-index:1200 !important;} */
/* .control-sidebar {z-index:1100;} */

/* A BIT MORE COMPACT LAYOUT */
body {font-size:14px;}
.row {margin-right:-5px;margin-left:-5px;}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12,
.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {	padding-right:5px;padding-left:5px;}
.form-group {margin-bottom:5px;}
.table td {vertical-align:top;}
.table-condensed td, .table-condensed th {line-height:1 !important; padding:4px 5px 4px 10px !important;min-width:20px;}
.table td.td-icon {text-align:center; font-size:1.2em; padding:3px 5px !important;}
.table-condensed td input, .table-condensed th input{margin:0 !important;}
.btn {line-height:1;}
.btn-toolbar .btn {margin-left:5px;margin-right:0;}
.alert {margin-bottom:10px;}
.modal-header {padding: 5px 10px;}
.modal-header h4 {margin:3px;}
.modal-body {padding:10px 25px; max-height:calc(85vh - 60px); overflow-y:auto;}
h3 {font-size:20px;}
blockquote {border-left:none; font-size:inherit;}


/* ------------------ MAIN INTERFACE BLOCKS ------------------ */

/*treeview-menu collapse solution */
.sidebar-collapse .treeview-menu {
	margin-top:-44px;
	padding:0 !important;
	}

/* main areas */
.content {padding:5px 10px 5px 10px;}

/* topbar */
a.mobile_logo {	display:none;}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 {margin-left: 0;}
@media (max-width: 767px) {
	a.logo {display:none !important;}
	a.mobile_logo {display:block; float:left;}
	}
.navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > p {
	margin-left: 0;
	white-space:normal;
	}
.navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a {
	margin-left: 0;
	white-space:normal;
	text-overflow:inherit !important;
	}
/* right sidebar */
.control-sidebar-bg {
	padding:80px 40px;
	width:50%;
	right:-50%;
	overflow-y:scroll;
	opacity:0.98;
	}
	@media (max-width: 1200px) {
		.control-sidebar-bg {
			padding:60px 30px;
			width:75%;
			right:-75%;
			}
		}
	@media (max-width: 1200px) {
		.control-sidebar-bg {
			padding:60px 30px;
			width:75%;
			right:-75%;
			}
		}

	@media (max-width: 900px) {
		.control-sidebar-bg {
			padding:60px 30px;
			width:95%;
			right:-95%;
			}
		}
	@media (max-width: 900px) {
		.control-sidebar-bg {
			padding:60px 30px;
			width:95%;
			right:-95%;
			}
		}
.control-sidebar-close {
	margin-right:-30px;
	}
	@media (min-width:900px){
		.control-sidebar-close {
			margin-top:-20px;
			margin-right:-40px;
			}
		}


/* left (main) sidebar */
.sidebar-form {
	border-radius: 3px;
	margin: 10px 10px;
	}
.sidebar-form input[type="text"],.sidebar-form .btn {
	box-shadow: none;
	border: 1px solid transparent;
	height: 35px;
	}
.sidebar-menu {margin-top:15px;}
.sidebar-menu > li > a {
	border-left: 3px solid transparent;
	font-weight: 600;
	}
.sidebar-menu li a {
	display:block;
	overflow:hidden;
	white-space:nowrap;
	text-overflow: ellipsis;
	}
.sidebar-menu > li.active > a {font-weight:600;}
.sidebar-menu > li > .treeview-menu {
	padding-top:5px;
	padding-bottom:15px;
	}
.sidebar-menu .treeview-menu > li > a {padding:4px 5px 4px 15px;}
.sidebar-menu .treeview-menu > li > ul > li > a {padding:3px 5px 3px 15px;}
.sidebar-menu .treeview-menu i { font-size:0.8em;}
.sidebar-menu .treeview-menu > li > ul > li > ul > li a{
	padding-top:0;
	padding-bottom:0;
	}
.sidebar a:hover { text-decoration: none;}
.treeview-menu > li.active > a {font-weight: 600;}


/* ------------------  COMPONENTS ---------------------------- */

/* icons */

.field-icon { /* options embedded into input fields */
	float: right;
	margin-right: 10px;
	margin-top: -25px;
	position: relative;
	z-index: 2;
	font-size:1.2em;
	opacity:0.8;
	cursor:pointer;
  }

/* tables */
.table-button {width:40px;}
.table-responsive {border:none;padding-left:5px;padding-right:5px;}
.table-condensed, table.dataTable {	margin-top:15px !important;}
.table-hasfilters  table.table {margin-top:0 !important;}
.table-fields-data {margin-top:0 !important;margin-bottom:10px;} /* table for non-editable fields data */
.table-fields-data tr td:first-child {font-weight:bold;text-align:right;}
	@media (max-width:767px){
	.table-fields-data tr td {width:50%;}
	}
.table td, .table-condensed td {vertical-align:top;}
.pagination { margin: 0 0 15px 0 } /* pagination under tables */
.pagination-sm>li>a, .pagination-sm>li>span {
    padding: 3px 6px;
    font-size: 12px;
    line-height: 1.2;
	}
@media (max-width:990px){
	ul.pagination li:first-child {display:none;}
	ul.pagination li:nth-child(2) {display:none;}
}
.table-bottom-options {
	float:right;
	margin-top:15px;
	}
table.table-double > thead > tr:first-child > th:first-child {
	text-transform:uppercase;
	text-align:center;
	max-width:300px;
	}
.table-counter { /* table registry counter */
	display: inline-block;
	padding: 1px 10px;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	margin-right:5px;
	}
	.table-counter select {border:none;}
.table-quickfilter {display: inline-block;padding-top:1px;}
	.table-quickfilter input {height:25px;padding-bottom:8px;}

.table-pagination { /* pagination over tables */
	display: inline-block;
	padding: 1px 2px 1px 0;
	margin-bottom: 0;
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	margin-right:5px;
	}
	.table-pagination select {
		border:none !important;
		text-align-last:center;
		}

/* buttons */
.btn-group  button .caret {margin-left:5px;}
.btn {
	margin-right:5px;
	text-transform:uppercase;
	}
.btn-group > .btn {
	border-bottom-right-radius:4px ;
	border-top-right-radius:4px ;
	}
.btn-switch > .btn:not(:last-child) {
	margin-right:0;
	border-bottom-right-radius:0 ;
	border-top-right-radius:0 ;
	}
.btn-switch > .btn[disabled] {
	opacity:1;
	cursor:default;
	}


/* tabs */
.nav-tabs-custom > .nav-tabs > li > a:hover {border-bottom:0;}
.nav-tabs-custom > .tab-content {padding:20px;}
.nav-tabs > li.pull-right > a, .nav-tabs-custom > .nav-tabs > li.pull-right a:hover  {
	border-top-left-radius:5px;
	border-top-right-radius:5px;
	margin-right:25px;
	padding:5px 10px;
	margin-top:8px;
	}
.nav-stacked li a {padding-left:0;}
.nav-stacked li a i {
	font-size:18px;
	margin-right:10px;
	}

/* labels (as classes for tags or similar, not for <label> */
.label {text-transform:uppercase; font-weight:normal;margin-left:5px; padding:.1em .3em .1em;}
.label-md {font-size:100%;margin-left:10px;}
.alert  {padding:5px 0 5px 10px !important;}
.alert-static span.pull-right {width:30px;}
	@-moz-document url-prefix() {.alert-static span.pull-right {width:35px;}}
.alert-static span.pull-right a { /* action icons links in title bars */
	border-top-right-radius:4px;
	border-top-left-radius:0;
	border-bottom-left-radius:0px;
	border-bottom-right-radius:4px;
	padding:7px 10px;
	margin-right:-12px;
	}

.alert-dismissable, .alert-dismissible { padding-right: 35px !important;}
a label {cursor:pointer !important;}

/* timelines */

.panelMensajes h3 {margin-left:20px; font-weight:bold;}
.panelMensajes .user-image {
    float: left;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    margin-left: 15px;
    margin-top: -2px;
    }

/* ---------------------------- FORMS ---------------------------- */

.form-group.required .control-label:after {
	content:" *";
  }

.radio {
	margin-top:0;
	}
.options-grid {
	padding:10px 20px;
	line-height:25px;
	border-radius:5px;
	margin-top:10px;
	}

/* extra-compact forms */
.form-compact .form-group {margin-bottom:3px;}
.form-compact .form-control, .form-horizontal .table-condensed .form-control, .form-compact span.select2-selection{
    width: 100%;
    height: 25px !important;
    padding: 2px 4px !important;
    font-size: 14px;
    line-height: 1.3;
	border-radius: 2px !important;
	}
.form-compact input[type=checkbox], .form-compact input[type=radio] {
		margin: 0;
	}
.form-compact .input-group-addon {padding: 2px 4px;border-radius: 2px;}
.form-compact label {font-size:0.9em;}
.form-compact .form-group {
    margin-right: -5px !important;
    margin-left: -5px !important;
	}

.form-compact span.select2-selection__arrow b {top:40% !important;}

/* ---------------------------- BOXES ---------------------------- */


.box {margin-bottom:5px;}
.box-header {
	padding:7px 10px;
	text-transform:uppercase;
	}
.collapsed-box .box-header.bg-gray {border-bottom:none;}
.box-title {font-size:16px !important;}
.box-body {padding:15px;}
.box-commands {padding:5px;}
.box-commands button {
	text-transform:uppercase;
	width:16%;
	}

/* ----------------------- PAGE CONTENT HEADER------------------------------- */

.content-header .box {margin-bottom:5px;}
.content-header .page-name {margin-bottom:10px;}
.content-header .page-button, .content-header .page-actions {text-align:right;}
	@media (max-width:990px) {.content-header .page-button, .content-header .page-actions {text-align:left;}}

.content-header .fake-textarea {margin-bottom:10px;}
.content-header h1 {
	text-transform:uppercase;
	font-size:30px;
	font-weight:500;
	margin:0;
	line-height:1em;
	}
.content-header h2 {
	font-size:22px;
	font-weight:300;
	margin:5px 0 0 0;
	line-height:1em;
	}
.content-header .btn-global  {
	font-size:30px;
	padding:0;
	background:transparent !important;
	}
.content-header .tags {margin-bottom:10px;}
.content-header .quicklinks a {padding:0 10px;}
.content-header.quicklinks a:last-child {border-right:none;}
@media(max-width:1199px) {
	.content-header h1 {
		font-size:25px;
		}
	}
.context-menu .box-body {text-transform:uppercase;}
.square-thumb {
	max-width:150px;
	max-height:150px;
	}

/* ----------------------- INFO and FILTER BOXES ------------------------------- */

.info-box {
    min-height: 40px;
	margin-bottom:0;
	}
.info-box-icon {
    height: 30px;
    width: 30px;
    font-size: 15px;
    line-height: 30px;

	}
.info-box-content {
	padding-top:15px;
	padding-bottom:15px;
	margin-left:40px;
	}
@media (max-width:767px) {
	.info-box-content {
		padding-top:35px;
		}
	}
.info-box .form-control, .info-box .select2-container--default .select2-selection--single {
	width: 100%;
	height: 25px;
	padding: 2px 8px;
	font-size: 13px;
	line-height: 1em;
	}
.info-box .select2-selection__arrow {
	height: 18px;
}
	.info-box .form-group {
	margin-bottom:0;
	}
.info-box .form-group b {
	font-size:13px !important;
	}
.info-box .form-group button {
	margin-top:17px;
	}
@media (max-width:768px) {
	.info-box span.info-box-icon {
		width:100%;
		}
	.info-box-icon {
		height: 25px;
		font-size: 15px;
		line-height: 25px;
		}
	.info-box-content {
		margin-left:0;
		}
	.info-box-content button {
		margin-bottom:10px;
		}
	}

/* ----------------------- TABLE FILTERING ------------------------------- */

.buttons-row {margin-bottom:15px;}

.form-inline {
    height: 25px;
    padding: 2px 8px;
    font-size: 14px;
    line-height: 1.3;
	margin-right:10px;
	}
.filters-row .label-sm {font-size: 14px; padding:4px 15px; margin-right:5px; line-height:30px;}
.filters-row b {font-size:13px;}
.filters-button {margin-top:20px;}

/* inline forms*/

.form-inline {
    height: 25px;
    padding: 2px 8px;
    font-size: 14px;
    line-height: 1.3;
	margin-right:10px;
	}
.columns-header {
	width:100%;
	text-align:center;
	}
.columns-fields {width:100%;}
.inline-field {display:inline;}

/* ----------------------------------- SPACING---------------------------- */

.space {position:relative;float:left; display:block; width:100%;min-height:2px;}
.space5 {height:5px;}
.space10 {height:10px;}
.space15 {height:15px;}
.space20 {height:20px;}
.space30 {height:30px;}
.space40 {height:40px;}
.space50 {height:50px;}
.space100 {height:100px;}

/* ----------------------------------- IMAGE GALLERIES---------------------------- */

.gallery div.gal-image {
    height: 25vh;
    margin: 0 0 2px 0;
    padding-left: 1px;
    padding-right: 1px;
}
.gallery a:hover .fake-img {
    transform: scale(1.2);
    z-index: 100;
}
.fake-img {
    display: block;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    transition: all .5s;
}

/* --------------------------------- SWITCH CHECKBOX -------------------------- */


.slideCheck {
	width: 80px;
	height: 26px;
	margin: 5px auto;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;
	position: relative;
}

.slideCheck input[type=checkbox] {
	visibility: hidden;
}


.slideCheck:after {
	content: 'OFF';
	font: 12px/26px Arial, sans-serif;
	position: absolute;
	right: 10px;
	z-index: 0;
	font-weight: bold;
}

.slideCheck:before {
	content: 'ON';
	font: 12px/26px Arial, sans-serif;
	position: absolute;
	left: 10px;
	z-index: 0;
	font-weight: bold;
}

.slideCheck label {
	display: block;
	width: 34px;
	height: 20px;

	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	border-radius: 50px;

	-webkit-transition: all .4s ease;
	-moz-transition: all .4s ease;
	-o-transition: all .4s ease;
	-ms-transition: all .4s ease;
	transition: all .4s ease;
	cursor: pointer;
	position: absolute;
	top: 3px;
	left: 3px;
	z-index: 1;
}

.slideCheck input[type=checkbox]:checked + label {
	left: 43px;
}


/* ----------------------------------- ESPECÍFICOS GESTLINEA---------------------------- */

/* MAIN TREE */

.tree .fa-folder, .tree .fa-folder-open {font-size:1.2em;}
.tree {	overflow-y:scroll;}
.tree-titles, .tree-titles .tree-date {	background:transparent !important;}
.tree-buttonset {
	padding:0 0 8px 0;
	}
	.tree-buttonset .btn {margin-right:2px;}
.tree-first {padding:5px 0 5px 5px;}
.tree ul {
  list-style: none;
  padding-left: 10px;
	}
.tree ul li {
  padding-left: 5px;
  flex:1;
	}
.tree > ul.folders-tree {padding-left:0 !important;}
.tree > ul.folders-tree > li {padding-left:0 !important;}
.tree-location {
	display:flex;
	margin-bottom:2px;
	width: 100%;
	cursor:pointer;
	}
	.tree-location span {
		margin-right:10px;
		}
.tree-structure {
	flex-shrink: 1;
	margin-right:10px;
	display:flex;
	width:100%;
	padding-left:10px;
	}
	.tree-structure div:first-child {min-width:20px;}
	.tree-structure div:nth-child(2) {min-width:20px;}
.tree-counters {
	flex-shrink: 4;
	width:10%;
	min-width:140px;
	}
	.tree-counters div {
		float:left;
		width:35px;
		text-align:center;
		min-width:35px;
		}
		.tree-counters div:last-child {opacity:0.6;}
.tree-date {
	text-align:center;
	margin-left:10px;
	flex-shrink: 4;
	width:10%;
	min-width:80px;
	}
.tree-name {flex-shrink: 1;}

/* FILES TREE ADDONS */

.tree-files {
	flex-shrink: 4;
	width:10%;
	min-width:50px;
	}
	.tree-files div {
		float:left;
		width:35px;
		text-align:center;
		min-width:35px;
		}

/* LOCATION ELEMENTS LIST */

.list {	overflow-y:scroll; border:1px solid white;}
.list-name {
	padding:10px;
	margin-top:-20px;
	}
.list-name h3 {margin-top:0;margin-bottom:0;font-weight:bold;}
.list ul {
	list-style: none;
	padding-left: 0;
  	}
  .list ul li {padding-left: 0;}
.list-row {
	display:flex;
	width: 100%;
	}
.list-first {
	padding:5px 0 5px 0;
	}
	.list-row.bg-gray {
		opacity:0.8;
		filter:saturate(0%);
		}
.element-name {
	flex-shrink: 1;
	margin-right:10px;
	display:flex;
	width:100%;
	}
.element-status {min-width:20px;text-align:center;}
.element-date {min-width:80px;text-align:center;}
.element-last-status {padding: 0 8px;min-width:180px;}
.element-alert {min-width:30px;}
.element-edit {min-width:30px;text-align:center; font-size:1.2em;}
.row-selected {cursor:pointer;}
	.row-selected:hover {cursor:pointer;}

.li_elemento:hover {cursor:pointer;}

.big-checkbox {transform:scale(1.8);margin-bottom:10px !important;}

@media(max-width:1200px) {
	#divCapaElementos {height:auto !important;}
	#divTree {height:auto !important; margin-bottom:50px;}
}


/* FILES LIST ADDONS */

.files-row {
	display:flex;
	width: 100%;
	padding-top:5px;
	padding-bottom:5px;
	}


.file-name, .file-title {
	flex-shrink: 0.5;
	margin-right:10px;
	display:flex;
	width:100%;
	}
.file-icon {min-width:40px;text-align:center;}
.file-size {min-width:80px;text-align:center;}

/* 100-LISTING */

.listado-100 {
	line-height:14px;
}
.listado-100 label {
    width:100%;
    font-weight: normal;
	margin-bottom:0;
	padding:2px;
	}
.listado-100 label input {
	margin-right: 2px;
	}

/* INFORMES GESTLINEA */

.portada, .info-previos, .info-break, .salto-anexo {
	page-break-after: always;
	}

.info-logo {
	margin-top:50px;
	margin-bottom:10px;
	}

.info-title {
	font-size:30px;
	}
.info-logo h3 {
	font-size:15px !important;
	}
.info-cliente {
	padding:20px;
	font-size:16px;
	margin-bottom:20px;
	}

.info-previos {
	font-size:15px;
	}
.info-previos h1 {
	font-size:24px;
	}
.info-img {
	width:150px;
	}
.info-emplazamiento, .info-anexo {
	font-size:24px;
	}
.info-emplazamiento, .info-anexo {
	margin-bottom:20px !important;
	padding-bottom:10px !important;
	}
h1.info-anexo {
	display:none;
	}
@page {
    margin-top:1cm;
	margin-bottom: 3cm;
}

@media print {
	td, th {
		font-size:10px !important;
		padding:2px !important;
		}
	img {
		max-width:500px !important;
		}
	h2 {
		font-size:18px !important;
	}
}
/* PRESUPUESTOS GESTLÍNEA */

#tab_revision-elementos table tr td, #tab_suministro-elementos table tr td {
	vertical-align:middle;
	padding:2px 5px 2px 10px !important;
	}

/* GESTLINEA HELP BLOCK INPAGE */

.page-help-link {
	font-size:2.2em;
	margin-top:-15px;
	}

.page-help {
	margin:20px;
	padding:25px;
	border-radius:5px;
	font-size:1.2em;
	}
	.page-help-close {
		float:right;
		margin-right:-25px;
		margin-top:-22px;
	}

/* GESTLINEA LOGIN PAGE */

.abs-center {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	background:var(--clear);
  	}
.login-area {padding:40px;}
.login-frame {
	border-radius:6px;
	padding:0;
	}
@media (max-width:600px) {.login-frame {width:90% !important;}}

.login-help {font-size:1.2em;}

.drop-hover {background-color:#ffe89d;}