@keyframes loading-spinner {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes moving-gradient {
  from {
    transform: translateX(-150%);
  } to {
    transform: translateX(150%);
  }
}

@keyframes open-box-horizontally {
  to {
    opacity: 1;
    visibility: visible;
    width: 100%;
  }
}

@keyframes blink {
  0% {
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  85% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes shake {
  0% {
    transform: rotate(0);
  }
  20% {
    transform: rotate(6deg);
  }
  40% {
    transform: rotate(-6deg);
  }
  60% {
    transform: rotate(6deg);
  }
  80% {
    transform: rotate(-6deg);
  }
  100% {
    transform: rotate(0);
  }
}

@keyframes shake-vertically {
  0% {
    translate: 0;
  }
  20% {
    translate: .1em;
  }
  40% {
    translate: -.1em;
  }
  60% {
    translate: .1em;
  }
  80% {
    translate: -.1em;
  }
  100% {
    translate: 0;
  }
}
