body {
	font-family: Avenir,'Open Sans', Arial,'宋体','Microsoft YaHei', Helvetica, sans-serif;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    background-color: #fff;
    font-size: 14px;
    color: #0f172a;
}
html,body,div,p,ul,li,dl,dt,dd,em,i,span,a,img,input,h1,h2,h3,h4,h5 {margin:0;padding:0}
a,img,input {border:none;}
a {text-decoration:none;}
ul,li{list-style: none}
a, a:focus, a:hover {cursor: pointer;color: inherit;outline: none;text-decoration: none;}
div:focus { outline: none; }
a:focus, a:active { outline: none; }
a, a:focus, a:hover { cursor: pointer; color: inherit; text-decoration: none; } 
.page-content{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; height:15rem; margin: auto;width:7.5rem}
.hide{ display: none; } 
.click-off{pointer-events:none;}
input{ outline: none;  background-color: transparent; }
img{ vertical-align: middle; }
a, img {-webkit-touch-callout: none;}
[v-cloak] {
display: none;
}
.displayNone{
	display: none;
}
#app{
	min-width:1200px;
}
.container{
    max-width: 1200px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    height: 100%;
}
.index-box{  
	overflow: hidden;
}
header{
	height: 61px;
	width: calc(100% - 40px);
	position: relative;
	z-index: 1002;
	top: 0;
	left: 0;
	background: #fff;
	/* box-shadow: 0 2px 3px rgba(0,0,0,.2); */
	min-width: 1200px;
	border-bottom: 1px solid #f1f1f1;
	padding: 0 20px;
}
header .logo{
    height: 40px;
    margin-top: 10px;
    width:170px;
    margin-left: 10px;
    float: left;
}
header .logo img{
	height: 36px;
    float: left; 
    margin-top: 2px;
}
header .logo .logo-name{
	font-size: 19px;
	line-height: 25px; 
	text-indent: 5px;
	color: #2a5bd7;
}
header .logo p{
	font-size: 11px;
	line-height: 15px; 
	text-indent: 5px;
	color: #2a5bd7;
}

.qrcode-title{
	margin-top: 80px;
	text-align: center;
}
.qrcode-title h1{
	font-size: 30px;
    width: 800px;
    display: block;
    margin: auto;
    font-weight: bold;
}
.qrcode-title p{
	font-size: 16px;
}
.qrcode-create{
	box-shadow: none;
    width: 100%;
    min-height: 600px;
    margin-top: 10px;
    padding: 10px 0; 
    overflow: hidden; 
}
.empower{
	position: fixed;
    right: 5px;
    width: 215px;
    height: 300px;
    background: #ecfdff;
    border-radius: 10px;
    bottom: 100px;
    padding: 10px;
    box-sizing: border-box;
    color: #007c8c;
	z-index: 1001;
}
.empower .title{
	font-size: 18px;
	text-align: center;
	font-weight: bold;
} 
.empower img{
	width: 100%;
}
.el-input-group__append, .el-input-group__prepend {  
    background-color: #29b474 !important;
    color: #fff !important;
    vertical-align: middle;
    display: table-cell;
    position: relative;
    border: 1px solid transparent !important;
    border-radius: 4px;
    padding: 0 10px !important;
    width: 1px;
    white-space: nowrap;
}
.show-auth-num{
    height: 50px;
    text-align: center;
    margin-top: 20px;
    font-size: 20px;
    background: #ecfdf9;
    padding: 10px 0;
    margin-bottom: 10px;
    border-radius: 10px;
} 
.show-auth-num p:nth-child(1){
	font-size: 14px;
}
.show-auth-num p:nth-child(2){
	font-size: 20px;
	font-weight: bold;
}
.qrcode-set-one{
	width: calc(800px - 40px);
	height: calc(100% - 20px);
	float: left;
	position: relative; 
	margin-left: 10px;
	margin-right: 15px;
}
.border-class{
	padding: 20px;
    box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.1);
    border-radius: 10px;
}
.qrcode-set-two{
	width: 400px;
	height: calc(100%);
	float: left;
	box-shadow: 0 1px 15px 0 rgba(0, 0, 0, 0.1);
	/* border: 1px solid #000; */
	box-sizing: border-box;
	padding: 15px;
	border-radius: 10px;
}
.qrcode-set-three{
	width: calc(25%);
	height: calc(100%); 
	float: left;
}
.form__textarea { 
	border: 1px solid #f1f1f1;
	border-left: 0px;
    border-radius:0 6px 6px 0;
    height: 200px;
    position: relative;
    color: #000;
    font-size: 13px;
    width: 100%;
    padding-left: 50px;
    line-height: 25px;
    letter-spacing: 1px;
    box-sizing: border-box;
    word-wrap: normal; 
    font-family: Fira Code VF,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;
    overflow-x: clip;
}
.qrcode-create h1{
	font-size: 20px;
	line-height: 50px;
}
.empowerClose{
	transform: rotate(0deg);
	position: fixed;
	right: 5px;
	bottom: 100px;
	width: 30px; 
	background: #ecfdff;
	padding: 10px;
	border-radius: 5px;
	color: #007c8c;
	cursor: pointer;
}
.el-slider__bar { 
    background-color: #1e283b !important; 
}
.el-slider__button { 
    border: 2px solid #1e283b !important;  
}
.demo{
	margin: auto;
	width: 320px;
	height: 320px;
	overflow-x: hidden;
	margin-bottom: 10px;
	display: flex;
	flex-direction: column;
	position: relative;
}
.demo h5{
	text-align: center;
    font-size: 18px;
    line-height: 30px;
    font-weight: 300;
    position: absolute;
    width: 430px;
    z-index: 1;
    top: 0;
}
.demo-qrcode{
	margin: auto; 
	width: fit-content;
	border: 1px solid #f1f1f1; 
    position: relative; 
 }
.show-qrcode-demo img{
	margin: auto;
}
.create-box{
	margin-top: 30px;
}
.create-box .el-button--success{
    color: #FFF !important;
    background-color: #29b474 !important;
    border-color: #29b474 !important;
    margin: 10px auto !important;
    display: block !important;
    width: 100% !important;
    font-size: 16px; 
}
.name-set,.labels-set{
	margin-top: 10px;
}
.el-radio__input.is-checked .el-radio__inner {
    border-color: #1e283b!important;
    background: #1e283b!important;
}
.el-button--success {
    color: #FFF important;
    background-color: #29b474 !important;
    border-color:  #29b474 !important;
}

.img-list{
	 margin-top: -10px;
 } 
 
 
.pay {
	width: 80px;
	height: 30px;
	border: 2px solid #f1f1f1;
	border-radius: 5px;
	padding: 5px 10px;
	float: left;
	margin-right: 15px;
	cursor: pointer;
	margin-bottom: 10px;
}

.pay img{
	width: 90%;
	line-height: 30px;
	display: block;
}
.paypal img{
	margin-top: 5px;
}
.Method .active{
	border:2px solid  #3d28df ;
}
textarea::placeholder {
  color: #666; /* Change to your desired color */
}
.empower .el-input__inner{
	font-size: 10px !important;
}
.show-qrcode{
    width: 100%;
    overflow: hidden;
    height: 450px;
    font-size: 10px;
    text-align: center;
    padding: 1px;
    overflow-y: auto;
    border: 1px solid #f1f1f1;
    box-sizing: border-box;
}
.qrcode-item{
    width: 200px;
    background: #fff;
    cursor: pointer;
    overflow: hidden;
    height: auto;
    float: left;
    border: 5px solid #fff;
    border-radius: 10px;
    margin: 0 10px 10px 0;
}

.qrcode-item img{
	width: 100px;
    display: block;
    float: left; 
}
.qrcode-item p {
	text-align: left;
	line-height: 20px;
	font-size: 12px;
}
.qrcode-item p span{
	color: #409EFF;
}
.qrcode-item .data{
	margin-top: 5px;
}
.show-qrcode-title{
    height: 40px;
    background: #29b474;
    border-radius: 10px 10px 0 0;
}
.show-qrcode-title .circle{
	height: 10px;
	width: 10px;
	float: left;
	background: #fff;
	display: block;
	margin-left: 10px;
	margin-top: 12px;
	border-radius: 100%;
}
.show-qrcode-title .circle:nth-child(1){
	background: #F56C6C;
}
.show-qrcode-title .circle:nth-child(2){
	background: #ffffff;
}
.show-qrcode-title .circle:nth-child(3){
	background: #dddddd;
}
 
.show-qrcode-title .show-qrcode-num{
	line-height: 40px;
	float: right;
	margin-right: 10px;
	color: #fff;
}
.show-qrcode-footer{
	height: 40px;
	padding: 10px 0; 
	border-radius: 0 0 5px 5px;
}
 

.show-barcode{
    width: 100%;
    height: 400px;
    overflow: hidden;
    font-size: 10px;
    text-align: center;
    padding: 10px; 
    overflow-y: auto;
    background: #f1f1f1;
    box-sizing: border-box;
}
.barcode-item{
    width:115px;
    background: #fff;
    cursor: pointer;
    overflow: hidden;
    height: auto;
    float: left;
    border: 5px solid #fff;
    border-radius: 10px;
    margin: 0 10px 10px 0;
} 
.barcode-item img{
	width: 100px;
    display: block;  
	margin: auto;
}
.barcode-item p {
	text-align: left;
	line-height: 20px;
	font-size: 12px;
}
.barcode-item p span{
	color: #409EFF;
}
.barcode-item .data{
	margin-top: 5px;
} 
 
