html {
	visibility: hidden;
	position: relative;
}

.font-loader {
	visibility: visible;
	position: absolute;
	top: 0px;
	left: 0px;
	z-index: 9999;
	height: 100vh;
	width: 100vw;
	background: rgba(0, 0, 0, 0.7);
}

html > body {
	overflow: hidden;
}

.wf-active {
	visibility: visible !important;
}

.wf-inactive {
	visibility: visible !important;
}
.wf-active::before {
	display: none !important;
}

.font-loader-spinner {
	position: absolute;
	top: calc(50% - 25px);
	left: calc(50% - 25px);
	width: 50px;
	padding: 8px;
	aspect-ratio: 1;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.7);
	--_m: conic-gradient(#0000 10%, #000), linear-gradient(#000 0 0) content-box;
	-webkit-mask: var(--_m);
	mask: var(--_m);
	-webkit-mask-composite: source-out;
	mask-composite: subtract;
	animation: l3 1s infinite linear;
}

.wf-active .font-loader {
	display: none;
}

.wf-inactive .font-loader {
	display: none;
}

.wf-active > body {
	overflow: scroll !important;
}

.wf-inactive > body {
	overflow: scroll !important;
}

@keyframes l3 {
	to {
		transform: rotate(1turn);
	}
}
