/*
 * Main CSS style for the framework functionality.
 * Add here only the common classes across projects.
 *
 */


.nowrap {
	white-space: nowrap;
}

.overflow-ellipsis {
	overflow: hidden;
	text-overflow: ellipsis;
}

.clear {
	clear: both;
}

.inline-block {
	display: inline-block;
}

.no-borders {
	border-width: 0;
}

table.no-borders td, table.no-borders th {
	border-width: 0 !important;
}

.deleted {
	color: gray;
}

option.blank-item {
	color: gray;
	font-style: italic;
}


/* --- Additional classes --- */

img.pictureframe {
	padding: 2px;
	background-color: white;
	border: #ccc 1px solid;
}

.overlay::before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: none repeat scroll 0 0 rgba(0, 0, 0, 0.25);
	z-index: 1040 !important;
	vertical-align: middle;
	text-align: center;
}

.overlay .fa {
	font-size: 50px;
	color: white;
	text-shadow: 0 0 12px #ff6060 !important;
	vertical-align: middle;
	cursor: default;
}

.overlay-container {
	position: relative;
}

.progress {
	margin: 5px 0;
}


/* --- Main content, Widget, Dialog & Tabs --- */

/* Used only to describe the page content parent */
.page-container {
}

.toolbars + .page-container {
	padding-top: 0;
}

.container {
	margin: 0;
	padding: 0;
}

.sidebar, .sidebar:before {
	width: 250px;
}

.sidebar + .main-content {
	margin-left: 250px;
}

.main-content-nosidebar {
	margin-left: 0;
}

.sidebar.menu-min, .sidebar.menu-min:before, .sidebar.menu-min.compact, .sidebar.menu-min.navbar-collapse {
	width: 43px;
}

.sidebar.menu-min + .main-content {
	margin-left: 43px;
}

.sidebar.menu-min .nav-list > li > .submenu,
.sidebar.menu-min .nav-list > li > a > .menu-text {
	width: 230px;
}

.sidebar-shortcuts a i {
	margin: 0 !important;
}

@media (min-width: 768px) {
	.container {
		width: auto;
		max-width: 744px;
	}
}

@media (min-width: 992px) {
	.sidebar + .main-content .breadcrumbs-fixed {
		left: 250px;
	}

	.container {
		width: auto;
		max-width: 964px;
	}
}

@media (min-width: 1200px) {
	.container {
		width: auto;
		max-width: 1164px;
	}
}


/* --- General icon styles and colors --- */

.fa,
.glyphicon {
	margin: 0 3px;
}

.lma{
	margin-left: 7px;
}

.btn .fa,
.btn .glyphicon {
	margin: 0 5px 0 0;	
}

a .fa-file-excel-o {
	color: #00a000;
}

a:hover .fa-file-excel-o {
	color: #007000;
}

a .fa-file-pdf-o {
	color: #a00000;
}

a:hover .fa-file-pdf-o {
	color: #700000;
}

a .fa-print {
	color: #606060;
}

a:hover .fa-print {
	color: #303030;
}

a:hover .fa.maroon {
	color: #600000;
}


/* ------ Form, fixes & sizes ------ */

.input-group {
	width: 100%;
}

.input-group-addon {
	padding: 5px 0;
	width: 35px;
	text-align: center;
}

.btn-toolbar .btn-group {
	float: none;
}

.form-group {
	margin-bottom: 5px;
}

input.form-control, select, button.ui-multiselect.form-control {
	height: 27px !important;
}

select.form-control {
	height: 29px !important;
}

div.form-control, textarea.form-control {
	height: 100% !important;
	min-height: 27px !important;
}

.form-control, select, button.ui-multiselect, textarea {
	font-size: 13px !important;
	line-height: 1.5em !important;
	padding: 2px 5px !important;
}

button.ui-multiselect {
	padding-right: 0 !important;
}

button.ui-multiselect > span {
	height: 1.42857em;
}

.checkbox, .radio {
	margin: 3px 0;
}

input.ace.ace-switch[type="checkbox"] {
	margin: 0;
	min-height: 10px;
}

