﻿@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;700&display=swap');

@-webkit-keyframes pulse {
	0%, 100% {
		opacity: .3;
	}

	50% {
		opacity: 1;
	}
}

@keyframes pulse {
	0%,100% {
		opacity: .3;
	}

	50% {
		opacity: 1;
	}
}

* {
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
}


/* LAYOUT */

html {
	width: 100%;
	min-height: 100%;
}

body {
	padding: 0px;
	margin: 0px;
	width: 100%;
	min-height: 100%;
	background-color: #f5f8fa;
	font-family: 'IBM Plex Sans';
	font-size: 10.5pt;
	font-weight: 400;
	color: #2f3e59;
	-webkit-text-size-adjust: none;
	-webkit-overflow-scrolling: touch;
	overflow-x: hidden;
}

	body.modal-open {
		overflow: hidden;
		height: 100%;
		max-height: 100%;
		touch-action: none;
	}

#nav {
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 100;
	height: 100vh;
	width: 90px;
	background-color: #ffffff;
	box-shadow: 0 0px 5px rgba(0, 0, 0, 0.02);
	overflow: auto;
}

	#nav ul {
		list-style: none;
		padding: 0px;
		margin: 0px;
	}

		#nav ul li {
			display: block;
			position: relative;
			left: 0px;
			top: 0px;
		}

			#nav ul li a {
				display: block;
				color: #9aa3b0;
				font-size: 7.5pt;
				text-align: center;
				text-decoration: none;
				text-transform: uppercase;
				padding: 15px 6px 15px 6px;
				transition: all .3s;
			}

				#nav ul li a:hover, #nav ul li a.active {
					color: #229a8e;
					background-color: #f5f8fa;
					text-decoration: none;
				}

				#nav ul li a i {
					display: block !important;
					margin: 0px auto 6px auto !important;
					font-size: 14pt;
				}

			#nav ul li .textXX {
				text-overflow: ellipsis;
				overflow: hidden;
				white-space: nowrap;
				display: block;
			}

			#nav ul li:not(.nav-dashboard-logo) {
				border-bottom: solid 0px #f5f8fa;
			}

.nav-dashboard-logo {
	margin-bottom: 18px;
}

	.nav-dashboard-logo img {
		display: block;
		height: 45px;
		margin: 0px auto 6px auto;
	}

.nav-dashboard-icon {
	display: none;
}

.submenu .grid a {
	color: #9aa3b0 !important;
	font-size: 8pt;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	padding: 15px 6px 15px 6px;
	transition: all .3s;
	border-radius: 3px;
}

	.submenu .grid a:hover, .submenu .grid a.active {
		color: #229a8e !important;
		background-color: #f5f8fa;
		text-decoration: none;
	}

	.submenu .grid a i {
		display: block !important;
		margin: 0px auto 6px auto !important;
		font-size: 14pt;
	}

	.submenu .grid a .text {
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
		display: block;
	}

header {
	position: -webkit-sticky; /* Safari */
	position: sticky;
	top: 0px;
	padding: 30px 18px 30px 18px;
	margin-left: -12px;
	margin-right: -12px;
	background-color: #f5f8fa;
	z-index: 999;
}

	header .icon-btn-group.header {
		z-index: 1000;
		top: 9px;
	}

	header .icon-btn-group:not(.header) {
		top: 0px;
	}

	header .avatar {
		margin-left: 18px;
		position: relative;
		top: -1px;
	}

main {
	padding: 6px 0px 12px 0px;
}

#site {
	width: 100%;
	padding-left: 108px;
	padding-right: 18px;
}

img {
	max-width: 100%;
}

.logo {
	width: auto;
	height: 70px;
}

.avatar {
	width: 27px;
	height: 27px;
	border-radius: 50%;
	display: inline-block;
}

	.avatar.initials {
		background-color: #9aa3b0;
		position: relative;
		left: 0px;
		top: 0px;
	}

		.avatar.initials .text {
			font-size: 6pt;
			color: #ffffff;
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
		}

.dot {
	display: inline-block;
	z-index: 10;
	border-radius: 50%;
	padding: 3px;
	background-color: #229a8e;
}

	.dot.light {
		background-color: #9aa3b0;
	}

	.dot.success {
		background-color: #229a8e;
	}

	.dot.danger {
		background-color: #ea212d;
	}

	.dot.has-number {
		padding: 7px;
		top: 5px !important;
		right: 5px !important;
	}

		.dot.has-number span {
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%, -50%);
			color: #ffffff;
			font-size: 7pt;
		}

.loading-screener {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 100000;
	background-color: rgba(0, 0, 0, .5);
}

	.loading-screener > div {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		text-align: center;
		color: #ffffff;
	}

	.loading-screener div.icon {
		font-size: 32pt;
		margin-bottom: 6px;
	}

	.loading-screener div.text {
		font-size: 12pt;
	}

