:root {
	--primary-color: #4460f1;
	--white-color: #ffffff;

	--light-text-color: #9398b3;
	--light-bg-color: #f2f4ff;
	--dark-color: #333333;

	--background-color: #fcfcff;
}

* {
	margin: 0;
	padding: 0;
}

#logindiv {
	display: none;
	height: 1000px;
	background: white;
	z-index: 99;
	top: 0px;
	position: absolute;
	width: 100%;
	padding-top: 3rem;
}

#loginpage *,
::before::after {
	box-sizing: border-box;
}


#loginpage {
	font-family: 'Noto Sans SC', sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
}

#loginpage a {
	text-decoration: none;
	color: inherit;
	-webkit-tap-highlight-color: transparent;
}

#loginpage ul {
	list-style: none;
}

#loginpage h1 {
	font-size: 3em;
	font-weight: 700;
	line-height: normal;
	color: black;
}

#loginpage {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
}

#loginpage .container {
	max-width: 1000px;
	width: 100%;
	padding: 0 80px;
	margin: 0 auto;
}

#loginpage .login {
	display: flex;
	flex-wrap: wrap;
}

#loginpage .hero {
	flex: 1 0 66.6666%;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 70px 0 50px 0;
}

#loginpage .hero::before {
	content: '';
	position: absolute;
	top: 15%;
	left: 0;
	width: 280px;
	height: 100px;
	background: linear-gradient(to right, var(--primary-color), #c471ed, #f64f59);
	z-index: -1;
	filter: blur(70px);
}

#loginpage .hero a {
	font-weight: 500;
	color: var(--primary-color);
	transition: color .3s;
}

#loginpage .hero a:hover,
#loginpage form .password a:hover {
	color: var(--dark-color);
	text-decoration: underline;
}

#loginpage .main {
	flex: 1 0 33.3333%;
}

#loginpage .main form {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

#loginpage .main form p {
	position: relative;
}

#loginpage form input {
	font: inherit;
	font-size: 14px;
	width: 100%;
	border: 0;
	outline: 0;
	padding: 0 20px;
	line-height: 60px;
	border-radius: 10px;
	/*修复input 加入padding之后大小变化的问题*/
	box-sizing: border-box;
}

#loginpage input::placeholder {
	color: var(--dark-color);
	font-family: 'Noto Sans SC', sans-serif;
	font-size: inherit;
}

#loginpage form input:not(.submit) {
	background-color: var(--light-bg-color);
}

#loginpage form .password i {
	position: absolute;
	top: calc(60px / 2);
	right: 20px;
	margin-top: -8px;
	line-height: 1;
	color: var(--light-text-color);
	cursor: pointer;
}

#loginpage form .password a {
	font-size: 13px;
	color: var(--light-text-color);
	float: right;
	margin: 5px 20px 0 0;
}

#loginpage form input.submit {
	font-weight: 700;
	color: var(--white-color);
	background-color: var(--primary-color);
	box-shadow: var(--primary-color) 0 20px 30px -10px;
	cursor: pointer;
	transition: box-shadow .3s;
}

#loginpage form input.submit:hover {
	box-shadow: var(--primary-color) 0 10px 30px -10px;
}

#loginpage .separator {
	position: relative;
	margin: 40px 0 30px;
}

#loginpage .separator::before {
	content: '';
	position: absolute;
	top: 50%;
	width: 100%;
	height: 1px;
	background-color: var(--light-text-color);
	opacity: .3;
	z-index: 1;
}

#loginpage .separator p {
	font-size: 14px;
	width: fit-content;
	padding: 0 10px;
	color: var(--light-text-color);
	background-color: var(--background-color);
	margin: 0 auto;
	position: relative;
	z-index: 1;
}

#loginpage .options ul {
	display: flex;
	justify-content: center;
	gap: 20px;
}

#loginpage .options ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	border-radius: 100px;
	background-color: var(--white-color);
	box-shadow: var(--light-text-color) 0 10px 20px -10px;
	transition: all .3s ease-out;
}

#loginpage .options ul li a:hover {
	color: var(--white-color);
	box-shadow: none;
}

/*用STEAM PSN XBOX替换原先APPLE GOOGLE FACEBOOK图标*/
#loginpage .options ul li:nth-child(1) a:hover {
	background-color: #171a21;
}

#loginpage .options ul li:nth-child(2) a:hover {
	background-color: #00439c;
}

#loginpage .options ul li:nth-child(3) a:hover {
	background-color: #107c10;
}