@import './var.scss';
@import '../../Style/mixin/index.scss';

:root {
    --popup-background-color: #{$popup-background-color};
    --popup-transition: 1000ms;
    --popup-close-icon-z-index: #{$popup-close-icon-z-index};
    --popup-close-icon-margin-vertical: #{$popup-close-icon-margin-vertical};
    --popup-close-icon-margin-horizontal: #{$popup-close-icon-margin-horizontal};
    --popup-round-border-radius: #{$popup-round-border-radius};

    --popup-title-color: 'inherit';
    --popup-title-font-size: #{$popup-title-font-size};
}

.jing-overflow-hidden {
    overflow: hidden !important;
}

.jing-popup {
    position: fixed;
    max-height: 100%;
    overflow-y: auto;
    background-color: var(--popup-background-color);
    transition: var(--popup-transition);
    -webkit-overflow-scrolling: touch;
    &--center {
        top: 50%;
        left: 50%;
        transform: translate3d(-50%, -50%, 0);

        &.jing-popup--round {
            border-radius: var(--popup-round-border-radius);
        }
    }

    &--top {
        top: 0;
        left: 0;
        width: 100%;

        &.jing-popup--round {
            border-radius: 0 0 var(--popup-round-border-radius)
                var(--popup-round-border-radius);
        }
    }

    &--bottom {
        bottom: 0;
        left: 0;
        width: 100%;

        &.jing-popup--round {
            border-radius: var(--popup-round-border-radius)
                var(--popup-round-border-radius) 0 0;
        }
    }

    &--left {
        top: 0;
        left: 0;
        &.jing-popup--round {
            border-radius: 0 var(--popup-round-border-radius)
                var(--popup-round-border-radius) 0;
        }
    }

    &--right {
        top: 0;
        right: 0;

        &.jing-popup--round {
            border-radius: var(--popup-round-border-radius) 0 0
                var(--popup-round-border-radius);
        }
    }

    &-slide-top-enter,
    &-slide-top-exit-active {
        transform: translate3d(0, -100%, 0);
    }

    &-slide-right-enter,
    &-slide-right-exit-active {
        transform: translate3d(100%, 0, 0);
    }

    &-slide-bottom-enter,
    &-slide-bottom-exit-active {
        transform: translate3d(0, 100%, 0);
    }

    &-slide-left-enter,
    &-slide-left-exit-active {
        transform: translate3d(-100%, 0, 0);
    }

    &-slide-top-enter-active,
    &-slide-left-enter-active,
    &-slide-right-enter-active,
    &-slide-bottom-enter-active {
        // transform: translate3d(0, 0, 0);
        transform: translateZ(0);
        transition: var(--popup-transition);
    }

    &-slide-top-exit-active,
    &-slide-left-exit-active,
    &-slide-right-exit-active,
    &-slide-bottom-exit-active {
        transition: var(--popup-transition);
        transition-timing-function: var(--animation-timing-function-leave);
    }

    &__close-icon {
        position: absolute;
        z-index: var(--popup-close-icon-z-index);
        cursor: pointer;

        &--top-left {
            top: var(--popup-close-icon-margin-horizontal);
            left: var(--popup-close-icon-margin-vertical);
        }

        &--top-right {
            top: var(--popup-close-icon-margin-horizontal);
            right: var(--popup-close-icon-margin-vertical);
        }

        &--bottom-left {
            bottom: var(--popup-close-icon-margin-horizontal);
            left: var(--popup-close-icon-margin-vertical);
        }

        &--bottom-right {
            bottom: var(--popup-close-icon-margin-horizontal);
            right: var(--popup-close-icon-margin-vertical);
        }
    }

    &__title {
        position: relative;
        margin: 0 16px;
        padding: 14px 0;
        font-weight: 500;
        color: var(--popup-title-color);
        font-size: var(--popup-title-font-size);
        line-height: var(--popup-title-font-size);
        text-align: center;
        &::after {
            // var(--border-color)
            // left: var(--cell-vertical-padding) !important;
            @include hairline-bottom(var(--border-color), 0, 0);
        }
    }
}