input.ace.ace-switch[type="checkbox"] + .lbl {
	margin: 0 4px;
	min-height: 10px;
}

label.ace-switch {
	height: 27px;
	padding-top: 3px;
}

.control-label > a:first-child,
.control-label > .fa:first-child {
	margin-left: 5px;
}

.control-label .fa-comment-o {
	cursor: help;
}

input[type="number"] {
	padding-right: 2px;
}

.input-icon > input {
	padding-left: 24px !important;
}

.input-icon > .ace-icon {
	line-height: 26px;
}

input.ace.ace-switch.ace-switch-yesno[type="checkbox"] + .lbl:before {
	content: "YES\a0\a0\a0\a0\a0\a0\a0\a0NO";
}

.ui-jqgrid-htable .ui-search-clear {
	width: 14px;
}

.ui-jqgrid-htable .ui-search-input input {
	height: 26px !important;
}

.jstree-icon.fa {
	background: none;
}


/* --- Placeholder style fix --- */

::-webkit-input-placeholder, /* WebKit, Blink, Edge */
:-moz-placeholder, /* Mozilla Firefox 4 to 18 */	
::-moz-placeholder, /* Mozilla Firefox 19+ */
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	font-style: italic !important;
	color: gray !important;
}


/* --- Hide the browser`s helpers buttons for number input and date and time pickers --- */

input.nohelperbuttons::-webkit-outer-spin-button,
input.nohelperbuttons::-webkit-inner-spin-button,
input.nohelperbuttons::-webkit-calendar-picker-indicator,
input[readonly]::-webkit-outer-spin-button,
input[readonly]::-webkit-inner-spin-button,
input[readonly]::-webkit-calendar-picker-indicator,
input:disabled::-webkit-outer-spin-button,
input:disabled::-webkit-inner-spin-button,
input:disabled::-webkit-calendar-picker-indicator {
	-webkit-appearance: none;
	margin: 0;
	display: none;
}

input.nohelperbuttons,
input[readonly],
input:disabled {
	-moz-appearance: textfield;
}

form input::-webkit-validation-bubble-message,
form select::-webkit-validation-bubble-message,
form textarea::-webkit-validation-bubble-message {
	display:none;
}

textarea.form-control, textarea.noresize {
	resize: none;
}

input::-ms-clear {
	display: none;
}

input[type="search"], input[type="time"] {
	-webkit-appearance: none;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="time"]::-webkit-clear-button
 {
	display: none;
}

/* --- Validation --- */

.help-block {
	margin: 0;
	font-size: 0.9em;
	cursor: default;
}

.help-block ul {
	margin: 0;
	padding: 0;
}


/* --- General Ace Theme components fixes --- */

input[type="checkbox"].ace, input[type="radio"].ace {
	z-index: 9;
}

input[type="checkbox"].ace + .lbl, input[type="radio"].ace + .lbl {
	z-index: 8;
}

blockquote {
	margin: 0;
	padding: 5px 15px;
	font-style: italic;
	font-size: inherit;
}

.copyright {
	color: #888;
	font-size: 0.8em;
	text-align: center;
	padding: 25px 0;
}

/* --- Error page ---*/

.error-page {
	margin: 0 auto;
	max-width: 900px;
	text-align: center;
}

.error-page p {
	margin: 10px 0;
}

.error-text {
	color: #FFFFFF;
	font-size: 700%;
	font-weight: 400;
	letter-spacing: -4px;
	margin-bottom: 30px;
	text-shadow: 0 1px 0 #CCCCCC, 0 2px 0 #BFBFBF, 0 3px 0 #BBBBBB, 0 4px 0 #B9B9B9, 0 5px 0 #AAAAAA, 0 6px 1px rgba(0, 0, 0, 0.1), 0 0 5px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.3), 0 3px 5px rgba(0, 0, 0, 0.2), 0 5px 10px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.2), 0 20px 20px rgba(0, 0, 0, 0.15);
}

