@keyframes rv-spin {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }

  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes rv-slide-up-enter {
  from {
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes rv-slide-up-leave {
  to {
    transform: translate3d(0, 100%, 0);
  }
}

@keyframes rv-slide-down-enter {
  from {
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes rv-slide-down-leave {
  to {
    transform: translate3d(0, -100%, 0);
  }
}

@keyframes rv-slide-left-enter {
  from {
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes rv-slide-left-leave {
  to {
    transform: translate3d(-100%, 0, 0);
  }
}

@keyframes rv-slide-right-enter {
  from {
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes rv-slide-right-leave {
  to {
    transform: translate3d(100%, 0, 0);
  }
}

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

  to {
    opacity: 1;
  }
}

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

  to {
    opacity: 0;
  }
}

@keyframes rv-zoom-in {
  from {
    transform: scale(0.8);
    opacity: 0;
  }

  to {
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes rv-zoom-out {
  from {
    transform: scale(1);
    opacity: 1;
  }

  to {
    transform: scale(0.8);
    opacity: 0;
  }
}

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

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

.rv-fade-enter-active {
  animation: 0.3s rv-fade-in both ease-out;
}

.rv-fade-exit-active {
  animation: 0.3s rv-fade-out both ease-in;
}

.rv-slide-up-enter-active {
  animation: 0.3s rv-slide-up-enter both ease-out;
}

.rv-slide-up-exit-active {
  animation: 0.3s rv-slide-up-leave both ease-in;
}

.rv-slide-down-enter-active {
  animation: rv-slide-down-enter 0.3s both ease-out;
}

.rv-slide-down-exit-active {
  animation: rv-slide-down-leave 0.3s both ease-in;
}

.rv-slide-left-enter-active {
  animation: rv-slide-left-enter 0.3s both ease-out;
}

.rv-slide-left-exit-active {
  animation: rv-slide-left-leave 0.3s both ease-in;
}

.rv-slide-right-enter-active {
  animation: rv-slide-right-enter 0.3s both ease-out;
}

.rv-slide-right-exit-active {
  animation: rv-slide-right-leave 0.3s both ease-in;
}

.rv-zoom-enter-active {
  animation: 0.3s rv-zoom-in both ease-out;
}

.rv-zoom-exit-active {
  animation: 0.3s rv-zoom-out both ease-in;
}