.ouro {
position: relative;
display:inline-block;
height: 36px;
width: 36px;
margin: 1em;
border-radius: 50%;  
background: none repeat scroll 0 0 #DDDDDD;
overflow:hidden;
box-shadow: 0 0 10px rgba(0,0,0,.1) inset, 0 0 25px rgba(0,0,255,0.075);
}

.ouro:after {
content: "";
position: absolute;
top: 6px; left: 6px;
display: block;
height: 24px; width: 24px;
background: none repeat scroll 0 0 #F2F2F2;
border-radius: 50%;
box-shadow: 0 0 10px rgba(0,0,0,.1);
}
.ouro > span {
position: absolute;
height: 100%; width: 50%;
overflow: hidden;
}
.left  { left:0   }
.right { left:50% }

.anim {
position: absolute;
left: 100%; top: 0;
height: 100%; width: 100%;
border-radius: 999px;
background: none repeat scroll 0 0 #508EC3;
opacity: 0.8;
-webkit-animation: ui-spinner-rotate-left 3s infinite;
animation: ui-spinner-rotate-left 3s infinite;
-webkit-transform-origin: 0 50% 0;
transform-origin: 0 50% 0;
}
.left .anim {
border-bottom-left-radius: 0;
border-top-left-radius: 0;
}
.right .anim {
border-bottom-right-radius: 0;
border-top-right-radius: 0;
left: -100%;
-webkit-transform-origin: 100% 50% 0;
transform-origin: 100% 50% 0;
}

/* v2 */
.ouro2 .anim {
-webkit-animation-delay:0;
animation-delay:0;
}
.ouro2 .right .anim{
-webkit-animation-delay: 1.5s;
animation-delay: 1.5s;
}

/* v3 */
.ouro3 .anim {
-webkit-animation-delay: 0s;
-webkit-animation-duration:3s;
-webkit-animation-timing-function: linear;
animation-delay: 0s;
animation-duration:3s;
animation-timing-function: linear;
}
.ouro3 .right .anim{
-webkit-animation-name: ui-spinner-rotate-right;
-webkit-animation-delay:0;
-webkit-animation-delay: 1.5s;
animation-name: ui-spinner-rotate-right;
animation-delay:0;
animation-delay: 1.5s;
}

/* round variation */
.round .ouro:after {display:none }

/* double variation */
.double .ouro:after {
height: 13px; width: 13px;
left: 7px; top: 7px;
border: 10px solid #ddd;
background: transparent;
box-shadow: none;
}

@keyframes ui-spinner-rotate-right{
  0%{transform:rotate(0deg)}
  25%{transform:rotate(180deg)}
  50%{transform:rotate(180deg)}
  75%{transform:rotate(360deg)}
  100%{transform:rotate(360deg)}
}
@keyframes ui-spinner-rotate-left{
  0%{transform:rotate(0deg)}
  25%{transform:rotate(0deg)}
  50%{transform:rotate(180deg)}
  75%{transform:rotate(180deg)}
  100%{transform:rotate(360deg)}
}

@-webkit-keyframes ui-spinner-rotate-right{
  0%{-webkit-transform:rotate(0deg)}
  25%{-webkit-transform:rotate(180deg)}
  50%{-webkit-transform:rotate(180deg)}
  75%{-webkit-transform:rotate(360deg)}
  100%{-webkit-transform:rotate(360deg)}
}
@-webkit-keyframes ui-spinner-rotate-left{
  0%{-webkit-transform:rotate(0deg)}
  25%{-webkit-transform:rotate(0deg)}
  50%{-webkit-transform:rotate(180deg)}
  75%{-webkit-transform:rotate(180deg)}
  100%{-webkit-transform:rotate(360deg)}
}



.loader, .loader:before, .loader:after{background:rgba(0,0,0,.2); -webkit-animation: load1 1s infinite ease-in-out; animation: load1 1s infinite ease-in-out; width: 1em; height: 4em;}
.loader{color:rgba(0,0,0,.2);text-indent: -9999em;margin: 88px auto;position: relative;font-size: 11px;-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);-webkit-animation-delay: -0.16s;animation-delay: -0.16s;}
.loader:before,.loader:after {position: absolute;top: 0;content: '';}
.loader:before {left: -1.5em;-webkit-animation-delay: -0.32s;animation-delay: -0.32s;}
.loader:after {left: 1.5em;}
@-webkit-keyframes load1 {
0%,80%,100% {box-shadow: 0 0;height: 4em;}
40% {box-shadow: 0 -2em;height: 5em;}
}
@keyframes load1 {
0%,80%,100% {box-shadow: 0 0;height: 4em;}
40% {
box-shadow: 0 -2em;height: 5em;}
}