.error-text .fa-times-circle {
	color: #B94A48;
	text-shadow: 0 1px 0 #803838, 0 2px 0 #A85D5D, 0 3px 0 #B86565, 0 4px 0 #D86F6F, 0 5px 0 #B3A5A5, 0 6px 1px rgba(131, 51, 51, 0.1), 0 0 5px rgba(102, 30, 30, 0.1), 0 1px 3px rgba(95, 15, 15, 0.3), 0 3px 5px rgba(100, 23, 23, 0.2), 0 5px 10px rgba(114, 30, 30, 0.25), 0 10px 10px rgba(94, 15, 15, 0.2), 0 20px 20px rgba(121, 38, 38, 0.15);
}

.error-text .fa-unlink {
	color: #428BCA;
	text-shadow: 0 1px 0 #383880, 0 2px 0 #5D5DA8, 0 3px 0 #6565B8, 0 4px 0 #6F6FD8, 0 5px 0 #A5A5B3, 0 6px 1px rgba(51, 51, 131, 0.1), 0 0 5px rgba(30, 30, 102, 0.1), 0 1px 3px rgba(15, 15, 95, 0.3), 0 3px 5px rgba(23, 23, 100, 0.2), 0 5px 10px rgba(30, 30, 114, 0.25), 0 10px 10px rgba(15, 15, 94, 0.2), 0 20px 20px rgba(38, 38, 121, 0.15);
}

.error-text .fa-warning {
	color: #C09853;
	text-shadow: 0 1px 0 #808038, 0 2px 0 #A8A85D, 0 3px 0 #B8B865, 0 4px 0 #D8D86F, 0 5px 0 #B3B3A5, 0 6px 1px rgba(131, 131, 51, 0.1), 0 0 5px rgba(102, 102, 30, 0.1), 0 1px 3px rgba(95, 95, 15, 0.3), 0 3px 5px rgba(100, 100, 23, 0.2), 0 5px 10px rgba(114, 114, 30, 0.25), 0 10px 10px rgba(94, 94, 15, 0.2), 0 20px 20px rgba(121, 121, 38, 0.15);
}

.error-page .more-details {
	margin-top: 15px;
	border-top: #dedede 1px solid;
}

.error-page .more-details button {
	margin-top: 10px;
}

#idStackTrace {
	text-align: left;
	margin-top: 10px;
	background: #fffff0;
}

@media (max-width: 992px) {
	.error-text {
		font-size: 500%;
	}
}


/* --- Tree editor --- */

#idTreeComponent {
	overflow: auto;
	background: #fff;
	border: 1px solid #cacaca;
}

#idTreeEditorsContainer {
	float: left;
	position: relative;
}

.group-button-bar {
	float: right;
	font-style: normal;
}

.tree-editor-filter {
	position:relative
}

.tree-editor-filter > .nav-search {
	right: 2px !important;
}

.tree-expand-collapse a {
	cursor: pointer;
}


/* --- Toolbars ---*/

.toolbar-export-links a .fa {
	font-size: 1.5em;
	width: 1.2em;
	text-align: center;	
}

.toolbar-export-links .admin-editor {
	text-align: right;
}


/* --- Forms --- */

.grid-button {
	position: relative;
	text-decoration: none !important;
	color: #363636 !important;
}

.grid-button:hover {
	text-decoration: underline !important;
}

.admin-editor {
	position: relative;
}

.admin-infobutton-component {
	width: auto;
	margin-right: 15px;
}

.admin-infobutton {
	float: right;
	width: 15px;
	padding:3px;
}

.required {
	color: red;
	font-weight: bold;
}


/*TODO: use ".btn-toolbar"! */
.admin-buttonbar {
	clear: both;
	position: relative;
	padding-top: 10px;
}

.admin-buttonbar-border {
	margin-top: 15px;
}

.admin-buttonbar .overlay-div {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin-top: 10px;
	z-index: 1003;
	background: rgba(0, 0, 0, 0.1);
}


/*Saved filters fixes*/
.saved-filter-list button.ui-multiselect {
	width: 85%;
}

@media (max-width: 1500px) {
	.saved-filter-list button.ui-multiselect {
		width: 80%;
	}
}

