
/*!
 * three-dots - v0.2.0
 * CSS loading animation made by single element.
 * https://nzbin.github.io/three-dots/
 *
 * Copyright (c) 2018 nzbin
 * Released under MIT License
 */
@charset "UTF-8";
/**
 * ==============================================
 * Dot Elastic
 * ==============================================
 */
.dot-elastic {
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #ffe75e;
  color: #ffe75e;
  animation: dot-elastic .75s infinite linear;
}

.dot-elastic::before, .dot-elastic::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
}

.dot-elastic::before {
  left: -40px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #feb72b;
  color: #feb72b;
  animation: dot-elastic-before .75s infinite linear;
}

.dot-elastic::after {
  left: 40px;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: #899857;
  color: #899857;
  animation: dot-elastic-after .75s infinite linear;
}

@keyframes dot-elastic-before {
  0% {
    transform: scale(1, 1);
  }
  25% {
    transform: scale(1.25, 1.25);
  }
  50% {
    transform: scale(1, 1);
  }
  75% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(1, 1);
  }
}

@keyframes dot-elastic {
  0% {
    transform: scale(1, 1);
  }
  25% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.25, 1.25);
  }
  75% {
    transform: scale(1, 1);
  }
  100% {
    transform: scale(1, 1);
  }
}

@keyframes dot-elastic-after {
  0% {
    transform: scale(1, 1);
  }
  25% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1, 1);
  }
  75% {
    transform: scale(1.25, 1.25);
  }
  100% {
    transform: scale(1, 1);
  }
}

/**
 * ==============================================
 * Dot Pulse
 * ==============================================
 */
.dot-pulse {
  position: relative;
  left: -9999px;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background-color: #9A3F3F;
  color: #9A3F3F;
  box-shadow: 9999px 0 0 -5px #9A3F3F;
  animation: dot-pulse .75s infinite linear;
  animation-delay: .25s;
}

.dot-pulse::before, .dot-pulse::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 0;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  background-color: #9880ff;
  color: #9880ff;
}

.dot-pulse::before {
  box-shadow: 9984px 0 0 -5px #C1856D;
  animation: dot-pulse-before .75s infinite linear;
  animation-delay: 0s;
  right: 30px;
}

.dot-pulse::after {
  box-shadow: 10014px 0 0 -5px #E6CFA9;
  animation: dot-pulse-after .75s infinite linear;
  animation-delay: .5s;
  left: 30px;
}

@keyframes dot-pulse-before {
  0% {
    box-shadow: 9984px 0 0 -5px #9A3F3F;
  }
  30% {
    box-shadow: 9984px 0 0 2px #9A3F3F;
  }
  60%,
  100% {
    box-shadow: 9984px 0 0 -5px #9A3F3F;
  }
}

@keyframes dot-pulse {
  0% {
    box-shadow: 9999px 0 0 -5px #C1856D;
  }
  30% {
    box-shadow: 9999px 0 0 2px #C1856D;
  }
  60%,
  100% {
    box-shadow: 9999px 0 0 -5px #C1856D;
  }
}

@keyframes dot-pulse-after {
  0% {
    box-shadow: 10014px 0 0 -5px #E6CFA9;
  }
  30% {
    box-shadow: 10014px 0 0 2px #E6CFA9;
  }
  60%,
  100% {
    box-shadow: 10014px 0 0 -5px #E6CFA9;
  }
}

