/*!* animate.css 精簡版*/
:root {
    --animate-duration: 1s
}

.animate__animated {
    animation-duration: var(--animate-duration);
    animation-fill-mode: both
}

@media (prefers-reduced-motion:reduce),print {
    .animate__animated {
        animation-duration: 1ms!important;
        animation-iteration-count: 1!important;
        transition-duration: 1ms!important
    }

    .animate__animated[class*=Out] {
        opacity: 0
    }
}

@keyframes bounceIn {
    0%,20%,40%,60%,80%,to {
        animation-timing-function: cubic-bezier(.215,.61,.355,1)
    }

    0% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    20% {
        transform: scale3d(1.1,1.1,1.1)
    }

    40% {
        transform: scale3d(.9,.9,.9)
    }

    60% {
        opacity: 1;
        transform: scale3d(1.03,1.03,1.03)
    }

    80% {
        transform: scale3d(.97,.97,.97)
    }

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

.animate__bounceIn {
    animation-duration: calc(var(--animate-duration)*.75);
    animation-name: bounceIn
}

@keyframes bounceInLeft {
    0%,60%,75%,90%,to {
        animation-timing-function: cubic-bezier(.215,.61,.355,1)
    }

    0% {
        opacity: 0;
        transform: translate3d(-3000px,0,0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(25px,0,0) scaleX(1)
    }

    75% {
        transform: translate3d(-10px,0,0) scaleX(.98)
    }

    90% {
        transform: translate3d(5px,0,0) scaleX(.995)
    }

    to {
        transform: translateZ(0)
    }
}

.animate__bounceInLeft {
    animation-name: bounceInLeft
}

@keyframes bounceInRight {
    0%,60%,75%,90%,to {
        animation-timing-function: cubic-bezier(.215,.61,.355,1)
    }

    0% {
        opacity: 0;
        transform: translate3d(3000px,0,0) scaleX(3)
    }

    60% {
        opacity: 1;
        transform: translate3d(-25px,0,0) scaleX(1)
    }

    75% {
        transform: translate3d(10px,0,0) scaleX(.98)
    }

    90% {
        transform: translate3d(-5px,0,0) scaleX(.995)
    }

    to {
        transform: translateZ(0)
    }
}

.animate__bounceInRight {
    animation-name: bounceInRight
}

@keyframes bounceInUp {
    0%,60%,75%,90%,to {
        animation-timing-function: cubic-bezier(.215,.61,.355,1)
    }

    0% {
        opacity: 0;
        transform: translate3d(0,3000px,0) scaleY(5)
    }

    60% {
        opacity: 1;
        transform: translate3d(0,-20px,0) scaleY(.9)
    }

    75% {
        transform: translate3d(0,10px,0) scaleY(.95)
    }

    90% {
        transform: translate3d(0,-5px,0) scaleY(.985)
    }

    to {
        transform: translateZ(0)
    }
}

.animate__bounceInUp {
    animation-name: bounceInUp
}

@keyframes rotateIn {
    0% {
        opacity: 0;
        transform: rotate(-200deg)
    }

    to {
        opacity: 1;
        transform: translateZ(0)
    }
}

.animate__rotateIn {
    animation-name: rotateIn;
    transform-origin: center
}

@keyframes zoomIn {
    0% {
        opacity: 0;
        transform: scale3d(.3,.3,.3)
    }

    50% {
        opacity: 1
    }
}

.animate__zoomIn {
    animation-name: zoomIn
}

@keyframes slideInDown {
    0% {
        transform: translate3d(0,-100%,0);
        visibility: visible
    }

    to {
        transform: translateZ(0)
    }
}

.animate__slideInDown {
    animation-name: slideInDown
}

@keyframes slideInLeft {
    0% {
        transform: translate3d(-100%,0,0);
        visibility: visible
    }

    to {
        transform: translateZ(0)
    }
}

.animate__slideInLeft {
    animation-name: slideInLeft
}

@keyframes slideOutUp {
    0% {
        transform: translateZ(0)
    }

    to {
        transform: translate3d(0,-100%,0);
        visibility: hidden
    }
}

.animate__slideOutUp {
    animation-name: slideOutUp
}