.overflow-container-x {
	overflow-x: auto;
}

	.overflow-container-x:not(.is-left) .scrollguide-left, .overflow-container-x:not(.is-right) .scrollguide-right {
		display: none;
	}

	.overflow-container-x .scrollguide-left {
		position: absolute;
		left: 0px;
		top: 0px;
		height: 100%;
		padding: 12px;
		background: rgb(255,255,255);
		background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
		opacity: .5;
	}

	.overflow-container-x .scrollguide-right {
		position: absolute;
		right: 0px;
		top: 0px;
		height: 100%;
		padding: 12px;
		background: rgb(255,255,255);
		background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
		opacity: .5;
	}

		.overflow-container-x .scrollguide-left i, .overflow-container-x .scrollguide-right i {
			position: relative;
			top: 50%;
			transform: translateY(-50%)
		}

.pulse {
	animation: pulse 2s infinite ease-in;
	-webkit-animation: pulse 2s infinite ease-in;
}


/* FORMATTING */

h1, .h1 {
	margin: 0px;
	color: #2f3e59;
	font-size: 19pt;
	font-weight: 400;
}

h2 {
	margin: 0px 0px 15px 0px;
	color: #229a8e;
	font-size: 15pt;
	font-weight: 400;
}

	h2 + label {
		margin-top: 6px;
	}

h3 {
	margin: 0px 0px 15px 0px;
	font-size: 13pt;
	color: #229a8e;
	font-weight: 400;
}

h4 {
	margin: 6px 0px 12px 0px;
	font-weight: 700;
}

p {
	margin-top: 0px;
	margin-bottom: 15px;
}

pre {
	margin: 0px;
	font-family: inherit;
	font-size: inherit;
	white-space: pre-wrap;
}

a, a:active {
	color: #229a8e;
	text-decoration: none;
	outline: none;
}

	a:hover {
		text-decoration: none;
	}

	a.table-row, a.griditem {
		text-decoration: none;
		color: inherit;
	}

div.hr {
	margin: 6px 0px 6px 0px;
	height: 1px;
	line-height: 1px;
	border-top: solid 1px #f5f8fa;
}

	div.hr.no-margin {
		margin-top: 0px;
		margin-bottom: 0px;
	}

.text-left {
	text-align: left !important;
}

.text-center {
	text-align: center !important;
}

.text-right {
	text-align: right !important;
}

.text-bottom {
	vertical-align: bottom !important;
}

.text-middle {
	vertical-align: middle !important;
}

.text-top {
	vertical-align: top !important;
}

.text-bold {
	font-weight: 700 !important;
}

.text-italic {
	font-style: italic;
}

.text-underline {
	text-decoration: underline;
}

.text-upper {
	text-transform: uppercase;
}

.text-small {
	font-size: 90% !important;
}

.text-xsmall {
	font-size: 80% !important;
}

.text-danger, .text-bad {
	color: #ea212d !important;
}

.text-success, .text-good {
	color: #229a8e !important;
}

.text-light, .text-neutral {
	color: #9aa3b0 !important;
}

.text-note {
	color: #866a31 !important;
}

.text-link {
	color: #229a8e !important;
}

.text-default {
	color: #2f3e59 !important;
}

.text-nowrap {
	white-space: nowrap;
}

.text-help {
	cursor: help;
}

.h-subtext {
	font-size: 11pt;
	color: #9aa3b0;
	display: block;
	margin-top: 3px;
}

	.h-subtext.text-small {
		font-size: 9pt !important;
	}

.text-overflow-dots {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	display: block;
}

.text-capitalize {
	text-transform: capitalize !important;
}

.text-no-wrap {
	white-space: nowrap;
}

.no-margin {
	margin: 0px !important;
}

.no-margin-top {
	margin-top: 0px !important;
}

.no-margin-bottom {
	margin-bottom: 0px !important;
}

.small-padding {
	padding: 9px !important;
}

.no-padding {
	padding: 0px !important;
}

.no-padding-top {
	padding-top: 0px !important;
}

.no-padding-bottom {
	padding-bottom: 0px !important;
}

.no-padding-left {
	padding-left: 0px !important;
}

.no-padding-right {
	padding-right: 0px !important;
}

.no-list-items {
	margin-top: 30px;
	color: #9aa3b0;
	text-align: center;
	font-size: 90%;
}

label, .label {
	display: inline-block;
	margin-bottom: 3px;
}

	label:not(.input-checkbox):not(.input-radio), .label:not(.input-checkbox):not(.input-radio) {
		color: #9aa3b0;
		font-size: 90%;
	}

.fw {
	display: block !important;
	width: 100%;
}

.hide, .filtered {
	display: none !important;
}

