.progress-indicator {
	position: absolute;
	top: 0;
	height: 5px;
	display: block;
	width: 100%;
	background-color: $primary-color;
	background-clip: padding-box;
	overflow: hidden;

	&.active {
		position: fixed;
		z-index: 9999;
		background-color: #303039;

		.indeterminate {
			background-color: $primary-color;

			&:before {
				content: '';
				position: absolute;
				background-color: inherit;
				top: 0;
				left: 0;
				bottom: 0;
				-webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
				   -moz-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
						animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
			}

			&:after {
				content: '';
				position: absolute;
				background-color: inherit;
				top: 0;
				left: 0;
				bottom: 0;
				-webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
				   -moz-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
						animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
				-webkit-animation-delay: 1.15s;
				   -moz-animation-delay: 1.15s;
						animation-delay: 1.15s;
			}
		}
	}
}

@-webkit-keyframes indeterminate {
	0% {
		left: -35%;
		right: 100%;
	}

	60% {
		left: 100%;
		right: -90%;
	}

	100% {
		left: 100%;
		right: -90%;
	}
}

@keyframes indeterminate {
	0% {
		left: -35%;
		right: 100%;
	}

	60% {
		left: 100%;
		right: -90%;
	}

	100% {
		left: 100%;
		right: -90%;
}
}

@-webkit-keyframes indeterminate-short {
	0% {
		left: -200%;
		right: 100%;
	}

	60% {
		left: 107%;
		right: -8%;
	}

	100% {
		left: 107%;
		right: -8%;
	}
}

@keyframes indeterminate-short {
	0% {
		left: -200%;
		right: 100%;
	}

	60% {
		left: 107%;
		right: -8%;
	}

	100% {
		left: 107%;
		right: -8%;
	}
}
