@charset "UTF-8";
/* ============================================================
   登录 / 注册页整饰 v1  (login.tpl · register.tpl · 忘记密码)
   仅样式覆盖，不动任何表单逻辑 / 验证 / JS 钩子
   ============================================================ */

/* 1) 卡片：圆角 + 分层投影 + 顶部渐变条 + 入场 */
.login-main .login-main-container .login-main-form {
	position: relative !important;
	border-radius: 18px !important;
	border: 1px solid rgba(228, 236, 248, .95) !important;
	box-shadow: 0 26px 60px -30px rgba(22, 38, 74, .35), 0 2px 10px rgba(22, 38, 74, .05) !important;
	animation: lbRise .5s cubic-bezier(.22, .61, .36, 1) both;
}
.login-main .login-main-container .login-main-form::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 4px;
	z-index: 2;
	pointer-events: none;
	border-radius: 18px 18px 0 0;
	background: linear-gradient(90deg, #3f7bff 0, #1b5cff 55%, #4fc3ff 100%);
}
@keyframes lbRise {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: none; }
}

/* 2) 标签页（保留 .transitionSwitching 滑动下划线，不动它的位置体系） */
.login-main .login-tab { border-bottom-color: #eef1f7 !important; }
.login-main .login-tab .login-tab-item {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #9aa6bf !important;
	transition: color .2s ease, transform .2s ease !important;
}
.login-main .login-tab .login-tab-item.active { color: var(--primary, #1b5cff) !important; }
.login-main .login-tab .login-tab-item:hover { color: #5b7bd9 !important; transform: translateY(-1px); }
.login-main .text-register { font-size: 13px; }
.login-main .text-register .text-primary { font-weight: 700 !important; }

/* 3) 表单控件 */
.login-main .login-content .form-group { margin-bottom: 16px; }
.login-main .login-content .form-group label {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #4b5a78 !important;
	margin-bottom: 7px;
}
.login-main .login-content .form-control {
	min-height: 46px !important;
	border-radius: 12px !important;
	border: 1px solid #e3eaf6 !important;
	background: #f7f9fd !important;
	color: #16264a !important;
	font-size: 14px !important;
	padding: 10px 14px !important;
	box-shadow: none !important;
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease !important;
}
.login-main .login-content .form-control::placeholder { color: #a8b3c7 !important; }
.login-main .login-content .form-control:focus {
	background: #fff !important;
	border-color: #8fb0ff !important;
	box-shadow: 0 0 0 4px rgba(27, 92, 255, .12) !important;
}
.login-main .login-content .input-group .form-control {
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}
.login-main .login-content .input-group-append .form-control,
.login-main .login-content .input-group-append .btn {
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
	border-top-right-radius: 12px !important;
	border-bottom-right-radius: 12px !important;
}

/* 4) 主按钮 */
.login-main .login-content .btn-primary {
	border: 0 !important;
	border-radius: 12px !important;
	font-weight: 700 !important;
	letter-spacing: .3px;
	color: #fff !important;
	background: linear-gradient(135deg, #3f7bff 0, #1b5cff 100%) !important;
	box-shadow: 0 16px 28px -16px rgba(27, 92, 255, .95) !important;
	transition: transform .18s ease, box-shadow .22s ease, filter .2s ease !important;
}
.login-main .login-content .btn-primary.btn-block { min-height: 46px !important; }
.login-main .login-content .btn-primary:hover { transform: translateY(-1px); filter: brightness(1.05); }
.login-main .login-content .btn-primary:active { transform: translateY(0) scale(.996); }

/* 输入框内的「获取验证码」按钮：浅色胶囊，别喧宾夺主 */
.login-main .login-content .input-group-append .btn-primary {
	background: #eef3ff !important;
	color: #1b5cff !important;
	border: 1px solid #dfe8ff !important;
	box-shadow: none !important;
	font-weight: 600 !important;
	transform: none !important;
	filter: none !important;
}

/* 5) 第三方登录 */
.login-main .login-content .Oauth_login {
	margin-top: 18px !important;
	padding-top: 16px;
	border-top: 1px dashed #eef1f7;
}
.login-main .login-content .Oauth_login .list-inline-item { margin: 0 7px !important; }
.login-main .login-content .Oauth_login .list-inline .social-list-item {
	width: 38px !important;
	height: 38px !important;
	border-radius: 50% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 4px 12px -6px rgba(22, 38, 74, .5) !important;
	transition: transform .2s ease, box-shadow .2s ease !important;
}
.login-main .login-content .Oauth_login .list-inline .social-list-item:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 20px -10px rgba(27, 92, 255, .9) !important;
}
.login-main .login-content .Oauth_login .list-inline .social-list-item .icon {
	width: 100% !important;
	height: 100% !important;
}

/* 6) 信息条：时间 / 天气 / 一言 / 祝福 */
.login-extra {
	margin-top: 20px !important;
	padding-top: 16px !important;
	border-top: 1px dashed #eef1f7 !important;
}
.login-extra .lx-time { font-variant-numeric: tabular-nums; }
.login-extra .lx-label { opacity: .85; }

/* 7) 顶部 / 底部 */
.login-head .login-title a { font-size: 13px; color: #5b6b8c !important; transition: color .2s ease; }
.login-head .login-title a:hover { color: #1b5cff !important; }
.login-footer .footer-content a { color: #8b98b3 !important; transition: color .2s ease; }
.login-footer .footer-content a:hover { color: #1b5cff !important; }

/* 8) 移动端 */
@media (max-width: 768px) {
	.login-main .login-main-container .login-main-form { border-radius: 0 !important; }
	.login-main .login-content .form-control { min-height: 44px !important; }
}

/* 9) 尊重系统「减少动态效果」 */
@media (prefers-reduced-motion: reduce) {
	.login-main .login-main-container .login-main-form { animation: none !important; }
	.login-main .login-content .btn-primary,
	.login-main .login-content .Oauth_login .list-inline .social-list-item,
	.login-main .login-tab .login-tab-item { transition: none !important; }
}