@media (max-width: 992px) {
	/* The menu is now hidden*/
	.saved-filter-list button.ui-multiselect {
		width: 85%;
	}
}

@media (max-width: 600px) {
	.saved-filter-list button.ui-multiselect {
		width: 80%;
	}
}

@media (max-width: 478px) {
	.saved-filter-list button.ui-multiselect {
		width: 75%;
	}
}


/* --- Admin containers ---*/

.page-tabs, .editor-tabs {
	padding: 0 !important;
}

.page-tabs-content, .editor-tabs-content {
	position: relative;
}

.editor-tabs-content {
	padding: 10px;
	border: #ddd 0px solid;
	border-width: 0 1px 1px 1px;
	box-shadow: 0 1px 2px #ccc;
	background: #fff;
}

.admin-container {
}

.admin-container > label.control-label {
	margin-bottom: 0;
}

.admin-container > label.control-label.pull-left {
	/* fix the height for labels/titles on the left to follow the 1-line sized editors */
	padding-bottom: 3px;
	padding-top: 3px;
}



.admin-componentgroup-title {
	color: #8AC;
	font-weight: bold;
	font-style: italic;
	font-size: 1.1em;
	border-bottom: #9BD 1px solid;
	padding-bottom: 3px !important;
}


/* --- Dashboard page --- */

.table-stats {
	background: #fff !important;
}

.table-stats td, .table-stats th {
	padding-left: 0.5em !important;
}

.dashboard-preload {
	padding-top: 10px;
}

.dashboard-preload .fa {
	font-size: 32px;
	color: #a0b0c0;
	text-shadow: 0 0 12px #606060;
	cursor: default;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}


/* --- Infobox --- */

.infobox-container {
	text-align: left;
}

.infobox {
	width: 250px;
	border-style: solid;
}

.infobox-section {
	display: block;
	margin: 15px 0 3px 0;
	font-size: 14px;
	color: #555;
}

#chart-placeholder {
	margin-top: 10px;
}


/* --- Table layout --- */

.table > thead > tr > th:last-child {
	border-right-color: #dddddd;
}

table.admin-table-layout {
	border-collapse: collapse;
}

table.admin-table-layout > thead > tr > th {
	padding-top: 1px;
	padding-right: 1px;
	padding-left: 3px;
	padding-bottom: 4px;
	line-height: 18.2px;
	vertical-align: middle;
	font-size: 11.7px;
}

table.admin-table-layout > tbody > tr > td, table.admin-table-layout > thead > tr > th:last-child {
	padding: 1px;
	line-height: 18.2px;
	vertical-align: middle;
	font-size: 11.7px;
}

table.admin-table-layout i {
	color: #707070;
}

table.admin-table-layout td, table.admin-table-layout th {
	padding: 1px;
	line-height: 1.4em;
	min-height: 1.4em;
}

table.admin-table-layout td {
	border: 1px solid #ddd;
	position: relative;
}

table.admin-table-layout th label {
	line-height: 1.4;
	font-weight: bold !important;
	font-size: 1em;
}

table.admin-table-layout th input[type=checkbox].ace + .lbl, 
table.admin-table-layout th input[type=radio].ace + .lbl {
	font-weight: bold !important;
}

tr.table-layout-additional th, .dynamictable-buttons {
	text-align: center;
}

.admin-table-layout-container[class*="grid-h"] .admin-editor,
.admin-table-layout-container[class*="grid-max-h"] .admin-editor {
	overflow-y: auto;
}

table.admin-table-layout-thin {
	font-size: 0.9em !important;
	line-height: 1em;
}

table.admin-table-layout-thin input,
table.admin-table-layout-thin select,
table.admin-table-layout-thin button,
table.admin-table-layout-thin textarea {
	font-size: 1em !important;
}

table.admin-table-layout .form-control,
table.admin-table-layout .ace-switch {
	width: 100%;
	height: 100%;
	min-height: 26px;
	max-height: 100px;
}