.img-list ::-webkit-scrollbar {
  background-color: #f1f1f1;  
}
.img-list ::-webkit-scrollbar-thumb {
  background-color: #29b474;  
}

.pay-items{
	overflow: hidden;
	margin-bottom: 10px;
	padding-top: 20px;
}
.pay-item{
	width: 100px;
	text-align: center;
	background: #f1f1f1;
	float: left;
	margin-right: 10px;
	border-radius: 5px;
	color: #3d28df;
	height:50px;
	cursor: pointer;
	margin-bottom: 20px;
	font-family: "ProximaNova ExtraBold","Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
}
.pay-item span{
	background: red;
	color: yellow;
	padding: 2px 5px;
	border-radius: 5px;
	font-size: 10px;
	position: absolute;
	top: -10px;
	right: 0;
}
.pay-item h4{
	font-size: 15px;
    margin-top: 4px;
    line-height: 20px;
    font-weight: 300;
}
.pay-item p{
	line-height: 30px;
}
.pay-items .active{
	color: #eaeeff;
	background: #3d28df;
	transition: all 0.6s ease-in-out;
}
.payment-info{
	background: #f1f1f1;
    padding: 10px;
    color: #000;
    line-height: 28px;
}
.payment-info span{
	font-weight: 600;
}
.help-box{
	padding-top: 50px;
	min-height: 500px;
	overflow: hidden;
	background: #eee;
	margin-top: 30px;
}
.help-box .title{
	text-align: center;
}
.help-box .title h2{
	font-size: 30px;
}
.help-box .title p{
	font-size: 16px;
}
.help-box .left{
	width: 50%;
	float: left;
}
.help-box .right{
	width: 45%;
    float: left;
    background: #fff; 
    height: 320px;
    border-radius: 10px;
    padding:20px 20px;
	margin-top: 10px;
}
.help-box .right p {
	line-height: 22px;
}
.help-box .left img{
	display: block;
	margin: 30px auto;
}

.help-box .right img{
	display: block;
	margin: 30px auto;
}

