#ajax_loader, .loader {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	background-color: rgba(0, 0, 0, 0.3);
}

#ajax_loader > img, .loader > img {
	position: relative;
	left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.ks-page-header {
	z-index: 4 !important;
}

.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
	z-index: 3 !important;
}

.ks-navbar > .ks-wrapper > .nav > .ks-navbar-actions > .ks-notifications > .dropdown-menu {
	width: 400px !important;
}

.ks-navbar > .ks-wrapper > .nav > .ks-navbar-actions > .ks-notifications > .dropdown-menu > .tab-content > .tab-pane > .ks-wrapper .ks-notification {
	height: unset !important;
	min-height: 85px;
}

.ks-navbar > .ks-wrapper > .nav > .ks-navbar-actions > .ks-notifications > .dropdown-menu > .tab-content > .tab-pane > .ks-wrapper,
.ks-navbar > .ks-wrapper > .nav > .ks-navbar-actions > .ks-notifications > .dropdown-menu > .tab-content > .tab-pane > .ks-wrapper > .jspContainer {
	height: 342px !important;
}

.ks-notification > .ks-avatar > img {
	width: 36px;
	height: 36px;
}

.has-danger .help-block.form-error {
	color: #ef5350
}

.error {
	color: #ef5350;
}

.pre-wrap {
	white-space: pre-wrap !important;
}

.ui-jqgrid .ui-jqgrid-bdiv {
	overflow-x: hidden !important;
}

.no-top-border>.ui-jqgrid {
	border-top: none;
}

.dash-button {
	margin-top: 10px;
}

.dash-button.disabled {
	cursor: not-allowed;
}

.dash-button.disabled > .card {
	color: gray;
}

.dash-button.disabled a {
	cursor: not-allowed;
	color: gray;
}

.dash-button.disabled .button-item-icon-block {
	background-color: gray;
}

.error {
	color: #e53935;
}

.card {
	border-radius: 3px !important;
}

.columns-right, .pull-right {
	float: right;
}

/* update to line-awesome 1.2 */
.dropdown-toggle::after,
.custom-checkbox > .custom-control-input:checked ~ .custom-control-label:after {
	font-family: "Line Awesome Free" !important;
	font-weight: 900 !important;
}

.dropdown-toggle::after {
	content: "\f107" !important;
}

.custom-checkbox > .custom-control-input:checked ~ .custom-control-label:after {
	content: "\f00c" !important;
}

/* fix for custom checkbox */
.custom-checkbox.widget > .custom-control-input:checked ~ .custom-control-label::after {
 	left: -23px !important;
	padding-left: 1px;
}

/* fix for custom radio */
.custom-radio.widget > .custom-control-input:checked ~ .custom-control-label::after {
	left: -23px !important;
	padding-left: 1px;
}

/* custom tokenfield */

.tokenfield .token {
	margin-top: -2px !important;
	margin-bottom: 6px !important;
}

.tokenfield .token .token-label {
	padding-left: 6px !important;
	padding-top: 3px !important;
}

/* custom dropdown */

.dropdown-toggle.custom {
	text-align: left;
}

.dropdown-toggle.custom:not(.disabled) {
	background: #fff !important;
}

.dropdown-toggle.custom::after:not(.disabled) {
	line-height: initial !important;
}

.dropdown-toggle.custom.disabled::after {
	content: '';
}

.dropdown.show .dropdown-toggle.custom::after {
	-webkit-transform: initial !important;
	transform: initial !important;
	content: '\f113' !important;
}

/* prop */

.prop input, .prop textarea {
	border: none;
	padding: 0;
	font-family: monospace;
	background: transparent;
}

.prop input:focus, .prop textarea:focus {
	outline: none;
}

.prop td {
	vertical-align: middle;
	line-height: 1;
}

.prop td input:first-child, .prop td input:first-child + span {
	color: rgb(32, 21, 223);
}

.prop td input:last-child, .prop td input:last-child + span {
	color: rgb(36, 22, 50);
}

.prop td input:first-child + span {
	margin: 0 4px;
}

.prop textarea {
	color: rgb(107, 169, 128);
	overflow-y: hidden;
	resize: none;
}

.prop td textarea:last-child {
	white-space: nowrap;
}

.prop tr:focus-within {
	outline: none;
	background: rgb(232, 242, 254);
}

/* datatable */