.disabled {
	opacity: .5;
	cursor: default;
}

.cursor-pointer {
	cursor: pointer;
}


/* TAGS */

.taggroup .tag {
	margin: 0px 3px 3px 0px;
}

.tag {
	display: inline-block;
	padding: 3px 4px 3px 4px;
	border-radius: 3px;
	font-size: 8pt;
	color: #ffffff !important;
	background-color: #229a8e;
	border: solid 1px transparent;
	white-space: nowrap;
}

	.tag.big {
		font-size: 10pt;
	}

	.tag.bg {
		background-color: #f5f8fa;
		border-color: #f5f8fa;
		color: inherit !important;
	}

	.tag.simple {
		background: none #f4f8fe;
		border-color: #f4f8fe;
		color: #229a8e !important;
	}

	.tag.clean {
		background-color: transparent;
		border-color: #229a8e;
		color: #229a8e !important;
	}

	.tag.neutral {
		background-color: #9aa3b0;
	}

	.tag.good {
		background-color: #229a8e;
	}

	.tag.warning {
		background-color: #feb030;
	}

	.tag.bad {
		background-color: #f44628;
	}

	.tag i {
		margin-left: 0px !important;
		margin-right: 0px !important;
	}

	.tag .text {
		margin-left: 3px;
	}


/* PROGRESSBAR */

.progressbar-outer {
	padding: 6px;
	width: 100%;
	position: relative;
	background-color: #f5f8fa;
	overflow: hidden;
}

.progressbar-inner {
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgba(0, 0, 0, .1);
}

	.progressbar-inner.warning {
		background-color: #feb030;
	}

	.progressbar-inner.good {
		background-color: #229a8e90;
	}


/* ICON GROUP */

.icon-btn-group {
	float: left;
	position: relative;
}

	.icon-btn-group:not(.right) .icon-btn {
		margin-right: 6px;
	}

	.icon-btn-group.right {
		float: right;
	}

		.icon-btn-group.right .icon-btn {
			margin-left: 6px;
		}

	.icon-btn-group::after {
		content: '';
		clear: both;
		display: table;
	}

.icon-btn {
	display: inline-block;
	position: relative;
	left: 0px;
	top: 0px;
	padding: 21px;
	margin: -6px -12px -6px -12px;
	border-radius: 50%;
	color: #9aa3b0;
	cursor: pointer;
	transition: all .3s;
}

	.icon-btn.inline {
		top: -6px;
		margin-bottom: -24px !important;
	}

.icon-btn-group .icon-btn.inline {
	top: 0px;
	margin-bottom: -24px !important;
}

.icon-btn > i {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.icon-btn > .dot {
	position: absolute;
	right: 9px;
	top: 9px;
}

.admin-nav-icon > .dot {
	position: absolute;
	right: -9px !important;
	top: -6px !important;
}

.icon-btn:hover, .icon-btn.active {
	background-color: #f5f8fa;
	color: #229a8e;
	text-decoration: none;
}

.icon-btn.danger:hover, .icon-btn.danger.active {
	color: #ea212d;
}

.icon-btn.success:hover, .icon-btn.success.active {
	color: #229a8e;
}

.icon-btn-group.clean > .icon-btn:hover, .icon-btn-group.clean > .icon-btn.active .icon-btn.clean:hover, .icon-btn.clean.active {
	background-color: transparent;
}

.modal-container .icon-btn {
	margin: -9px -6px -6px -6px;
}

/* CONTEXTMENU */

.ctxmenu-container {
	position: relative;
	display: inline-block;
}

	.ctxmenu-container.open .ctxmenu-overlay, .ctxmenu-container.open .ctxmenu {
		visibility: visible;
		opacity: 1;
	}

		.ctxmenu-container.open .ctxmenu:not(.left) {
			right: 0px;
		}

		.ctxmenu-container.open .ctxmenu.left {
			left: 0px;
		}

.ctxmenu-overlay {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100vh;
	background: rgba(53, 64, 82, .001);
	cursor: auto;
	z-index: 3000;
	opacity: 0;
	visibility: hidden;
}

.ctxmenu {
	position: absolute;
	right: 5px;
	top: 100%;
	width: 300px;
	overflow-y: auto;
	color: inherit;
	font-size: inherit;
	background-color: #ffffff;
	border: solid 1px #f2f3f6;
	box-shadow: 0 0px 5px rgba(0, 0, 0, 0.06);
	padding: 6px 12px 6px 12px;
	text-align: left;
	line-height: normal;
	z-index: 4000;
	cursor: auto;
	opacity: 0;
	visibility: hidden;
	transition: all .5s;
}

	.ctxmenu.left {
		right: auto;
		left: 0px;
	}

	.ctxmenu .block {
		padding: 12px 12px 12px 12px;
		margin: 0px -12px 0px -12px;
		transition: all .3s;
		display: block;
		color: #141d23;
	}

	.ctxmenu a.block:hover, .ctxmenu span.block:hover {
		background-color: #f5f8fa;
		cursor: pointer;
		text-decoration: none;
		/*color: #229a8e;*/
	}

	.ctxmenu.lookup-list a.block, .ctxmenu.lookup-list span.block {
		padding: 9px 6px 9px 6px;
	}

	.ctxmenu h2 {
		color: inherit;
		font-size: 90%;
		text-transform: uppercase;
		padding: 15px 12px 15px 12px;
		margin: 0px -12px 0px -12px;
	}

		.ctxmenu h2 i {
			margin-right: 15px;
		}

		.ctxmenu h2:not(:first-of-type) {
			margin-top: 24px;
		}

	.ctxmenu a i {
		margin-right: 9px;
		color: #9aa3b0;
		opacity: .7;
		font-size: 90%;
	}

	.ctxmenu i.fas, .ctxmenu i.far {
		/*opacity: .5;*/
	}


/* MODAL */

.modal-container {
	position: fixed;
	left: 0px;
	top: 0px;
	z-index: 4000;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .1);
	transition: opacity .5s;
	cursor: default;
}

	.modal-container:not(.open) {
		visibility: hidden;
		opacity: 0;
	}

	.modal-container.open {
		visibility: visible;
		opacity: 1;
	}

