.spinner {
	position: absolute;
	z-index: 9999;

	display: block;
	opacity: 0.0;

	-webkit-transition: opacity 300ms ease-in-out;
	-moz-transition: opacity 300ms ease-in-out;
	-ms-transition: opacity 300ms ease-in-out;
	-o-transition: opacity 300ms ease-in-out;
	transition: opacity 300ms ease-in-out;
}

.has_spinner {
	-webkit-transition: opacity 300ms ease-in-out;
	-moz-transition: opacity 300ms ease-in-out;
	-ms-transition: opacity 300ms ease-in-out;
	-o-transition: opacity 300ms ease-in-out;
	transition: opacity 300ms ease-in-out;
}
.has_spinner.spinner_visible { opacity: 0.5; }

.spinner.fixed {
	position: fixed;
	z-index: 99999;
}

.spinner.visible { opacity: 1.0; }

.spinner > div {
	position: absolute;
	top: 50%;
	left: 50%;

	width: 0px;
	height: 0px;
}

.spinner hr {
	display: block;
	position: absolute;
	margin: 0px;
	left: 0px;
	top: 0px;
	width: 6px;
	height: 25px;
	background-color: #0055b8;

	border: 0px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;

	-webkit-transform-origin: 0px 0px;
	-moz-transform-origin: 0px 0px;
	-ms-transform-origin: 0px 0px;
	-o-transform-origin: 0px 0px;
	transform-origin: 0px 0px;

	-webkit-animation: spinner_anim 1s linear infinite;
	-moz-animation: spinner_anim 1s linear infinite;
	-ms-animation: spinner_anim 1s linear infinite;
	-o-animation: spinner_anim 1s linear infinite;
	animation: spinner_anim 1s linear infinite;
}

@-webkit-keyframes spinner_anim {
	0% {   opacity: 1.0; }
	50% {  opacity: 0.5; }
	100% { opacity: 0.0; }
}
@-moz-keyframes spinner_anim {
	0% {   opacity: 1.0; }
	50% {  opacity: 0.5; }
	100% { opacity: 0.0; }
}
@-ms-keyframes spinner_anim {
	0% {   opacity: 1.0; }
	50% {  opacity: 0.5; }
	100% { opacity: 0.0; }
}
@-o-keyframes spinner_anim {
	0% {   opacity: 1.0; }
	50% {  opacity: 0.5; }
	100% { opacity: 0.0; }
}
@keyframes spinner_anim {
	0% {   opacity: 1.0; }
	50% {  opacity: 0.5; }
	100% { opacity: 0.0; }
}

