@charset "utf-8";
html {
	box-sizing: border-box;
}
*, *::before, *::after {
	box-sizing: inherit;
}
body{ background:var(--glass-bg) !important; font-size:.25rem;}
.dn { display: none;}
.clearfix:after { content: '\20'; clear: both; height: 0; display: block;}
a {-webkit-tap-highlight-color:transparent;}
*{ outline:none!important;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
img {-webkit-touch-callout: none;-webkit-user-select: none;-moz-user-select: none; -o-user-select: none;}
input,textarea { outline: none; border: none; box-sizing: border-box; background: none;}
/* --------------login / register-------------- */
.page-login,
.page-register {
	background: #f5f7fa;
	min-height: 100vh;
	overflow-x: hidden;
}
.login-page {
	position: relative;
	min-height: 100vh;
	padding: 0.32rem 0.28rem 0.8rem;
	width: 100%;
}
.login-card {
	width: 100%;
	max-width: 6.9rem;
	margin: 0 auto;
	background:var(--glass-bg) !important;
	border-radius: 0.4rem;
	box-shadow: 0 0.08rem 0.4rem rgba(15, 23, 42, 0.06);
	padding: 0.56rem 0.4rem 0.48rem;
}
.login-brand {
	text-align: center;
	margin-bottom: 0.48rem;
}
.login-logo {
	width: 1.8rem;
	height: 1.8rem;
	margin: 0 auto 0.32rem;
}
.login-logo img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
}
.login-title {
	font-size: 0.36rem;
	font-weight: 700;
	color: #ffffff;
	line-height: 1.3;
	margin-bottom: 0.12rem;
}
.login-sub {
	font-size: 0.24rem;
	color: #6b7280;
	line-height: 1.4;
}
.login-form .field {
	margin-bottom: 0.28rem;
}
.field-label {
	display: block;
	font-size: 0.22rem;
	color: #94a3b8;
	margin-bottom: 0.12rem;
}
.field-req {
	color: #ef4444;
}
.field-input {
	display: block;
	width: 100%;
	height: 0.88rem;
	padding: 0 0.24rem;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	background:var(--glass-bg) !important;
	font-size: 0.26rem;
	color: #ffffff;
}
.field-input::placeholder {
	color: #c4c9d4;
}
.field-pwd,
.field-user,
.field-invite {
	position: relative;
	display: flex;
	align-items: center;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	background:var(--glass-bg) !important;
	height: 0.88rem;
	padding-left: 0.2rem;
}
.field-user,
.field-invite {
	padding-right: 0.2rem;
}
.field-pwd {
	padding-right: 0.16rem;
}
.field-pwd:focus-within,
.field-user:focus-within,
.field-invite:focus-within {
	border-color: #3b82f6;
}
.field-inline-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-right: 0.08rem;
}
.field-input--inner {
	flex: 1;
	min-width: 0;
	height: 100%;
	border: none !important;
	padding: 0 0.08rem;
}
.field-pwd-toggle {
	flex-shrink: 0;
	width: 0.56rem;
	height: 0.56rem;
	padding: 0;
	border: none;
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.login-options {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0.36rem;
	margin-top: 0.04rem;
}
.login-remember {
	display: flex;
	align-items: center;
	font-size: 0.24rem;
	color: #64748b;
	cursor: pointer;
}
.login-remember input {
	width: 0.28rem;
	height: 0.28rem;
	margin-right: 0.12rem;
	accent-color: #3b82f6;
}
.login-forgot {
	font-size: 0.24rem;
	color: #2563eb;
}
.register-agree {
	display: flex;
	align-items: flex-start;
	margin-bottom: 0.36rem;
	margin-top: 0.08rem;
	font-size: 0.24rem;
	color: #64748b;
	line-height: 1.45;
}
.register-agree input {
	flex-shrink: 0;
	width: 0.28rem;
	height: 0.28rem;
	margin: 0.04rem 0.12rem 0 0;
	accent-color: #3b82f6;
}
.register-agree a {
	color: #2563eb;
}
.register-form .btn-primary {
	margin-bottom: 0;
}
.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 0.88rem;
	border-radius: 0.08rem;
	font-size: 0.28rem;
	font-weight: 500;
	border: none;
	cursor: pointer;
	box-sizing: border-box;
}
.btn-primary {
	background: linear-gradient(180deg, #3b82f6 0%, #2563eb 100%);
	color: #fff;
	margin-bottom: 0.36rem;
}
.btn-primary .btn-arrow {
	margin-left: 0.12rem;
	font-size: 0.3rem;
	line-height: 1;
}
.login-divider {
	display: flex;
	align-items: center;
	gap: 0.16rem;
	margin-bottom: 0.28rem;
}
.login-divider-line {
	flex: 1;
	height: 0.02rem;
	background: #e5e7eb;
}
.login-divider-text {
	flex-shrink: 0;
	font-size: 0.22rem;
	color: #9ca3af;
	white-space: nowrap;
}
.btn-outline {
	background:ffffff10;
	color: #fff;
	border: 0.02rem solid var(--glass-border) !important;
	text-align: center;
	line-height: 0.88rem;
	height: 0.88rem;
}
.fab-support {
	position: fixed;
	right: 0.32rem;
	bottom: 0.48rem;
	width: 1rem;
	height: 1rem;
	border-radius: 50%;
	background: #1f2937;
	border: none;
	box-shadow: 0 0.06rem 0.2rem rgba(0, 0, 0, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	padding: 0;
}
.login-version {
	position: fixed;
	left: 0.32rem;
	bottom: 0.28rem;
	font-size: 0.2rem;
	color: #9ca3af;
	z-index: 5;
	margin: 0;
}
/* --------------home index-------------- */
.page-home {
	background: #f0f2f5;
	min-height: 100vh;
	overflow-x: hidden;
}
.verify-pay-modal {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.4rem;
	box-sizing: border-box;
}
/* .dn 写在文件靠前，会被本块 display:flex 覆盖，必须单独隐藏 */
.verify-pay-modal.dn {
	display: none !important;
}
.verify-pay-modal__mask {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(15, 23, 42, 0.55);
}
.verify-pay-modal__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 5.6rem;
	padding: 0.4rem 0.36rem 0.36rem;
	border-radius: 0.16rem;
	background:var(--glass-bg) !important;
	box-shadow: 0 0.12rem 0.48rem rgba(0, 0, 0, 0.12);
	text-align: center;
}
.verify-pay-modal__text {
	margin: 0 0 0.32rem;
	font-size: 0.3rem;
	font-weight: 600;
	color: #ffffff;
	line-height: 1.45;
}
.verify-pay-modal__actions {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}
.verify-pay-modal__btn {
	display: block;
	width: 100%;
	height: 0.8rem;
	line-height: 0.8rem;
	border-radius: 0.12rem;
	font-size: 0.28rem;
	font-weight: 600;
	text-align: center;
	text-decoration: none;
	border: none;
	cursor: pointer;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
}
.verify-pay-modal__btn--primary {
	background:var(--gradient-primary) !important;
	color: #fff;
}
.verify-pay-modal__btn--primary:active {
	opacity: 0.85;
}
.verify-pay-modal__btn--ghost {
	background: #f3f4f6;
	color: #4b5563;
}

/* 视频教程弹窗 */
.video-modal {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1100;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.4rem;
}
.video-modal.dn {
	display: none !important;
}
.video-modal__mask {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: rgba(15, 23, 42, 0.65);
}
.video-modal__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 6.8rem;
	border-radius: 0.16rem;
	background:var(--glass-bg) !important;
	box-shadow: 0 0.12rem 0.48rem rgba(0, 0, 0, 0.18);
	overflow: hidden;
}
.video-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.24rem 0.32rem;
	border-bottom: 1px solid #e5e7eb;
	background:var(--glass-bg) !important;
}
.video-modal__title {
	font-size: 0.32rem;
	font-weight: 600;
	color: #ffffff;
}
.video-modal__close {
	width: 0.56rem;
	height: 0.56rem;
	line-height: 0.52rem;
	font-size: 0.36rem;
	color: #6b7280;
	background: transparent;
	border: none;
	border-radius: 0.12rem;
	cursor: pointer;
}
.video-modal__close:active {
	background: #f3f4f6;
}
.video-modal__body {
	padding: 0.24rem;
	background: #0f172a;
}
.video-modal__body video {
	display: block;
	background: #000;
}

