.required:not(.show-content):not(.input-group):not(.switch):not(.requiredDisabled):after {
    color: #c91834;
    content: "*";
    display: inline-block;
	margin-left: 5px;
}

[required]:after {
	color: #c91834;
	content: "*";
	display: inline-block;
}

.loader {
	border: 2px solid transparent;
	border-top: 2px solid #426ae4;
	border-bottom: 2px solid #25c0db;
	border-left: 2px solid #02f8c1;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	display: inline-block;
	width: 25px;
	height: 25px;
}

.m-auto {
	margin: auto;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.w-100 {
	width: 100%;
}

@keyframes rotate {
	0% {
		width: 8rem;
		height: 8rem;
		transform: rotate(0deg);
	}
	50% {
		width: 4.75rem;
		height: 4.75rem;
		transform: rotate(180deg);
	}
	100% {
		width: 8rem;
		height: 8rem;
		transform: rotate(360deg);
	}
}

.skeleton {
	background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
	background-size: 200% 100%;
	animation: loading 1.5s infinite;
	border-radius: 4px;
}

@keyframes loading {
	0% {
		background-position: 200% 0;
	}

	100% {
		background-position: -200% 0;
	}
}

.footer {
	width: 100%;
	line-height: 30px;
	color: #f5f5f5;
	text-align: center;
}