table.admin-table-layout td .checkbox,
table.admin-table-layout th .checkbox,
table.admin-table-layout td .radio,
table.admin-table-layout th .radio {
	padding-left: 1px;
	margin: 0;
}

table.admin-table-layout td .checkbox input,
table.admin-table-layout th .checkbox input,
table.admin-table-layout td .radio input,
table.admin-table-layout th .radio input {
	margin: 0;
}

table.admin-table-layout td label,
table.admin-table-layout th label {
	margin: 0;
}

table.admin-table-layout .ui-multiselect-menu {
	 width: auto;
}

table.admin-table-layout .ui-multiselect-menu > .ui-multiselect-checkboxes {
	white-space: nowrap;
	max-width: 300px;
}

table.admin-table-layout .admin-multiselect-table > .ui-multiselect-checkboxes {
	 white-space: normal;
	 max-width:none !important;
}
table.admin-table-layout .ui-multiselect-menu > .ui-multiselect-checkboxes > .li {
	padding-right: 20px;
}

table.admin-table-layout tr.additional {
	background: #f5f5ff;
}

.admin-container .multiloader-container {
	padding-left: 0;
	padding-right: 20px;
}

.multiloader-container .admin-editor {
	overflow-y: visible !important;
}

.fixedcolumn-container {
	overflow-x: auto;
}

.fixedheader-container {
	overflow-y: auto;
}

@media (min-width: 768px) {
	.table-responsive {
		overflow: auto;
	}
}


/* --- Bootstrap-dialog styles --- */

.admin-dialog-buttons{
	margin-top: 15px;
	margin-left: -15px;
	margin-right: -15px;
}

.modal-body .page-container {
	padding-bottom: 0 !important;
}

.bootstrap-dialog .bootstrap-dialog-title {
	color: #fff;
	display: inline-block;
	font-size: 16px;
	cursor: default;
}



/* --- Grid system sizes ---
 *
 * Defaults (for font-size: 13px!):
 *
 * Standard single-line editor height: 27px
 * Label height: 20px
 *
 * Calculation formula for ".admin-editor" class = 27 + (level-1)*(20 + 27 + 5) px
 */
.grid-h1 > .admin-editor { height: 27px; }
.grid-h2 > .admin-editor { height: 79px; }
.grid-h3 > .admin-editor { height: 131px; }
.grid-h4 > .admin-editor { height: 183px; }
.grid-h5 > .admin-editor { height: 235px; }
.grid-h6 > .admin-editor { height: 287px; }
.grid-h7 > .admin-editor { height: 339px; }
.grid-h8 > .admin-editor { height: 361px; }
.grid-h9 > .admin-editor { height: 413px; }
.grid-h10 > .admin-editor { height: 465px; }
.grid-h11 > .admin-editor { height: 517px; }
.grid-h12 > .admin-editor { height: 569px; }
.grid-h13 > .admin-editor { height: 621px; }
.grid-h14 > .admin-editor { height: 673px; }
.grid-h15 > .admin-editor { height: 725px; }
.grid-h16 > .admin-editor { height: 777px; }
.grid-h17 > .admin-editor { height: 829px; }
.grid-h18 > .admin-editor { height: 881px; }
.grid-h19 > .admin-editor { height: 933px; }
.grid-h20 > .admin-editor { height: 985px; }

.grid-max-h1 > .admin-editor { max-height: 27px; }
.grid-max-h2 > .admin-editor { max-height: 79px; }
.grid-max-h3 > .admin-editor { max-height: 131px; }
.grid-max-h4 > .admin-editor { max-height: 183px; }
.grid-max-h5 > .admin-editor { max-height: 235px; }
.grid-max-h6 > .admin-editor { max-height: 287px; }
.grid-max-h7 > .admin-editor { max-height: 339px; }
.grid-max-h8 > .admin-editor { max-height: 361px; }
.grid-max-h9 > .admin-editor { max-height: 413px; }
.grid-max-h10 > .admin-editor { max-height: 465px; }
.grid-max-h11 > .admin-editor { max-height: 517px; }
.grid-max-h12 > .admin-editor { max-height: 569px; }
.grid-max-h13 > .admin-editor { max-height: 621px; }
.grid-max-h14 > .admin-editor { max-height: 673px; }
.grid-max-h15 > .admin-editor { max-height: 725px; }
.grid-max-h16 > .admin-editor { max-height: 777px; }
.grid-max-h17 > .admin-editor { max-height: 829px; }
.grid-max-h18 > .admin-editor { max-height: 881px; }
.grid-max-h19 > .admin-editor { max-height: 933px; }
.grid-max-h20 > .admin-editor { max-height: 985px; }