.faqs-box{
	margin-top: 50px;
	min-height: 500px;
	overflow: hidden;
	padding: 0 10px;
}
.faqs-box .title h2 {
    font-size: 30px;
}
.faqs-box .left h3{
	font-family: "ProximaNova Bold","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	font-size: 25px;
	line-height: 40px;
	color: #252628;
}
.faqs-box .left p{
	line-height: 25px;
}
.loading{
	position: fixed;
	height: 100%;
	width: 100%;
	background: rgba(15, 23, 42, 0.62);
	z-index: 10000;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	box-sizing: border-box;
	backdrop-filter: blur(6px);
}
.loading-item{
	width: 420px;
	max-width: 100%;
	min-height: 0;
	margin: 0 auto;
	padding: 40px 36px 34px;
	box-sizing: border-box;
	overflow: hidden;
	text-align: center;
	background: #fff;
	border: 1px solid rgba(226, 232, 240, 0.9);
	border-radius: 22px;
	box-shadow: 0 24px 70px rgba(15, 23, 42, 0.22);
}
.loading-item p{
	text-align: center;
	color: #334155;
	font-size: 14px;
	line-height: 1.6;
	margin: 0;
	margin-top: 30px;
}
.loading-spinner{
	width: 62px;
	height: 62px;
	margin: 0 auto 22px;
	border-radius: 50%;
	border: 4px solid #e2e8f0;
	border-top-color: #2563eb;
	border-right-color: #2563eb;
	animation: loadingSpin 0.85s linear infinite;
}
.loading-title{
	color: #0f172a !important;
	font-size: 18px !important;
	font-weight: 600;
	letter-spacing: 0.01em;
}
.loading-progress{
	width: 360px;
	max-width: 100%;
	margin: 22px auto 0;
}
.loading-progress .el-progress-bar__outer{
	background-color: #e5edf8;
}
.loading-progress .el-progress-bar__inner{
	background: linear-gradient(90deg, #2563eb 0%, #3b82f6 100%);
}
.loading-count{
	margin-top: 10px !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 500;
}
.loading-tip{
	margin-top: 18px !important;
	padding: 12px 14px;
	color: #475569 !important;
	font-size: 13px !important;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
}
@keyframes loadingSpin{
	to {
		transform: rotate(360deg);
	}
}
.demo-logo{
	 width: 35%;
	 position: absolute;
	 left: 50%;
	 top: 50%;  
}

 .print{
	 min-width: 1300px;
	 margin: auto;
	 padding: 10px; 
	 background-image: url(data:image/gif;base64,R0lGODlhDAAMAMQAAP///+bm5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAMAAwAAAUcYCCOQGmOpFmiorqyLsAG8RzXsGvrubr7vRMrBAA7);
	 background-color: transparent; 
 }
 .print-box{ 
	height: auto; 
	margin: auto; 
	background-color: #fff;
 }
.footer {
	width: 100%;
	box-sizing: border-box;
	margin: 96px 0 0;
	padding: 64px 0 24px;
	border-top: 4px solid #29b474;
	background: #101418;
	color: #aeb5bf;
}

.footer .container {
	display: block;
	width: 100%;
	height: auto;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 32px;
	box-sizing: border-box;
	overflow: visible;
}

.footer-main {
	display: grid;
	grid-template-columns: minmax(280px, 1.65fr) repeat(3, minmax(150px, 1fr));
	gap: 48px;
	align-items: start;
}

.footer-brand {
	max-width: 330px;
}

.footer-brand-mark {
	display: inline-flex;
	align-items: center;
	color: #fff;
	font-size: 21px;
	font-weight: 700;
	line-height: 1;
}

.footer-brand-mark img {
	width: auto;
	height: 34px;
	margin: 0 10px 0 0;
}

[dir="rtl"] .footer-brand-mark img {
	margin-right: 0;
	margin-left: 10px;
}

.footer-tagline {
	max-width: 310px;
	margin: 20px 0 18px;
	color: #aeb5bf;
	font-size: 14px;
	line-height: 1.7;
}

.footer-support {
	display: inline-block;
	color: #e5e7eb;
	font-size: 14px;
	font-weight: 500;
}

.footer-column h3,
.footer-partners-label {
	margin: 0 0 18px;
	color: #f9fafb;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0;
}

.footer-nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

[dir="rtl"] .footer-nav {
	align-items: flex-end;
}

.footer-nav a,
.footer-partner-links a,
.footer-bottom a {
	color: #aeb5bf;
	font-size: 14px;
	line-height: 1.5;
	transition: color 0.2s ease;
}

.footer a:hover {
	color: #55d49a;
}

.footer a:focus-visible {
	outline: 2px solid #55d49a;
	outline-offset: 4px;
}

.footer-partners {
	display: flex;
	align-items: center;
	gap: 24px;
	margin-top: 48px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.footer-partners-label {
	flex: 0 0 auto;
	margin: 0;
}

.footer-partner-links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
}

.footer-partner-links a {
	font-size: 13px;
}

.footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-top: 24px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: #7f8792;
	font-size: 13px;
}

.footer-bottom p {
	margin: 0;
}

.footer-bottom a {
	color: #7f8792;
	font-size: 13px;
}

@media screen and (max-width: 960px) {
	.footer {
		width: 100%;
		min-width: 0;
		max-width: 100vw;
	}

	.footer-main {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 40px 48px;
	}

	.footer-brand {
		grid-column: 1 / -1;
		max-width: 460px;
	}
}

@media screen and (max-width: 600px) {
	.footer {
		margin-top: 64px;
		padding: 44px 0 20px;
	}

	.footer .container {
		padding: 0 20px;
	}

	.footer-main {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.footer-brand {
		grid-column: auto;
	}

	.footer-partners,
	.footer-bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 12px;
	}

	.footer-partners {
		margin-top: 36px;
	}
}
 .h1{
	font-size: 20px;
	font-weight: bold;
	line-height: 40px;
 }
.show-qrcode-font{
 	text-align: center;
	font-weight: bold;
 }
.qrcode-item-more{
	 height: 40px;
	 text-align: center;
	 width: 100%;
	 overflow: hidden;
	 float: left;
	 line-height: 40px;
	 font-size: 13px;
 }
.menu{
	 width: fit-content;
	 float: left;
	 line-height: 60px;
	 color: #000;
	 margin-left: 20px;
 }
.menu .active {
	color: #29b474 !important;
}
.menu a{
    margin-right: 15px;
    font-size: 14px;
    font-weight: 400;
}
.menu a:hover{ 
  color:#29b474;
}
.menu .el-dropdown-link{ 
    font-size: 14px;
    font-weight: 400;
	cursor: pointer;
}
.menu .el-dropdown-link:hover{ 
  color:#29b474;
}
.menu .el-dropdown{
	display: inline;
    margin-right: 15px;
}
.upload-name{
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  background: rgba(0,0,0,0.5);
  color: #fff;
}
.changeLan{
	width: 50px; 
	position: absolute;
	right: 10px;
	top: 15px;
}
.head-tools{
    line-height: 60px;
    margin-right: 20px;
    font-weight: bold;
    position: absolute;
    right: 50px; 
	top: 0;
}
.head-tools .btn-sign-in{
	background: #29b474; 
    padding: 5px 10px;
    color: #fff;
    border-radius: 4px;
	margin-right: 15px;
	font-weight: 100;
} 
.head-tools .btn-sign-up{
	background: #409EFF;
	color: #fff;
    padding: 5px 10px; 
    border-radius: 4px;
	font-weight: 100;
}


.login-bj{
	width: 100%;
	height: 100%;
	position: absolute;
	background-color: #f1f1f1;
}

.login-item{
	width: 880px;
    height: 460px;
    position: absolute;
    background: #f1f1f1;
    top: 40%;
    left: 50%;
    margin-left: -440px;
	margin-top: -200px;
    box-shadow: 1px 2px 4px 0 rgba(0,0,0,.5);
    overflow: hidden;
}
.login-item .left{
	background-image: linear-gradient(180deg,#29b474,#409EFF);
    width: 400px;
    float: left;
    height: 600px;
}
.login-item .left h1{
	text-align: center;
    color: #fff;
    margin-top: 10%;
    width: 80%;
    font-size: 39px;
    margin-left: 10%;
}

.login-item .right{
	background-color: #fff;
	float: left;
	width: 480px;
	height: 600px;
}
.login-item .right h3{
	text-align: center;
	font-size: 20px;
	margin-top: 10%;
	color: #000;
	line-height: 60px;
}
.login-input{
	width: 60%;
	margin: 30px auto;
}
.login-info{
	line-height: 40px;
}
.login-info a{
	color: #4b74e6;
}

.login-register{
	width: 60%;
	margin: 30px auto;	
}

.banner{
	width: 100%;
	height: 100px;
	background: #f1f1f1;
	margin-top: 0px;
	position: relative;
}
.banner .bj-qrcode{
	/* background: url(../img/bj-1.png) repeat center center; */
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	z-index: 1;
}
.banner .bj-barcode{
	/* background: url(../img/bj-2.png) repeat center center; */
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	z-index: 1;
}
.banner .bj-barcode:before {
	content: '';
    position: absolute;
    display: block;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none; 
    width: 100%;
    height: 100%;
}
.banner .bj-qrcode:before {
	content: '';
    position: absolute;
    display: block;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none; 
    width: 100%;
    height: 100%;
}
.banner p,.banner h1 {
    position: absolute;
    height: 20px; 
    border-left: 5px solid #29b474;
    top: 40px;
    z-index: 2;
    font-size: 20px;
    line-height: 20px;
    text-indent: 10px;
	left: 0;
}
.banner {
	position: relative; 
	background: linear-gradient(135deg, #29b474 0%, #29a974 100%);
	overflow: hidden;
}

.banner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 63c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm57-13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-9-21c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM60 91c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2zM35 41c1.105 0 2-.895 2-2s-.895-2-2-2-2 .895-2 2 .895 2 2 2z' fill='rgba(255,255,255,0.05)' fill-rule='evenodd'/%3E%3C/svg%3E");
	opacity: 0.6;
	animation: moveBg 20s linear infinite;
}

.banner .container {
	position: relative;
	z-index: 1;
	text-align: center;
}

.banner h1 {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	margin: 0;
	text-shadow: 0 2px 4px rgba(0,0,0,0.1);
	animation: fadeInUp 0.8s ease-out;
}

.banner-content {
	max-width: 800px;
	margin: 0 auto;
	padding: 0 20px;
}

.banner-qr-grid {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='rgba(255,255,255,0.05)'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	opacity: 0.4;
	animation: moveGrid 15s linear infinite;
}

.banner-highlight {
	display: inline-block;
	position: relative;
	color: #fff;
	padding: 0 8px;
}

.banner-highlight::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
	background-color: rgba(255,255,255,0.2);
	transform: skewX(-12deg);
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes moveBg {
	from {
		background-position: 0 0;
	}
	to {
		background-position: 100% 100%;
	}
}

@keyframes moveGrid {
	from {
		transform: translateX(0) translateY(0);
	}
	to {
		transform: translateX(-20px) translateY(-20px);
	}
}

@media (max-width: 768px) {
	.banner {
		padding: 40px 0;
	}
	
	.banner h1 {
		font-size: 1.8rem;
		left: 0px;
	}
}





.el-button--mini, .el-button--mini.is-round {
    padding:5px 15px !important;
}
.pricing-banner{
	margin-top:30px;
	
}
.pricing-price{
	background-color: #f1f1f1;
	padding: 20px 0;
	overflow: hidden;
}
.pricing-price .item{
	width: 280px;
	height: 550px;
	margin-right: 20px;
	float: left;
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 0 2px 4px -1px rgba(0,0,0,.12), 0 4px 5px 0 rgba(0,0,0,.1), 0 1px 10px 0 rgba(0,0,0,.08);
	margin-bottom: 20px;
}

.pricing-price .item .title{
	width: 100%;
	height: 40px;
	text-align: center;
	line-height: 40px;
	font-weight: bold;
	border-bottom: 1px solid #f1f1f1;
	text-transform: uppercase;
	position: relative;
}

.pricing-price .item .title span{
	 font-size: 15px;
	 position: absolute;
	 padding: 0 4px;
	 border-radius: 2px; 
	 right: 10px;
	 height: 20px;
	 line-height: 20px;
	 top: 10px; 
	 color: rgba(255, 255, 255, .1);
	 background: linear-gradient(to right, #b0ffc8, #ffd3b0, #b0f4ff, #b0c4ff, #cab0ff, #b0ffc8);
	 background-size: 400%;
	 -webkit-background-clip: text;
	 animation: magistextTransition 10s linear infinite;
}
.pricing-price .item .price{
	height: 50px;
	line-height: 50px;
	color: #666;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	font-family: "ProximaNova ExtraBold","Helvetica Neue",Helvetica,Arial,sans-serif;
}
.pricing-price .item .price span{
	font-size: 14px;
	font-weight: 400;
}
.pricing-price .item .price .original{
    font-weight: 200; 
    color: red;
    text-decoration: line-through;
    font-size: 20px;
    opacity: 0.5;

}
.pricing-price .item .btn {
    background: #29b474;
    color: #fff;
    width: 90%;
    margin: auto;
    height: 40px;
    line-height: 40px;
    border-radius: 5px;
    text-align: center;
    font-size: 16px;
    cursor: pointer;
}
.pricing-price .item .active {
    background: #29b474;
    color: #fff;
	width: 96%;
	margin: auto;
	height: 40px;
	line-height: 40px;
	border-radius: 5px;
	text-align: center;
	font-size: 16px;
	cursor: pointer;
}
.pricing-price .item .btn:hover {
    background: #50b474;
    color: #fff;
}
.pricing-price .item .includes{
	width: 90%;
	margin: 20px auto;
}
.pricing-price .item .includes span{
	color: #29b474 !important;
	font-weight: bold;
}
.pricing-price .item .includes p{
	line-height: 25px;
	font-size: 12px;
}
.pricing-center{
	max-width: 1200px;
	margin: auto; 
	min-height:440px ;
}
.el-collapse-item__header{
	font-size:18px !important;
} 
.paymentStatus{
	width: 500px;
	height: 400px;
	border-bottom: 1px solid #f1f1f1;
	margin: auto;
	margin-top: 20%;
}
.paymentStatus .icon{
	font-size: 100px;
    display: block;
    margin: auto;
    width: fit-content; 
}
.paymentStatus .success{
	color: #29b474;
}
.paymentStatus .error{
	color: red;
}
.paymentStatus {
	text-align: center;
}
.paymentStatus h1{
	line-height: 100px;
}
.paymentStatus p{
	line-height: 30px;
}
.paymentStatus p span{
	color: #29b474;
}

.phone-view{
position: relative;
    height: 500px; 
    margin-top: 15px;
}
#screen{
    position: relative;
    height: 340px;
    background: #fff;
	padding: 10px;
}
#phone {
    background: #000;
    border-radius: 30px;
    left: 0;
    margin: 0 auto 0;
    padding: 42px 2px 60px 2px;
    position: absolute;
    right: 0;
    width: 240px;
}

#phone:before {
    background: #1f2b38;
    border-radius: 20px;
    content: '';
    height: 8px;
    left: 0;
    margin: -25px auto;
    position: absolute;
    right: 0;
    width: 45px;
}

#phone:after {
    background: #1f2b38;
    border-radius: 20px;
    content: "";
    display: block;
    height: 42px;
    left: 0;
    margin: 12px auto;
    position: absolute;
    right: 0;
    width: 42px;
}
.phone-content{
	border: none;
	background: #f1f1f1;
	width: 100%;
	height: 100%;
}
.qrcode-set-two .el-button--mini{
	padding: 5px 5px !important;
}
.phoneDataText{
	top: 10%;
	position: absolute;
	text-align: center;
	font-size: 12px;
}
.phoneDataText div{
	height: auto;
	padding: 10px;
	background: #f1f1f1;
	margin-top: 10px;
	width: 80%;
	margin: 10px auto;
}
.vipfreebg{
	font-size: 10px;
	background: #f1f1f1;
	padding: 4px;
	border-radius: 2px;
	color: #000;
}
.vipbg{
	font-size: 10px;
    background: #fdb61f;
    padding: 4px;
    border-radius: 2px;
    color: #fff;
}
.isFixed{
	position: fixed;
}

