.loader,
.loader.overlay {
	
	--overlay: rgba(0, 0, 0, .7);
	--overlay: transparent;
	
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	
	width: 100%;
	height: 100%;
	
	background-color: var(--overlay);
	
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
}

.loader.row {
	width: 100%;
	height: 3rem;
	padding-top: var(--itemSpacing);
	padding-bottom: var(--itemSpacing);
	
	position: relative;
	top: 0;
	left: 0;
	
	display: flex;
	display: -webkit-flex;
	align-items: center;
	-webkit-align-items: center;
	-moz-align-items: center;
	justify-content: center;
	-webkit-justify-content: center;
	-moz-justify-content: center;
}

.spinner,
.spinner:after {
	border-radius: 50%;
	width: 2rem;
	height: 2rem;
}
.spinner {
	
	--border: #fff;
	--border-shift: rgba(255, 255, 255, 0.2);
	
	/*margin: 60px auto;*/
	font-size: 10px;
	position: relative;
	text-indent: -9999em;
	border-top: .5rem solid var(--border-shift);
	border-right: .5rem solid var(--border-shift);
	border-bottom: .5rem solid var(--border-shift);
	border-left: .5rem solid var(--border);
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
animation: load8 1.1s infinite linear;
}
@-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);
	}
}