/* Height styles for "label on the left" mode:
 * Label height is not taken into account here, as does not preceeds the editor on height
 *
 * Calculation formula for ".admin-editor" class = 27 + (level-1)*(27 + 5) px
 */

.grid-h2 > label.pull-left + .admin-editor { height: 59px; }
.grid-h3 > label.pull-left + .admin-editor { height: 91px; }
.grid-h4 > label.pull-left + .admin-editor { height: 123px; }
.grid-h5 > label.pull-left + .admin-editor { height: 155px; }
.grid-h6 > label.pull-left + .admin-editor { height: 187px; }
.grid-h7 > label.pull-left + .admin-editor { height: 219px; }
.grid-h8 > label.pull-left + .admin-editor { height: 251px; }
.grid-h9 > label.pull-left + .admin-editor { height: 283px; }
.grid-h10 > label.pull-left + .admin-editor { height: 315px; }
.grid-h11 > label.pull-left + .admin-editor { height: 347px; }
.grid-h12 > label.pull-left + .admin-editor { height: 379px; }
.grid-h13 > label.pull-left + .admin-editor { height: 411px; }
.grid-h14 > label.pull-left + .admin-editor { height: 443px; }
.grid-h15 > label.pull-left + .admin-editor { height: 475px; }
.grid-h16 > label.pull-left + .admin-editor { height: 507px; }
.grid-h17 > label.pull-left + .admin-editor { height: 539px; }
.grid-h18 > label.pull-left + .admin-editor { height: 571px; }
.grid-h19 > label.pull-left + .admin-editor { height: 603px; }
.grid-h20 > label.pull-left + .admin-editor { height: 635px; }

.grid-max-h2 > label.pull-left + .admin-editor { max-height: 59px; }
.grid-max-h3 > label.pull-left + .admin-editor { max-height: 91px; }
.grid-max-h4 > label.pull-left + .admin-editor { max-height: 123px; }
.grid-max-h5 > label.pull-left + .admin-editor { max-height: 155px; }
.grid-max-h6 > label.pull-left + .admin-editor { max-height: 187px; }
.grid-max-h7 > label.pull-left + .admin-editor { max-height: 219px; }
.grid-max-h8 > label.pull-left + .admin-editor { max-height: 251px; }
.grid-max-h9 > label.pull-left + .admin-editor { max-height: 283px; }
.grid-max-h10 > label.pull-left + .admin-editor { max-height: 315px; }
.grid-max-h11 > label.pull-left + .admin-editor { max-height: 347px; }
.grid-max-h12 > label.pull-left + .admin-editor { max-height: 379px; }
.grid-max-h13 > label.pull-left + .admin-editor { max-height: 411px; }
.grid-max-h14 > label.pull-left + .admin-editor { max-height: 443px; }
.grid-max-h15 > label.pull-left + .admin-editor { max-height: 475px; }
.grid-max-h16 > label.pull-left + .admin-editor { max-height: 507px; }
.grid-max-h17 > label.pull-left + .admin-editor { max-height: 539px; }
.grid-max-h18 > label.pull-left + .admin-editor { max-height: 571px; }
.grid-max-h19 > label.pull-left + .admin-editor { max-height: 603px; }
.grid-max-h20 > label.pull-left + .admin-editor { max-height: 635px; }


/*----------------tri-state checkbox-------------------------*/

input[type=checkbox].tristate:indeterminate + .lbl::before{
	content: '\f04d';
}

.font-bold {
	font-weight: bold !important;
}