/**
 * WordPress Login Page — GeoStru branded styling.
 *
 * @package GeoStruNXAccess
 */

/* Page background */
body.login {
	background: #e8ecee !important;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif !important;
}

/* Replace WordPress logo with GeoStru logo */
.login h1 a {
	background-image: url('/wp-content/uploads/geostru-logo-480x111.webp') !important;
	background-size: contain !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	width: 280px !important;
	height: 80px !important;
	margin: 0 auto 30px !important;
}

/* Login form card */
.login form {
	background: rgba(30, 138, 138, 0.04) !important;
	border: 1px solid rgba(30, 138, 138, 0.1) !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	padding: 28px 28px 20px !important;
}

/* Labels */
.login form .input,
.login form input[type="text"],
.login form input[type="password"] {
	background: #fff !important;
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	font-size: 15px !important;
	color: #1a202c !important;
	box-shadow: none !important;
	height: auto !important;
	line-height: 1.4 !important;
}

.login form .input:focus,
.login form input[type="text"]:focus,
.login form input[type="password"]:focus {
	border-color: #1e8a8a !important;
	box-shadow: 0 0 0 3px rgba(30, 138, 138, 0.12) !important;
	outline: none !important;
}

/* Autofill override */
.login form input:-webkit-autofill,
.login form input:-webkit-autofill:hover,
.login form input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 30px #fff inset !important;
	-webkit-text-fill-color: #1a202c !important;
}

.login label {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #374151 !important;
}

/* Log In button */
.login .button-primary,
.login #wp-submit {
	background: #1e8a8a !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 10px 28px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #fff !important;
	text-shadow: none !important;
	box-shadow: none !important;
	height: auto !important;
	line-height: 1.4 !important;
	transition: background 0.15s !important;
}

.login .button-primary:hover,
.login #wp-submit:hover {
	background: #176e6e !important;
}

.login .button-primary:focus,
.login #wp-submit:focus {
	background: #176e6e !important;
	box-shadow: 0 0 0 3px rgba(30, 138, 138, 0.2) !important;
}

/* Remember me */
.login .forgetmenot label {
	font-size: 14px !important;
	color: #6b7280 !important;
}

/* Links below form */
.login #nav,
.login #backtoblog {
	padding: 0 4px !important;
}

.login #nav a,
.login #backtoblog a {
	color: #1e8a8a !important;
	text-decoration: none !important;
	font-size: 14px !important;
}

.login #nav a:hover,
.login #backtoblog a:hover {
	color: #176e6e !important;
	text-decoration: underline !important;
}

/* Password visibility toggle */
.login .wp-pwd .button.wp-hide-pw {
	color: #9ca3af !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	background: transparent !important;
}

.login .wp-pwd .button.wp-hide-pw:hover {
	color: #1e8a8a !important;
}

.login .wp-pwd .button.wp-hide-pw:focus {
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
	color: #1e8a8a !important;
}

/* Language switcher */
.language-switcher {
	padding-top: 12px !important;
}

.language-switcher select {
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	border-radius: 8px !important;
	padding: 8px 12px !important;
	font-size: 14px !important;
	background: #fff !important;
}

.language-switcher .button {
	background: rgba(30, 138, 138, 0.08) !important;
	border: 1px solid rgba(30, 138, 138, 0.15) !important;
	border-radius: 8px !important;
	color: #1e8a8a !important;
	font-size: 14px !important;
	padding: 8px 16px !important;
	box-shadow: none !important;
	text-shadow: none !important;
}

.language-switcher .button:hover {
	background: rgba(30, 138, 138, 0.12) !important;
}

/* Error / Message notices */
.login .message,
.login .success {
	border-left-color: #1e8a8a !important;
	border-radius: 8px !important;
	background: rgba(30, 138, 138, 0.04) !important;
}

.login #login_error {
	border-left-color: #ef4444 !important;
	border-radius: 8px !important;
}

/* Privacy policy link */
.login .privacy-policy-page-link a {
	color: #9ca3af !important;
	font-size: 13px !important;
}
