@mixin lui_loader($inverted: false, $size: 1em, $thickness: 2px, $speed: 0.5s) {
	display: inline-block;
	position: relative;

	&:before, &:after {
		box-sizing: border-box;
		display: block;
		content: "";
		width: $size;
		height: $size;
		border-radius: 50%;
		border-width: $thickness;
		border-style: solid;
	}

	&:after {
		position: absolute;
		@include lui_is_animated(spin, true);
		top: 50%; margin-top: -$size/2; left: 50%; margin-left: -$size/2;
		animation-timing-function: linear;
	}

	@if $inverted {
		&:before { border-color: rgba(255, 255, 255, 0.25); }
		&:after { border-color: rgba(255, 255, 255, 0.75) transparent transparent transparent; }
	}
	@else {
		&:before { border-color: rgba(0, 0, 0, 0.25); }
		&:after { border-color: rgba(0, 0, 0, 0.5) transparent transparent transparent; }
	}

	// Sizing support
	@include lui_supports_sizing();
}

#{$prefix}.loader:not(.inverted) {
	@include lui_loader();
}

#{$prefix}.loader.inverted {
	@include lui_loader(true);
}
