html,
body.login {
	min-height: 100%;
}

body.login {
	box-sizing: border-box;
	min-height: 100vh;
	margin: 0;
	padding: 36px 20px 28px;
	background: #dcebef url("../images/login-background.webp") center center / cover fixed no-repeat;
	color: #313847;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.login #login {
	box-sizing: border-box;
	width: min(100%, 470px);
	padding: 0;
}

body.login h1 {
	margin: 0 0 26px;
}

body.login h1 a {
	width: 270px;
	height: 132px;
	margin: 0 auto;
	background-image: url("../images/logo.png");
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}

body.login #loginform,
body.login #lostpasswordform,
body.login #registerform,
body.login #resetpassform,
body.login #login_error,
body.login .message,
body.login .success {
	box-sizing: border-box;
	margin: 0;
	padding: 30px 29px;
	border: 1px solid rgba(133, 151, 156, .34);
	border-radius: 22px;
	background: rgba(255, 255, 255, .78);
	box-shadow: 0 12px 36px rgba(47, 73, 78, .08);
}

body.login #loginform::before {
	content: "Sign in to Your LIS";
	display: block;
	margin: 0 0 31px;
	color: #34384b;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
}

body.login #login_error,
body.login .message,
body.login .success {
	margin-bottom: 16px;
	padding: 13px 16px;
	border-left: 4px solid #c94a20;
	border-radius: 10px;
}

body.login form .input,
body.login input[type="text"],
body.login input[type="password"] {
	box-sizing: border-box;
	min-height: 42px;
	margin: 0 0 17px;
	padding: 9px 14px;
	border: 1px solid #d2d5d7;
	border-radius: 13px;
	background: #fff;
	box-shadow: none;
	color: #30343b;
	font-size: 14px;
}

body.login #user_login {
	padding-left: 43px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2399a2ad' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 13px center;
}

body.login #user_pass {
	padding-left: 43px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2399a2ad' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: 13px center;
}

body.login form .input:focus {
	border-color: #c94a20;
	box-shadow: 0 0 0 2px rgba(201, 74, 32, .13);
}

body.login form label {
	color: #50545a;
	font-size: 12px;
	font-weight: 500;
}

body.login .user-pass-wrap {
	margin-bottom: 5px;
}

body.login .wp-pwd .button {
	min-height: 42px;
}

body.login .button.wp-hide-pw {
	color: #737b80;
}

body.login .forgetmenot {
	float: none;
	margin: 0 0 15px;
}

body.login .submit {
	margin-top: 20px;
}

body.login .button-primary {
	float: none;
	width: 100%;
	min-height: 49px;
	padding: 0 18px;
	border: 0;
	border-radius: 13px;
	background: #ca481f;
	box-shadow: none;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	text-shadow: none;
}

body.login .button-primary:hover,
body.login .button-primary:focus {
	background: #ad3b18;
	color: #fff;
}

body.login #nav,
body.login #backtoblog {
	margin: 15px 0 0;
	padding: 0;
	text-align: center;
}

body.login #nav a,
body.login #backtoblog a {
	color: #4d5559;
	text-decoration: none;
}

body.login #backtoblog {
	display: none;
}

body.login .ci-abx-login-meta {
	margin-top: 10px;
	text-align: center;
}

body.login .ci-abx-login-ip {
	margin-bottom: 20px;
	color: #cc4a20;
	font-size: 12px;
	font-weight: 600;
}

body.login .ci-abx-login-copyright {
	color: #374047;
	font-size: 13px;
}

body.login .ci-abx-login-copyright a {
	color: inherit;
	text-decoration: none;
}

body.login #login a:focus {
	box-shadow: 0 0 0 2px rgba(201, 74, 32, .25);
}

@media (max-width: 520px) {
	body.login {
		padding: 22px 14px;
		background-position: 62% center;
	}

	body.login h1 a {
		width: 230px;
		height: 112px;
	}

	body.login #loginform,
	body.login #lostpasswordform,
	body.login #registerform,
	body.login #resetpassform {
		padding: 25px 20px;
	}
}
