/**
 loginai.css，E40 AI版登录界面
**/
*{-webkit-font-smoothing: antialiased;}
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	word-break: break-all;
	word-wrap: break-word;
}

html{margin:0;padding:0;overflow: hidden;overflow-y:auto;display: block;;}

body {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, #e8f0ff 0%, #f3eaff 100%);
	position: relative;
	overflow: hidden;
}

@keyframes gridMove {
	0% { background-position: 0 0; }
	100% { background-position: 40px 40px; }
}
@keyframes ballmovetl {
	0%,100% { transform: translateY(0) scale(1); }
	50% { transform: translateY(40px) scale(1.08); }
}
@keyframes ballmovebr {
	0%,100% { transform: translateY(0) scale(1); }
	50% { transform: translateY(-30px) scale(0.92); }
}

.login-back {
	position: absolute;
	width: 100%;
	height: 100%;
	background-image: 
	linear-gradient(rgba(100, 130, 255, 0.08) 1px, transparent 1px),
	linear-gradient(90deg, rgba(100, 130, 255, 0.08) 1px, transparent 1px);
	background-size: 44px 44px;
	/* animation: gridMove 20s linear infinite; */
	z-index: 1;
}

.login-glow-ball {
	position: absolute;
	border-radius: 50%;
	filter: blur(60px);
	opacity: 0.5;
	z-index: 1;
}
.ball1 {
	width: 320px;
	height: 320px;
	background: #6366f1;
	top: -100px;
	left: -80px;
	animation: ballmovetl 10s ease-in-out infinite;
}
.ball2 {
	width: 260px;
	height: 260px;
	background: #8b5cf6;
	bottom: -60px;
	right: -40px;
	animation: ballmovebr 10s ease-in-out infinite;
}

.login-panel {
	width: 100%;
	max-width: 520px;
	background: rgba(255, 255, 255, 0.88);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-radius: 18px;
	border: 1px solid rgba(139, 92, 246, 0.15);
	box-shadow: 0 8px 32px rgba(99, 102, 241, 0.3);
	padding: 42px 36px;
	position: relative;
	z-index: 10;
	display: flex;
	gap:50px;
	justify-content:center;
	margin:0 auto;
	overflow: hidden;
}
.login-panel.login-rich{
	max-width: 1280px;
	justify-content: space-between;
}

.login-main{max-width: 448px;flex-shrink: 0;flex-grow: 0;min-width: 440px;}
.login-text{flex: 1;overflow: hidden;word-break: break-all;word-wrap: break-word;overflow: hidden;min-width: 0}
.login-text *{word-break: break-all;word-wrap: break-word;}