.datatable .card-header {
	padding: 12px !important;
}

.datatable .error > .title {
	margin-top: 22px;
}

.datatable .error > .status {
	font-weight: 300;
	font-size: 96px;
}

.datatable .error > .description {
	margin-top: -16px;
	font-size: 32px;
}

.datatable .error > .trace {
	margin-top: 8px;
	margin-bottom: 32px;
	max-width: calc(100% - 32px);
	overflow-x: auto;
}

.datatable .error > .trace > span {
	display: block;
	white-space: nowrap;
}

.datatable .action-group + .action-group {
	margin-left: 12px;
}

.datatable .btn.custom {
	margin-right: 12px;
	padding: 5px 15px;
}

.datatable .btn-group.actions button {
	padding: 5px 15px;
}

.datatable .btn-group.actions button span.fas {
	width: 15px;
}

.datatable .dropdown-toggle {
	padding: 0 14px 0 0;
}

.datatable .glyphicon {
	font-size: 21px;
	padding-left: 12px;
}

.datatable .dropdown-menu {
	padding: 0;
	font-size: 12px;
	border: 1px solid #c4cbe1;
	margin-bottom: 4px;
	margin-top: 4px;
	border-radius: 2px;
}

.datatable .dropdown-menu li {
	padding: 0;
	margin: 0;
	line-height: 16px;
}

.datatable .dropdown-menu li:not(:last-child) {
	border-bottom: 1px solid #c4cbe1;
}

.datatable .dropdown-menu li > div {
	margin: 10px;
}

.datatable th {
	background: rgba(57, 80, 155, .05);
	border: none;
	border-bottom: 1px solid rgba(57, 80, 155, .2);
}

.ks-datatable .action {
	opacity: .25;
	font-size: 12px;
	cursor: pointer;
	transition: opacity .2s;
}

.ks-datatable .action + .action {
	margin-left: 2px;
}

.ks-datatable .action.selected, .ks-datatable .action:hover {
	opacity: 1;
}

.ks-datatable .right-action + .right-action {
	margin-left: 12px;
}

.ks-datatable .bottom-action {
	opacity: .75;
	font-size: 14px;
	cursor: pointer;
	color: #333;
	transition: opacity .2s;
}

.ks-datatable .bottom-action + .bottom-action {
	margin-left: 8px;
}

.ks-datatable .bottom-action {
	opacity: 1;
}

.ks-datatable .ks-user, .ks-datatable .ks-badge {
	height: 24px;
}

.ks-datatable .ks-badge .badge {
	vertical-align: middle;
}

.ks-datatable .ks-user + .ks-user, .ks-datatable .ks-badge + .ks-badge {
	margin-top: 4px;
}

.datatable-popover .popover-header {
	display: none;
}

.alert-warning {
	color: #856404 !important;
	background-color: #fff3cd !important;
	border-color: #ffeeba !important;
}

/* improved dashboard */

.improved-dashboard .module {
	position: relative;
	background: #4e54a8;
	color: #fff;
	border-radius: 6px;
	cursor: pointer;
}

.improved-dashboard .module-icon {
	position: absolute;
	top: 25.5px;
	right: 0;
	opacity: .75;
	font-size: 102px;
}

.improved-dashboard .module-icon span {
	display: block;
}

.improved-dashboard .module-info {
	margin: 12px;
	padding: 24px;
}

.improved-dashboard .module-title {
	font-size: 24px;
}

.improved-dashboard .module-subtitle {
	font-size: 12px;
}

/* improved dropdown menu */

.ks-navbar .ks-dropdown-grid-images.show > .dropdown-menu.improved {
	position: fixed;
	top: 50px;
	left: 16px;
	width: 540px;
	margin: 0;
}

.ks-navbar .ks-dropdown-grid-images.show > .dropdown-menu.improved .ks-scroll-wrapper {
	margin-top: -8px;
	margin-left: -8px;
}

.ks-navbar .ks-dropdown-grid-images.show > .dropdown-menu.improved .ks-scroll-wrapper > .ks-grid-item {
	margin: 8px 0 0 8px;
	flex: 1 1 0;
}

@media only screen and (max-width: 572px) {
	.ks-navbar .ks-dropdown-grid-images.show > .dropdown-menu.improved {
		top: 60px;
		bottom: 0;
		left: 0;
		right: 0;
		width: unset;
	}
}
