/* Custom Login Page Styles */

body.login {
	background: #D83C72;
	background: linear-gradient(206deg, rgba(216, 60, 114, 1) 0%, rgba(36, 31, 94, 1) 66%);
}

body.login * {
	box-sizing: border-box;
}

.login h1 a {
	background-image: url('../../compiled/images/elcapcolour.svg');
	background-size: contain;
	width: 200px;
	height: 80px;
	background-position: center;
	background-repeat: no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	padding-bottom: 0;
	margin-bottom: 20px;
}

#login {
	width: 100%;
	max-width: 440px;
	margin: 0 !important;
	height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 20px !important;
	border-right: 4px solid #241f5e;
	background-color: #f1f1f1;
}

.login form {
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 8px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	padding: 30px;
	margin-top: 20px;
}

.login form .input,
.login input[type="text"],
.login input[type="password"] {
	font-size: 16px;
	padding: 12px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: #fff;
	transition: border-color 0.3s ease;
}

.login form .input:focus,
.login input[type="text"]:focus,
.login input[type="password"]:focus {
	border-color: #241f5e;
	outline: none;
	box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.1);
}

.login label {
	font-weight: 600;
	color: #333;
	margin-bottom: 8px;
	display: block;
}

.login .button-primary {
	width: 100%;
	background: #241f5e;
	border: none;
	border-radius: 4px;
	padding: 12px;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: background 0.3s ease;
	margin-top: 20px;
}

.login .button-primary:hover {
	background: #D83C72;
}

.login .button-primary:focus {
	background: #D83C72;
	box-shadow: 0 0 0 2px rgba(0, 115, 170, 0.3);
}

.login .forgetmenot {
	margin-bottom: 20px;
}

.login .forgetmenot label {
	font-weight: normal;
	display: inline;
	margin-left: 8px;
}

.login #nav,
.login #backtoblog {
	text-align: center;
	margin-top: 20px;
}

.login #nav a,
.login #backtoblog a {
	color: #241f5e;
	text-decoration: none;
	transition: color 0.3s ease;
}

.login #nav a:hover,
.login #backtoblog a:hover {
	color: #D83C72;
	text-decoration: underline;
}

.login .message,
.login .success,
.login #login_error {
	border-left: 4px solid #241f5e;
	padding: 15px;
	margin-bottom: 20px;
	background-color: #fff;
	border-radius: 4px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.login .success {
	border-left-color: #46b450;
}

.login #login_error {
	border-left-color: #dc3232;
}

/* Responsive adjustments */
@media (max-width: 501px) {
	#login {
		padding: 20px;
		margin: 0 auto !important;
		border-right: none !important;
	}

	body.login {
		background: #f1f1f1 !important;
	}
	
	.login form {
		padding: 20px;
	}
	
	.login h1 a {
		width: 150px;
		height: 60px;
	}
}

