#ui-loading-container {
	display: flex;
	display: -webkit-box;
	flex-direction: column;

	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;

	align-items: center;
	-webkit-box-align: center;

	justify-content: center;
	-webkit-box-pack: center;

	opacity: 1;
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s linear;
	transition: all 0.3s linear;
}

	#ui-loading-container.inactive {
		opacity: 0;
	}

.ui-loading-timer-container {
	position: relative;
}

.ui-loading-timer {
	width: 5em;
	height: 5em;
	display: flex;

	align-items: center;

	justify-content: center;

	display: -webkit-box;
	-webkit-box-align: center;
	-webkit-box-pack: center;

	border: .5em solid #f5f5f5;
	border-radius: 100%;
	position: relative;
}
.ui-loading-timer:before, .ui-loading-timer:after {
	content: '';
	display: block;
	position: absolute;
}
.ui-loading-timer:before {
	height: .5em;
	width: .5em;
	top: -1.48em;
	border-radius: 100%;
	left: 50%;
	margin-left: -0.75em;
	background: #666666;
	border: .5em solid #f5f5f5;
}
.ui-loading-timer:after {
	width: 1em;
	height: 1em;
	background: #f5f5f5;
	right: 0;
	top: -0.25em;
	border-radius: 100%;
}

.ui-loading-hand {
	background: #666666;
	height: 1em;
	width: 1em;
	position: relative;
	display: flex;
	display: -webkit-box;

	justify-content: center;
	-webkit-box-pack: center;

	border-radius: 100%;
	border: 1.3em solid #f5f5f5;
}
.ui-loading-hand:before, .ui-loading-hand:after {
	content: '';
	display: block;
	position: relative;
}
.ui-loading-hand:before {
	width: .325em;
	height: 1.5em;
	top: -1.35em;
	background: #666666;
	-webkit-animation: countdown 5s linear infinite;
	-webkit-transform-origin: 50% 125%;
	-moz-animation: countdown 5s linear infinite;
	-moz-transform-origin: 50% 125%;
}

@-webkit-keyframes countdown {
	0% {
		-webkit-transform: rotate(0deg);
	}

	100% {
		-webkit-transform: rotate(360deg);
	}
}

@-moz-keyframes countdown {
	0% {
		-moz-transform: rotate(0deg);
	}

	100% {
		-moz-transform: rotate(360deg);
	}
}

.ui-loading-indicator-container {
	position: relative;
	width: 250px;
	height: 50px;
	margin: 40px 0 0;
	background: rgba(0, 0, 0, 0.1);
	pointer-events: none;
	overflow: hidden;
}

.ui-loading-indicator-bar {
	position: absolute;
	height: 100%;
	width: 100%;
	background: #f5f5f5;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	-webkit-transition: -webkit-transform 0.5s linear;
	transition: transform 0.5s linear;
}
