/**
 * NordFusion - RCP Login Form Styles
 *
 * Styles the RCP [login_form] shortcode output on the
 * dedicated frontend login page.
 */

/* -- Login page wrapper -------------------------------- */
.nf-login-page {
	max-width: 440px;
	margin: 3rem auto;
	padding: 2.5rem 2rem;
	background: var(--theme-palette-color-8, #FFFFFF);
	border: 1px solid var(--theme-palette-color-5, #C9D9EA);
	border-radius: 1rem;
	box-shadow: 0 4px 16px rgba(16, 37, 76, 0.06);
}

/* -- Login messages ------------------------------------ */
.nf-login-message {
	padding: 0.75rem 1rem;
	border-radius: 0.5rem;
	margin-bottom: 1.5rem;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--wp--preset--font-family--fw-sans, 'DM Sans', sans-serif);
}

.nf-login-message--success {
	background: rgba(45, 138, 110, 0.1);
	border: 1px solid rgba(45, 138, 110, 0.25);
	color: #1a5c42;
}

.nf-login-message--error {
	background: rgba(220, 53, 69, 0.08);
	border: 1px solid rgba(220, 53, 69, 0.2);
	color: #b02a37;
}

/* -- Form labels --------------------------------------- */
#rcp_login_form label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--theme-palette-color-3, #10254C);
	margin-bottom: 0.375rem;
	font-family: var(--wp--preset--font-family--fw-sans, 'DM Sans', sans-serif);
}

/* -- Form inputs --------------------------------------- */
#rcp_login_form input[type="text"],
#rcp_login_form input[type="password"],
#rcp_login_form input[type="email"] {
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1px solid var(--theme-palette-color-5, #C9D9EA);
	border-radius: 0.5rem;
	font-size: 1rem;
	color: var(--theme-palette-color-3, #10254C);
	background: var(--theme-palette-color-8, #FFFFFF);
	margin-bottom: 1rem;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	font-family: var(--wp--preset--font-family--fw-sans, 'DM Sans', sans-serif);
	box-sizing: border-box;
}

#rcp_login_form input[type="text"]:focus,
#rcp_login_form input[type="password"]:focus,
#rcp_login_form input[type="email"]:focus {
	border-color: var(--theme-palette-color-1, #0858D0);
	outline: none;
	box-shadow: 0 0 0 3px rgba(8, 88, 208, 0.15);
}

/* -- Submit button ------------------------------------- */
#rcp_login_form input[type="submit"],
#rcp_login_form #rcp_login_submit {
	width: 100%;
	padding: 0.75rem 1.5rem;
	background: var(--theme-palette-color-1, #0858D0);
	color: #FFFFFF;
	border: none;
	border-radius: 0.5rem;
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s ease, box-shadow 0.2s ease;
	font-family: var(--wp--preset--font-family--fw-sans, 'DM Sans', sans-serif);
	margin-top: 0.5rem;
}

#rcp_login_form input[type="submit"]:hover,
#rcp_login_form #rcp_login_submit:hover {
	background: var(--theme-palette-color-2, #4796FD);
	box-shadow: 0 4px 12px rgba(8, 88, 208, 0.3);
}

/* -- Remember me --------------------------------------- */
#rcp_login_form p:has(input[type="checkbox"]) {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 1rem;
}

#rcp_login_form p:has(input[type="checkbox"]) label {
	font-weight: 400;
	font-size: 0.875rem;
	color: var(--theme-palette-color-4, #64748B);
	margin-bottom: 0;
}

#rcp_login_form input[type="checkbox"] {
	accent-color: var(--theme-palette-color-1, #0858D0);
}

/* -- Lost password link -------------------------------- */
.rcp_lost_password,
#rcp_login_form .rcp_lost_password {
	margin-top: 1rem;
	text-align: center;
}

.rcp_lost_password a,
#rcp_login_form a {
	font-size: 0.8125rem;
	color: var(--theme-palette-color-4, #64748B);
	text-decoration: underline;
	text-underline-offset: 2px;
	font-family: var(--wp--preset--font-family--fw-sans, 'DM Sans', sans-serif);
}

.rcp_lost_password a:hover,
#rcp_login_form a:hover {
	color: var(--theme-palette-color-1, #0858D0);
}

/* -- Responsive ---------------------------------------- */
@media (max-width: 480px) {
	.nf-login-page {
		margin: 1.5rem 1rem;
		padding: 2rem 1.25rem;
	}
}
