@keyframes color-change {
  from {
    color: ui-color(natural);

    background-color: ui-color(blue);
  }

  to {
    color: ui-color(gray-dark);

    background-color: ui-color(gray-light);
  }
}

@keyframes color-change-br {
  from {
    color: ui-color(natural);

    background-color: ui-color(blue);
  }

  to {
    color: ui-color(gray-dark);

    background-color: ui-color(gray-light);
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes spring {
  0% {
    transform: scale3d(0.3, 0.3, 0.3);
    opacity: 0;
  }

  50% {
    transform: scale3d(1.1, 1.1, 1.1);
  }

  80% {
    transform: scale3d(0.9, 0.9, 0.9);
  }

  100% {
    transform: scale3d(1, 1, 1);
    opacity: 1;
  }
}

@keyframes fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fade-out {
  from {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes fade-in-scale {
  from {
    transform: scale3d(0.8, 0.8, 0.8);
    opacity: 0;
  }

  to {
    transform: scale3d(1, 1, 1);
    opacity: 1;
  }
}

@keyframes fade-in-out {
  0% {
    transform: scale3d(1, 1, 1);
    opacity: 0;
  }

  16% {
    transform: scale3d(1, 1, 1);
    opacity: 1;
  }

  84% {
    transform: scale3d(1, 1, 1);
    opacity: 1;
  }

  100% {
    transform: scale3d(1, 1, 1);
    opacity: 0;
  }
}

@keyframes notify {
  0% {
    transform: rotateX(0) scale3d(0.8, 0.8, 0.8);
    opacity: 0;
  }

  3% {
    transform: rotateX(0) scale3d(1, 1, 1);
    opacity: 1;
  }

  80% {
    transform: rotateX(0) scale3d(1, 1, 1);
    opacity: 1;
  }

  100% {
    transform: scale3d(0.98, 0.98, 0.98);
    opacity: 0;
  }
}

@keyframes slide-down {
  from {
    transform: translateY(-100%);
  }

  to {
    transform: translateY(0);
  }
}

@keyframes slide-up {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(-100%);
  }
}

@keyframes ui-btn__primary--beacon {
  0% {
    box-shadow: 0 0 0 0 rgba(ui-color('charcoal-darkest'), 0.6);
  }
  33% {
    box-shadow: 0 0 0 $ui-spacer transparent;
  }
  100% {
    box-shadow: 0 0 0 $ui-spacer transparent;
  }
}

@keyframes ellipsis-1 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes ellipsis-2 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes ellipsis-3 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  60% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes ui-btn__primary--pulse {
  0% {
    background: ui-color(coral);
  }
  50% {
    background: ui-color(coral);
  }
  100% {
    background: ui-color(coral);
  }
}
