/* General throbber CSS */

.throbber-loader {
  float: right;
}

@-moz-keyframes throbber-loader {
  0% {
    background: #d2deef;
  }
  10% {
    background: #8fabd7;
  }
  40% {
    background: #3668b8;
  }
}
@-webkit-keyframes throbber-loader {
  0% {
    background: #d2deef;
  }
  10% {
    background: #8fabd7;
  }
  40% {
    background: #3668b8;
  }
}
@keyframes throbber-loader {
  0% {
    background: #d2deef;
  }
  10% {
    background: #8fabd7;
  }
  40% {
    background: #3668b8;
  }
}

/* :not(:required) hides these rules from IE9 and below */
.throbber-loader:not(:required) {
  -moz-animation: throbber-loader 2000ms 300ms infinite ease-out;
  -webkit-animation: throbber-loader 2000ms 300ms infinite ease-out;
  animation: throbber-loader 2000ms 300ms infinite ease-out;
  background: #d2deef;
  display: inline-block;
  position: relative;
  text-indent: -9999px;
  width: 0.9em;
  height: 1.5em;
  margin: 0 1.6em;
}
.throbber-loader:not(:required):before, .throbber-loader:not(:required):after {
  background: #d2deef;
  content: '\x200B';
  display: inline-block;
  width: 0.9em;
  height: 1.5em;
  position: absolute;
  top: 0;
}
.throbber-loader:not(:required):before {
  -moz-animation: throbber-loader 2000ms 150ms infinite ease-out;
  -webkit-animation: throbber-loader 2000ms 150ms infinite ease-out;
  animation: throbber-loader 2000ms 150ms infinite ease-out;
  left: -1.6em;
}
.throbber-loader:not(:required):after {
  -moz-animation: throbber-loader 2000ms 450ms infinite ease-out;
  -webkit-animation: throbber-loader 2000ms 450ms infinite ease-out;
  animation: throbber-loader 2000ms 450ms infinite ease-out;
  right: -1.6em;
}

.throbber-loader.throbber-small:not(:required),
.throbber-loader.throbber-small:not(:required):before,
.throbber-loader.throbber-small:not(:required):after {
  height: 0.8em;
  width: 0.4em;
  margin: 0 1em;
}