/* 系统标题 */
.login-title {
	text-align: center;
	margin-bottom: 36px;
}
.login-title h1,.login-title h2 {
	font-size: 28px;
	background: linear-gradient(90deg, #4f46e5, #8b5cf6);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	letter-spacing: 1px;
	margin-bottom: 6px;
	line-height: 1.2;
	word-break: break-all;word-wrap: break-word;
}
h2{
	font-size: 28px;
	background: linear-gradient(90deg, #4f46e5, #8b5cf6);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	letter-spacing: 1px;
	margin-bottom: 6px;
	line-height: 1.2;
	word-break: break-all;word-wrap: break-word;
}
.login-title p {
	color: #64748b;
	font-size: 14px;
}

/* 登录切换标签栏 */
.login-tab {
	display: flex;
	border-bottom: 1px solid #e2e8f0;
	margin-bottom: 28px;
}
.tab-item {
	flex: 1;
	text-align: center;
	padding: 10px 0;
	font-size: 15px;
	color: #64748b;
	cursor: pointer;
	position: relative;
	transition: 0.25s all ease;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: no-wrap;
}
.tab-item.active {
	color: #6366f1;
	font-weight: 500;
}
.tab-item.active::after {
	content: "";
	position: absolute;
	bottom: -1px;
	left: 20%;
	width: 60%;
	height: 2px;
	background: linear-gradient(90deg, #6366f1, #8b5cf6);
	border-radius: 2px;
}

/* 表单通用样式 */
.login-form {
	display: none;
}
.login-form.show {
	display: block;
}
.input-group {
	margin-bottom: 20px;
}
.input-group label {
	display: block;
	font-size: 14px;
	color: #334155;
	margin-bottom: 8px;
}
.input-box {
	width: 100%;
	height: 46px;
	padding: 0 16px;
	border: 1px solid #cbd5e1;
	border-radius: 10px;
	font-size: 15px;
	transition: 0.24s all;
	background: #fff;
}
.input-box:focus {
	outline: none;
	border-color: #8b5cf6;
	box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.15);
}
.code-row {
	display: flex;
	gap: 12px;
}
.code-row .input-box {
	flex: 1;
}
.get-code-btn {
	display: inline-block;
	text-align: center;
	line-height: 46px;
	width: 120px;
	height: 46px;
	border-radius: 10px;
	border: none;
	background: linear-gradient(90deg, #6366f1, #8b5cf6);
	color: #fff;
	font-size: 14px;
	cursor: pointer;
	transition: opacity 0.2s;
	
}
.get-code-btn:hover {
	opacity: 0.9;
}

/* 登录主按钮 */
.submit-btn {
	display: inline-block;
	text-align: center;
	line-height: 46px;
	width: 100%;
	height: 48px;
	border-radius: 10px;
	border: none;
	background: linear-gradient(90deg, #4f46e5, #7c3aed);
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	cursor: pointer;
	margin-top: 8px;
	transition: all 0.25s ease;
	box-shadow: 0 4px 14px rgba(99, 102, 241, 0.22);
}
.submit-btn:hover {
	opacity: 0.93;
	transform: translateY(-2px);
	box-shadow: 0 6px 18px rgba(99, 102, 241, 0.28);
}

.divider {
	display: flex;
	align-items: center;
	margin: 30px 0 22px;
	color: #94a3b8;
	font-size: 13px;
}
.divider::before, .divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: #e2e8f0;
}
.divider span {
	padding: 0 12px;
}

/* 微信登录入口 */
.other-login {
	text-align: center;
}
.wechat-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6366f1;
	text-decoration: none;
	font-size: 15px;
	transition: opacity 0.2s;
}
.wechat-link:hover {
	opacity: 0.75;
}
.other-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #6366f1;
	text-decoration: none;
	font-size: 15px;
	transition: opacity 0.2s;
}
.other-link:hover {
	opacity: 0.75;
}
.wechat-icon {
	width: 22px;
	height: 22px;
	display: inline-block;
	background: #6366f1;
	border-radius: 50%;
	position: relative;
}
.wechat-icon::after {
	content: "";
	position: absolute;
	top: 6px;
	left: 4px;
	width: 4px;
	height: 4px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 8px 0 0 #fff;
}
/* 企业微信图标 */
.qywechat-icon {
  width: 22px;
  height: 22px;
  display: inline-block;
  background: #6366f1;
  border-radius: 50%;
  position: relative;
}
/* 第一个人头 */
.qywechat-icon::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 5px;
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
}
/* 第二个人头偏移右下 */
.qywechat-icon::after {
  content: "";
  position: absolute;
  left: 9px;
  top: 9px;
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
}
/* 首页图标 */
.home-icon {
  width: 22px;
  height: 22px;
  display: inline-block;
  background: #6366f1;
  border-radius: 50%;
  position: relative;
}
.home-icon::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 6px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 4px solid #fff;
}
.home-icon::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 10px;
  width: 10px;
  height: 6px;
  background: #fff;
}

/* 底部版权 */
.copyright {
	text-align: center;
	margin-top: 40px;
	font-size: 12px;
	color: #94a3b8;
}
@media (max-width: 1280px) {
	.login-panel.login-rich{
		margin: 0 16px;
	}
}
@media (max-width: 960px) {
	.login-panel{
		flex-wrap: wrap;
	}
	.login-panel.login-rich{
		max-width: auto;
		margin: 0 16px;
		justify-content: center;
	}
	.login-main{min-width: 100%;max-width: 100%;}
	.login-text{
		order: 1;
	}
	.login-panel>div{width: 100%;flex-basis: 100%;}
}
/* 响应式适配移动端 */
@media (max-width: 640px) {
	.login-panel {
		margin: 0 16px;
		padding: 32px 24px;
		overflow: hidden;
	}
	
	.login-title h1 {
		font-size: 24px;
	}
	.login-title h2 {
		font-size: 24px;
	}
	.code-row {
		flex-direction: column;
	}
	.code-row .input-box{flex:auto;}
	.get-code-btn {
		width: 100%;
	}
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid #cbd5e1;
	border-radius: 10px;
	font-size: 15px;
	transition: 0.24s all;
	background: #fff;
  -webkit-text-fill-color: #8b5cf6;  
  -webkit-box-shadow: 0 0 0px 1000px transparent inset;
  box-shadow: 0 0 0px 1000px transparent inset;
  transition: background-color 5000s ease-in-out 0s;
  /* 1. 自定义填充背景色：修改这里的#f0f7ff即可 */
      -webkit-box-shadow: 0 0 0 1000px #f0f7ff inset !important;
      box-shadow: 0 0 0 1000px #f0f7ff inset !important;
      /* 2. 自定义文字颜色 */
      -webkit-text-fill-color: #1f2937 !important;
      color: #1f2937 !important;
      /* 清除浏览器自带背景图 */
      background-image: none !important;
      /* 光标颜色 */
      caret-color: #1f2937;
}
 input:-webkit-autofill:focus {
      -webkit-box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.15) !important;
      outline: none;
	border-color: #8b5cf6;
	box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.15);
}