@-moz-keyframes ball-loader {
0% {
-moz-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
-moz-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
-moz-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
}
@-webkit-keyframes ball-loader {
0% {
-webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
}
@keyframes ball-loader {
0% {
-moz-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-ms-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
-ms-transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.95, 1);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
-ms-transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 0.5, 1);
-moz-animation-timing-function: linear;
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
-ms-transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
-webkit-transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
transform: translate3d(0, 150px, -10px) scale3d(1, 1.25, 1);
-moz-animation-timing-function: ease-out;
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
}
@-moz-keyframes ball-loader-highlight {
0% {
-moz-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-moz-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
@-webkit-keyframes ball-loader-highlight {
0% {
-webkit-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-webkit-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
@keyframes ball-loader-highlight {
0% {
-moz-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-ms-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-webkit-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-ms-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-ms-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: linear;
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-ms-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-webkit-transform: skew(-30deg, 0) translate3d(0, 0, 1px);
transform: skew(-30deg, 0) translate3d(0, 0, 1px);
-moz-animation-timing-function: ease-out;
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-moz-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-ms-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-webkit-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
@-moz-keyframes ball-loader-shadow {
0% {
-moz-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
-moz-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-moz-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-moz-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-moz-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
@-webkit-keyframes ball-loader-shadow {
0% {
-webkit-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-webkit-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-webkit-transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-webkit-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-webkit-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
@keyframes ball-loader-shadow {
0% {
-moz-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-ms-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-webkit-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
45% {
-moz-transform: translate3d(12.5px, -15px, -1px);
-ms-transform: translate3d(12.5px, -15px, -1px);
-webkit-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
50% {
-moz-transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
-ms-transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
-webkit-transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
transform: translate3d(12.5px, -15px, -1px) scale3d(1, 1, 1);
-moz-animation-timing-function: linear;
-webkit-animation-timing-function: linear;
animation-timing-function: linear;
}
55% {
-moz-transform: translate3d(12.5px, -15px, -1px);
-ms-transform: translate3d(12.5px, -15px, -1px);
-webkit-transform: translate3d(12.5px, -15px, -1px);
transform: translate3d(12.5px, -15px, -1px);
-moz-animation-timing-function: ease-out;
-webkit-animation-timing-function: ease-out;
animation-timing-function: ease-out;
}
100% {
-moz-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-ms-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-webkit-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-moz-animation-timing-function: ease-in;
-webkit-animation-timing-function: ease-in;
animation-timing-function: ease-in;
}
}
/* :not(:required) hides this rule from IE9 and below */
.ball-loader:not(:required) {
position: relative;
display: inline-block;
font-size: 0;
letter-spacing: -1px;
border-radius: 100%;
background: #f86;
width: 50px;
height: 50px;
-moz-transform-style: preserve-3d;
-webkit-transform-style: preserve-3d;
transform-style: preserve-3d;
-moz-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-ms-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
-moz-transform-origin: 0 100%;
-ms-transform-origin: 0 100%;
-webkit-transform-origin: 0 100%;
transform-origin: 0 100%;
-moz-animation: ball-loader 1500ms infinite linear;
-webkit-animation: ball-loader 1500ms infinite linear;
animation: ball-loader 1500ms infinite linear;
}
.ball-loader:not(:required)::after {
content: '';
position: absolute;
top: 4.5px;
left: 5.5px;
width: 15px;
height: 15px;
background: #ffb099;
border-radius: 100%;
-moz-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-ms-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-webkit-transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
transform: skew(-20deg, 0) translate3d(0, 2.5px, 1px);
-moz-animation: ball-loader-highlight 1500ms infinite linear;
-webkit-animation: ball-loader-highlight 1500ms infinite linear;
animation: ball-loader-highlight 1500ms infinite linear;
}
.ball-loader:not(:required)::before {
content: '';
position: absolute;
top: 50px;
left: 5.5px;
width: 50px;
height: 15px;
background: rgba(0, 0, 0, 0.2);
border-radius: 100%;
-moz-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-ms-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-webkit-transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
transform: translate3d(66.66667px, 66.66667px, -1px) scale3d(1.25, 1.25, 1);
-moz-animation: ball-loader-shadow 1500ms infinite linear;
-webkit-animation: ball-loader-shadow 1500ms infinite linear;
animation: ball-loader-shadow 1500ms infinite linear;
-webkit-filter: blur(1px);
filter: blur(1px);
}