.home-wrap {
	width: 100%;
	padding: 0.48rem 0.28rem 0.48rem;
	max-width: 7.5rem;
	margin: 0 auto;
}
.home-header {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	padding: 0.12rem 0 0.2rem;
	gap: 0.08rem;
}
.home-header__side {
	min-width: 0;
	pointer-events: none;
}
.home-logo {
	grid-column: 2;
	justify-self: center;
	display: inline-block;
	max-width: 4.2rem;
	height: auto;
	max-height: 0.88rem;
	width: auto;
	object-fit: contain;
}
.home-header .home-logout {
	grid-column: 3;
	justify-self: end;
	align-self: center;
}
.home-marquee {
	background: #ffffff10;
	border-radius: 0.08rem;
	height: 0.56rem;
	line-height: 0.56rem;
	overflow: hidden;
	margin-bottom: 0.24rem;
}
.home-marquee__inner {
	display: inline-flex;
	flex-wrap: nowrap;
	width: max-content;
	animation: home-marquee 22s linear infinite;
}
.home-marquee__text {
	flex-shrink: 0;
	padding-right: 1.2rem;
	font-size: 0.22rem;
	color: #ffffff;
	white-space: nowrap;
}
@keyframes home-marquee {
	0% { transform: translate3d(0, 0, 0); }
	100% { transform: translate3d(-50%, 0, 0); }
}
.home-userbar {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0.24rem;
	padding: 0.12rem 1.2rem;
	min-height: 0.64rem;
}
.home-userbar__center {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.12rem;
}
.home-userbar__icon {
	display: flex;
}
.home-userbar__name {
	font-size: 0.28rem;
	font-weight: 600;
	color: #ffffff;
}
.home-vip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 0.52rem;
	height: 0.52rem;
	padding: 0 0.1rem;
	border-radius: 50%;
	background:var(--gradient-primary) !important;
	color: #fff;
	font-size: 0.18rem;
	font-weight: 700;
}
.home-logout {
	display: inline-flex;
	align-items: center;
	gap: 0.06rem;
	font-size: 0.24rem;
	color: #64748b;
	-webkit-tap-highlight-color: transparent;
}
.home-buy-pack {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	gap: 0.06rem;
	font-size: 0.24rem;
	font-weight: 500;
	color: #4a90e2;
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
}
.home-buy-pack svg path{
	fill: var(--cyan) !important;
}

