﻿html,body{overflow: hidden;overflow-x: hidden;overflow-y: hidden;}
body {
	background:#f6f6f6;font-size: 13px; padding: 0px;margin: 0px; color:#666;
	font-family:"Helvetica Neue","Helvetica","Microsoft Yahei","微软雅黑","Lantinghei SC","STXihei","WenQuanYi Micro Hei",Arial,sans-serif;
}
body, input, textarea{-webkit-font-smoothing: antialiased;font-smoothing: antialiased;}
input,button {font-family:"Helvetica Neue","Helvetica","Microsoft Yahei","微软雅黑","Lantinghei SC","STXihei","WenQuanYi Micro Hei",Arial,sans-serif;}
.loginbox{
	box-shadow: 0px 20px 60px rgba(0,0,0,0.4),0px 0px 150px rgba(0,0,0,0.4);
	width:428px;border-radius:4px;
	position:absolute;top:46%;left:50%;margin-top:-209px;margin-left: -214px;
	z-index: 100;
}
a{text-decoration:none;color: #adf;}


.init-loading{
	position: fixed;left:45%;top:40%;font-size:1.25em;z-index: 999999;width: auto;
}
.init-loading div{
	padding: 20px;background:#fff;opacity:0.7;
	margin: 0 auto;
	color: #FFF;border-radius: 6px;	
	text-align: center;line-height: 30px;
}
.init-loading img{border-radius: 10px;}



.background{
	position:absolute;overflow: hidden;z-index: -10;
	background: url() no-repeat center center;
	width:100%;height: 100%;
	background-size: cover;
	right: 0px;top: 0px; bottom: 0px;left: 0px;
}

.aero{}
.aero:before{
	position: absolute;
	top: 0;right: 0;bottom: 0;left: 0;
	z-index: -1;
	box-sizing: border-box;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	content: '';
	-webkit-filter:blur(4px) brightness(1.0);
	filter: blur(4px) brightness(1.0);
	clip-path: inset(0);
}
.aero:after{
	position: absolute;
	top: 0;right: 0;bottom: 0;left: 0;
	z-index: -2;
	box-sizing: border-box;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	/*content: '';*/
	clip-path: inset(0);
}

.title{
	width:100%;height: 150px;
	background:#6699cc url(../images/common/login.png);background:rgba(0,0,0,0.1);
	font-weight:100;
	padding-top:0px;border-top-left-radius: 3px;border-top-right-radius: 3px;
	border: 1px solid rgba(255,255,255,0.03);
}
.title .logo{text-align: center;width: 100%;padding-top:15px;color:#fff;}
.title .logo .logo-img{max-width:70%;max-height:70px;height:auto;display:inline-block;vertical-align:middle;filter:drop-shadow(0 2px 6px rgba(0,0,0,0.25));}
.title .logo i{color:#aaddff;font-weight: 400;margin-right: 10px;-webkit-text-fill-color:#aaddff;}
.title .info{text-align: right;font-size: 14px;color:#aaddff;padding-right: 14px;padding-top:30px;font-weight: 400;}


.w80{width: 80px;}
.inputs{padding: 30px 30px 0px 30px;}
.inputs div{margin-bottom: 15px;}
.inputs div span{display: block;float: left;width:80px;line-height:30px;height:30px;}
.inputs div input{
	height:33px;
	width: 210px;
	line-height:25px;
	padding-left:10px;
	margin-left: 32px;
	border-radius:0 2px 2px 0;
	border-left-color: transparent;
}
.inputs div input:focus,input:focus{    
	border: 1px solid #3890ff;
	box-shadow: 0 0 0 3px rgba(56,144,255,.15);
}
.inputs div .font-icon{
	height: 33px;
	width: 32px;
	line-height: 32px;
	padding: inherit;
	border-right: none;
	color: #fff;
	display: inline-block;
	border: 1px solid #03A9F4;
	border: 1px solid rgba(0, 0, 0, 0.03);
	background: #03A9F4;
	background: rgba(0, 0, 0, 0.29);
	position: absolute;
	left: 94px;
	text-align: center;
	border-bottom-left-radius: 2px;
	border-top-left-radius: 2px;
}
.inputs .check-code input{
	width:127px;color:#666;
	border-radius: 2px 0 0 2px;
}
.inputs .check-code img{
	cursor: pointer;
	margin-left: -6px;
	position: relative;
	top: -1px;
	/* 必须与验证码画布 170x80 等比(170/80=2.125)，否则字符被拉伸/压扁导致难以辨认 */
	width: 106px;
	height: 50px;
	vertical-align: middle;
	background: #fff;
	border-radius: 0 2px 2px 0;
	border: 1px solid #bbb;
}


.admin-password,.admin-password-repeat{padding:20px 0px 0px 0;text-align: center;}
.admin-password input,.admin-password-repeat input{width: 200px;padding: 4px 6px;height: 35px;text-align: center;}
.admin-password-repeat{padding:10px 0px 0px 0;}


.form{
	position: relative;
	padding: 15px 13px 60px 13px;
	background: #fff;
	background:rgba(255,255,255,0.8);

	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
	text-align: center;

	/*background: none;color: #fff;*/
}

/*.form,.title{color:#fff;background:rgba(0,0,0,0.2);}*/



input,input:focus {outline: none; box-shadow: none; border: 1px solid #bbb;padding:3px 5px;}
input:focus {border-color: #75A1F0; outline: none; box-shadow: 0 0 12px #75A1F0;
	-webkit-transition: all 0.218s; -moz-transition: all 0.218s; -o-transition: all 0.218s; -ms-transition: all 0.218s; transition: all 0.218s;}

.actions{
	text-align: left;
	width: 242px;
	margin: 0 auto;
}
.actions .checkbox{
	display: inline-block;
	margin: 0px;
	border:none;
	position: relative;top: -1px;
	outline-offset: 0;
}
.actions .checkbox:focus{outline-offset: 0;}
.forget-password{display:inline-block;color:#a1bfd3;float: right;}
.forget-password:hover{color:#03A9F4;}

.msg{color:#f44336;text-align: center;margin-bottom: -10px;padding-top: 10px;font-size:14px;}
.common-footer{color:#eee;position: absolute;bottom:0px;text-align: center;width: 100%;
	background:#444;background: rgba(0,0,0,0.2);padding: 10px;
}
.common-footer a:hover{color:#fff;}


.loginbox .success{padding:10px;color: #3c763d;background-color: #dff0d8;border:#d6e9c6 1px solid;}
.loginbox .error{padding:10px;color:#a94442;background-color: #f2dede;border:#ebccd1 1px solid;font-size:14px;}
.loginbox .error a{background-color: #f2dede;color: #03A9F4;}
.loginbox h4{margin: 0;padding: 3px 10px;border-left: 3px solid;margin-bottom: 10px;}
.loginbox .success,.loginbox .error{text-align: left;}

.loginbox .guest{text-align:center;margin: 0 auto;padding: 20px 0 0px 0;}
.loginbox .guest a{color:#69C;text-decoration:none;border:2px solid #cdf;
	border-radius:20px;padding:6px 2em;;display: inline-block;}
.loginbox .guest a i{padding-left: 8px;}
.loginbox .guest a:hover{color:#f60;border-color:#f60;}


.actions #submit:hover{background: #317ee0;}
.actions #submit:active{background:#3373c5;}
div .actions #submit{
	border:none;outline: none;background: #6699cc;color:#fff;
	padding: 5px 30px;padding: 2px 15px\9;
	padding:6px 0px;
	width:242px;border-radius:4px;
	border: 1px solid #217ef2;
	background-color: #3890ff;
	background-image: linear-gradient(0deg,hsla(0,0%,100%,.06) 0,hsla(0,0%,100%,.06)),linear-gradient(0deg,rgba(9,109,236,.5) 0,rgba(76,155,255,.5));
	box-shadow: inset 0 1px 0 hsla(0,0%,100%,.08), 0 1px 1px rgba(0,0,0,.08);
	text-shadow: 0 -1px 0 rgba(0,0,0,.1);
}
.loginbox .guest{padding: 15px 0 10px 0;position: relative;}
.loginbox .guest a{
	padding: 20px 0 10px 0;padding:5px 0px;
	color: #217ef2;width:240px;border-radius:4px;
	border: 1px solid #217ef2;
}

.box-install.loginbox .guest a {margin-left: 0;width: 200px;}


.menu-group{
	position: absolute;top:5px;left:5px;
	font-weight: 400;
}
.menu-group a i.font-icon{padding-right:5px;}
#footer-language{
	background: #2196F3;
	background: rgba(255,255,255,0.2);
	color: #fff;
	border-radius:2px;
	height:26px;
	line-height:26px;
	padding: 0px 10px;
	display: inline-block;
	text-align: center;
	text-decoration: none;
}
.open #footer-language,#footer-language:hover{
	background:#63acff;
	color:#fff;
}

.dropdown-menu{
	width: 510px;padding:10px;overflow: auto;
}
.footer-language li {
	float: left;width: 120px;margin: 0 1px 1px 0;
}
.dropdown-menu>li>a {
	padding: 3px 10px;
	font-size: 13px;
}
.dropdown-menu>li>a.this,.dropdown-menu>li>a:focus, .dropdown-menu>li>a:hover{
	background: #63acff;
	filter:none;
	color: #fff;
}

.LICENSE_SUBMIT{display: inline-block;width: 198px;margin-top: 15px;}
.links{text-align: center;margin:40px 0 0 0;}


/*dialog*/
.aui-outer { text-align: left; position: relative;}
.aui-mask { position: absolute; width: 100%; height: 100%; background: #fff; opacity: 0.01; filter: alpha(opacity=1);}
.aui-loading { height: 100%; width: 100%; overflow: hidden; opacity: 0.7; filter: alpha(opacity=70); position: absolute; left: 0; top: 40px; z-index: 9999; text-align: center; text-indent: -999em;}
.aui-loading span { width: 80px; height: 80px; border-radius: 6px; background: #fff url("../../../images/common/dialog/dialog_loading.gif") no-repeat center center; position: absolute; left: 50%; top: 50%; margin-left: -40px; margin-top: -40px;}
table.aui-border,table.aui-dialog { width: 100%; border: 0; margin: 0; border-collapse: collapse;}
.aui-nw,.aui-n,.aui-ne,.aui-w,.aui-c,.aui-e,.aui-sw,.aui-s,.aui-se,.aui-header,.aui-td-icon,.aui-main,.aui-footer { padding: 0;}
.aui-header,.aui-buttons button { font: 12px/1.11;}
.aui-title { overflow: hidden; text-overflow: ellipsis; font-size: 1em;}
.aui-title img { width: 20px; margin-right: 5px; border-radius: 4px; pointer-events: none;}
.aui-state-no-title .aui-title { display: none;}
.aui-main { font-size: 1.1em; text-align: center; background: #FFF; min-width: 9em; min-width: 0 \9; visibility: auto;}
.aui-content { text-align: left; color: #666; border: none 0; width: 100%; height: 100%;}
.aui-content.aui-state-full { display: block; width: 100%; margin: 0; padding: 0 !important; height: 100%;}
.aui-icon { vertical-align: middle; background: #fff;}
.aui-icon div { width: 48px; height: 48px; margin: 10px 0 10px 10px; background-position: center center; background-repeat: no-repeat;}
body div .aui-border { *border: 1px solid #bbb;}
body div .aui-border { border: 1px solid #bbb \0/IE9;}
:root body div .aui-border { border: 0px solid \0/IE9;}
.aui-buttons { padding: 10px 8px; text-align: right; white-space: nowrap; background-color: #F6F6F6; border-top: solid 1px #DADEE5;}
.aui-buttons button { margin-left: 15px; padding: 3px 20px; height: 25px; cursor: pointer; display: inline-block; text-align: center; line-height: 1; overflow: visible; color: #000000; border: none; background: #aaa; color: #fff;}
.aui-buttons button:focus { outline: none 0;}
.aui-buttons button:hover { background: #c4c4c4;}
.aui-buttons button:active { background: #777777;}
.aui-buttons button[disabled] { cursor: default; color: #919191; background: #aaa; opacity: 0.5; filter: alpha(opacity=50);}
.aui-buttons button::-moz-focus-inner { border: 0; padding: 0; margin: 0;}
.aui-buttons button.aui-state-highlight { color: #FFF; background: #63acff;}
.aui-buttons button.aui-state-highlight:hover { color: #FFF; background: #96c7ff;}
.aui-buttons button.aui-state-highlight:active { background: #0076fc;}
.aui-outer { border: 0px solid #63acff; -webkit-box-shadow: 0px 5px 20px rgba(0,0,0,0.6); -moz-box-shadow: 0px 5px 20px rgba(0,0,0,0.6); box-shadow: 0px 5px 20px rgba(0,0,0,0.6); -webkit-transition: box-shadow 0.1s opacity 0.2s; -moz-transition: box-shadow 0.1s opacity 0.2s; -o-transition: box-shadow 0.1s opacity 0.2s; -ms-transition: box-shadow 0.1s opacity 0.2s; transition: box-shadow 0.1s opacity 0.2s;}
.aui-state-lock .aui-nw,.aui-state-lock .aui-n,.aui-state-lock .aui-ne,.aui-state-lock .aui-w,.aui-state-lock .aui-e,.aui-state-lock .aui-sw,.aui-state-lock .aui-s,.aui-state-lock .aui-se { background: rgba(0,0,0,0.5); background: #000 \9 !important; opacity: 0.5; filter: alpha(opacity=50);}
.aui-title-bar { position: relative; height: 100%;}
.aui-title { height: 31px; line-height: 30px; padding: 0 28px 0 10px; color: #fff; background-color: #7dbaff;}
.aui-state-focus .aui-mask { display: none;}
.aui-state-focus .aui-outer { -webkit-box-shadow: 0px 5px 40px rgba(0,0,0,0.7); -moz-box-shadow: 0px 5px 40px rgba(0,0,0,0.7); box-shadow: 0px 5px 40px rgba(0,0,0,0.7);}
.aui-state-focus .aui-title { background-color: #63acff;}
.aui-state-drag .aui-title { cursor: move; cursor: -webkit-grabbing; cursor: grabbing;}
.aui-min,.aui-max,.aui-close { display: block; position: absolute; text-decoration: none; outline: none; cursor: pointer; font-size: 1.25em; -webkit-transition: all 0.2s; -moz-transition: all 0.2s; -o-transition: all 0.2s; -ms-transition: all 0.2s; transition: all 0.2s; background: #8cc2ff; color: #fff; border-top: none; top: 0px; height: 22px; width: 35px; font-size: 1.15em; line-height: 22px; text-align: center; background: #6db1ff; background: none; height: 24px; width: 38px; line-height: 25px; color: #ffffff; font-family: FontAwesome;}
.aui-min:hover,.aui-max:hover,.aui-close:hover { text-decoration: none; color: #fff; background: #1783ff;}
.aui-close:hover { background: #cc0000;}
.aui-min { right: 82px; content: "\f068";}
.aui-max { right: 43px; content: "\f065";}
.aui-close { right: 5px; content: "\f00d";}
.aui-min:before { content: "\f068";}
.aui-max:before { content: "\f065";}
.aui-close:before { content: "\f00d";}
.dialog-max .aui-max:before { content: "\f066";}
.aui-max,.aui-min { display: none;}
.dialog-max .aui-nw,.dialog-max .aui-ne,.dialog-max .aui-sw,.dialog-max .aui-se,.dialog-max .aui-w,.dialog-max .aui-e { width: 0px;}
.dialog-max .aui-sw,.dialog-max .aui-n,.dialog-max .aui-se { height: 0px;}
.dialog-max .aui-outer { border: none !important;}
body .aui-outer {
	box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.2);
	border: 1px solid #bbb;
	border-color: rgba(0, 0, 0, 0.2);
}
body .aui-outer .aui-title {
	background: #fff;
	color: #666;
	border-bottom: 1px solid #f1f1f1;
	border-bottom: none;
}
body .aui-outer .aui-buttons {
	border-top: solid 1px #eee;
	background: #f8f8f8;
}
body .aui-outer .aui-buttons button {
	padding: 1px 1.5em;
	border: 1px solid #ccc;
	color: #222;
	background: #eeeeee;
}
body .aui-outer .aui-buttons button:hover {
	background: #fbfbfb;
}
body .aui-outer .aui-buttons button:active {
	background: #e1e1e1;
}
body .aui-outer .aui-buttons button.aui-state-highlight {
	border-color: #96c7ff;
	box-shadow: 0 0 2px #96c7ff;
}
body .aui-outer .aui-buttons button.aui-state-highlight:hover {
	color: #111;
}
body .aui-outer .aui-buttons button.aui-state-highlight:active {
	color: #111;
}
body .aui-outer .aui-min {
	right: 80px;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAEUlEQVQYV2NgGGbgP5F40AMAIN0J96UZJscAAAAASUVORK5CYII=");
}
body .aui-outer .aui-max {
	right: 40px;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAGElEQVQYlWNgYGD4TySGEATAqELiFBLEAISgI91xKgmgAAAAAElFTkSuQmCC");
}
body .aui-outer .aui-close {
	right: 0px;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAOUlEQVQYlWNgYGD4D8TGDLiBMVQNgzErOwcuxRhy2BTjNABZAp8tCMWEFBGtkCirifIM0cFDVIADAOrvG43QTSHZAAAAAElFTkSuQmCC");
}
body .aui-outer .aui-min,
body .aui-outer .aui-max,
body .aui-outer .aui-close {
	color: #888;
	background-position: center center;
	background-color: transparent;
	background-repeat: no-repeat;
	height: 31px;
	width: 40px;
	line-height: 31px;
	-ms-transition: background 0.2s;
	-webkit-transition: background 0.2s;
	-moz-transition: background 0.2s;
	-o-transition: background 0.2s;
	transition: background 0.2s;
}
body .aui-outer .aui-min:before,
body .aui-outer .aui-max:before,
body .aui-outer .aui-close:before {
	content: "";
}
body .aui-outer .aui-min:hover,
body .aui-outer .aui-max:hover,
body .aui-outer .aui-close:hover,
body .aui-outer .aui-min:active,
body .aui-outer .aui-max:active,
body .aui-outer .aui-close:active {
	color: #333;
	background-color: #ddd;
}
body .aui-outer .aui-close:hover {
	background-color: #e81123;
	color: #fff;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAOklEQVQYV2P4/+//+f/fv6cw4AAgOZAaCAMEsCjGkMOmGKcByBL4bEFVjE8R0QqJspoozxAdPMQGOABXELkNcbMs5wAAAABJRU5ErkJggg==");
}
body .aui-state-focus .aui-outer {
	box-shadow: 0px 0px 20px rgba(0, 140, 255, 0.46);
	border: 1px solid #71b9f3;
}
body .dialog-copyright.dialog-simple .aui-close,
body .share-dialog.dialog-simple .aui-close,
body .check-version-dialog.dialog-simple .aui-close {
	opacity: 0.6;
	background: rgba(0, 0, 0, 0.4);
}
body .dialog-copyright.dialog-simple .aui-close:before,
body .share-dialog.dialog-simple .aui-close:before,
body .check-version-dialog.dialog-simple .aui-close:before {
	content: "\f00d";
	background-image: none;
}
body .dialog-copyright.dialog-simple .aui-close:hover,
body .share-dialog.dialog-simple .aui-close:hover,
body .check-version-dialog.dialog-simple .aui-close:hover {
	background-image: none;
}
body div.dialog-simple .aui-title {
	border-radius: 0;
}
body div.dialog-simple .aui-min,
body div.dialog-simple .aui-max,
body div.dialog-simple .aui-close {
	background-color: rgba(255, 255, 255, 0.8);
	border-radius: 0;
}
body div.dialog-simple .aui-min:hover,
body div.dialog-simple .aui-max:hover,
body div.dialog-simple .aui-close:hover,
body div.dialog-simple .aui-min:active,
body div.dialog-simple .aui-max:active,
body div.dialog-simple .aui-close:active {
	background-color: rgba(255, 255, 255, 0.95);
}
body div.dialog-simple .aui-close {
	right: 4px;
}
body div.dialog-simple .aui-close:hover,
body div.dialog-simple .aui-close:active {
	background-color: #e81123;
}

/* copyright dialog*/
.dialog-copyright {width: 400px !important;}
.dialog-copyright{min-width: 400px;}
.dialog-copyright.dialog-simple .aui-outer{
	overflow: inherit;
	box-shadow: 0 0px 60px rgba(0, 0, 0, 0.4);
	border: 1px solid #ccc;
	border: 1px solid transparent;
}
.dialog-copyright.dialog-simple .aui-inner{border: none;background: none;}
.dialog-copyright.dialog-simple .aui-title{
	opacity: 0.01;
	filter: alpha(opacity=1);
	top: 0px;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 5;
}
.dialog-copyright.dialog-simple .aui-min,.dialog-copyright.dialog-simple .aui-max{display: none;}
.dialog-copyright.dialog-simple .aui-title-bar{
	bottom: 0px;
	overflow: hidden;
	height: 100px;
	margin-top: -120px;
	top: 120px;
	border-radius: 4px;
}
.dialog-copyright.dialog-simple .aui-close{
	opacity: 0.6;
	filter: alpha(opacity=60);
	background: rgba(0, 0, 0, 0.5);
	width: 100px;
	height: 100px;
	top: -50px;
	right: -50px;
	border-radius: 50px;
	text-align: left;
	font-size: 20px;
	z-index: 100;
	padding: 0;
}
.dialog-copyright.dialog-simple .aui-close:hover{opacity: 0.6;filter: alpha(opacity=60);}
.dialog-copyright.dialog-simple .aui-close:active{opacity: 1;filter: alpha(opacity=100);}
.dialog-copyright.dialog-simple .aui-close::before{padding-left: 22px;line-height: 140px;}
.dialog-copyright .aui-footer{display: none;}
.check-version-dialog.dialog-simple .aui-title-bar {margin-top: -155px;}
.dialog-copyright .dialog-copyright-content{
	-khtml-user-select: text;
	-webkit-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	-o-user-select: text;
	user-select: text;
	width: auto;
	border-radius: 6px;
	width: 400px;
	-webkit-box-shadow: 0px 10px 60px rgba(0, 0, 0, 0.4);
	-moz-box-shadow: 0px 10px 60px rgba(0, 0, 0, 0.4);
	box-shadow: 0px 10px 60px rgba(0, 0, 0, 0.4);
	border: 1px solid #cccccc \9;
	padding-bottom: 30px;
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
}
.dialog-copyright .dialog-copyright-content .title{
	width: 100%;
	background: #6699cc url("../images/common/login.png");
	height: 150px;
	padding-top: 0px;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
}
.dialog-copyright .aui-main{border-radius: 6px;}
.dialog-copyright .dialog-copyright-content .title .logo i{color: #aaddff;font-weight: 400;margin-right: 10px;}
.dialog-copyright .dialog-copyright-content .title .info{
	text-align: right;
	font-size: 1.15em;
	color: #aaddff;
	padding-right: 14px;
	padding-top: 30px;
}
.dialog-copyright .dialog-copyright-content .content{padding: 20px;}
.dialog-copyright .dialog-copyright-content .content p{text-indent: 2em;color: #333;margin-bottom: 30px;}
.dialog-copyright .dialog-copyright-content .content div{text-align: center;padding-bottom: 5px;}



/* 
.title {background: rgba(0,0,0,0.5);}
.form {background: rgba(0,0,0,0.3);}
.inputs div .font-icon {border: 1px solid rgba(255, 255, 255, 0.1);background: rgba(255, 255, 255, 0.3);}
.loginbox {border:1px solid rgba(255,255,255,0.1);box-shadow: 0px 20px 60px rgba(255,255,255,0.3);} 
*/

/* ================= 葫芦云桌面 登录页现代化美化 ================= */
/* 登录框：圆角加大、阴影柔和、磨砂玻璃 */
.loginbox{
	width: 400px;
	border-radius: 20px;
	box-shadow: 0 12px 48px rgba(17, 42, 68, 0.22), 0 2px 8px rgba(17,42,68,0.08);
	background: rgba(255,255,255,0.62);
	backdrop-filter: blur(14px) saturate(1.2);
	-webkit-backdrop-filter: blur(14px) saturate(1.2);
	overflow: visible;
	top: 46%; margin-top: -218px; margin-left: -200px;
	border: 1px solid rgba(170,210,255,0.35);
}

/* 顶部：去掉蓝底，白底 + logo 居中展示 */
.loginbox .title{
	background: rgba(255,255,255,0.50) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	height: auto;
	min-height: 150px;
	padding: 34px 30px 18px 30px;
	border: none;
	border-bottom: 1px solid rgba(28, 64, 116, 0.06);
	border-radius: 16px 16px 0 0;
}
.loginbox .title .logo{
	text-align: center;
	padding: 0;
	display: block;
}
.loginbox .title .logo .logo-img{
	max-width: 100%;
	max-height: 76px;
	display: inline-block;
	vertical-align: middle;
	filter: drop-shadow(0 2px 10px rgba(17,64,120,0.18));
	mix-blend-mode: multiply;
}
/* 副标语：居中显示在 logo 下方 */
.loginbox .title .info{
	text-align: center;
	font-size: 13px;
	letter-spacing: 0.5px;
	color: #ffffff;
	text-shadow: 0 1px 3px rgba(20,52,102,0.75), 0 0 12px rgba(20,52,102,0.45);
	background: rgba(20,52,102,0.38);
	border-radius: 20px;
	padding: 6px 16px;
	margin: 12px auto 0 auto;
	width: fit-content;
	max-width: 90%;
	font-weight: 400;
	box-sizing: border-box;
}

/* 表单区：白底、统一内边距 */
.loginbox .form{
	background: rgba(255,255,255,0.50) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 0 0 16px 16px;
	padding: 26px 30px 30px 30px;
}
.loginbox .inputs{ padding: 0; }
.loginbox .inputs div{
	position: relative;
	margin-bottom: 16px;
}
/* 输入框：全宽圆角、浅灰底 */
.loginbox .inputs div input[type="text"],
.loginbox .inputs div input[type="password"]{
	width: 100%;
	height: 44px;
	line-height: 44px;
	margin: 0;
	padding: 0 14px 0 40px;
	border: 1px solid #dbe3ee;
	border-radius: 10px;
	font-size: 14px;
	color: #33475b;
	background: #f7fafd;
	-webkit-transition: all .2s;
	transition: all .2s;
	box-sizing: border-box;
}
.loginbox .inputs div input:focus{
	border-color: #3890ff;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(56,144,255,.18), 0 0 20px rgba(80,160,255,0.35);
}
/* 输入框左侧图标 */
.loginbox .inputs div .font-icon{
	position: absolute;
	left: 12px; top: 0;
	height: 44px; line-height: 44px;
	width: 24px;
	background: none;
	border: none;
	color: #7c94ad;
	font-size: 15px;
	padding: 0;
	z-index: 2;
}

/* 验证码行：输入框 + 图片并排 */
.loginbox .inputs .check-code input{
	width: 62%;
	margin: 0;
	border-radius: 10px 0 0 10px;
	background: #f7fafd;
	padding-left: 40px;
	box-sizing: border-box;
}
.loginbox .inputs .check-code img{
	width: 34%;
	height: 44px;
	margin-left: 0;
	border-radius: 0 10px 10px 0;
	border: 1px solid #dbe3ee;
	border-left: none;
	position: absolute;
	right: 0; top: 0;
	box-sizing: border-box;
}
.loginbox .inputs .check-code .font-icon{ left: 12px; }

/* 操作行：记住密码 + 忘记密码 */
.loginbox .actions{
	width: 100%;
	margin: 4px 0 18px 0;
	font-size: 13px;
	color: #5b7a9b;
}
.loginbox .actions label{
	color: #5b7a9b;
	font-weight: 400;
	cursor: pointer;
}
.loginbox .actions .checkbox{ vertical-align: middle; margin: 0 4px 0 0; }
.loginbox .forget-password{ float: right; color: #3890ff; }
.loginbox .forget-password:hover{ color: #1e6fe0; text-decoration: underline; }

/* 登录按钮：全宽、蓝色渐变、圆角 */
.loginbox div .actions #submit{
	width: 100%;
	height: 44px;
	line-height: 42px;
	padding: 0;
	font-size: 15px;
	letter-spacing: 4px;
	font-weight: 500;
	border: none;
	border-radius: 10px;
	color: #fff;
	background: linear-gradient(135deg, #2f8cff 0%, #1a6fe8 100%);
	box-shadow: 0 6px 16px rgba(42, 130, 255, 0.28);
	cursor: pointer;
	-webkit-transition: all .2s;
	transition: all .2s;
}
.loginbox div .actions #submit:hover{
	background: linear-gradient(135deg, #3f99ff 0%, #2478f2 100%);
	box-shadow: 0 8px 20px rgba(42, 130, 255, 0.36);
	transform: translateY(-1px);
}
.loginbox div .actions #submit:active{
	transform: translateY(0);
	box-shadow: 0 4px 10px rgba(42, 130, 255, 0.25);
}

/* 错误/提示信息 */
.loginbox .msg{
	font-size: 13px;
	margin: 0 0 -6px 0;
	padding: 8px 0 0 0;
}

/* 游客登录 */
.loginbox .guest a{
	color: #3890ff;
	border: 1px solid #cfe0f5;
	border-radius: 20px;
	background: rgba(56,144,255,0.04);
}
.loginbox .guest a:hover{ color: #1e6fe0; border-color: #3890ff; background: rgba(56,144,255,0.08); }

/* 语言切换按钮：浅色小圆角 */
.loginbox #footer-language{
	background: rgba(255,255,255,0.55);
	border: 1px solid rgba(28,64,116,0.10);
	color: #5b7a9b;
	border-radius: 6px;
	height: 26px; line-height: 26px;
}

/* 小屏适配 */
@media (max-width: 480px){
	.loginbox{ width: 92%; margin-left: -46%; }
}


/* ================= 葫芦云桌面 登录页 · 玄幻炫幻增强 V2 ================= */

/* ---- 全局极光背景层：多层流光漂移 + 色彩流转 + 柔化 ---- */
body::before{
	content: "";
	position: fixed;
	left: 0; top: 0; right: 0; bottom: 0;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(900px 650px at 12% 10%,  rgba(64,156,255,0.55), transparent 60%),
		radial-gradient(820px 600px at 88% 15%,  rgba(180,80,255,0.45), transparent 58%),
		radial-gradient(760px 760px at 85% 90%,  rgba(0,220,240,0.40), transparent 58%),
		radial-gradient(700px 620px at 12% 88%,  rgba(80,120,255,0.42), transparent 58%),
		radial-gradient(1100px 700px at 50% 45%, rgba(90,170,255,0.18), transparent 65%);
	filter: blur(2px) saturate(1.3);
	mix-blend-mode: screen;
	animation: hucd-aurora 16s ease-in-out infinite alternate;
}
@keyframes hucd-aurora{
	0%   { background-position: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%; filter: blur(2px) saturate(1.3) hue-rotate(0deg); }
	50%  { background-position: 10% 7%, -8% -5%, 6% -7%, -6% 8%, 3% -3%; filter: blur(2px) saturate(1.45) hue-rotate(18deg); }
	100% { background-position: -7% -6%, 9% 6%, -5% 9%, 7% -7%, -3% 4%; filter: blur(2px) saturate(1.3) hue-rotate(38deg); }
}

/* ---- 星空粒子层：闪烁星点 ---- */
body::after{
	content: "";
	position: fixed;
	left: 0; top: 0; right: 0; bottom: 0;
	z-index: 0;
	pointer-events: none;
	background-image:
		radial-gradient(2px 2px at 30px  40px, rgba(255,255,255,0.98), transparent 60%),
		radial-gradient(2px 2px at 160px 120px, rgba(210,230,255,0.85), transparent 60%),
		radial-gradient(2px 2px at 260px 70px,  rgba(255,255,255,0.75), transparent 60%),
		radial-gradient(2px 2px at 90px  200px, rgba(180,215,255,0.90), transparent 60%),
		radial-gradient(1.5px 1.5px at 210px 250px, rgba(255,255,255,0.95), transparent 60%),
		radial-gradient(2px 2px at 330px 180px, rgba(220,235,255,0.80), transparent 60%),
		radial-gradient(1.5px 1.5px at 380px 40px, rgba(255,255,255,0.85), transparent 60%),
		radial-gradient(2px 2px at 60px  320px, rgba(200,225,255,0.75), transparent 60%),
		radial-gradient(2px 2px at 300px 310px, rgba(255,255,255,0.90), transparent 60%),
		radial-gradient(1.5px 1.5px at 140px 380px, rgba(210,230,255,0.80), transparent 60%),
		radial-gradient(2px 2px at 250px 120px, rgba(255,255,255,0.85), transparent 60%),
		radial-gradient(2px 2px at 60px  150px, rgba(200,220,255,0.80), transparent 60%);
	background-size: 420px 420px;
	animation: hucd-twinkle 4s ease-in-out infinite alternate;
}
@keyframes hucd-twinkle{
	0%   { opacity: 0.28; }
	50%  { opacity: 0.75; }
	100% { opacity: 0.38; }
}

/* ---- 葫芦 LOGO：背后辉光（无倒影） ---- */
.loginbox .title .logo{
	position: relative;
}
.loginbox .title .logo::after{
	content: "";
	position: absolute;
	left: 50%; top: 30%;
	transform: translateX(-50%);
	width: 280px; height: 110px;
	background: radial-gradient(ellipse at center, rgba(90,170,255,0.55), transparent 72%);
	filter: blur(16px);
	z-index: 0;
	pointer-events: none;
	animation: hucd-logo-halo 4s ease-in-out infinite alternate;
}
@keyframes hucd-logo-halo{
	0%   { opacity: 0.45; transform: translateX(-50%) scale(1); }
	100% { opacity: 0.95; transform: translateX(-50%) scale(1.15); }
}
.loginbox .title .logo .logo-img{
	animation: hucd-logo-float 6s ease-in-out infinite;
}
@keyframes hucd-logo-float{
	0%,100% { transform: translateY(0); filter: drop-shadow(0 4px 14px rgba(60,140,255,0.35)); }
	50%     { transform: translateY(-4px); filter: drop-shadow(0 8px 26px rgba(60,140,255,0.55)); }
}

/* ---- 标题区：顶部渐变光带 ---- */
.loginbox .title{
	position: relative;
	overflow: visible;
}
.loginbox .title::before{
	content: "";
	position: absolute;
	left: 0; right: 0; top: -1px;
	height: 4px;
	border-radius: 4px;
	background: linear-gradient(90deg, transparent, rgba(64,200,255,0.90), rgba(180,120,255,0.90), rgba(60,230,200,0.90), transparent);
	background-size: 300% 100%;
	animation: hucd-lightbar 3.5s linear infinite;
}
@keyframes hucd-lightbar{
	0%   { background-position: 0% 0; }
	100% { background-position: -300% 0; }
}

/* ---- 登录框：呼吸光晕（增强） ---- */
.loginbox{
	animation: hucd-box-glow 6s ease-in-out infinite;
}
@keyframes hucd-box-glow{
	0%,100% {
		box-shadow: 0 12px 48px rgba(17,42,68,0.22), 0 0 0 1px rgba(110,170,255,0.20), 0 0 40px rgba(90,160,255,0.22), inset 0 0 22px rgba(160,200,255,0.10);
	}
	50% {
		box-shadow: 0 12px 48px rgba(17,42,68,0.22), 0 0 0 1px rgba(150,200,255,0.45), 0 0 80px rgba(130,180,255,0.45), inset 0 0 30px rgba(180,215,255,0.20);
	}
}

/* ---- 登录按钮：流光扫过 ---- */
.loginbox div .actions #submit{
	position: relative;
	overflow: hidden;
}
.loginbox div .actions #submit::after{
	content: "";
	position: absolute;
	top: 0; left: -80%;
	width: 55%; height: 100%;
	background: linear-gradient(100deg, transparent, rgba(255,255,255,0.50), transparent);
	transform: skewX(-20deg);
	animation: hucd-btn-shine 3.2s ease-in-out infinite;
}
@keyframes hucd-btn-shine{
	0%   { left: -80%; }
	60%  { left: 130%; }
	100% { left: 130%; }
}

/* ---- 语言按钮：幽蓝微光 ---- */
.loginbox #footer-language{
	box-shadow: 0 0 10px rgba(90,160,255,0.18);
	-webkit-transition: all .25s;
	transition: all .25s;
}
.loginbox #footer-language:hover{
	box-shadow: 0 0 18px rgba(120,180,255,0.40);
	background: rgba(56,144,255,0.16);
	color: #2f7ce0;
}

/* ============ 葫芦云桌面 登录页 · 赛博霓虹 V3（方案B） ============ */
/* 背景(壁纸+极光+星空)与语言位置保持不动，仅覆盖卡片内部为霓虹风 */

/* 登录卡片：深色玻璃 + 青色霓虹边 + 上下流动霓虹线 */
.loginbox{
	background: linear-gradient(160deg, rgba(12,7,36,0.78), rgba(22,10,54,0.66));
	backdrop-filter: blur(18px) saturate(1.4);
	-webkit-backdrop-filter: blur(18px) saturate(1.4);
	border: 1px solid rgba(0,229,255,0.45);
	border-radius: 18px;
	box-shadow: 0 0 34px rgba(0,229,255,0.22), 0 0 90px rgba(255,0,200,0.14), inset 0 0 42px rgba(0,229,255,0.06);
	animation: hucd-cyber-glow 6s ease-in-out infinite;
}
@keyframes hucd-cyber-glow{
	0%,100% { box-shadow: 0 0 30px rgba(0,229,255,0.20), 0 0 80px rgba(255,0,200,0.12), inset 0 0 40px rgba(0,229,255,0.06); }
	50%     { box-shadow: 0 0 55px rgba(0,229,255,0.42), 0 0 120px rgba(255,0,200,0.24), inset 0 0 56px rgba(0,229,255,0.12); }
}
/* 顶部霓虹线 */
.loginbox::before{
	content: "";
	position: absolute;
	top: -1px; left: 10%; right: 10%;
	height: 3px; border-radius: 3px;
	background: linear-gradient(90deg, transparent, #00e5ff, #ff00c8, transparent);
	background-size: 250% 100%;
	animation: hucd-cyber-line 4s linear infinite;
	filter: drop-shadow(0 0 8px #00e5ff);
	z-index: 3;
}
@keyframes hucd-cyber-line{ 0%{ background-position: 0 0; } 100%{ background-position: -250% 0; } }
/* 底部霓虹线 */
.loginbox::after{
	content: "";
	position: absolute;
	left: 10%; right: 10%; bottom: -1px;
	height: 3px; border-radius: 3px;
	background: linear-gradient(90deg, transparent, #ff00c8, #00e5ff, transparent);
	background-size: 250% 100%;
	animation: hucd-cyber-line2 4s linear infinite;
	filter: drop-shadow(0 0 8px #ff00c8);
	z-index: 3;
}
@keyframes hucd-cyber-line2{ 0%{ background-position: 0 0; } 100%{ background-position: 250% 0; } }

/* 标题区：深色霓虹，去掉原白底 */
.loginbox .title{
	background: rgba(6,4,26,0.42) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-bottom: 1px solid rgba(0,229,255,0.16);
	border-radius: 18px 18px 0 0;
}
/* 标题区原渐变光带移除（改用卡片顶部霓虹线） */
.loginbox .title::before{ content: none; }

/* LOGO：放大 + 霓虹辉光闪烁 */
.loginbox .title .logo .logo-img{
	max-height: 112px;
	filter: drop-shadow(0 0 14px rgba(0,229,255,0.70));
	animation: hucd-cyber-logo 4s ease-in-out infinite;
	mix-blend-mode: normal;
}
@keyframes hucd-cyber-logo{
	0%,100% { transform: translateY(0); filter: drop-shadow(0 0 10px rgba(0,229,255,0.55)); }
	50%     { transform: translateY(-4px); filter: drop-shadow(0 0 24px rgba(255,0,200,0.80)); }
}
/* LOGO 背后辉光增强为霓虹双色 */
.loginbox .title .logo::after{
	background: radial-gradient(ellipse at center, rgba(0,229,255,0.45), rgba(255,0,200,0.25) 55%, transparent 75%);
	filter: blur(18px);
}

/* 副标语：霓虹胶囊 */
.loginbox .title .info{
	color: #cff5ff;
	text-shadow: 0 0 8px rgba(0,229,255,0.85), 0 0 22px rgba(0,229,255,0.40);
	border: 1px solid rgba(0,229,255,0.45);
	background: rgba(0,229,255,0.10);
	box-shadow: 0 0 18px rgba(0,229,255,0.22);
}

/* 表单区：深色 */
.loginbox .form{
	background: rgba(6,4,26,0.30) !important;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	border-radius: 0 0 18px 18px;
}

/* 输入框：深色霓虹 */
.loginbox .inputs div input[type="text"],
.loginbox .inputs div input[type="password"]{
	color: #e6f7ff;
	background: rgba(0,229,255,0.05);
	border: 1px solid rgba(0,229,255,0.35);
	border-radius: 12px;
	height: 46px; line-height: 46px;
}
.loginbox .inputs div input::placeholder{ color: rgba(0,229,255,0.42); }
.loginbox .inputs div input:focus{
	background: rgba(0,229,255,0.10);
	border-color: #00e5ff;
	box-shadow: 0 0 0 3px rgba(0,229,255,0.18), 0 0 26px rgba(0,229,255,0.45), inset 0 0 12px rgba(0,229,255,0.08);
}
/* 输入框图标 */
.loginbox .inputs div .font-icon{ color: #00e5ff; text-shadow: 0 0 8px #00e5ff; }

/* 验证码行 */
.loginbox .inputs .check-code input{ background: rgba(0,229,255,0.05); border-radius: 12px 0 0 12px; }
.loginbox .inputs .check-code img{
	height: 46px;
	border: 1px solid rgba(255,0,200,0.40);
	border-left: none;
	border-radius: 0 12px 12px 0;
	box-shadow: 0 0 14px rgba(255,0,200,0.18);
}

/* 操作行 */
.loginbox .actions{ color: rgba(0,229,255,0.85); }
.loginbox .actions label{ color: rgba(0,229,255,0.85); }
.loginbox .forget-password{ color: #ff6be0; text-shadow: 0 0 8px rgba(255,0,200,0.55); }
.loginbox .forget-password:hover{ color: #ff8fe8; text-decoration: underline; }

/* 登录按钮：蓝紫霓虹渐变流光 */
.loginbox div .actions #submit{
	height: 46px; line-height: 44px;
	color: #000;
	background: linear-gradient(135deg, #00e5ff, #ff00c8);
	background-size: 200% 200%;
	animation: hucd-cyber-btn 5s ease infinite;
	border-radius: 12px;
	font-weight: 700;
	box-shadow: 0 0 26px rgba(0,229,255,0.50), 0 0 44px rgba(255,0,200,0.30);
}
.loginbox div .actions #submit:hover{
	background: linear-gradient(135deg, #00e5ff, #ff00c8);
	background-size: 200% 200%;
	animation: hucd-cyber-btn 2.5s ease infinite;
	transform: translateY(-1px);
	box-shadow: 0 0 42px rgba(0,229,255,0.70), 0 0 62px rgba(255,0,200,0.45);
}
@keyframes hucd-cyber-btn{ 0%,100%{ background-position: 0% 50%; } 50%{ background-position: 100% 50%; } }

/* 游客登录 */
.loginbox .guest a{
	color: #00e5ff;
	border: 1px solid rgba(0,229,255,0.45);
	background: rgba(0,229,255,0.06);
}
.loginbox .guest a:hover{ color: #6ef2ff; border-color: #00e5ff; background: rgba(0,229,255,0.12); }

/* 语言按钮：青色霓虹微光（位置保持不变） */
.loginbox #footer-language{
	background: rgba(0,229,255,0.07);
	border: 1px solid rgba(0,229,255,0.50);
	color: #00e5ff;
	text-shadow: 0 0 8px #00e5ff;
	box-shadow: 0 0 14px rgba(0,229,255,0.30);
	height: 28px; line-height: 28px;
}
.loginbox #footer-language:hover{
	background: rgba(0,229,255,0.16);
	color: #6ef2ff;
	box-shadow: 0 0 22px rgba(0,229,255,0.55);
}

/* ============ 登录页 · 语言下拉菜单置顶修复 ============ */
/* 让下拉菜单脱离卡片层级，置顶显示，避免被卡片背景遮挡 */
.loginbox .menu-group{
	z-index: 1500;
}
.loginbox .dropdown-menu{
	position: absolute;
	left: 0; top: 100%;
	z-index: 2000;
	width: 520px;
	max-height: 420px;
	overflow-y: auto;
	overflow-x: hidden;
	background: rgba(12, 18, 46, 0.97);
	border: 1px solid rgba(0, 229, 255, 0.45);
	border-radius: 10px;
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.55), 0 0 26px rgba(0, 229, 255, 0.22);
	padding: 8px;
	margin-top: 6px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}
.loginbox .dropdown-menu>li{
	float: left;
	width: 122px;
	margin: 0 1px 2px 0;
}
.loginbox .dropdown-menu>li>a{
	color: #cfe9ff;
	padding: 5px 10px;
	font-size: 13px;
	border-radius: 6px;
	transition: all .2s;
}
.loginbox .dropdown-menu>li>a:hover{
	background: rgba(0, 229, 255, 0.18);
	color: #ffffff;
	text-shadow: 0 0 8px rgba(0, 229, 255, 0.6);
}
.loginbox .dropdown-menu>li>a.this{
	background: linear-gradient(135deg, rgba(0,229,255,0.30), rgba(255,0,200,0.25));
	color: #ffffff;
	text-shadow: 0 0 8px rgba(0, 229, 255, 0.7);
}

/* ============ 登录页 · V6 彻底置顶修复 ============ */
/* 根因：.loginbox(z-index:100) 形成层叠上下文，子元素 .title(z:auto) 与 .form(z:auto)
   同为 auto 时按 DOM 顺序绘制，.form 在后盖住了从 .title 溢出的下拉菜单。
   修复：让 .title 创建独立上下文并高于 .form，菜单随 .title 整体置顶。 */
.loginbox .title{
	z-index: 50 !important;
	position: relative;
}
.loginbox .form{
	z-index: 40 !important;
	position: relative;
}
/* 菜单：绝对定位 + 高 z-index + 不透明背景，!important 防被皮肤/内联覆盖 */
.loginbox .menu-group{
	z-index: 1000 !important;
}
.loginbox .dropdown-menu{
	position: absolute !important;
	left: 0 !important;
	top: 100% !important;
	z-index: 2000 !important;
	width: 520px !important;
	max-height: none !important;
	overflow: visible !important;
	background: rgba(12, 18, 46, 0.97) !important;
	border: 1px solid rgba(0, 229, 255, 0.45) !important;
	border-radius: 10px !important;
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.55), 0 0 26px rgba(0, 229, 255, 0.22) !important;
	padding: 8px !important;
	margin-top: 6px !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}
.loginbox .dropdown-menu>li{
	float: left;
	width: 122px !important;
	margin: 0 1px 2px 0 !important;
}
.loginbox .dropdown-menu>li>a{
	color: #cfe9ff !important;
	padding: 5px 10px !important;
	font-size: 13px !important;
	border-radius: 6px !important;
	transition: all .2s;
}
.loginbox .dropdown-menu>li>a:hover{
	background: rgba(0, 229, 255, 0.18) !important;
	color: #ffffff !important;
	text-shadow: 0 0 8px rgba(0, 229, 255, 0.6);
}
.loginbox .dropdown-menu>li>a.this{
	background: linear-gradient(135deg, rgba(0,229,255,0.30), rgba(255,0,200,0.25)) !important;
	color: #ffffff !important;
	text-shadow: 0 0 8px rgba(0, 229, 255, 0.7);
}

/* ============ 登录页 · V7 透明LOGO适配 ============ */
/* 新 LOGO 为透明底蓝紫霓虹横版，直接浮于深色卡片，无需混色模式 */
.loginbox .title .logo .logo-img{
	max-height: 128px !important;
	max-width: 92% !important;
	mix-blend-mode: normal !important;
	filter: drop-shadow(0 0 10px rgba(0,229,255,0.35)) drop-shadow(0 4px 18px rgba(199,125,255,0.30));
}
.loginbox .title .logo .logo-img:hover{
	filter: drop-shadow(0 0 16px rgba(0,229,255,0.60)) drop-shadow(0 6px 26px rgba(199,125,255,0.55));
}
/* 霓虹呼吸动画：蓝紫双色辉光 */
@keyframes hucd-cyber-logo{
	0%,100% { transform: translateY(0); filter: drop-shadow(0 0 8px rgba(0,229,255,0.35)) drop-shadow(0 4px 16px rgba(199,125,255,0.28)); }
	50%     { transform: translateY(-4px); filter: drop-shadow(0 0 18px rgba(255,0,200,0.55)) drop-shadow(0 6px 26px rgba(0,229,255,0.45)); }
}

/* ============ 登录页 · V8 版权弹窗统一LOGO与美化 ============ */
.dialog-copyright .dialog-copyright-content{
	background: linear-gradient(160deg, rgba(12,7,36,0.96), rgba(22,10,54,0.96));
	border: 1px solid rgba(0,229,255,0.35);
	box-shadow: 0 14px 48px rgba(0,0,0,0.55), 0 0 32px rgba(0,229,255,0.18);
}
.dialog-copyright .dialog-copyright-content .title{
	background: linear-gradient(160deg, rgba(12,7,36,0.98), rgba(30,12,64,0.98)) !important;
	background-image: url("../images/common/hucd_login_logo.png") !important;
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	height: 150px;
	border-bottom: 1px solid rgba(0,229,255,0.25);
	border-radius: 16px 16px 0 0;
}
.dialog-copyright .dialog-copyright-content .title .logo,
.dialog-copyright .dialog-copyright-content .title .info{
	display: none !important;
}
.dialog-copyright .dialog-copyright-content .content{
	padding: 20px 24px;
}
.dialog-copyright .dialog-copyright-content .content p{
	text-indent: 2em;
	color: #d6eaff;
	line-height: 1.8;
	margin-bottom: 24px;
}
.dialog-copyright .dialog-copyright-content .content div{
	text-align: center;
	color: #8fd8ff;
	padding-bottom: 6px;
}

/* ============ 登录页 · 文字LOGO（系统设置可自定义） ============ */
.loginbox .title .logo .logo-text{
	font-size: 46px;
	font-weight: 700;
	letter-spacing: 2px;
	line-height: 1.15;
	color: #ffffff;
	background: linear-gradient(135deg, #ffffff 20%, #7fe7ff 55%, #c9a0ff 90%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-shadow: 0 0 24px rgba(0,229,255,0.30);
	white-space: nowrap;
	max-width: 100%;
	overflow: hidden;
	padding: 0 20px;
	-webkit-box-reflect: below 3px linear-gradient(transparent 58%, rgba(255,255,255,0.24));
}
.loginbox .title .logo .logo-sub{
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 3px;
	color: #aaddff;
	margin-top: 10px;
	text-shadow: 0 0 12px rgba(0,229,255,0.35);
	word-break: break-all;
	padding: 0 20px 6px;
	-webkit-box-reflect: below 4px linear-gradient(transparent 52%, rgba(170,221,255,0.42));
}

/* ============ 登录页 · V9 手机客户端「扫码下载」 ============ */
/* 位置：紧接 .form 之后，作为卡片底部的独立区块（.form 让出底部圆角）。
   二维码由服务端 ?user/qrcode 实时生成，内容 = APK 直链，其版本号来自
   config/appver.php 的 HUCD_APP_VER（出包即自动跟随，前端零维护）。
   ⚠️ 卡片总高度因此增加约 137px，故 .has-app-dl 需同步把居中的 margin-top 下移；
     过矮视口（<=620px）直接收起本区块并还原高度，避免卡片顶部被裁。 */

/* 垂直定位：卡片加本区块后总高约 708px（未加时为 547px，区块占 161px
   = QR 124 + 上下内边距 36 + 1px 分隔线）。下面两条 margin-top 是「渐进增强」：
     ① 回落值 -298px —— 实测正好复现改版前的视觉重心（卡片中心 ≈ 视口 52%，
        与未加区块时的 -218px 等效），老浏览器用这一条；
     ② 现代浏览器用 min()/max() 自动避让：
            0.46H + margin + 708 <= H - 8   =>  margin <= 54vh - 718px
            0.46H + margin >= 8             =>  margin >= 8px - 46vh
        即「视口够高就保持原重心，不够高就上移，且底部始终留 8px」。
   ⚠️ 若把 QR 或内边距改大/改小，必须同步改这两个常量（718 / -298）。*/
.loginbox.has-app-dl{ margin-top: -298px; }
/* ⚠️ 718 = 任务 J 时期 cardH(708) + bottomMargin(10)。任务 K 起卡片变矮：
   开 SSO(cardH 653)/未开 SSO 放大态(cardH 661)。按**最高态 661** 取 661+10=671 —— 取最大值
   只会让矮态卡片略微上移，绝不会裁底。改成 671 后小视口的垂直重心也更居中。 */
.loginbox.has-app-dl{ margin-top: max(calc(8px - 46vh), min(-298px, calc(54vh - 671px))); }
/* 底部圆角交给 .app-download，避免两层各自圆角造成错位 */
.loginbox.has-app-dl .form{ border-radius: 0 !important; }

.loginbox .app-download{
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 16px 22px 20px 22px;
	text-align: left;
	overflow: hidden;
	border-top: 1px solid rgba(0,229,255,0.16);
	background: linear-gradient(180deg, rgba(6,4,26,0.50), rgba(6,4,26,0.68));
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-radius: 0 0 18px 18px;
}
/* 顶部分隔霓虹线（与卡片上下两条霓虹线同族，形成第三道光带） */
.loginbox .app-download::before{
	content: "";
	position: absolute;
	left: 14%; right: 14%; top: -1px;
	height: 2px; border-radius: 2px;
	background: linear-gradient(90deg, transparent, rgba(0,229,255,0.90), rgba(255,0,200,0.60), transparent);
	background-size: 250% 100%;
	animation: hucd-cyber-line2 5s linear infinite;
	filter: drop-shadow(0 0 6px rgba(0,229,255,0.70));
	z-index: 2;
}
/* 二维码背后的青色柔光，让左上角有个视觉落点 */
.loginbox .app-download::after{
	content: "";
	position: absolute;
	left: -40px; top: -30px;
	width: 190px; height: 170px;
	background: radial-gradient(ellipse at center, rgba(0,229,255,0.20), transparent 70%);
	filter: blur(10px);
	pointer-events: none;
	z-index: 0;
}

/* ---- 二维码：白底高对比 + 霓虹描边与四角支架 ---- */
/* 尺寸说明：服务端 ?user/qrcode 的原生位图约 123×123（33 模块 × 3px + 静区），
   这里展示 110px（含 7px 白色静区）≈ 原生 0.9 倍，属**轻微缩小**，
   因此绝不能开 image-rendering:pixelated（最近邻缩小会破坏模块完整性），
   保持默认平滑缩放即可 —— 缩小比放大更锐利。 */
.loginbox .app-dl-qr{
	position: relative;
	flex: 0 0 auto;
	width: 124px; height: 124px;
	box-sizing: border-box;
	display: block;
	padding: 7px;                 /* 白色静区，保证识别率 */
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 0 0 1px rgba(0,229,255,0.50), 0 0 22px rgba(0,229,255,0.32), 0 6px 18px rgba(0,0,0,0.38);
	transition: box-shadow .25s, transform .25s;
	z-index: 1;
}
.loginbox .app-dl-qr:hover{
	transform: translateY(-2px);
	box-shadow: 0 0 0 1px rgba(0,229,255,0.95), 0 0 34px rgba(0,229,255,0.60), 0 10px 22px rgba(0,0,0,0.42);
}
.loginbox .app-dl-qr img{
	display: block;
	width: 100%; height: 100%;
	border-radius: 5px;
}
/* 扫光横线：在二维码上方缓慢向下扫过 */
.loginbox .app-dl-qr i.app-dl-scan{
	position: absolute;
	left: 8px; right: 8px; top: 8px;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, rgba(0,229,255,0), rgba(0,229,255,0.95), rgba(255,0,200,0.75), rgba(0,229,255,0));
	box-shadow: 0 0 10px rgba(0,229,255,0.90);
	pointer-events: none;
	animation: hucd-qr-scan 2.8s ease-in-out infinite;
}
@keyframes hucd-qr-scan{
	0%   { top: 8px;  opacity: 0; }
	12%  { opacity: 1; }
	88%  { opacity: 1; }
	100% { top: 114px; opacity: 0; }
}
/* 四角科技支架 */
.loginbox .app-dl-qr .app-dl-corners b{
	position: absolute;
	width: 12px; height: 12px;
	border: 2px solid #00e5ff;
	box-shadow: 0 0 8px rgba(0,229,255,0.80);
	pointer-events: none;
}
.loginbox .app-dl-qr .app-dl-corners b:nth-child(1){ left: -4px;   top: -4px;    border-right: 0; border-bottom: 0; border-radius: 8px 0 0 0; }
.loginbox .app-dl-qr .app-dl-corners b:nth-child(2){ right: -4px;  top: -4px;    border-left: 0;  border-bottom: 0; border-radius: 0 8px 0 0; }
.loginbox .app-dl-qr .app-dl-corners b:nth-child(3){ left: -4px;   bottom: -4px; border-right: 0; border-top: 0;    border-radius: 0 0 0 8px; }
.loginbox .app-dl-qr .app-dl-corners b:nth-child(4){ right: -4px;  bottom: -4px; border-left: 0;  border-top: 0;    border-radius: 0 0 8px 0; }

/* ---- 右侧文案 ---- */
.loginbox .app-dl-meta{ position: relative; z-index: 1; min-width: 0; }
.loginbox .app-dl-title{
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.2;
	background: linear-gradient(135deg, #ffffff 15%, #7fe7ff 55%, #c9a0ff 90%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-shadow: 0 0 18px rgba(0,229,255,0.28);
}
.loginbox .app-dl-sub{
	margin-top: 5px;
	font-size: 12px;
	line-height: 1.5;
	color: rgba(207,245,255,0.82);
	text-shadow: 0 0 8px rgba(0,229,255,0.22);
}
.loginbox .app-dl-tags{ margin-top: 9px; display: flex; flex-wrap: wrap; gap: 5px; }
.loginbox .app-dl-tag{
	font-size: 11px;
	line-height: 1;
	padding: 5px 8px;
	border-radius: 999px;
	white-space: nowrap;
	color: #bff2ff;
	background: rgba(0,229,255,0.09);
	border: 1px solid rgba(0,229,255,0.36);
	box-shadow: 0 0 10px rgba(0,229,255,0.15);
}
.loginbox .app-dl-link{
	display: inline-block;
	margin-top: 9px;
	font-size: 12px;
	color: #7fe7ff;
	border-bottom: 1px dashed rgba(127,231,255,0.55);
	padding-bottom: 1px;
	transition: color .2s, border-color .2s;
}
.loginbox .app-dl-link:hover{ color: #ffffff; border-bottom-color: #ffffff; }

/* ---- 小屏：略缩二维码，保持一行放下 ---- */
@media (max-width: 480px){
	.loginbox .app-download{ padding: 14px 16px 18px 16px; gap: 12px; }
	.loginbox .app-dl-qr{ width: 104px; height: 104px; padding: 6px; }
	.loginbox .app-dl-qr i.app-dl-scan{ left: 7px; right: 7px; animation-name: hucd-qr-scan-sm; }
	.loginbox .app-dl-title{ font-size: 15px; }
}
@keyframes hucd-qr-scan-sm{
	0%   { top: 7px;  opacity: 0; }
	12%  { opacity: 1; }
	88%  { opacity: 1; }
	100% { top: 95px; opacity: 0; }
}

/* ---- 过矮视口：卡片 708px 已放不下（临界约 724px 高，见上方 min/max 推导），
        收起区块并还原卡片高度与圆角。1366×640 的远程桌面、小笔记本会走到这里。 ---- */
@media (max-height: 723px){
	.loginbox.has-app-dl{ margin-top: -218px; }
	.loginbox.has-app-dl .app-download{ display: none; }
	.loginbox.has-app-dl .form{ border-radius: 0 0 18px 18px !important; }
}

/* ============ 登录页 · V10 双入口同排（用户登录 / 葫芦ID登录） ============ */
/* 结构：.actions > .login-btn-row > (#submit + a.btn-huluid)
   两个按钮**样式统一**（同高 46px / 同圆角 12px / 同字号 15px / 同字重 700 / 同流光扫过），
   **颜色区分**：
     · 用户登录  = 蓝紫→品红（沿用原 #submit 的霓虹渐变，未改动）
     · 葫芦ID登录 = 青→天蓝（沿用原描边按钮的青色身份色，由描边升级为实心渐变）
   为什么不用「等宽两列」：flex-basis:0 + flex-grow:1 会在**只有主按钮**（未开 SSO）
   时自动铺满整行，不需要写两套样式。
   ⚠️ 选择器特意写成 .loginbox .actions .login-btn-row #submit (1,3,0)，
      以压过 .loginbox div .actions #submit (1,2,1) 里的 width:100% / letter-spacing:4px。 */
.loginbox .actions .login-btn-row{
	clear: both;                 /* 让开上方 float:right 的「忘记密码」 */
	display: flex;
	align-items: stretch;
	gap: 10px;
}
.loginbox .actions .login-btn-row #submit{
	flex: 1 1 0;
	min-width: 0;
	width: auto;
	/* ⚠️ 必须显式声明 border-box：<input> 默认 content-box，而 .btn-huluid 是 border-box，
	   两者 flex-basis:0 时「内容盒」相等但「边框盒」会差出 2×内边距（实测差 20px），
	   看上去就是右按钮比左按钮宽一截。统一盒模型后两按钮视觉等宽。 */
	box-sizing: border-box;
	padding: 0 12px;             /* 与 .btn-huluid 保持一致的左右留白 */
	letter-spacing: 1px;         /* 原 4px 是为独占整行设计的，并排后过于松散 */
	white-space: nowrap;
}
.loginbox .actions .login-btn-row .btn-huluid{
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 46px;
	box-sizing: border-box;
	padding: 0 12px;             /* ⚠️ 必须与 #submit 的 0 12px 完全相同：flex-basis:0 时浏览器让两按钮
	                                「内容盒」等宽，边框盒 = 内容盒 + 左右内边距，内边距不等就会差出视觉宽度 */
	border-radius: 12px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 1px;
	white-space: nowrap;
	text-decoration: none;
	color: #041a2e;
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #3ee0ff 0%, #1e7bff 100%);
	background-size: 200% 200%;
	animation: hucd-cyber-btn 5s ease infinite;   /* 与主按钮同一条动画，保证节奏一致 */
	box-shadow: 0 0 26px rgba(0, 200, 255, 0.45), 0 0 44px rgba(30, 123, 255, 0.28);
	-webkit-transition: background .2s, box-shadow .2s, transform .2s;
	transition: background .2s, box-shadow .2s, transform .2s;
}
.loginbox .actions .login-btn-row .btn-huluid i{
	font-size: 15px;
	line-height: 1;
}
.loginbox .actions .login-btn-row .btn-huluid:hover{
	color: #041a2e;
	transform: translateY(-1px);
	animation-duration: 2.5s;
	box-shadow: 0 0 42px rgba(0, 200, 255, 0.72), 0 0 62px rgba(30, 123, 255, 0.45);
}
/* 与主按钮同款流光扫过（主按钮那条在 #submit::after 上，这里单独给次按钮补一条） */
.loginbox .actions .login-btn-row .btn-huluid::after{
	content: "";
	position: absolute;
	top: 0; left: -80%;
	width: 55%; height: 100%;
	background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.50), transparent);
	transform: skewX(-20deg);
	animation: hucd-btn-shine 3.2s ease-in-out infinite;
	pointer-events: none;
}
/* 窄屏：两个按钮并排时收字号与间距，避免文字换行 */
@media (max-width: 420px){
	.loginbox .actions .login-btn-row{ gap: 8px; }
	.loginbox .actions .login-btn-row #submit,
	.loginbox .actions .login-btn-row .btn-huluid{ font-size: 13px; letter-spacing: 0; }
	.loginbox .actions .login-btn-row .btn-huluid{ gap: 4px; }
	.loginbox .actions .login-btn-row .btn-huluid i{ font-size: 13px; }
}

/* ============ 登录页 · V11 未开启 SSO：主按钮「放大居中」 ============
   开启 SSO  ⇒ .login-btn-row.sso-on ：两按钮同排等宽等高 46px（V10，仅配色区分）
   未开 SSO  ⇒ .login-btn-row.sso-off：只剩「用户登录」一个按钮，
               把它**放大并居中**成整页唯一的大号主 CTA —— 而不是维持双按钮时的 46px。
   放大维度：高 46→54px、字号 15→17px、字距 1→3px、圆角 12→14px、外发光略加强；
   宽度仍为整行（flex:1 1 0 自然铺满），文字由 input[type=submit] 默认居中 ⇒ 视觉居中。
   ⚠️ 特异性 (1,4,0) > V3 的 .loginbox div .actions #submit (1,2,1)，故能覆盖 height/line-height。
   ⚠️ 卡片因此比双按钮态高 8px(54-46)，.has-app-dl 的居中公式常量已同步按最高态 661px 调（见上）。 */
.loginbox .actions .login-btn-row.sso-off #submit{
	height: 54px;
	line-height: 52px;
	font-size: 17px;
	letter-spacing: 3px;
	border-radius: 14px;
	box-shadow: 0 0 30px rgba(0, 229, 255, 0.55), 0 0 52px rgba(255, 0, 200, 0.34);
}
@media (max-width: 420px){
	/* 窄屏同理收一档，但仍是「放大态」，不与双按钮的 13px 同大 */
	.loginbox .actions .login-btn-row.sso-off #submit{
		height: 50px;
		line-height: 48px;
		font-size: 16px;
		letter-spacing: 1px;
		border-radius: 13px;
	}
}
