.transition-default() {
  &-enter-active,
  &-leave-active {
    transition: 0.3s cubic-bezier(0.25, 0.8, 0.5, 1) !important;
  }

  &-move {
    transition: transform 0.4s;
  }
}

.expand-transition {
  .transition-default();
}

.expand-x-transition {
  .transition-default();
}

// fade
.fade-enter-active,
.fade-leave-active {
  transition: opacity 0.2s ease-in-out;
}

.fade-enter-from,
.fade-leave-to {
  opacity: 0%;
}

// fade-slide
.fade-slide-leave-active,
.fade-slide-enter-active {
  transition: all 0.3s;
}

.fade-slide-enter-from {
  opacity: 0%;
  transform: translateX(-30px);
}

.fade-slide-leave-to {
  opacity: 0%;
  transform: translateX(30px);
}

// fade-bottom
.fade-bottom-enter-active,
.fade-bottom-leave-active {
  transition: opacity 0.25s, transform 0.3s;
}

.fade-bottom-enter-from {
  opacity: 0%;
  transform: translateY(-10%);
}

.fade-bottom-leave-to {
  opacity: 0%;
  transform: translateY(10%);
}

// fade-scale
.fade-scale-leave-active,
.fade-scale-enter-active {
  transition: all 0.28s;
}

.fade-scale-enter-from {
  opacity: 0%;
  transform: scale(1.2);
}

.fade-scale-leave-to {
  opacity: 0%;
  transform: scale(0.8);
}


// fade-top
.fade-top-enter-active,
.fade-top-leave-active {
  transition: opacity 0.2s, transform 0.25s;
}

.fade-top-enter-from {
  opacity: 0%;
  transform: translateY(8%);
}

.fade-top-leave-to {
  opacity: 0%;
  transform: translateY(-8%);
}

// zoom-out
.zoom-out-enter-active,
.zoom-out-leave-active {
  transition: opacity 0.1 ease-in-out, transform 0.15s ease-out;
}

.zoom-out-enter-from,
.zoom-out-leave-to {
  opacity: 0%;
  transform: scale(0);
}

// zoom-fade
.zoom-fade-enter-active,
.zoom-fade-leave-active {
  transition: transform 0.2s, opacity 0.3s ease-out;
}

.zoom-fade-enter-from {
  opacity: 0%;
  transform: scale(0.92);
}

.zoom-fade-leave-to {
  opacity: 0%;
  transform: scale(1.06);
}
