/**
 * PublicHealth auth: static-style presentation over Ultimate Member forms.
 *
 * UM owns all auth logic; this stylesheet only presents UM markup to match
 * the static login.html / register.html design (primary #1a6b6b, rounded-lg
 * inputs/buttons, Inter/Jakarta). The template already provides the outer
 * card, so UM's inner wrapper is flattened to transparent. Every override
 * is prefixed with `body` so it beats UM's own selectors. Loaded on
 * login/register/password pages only. No markup or behavior is changed.
 */

body .um-login,
body .um-register,
body .um-password {
	max-width: none;
	margin: 0;
	padding: 0;
}

body .um {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	margin: 0;
	max-width: none;
	box-shadow: none;
	font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
	color: #374151;
}

body .um .um-form {
	margin: 0;
}

/* Fields stack like the static form's space-y rhythm. */
body .um .um-field {
	margin: 0 0 1.25rem;
	padding: 0;
}

body .um .um-row {
	margin: 0;
}

body .um .um-field-label label,
body .um div.um-field-label label,
body .um label {
	font-size: 0.875rem;
	font-weight: 500;
	color: #374151;
	margin: 0 0 0.375rem;
	display: block;
}

body .um input[type="text"],
body .um input[type="email"],
body .um input[type="password"],
body .um input[type="tel"],
body .um input[type="number"],
body .um select,
body .um textarea {
	width: 100%;
	max-width: 100%;
	background-color: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 0.5rem;
	padding: 0.625rem 1rem;
	font-size: 0.875rem;
	font-family: inherit;
	color: #1f2937;
	box-sizing: border-box;
	box-shadow: none;
	margin: 0;
}

body .um input:focus,
body .um select:focus,
body .um textarea:focus {
	outline: none;
	border-color: #228585;
	box-shadow: 0 0 0 2px rgba(34, 133, 133, 0.25);
}

/* Primary submit — matches the static Sign In / Create Account button. */
body .um .um-button,
body .um input[type="submit"].um-button,
body .um input[type="submit"],
body .um a.um-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 100%;
	background: #1a6b6b;
	color: #fff;
	border: none;
	border-radius: 0.5rem;
	padding: 0.75rem 1rem;
	font-weight: 600;
	font-size: 0.875rem;
	font-family: 'Inter', sans-serif;
	cursor: pointer;
	text-align: center;
	text-transform: none;
	letter-spacing: 0;
	box-shadow: none;
	margin: 0;
}

body .um .um-button:hover,
body .um input[type="submit"].um-button:hover,
body .um input[type="submit"]:hover,
body .um a.um-button:hover {
	background: #115252;
	color: #fff;
}

/* Secondary action (e.g. Register button on the login form) as outline. */
body .um .um-button.um-alt,
body .um a.um-button.um-alt {
	background: #fff;
	color: #115252;
	border: 1px solid #a0dede;
}

body .um .um-button.um-alt:hover,
body .um a.um-button.um-alt:hover {
	background: #eef8f8;
	color: #115252;
}

body .um .um-field-checkbox {
	font-size: 0.875rem;
	color: #4b5563;
}

body .um a {
	color: #1a6b6b;
	font-weight: 500;
}

body .um a:hover {
	color: #115252;
}

body .um .um-col-alt-b {
	margin-top: 1rem;
	text-align: center;
}

body .um .um-notice {
	border-radius: 0.5rem;
	font-size: 0.875rem;
}

body .um .um-notice.err {
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: #b91c1c;
}

body .um .um-notice.success {
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	color: #15803d;
}

body .um .um-field-error {
	font-size: 0.75rem;
}

body .um .um-request-name,
body .um p.um_request_name {
	display: none;
}

@media (max-width: 480px) {
	body .um .um-half {
		width: 100%;
		float: none;
		margin-bottom: 0.75rem;
	}
}