.email-float {
		position: fixed;
		right: 20px;
		bottom: 85px;
	width: 48px;
	height: 48px;
	cursor: pointer;
	border-radius: 50%;
	background: #29b474;
		border: 1px solid rgba(255, 255, 255, 0.35);
		box-shadow: 0 8px 24px rgba(16, 20, 24, 0.22);
		z-index: 1000;
	display: flex;
	align-items: center;
	justify-content: center;
		transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.email-float:hover {
		transform: translateY(-2px);
		box-shadow: 0 10px 28px rgba(16, 20, 24, 0.3);
		background: #249f66;
}

.email-float:focus-visible {
	outline: 3px solid rgba(85, 212, 154, 0.55);
	outline-offset: 3px;
}

.email-float svg {
	width: 24px;
	height: 24px;
}

@media screen and (max-width: 600px) {
	.email-float {
		right: 16px;
		bottom: 72px;
		width: 44px;
		height: 44px;
	}
}
.get_email_code{
	position: absolute;
	right: 5px;
	top: 10px;
	height: 20px;
	background: #29b474;
	line-height: 20px;
	border-radius: 2px;
	color: #fff;
	font-size: 13px;
	padding: 0 5px;
	cursor: pointer;
}
.tools-box{
	height: 40px;
	width: 100%;
	position: relative;
}

.ruler {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 222px;
    height: 5px;
    padding: 0;
    bottom: 23px;
    position: relative;
    border-bottom: 1px solid #999;
    margin: auto;
}

.long-tick, .short-tick {
    background-color: #000;
    width: 1px;
}

.long-tick {
    height: 100%;
}

.short-tick {
    height: 55%;
}

.ruler::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px; 
}
.ruler-box{
    width: 310px;
    margin: auto;
    opacity: 1;
}
.ruler-box p {
	/* position: absolute; */
	text-align: center;
	font-size: 12px;
	width: 100%;
	/* bottom: 25px; */
}
.sprice{
	text-align: center;
	font-size: 25px; 
	padding: 0 4px;
	border-radius: 2px;
	right: 10px;
	height: 20px;
	line-height: 20px;
	top: 10px;
	color: rgba(255, 255, 255, .1);
	background: linear-gradient(to right, #CC6666, #FFCC00, #CC6666, #FF3333, #FF3333, #FF3333);
	background-size: 400%;
	-webkit-background-clip: text;
	animation: magistextTransition 10s linear infinite;
	font-weight: bold;
}
.Promotion{
	width: 100%;
	height: 30px;
	text-align: center;
	position: fixed; 
	bottom: 0;
	line-height: 30px;
	z-index: 1000;
	background: linear-gradient(to right, #fd6060, #fd7060, #fd8060, #fd9060, #fd6060, #fd5060);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
}

.print2{
	float: right;
	line-height: 30px;
	color: #666;
	margin-right: 10px;
	background: #fff;
	border-radius: 5px;
	margin-top: 6px;
	padding: 0 5px;
}
.flujo{
	display: block;
	padding: 10px;
	background: #f1f1f1;
}
.sugg{
	padding: 20px 0;
	background: #fff;
	overflow: hidden;
	display: block;
}
.suggestions-banner {
    background-color: #f8f9fa;
    padding: 60px 0;
    text-align: center;
}

.suggestions-banner .container {
    max-width: 800px;
    margin: 0 auto;
}

.suggestions-banner h1 {
    font-size: 2.5rem;
    color: #333;
    margin-bottom: 20px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.suggestions-banner .subtitle {
    font-size: 1.2rem;
    color: #666;
    line-height: 1.6;
    max-width: 600px;
    margin: 0 auto;
    position: relative;
    padding-bottom: 20px;
}

.suggestions-banner .subtitle::after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    background-color: #007bff;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

 
.menu a img{
	width: 22px;
}
.text-size-indicator{
    text-align: left;
    width: 100%;
    line-height: 1; 
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.excel-download{
	float: right;
	padding: 3px 5px;
	background: #fff;
	margin-top: 10px;
	margin-right: 10px;
	border-radius: 5px;
	box-shadow: 2px 2px 5px #000;
	font-size: 10px;
	cursor: pointer;
}

.submit-background {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 20px;
	background: transparent;
	box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(10px); 
	z-index: 2000;
	text-align: center;
}
.submit-button{ 
    background: linear-gradient(to bottom, #2ECC71, #27AE60);
    color: white;
    padding: 12px 40px;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: bold;
    cursor: pointer;
    box-shadow: 
        0 4px 6px rgba(46, 204, 113, 0.2),
        0 1px 3px rgba(0, 0, 0, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    transform: translateY(0);
    transition: all 0.2s ease;
}
.submit-button:hover { 
	background: linear-gradient(to bottom, #2ECC71, #1a7d4e);
}



/* 会员对比表格样式 */
.compare-title {
	text-align: center;
	margin: 40px 0 20px;
  }
  
  .compare-title h2 {
	font-size: 24px;
	color: #333;
	position: relative;
	display: inline-block;
  }
  
  .compare-table {
	width: 100%;
	overflow-x: auto;
	margin: 20px 0;
	background: #fff;
	border-radius: 8px;
	padding: 20px;
  }
  
  .compare-table table {
	width: 100%;
	border-collapse: collapse;
	text-align: center;
  }
  
  .compare-table th {
	background: #f8f9fa;
	padding: 15px 10px;
	font-weight: 500;
	color: #333;
	border-bottom: 1px solid #eee;
  }
  
  .compare-table td {
	padding: 15px 10px;
	border-bottom: 1px solid #eee;
	color: #666;
	font-size: 14px;
  }
  
  .compare-table tr:hover {
	background: #f8f9fa;
  }
  
  .compare-table .el-icon-check {
	color: #29b474;
	font-size: 16px;
  }
  
  .compare-table .group-header {
	background: #f1f1f1;
	font-weight: 500;
  }
  
  .compare-table .group-header td {
	padding: 10px;
	color: #333;
  }
   
  @media screen and (max-width: 1200px) {
	.compare-table {
	  margin: 20px;
	}
  }

  
/* 会员对比表格样式 */

.limit-note {
    color: #666;
    font-size: 0.9em;
    margin-top: 15px;
    font-style: italic;
}

.see-more {
    color: #2c8af8;
    font-size: 0.9em; 
    cursor: pointer;
}
.price_bj{
	/* border: 1px solid #29b474; */
	padding: 2px;
	background: #edf2fe;
	color: #000;
	border-radius: 5px;
	margin-bottom: 5px;
	padding: 10px;
}


/* ===== 二级导航 sub-menu ===== */
.sub-menu {
    background: #ffffff;
    border-bottom: 1px solid #eaecf0;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .04);
    transition: box-shadow .3s ease;
    position: relative;
    z-index: 100;
}

.sub-menu-fixed {
    position: fixed;
    top: 60px;
    left: 0;
    right: 0;
    animation: slideDown 0.3s ease;
    box-shadow: 0 6px 16px rgba(16, 24, 40, .06);
    z-index: 1000;
}

.sub-menu-container {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 2px;
    height: 52px;
    padding: 0 22px;
    overflow-x: auto;
    white-space: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.sub-menu-container::-webkit-scrollbar {
    display: none;
}

.sub-menu a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    height: 32px;
    padding: 0 10px;
    margin: 0;
    border-radius: 8px;
    color: #475467;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    position: relative;
    transition: background-color .18s ease, color .18s ease;
}

.sub-menu a .sm-ico {
    width: 16px;
    height: 16px;
    flex: none;
    display: block;
    color: inherit;
}

.sub-menu a:hover {
    color: #101828;
    background: #f2f4f7;
}

.sub-menu a:focus-visible {
    outline: 2px solid #29b474;
    outline-offset: 2px;
}

.sub-menu a.active {
    color: #0b8a55;
    background: #e8f6ef;
}

.sub-menu a.active:hover {
    color: #0b8a55;
    background: #dbf0e4;
}

@keyframes slideDown {
    from {
        transform: translateY(-100%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@media (max-width: 768px) {
    .sub-menu-container {
        height: 48px;
        padding: 0 12px;
        gap: 0;
    }

    .sub-menu a {
        height: 30px;
        padding: 0 8px;
        gap: 6px;
        font-size: 13px;
    }

    .sub-menu a .sm-ico {
        width: 15px;
        height: 15px;
    }
}

/* 右边缘渐隐：内容溢出时提示可横向滑动，未溢出时覆盖在留白上不可见 */
.sub-menu::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 28px;
    background: linear-gradient(to right, rgba(255, 255, 255, 0), #ffffff 78%);
    pointer-events: none;
}

@media (max-width: 1200px) {
    .sub-menu-container {
        padding: 0 14px;
        gap: 0;
    }

    .sub-menu a {
        height: 30px;
        padding: 0 8px;
        gap: 6px;
        font-size: 13px;
    }

    .sub-menu a .sm-ico {
        width: 15px;
        height: 15px;
    }
}

.features-section {
	padding: 30px 0;
	background: #fff;
	border-top: 1px solid #eee;
	margin: 20px 0;
}

.features-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	max-width: 900px;
	margin: 0 auto;
}

.feature-item {
	text-align: center;
	padding: 20px 15px;
	background: #f8f9fa;
	border-radius: 8px;
	transition: transform 0.2s ease;
}

.feature-item:hover {
	transform: translateY(-3px);
}

.feature-item i {
	font-size: 28px;
	color: #409EFF;
	margin-bottom: 10px;
	display: block;
}

.feature-item h3 {
	font-size: 16px;
	margin: 0 0 8px;
	color: #303133;
	font-weight: 500;
}

.feature-item p {
	font-size: 13px;
	color: #606266;
	line-height: 1.4;
	margin: 0;
}

.features-title {
	text-align: center;
	margin-bottom: 25px;
}

.features-title h2 {
	font-size: 24px;
	color: #303133;
	margin: 0 0 10px;
}

.features-title p {
	font-size: 14px;
	color: #606266;
	margin: 0;
}

@media (max-width: 768px) {
	.features-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
		padding: 0 15px;
	}
	
	.features-title h2 {
		font-size: 20px;
	}
}

@media (max-width: 480px) {
	.features-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
		padding: 0 10px;
	}
	
	.feature-item {
		padding: 15px 10px;
	}
	
	.feature-item i {
		font-size: 24px;
	}
	
	.feature-item h3 {
		font-size: 14px;
	}
	
	.feature-item p {
		font-size: 12px;
	}
}
.sale{
    position: absolute;
    top: -13px;
    right: -25px;
    background-color: #ff4d4f;
    color: white;
    font-size: 10px !important;
    padding: 2px 6px;
    border-radius: 10px;
    font-weight: bold;
    transform: rotate(0deg);
    line-height: 10px;
    height: 10px;
}
.el-slider__button-wrapper{
	z-index: 100 !important;
}

.synthesis-banner {
    background-color: #29b474;
    padding: 20px 0;
    text-align: center;
	color: #fff;
}

.synthesis-banner h1 {
    font-size: 1.9rem;
    color: #fff;
    margin: 0;
    font-weight: 700;
    letter-spacing: 1px;
}

/* ===== 顶部导航 Pricing 皇冠（3D 旋转） ===== */
.menu a .pricing-crown{
	position: absolute;
	top: -9px;
	right: -13px;
	width: 17px;
	height: 17px;
	display: block;
	line-height: 0;
	pointer-events: none;
	transform-origin: 50% 60%;
	animation: qrCrownSpin 2.8s ease-in-out infinite;
	filter: drop-shadow(0 1px 1.5px rgba(196,132,0,.55));
}
.menu a .pricing-crown svg{
	width: 100%;
	height: 100%;
	display: block;
}
/* 绕 Y 轴左右转动：始终露出正面，避免侧视时缩成一条线 */
@keyframes qrCrownSpin{
	0%   { transform: perspective(160px) rotateX(-9deg) rotateY(-30deg); }
	50%  { transform: perspective(160px) rotateX(-9deg) rotateY(30deg); }
	100% { transform: perspective(160px) rotateX(-9deg) rotateY(-30deg); }
}
@media (prefers-reduced-motion: reduce){
	.menu a .pricing-crown{ animation: none; }
}

/* ===== 二级导航 · Dynamic QR Code 悬停下拉（行业码入口） ===== */
.sub-mega-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    height: 32px;
}

.sub-menu a.sub-mega-trigger {
    gap: 7px;
}

.sub-mega-caret {
    width: 7px;
    height: 7px;
    flex: none;
    margin-top: -4px;
    border-right: 1.6px solid currentColor;
    border-bottom: 1.6px solid currentColor;
    transform: rotate(45deg);
    opacity: .5;
    transition: transform .18s ease, opacity .18s ease, margin-top .18s ease;
}

.sub-mega-wrap.is-open a.sub-mega-trigger {
    color: #101828;
    background: #f2f4f7;
}

.sub-mega-wrap.is-open .sub-mega-caret {
    margin-top: 1px;
    transform: rotate(225deg);
    opacity: .85;
}

/* 横向滚动容器默认会裁切面板，展开时放行 */
.sub-menu-container.mega-open {
    overflow: visible;
}

.sub-mega {
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 60;
    width: 640px;
    max-width: calc(100vw - 32px);
    padding-top: 12px;
    transform: translate(-50%, -6px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
}

.sub-mega-wrap.is-open .sub-mega {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

/* 键盘 Tab 进入面板时同样展开（无需 JS），并在宽屏下放开裁切 */
.sub-mega-wrap:focus-within .sub-mega {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

@media (min-width: 1201px) {
    .sub-menu-container {
        overflow: visible;
    }
}

.sub-mega-panel {
    background: #fff;
    border: 1px solid #eaecf0;
    border-radius: 16px;
    box-shadow: 0 18px 44px rgba(16, 24, 40, .14), 0 2px 6px rgba(16, 24, 40, .05);
    padding: 10px 10px 6px;
}

.sub-menu ul.sub-mega-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2px 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sub-menu a.sub-mega-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    height: auto;
    padding: 10px;
    margin: 0;
    border-radius: 12px;
    white-space: normal;
    font-size: 14px;
    line-height: 1.35;
    color: #101828;
    text-decoration: none;
    transition: background-color .16s ease;
}

.sub-menu a.sub-mega-item:hover {
    background: #f4f7f6;
    color: #101828;
}

.sub-mega-ico {
    width: 38px;
    height: 38px;
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: #e9f7f0;
    color: #0b8a55;
}

.sub-mega-ico svg {
    width: 19px;
    height: 19px;
    display: block;
}

.sub-mega-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.sub-mega-title {
    font-size: 14px;
    font-weight: 600;
    color: #101828;
    line-height: 1.35;
}

.sub-mega-desc {
    font-size: 12.5px;
    font-weight: 400;
    color: #667085;
    line-height: 1.45;
}

.sub-mega-foot {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 8px;
    padding: 10px 10px 4px;
    border-top: 1px solid #f0f2f5;
}

.sub-menu .sub-mega-foot a {
    height: auto;
    padding: 0;
    margin: 0;
    font-size: 12.5px;
    font-weight: 500;
    color: #667085;
    background: none;
}

.sub-menu .sub-mega-foot a:hover {
    color: #0b8a55;
    background: none;
}

@media (max-width: 1100px) {
    .sub-mega {
        width: 560px;
    }
}

/* 触屏设备没有 hover，点触发项直接进入动态码页 */
@media (hover: none) {
    .sub-mega {
        display: none;
    }
}

/* ===== 二级导航 · QR Code Parsing 悬停下拉（两种解析模式） ===== */
.sub-menu-container:focus-within {
    overflow: visible;
}

.sub-mega--compact {
    left: auto;
    right: -6px;
    width: 372px;
    transform: translate(0, -6px);
}

.sub-mega-wrap--compact.is-open .sub-mega--compact,
.sub-mega-wrap--compact:focus-within .sub-mega--compact {
    transform: translate(0, 0);
}

.sub-mega-wrap--compact .sub-mega-panel {
    padding: 8px;
}

.sub-menu ul.sub-mega-grid--one {
    grid-template-columns: minmax(0, 1fr);
}

.sub-menu .sub-mega-grid--one a.sub-mega-item {
    align-items: center;
    padding: 11px 12px;
}

@media (max-width: 520px) {
    .sub-mega--compact {
        width: calc(100vw - 24px);
        right: -10px;
    }
}

/* 二级导航面板 · 当前所在项（如从下拉进入 Short Link） */
.sub-menu a.sub-mega-item.is-current {
    background: #eef4ff;
}

.sub-menu a.sub-mega-item.is-current .sub-mega-title {
    color: #1d4ed8;
}

/* ---- pricing checkout loading (order-loading) ---- */
.order-loading{
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	box-sizing: border-box;
	background: rgba(15, 23, 42, 0.55);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}
.order-loading__card{
	width: 344px;
	max-width: 100%;
	padding: 34px 30px 30px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 18px;
	text-align: center;
	box-shadow: 0 30px 70px -18px rgba(2, 6, 23, 0.45), 0 0 0 1px rgba(15, 23, 42, 0.05);
	animation: olRise 0.28s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}
@keyframes olRise{
	from{opacity: 0; transform: translateY(8px) scale(0.985);}
	to{opacity: 1; transform: none;}
}
.order-loading__ring{width: 40px; height: 40px; margin: 0 auto;}
.order-loading__ring svg{display: block; width: 100%; height: 100%; animation: olSpin 0.95s linear infinite;}
@keyframes olSpin{to{transform: rotate(360deg);}}
.order-loading__title{
	margin: 20px 0 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.5;
	color: #0f172a;
	letter-spacing: 0.01em;
}
.order-loading__desc{
	margin: 7px 0 0;
	font-size: 13px;
	line-height: 1.65;
	color: #64748b;
}
.order-loading__track{
	position: relative;
	height: 2px;
	margin-top: 22px;
	border-radius: 2px;
	background: #eef2f7;
	overflow: hidden;
}
.order-loading__track i{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 42%;
	border-radius: 2px;
	background: linear-gradient(90deg, #0f766e 0%, #29b474 100%);
	animation: olSlide 1.5s cubic-bezier(0.65, 0.05, 0.36, 1) infinite;
}
@keyframes olSlide{
	0%{left: -45%;}
	100%{left: 100%;}
}
@media (max-width: 480px){
	.order-loading{padding: 16px;}
	.order-loading__card{width: 300px; padding: 30px 22px 26px; border-radius: 16px;}
	.order-loading__title{font-size: 14px;}
	.order-loading__desc{font-size: 12.5px;}
}
@media (prefers-reduced-motion: reduce){
	.order-loading__card{animation: none;}
	.order-loading__ring svg{animation-duration: 1.6s;}
	.order-loading__track i{animation: none; left: 0; width: 100%; opacity: 0.55;}
}

/* ---- file menu: roadmap items ---- */
.sub-menu a.sub-mega-item.is-soon{
	cursor: default;
	opacity: 0.66;
}
.sub-menu a.sub-mega-item.is-soon:hover{
	background: transparent;
}
.sub-menu a.sub-mega-item.is-soon .sub-mega-ico{
	background: #f1f5f4;
	color: #6b7f78;
}
.sub-mega-soon{
	margin-inline-start: auto;
	align-self: center;
	flex: none;
	font-style: normal;
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.02em;
	color: #0f766e;
	background: #e7f5ef;
	border-radius: 999px;
	padding: 1px 7px;
	white-space: nowrap;
}


/* ===== 顶部导航：通栏白底 + 两行之间一条分割线（不描外框） ===== */
/* header 与 .sub-menu 是兄弟节点，各自铺满整行，仅靠 header 的下边线分隔两组菜单 */
header{
	width: auto;
	height: 62px;
	margin: 0;
	padding: 0 32px;
	border: 0;
	border-bottom: 1px solid #E9EEF5;
	border-radius: 0;
	background: #fff;
}

/* 吸顶：fixed 下 width:auto 会收缩成内容宽度，这里钉住左右 */
header.isFixed{
	left: 0;
	right: 0;
	width: auto;
	z-index: 1000;
}

/* 语言切换与登录按钮为绝对定位，不吃 header 的 padding，通栏后单独收齐到 32px */
header .changeLan{
	right: 32px;
}
header .head-tools{
	right: 72px;
}

.sub-menu{
	margin: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	transition: box-shadow .24s ease;
}

/* 通栏后右缘渐隐不再需要 */
.sub-menu::after{
	display: none;
}

.sub-menu-fixed{
	top: 63px;
	margin: 0;
	box-shadow: 0 12px 24px -18px rgba(15, 23, 42, .35);
}

/* 分组胶囊左缘与 logo 对齐（32px 内边距 + logo 自身 10px 左外边距） */
.sub-menu-container{
	height: 58px;
	padding: 0 32px 0 42px;
	gap: 10px;
}

/* 分组容器：只负责底色与圆角，不设 overflow，下拉面板才能溢出 */
.sub-group{
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 2px;
	padding: 4px;
	border-radius: 11px;
	background: #F5F8FD;
}

.sub-group > .sub-mega-wrap{
	display: flex;
	align-items: center;
	flex: 0 0 auto;
}

/* 只管二级条里的项，不能用 .sub-menu a —— 会把下拉面板里的 .sub-mega-item 一起改掉 */
.sub-menu-container > a,
.sub-group > a,
.sub-group > .sub-mega-wrap > a{
	height: 34px;
	padding: 0 12px;
	border-radius: 8px;
	font-size: 13.5px;
	color: #334155;
	background: transparent;
}

.sub-menu-container > a:hover,
.sub-group > a:hover,
.sub-group > .sub-mega-wrap > a:hover{
	background: #fff;
	color: #1D4ED8;
}

.sub-menu-container > a.active,
.sub-menu-container > a.active:hover,
.sub-group > a.active,
.sub-group > a.active:hover,
.sub-group > .sub-mega-wrap > a.active,
.sub-group > .sub-mega-wrap > a.active:hover{
	background: #2563EB;
	color: #fff;
}

.sub-menu-container > a:focus-visible,
.sub-group > a:focus-visible,
.sub-group > .sub-mega-wrap > a:focus-visible{
	outline: 2px solid #93C5FD;
	outline-offset: 2px;
}

.sub-group > .sub-mega-wrap > a:focus-visible{
	outline-offset: 0;
}

@media (max-width: 1200px){
	.sub-menu-container{
		padding: 0 32px 0 42px;
		gap: 8px;
	}
	.sub-group{
		padding: 3px;
	}
	.sub-menu-container > a,
	.sub-group > a,
	.sub-group > .sub-mega-wrap > a{
		padding: 0 9px;
		font-size: 13px;
	}
}

@media (max-width: 768px){
	header{
		margin: 0;
		padding: 0 16px;
	}
	.sub-menu{
		margin: 0;
	}
	.sub-menu-container{
		height: 52px;
		padding: 0 16px 0 26px;
		gap: 6px;
	}
	.sub-group{
		padding: 2px;
		border-radius: 9px;
	}
	.sub-menu-container > a,
	.sub-group > a,
	.sub-group > .sub-mega-wrap > a{
		height: 32px;
		padding: 0 8px;
		font-size: 13px;
	}
}

/* ===== 生成结果弹窗（二维码 / 条码）v1 ===== */
.qr-res-dialog{border-radius:16px;overflow:hidden;box-shadow:0 24px 64px rgba(15,23,42,.18);}
.qr-res-dialog .el-dialog__header{display:none;}
.qr-res-dialog .el-dialog__body{padding:0;color:#0f172a;font-size:13px;line-height:1.45;}
.qr-res-dialog .el-dialog__wrapper{overflow:auto;}
.qr-res,
.qr-res *{box-sizing:border-box;}
.qr-res{display:block;}

.qr-res-head{display:flex;align-items:flex-start;gap:12px;padding:18px 22px 14px;background:#fff;}
.qr-res-check{flex:none;width:32px;height:32px;border-radius:50%;background:#e7f6ef;display:flex;align-items:center;justify-content:center;}
.qr-res-check svg{width:16px;height:16px;display:block;}
.qr-res-headtxt{flex:1;min-width:0;}
.qr-res-title{margin:0;font-size:16px;font-weight:600;color:#0f172a;line-height:1.3;word-break:break-word;}
.qr-res-sub{margin:2px 0 0;font-size:12px;color:#64748b;line-height:1.45;}
.qr-res-x{flex:none;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:7px;cursor:pointer;margin-top:-2px;}
.qr-res-x svg{width:14px;height:14px;display:block;}
.qr-res-x:hover{background:#f1f5f9;}

.qr-res-tools{display:flex;align-items:center;gap:8px;padding:0 22px 12px;background:#fff;flex-wrap:wrap;}
.qr-res-seg{display:flex;align-items:center;gap:2px;padding:2px;background:#f1f5f9;border-radius:8px;}
.qr-res-seg-i{padding:4px 11px;font-size:12px;line-height:1.4;border-radius:6px;color:#64748b;cursor:pointer;white-space:nowrap;user-select:none;}
.qr-res-seg-i:hover{color:#0f172a;}
.qr-res-seg-i.is-on{background:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 2px rgba(15,23,42,.08);}
.qr-res-search{flex:1 1 140px;min-width:120px;max-width:250px;margin-left:auto;display:flex;align-items:center;gap:6px;height:30px;padding:0 9px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;box-sizing:border-box;}
.qr-res-search svg{flex:none;width:12px;height:12px;}
.qr-res-search input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0;font-size:12px;color:#0f172a;background:transparent;font-family:inherit;}
.qr-res-search input::placeholder{color:#94a3b8;}
.qr-res-search:focus-within{border-color:#29b474;}
.qr-res-search.is-solo{margin-left:0;max-width:320px;}
.qr-res-tools .qr-res-search.is-solo + .qr-res-views{margin-left:auto;}
.qr-res-clear{flex:none;width:16px;height:16px;line-height:14px;text-align:center;border-radius:50%;background:#e2e8f0;color:#475569;font-size:12px;cursor:pointer;}
.qr-res-views{display:flex;gap:1px;padding:2px;background:#f1f5f9;border-radius:8px;}
.qr-res-view{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#94a3b8;cursor:pointer;}
.qr-res-view svg{width:11px;height:11px;display:block;}
.qr-res-view:hover{color:#475569;}
.qr-res-view.is-on{background:#fff;color:#0f172a;box-shadow:0 1px 2px rgba(15,23,42,.08);}

.qr-res-body{padding:14px 22px 20px;background:#fafaf7;max-height:52vh;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;}
.qr-res-body::-webkit-scrollbar{width:8px;}
.qr-res-body::-webkit-scrollbar-track{background:transparent;}
.qr-res-body::-webkit-scrollbar-thumb{background:#dbe3e9;border-radius:8px;}
.qr-res-body::-webkit-scrollbar-thumb:hover{background:#c3ced8;}
.qr-res-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.qr-res-card{position:relative;display:block;background:#fff;border:1px solid #eef0f3;border-radius:10px;padding:10px 10px 9px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;}
.qr-res-card:hover{border-color:#29b474;box-shadow:0 6px 16px rgba(41,180,116,.14);transform:translateY(-1px);}
.qr-res-card img{display:block;width:100%;max-width:104px;margin:0 auto;aspect-ratio:1/1;object-fit:contain;background:#fff;}
.qr-res-dl{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:#29b474;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;z-index:2;}
.qr-res-dl svg{width:10px;height:10px;display:block;}
.qr-res-card:hover .qr-res-dl{opacity:1;}
.qr-res-name{margin:8px 0 0;font-size:12px;font-weight:600;color:#0f172a;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.qr-res-data{margin:1px 0 0;font-size:11px;color:#94a3b8;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.qr-res-empty{padding:44px 0;text-align:center;font-size:13px;color:#94a3b8;}

.qr-res-grid.is-list{display:block;}
.qr-res-grid.is-list .qr-res-card{display:flex;align-items:center;gap:12px;padding:6px 10px;margin-bottom:6px;}
.qr-res-grid.is-list .qr-res-card img{flex:none;width:48px;max-width:48px;height:48px;margin:0;aspect-ratio:auto;}
.qr-res-grid.is-list .qr-res-name{margin:0;flex:0 1 auto;width:auto;min-width:96px;max-width:40%;text-align:left;}
.qr-res-grid.is-list .qr-res-data{margin:0;flex:1 1 auto;min-width:0;text-align:left;}
.qr-res-grid.is-list .qr-res-dl{position:static;opacity:1;flex:none;order:9;}

.qr-res-count{margin:0;padding:8px 22px 12px;background:#fafaf7;font-size:12px;color:#94a3b8;text-align:center;}
.qr-res-count span{color:#94a3b8;}

.qr-res-actions{display:flex;align-items:center;gap:8px;padding:12px 22px;border-top:1px solid #eef0f3;background:#fff;}
.qr-res-meta{font-size:12px;color:#94a3b8;letter-spacing:.02em;}
.qr-res-btns{margin-left:auto;display:flex;align-items:center;gap:8px;}
.qr-res-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:13px;color:#0f172a;cursor:pointer;text-decoration:none;font-family:inherit;box-sizing:border-box;transition:background .15s,border-color .15s;}
.qr-res-btn svg{width:12px;height:12px;display:block;}
.qr-res-btn:hover{border-color:#cbd5e1;background:#f8fafc;color:#0f172a;text-decoration:none;}
.qr-res-btn.is-primary{background:#29b474;border-color:#29b474;color:#fff;font-weight:600;}
.qr-res-btn.is-primary:hover{background:#22a068;border-color:#22a068;color:#fff;}

.qr-res-dialog .zip-lock-hint{margin:0 22px 12px;}

/* 条码版：两列 + 横向条形码 */
.qr-res-dialog.is-barcode .qr-res-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.qr-res-dialog.is-barcode .qr-res-card img{max-width:100%;height:74px;aspect-ratio:auto;object-fit:contain;padding:0 4px;}
.qr-res-dialog.is-barcode .qr-res-grid.is-list .qr-res-card img{height:44px;width:120px;max-width:120px;padding:0;}

@media (max-width: 860px){
	.qr-res-dialog{width:calc(100vw - 24px)!important;margin-top:6vh!important;}
	.qr-res-head{padding:14px 14px 10px;}
	.qr-res-title{font-size:15px;}
	.qr-res-tools{padding:0 14px 10px;}
	.qr-res-search{margin-left:0;max-width:none;flex:1 1 100%;order:3;}
	.qr-res-body{padding:12px 14px 16px;max-height:46vh;}
	.qr-res-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
	.qr-res-dialog.is-barcode .qr-res-grid{grid-template-columns:1fr;}
	.qr-res-count{padding:8px 14px 10px;}
	.qr-res-actions{padding:10px 14px;flex-wrap:wrap;}
	.qr-res-btns{width:100%;margin-left:0;}
	.qr-res-btn{flex:1 1 0;}
	.qr-res-dialog .zip-lock-hint{margin:0 14px 10px;}
}

@media (max-width: 560px){
	.qr-res-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.qr-res-dialog.is-barcode .qr-res-grid{grid-template-columns:1fr;}
	.qr-res-grid.is-list .qr-res-name{flex:1 1 auto;width:auto;}
	.qr-res-grid.is-list .qr-res-data{display:none;}
}

/* ===== 登录 / 注册页 v1 ===== */
/* 作用域：仅在 .auth-page 下生效，避免影响其它页面 */

.auth-page{
	display:flex;
	flex-direction:column;
	min-height:100vh;
	background:#f7f9fa;
}
.auth-page header{min-width:0;}
/* public.css 里 #app 有 min-width:1200px，认证页需按 ID 优先级放开 */
#app.auth-page{min-width:0;}
.auth-page .auth-main{flex:1 0 auto;}

.auth-main{
	padding:40px 24px 64px;
	background:#f7f9fa;
	box-sizing:border-box;
}
.auth-shell{
	width:100%;
	max-width:1060px;
	margin:0 auto;
	display:grid;
	grid-template-columns:424px minmax(0,1fr);
	background:#fff;
	border:1px solid #e9eef5;
	border-radius:18px;
	overflow:hidden;
	box-shadow:0 24px 64px -24px rgba(15,23,42,.22);
	min-height:596px;
}

/* ---- 左：品牌板 ---- */
.auth-brand{
	position:relative;
	padding:40px 36px 32px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	color:#fff;
	background:linear-gradient(158deg,#0d3527 0%,#12503a 46%,#1a7a56 100%);
	overflow:hidden;
}
.auth-brand::after{
	content:"";
	position:absolute;
	right:-120px;
	bottom:-140px;
	width:380px;
	height:380px;
	border-radius:50%;
	background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.16),rgba(255,255,255,0) 70%);
	pointer-events:none;
}
.auth-brand .dots{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:230px;
	opacity:.2;
	background-image:radial-gradient(#fff 1.4px,transparent 1.4px);
	background-size:18px 18px;
	-webkit-mask-image:linear-gradient(to top,#000,transparent);
	mask-image:linear-gradient(to top,#000,transparent);
	pointer-events:none;
}
.auth-brand-top{position:relative;z-index:1;display:flex;align-items:center;gap:9px;}
.auth-brand-top img{height:26px;width:auto;filter:brightness(0) invert(1);}
.auth-brand-top span{font-size:17px;font-weight:600;letter-spacing:.2px;}
.auth-brand-body{position:relative;z-index:1;}
.auth-brand-body h2{
	margin:0;
	font-size:30px;
	line-height:1.32;
	font-weight:600;
	letter-spacing:-.3px;
	color:#fff;
}
.auth-brand-sub{
	margin:14px 0 0;
	font-size:13.5px;
	line-height:1.65;
	color:rgba(255,255,255,.76);
	max-width:290px;
}
.auth-points{margin:26px 0 0;padding:0;list-style:none;}
.auth-points li{
	display:flex;
	align-items:flex-start;
	gap:9px;
	font-size:13.5px;
	line-height:1.6;
	color:rgba(255,255,255,.9);
	margin-bottom:13px;
}
.auth-points li svg{flex:none;width:16px;height:16px;margin-top:2px;}
.auth-brand-foot{
	position:relative;
	z-index:1;
	font-size:12.5px;
	color:rgba(255,255,255,.62);
	letter-spacing:.1px;
}
.auth-brand-foot a{color:rgba(255,255,255,.86);text-decoration:underline;text-underline-offset:2px;}

/* ---- 右：表单 ---- */
.auth-panel{
	padding:44px 48px 40px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	box-sizing:border-box;
}
.auth-panel-inner{width:100%;max-width:400px;margin:0 auto;}
.auth-head h1{
	margin:0;
	font-size:27px;
	line-height:1.25;
	font-weight:600;
	letter-spacing:-.3px;
	color:#0f172a;
}
.auth-head p{
	margin:8px 0 0;
	font-size:13.5px;
	line-height:1.6;
	color:#64748b;
}

/* Google 官方按钮容器：等宽居中，未就绪时不留空洞 */
.auth-google-slot{display:flex;justify-content:center;margin-top:24px;}
.auth-google-slot > div{width:100%;display:flex;justify-content:center;}
.auth-google-slot iframe{max-width:100%;}

.auth-form{margin-top:22px;}
.auth-div{
	display:flex;
	align-items:center;
	gap:12px;
	margin:20px 0 0;
	font-size:12px;
	color:#94a3b8;
}
.auth-div::before,.auth-div::after{content:"";flex:1;height:1px;background:#edf1f6;}

.auth-field{margin-bottom:16px;}
.auth-field label{
	display:block;
	font-size:13px;
	font-weight:500;
	color:#334155;
	margin-bottom:7px;
	letter-spacing:.05px;
}
.auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;}
.auth-label-row a{font-size:12.5px;color:#178f5c;text-decoration:none;font-weight:500;}
.auth-label-row a:hover{text-decoration:underline;text-underline-offset:2px;}

.auth-input{
	position:relative;
	display:flex;
	align-items:center;
	height:46px;
	border:1px solid #dfe5ec;
	border-radius:10px;
	background:#fff;
	box-sizing:border-box;
	transition:border-color .15s,box-shadow .15s;
}
.auth-input:hover{border-color:#c9d4e0;}
.auth-input:focus-within{
	border-color:#29b474;
	box-shadow:0 0 0 3px rgba(41,180,116,.13);
}
.auth-input input{
	flex:1;
	min-width:0;
	height:100%;
	padding:0 14px;
	border:0;
	outline:0;
	background:transparent;
	font-size:14px;
	color:#0f172a;
	font-family:inherit;
	box-sizing:border-box;
}
.auth-input input::placeholder{color:#a8b3c1;}
.auth-input.is-error{border-color:#dc2626;}
.auth-input.is-error:focus-within{
	border-color:#dc2626;
	box-shadow:0 0 0 3px rgba(220,38,38,.12);
}
.auth-eye{
	flex:none;
	width:38px;
	height:100%;
	display:flex;
	align-items:center;
	justify-content:center;
	border:0;
	background:transparent;
	color:#94a3b8;
	cursor:pointer;
	padding:0;
}
.auth-eye:hover{color:#475569;}
.auth-eye svg{width:17px;height:17px;display:block;}

.auth-hint{
	display:flex;
	align-items:center;
	gap:5px;
	margin:7px 0 0;
	font-size:12px;
	line-height:1.5;
	color:#64748b;
}
.auth-hint.is-bad{color:#dc2626;}
.auth-hint svg{flex:none;width:13px;height:13px;}

.auth-check{
	display:flex;
	align-items:flex-start;
	gap:8px;
	margin:4px 0 20px;
	font-size:13px;
	color:#475569;
	cursor:pointer;
	user-select:none;
	line-height:1.55;
}
.auth-check input{
	width:16px;
	height:16px;
	margin:2px 0 0;
	accent-color:#29b474;
	flex:none;
	cursor:pointer;
}
.auth-check a{color:#178f5c;text-decoration:none;}
.auth-check a:hover{text-decoration:underline;}
.auth-check.is-error{color:#dc2626;}
.auth-check.is-error a{color:#dc2626;}

.auth-submit{
	width:100%;
	height:46px;
	border:0;
	border-radius:10px;
	background:#29b474;
	color:#fff;
	font-size:14.5px;
	font-weight:600;
	font-family:inherit;
	cursor:pointer;
	letter-spacing:.1px;
	transition:background .15s,box-shadow .15s;
	box-sizing:border-box;
}
.auth-submit:hover{background:#22a068;box-shadow:0 6px 16px -6px rgba(41,180,116,.55);}
.auth-submit:active{background:#1c8c59;}
.auth-submit[disabled]{background:#b9dfcb;cursor:not-allowed;box-shadow:none;}
.auth-submit.is-loading::before{
	content:"";
	display:inline-block;
	width:13px;
	height:13px;
	margin-right:8px;
	vertical-align:-2px;
	border-radius:50%;
	border:2px solid rgba(255,255,255,.45);
	border-top-color:#fff;
	animation:authSpin .7s linear infinite;
}
@keyframes authSpin{to{transform:rotate(360deg);}}

.auth-alt{
	margin:20px 0 0;
	text-align:center;
	font-size:13px;
	color:#64748b;
}
.auth-alt a{color:#178f5c;font-weight:600;text-decoration:none;}
.auth-alt a:hover{text-decoration:underline;text-underline-offset:2px;}

/* 顶部错误条（服务端返回） */
.auth-alert{
	display:flex;
	align-items:flex-start;
	gap:8px;
	margin:0 0 16px;
	padding:10px 12px;
	border:1px solid #f3c9c9;
	border-radius:9px;
	background:#fdf3f3;
	font-size:13px;
	line-height:1.5;
	color:#b91c1c;
}
.auth-alert svg{flex:none;width:15px;height:15px;margin-top:1px;}

/* 密码强度 */
.auth-meter{display:flex;gap:4px;margin:10px 0 2px;}
.auth-meter i{flex:1;height:3px;border-radius:2px;background:#edf1f6;}
.auth-meter.s1 i:nth-child(1){background:#f0a92b;}
.auth-meter.s2 i:nth-child(-n+2){background:#f0a92b;}
.auth-meter.s3 i{background:#29b474;}

/* ---- 注册成功：查收邮件 ---- */
.auth-done{
	width:100%;
	max-width:520px;
	margin:0 auto;
	background:#fff;
	border:1px solid #e9eef5;
	border-radius:18px;
	padding:48px 44px 40px;
	text-align:center;
	box-shadow:0 24px 64px -24px rgba(15,23,42,.22);
	box-sizing:border-box;
}
.auth-done-ic{
	width:56px;
	height:56px;
	border-radius:50%;
	background:#e7f6ef;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:0 auto 20px;
}
.auth-done-ic svg{width:26px;height:26px;}
.auth-done h1{margin:0;font-size:24px;line-height:1.3;font-weight:600;color:#0f172a;letter-spacing:-.2px;}
.auth-done p{margin:12px 0 0;font-size:13.5px;line-height:1.7;color:#64748b;}
.auth-done p b{color:#0f172a;font-weight:600;word-break:break-all;}
.auth-done .auth-submit{margin-top:26px;}
.auth-done .auth-alt{margin-top:14px;}
.auth-done .auth-submit.is-link{
	background:#fff;
	border:1px solid #dfe5ec;
	color:#0f172a;
	font-weight:500;
}
.auth-done .auth-submit.is-link:hover{border-color:#c3ced8;background:#fbfcfd;box-shadow:none;}

/* ---- 响应式 ---- */
@media (max-width:900px){
	.auth-page header{
		height:56px;
		padding:0 16px;
		display:flex;
		align-items:center;
	}
	.auth-page header .logo{height:56px;margin:0;width:auto;float:none;display:flex;align-items:center;}
	.auth-page header .logo a{display:flex;align-items:center;gap:8px;}
	.auth-page header .logo img{height:30px;float:none;margin:0;}
	.auth-page header .logo p:not(.logo-name){display:none;}
	.auth-page header .logo .logo-name{font-size:16px;line-height:1;margin:0;text-indent:0;}
	.auth-page header .menu{display:none;}
	.auth-page .head-tools{
		position:static;
		top:auto;
		right:auto;
		margin:0 0 0 auto;
		line-height:1;
		display:flex;
		align-items:center;
		gap:8px;
	}
	.auth-page .head-tools a{padding:6px 11px;margin:0;}
	.auth-page .changeLan{position:static;top:auto;right:auto;width:auto;margin-left:6px;}
	.auth-page .sub-menu{display:none;}
	.auth-page .sub-menu-fixed{display:none;}
}
@media (max-width:1000px){
	.auth-shell{grid-template-columns:1fr;min-height:0;}
	.auth-brand{padding:26px 26px 24px;}
	.auth-brand-body h2{font-size:21px;}
	.auth-brand-sub{margin-top:8px;max-width:none;}
	.auth-points,.auth-brand-foot{display:none;}
	.auth-panel{padding:30px 26px 32px;}
	.auth-main{padding:24px 16px 48px;}
}
@media (max-width:560px){
	.auth-page{background:#fff;}
	.auth-main{padding:0 0 32px;}
	.auth-shell{border:0;border-radius:0;box-shadow:none;}
	.auth-panel{padding:24px 20px 32px;}
	.auth-head h1{font-size:23px;}
	.auth-done{margin:0;border:0;border-radius:0;box-shadow:none;padding:36px 22px 32px;max-width:none;}
}

/* --- 结果弹窗 R9：下载后升级条 + 追加数据 --- */
.qr-res-upsell{display:flex;align-items:flex-start;gap:10px;padding:11px 22px 11px 19px;background:#f4fbf7;border-left:3px solid #29b474;border-top:1px solid #e6f2ea;box-sizing:border-box;}
.qr-res-upsell-txt{flex:1 1 auto;min-width:0;}
.qr-res-upsell-title{margin:0;color:#04342c;font-size:12.5px;font-weight:600;line-height:1.4;text-align:start;}
.qr-res-upsell-sub{margin:2px 0 0;color:#5f6e66;font-size:11.5px;line-height:1.5;text-align:start;}
.qr-res-upsell-cta{flex:0 0 auto;display:inline-flex;align-items:center;height:28px;margin:0;padding:0 12px;border:1px solid #29b474;border-radius:7px;background:#fff;color:#0f6e56;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s;}
.qr-res-upsell-cta:hover{background:#29b474;color:#fff;}
.qr-res-upsell-x{flex:0 0 auto;width:20px;height:20px;margin:0;padding:0;border:0;background:transparent;color:#9aa4b1;font-family:inherit;font-size:15px;line-height:1;cursor:pointer;transition:color .15s;}
.qr-res-upsell-x:hover{color:#334155;}
.qr-res-btn-more{background:#f6fbf8;border-color:#c9e8d8;color:#0f6e56;}
.qr-res-btn-more:hover{background:#eaf7f0;border-color:#29b474;color:#0f6e56;}
@media (max-width:860px){
    .qr-res-upsell{flex-wrap:wrap;gap:8px;padding:10px 14px;}
    .qr-res-upsell-txt{flex:1 1 100%;}
    .qr-res-upsell-cta{margin-left:auto;}
    .qr-res-btns{flex-wrap:wrap;}
    .qr-res-btn{flex:1 1 calc(50% - 4px);}
    .qr-res-btn.is-primary{flex:1 1 100%;}
}

/* 动态码触发器挪到二级导航最左后，640px 面板若仍居中会越出视口左侧（cn/ar 实测 -53/-26px）。
   首组改为左对齐：面板左沿贴住触发器，右沿仍在视口内。 */
.sub-menu-container > .sub-group:first-child > .sub-mega-wrap > .sub-mega{
	left: 0;
	transform: translate(0, -6px);
}
.sub-menu-container > .sub-group:first-child > .sub-mega-wrap.is-open > .sub-mega,
.sub-menu-container > .sub-group:first-child > .sub-mega-wrap:focus-within > .sub-mega{
	transform: translate(0, 0);
}
/* nav-mega-left-anchor */
