body{font-size: 14px;}
.text12{font-size: 12px;}
.text14{font-size: 14px;}
.text16{font-size: 16px;}
.text18{font-size: 18px;}
.text20{font-size: 20px;}
.text22{font-size: 22px;}
p, ul, ol, blockquote, pre, table, img, video, iframe, object, embed{padding: 0; margin: 0;}
.state:active:after, a:active:after, .btn:active:after, .state.focus:after, a.focus:after, .state:focus:after, a:focus:after, .btn.focus:after, .btn:focus:after{background-color: inherit; box-shadow: none; transform: initial; opacity: 0;}
.display-layer{z-index: 19961214 !important;}
.display-layer .info{background: rgba(0, 0, 0, .6) !important; border-color: rgba(0, 0, 0, .6) !important; color: #fff;}
.mask-layer-open{position: fixed; width: 100%;}
.ns-header{position: fixed; top: 0; left: 0; right: 0; height: 44px; z-index: 1000; line-height: 44px; border-bottom: solid 1px #e2e2e2; background: #f7f7f7;}
.ns-header > a{position: relative; z-index: 20;}
.ns-header .go-back{float: left; padding: 0 17px;}
.ns-header .go-back i{font-size: 28px; display: block;}
.ns-header .ns-operation{float: right; padding: 0 8px;}
.ns-header h1{height: 44px; line-height: 44px;font-size: 16px; text-align: center; font-weight: normal; overflow: hidden; margin: 0 44px; text-overflow: ellipsis; white-space: nowrap;}
.ns-header + div{height: 44px;}
.bottom-menu{position: fixed; bottom: 0; left: 0; right: 0; width: 100%; z-index: 998; background: #ffffff; box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08); padding-bottom: constant(safe-area-inset-bottom); padding-bottom: env(safe-area-inset-bottom); border-top: 1px solid rgba(0, 0, 0, 0.04);}
.bottom-menu + div{height: 66px;}
.bottom-menu ul{overflow: hidden; display: flex; padding: 0; margin: 0; list-style: none;}
.bottom-menu ul li{flex: 1; float: none; text-align: center; width: auto;}
.bottom-menu ul li a{display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; width: 100%; padding: 6px 0 4px; text-decoration: none; position: relative; transition: all 0.2s ease;}
.bottom-menu ul li div{padding: 4px 0 0; display: flex; align-items: center; justify-content: center; position: relative;}
.bottom-menu ul li img{width: 26px; height: 26px; transition: all 0.25s ease; filter: grayscale(0);}
.bottom-menu ul li span{text-overflow: ellipsis; white-space: nowrap; overflow: hidden; display: block; line-height: 1.4; font-size: 11px; margin: 3px 0 0; color: #999; transition: color 0.25s ease, font-weight 0.25s ease;}
.bottom-menu ul li a:active{transform: scale(0.92);}
.bottom-menu ul li a.active span{font-weight: 600;}
.bottom-menu ul li a.active::after{content: ''; position: absolute; bottom: -2px; left: 50%; transform: translateX(-50%); width: 20px; height: 3px; border-radius: 2px; background: linear-gradient(90deg, #FF3D71, #FF0036); transition: all 0.25s ease;}
.bottom-menu ul li a.active img{transform: translateY(-2px);}
.bottom-menu ul li a.active span{color: #FF0036 !important;}

/* Loading dot on menu item */
.bottom-menu ul li.loading .menu-icon{position: relative;}
.bottom-menu ul li.loading .menu-icon::after{content: ''; position: absolute; top: 50%; left: 50%; width: 14px; height: 14px; margin: -7px 0 0 -7px; border: 2px solid rgba(255, 0, 54, 0.2); border-top-color: #FF0036; border-radius: 50%; animation: bm-spin 0.7s linear infinite;}
.bottom-menu ul li.loading img{opacity: 0.35;}
.bottom-menu ul li.loading span{opacity: 0.6;}
@keyframes bm-spin{to{transform: rotate(360deg);}}

/* Small screen adaptation */
@media (max-width: 360px){
	.bottom-menu ul li img{width: 24px; height: 24px;}
	.bottom-menu ul li span{font-size: 10px;}
	.bottom-menu + div{height: 60px;}
}

/* Very small screens (iPhone SE, etc) */
@media (max-width: 320px){
	.bottom-menu ul li img{width: 22px; height: 22px;}
	.bottom-menu ul li span{font-size: 10px; margin-top: 2px;}
	.bottom-menu ul li a{padding: 4px 0 2px;}
	.bottom-menu + div{height: 56px;}
}

/* Tablet landscape - slightly larger */
@media (min-width: 768px){
	.bottom-menu ul li img{width: 28px; height: 28px;}
	.bottom-menu ul li span{font-size: 12px;}
}
.ns-copyright{text-align: center; padding: 10px 0 10px; font-size: 12px;}
.ns-copyright img{width: 90px; height: auto; display: block; margin: 0 auto; object-fit: cover; min-height: 15px;}
.ns-copyright a{padding-top: 5px; display: block;}

/*下拉刷新*/
.list-content-wrapper{
    width: 100%;
    background-color: white;
    padding: 10px 10px;
    box-sizing: border-box;
}
.list-content-wrapper-top{
    display: flex;
}
.list-content-wrapper-top-left{
    flex: 1;
    text-align: left;
}
.list-content-wrapper-top-right{
    flex: 1;
    text-align: right;
}
.list-content-wrapper-bottom{
    margin-top: 5px;
    display: flex;
}
.list-content-wrapper-bottom-left{
    flex: 1;
    text-align: left;
}
.list-content-wrapper-bottom-right{
    flex: 1;
    text-align: right;
}
.line{
    border-bottom: solid 1px #f2f2f2;
}
.list-empty-wrapper{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 300px;
}
.list-empty-text{
    text-align: center;
    margin-top: 20px;
    color: #cccccc;
}

.standard-btn{
    color: white;
}

.s-center{
    display: flex;
    justify-content: center;
    align-items: center;
}


/* 支付密码 */
.pay-password-bg{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #0e0e0e;
    opacity:.5;
    z-index: 9999;
}
.pay-pass-bg-wrapper{
    position: fixed;
    top: 30%;
    width: 100%;
    height: 100px;
    z-index: 10000;
}
.password-div{
    width: 80%;
    height: 100%;
    margin: 0 auto;
    background-color: white;
    border-radius: 10px;
    opacity:1;
}
.password-div input{
    width: 1px;
    height: 1px;
    opacity: 0;
    border: 0;
}
.password-lable{
    height: 30px;
    clear: both;
}
.password-lable li{
    float: left;
    width: 30px;
    height: 30px;
    line-height: 30px;
    text-align: center;
    border: 1px solid #dedede;
    margin-left: -1px;
}
.pay-password-top{
    text-align: center;
    padding: 10px 0;
    font-weight: bold;
}

.password-input-wrapper{
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.password-lable li{
    font-size: xx-large;
}
/* 支付密码 */