.modal {
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 5000;
	width: 90%;
	max-width: 90%;
	max-height: 90%;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

	.modal:not(.clean) {
		padding: 18px;
		background-color: #ffffff;
		box-shadow: 0 0px 2px rgba(0, 0, 0, 0.08);
	}

.modal-container.slide-in-right > .modal {
	left: auto;
	right: -100%;
	top: 0%;
	max-width: 100%;
	height: 100%;
	max-height: none;
	transform: none;
	transition: right .5s;
}

.modal-container.slide-in-right.open > .modal {
	right: 0%;
}

.modal-container > .modal > form, .modal-container > .modal > .modal-scroller {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.modal-fw {
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: none;
}

.modal-lg {
	width: 1200px;
}

.modal-md {
	width: 900px;
}

.modal-sm {
	width: 600px;
}

.modal-xs {
	width: 450px;
}

.modal-sheet {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.modal-header {
	padding: 9px 6px 6px 6px;
	position: relative;
	margin-bottom: 18px;
	border-bottom: solid 0px #f5f8fa;
}

	.modal-header h2 {
		margin-bottom: 18px;
		color: inherit;
		text-overflow: ellipsis;
		overflow: hidden;
		white-space: nowrap;
	}

	.modal-header .icon-btn-group.right .icon-btn {
		margin-left: 0px;
	}

.modal-content {
	padding: 0px 6px 6px 6px;
	text-align: left;
	height: 100%;
	overflow: auto;
}

.modal-opener {
	cursor: pointer;
}


/* TABGROUPS */

.tabgroup {
	border-radius: 3px;
}

	.tabgroup .tabs {
		margin-bottom: 12px;
	}

		.tabgroup .tabs .tab {
			margin-right: 9px;
			font-size: 90%;
			color: #9aa3b0;
			padding: 3px;
			border-bottom: solid 2px transparent;
			text-decoration: none;
		}

			.tabgroup .tabs .tab.active {
				color: #229a8e;
				border-bottom-color: #229a8e;
			}

	.tabgroup .tabsheets {
	}

		.tabgroup .tabsheets .tabsheet {
			padding: 9px;
		}

			.tabgroup .tabsheets .tabsheet:not(.active) {
				display: none;
			}



/* FORM/INPUTS */

form {
	margin: 0px;
}

.input-container {
	position: relative;
}

.input {
	width: 100%;
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	padding: 9px;
	background: none #f5f8fa;
	border: solid 1px #f5f8fa;
	border-radius: 3px;
	outline: 0;
	resize: none;
	transition: all .3s;
	-webkit-appearance: none;
}

	.input:focus {
		background-color: #f4f8fe;
		/*
		border-color: #fbfcfc;
		*/
	}

	.input.input-validation-error {
		/*color: #ea212d;*/
	}

	.input.lookup {
		padding-right: 30px;
	}

		.input.lookup.selectlist, .input.lookup.picklist {
			cursor: pointer;
		}

	.input.clean {
		background-color: transparent;
		border-color: transparent;
	}

	.input.headersearch {
		background: #ffffff;
		border-width: 0px;
	}

	.input.inline {
		margin-top: -9px;
		margin-bottom: -9px;
	}

.input-radio, .input-checkbox {
	cursor: pointer;
	opacity: 1 !important;
	margin-top: 3px;
	margin-left: 30px;
}

	.input-radio input, .input-checkbox input {
		display: none;
	}

	.input-radio span::before, .input-checkbox span::before {
		font-family: 'Font Awesome 5 Free';
		font-weight: 900;
		color: #f5f8fa;
		background-color: #f5f8fa;
		margin-left: -30px;
		margin-right: 6px;
		padding: 5px 4px 4px 5px;
		transition: color .3s;
	}

	.input-radio span::before {
		border-radius: 50%;
		content: '\f111';
		font-size: 7pt;
		border: solid 2px #f5f8fa;
	}

	.input-checkbox span::before {
		border-radius: 3px;
		content: '\f00c';
	}

	.input-radio input:checked + span::before, .input-checkbox input:checked + span::before {
		color: #229a8e;
	}

	.input-radio.danger input:checked + span::before, .input-checkbox.danger input:checked + span::before {
		color: #ea212d;
	}

	.input-checkbox.checkbox-delete span::before {
		font-weight: 400;
		background-color: transparent;
		color: inherit;
		font-size: inherit;
		border-radius: 0px;
		padding: unset;
		content: '\f2ed';
		transition: color .3s;
	}

	.input-checkbox.checkbox-delete input:checked + span::before {
		content: '\f2ed';
		color: #ea212d;
	}

	.input-checkbox.checkbox-toggle span::before {
		font-weight: 700;
		background-color: transparent;
		color: #9aa3b0;
		font-size: 20pt;
		border-radius: 0px;
		padding: unset;
		content: '\f204';
		transition: color .3s;
	}

	.input-checkbox.checkbox-toggle input:checked + span::before {
		content: '\f205';
		color: #229a8e;
	}

	.input-checkbox.tag {
		margin: 0px 3px 6px 0px;
	}

		.input-checkbox.tag span {
			font-size: 10pt;
		}

			.input-checkbox.tag span::before {
				display: none;
			}

.input-icon {
	position: absolute;
	right: 7px;
	top: 10px;
	z-index: 20;
}

	.input-icon + .input {
		padding-right: 30px;
	}

	.input-icon.left {
		left: 7px;
		right: auto;
	}

		.input-icon.left + .input {
			padding-left: 36px;
			padding-right: 9px;
		}

	.input-icon:not(.left).second {
		right: 21px;
		top: 7px;
	}

.input.upload {
	padding-right: 66px;
}

.input-screener {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: .5;
}

.fileupload-data, .fileupload-file {
	display: none;
}

span.input-icon {
	color: #229a8e;
}

.btn {
	border: solid 1px #229a8e;
	border-radius: 3px;
	outline: 0;
	background: none #229a8e;
	color: #ffffff;
	font-size: inherit;
	font-family: inherit;
	padding: 7px;
	cursor: pointer;
	transition: background .3s;
	text-align: center;
	opacity: .9;
	-webkit-appearance: none;
	transition: all .3s;
}

	.btn:hover {
		color: #ffffff;
		text-decoration: none;
		opacity: 1;
	}

	.btn.simple {
		background: none #f4f8fe;
		border-color: #f4f8fe;
		color: #229a8e;
	}

		.btn.simple:hover {
			background-color: #f4f8fe;
			border-color: #f4f8fe;
		}

	.btn.clean {
		background: none transparent;
		color: #9aa3b0;
		border-color: transparent;
	}

		.btn.clean:hover {
		}

	.btn.danger {
		background: none #ea212d;
		border-color: #ea212d;
		color: #ffffff;
	}

		.btn.danger.simple {
			background: none #ffffff;
			color: #ea212d;
		}

			.btn.danger.simple:hover {
				color: #ffffff;
			}

		.btn.danger.clean {
			background: none #ffffff;
			color: #9aa3b0;
			border-color: transparent;
		}

			.btn.danger.clean:hover {
				background: none #ffffff;
				color: #ea212d;
				border-color: transparent;
			}

		.btn.danger:hover {
			background: none #e2202c;
		}

	.btn.success {
		background: none #229a8e;
		border-color: #229a8e;
		color: #ffffff;
	}

		.btn.success.simple {
			background: none #ffffff;
			color: #229a8e;
		}

			.btn.success.simple:hover {
				color: #ffffff;
			}

::placeholder {
	color: #9aa3b0;
	font-size: inherit;
}

.validation-summary-errors, .field-validation-error {
	color: #ea212d;
	font-size: 90%;
}

	.validation-summary-errors ul {
		padding-left: 18px;
	}

.field-validation-error {
	padding: 6px 6px 6px 0px;
	display: block;
	text-align: left;
}


/* BOX-CONTAINERS */

.box {
	background-color: #ffffff;
	box-shadow: 0 0px 5px rgba(0, 0, 0, 0.02);
	border-radius: 3px;
}

a.box:hover {
	background-color: #f5f8fa !important;
}

.box-bg-1, .box-bg-info {
	background-color: #f5f8fa;
}

.box-bg-good {
	background-color: #e9f5f4 !important;
	color: #229a8e !important;
}

.box-bg-warning {
	background-color: #fbf0d6 !important;
	color: #866a31 !important;
}

.box-bg-danger {
	background-color: #fbe0e4 !important;
	color: #ea212d !important;
}

.box-bg-info-danger {
	background-color: #f5f8fa;
	color: #ea212d !important;
}


/* GRID */

.grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	padding: 0px;
	margin: 0px -6px 0px -6px;
}

	.grid.flex-start {
		justify-content: flex-start;
	}

		.grid.flex-start .griditem {
			margin-left: 6px;
			margin-right: 6px;
		}

	.grid.no-equal-height {
		align-items: flex-start;
	}

.griditem {
	margin-bottom: 12px;
	padding: 24px;
	position: relative;
}

	.griditem.no-padding {
		padding: 0px;
	}

	.griditem.border {
		border: solid 1px #f5f8fa;
	}

.grid.datagrid > .griditem {
	padding: 6px 6px 6px 0px;
}

.grid.formgrid > .griditem {
	padding: 3px 0px 3px 0px;
}

.grid:not(.fixed-margin) > .griditem:last-of-type {
	margin-bottom: 0px;
	border: solid 0px red;
}

.griditem.buttons {
	float: none;
	clear: both;
	margin-top: 18px;
	margin-bottom: 0px;
	display: flex;
	justify-content: right;
}

	.griditem.buttons .btn {
		display: inline-block;
		min-width: 100px;
		text-decoration: none;
	}

		.griditem.buttons .btn:not(.left):not(:last-child) {
			margin-right: 12px;
		}

		.griditem.buttons .btn.left {
			margin-left: 0;
			margin-right: auto;
		}

			.griditem.buttons .btn.left.clean {
				min-width: auto;
			}

.grid.formgrid h2 {
	margin-bottom: 3px;
}

.gridheader::after {
	content: '';
	clear: both;
	display: table;
	margin-bottom: 15px;
}

.griditem.col-0 {
	width: 0px;
	margin: 0px;
	overflow: hidden;
}

.griditem.col-1 {
	width: calc(8.3333% - 12px);
}

.griditem.col-2 {
	width: calc(16.6666% - 12px);
}

.griditem.col-3 {
	width: calc(24.9999% - 12px);
}

.griditem.col-4 {
	width: calc(33.3332% - 12px);
}

.griditem.col-5 {
	width: calc(41.6665% - 12px);
}

.griditem.col-6 {
	width: calc(49.9998% - 12px);
}

.griditem.col-7 {
	width: calc(58.3331% - 12px);
}

.griditem.col-8 {
	width: calc(66.6664% - 12px);
}

.griditem.col-9 {
	width: calc(74.9997% - 12px);
}

.griditem.col-10 {
	width: calc(83.333% - 12px);
}

.griditem.col-11 {
	width: calc(91.6663% - 12px);
}

.griditem.col-12 {
	width: calc(100% - 12px);
}


/* TABLE */

.table {
	display: table;
	width: 100%;
}

	.table.fixed {
		table-layout: fixed;
	}

.table-head {
	display: table-header-group;
}

.table-body {
	display: table-row-group;
}

.table-row {
	display: table-row;
}

	.table-row:hover {
		background-color: #f9fbff !important;
	}

	.table.no-hover > .table-row, .table.no-hover > .table-row:hover, .table-row.no-hover:hover, .table-row.header, .table-row.footer {
		background-color: transparent !important;
	}

	.table-row.header {
		color: #9aa3b0;
		text-transform: uppercase;
		font-size: 90%;
	}

		.table-row.header .table-cell.col-sort {
			cursor: ns-resize;
			user-select: none;
		}

		.table-row.header .table-cell .fa-check {
			cursor: pointer;
			user-select: none;
		}

.table:not(.no-border) > .table-row.header:not(.no-border) > .table-cell {
	border-width: 2px;
}

.table-row.pick {
	cursor: pointer;
}

.table-row.footer {
	font-weight: bold;
}

	.table-row.footer .table-cell {
		border-bottom-width: 0px;
	}

.table-row.no-padding-bottom .table-cell {
	padding-bottom: 0px;
}

.table.no-border > .table-body > .table-row > .table-cell, .table.no-border > .table-row > .table-cell, .table-row.no-border > .table-cell, .table-cell.no-border {
	border-width: 0px;
}

.table.no-padding > .table-row > .table-cell, .table-row.no-padding > .table-cell, .table-cell.no-padding {
	padding: 0px;
}

.table.small-padding > .table-row > .table-cell, .table-row.small-padding > .table-cell, .table-cell.small-padding {
	padding: 9px;
}

.table-cell {
	display: table-cell;
	border-bottom: solid 1px #f5f8fa;
	padding: 15px;
	position: relative;
	vertical-align: middle;
}

.table.boxed > .table-row > .table-cell {
	border: solid 2px #ffffff;
}

.table-cell.content-fit {
	width: 1px;
	white-space: nowrap;
}

.table-cell.indent {
	padding-left: 24px;
}

.table-cell.actions {
	text-align: right;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	width: 1px;
	white-space: nowrap;
}

	.table-cell.actions > i {
		margin-left: 9px;
		margin-top: 2px;
	}

	.table-cell.actions > a, .table-cell.actions > span:not(.tag):not(.icon-btn), .table-cell.actions > .action {
		color: #229a8e;
		cursor: pointer;
		display: inline-block;
	}

	.table-cell.actions .icon-btn {
		margin-top: 0px;
	}

.table-cell.avatars {
	width: 70px;
	padding-right: 0px;
	padding-top: 9px;
	padding-bottom: 9px;
	white-space: nowrap;
}

	.table-cell.avatars .avatar {
		margin-top: 3px;
	}

.table.list > .table-row:not(.header):not(.footer) {
	background-color: #ffffff;
}

	.table.list > .table-row:not(.header):not(.footer):hover {
		background-color: rgba(255, 255, 255, .5) !important
	}

	.table.list > .table-row:not(.header):not(.footer) > .table-cell {
		border-bottom-width: 3px;
	}


/* LOGIN PAGE */

body.login {
	background-image: url('../images/login-bg.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center right;
}

	body.login main {
		padding: 0px;
	}

	body.login .logo {
		margin-top: 30px;
		margin-bottom: 60px;
		max-height: 50px;
	}



/* RESPONSIVE */

@media (max-width: 1200px) {

	.griditem.no-padding-lg {
		padding: 0px;
	}

	.griditem.no-margin-bottom-lg {
		margin-bottom: 0px;
	}

	.griditem.col-lg-0 {
		width: 0px;
		margin: 0px;
		overflow: hidden;
	}

	.griditem.col-lg-1 {
		width: calc(8.3333% - 12px);
	}

	.griditem.col-lg-2 {
		width: calc(16.6666% - 12px);
	}

	.griditem.col-lg-3 {
		width: calc(24.9999% - 12px);
	}

	.griditem.col-lg-4 {
		width: calc(33.3332% - 12px);
	}

	.griditem.col-lg-5 {
		width: calc(41.6665% - 12px);
	}

	.griditem.col-lg-6 {
		width: calc(49.9998% - 12px);
	}

	.griditem.col-lg-7 {
		width: calc(58.3331% - 12px);
	}

	.griditem.col-lg-8 {
		width: calc(66.6664% - 12px);
	}

	.griditem.col-lg-9 {
		width: calc(74.9997% - 12px);
	}

	.griditem.col-lg-10 {
		width: calc(83.333% - 12px);
	}

	.griditem.col-lg-11 {
		width: calc(91.6663% - 12px);
	}

	.griditem.col-lg-12 {
		width: calc(100% - 12px);
	}

	.no-padding-lg {
		padding: 0px !important;
	}

	.no-margin-lg {
		margin: 0px !important;
	}

	.show-lg {
		display: inline-block !important;
	}

	.table-row.show-lg {
		display: table-row !important;
	}

	.table-cell.show-lg {
		display: table-cell !important;
	}

	.hide-lg, .table-row.hide-lg, .table-cell.hide-lg {
		display: none !important;
	}
}


@media (max-width: 900px) {

	#nav {
		top: auto;
		bottom: 0px;
		height: auto;
		width: 100%;
		box-shadow: 0 0px 5px rgba(0, 0, 0, 0.08);
	}

		#nav ul {
			display: table;
			table-layout: fixed;
			width: 100%;
		}

			#nav ul li {
				display: table-cell;
			}

				#nav ul li a {
					padding: 9px 3px 9px 3px;
				}

	.nav-dashboard-logo {
		display: none !important;
	}

	.nav-dashboard-icon {
		display: table-cell;
	}

	#site {
		padding-left: 12px;
		padding-right: 12px;
		padding-bottom: 51px;
	}

	.griditem.col-md-0 {
		width: 0px;
		margin: 0px;
		overflow: hidden;
	}

	.griditem.col-md-1 {
		width: calc(8.3333% - 12px);
	}

	.griditem.col-md-2 {
		width: calc(16.6666% - 12px);
	}

	.griditem.col-md-3 {
		width: calc(24.9999% - 12px);
	}

	.griditem.col-md-4 {
		width: calc(33.3332% - 12px);
	}

	.griditem.col-md-5 {
		width: calc(41.6665% - 12px);
	}

	.griditem.col-md-6 {
		width: calc(49.9998% - 12px);
	}

	.griditem.col-md-7 {
		width: calc(58.3331% - 12px);
	}

	.griditem.col-md-8 {
		width: calc(66.6664% - 12px);
	}

	.griditem.col-md-9 {
		width: calc(74.9997% - 12px);
	}

	.griditem.col-md-10 {
		width: calc(83.333% - 12px);
	}

	.griditem.col-md-11 {
		width: calc(91.6663% - 12px);
	}

	.griditem.col-md-12 {
		width: calc(100% - 12px);
	}

	.no-padding-md {
		padding: 0px !important;
	}

	.no-margin-md {
		margin: 0px !important;
	}

	.show-md {
		display: inline-block !important;
	}

	.table-row.show-md {
		display: table-row !important;
	}

	.table-cell.show-md {
		display: table-cell !important;
	}

	.hide-md, .table-row.hide-md, .table-cell.hide-md {
		display: none !important;
	}

	.grid.survey .table.fixed .table-cell {
		display: block;
	}
}



