@import '../var';

.cl {
  &-modal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.7);
    // transition: .5s ease-out;
    animation: cl-fade-in .3s both;
  }
  
  &-overflow-hidden {
    overflow: hidden !important;
  }
  
  &-popup {
    position: fixed;
    background-color: $color-white;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    transition: .2s ease-out;
    
    &--top {
      width: 100%;
      top: 0;
      right: auto;
      left: 50%;
      transform: translate3d(-50%, 0, 0);
    }
    
    &--right {
      top: 50%;
      right: 0;
      bottom: auto;
      left: auto;
      transform: translate3d(0, -50%, 0);
    }
    
    &--bottom {
      width: 100%;
      top: auto;
      bottom: 0;
      right: auto;
      left: 49.9999%;
      transform: translate3d(-50%, 0, 0);
    }
    
    &--left {
      top: 50%;
      right: auto;
      bottom: auto;
      left: 0;
      transform: translate3d(0, -50%, 0);
    }
  }
}

.popup-slide-top-enter,
.popup-slide-top-leave-active {
  transform: translate3d(-50%, -100%, 0);
}

.popup-slide-right-enter,
.popup-slide-right-leave-active {
  transform: translate3d(100%, -50%, 0);
}

.popup-slide-bottom-enter,
.popup-slide-bottom-leave-active {
  transform: translate3d(-50%, 100%, 0);
}

.popup-slide-left-enter,
.popup-slide-left-leave-active {
  transform: translate3d(-100%, -50%, 0);
}

.popup-fade-enter, .popup-fade-leave-active {
  opacity: 0;
}

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