body,html{overscroll-behavior-x:none}#app,body,html{width:100%;max-width:100%;height:100%;overflow:hidden}#app{display:flex;flex-direction:column;height:100dvh}.app-main{flex:1;min-height:0;width:100%;overflow-x:clip;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:none}.custom-tabbar.van-tabbar{position:relative!important;flex-shrink:0;left:auto!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:100%!important;z-index:1000!important;box-sizing:border-box!important;transform:none!important}.custom-tabbar .van-tabbar-item{position:relative;color:#333}.custom-tabbar .van-tabbar-item--active{color:#333}.custom-tabbar .tabbar-icon-img{width:5.86667vw;height:5.86667vw;object-fit:contain}.custom-tabbar .tabbar-hot-badge{position:absolute;top:.53333vw;right:1.6vw;z-index:1;padding:1px 1.06667vw;border-radius:2.13333vw;background:#ff2b2b;color:#fff;font-size:2.66667vw;font-weight:700;line-height:1.2;transform:scale(.9);transform-origin:top right;pointer-events:none}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .28s ease,transform .28s ease}.page-fade-enter-from{opacity:0;transform:translateY(2.13333vw)}.page-fade-leave-to{opacity:0;transform:translateY(-1.06667vw)}.loading-container{position:relative;display:flex;justify-content:center;align-items:center;height:100%;overflow:hidden;animation:app-boot-fade-in .35s ease both}.loading-container__bg{position:absolute;inset:0;background:radial-gradient(ellipse 80% 50% at 50% 28%,rgba(25,137,250,.14),transparent 70%),linear-gradient(165deg,#f7f9fc,#eef3f9 48%,#f5f7fa);background-size:100% 100%,200% 200%;animation:loading-bg-shift 4s ease-in-out infinite alternate}.loading-container__card{position:relative;z-index:1;padding:7.46667vw 9.6vw;border-radius:4.26667vw;background:hsla(0,0%,100%,.72);box-shadow:0 2.13333vw 7.46667vw rgba(15,40,80,.06);backdrop-filter:blur(2.66667vw);-webkit-backdrop-filter:blur(2.66667vw);animation:loading-card-pulse 1.6s ease-in-out infinite}@keyframes app-boot-fade-in{0%{opacity:0}to{opacity:1}}@keyframes loading-bg-shift{0%{background-position:0 40%,0 50%}to{background-position:0 60%,100% 50%}}@keyframes loading-card-pulse{0%,to{transform:translateY(0);box-shadow:0 8px 28px rgba(15,40,80,.06)}50%{transform:translateY(-3px);box-shadow:0 12px 32px rgba(15,40,80,.1)}}.van-toast--loading{min-width:25.6vw!important;padding:4.8vw 5.33333vw!important;border-radius:3.73333vw!important;background:rgba(38,42,52,.78)!important;backdrop-filter:blur(2.13333vw);-webkit-backdrop-filter:blur(2.13333vw);box-shadow:0 2.66667vw 7.46667vw rgba(0,0,0,.18)}.van-toast{transition:opacity .22s ease,transform .22s ease!important}.van-overlay{transition:opacity .25s ease!important}.loading-overlay{animation:app-boot-fade-in .25s ease both;background:hsla(0,0%,100%,.55)!important;backdrop-filter:blur(1.06667vw);-webkit-backdrop-filter:blur(1.06667vw)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes softShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes shine{0%{transform:translateX(-100%) rotate(45deg)}to{transform:translateX(100%) rotate(45deg)}}.animate-fadeIn{animation:fadeIn .3s ease-in-out}.animate-slideUp{animation:slideUp .4s ease-out}.animate-shimmer{background-image:linear-gradient(90deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.45) 50%,hsla(0,0%,100%,0));background-size:200% 100%;animation:softShimmer 1.4s ease-in-out infinite}