@media (max-width: 600px) {

	#nav ul li a {
		padding: 15px 6px 12px 6px;
	}

		#nav ul li a .text {
			display: none;
		}

	.table-cell.avatars {
		white-space: unset;

	}

	.modal-container {
		background-color: #ffffff;
	}

	.modal {
		max-width: 100%;
	}

	.modal:not(.clean) {
		border-width: 0px;
		box-shadow: none;
	}

	.ctxmenu-overlay {
		background-color: rgba(0, 0, 0, .2);
	}

	.ctxmenu, .ctxmenu.left {
		position: fixed;
		left: 0px;
		right: 0px;
		top: auto;
		bottom: -25%;
		color: #ffffff;
		width: 100vw;
		height: auto;
		background-color: #ffffff;
		text-align: left;
		transition: bottom .5s;
		padding: 12px 0px 12px 0px;
	}

	.ctxmenu-container.open .ctxmenu {
		bottom: 0px;
	}

	.ctxmenu .block {
		width: 100%;
		margin: 0px;
		padding: 18px;
		transition: color .3s;
	}

	.ctxmenu a.block:hover, .ctxmenu span.block:hover {
	}

	.ctxmenu .block i {
		margin: 3px 9px 0px 0px;
	}

	.ctxmenu h2 {
		text-align: left;
		font-size: inherit;
	}

		.ctxmenu h2 i {
			margin-right: 6px;
		}

	.ctxmenu div.hr {
	}

	.griditem {
		padding: 18px;
	}

		.griditem.col-sm-0 {
			width: 0px;
			margin: 0px;
			overflow: hidden;
		}

		.griditem.col-sm-1 {
			width: calc(8.3333% - 12px);
		}

		.griditem.col-sm-2 {
			width: calc(16.6666% - 12px);
		}

		.griditem.col-sm-3 {
			width: calc(24.9999% - 12px);
		}

		.griditem.col-sm-4 {
			width: calc(33.3332% - 12px);
		}

		.griditem.col-sm-5 {
			width: calc(41.6665% - 12px);
		}

		.griditem.col-sm-6 {
			width: calc(49.9998% - 12px);
		}

		.griditem.col-sm-7 {
			width: calc(58.3331% - 12px);
		}

		.griditem.col-sm-8 {
			width: calc(66.6664% - 12px);
		}

		.griditem.col-sm-9 {
			width: calc(74.9997% - 12px);
		}

		.griditem.col-sm-10 {
			width: calc(83.333% - 12px);
		}

		.griditem.col-sm-11 {
			width: calc(91.6663% - 12px);
		}

		.griditem.col-sm-12 {
			width: calc(100% - 12px);
		}

		.griditem.buttons {
			text-align: center;
			flex-direction: column-reverse;
		}

			.griditem.buttons.no-reverse {
				flex-direction: column;
			}

			.griditem.buttons .btn {
				width: 100%;
				margin: 0px 0px 9px 0px !important;
			}

	.no-padding-sm {
		padding: 0px !important;
	}

	.no-margin-sm {
		margin: 0px !important;
	}

	.show-sm {
		display: inline-block !important;
	}

	.table-row.show-sm {
		display: table-row !important;
	}

	.table-cell.show-sm {
		display: table-cell !important;
	}

	.hide-sm, .table-row.hide-sm, .table-cell.hide-sm {
		display: none !important;
	}
}


@media (-webkit-min-device-pixel-ratio: 2) {

	body.mobile .input-icon {
		top: 12px;
	}
}

@media print {

	.hide-print {
		display: none !important;
	}
}


/* TINY */

.tox-tinymce-aux {
	z-index: 9999 !important;
}

.tox-dialog-wrap__backdrop {
	background: rgba(53, 64, 82, .07) !important;
}
