*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(min-width:1080px){html{font-size:16px}}@media(max-width:767px){html{font-size:4.2666666667vw}}body{font-family:Source Han Sans,PingFang SC,Microsoft YaHei,sans-serif;font-size:40px;color:#3d3d3d;background-color:#f8f8f8;line-height:1.5;overflow-x:hidden}@media(max-width:767px){body{font-size:20px}}#app{min-height:100vh;width:100%;max-width:1080px;margin:0 auto;background:#fff}@media(max-width:767px){#app{max-width:100%}}a{text-decoration:none;color:inherit}ol,ul{list-style:none}img{max-width:100%;height:auto;display:block}button{background:none;cursor:pointer}button,input,textarea{border:none;font-family:inherit;font-size:inherit;color:inherit}input,textarea{outline:none}table{border-collapse:collapse;border-spacing:0}.clearfix:after{content:"";display:table;clear:both}.container{width:100%;max-width:1080px;margin:0 auto;padding:0 30px}@media(max-width:767px){.container{padding:0 20px}}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:#3d3d3d}.text-secondary{color:#979797}.text-disabled{color:#d8d8d8}.text-white{color:#fff}.text-error{color:#ff4d4f}.text-success{color:#90bb55}.text-warning{color:#fa8c16}.text-info{color:#0e6eb8}.font-size-60{font-size:60px}@media(max-width:767px){.font-size-60{font-size:30px}}.font-size-50{font-size:50px}@media(max-width:767px){.font-size-50{font-size:25px}}.font-size-40{font-size:40px}@media(max-width:767px){.font-size-40{font-size:20px}}.font-size-30{font-size:30px}@media(max-width:767px){.font-size-30{font-size:15px}}.font-size-24{font-size:24px}@media(max-width:767px){.font-size-24{font-size:12px}}.font-bold{font-weight:700}.font-normal{font-weight:400}.mt-xs{margin-top:10px}.mt-sm{margin-top:20px}.mt-md{margin-top:30px}.mt-lg{margin-top:40px}.mt-xl{margin-top:60px}.mb-xs{margin-bottom:10px}.mb-sm{margin-bottom:20px}.mb-md{margin-bottom:30px}.mb-lg{margin-bottom:40px}.mb-xl{margin-bottom:60px}.ml-xs{margin-left:10px}.ml-sm{margin-left:20px}.ml-md{margin-left:30px}.ml-lg{margin-left:40px}.ml-xl{margin-left:60px}.mr-xs{margin-right:10px}.mr-sm{margin-right:20px}.mr-md{margin-right:30px}.mr-lg{margin-right:40px}.mr-xl{margin-right:60px}.pt-xs{padding-top:10px}.pt-sm{padding-top:20px}.pt-md{padding-top:30px}.pt-lg{padding-top:40px}.pt-xl{padding-top:60px}.pb-xs{padding-bottom:10px}.pb-sm{padding-bottom:20px}.pb-md{padding-bottom:30px}.pb-lg{padding-bottom:40px}.pb-xl{padding-bottom:60px}.pl-xs{padding-left:10px}.pl-sm{padding-left:20px}.pl-md{padding-left:30px}.pl-lg{padding-left:40px}.pl-xl{padding-left:60px}.pr-xs{padding-right:10px}.pr-sm{padding-right:20px}.pr-md{padding-right:30px}.pr-lg{padding-right:40px}.pr-xl{padding-right:60px}.flex{display:flex}.flex-center{justify-content:center}.flex-between,.flex-center{display:flex;align-items:center}.flex-between{justify-content:space-between}.flex-start{display:flex;align-items:center;justify-content:flex-start}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.hide{display:none}.show{display:block}.scrollbar::-webkit-scrollbar{width:8px;height:8px}.scrollbar::-webkit-scrollbar-thumb{background-color:#d8d8d8;border-radius:4px}.scrollbar::-webkit-scrollbar-track{background-color:transparent}.gradient-text{background:linear-gradient(284deg,#2397f0 22%,#94de30 99%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.btn-primary{background:linear-gradient(284deg,#2397f0 22%,#94de30 99%);color:#fff;border:none;border-radius:8px;padding:20px 30px;font-size:30px;cursor:pointer;transition:all .3s}.btn-primary:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.15)}.btn-primary:active{transform:translateY(0)}.loading{display:flex;align-items:center;justify-content:center;padding:60px}.loading:after{content:"";width:40px;height:40px;border:4px solid rgba(14,110,184,.06);border-top-color:#0e6eb8;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}