/* ------ Aspect Ratio ------- */
[style*="--aspect-ratio"] > :first-child {
	width: 100%;
}
[style*="--aspect-ratio"] > img {
	height: auto;
}
@supports (--custom: property) {
	[style*="--aspect-ratio"] {
		position: relative;
	}
	[style*="--aspect-ratio"]::before {
		content: "";
		display: block;
		padding-bottom: calc(100% / (var(--aspect-ratio)));
	}
	[style*="--aspect-ratio"] > :first-child {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
	}
}
/* ------ Aspect Ratio End ------- */

/* ------ Loaders ------- */
.lds-facebook {
	display: inline-block;
	position: relative;
	width: 80px;
	height: 80px;
}
.lds-facebook div {
	display: inline-block;
	position: absolute;
	left: 8px;
	width: 12px;
	background: #777;
	animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite;
}
.lds-facebook div:nth-child(1) {
	left: 8px;
	animation-delay: -0.24s;
}
.lds-facebook div:nth-child(2) {
	left: 28px;
	animation-delay: -0.12s;
}
.lds-facebook div:nth-child(3) {
	left: 48px;
	animation-delay: 0;
}
@keyframes lds-facebook {
	0% {
		top: 8px;
		height: 64px;
	}
	50%,
	100% {
		top: 24px;
		height: 32px;
	}
}

button.loading .loader {
	display: block;
}
button.loading span:first-child {
	display: none;
}

button .loader {
	position: relative;
	display: none;
	width: 24px;
	height: 24px;
	font-size: 5px;
	text-indent: -9999em;
	margin: 3px auto;
	border: 3px solid #ffffff55;
	border-left-color: #ffbd99;
	border-radius: 50%;
	transform: translateZ(0);
	-webkit-animation: load8 1.1s linear infinite;
	animation: load8 1.1s linear infinite;
}
@-webkit-keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes load8 {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

.pagingloadmore {
	margin: 0 auto;
	text-align: center;
}

.overlay {
	display: none;
	position: absolute;
	/* Full-screen overlay */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.85);
	/* Semi-transparent black */
	display: flex;
	justify-content: center;
	/* Center horizontally */
	align-items: center;
	/* Center vertically */
	z-index: 1000;
	/* Ensure it's above other content */
}

.spinner {
	border: 4px solid rgba(0, 0, 0, 0.1);
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border-left-color: #09f;
	animation: spin 1s ease infinite;
}

@keyframes spin {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}

/* ------ Loaders End ------- */

/* --- Form validation ------------------------------------ */
.validationerrorline {
	box-shadow: #f00 0px -4px inset !important;
	/*
	box-shadow: #f00 5px 0px inset !important;
	box-shadow: #f00 5px 0px inset, #f00 -5px 0px inset !important;
	*/
}
.validationerror {
	background-color: #ffcdcd !important;
	border: 1px solid red !important;
}
.visibleerror {
	display: block !important;
}

/* --------------------------------------- */
.template {
	position: relative;
	display: inline-block;
	outline: 1px dashed #d00;
	padding: 0;
	margin: -1px;
}
.templatefile {
	position: absolute;
	background-color: #dddddd;
	color: #000000;
	font-size: 11px;
	font-family: tahoma;
	left: 0px;
	top: 0px;
	padding: 0px;
}

.hide {
	display: none !important;
}

/* -------- Custom checkbox --------- */
/* Customize the label (the container) */
.chkcontainer {
	display: block;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* Hide the browser's default checkbox */
.chkcontainer input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

/* Create a custom checkbox */
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
}

/* On mouse-over, add a grey background color */
.chkcontainer:hover input ~ .checkmark {
	background-color: #ccc;
}

/* When the checkbox is checked, add a blue background */
.chkcontainer input:checked ~ .checkmark {
	background-color: #2196f3;
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.chkcontainer input:checked ~ .checkmark:after {
	display: block;
}

/* Style the checkmark/indicator */
.chkcontainer .checkmark:after {
	left: 9px;
	top: 5px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
/* -------- Custom checkbox End --------- */

.btn-group {
	position: relative;
	display: inline-flex;
	vertical-align: middle;
}

.pagemain {
	padding-bottom: 80px;
	padding-top: 80px;
	flex-grow: 1;
}
.lightgreybg {
	background-color: #eee;
}
html {
	height: 100%;
}
body {
	min-height: 100%;
	display: flex;
	flex-direction: column;
}
.menu ul li a i {
	margin-left: 3px;
	font-size: 13px;
}
/* -------- Utility --------- */
.d-flex {
	display: flex;
}
.m-0 {
	margin: 0 !important;
}
.m-x-10 {
	margin-left: 10px;
	margin-right: 10px;
}
.m-y-10 {
	margin-top: 10px;
	margin-bottom: 10px;
}
.m-l-10 {
	margin-left: 10px;
}
.m-r-10 {
	margin-right: 10px;
}
.m-t-0 {
	margin-top: 0;
}
.m-t-10 {
	margin-top: 10px;
}
.m-t-20 {
	margin-top: 20px;
}
.m-t-30 {
	margin-top: 30px;
}
.m-b-10 {
	margin-bottom: 10px;
}
.m-b-40 {
	margin-bottom: 40px;
}
.p-30 {
	padding: 30px;
}
.p-t-10 {
	padding-top: 10px;
}
.p-t-20 {
	padding-top: 20px;
}
.p-t-30 {
	padding-top: 30px;
}
.p-t-40 {
	padding-top: 40px;
}
.p-t-50 {
	padding-top: 50px;
}
.p-t-60 {
	padding-top: 60px;
}
.p-t-70 {
	padding-top: 70px;
}
.p-b-10 {
	padding-bottom: 10px;
}
.p-b-20 {
	padding-bottom: 20px;
}
.p-b-30 {
	padding-bottom: 30px;
}
.p-b-130 {
	padding-bottom: 130px;
}

.w10 {
	width: 10%;
}
.w30 {
	width: 30%;
}
.w40 {
	width: 40%;
}
.w50 {
	width: 50%;
}
.w60 {
	width: 60%;
}
.w75 {
	width: 75%;
}
.w100 {
	width: 100%;
}
.text-left {
	text-align: left;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.nowrap {
	white-space: nowrap;
}
.line-height-0 {
	line-height: 0;
}