.spinner > div hr:nth-child(1) {
	-webkit-animation-delay: -1.66667s;
	-moz-animation-delay: -1.66667s;
	-ms-animation-delay: -1.66667s;
	-o-animation-delay: -1.66667s;
	animation-delay: -1.66667s;

	-webkit-transform: rotate(30deg) translate(-50%, 15px);
	-moz-transform: rotate(30deg) translate(-50%, 15px);
	-ms-transform: rotate(30deg) translate(-50%, 15px);
	-o-transform: rotate(30deg) translate(-50%, 15px);
	transform: rotate(30deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(2) {
	-webkit-animation-delay: -1.58333s;
	-moz-animation-delay: -1.58333s;
	-ms-animation-delay: -1.58333s;
	-o-animation-delay: -1.58333s;
	animation-delay: -1.58333s;

	-webkit-transform: rotate(60deg) translate(-50%, 15px);
	-moz-transform: rotate(60deg) translate(-50%, 15px);
	-ms-transform: rotate(60deg) translate(-50%, 15px);
	-o-transform: rotate(60deg) translate(-50%, 15px);
	transform: rotate(60deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(3) {
	-webkit-animation-delay: -1.5s;
	-moz-animation-delay: -1.5s;
	-ms-animation-delay: -1.5s;
	-o-animation-delay: -1.5s;
	animation-delay: -1.5s;

	-webkit-transform: rotate(90deg) translate(-50%, 15px);
	-moz-transform: rotate(90deg) translate(-50%, 15px);
	-ms-transform: rotate(90deg) translate(-50%, 15px);
	-o-transform: rotate(90deg) translate(-50%, 15px);
	transform: rotate(90deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(4) {
	-webkit-animation-delay: -1.41667s;
	-moz-animation-delay: -1.41667s;
	-ms-animation-delay: -1.41667s;
	-o-animation-delay: -1.41667s;
	animation-delay: -1.41667s;

	-webkit-transform: rotate(120deg) translate(-50%, 15px);
	-moz-transform: rotate(120deg) translate(-50%, 15px);
	-ms-transform: rotate(120deg) translate(-50%, 15px);
	-o-transform: rotate(120deg) translate(-50%, 15px);
	transform: rotate(120deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(5) {
	-webkit-animation-delay: -1.33333s;
	-moz-animation-delay: -1.33333s;
	-ms-animation-delay: -1.33333s;
	-o-animation-delay: -1.33333s;
	animation-delay: -1.33333s;

	-webkit-transform: rotate(150deg) translate(-50%, 15px);
	-moz-transform: rotate(150deg) translate(-50%, 15px);
	-ms-transform: rotate(150deg) translate(-50%, 15px);
	-o-transform: rotate(150deg) translate(-50%, 15px);
	transform: rotate(150deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(6) {
	-webkit-animation-delay: -1.25s;
	-moz-animation-delay: -1.25s;
	-ms-animation-delay: -1.25s;
	-o-animation-delay: -1.25s;
	animation-delay: -1.25s;

	-webkit-transform: rotate(180deg) translate(-50%, 15px);
	-moz-transform: rotate(180deg) translate(-50%, 15px);
	-ms-transform: rotate(180deg) translate(-50%, 15px);
	-o-transform: rotate(180deg) translate(-50%, 15px);
	transform: rotate(180deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(7) {
	-webkit-animation-delay: -1.16667s;
	-moz-animation-delay: -1.16667s;
	-ms-animation-delay: -1.16667s;
	-o-animation-delay: -1.16667s;
	animation-delay: -1.16667s;

	-webkit-transform: rotate(210deg) translate(-50%, 15px);
	-moz-transform: rotate(210deg) translate(-50%, 15px);
	-ms-transform: rotate(210deg) translate(-50%, 15px);
	-o-transform: rotate(210deg) translate(-50%, 15px);
	transform: rotate(210deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(8) {
	-webkit-animation-delay: -1.08333s;
	-moz-animation-delay: -1.08333s;
	-ms-animation-delay: -1.08333s;
	-o-animation-delay: -1.08333s;
	animation-delay: -1.08333s;

	-webkit-transform: rotate(240deg) translate(-50%, 15px);
	-moz-transform: rotate(240deg) translate(-50%, 15px);
	-ms-transform: rotate(240deg) translate(-50%, 15px);
	-o-transform: rotate(240deg) translate(-50%, 15px);
	transform: rotate(240deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(9) {
	-webkit-animation-delay: -1s;
	-moz-animation-delay: -1s;
	-ms-animation-delay: -1s;
	-o-animation-delay: -1s;
	animation-delay: -1s;

	-webkit-transform: rotate(270deg) translate(-50%, 15px);
	-moz-transform: rotate(270deg) translate(-50%, 15px);
	-ms-transform: rotate(270deg) translate(-50%, 15px);
	-o-transform: rotate(270deg) translate(-50%, 15px);
	transform: rotate(270deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(10) {
	-webkit-animation-delay: -0.91667s;
	-moz-animation-delay: -0.91667s;
	-ms-animation-delay: -0.91667s;
	-o-animation-delay: -0.91667s;
	animation-delay: -0.91667s;

	-webkit-transform: rotate(300deg) translate(-50%, 15px);
	-moz-transform: rotate(300deg) translate(-50%, 15px);
	-ms-transform: rotate(300deg) translate(-50%, 15px);
	-o-transform: rotate(300deg) translate(-50%, 15px);
	transform: rotate(300deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(11) {
	-webkit-animation-delay: -0.83333s;
	-moz-animation-delay: -0.83333s;
	-ms-animation-delay: -0.83333s;
	-o-animation-delay: -0.83333s;
	animation-delay: -0.83333s;

	-webkit-transform: rotate(330deg) translate(-50%, 15px);
	-moz-transform: rotate(330deg) translate(-50%, 15px);
	-ms-transform: rotate(330deg) translate(-50%, 15px);
	-o-transform: rotate(330deg) translate(-50%, 15px);
	transform: rotate(330deg) translate(-50%, 15px);
}

.spinner > div hr:nth-child(12) {
	-webkit-animation-delay: -0.75s;
	-moz-animation-delay: -0.75s;
	-ms-animation-delay: -0.75s;
	-o-animation-delay: -0.75s;
	animation-delay: -0.75s;

	-webkit-transform: rotate(360deg) translate(-50%, 15px);
	-moz-transform: rotate(360deg) translate(-50%, 15px);
	-ms-transform: rotate(360deg) translate(-50%, 15px);
	-o-transform: rotate(360deg) translate(-50%, 15px);
	transform: rotate(360deg) translate(-50%, 15px);
}