.swipeback-page-shadow {
    position: absolute;
    right: 100%;
    top: 0;
    width: 16px;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
    z-index: -1;
    content: '';
}

html.android .swipeback-page-shadow {
    display: none;
    -webkit-animation: none;
    animation: none;
}

.page-transitioning,
.page-transitioning .swipeback-page-shadow {
    -webkit-transition-duration: 400ms;
    transition-duration: 400ms;
}

.page-from-right-to-center:before,
.page-from-center-to-right:before {
    position: absolute;
    right: 100%;
    top: 0;
    width: 16px;
    height: 100%;
    background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.01) 50%, rgba(0, 0, 0, 0.2) 100%);
    z-index: -1;
    content: '';
}

html.android .page-from-right-to-center:before,
html.android .page-from-center-to-right:before {
    display: none;
    -webkit-animation: none;
    animation: none;
}

.page-from-right-to-center {
    -webkit-animation: pageFromRightToCenter 400ms forwards;
    animation: pageFromRightToCenter 400ms forwards;
}

.page-from-right-to-center:before {
    -webkit-animation: pageFromRightToCenterShadow 400ms forwards;
    animation: pageFromRightToCenterShadow 400ms forwards;
}

.page-from-center-to-right {
    -webkit-animation: pageFromCenterToRight 400ms forwards;
    animation: pageFromCenterToRight 400ms forwards;
}

.page-from-center-to-right:before {
    -webkit-animation: pageFromCenterToRightShadow 400ms forwards;
    animation: pageFromCenterToRightShadow 400ms forwards;
}

@-webkit-keyframes pageFromRightToCenter {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
    }
}

@keyframes pageFromRightToCenter {
    from {
        transform: translate3d(100%, 0, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes pageFromRightToCenterShadow {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes pageFromRightToCenterShadow {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-webkit-keyframes pageFromCenterToRight {
    from {
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0);
    }
}

@keyframes pageFromCenterToRight {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(100%, 0, 0);
    }
}

@-webkit-keyframes pageFromCenterToRightShadow {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes pageFromCenterToRightShadow {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.page-from-center-to-left {
    -webkit-animation: pageFromCenterToLeft 400ms forwards;
    animation: pageFromCenterToLeft 400ms forwards;
}

.page-from-left-to-center {
    -webkit-animation: pageFromLeftToCenter 400ms forwards;
    animation: pageFromLeftToCenter 400ms forwards;
}

@-webkit-keyframes pageFromCenterToLeft {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0.9;
        -webkit-transform: translate3d(-20%, 0, 0);
    }
}

@keyframes pageFromCenterToLeft {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0.9;
        transform: translate3d(-20%, 0, 0);
    }
}

@-webkit-keyframes pageFromLeftToCenter {
    from {
        opacity: 0.9;
        -webkit-transform: translate3d(-20%, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
    }
}

@keyframes pageFromLeftToCenter {
    from {
        transform: translate3d(-20%, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}