* { -webkit-tap-highlight-color: transparent; outline: 0; margin: 0; padding: 0; vertical-align: baseline; box-sizing: border-box;}
body{ font-family: Helvetica;}
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td { margin: 0; padding: 0; vertical-align: baseline; }
img { border: 0 none; vertical-align: top; }
i, em { font-style: normal; }
ol, ul { list-style: none; }
input, select, button, h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: inherit; }
table { border-collapse: collapse; border-spacing: 0; }
a { text-decoration: none; color: #666; }
body { margin: 0 auto; min-width: 320px; max-width: 640px; height: 100%; font-size: 14px; line-height: 1.5; color: #666; -webkit-text-size-adjust: 100% !important; text-size-adjust: 100% !important; }
input[type="text"], textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

html{
    position: relative;
    height: 100%;
    overflow: hidden;
}
.main{
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #140f41;
    -webkit-transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
}
.page{
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    overflow: hidden;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.page-show{
    visibility: visible;
    opacity: 1;
}
.re-box{
    position: relative;
}
.ab-box{
    position: absolute;
    top: 0;
    left: 0;
}
.img > img{
    display: block;
    width: 100%;
}
.bg-1{
    background: url('../images/bg1.png') center no-repeat;
    background-size: cover;
}
.bg-2{
    visibility: hidden;
    position: relative;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-color: rgba(181, 0, 0, .85);
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    -webkit-transition: visibility .5s ease-in-out,
        opacity .5s ease-in-out,
        transform .5s ease-in-out;
    transition: visibility .5s ease-in-out,
        opacity .5s ease-in-out,
        transform .5s ease-in-out;
}
.bottom-box{
    visibility: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    -webkit-transition: visibility .5s ease-in-out,
        opacity .5s ease-in-out,
        transform .5s ease-in-out;
    transition: visibility .5s ease-in-out,
        opacity .5s ease-in-out,
        transform .5s ease-in-out;
}
.page-show .bottom-box,
.page-show .bg-2{
    visibility: visible;
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}
.logo{
    position: absolute;
    top: 0.36rem;
    left: 0.36rem;
    width: 4.6rem;
}
.main-title{
    position: absolute;
    top: 18vh;
    left: 0;
    width: 100%;
}
.page-show .main-title img:nth-child(1){
    -webkit-animation: ani2 .5s reverse infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
    animation: ani2 .5s reverse infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
    -webkit-animation-delay: .2s;
    animation-delay: .2s;
}
.page-show .main-title img:nth-child(2){
    -webkit-animation: ani1 .5s reverse infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
    animation: ani1 .5s reverse infinite cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
.btn{
    position: absolute;
    right: 0.35rem;
    bottom: 1.62rem;
    width: 4.18rem;
    height: 0.94rem;
    border: 0;
    outline: none;
    z-index: 999;
    -webkit-transform: rotate(-10.5deg);
    transform: rotate(-10.5deg);
}
.start-btn{
    background: url('../images/4.png') center no-repeat;
    background-size: 100%;
}
.confirm-btn{
    background: url('../images/9.png') center no-repeat;
    background-size: 100%;
}
.generate-btn{
    background: url('../images/10.png') center no-repeat;
    background-size: 100%;
}
@-webkit-keyframes ani1{
    0%{
        -webkit-transform: none;
        transform: none;
    }
    25%{
        -webkit-transform: translate3d(2px, 1px, 0);
        transform: translate3d(2px, 1px, 0);
    }
    50%{
        -webkit-transform: translate3d(3px, 1px, 0);
        transform: translate3d(3px, 1px, 0);
    }
    100%{
        -webkit-transform: translate3d(2px, -1px, 0);
        transform: translate3d(2px, -1px, 0);
    }
}
@keyframes ani1{
    0%{
        -webkit-transform: none;
        transform: none;
    }
    25%{
        -webkit-transform: translate3d(2px, 1px, 0);
        transform: translate3d(2px, 1px, 0);
    }
    50%{
        -webkit-transform: translate3d(3px, 1px, 0);
        transform: translate3d(3px, 1px, 0);
    }
    100%{
        -webkit-transform: translate3d(2px, -1px, 0);
        transform: translate3d(2px, -1px, 0);
    }
}
@-webkit-keyframes ani2{
    0%{
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
    25%{
        opacity: .4;
        -webkit-transform: translate3d(2px, 1px, 0);
        transform: translate3d(2px, 1px, 0);
    }
    50%{
        opacity: 1;
        -webkit-transform: translate3d(3px, 1px, 0);
        transform: translate3d(3px, 1px, 0);
    }
    100%{
        opacity: .4;
        -webkit-transform: translate3d(2px, -1px, 0);
        transform: translate3d(2px, -1px, 0);
    }
}
@keyframes ani2{
    0%{
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
    25%{
        opacity: .4;
        -webkit-transform: translate3d(2px, 1px, 0);
        transform: translate3d(2px, 1px, 0);
    }
    50%{
        opacity: 1;
        -webkit-transform: translate3d(3px, 1px, 0);
        transform: translate3d(3px, 1px, 0);
    }
    100%{
        opacity: .4;
        -webkit-transform: translate3d(2px, -1px, 0);
        transform: translate3d(2px, -1px, 0);
    }
}
.page-content{
    position: relative;
    width: 100%;
    height: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    align-items: center;
    -webkit-flex-direction: column;
    flex-direction: column;
    color: #fff;
    padding-top: 1rem;
    padding-bottom: 2.5rem;
    z-index: 100;
}
.box-width{
    width: 5.4rem;
}
.shadow-box{
    border: 1px solid rgba(255, 255, 255, .8) !important;
    box-shadow: inset 0px 0px 20px 5px rgba(255, 255, 255, 0.5);
}
.select-box{
    position: relative;
    height: 0.75rem;
    line-height: 0.75rem;
}
.select-box::after{
    content: '';
    position: absolute;
    top: 34%;
    right: 5%;
    border: 0.2rem solid transparent;
    border-top-color: #fff;
}
.select-box .select{
    opacity: 0;
}
.select-box .select,
.select-box .select-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 0.15rem;
    font-size: 12px;
    color: rgba(255, 255, 255, .8);
}
.select-box .select-text{
    padding-right: 0.5rem;
    overflow: hidden;
    text-overflow:ellipsis;
    white-space: nowrap;
}
.up-btn{
    position: relative;
    width: 2.21rem;
    height: 3.26rem;
    background: url('../images/7.png') center no-repeat;
    background-size: 1.6rem;
}
.up-btn-img, #file{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.up-btn-img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#file{
    opacity: 0;
}
.text-box{
    margin-bottom: 0.2rem;
}
.text-box > *{
    display: inline-block;
    vertical-align: middle;
}
.name,
.city {
    width: 3rem;
    height: 0.6rem;
    padding: 0.15rem;
    font-size: 12px;
    color: rgba(255, 255, 255, .8);
    background: rgba(255, 255, 255, 0);
}
.city{
    width: 1.7rem;
}
.text-box input::-webkit-input-placeholder { /* WebKit browsers */
    color: rgba(255, 255, 255, .8);
}
.text-box input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: rgba(255, 255, 255, .8);
}
.text-box input::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: rgba(255, 255, 255, .8);
}
.text-box input:-ms-input-placeholder { /* Internet Explorer 10+ */
    color: rgba(255, 255, 255, .8);
}
.touch-box{
    position: relative;
    width: 3.75rem;
    height: 5.54rem;
}
.touch-box-img,
.touch-box-decoration,
.touch,
.main-title-img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.touch-box-img{
    overflow: hidden;
}
.touch-box-decoration img{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
}
.tbd-text{
    position: absolute;
    bottom: 5%;
    left: 5%;
}
.tbd-text > p {
    line-height: 1.3;
}
.tbd-text-border{
    padding-top: 4px;
    padding-right: 20px;
    border-top: 1px solid #fff;
}
.tbd-text-bold{
    font-weight: bold;
}
.tab-box{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    align-items: center;
    width: 6.2rem;
    height: 1.5rem;
    margin-bottom: 0.2rem;
    padding: 0 0.5rem;
    background: rgba(255, 255, 255, .8);
}
.tab-box span{
    display: inline-block;
    width: 0.8rem;
    height: 1.18rem;
    -webkit-transition: box-shadow .3s ease-in-out;
    transition: box-shadow .3s ease-in-out;
}
.tab-box span:nth-child(1) {
    background: url('../images/11.png') center no-repeat;
    background-size: 100%;
}
.tab-box span:nth-child(2) {
    background: url('../images/12.png') center no-repeat;
    background-size: 100%;
}
.tab-box span:nth-child(3) {
    background: url('../images/13.png') center no-repeat;
    background-size: 100%;
}
.tab-box span:nth-child(4) {
    background: url('../images/14.png') center no-repeat;
    background-size: 100%;
}
.tab-box .tab-active{
    box-shadow: 0 0 8px 2px rgba(181, 0, 0, 1);
}
.share-img{
    position: relative;
    width: 5.06rem;
    height: 7.45rem;
}
.share-img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.share-text{
    margin-top: 0.2rem;
    text-align: center;
    color: rgba(255, 255, 255, .8);
    font-size: 12px;
    letter-spacing: 0.05rem;
}
.btn-box{
    position: absolute;
    right: 0;
    bottom: 8%;
    left: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    align-items: center;
    width: 6.5rem;
    margin: auto;
}
.btn-box button{
    display: inline-block;
    width: 3rem;
    height: 0.94rem;
    border: 0;
    outline: none;
}
.share-btn{
    background: url('../images/15.png') center no-repeat;
    background-size: 100%;
}
.renew-btn{
    background: url('../images/21.png') center no-repeat;
    background-size: 100%;
}
.select-popup, .load-popup{
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    opacity: 0;
    -webkit-transition: visibility .3s ease-in-out,
        opacity .3s ease-in-out;
    transition: visibility .3s ease-in-out,
        opacity .3s ease-in-out;
}
.select-popup-box{
    width: 5.5rem;
    padding: 0.2rem 0.3rem;
    font-size: 14px;
    color: rgba(255, 255, 255, .8);
    background-color: rgba(181, 0, 0, .85);
    opacity: 0;
    -webkit-transform: translate3d(0, -300%, 0);
    transform: translate3d(0, -300%, 0);
    -webkit-transition: opacity .3s ease-in-out,
        transform .3s ease-in-out;
    transition: opacity .3s ease-in-out,
        transform .3s ease-in-out;
}
.select-popup-box p{
    margin: 0.2rem 0;
    padding: 0.1rem 0.15rem;
    border: 1px solid transparent;
    -webkit-transition: box-shadow .3s ease-in-out;
    transition: box-shadow .3s ease-in-out;
}
.select-popup-show{
    visibility: visible;
    opacity: 1;
}
.select-popup-show .select-popup-box{
    opacity: 1;
    -webkit-transform: none;
    transform: none;
}
.generate-content{
    position: fixed;
    top: 0;
    left: 100%;
    background-color: rgb(181, 0, 0);
}
.generate-box{
    position: relative;
    width: 375px;
    height: 550px;
    background: rgb(181, 0, 0);
}
.generate-img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.generate-img img{
    display: block;
    width: 100%;
    height: 100%;
}
.generate-tbd-text{
    position: absolute;
    bottom: 40px;
    left: 18px;
    font-size: 18px;
    color: #fff;
}
.generate-tbd-text .tbd-text-border{
    border-top: 1px solid #fff;
}
.load-popup-box{
    position: relative;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 10px;
    background: url('../images/load.gif') center no-repeat;
    background-size: 60%;
    background-color: #fff;
}
.load-popup-box p{
    position: absolute;
    bottom: 10%;
    left: 0;
    width: 100%;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
    color: rgb(181, 0, 0);
}
.touch-hit{
    padding-top: 0.12rem;
    text-align: center;
    font-size: 12px;
    color: #fff;
}
.music{
    width: 0;
    height: 0;
    overflow: hidden;
}
.music-btn{
    position: fixed;
    top: 3%;
    right: 6%;
    z-index: 999;
    width: 30px;
    height: 30px;
    background: url(../images/music.png) center no-repeat;
    background-size: 100%;
}
.music-btn-ant{
    -webkit-animation: rotating 1.2s linear infinite;
    animation: rotating 1.2s linear infinite;
}
@-webkit-keyframes rotating {
    0%{
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100%{
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}
@keyframes rotating {
    0%{
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100%{
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}
.load-mask{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background-color: #140f41;
    background-size: 100%;
    -webkit-transition: transform .3s;
    transition: transform .3s;
}
.load-mask-hide{
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
}
.load-plan-box{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 200px;
    height: 12px;
    margin: auto;
    padding: 3px;
    border: 1px solid #fff;
    border-radius: 50px;
}
.load-plan{
    width: 0;
    height: 100%;
    border-radius: 50px;
    background-color: #fff;
    -webkit-transition: width .3s;
    transition: width .3s;
}
.load-plan-text{
    position: absolute;
    top: 180%;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
      rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  to {
    -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
      rotate3d(0, 1, 0, 0deg);
    transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.page-show .flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.share-popup{
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.6);
    opacity: 0;
    -webkit-transition: visibility .3s ease-in-out,
        opacity .3s ease-in-out;
    transition: visibility .3s ease-in-out,
        opacity .3s ease-in-out;
}
.share-popup img{
    display: block;
    width: 100%;
}
.share-popup-show{
    visibility: visible;
    opacity: 1;
}
.return-btn{
    position: absolute;
    top: 10%;
    left: 6%;
    z-index: 999;
    width: 30px;
    height: 30px;
    background: url(../images/20.png) center no-repeat;
    background-size: 100% 100%;
}