.home-buy-pack:active {
	opacity: 0.85;
}
.home-buy-pack__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #4a90e2;
}
.home-plat {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.1rem;
	margin-bottom: 0.28rem;
}
.plat-cell {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	min-width: 0;
	min-height: 0.88rem;
	padding: 0.12rem 0.08rem;
	background:var(--glass-bg) !important;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.12rem;
	font: inherit;
	color: inherit;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.plat-cell--link {
	text-decoration: none;
}
.plat-cell--pick.is-active {
	border-color: #4a90e2;
	box-shadow: 0 0 0 0.02rem rgba(74, 144, 226, 0.25);
}
.plat-cell__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	flex: 1;
	min-width: 0;
	gap: 0.04rem;
}
.plat-cell__icon {
	display: block;
	flex-shrink: 0;
	width: 0.56rem;
	height: 0.56rem;
	border-radius: 0.12rem;
	margin-right: 0.08rem;
	overflow: hidden;
	font-size: 0.22rem;
	line-height: 0.56rem;
	text-align: center;
	background: #ffffff!improtant;
}
.plat-cell__icon img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
	background:#ffffff;
}
.plat-cell__icon--help {
	background:var(--gradient-primary) !important;
	font-size: 0.2rem;
}
.plat-cell__title {
	display: block;
	font-size: 0.22rem;
	font-weight: 600;
	color: #ffffff;
	line-height: 1.2;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 100%;
}
.plat-cell__sub {
	display: block;
	font-size: 0.18rem;
	color: #94a3b8;
	line-height: 1.2;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 100%;
}
.home-config {
	background:var(--glass-bg) !important;
	border-radius: 0.12rem;
	padding: 0.24rem 0.2rem;
	margin-bottom: 0.28rem;
	border: 0.02rem solid var(--glass-border) !important;
}
.cfg-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.12rem 0.16rem;
	margin-bottom: 0.2rem;
}
.cfg-row:last-child {
	margin-bottom: 0;
}
.cfg-tag {
	flex-shrink: 0;
	padding: 0 0.2rem;
	height: 0.56rem;
	line-height: 0.56rem;
	border: none;
	border-radius: 0.08rem;
	background: var(--gradient-primary) !important;
	color: #fff;
	font-size: 0.22rem;
	cursor: pointer;
}
.cfg-select {
	flex: 1;
	min-width: 1.2rem;
	height: 0.56rem;
	padding: 0 0.16rem;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	background: var(--glass-bg) !important;
	font-size: 0.22rem;
	color: #fff;
}
.cfg-select--op {
	flex: 1 1 1.4rem;
}
.cfg-radios {
	display: flex;
	gap: 0.16rem;
	flex: 1;
}
.cfg-radio {
	display: inline-flex;
	align-items: center;
	gap: 0.1rem;
	padding: 0 0.24rem;
	height: 0.56rem;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	font-size: 0.22rem;
	color: #374151;
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease;
}
.cfg-radio:has(input:checked) {
	border-color: #4a90e2;
	background: rgba(74, 144, 226, 0.08);
}
.cfg-radio__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 0;
}
.cfg-radio__icon svg {
	width: 0.34rem;
	height: 0.34rem;
	display: block;
	fill:#ffffff;
}
.cfg-radio--ios .cfg-radio__icon {
	color: #111827;
}
.cfg-radio--android .cfg-radio__icon {
	color: #3ddc84;
}
.cfg-radio__text {
	white-space: nowrap;
	color:#ffffff;
}
.cfg-radio input {
	width: 0.28rem;
	height: 0.28rem;
	accent-color: var(--gradient-primary) !important;
	flex-shrink: 0;
}
.cfg-row--sms {
	align-items: center;
}
.cfg-sms-label {
	flex-shrink: 0;
	font-size: 0.22rem;
	color: #ffffff;
	margin-right: 0.04rem;
}
.cfg-btn {
	flex-shrink: 0;
	padding: 0 0.18rem;
	height: 0.56rem;
	border: none;
	border-radius: 0.08rem;
	background: var(--gradient-primary) !important;
	color: #fff;
	font-size: 0.2rem;
	cursor: pointer;
	white-space: nowrap;
}
.cfg-input {
	flex: 1 1 1.4rem;
	min-width: 0;
	height: 0.56rem;
	padding: 0 0.16rem;

	border-radius: 0.08rem;

	font-size: 0.22rem;
	border: 0.02rem solid var(--glass-border) !important;
    border-radius: 0.08rem;
    background: var(--glass-bg) !important;
	color:#ffffff;
}
.cfg-input::placeholder {
	color: #c4c9d4;
}
.cfg-input--sms {
	flex: 1 1 1.6rem;
	max-width: 2.4rem;
}
.face-verify__bar {
	background: #ffffff10;
	color: #fff;
	font-size: 0.24rem;
	text-align: center;
	padding: 0.16rem;
	border-radius: 0.12rem 0.12rem 0 0;
}
.face-verify__card {
	background: rgba(255,255,255,.005);
	border: 0.02rem solid var(--glass-border) !important;
	border-top: none;
	border-radius: 0 0 0.12rem 0.12rem;
	padding: 0.28rem 0.2rem 0.32rem;
}
.face-verify__body {
	position: relative;
	min-height: 2rem;
}
.face-status {
	position: absolute;
	left: 0;
	top: 22%;
	z-index: 5;
	width: 2rem;
	max-width: 46%;
	padding: 0.18rem 0.14rem;
	box-sizing: border-box;
	background: rgba(0, 0, 0, 0.55);
	border-radius: 0.08rem;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(calc(-100% - 0.12rem), -50%, 0);
	transition: opacity 0.35s ease, visibility 0.35s ease, transform 0.4s ease;
}
.face-status.is-show {
	opacity: 1;
	visibility: visible;
	transform: translate3d(0, -50%, 0);
}
.face-status__line {
	display: block;
	font-size: 0.18rem;
	line-height: 1.45;
	color: #86efac;
	margin: 0;
	padding: 0;
	word-break: break-all;
	opacity: 0;
	transform: translate3d(0, 0.1rem, 0);
	transition: opacity 0.35s ease, transform 0.35s ease;
}
.face-status__line + .face-status__line {
	margin-top: 0.05rem;
}
.face-status__line.is-in {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}
.face-verify__main {
	position: relative;
	z-index: 1;
	width: 100%;
	min-width: 0;
	text-align: center;
}
.face-verify__title {
	font-size: 0.3rem;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 0.12rem;
}
.face-verify__desc {
	font-size: 0.22rem;
	color: #64748b;
	margin-bottom: 0.28rem;
}
.face-ring {
	position: relative;
	overflow: hidden;
	width: 3.2rem;
	height: 3.2rem;
	max-width: 100%;
	margin: 0 auto 0.24rem;
	border-radius: 50%;
	background: rgba(74, 144, 226, 0.55);
	border: 0.06rem solid #4a90e2;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
.face-ring__inner {
	position: relative;
	z-index: 1;
	width: 78%;
	height: 78%;
	border-radius: 50%;
	border: 0.04rem solid rgba(74, 144, 226, 0.55);
	box-sizing: border-box;
	background: rgba(74, 144, 226, 0.55);
}
.face-ring__scan {
	--face-scan-h: 0.06rem;
	position: absolute;
	left: 0;
	width: 100%;
	height: var(--face-scan-h);
	top: 0;
	z-index: 2;
	box-sizing: border-box;
	border-radius: 0;
	pointer-events: none;
	background: linear-gradient(
		90deg,
		rgba(74, 144, 226, 0.15) 0%,
		rgba(74, 144, 226, 0.5) 12%,
		#4a90e2 50%,
		rgba(74, 144, 226, 0.5) 88%,
		rgba(74, 144, 226, 0.15) 100%
	);
	box-shadow:
		0 0 0.12rem rgba(74, 144, 226, 0.55),
		0 0 0.24rem rgba(96, 165, 250, 0.35);
	animation: face-ring-scan 2.6s linear infinite;
}
@keyframes face-ring-scan {
	0% {
		top: 0;
		opacity: 1;
	}
	68% {
		top: calc(100% - 0.06rem);
		opacity: 1;
	}
	82% {
		top: calc(100% - 0.06rem);
		opacity: 0;
	}
	100% {
		top: calc(100% - 0.06rem);
		opacity: 0;
	}
}
.face-verify__hint {
	font-size: 0.2rem;
	color: #64748b;
	margin-bottom: 0.28rem;
	line-height: 1.45;
}
.face-btn-app {
	width: 100%;
	height: 0.88rem;
	border: none;
	border-radius: 0.12rem;
	background: var(--gradient-primary) !important;
	color: #fff;
	font-size: 0.28rem;
	font-weight: 600;
	cursor: pointer;
}
/* --------------order page-------------- */
.page-order {
	background: #f0f2f5;
	min-height: 100vh;
	overflow-x: hidden;
}
.order-wrap {
	max-width: 7.5rem;
	margin: 0 auto;
	padding: 0.28rem 0.28rem 0.48rem;
}
.order-header {
	text-align: center;
	margin-bottom: 0.28rem;
}
.order-header__logo {
	display: inline-block;
	max-width: 4.8rem;
	max-height: 1rem;
	width: auto;
	height: auto;
	object-fit: contain;
}
.order-header__url {
	font-size: 0.2rem;
	color: #94a3b8;
	margin-top: 0.08rem;
	letter-spacing: 0.02rem;
}
.order-card {
	background:var(--glass-bg) !important;
	border-radius: 0.12rem;
	padding: 0.22rem 0.2rem;
	margin-bottom: 0.2rem;
	border: 0.02rem solid var(--glass-border) !important;
}
.order-card__row {
	display: flex;
	align-items: center;
	gap: 0.12rem;
	flex-wrap: wrap;
	cursor: pointer;
}
.order-row-ck {
	flex-shrink: 0;
	width: 0.32rem;
	height: 0.32rem;
	margin: 0;
	accent-color: #4a90e2;
}
.order-card__star {
	flex-shrink: 0;
	color: #4a90e2;
	font-size: 0.36rem;
	line-height: 1;
}
.order-card__txt {
	flex: 1;
	min-width: 2rem;
	font-size: 0.26rem;
	color: #fff;
	line-height: 1.4;
}
.order-buy {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 0.08rem;
	padding: 0 0.2rem;
	height: 0.56rem;
	border: 0.02rem solid #4a90e2;
	border-radius: 0.08rem;
	background:var(--glass-bg) !important;
	color: #4a90e2;
	font-size: 0.22rem;
}
.order-buy--hint {
	cursor: inherit;
	pointer-events: none;
	user-select: none;
}
.order-buy__price {
	font-weight: 700;
}
.order-card--exp .order-exp__icons {
	display: flex;
	align-items: center;
	gap: 0.12rem;
	margin-bottom: 0.16rem;
}
.order-card--exp .order-exp__icons img {
	width: 0.52rem;
	height: 0.52rem;
	object-fit: contain;
	display: block;
}
.order-exp__row {
	display: flex;
	align-items: center;
	gap: 0.12rem;
	margin-bottom: 0.14rem;
	flex-wrap: wrap;
	cursor: pointer;
}
.order-exp__row:last-child {
	margin-bottom: 0;
}
.order-exp__desc {
	flex: 1;
	min-width: 2rem;
	font-size: 0.26rem;
	color: #fff;
	line-height: 1.4;
}
.order-sku {
	display: flex;
	flex-direction: column;
	gap: 0.12rem;
	background: var(--glass-bg) !important;
	border-radius: 0.12rem;
	padding: 0.22rem 0.2rem;
	margin-bottom: 0.2rem;
	border: 0.02rem solid var(--glass-border) !important;
}
.order-sku__list {
	display: flex;
	flex-direction: column;
	gap: 0.14rem;
}
.order-sku__line {
	display: flex;
	align-items: center;
	gap: 0.16rem;
}
.order-sku__ico {
	flex-shrink: 0;
	width: 0.56rem;
	height: 0.56rem;
	object-fit: contain;
	display: block;
	border: none;
	border-radius: 0;
	background: transparent;
	padding: 0;
	background:#ffffff;border-radius: 4px;
}
.order-select {
	width: 100%;
	height: 0.68rem;
	padding: 0 0.2rem;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	background: var(--glass-bg) !important;
	font-size: 0.24rem;
	color: #fff;
}
.order-select--sku {
	flex: 1;
	min-width: 0;
	margin-bottom: 0;
}
.order-field-label {
	display: block;
	font-size: 0.2rem;
	color: #94a3b8;
	margin-bottom: 0.08rem;
}
.order-sms {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.12rem 0.16rem;
	padding: 0.18rem 0 0;
	margin-top: 0.06rem;
	border-top: 0.02rem solid var(--glass-border);
}
.order-sms.is-pulse {
	animation: orderSmsPulse 0.6s ease 2;
}
@keyframes orderSmsPulse {
	0%, 100% { box-shadow: inset 0 0 0 rgba(74, 144, 226, 0); }
	50% { box-shadow: inset 0 0 0 0.06rem rgba(74, 144, 226, 0.35); }
}
.order-sms__ico {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 0.56rem;
	height: 0.56rem;
}
.order-sms__ico svg {
	width: 0.44rem;
	height: 0.44rem;
	display: block;
}
.order-sms__tit {
	font-size: 0.24rem;
	color: #fff;
	font-weight: 500;
}
.order-stepper {
	display: inline-flex;
	align-items: center;
	border: 0.02rem solid var(--glass-border) !important;
	border-radius: 0.08rem;
	overflow: hidden;
}
.order-stepper__btn {
	width: 0.56rem;
	height: 0.52rem;
	border: none;
	background: var(--gradient-primary) !important;
	font-size: 0.28rem;
	line-height: 1;
	color: #fff;
	cursor: pointer;
}
.order-stepper__val {
	width: 0.56rem;
	height: 0.52rem;
	border: none;
	text-align: center;
	font-size: 0.24rem;
	color: #ffffff;
	background:var(--glass-bg) !important;
}
.order-sms__unit {
	font-size: 0.22rem;
	color: #fff;
}
.order-pay {
	background:var(--glass-bg) !important;
	border-radius: 0.12rem;
	padding: 0.22rem 0.2rem;
	margin-bottom: 0.2rem;
	border: 0.02rem solid var(--glass-border) !important;
}
.order-pay__tit {
	font-size: 0.26rem;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 0.16rem;
}
.order-pay__item {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.08rem;
	padding: 0.12rem 0;
	font-size: 0.24rem;
	color: #fff;
	cursor: pointer;
}
.order-pay__item svg { display: block; width: .48rem;}
.order-pay__item input {
	width: 0.3rem;
	height: 0.3rem;
	margin-right: 0.1rem;
	accent-color: #4a90e2;
}
.order-pay__tag {
	font-size: 0.18rem;
	color: #fff;
	background:var(--gradient-primary) !important;
	padding: 0.02rem 0.1rem;
	border-radius: 0.04rem;
}
.order-pay__item--off {
	color: #94a3b8;
	cursor: not-allowed;
}
.order-pay__item--off input {
	accent-color: #cbd5e1;
}
.order-pay__muted {
	font-size: 0.2rem;
	color: #94a3b8;
}
.order-card__row--member {
	cursor: default;
}
.order-sum-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.2rem;
	margin-bottom: 0.28rem;
	flex-wrap: nowrap;
}
.order-sum-left {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0.06rem 0.12rem;
	flex: 1;
	min-width: 0;
}
.order-sum__lab {
	font-size: 0.26rem;
	font-weight: 600;
	color: #fff;
}
.order-sum__rmb-main {
	font-size: 0.32rem;
	font-weight: 700;
	color: #dc2626;
	background: none;
	padding: 0;
	border: none;
}
.order-submit {
	border: none;
	border-radius: 0.12rem;
	background: linear-gradient(180deg, #5ba3f5 0%, #4a90e2 100%);
	color: #fff;
	font-size: 0.28rem;
	font-weight: 600;
	cursor: pointer;
}
.order-submit--bar {
	flex-shrink: 0;
	min-width: 2.2rem;
	height: 0.8rem;
	padding: 0 0.28rem;
}
.order-notice {
	background:var(--glass-bg) !important;
	border-radius: 0.12rem;
	padding: 0.24rem 0.22rem;
	border: 0.02rem solid var(--glass-border) !important;
}
.order-notice__tit {
	font-size: 0.3rem;
	font-weight: 600;
	color: #ffffff;
	margin-bottom: 0.16rem;
}
.order-notice__list {
	margin: 0;
	font-size: 0.22rem;
	color: #ffffff80;
	line-height: 1.6;
}
.order-notice__list li {
	margin-bottom: 0.12rem;
}
.order-notice__tg {
	color: #2563eb;
}
.order-notice__tg strong {
	font-weight: 600;
	color: inherit;
}
.order-notice__prefix {
	color: #999;
}
/* --------------orderWeb-------------- */
.page-order-web .order-header--web {
	margin-bottom: 0.08rem;
}
.order-web-subtitle {
	text-align: center;
	font-size: 0.34rem;
	color: #94a3b8!important;
	margin: 0.12rem 0;
	font-weight: bold;
	line-height: 2;
}
.order-web-packs {
	display: flex;
	flex-direction: column;
	gap: 0.16rem;
}
.order-web-pack {
	display: flex;
	align-items: center;
	gap: 0.1rem;
	flex-wrap: wrap;
	cursor: pointer;
	margin: 0;
}
.order-web-pack .order-row-ck {
	flex-shrink: 0;
}
.order-web-pack__ico {
	flex-shrink: 0;
	width: 0.56rem;
	height: 0.56rem;
	object-fit: contain;
	display: block;
	border: none;
	background:#ffffff;
	border-radius: 4px;
}
.order-web-pack__txt {
	flex: 1;
	min-width: 2.4rem;
	font-size: 0.22rem;
	color: #999;
	line-height: 1.45;
}
.order-web-pack__hint {
	flex-shrink: 0;
	margin-left: auto;
	font-size: 0.2rem;
	color: #64748b;
	white-space: nowrap;
}
.order-web-planbox {
	display: flex;
	flex-direction: column;
	gap: 0.12rem;
	padding-bottom: 0.08rem;
}
.order-web-planbox .order-sku__list {
	display: flex;
	flex-direction: column;
	gap: 0.14rem;
}
.order-web-planbox .order-sms {
	border-top: 0.02rem solid var(--glass-border);
	margin-top: 0.06rem;
	padding-top: 0.18rem;
}
.order-notice--web .order-notice__tit {
	display: flex;
	align-items: center;
	gap: 0.08rem;
}
.order-notice__ico {
	font-size: 0.28rem;
	color: #94a3b8;
	font-weight: normal;
	line-height: 1;
}
.order-notice__list--web > li:not(:last-child) {
	color: #999;
}
.order-notice__list--web > li:last-child {
	color: #999;
}
.order-notice__list--web > li:last-child .order-notice__tg {
	color: #2563eb;
}
/* --------------settle 结算页-------------- */
.page-settle {
	background: #e8ecf1;
	min-height: 100vh;
	overflow-x: hidden;
}
.settle-wrap {
	max-width: 100%;
	margin: 0 auto;
	padding: 0.24rem 0.28rem 0.48rem;
}
.settle-head {
	background: linear-gradient(115deg, #38bdf8 0%, #6366f1 45%, #7c3aed 100%);
	border-radius: 0.16rem;
	padding: 0.32rem 0.28rem 0.36rem;
	margin-bottom: 0.2rem;
	color: #fff;
	text-align: center;
	box-shadow: 0 0.08rem 0.24rem rgba(99, 102, 241, 0.35);
}
.settle-head__brand {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.12rem;
	margin-bottom: 0.16rem;
}
.settle-head__chain {
	font-size: 0.26rem;
	font-weight: 600;
	letter-spacing: 0.02rem;
}
.settle-head__amount {
	font-size: 0.48rem;
	font-weight: 800;
	line-height: 1.1;
	margin: 0;
	text-shadow: 0 0.02rem 0.08rem rgba(0, 0, 0, 0.12);
}
.settle-card {
	background:var(--glass-bg) !important;
	border-radius: 0.12rem;
	border: 0.02rem solid #e2e8f0;
	margin-bottom: 0.2rem;
}
.settle-timer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.1rem;
	padding: 0.2rem 0.16rem;
	border: none;
	box-shadow: 0 0.04rem 0.12rem rgba(15, 23, 42, 0.06);
}
.settle-timer__ico {
	font-size: 0.28rem;
	line-height: 1;
}
.settle-timer__txt {
	font-size: 0.24rem;
	color: #64748b;
}
.settle-timer__txt strong {
	color: #ea580c;
	font-weight: 700;
}
.settle-qrbox {
	padding: 0.28rem 0.24rem;
	text-align: center;
	border: none;
	box-shadow: 0 0.04rem 0.12rem rgba(15, 23, 42, 0.06);
}
.settle-qrwrap {
	display: inline-block;
	padding: 0.16rem;
	background:var(--glass-bg) !important;
	border:0.02rem solid var(--glass-border) !important;
	border-radius: 0.12rem;
}
.settle-qr {
	display: block;
	width: 2.4rem;
	height: 2.4rem;
	max-width: 100%;
}
.settle-qr-tip {
	margin: 0.2rem 0 0;
	font-size: 0.22rem;
	color: #94a3b8;
}
.settle-warn {
	display: flex;
	gap: 0.12rem;
	align-items: flex-start;
	padding: 0.2rem 0.18rem;
	background: #fff7ed;
	border: 0.02rem solid #fdba74;
	border-radius: 0.12rem;
	margin-bottom: 0.2rem;
}
.settle-warn__ico {
	flex-shrink: 0;
	width: 0.36rem;
	height: 0.36rem;
	line-height: 0.32rem;
	text-align: center;
	border-radius: 50%;
	background: #ea580c;
	color: #fff;
	font-size: 0.22rem;
	font-weight: 800;
}
.settle-warn__txt {
	margin: 0;
	font-size: 0.22rem;
	color: #9a3412;
	line-height: 1.5;
}
.settle-address {
	padding: 0.22rem 0.2rem;
	border: none;
	box-shadow: 0 0.04rem 0.12rem rgba(15, 23, 42, 0.06);
	margin-bottom: 0.2rem;
}
.settle-address__lab {
	font-size: 0.24rem;
	font-weight: 600;
	color: #fff;
	margin: 0 0 0.12rem;
}
.settle-address__box {
	display: flex;
	align-items: center;
	gap: 0.12rem;
	padding: 0.14rem 0.16rem;
	background: #eff6ff;
	border: 0.02rem dashed #93c5fd;
	border-radius: 0.08rem;
}
.settle-address__val {
	flex: 1;
	min-width: 0;
	font-size: 0.2rem;
	color: #1e40af;
	word-break: break-all;
	line-height: 1.4;
}
.settle-address__copy {
	flex-shrink: 0;
	padding: 0;
	border: none;
	background: none;
	font-size: 0.24rem;
	color: #2563eb;
	font-weight: 600;
	cursor: pointer;
}
.settle-instruct {
	position: relative;
	padding: 0.22rem 0.2rem 0.22rem 0.28rem;
	background: var(--glass-bg) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
	border: 0.02rem solid var(--glass-border) !important;
	box-shadow: 0 0.08rem 0.4rem rgba(0, 0, 0, 0.3) !important;
	margin-bottom: 0.2rem;
}
.settle-instruct::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.16rem;
	bottom: 0.16rem;
	width: 0.06rem;
	background: #2563eb;
	border-radius: 0 0.04rem 0.04rem 0;
}
.settle-instruct__tit {
	font-size: 0.26rem;
	font-weight: 700;
	color: #fff;
	margin: 0 0 0.14rem;
}
.settle-instruct__list {
	margin: 0;
	font-size: 0.22rem;
	color: #fff;
	line-height: 1.65;
}
.settle-instruct__list li {
	margin-bottom: 0.06rem;
}
.settle-instruct__hl {
	color: #ea580c;
	font-weight: 700;
}
.settle-order {
	background: var(--glass-bg) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
	border: 0.02rem solid var(--glass-border) !important;
	box-shadow: 0 0.08rem 0.4rem rgba(0, 0, 0, 0.3) !important;
	border-radius: 0.12rem;
	padding: 0.22rem 0.2rem;
	border: 0.02rem solid #e2e8f0;
}
.settle-order__tit {
	font-size: 0.26rem;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 0.16rem;
}
.settle-order__row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.16rem;
	font-size: 0.24rem;
	margin-bottom: 0.12rem;
}
.settle-order__row:last-child {
	margin-bottom: 0;
}
.settle-order__k {
	color: #fff;
	flex-shrink: 0;
}
.settle-order__v {
	color: #ffffff;
	font-weight: 500;
	text-align: right;
	word-break: break-all;
}
.settle-order__detail {
	display: none;
	margin-bottom: 0.18rem;
	padding: 0.18rem;
	border-bottom: 0.02rem dashed #cbd5e1;
}
.settle-order__detail.is-show {
	display: block;
}
.settle-order__lines {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}
.settle-order__item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.16rem;
	font-size: 0.22rem;
	line-height: 1.4;
	color: #334155;
}
.settle-order__item-name {
	flex: 1;
	min-width: 0;
	word-break: break-all;
}
.settle-order__item-price {
	flex-shrink: 0;
	color: #ffffff;
	font-weight: 600;
}
/* --------------index-start-------------- */
