/* Shared LFC public form presentation owned by LFC Core.
   Kept theme-independent so plugin-rendered forms remain consistent during staged theme releases. */

.lfcForm {
	display: grid;
	gap: 18px;
	width: 100%;
	max-width: 100%;
}

.lfcForm label {
	display: grid;
	gap: 8px;
	margin: 0;
	color: var(--ink, #132238);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}

.lfcForm label > small {
	display: block;
	margin-top: -2px;
	color: var(--muted, #607086);
	font-size: 12px;
	font-weight: 450;
	line-height: 1.55;
}

.lfcForm input,
.lfcForm select,
.lfcForm textarea {
	width: 100%;
	min-width: 0;
	margin: 0;
	border: 1px solid #b9cad8;
	border-radius: 0;
	background: #fff;
	padding: 13px 14px;
	color: var(--ink, #132238);
	font: inherit;
	line-height: 1.45;
	box-shadow: none;
	transition: border-color .16s ease, box-shadow .16s ease;
}

.lfcForm input,
.lfcForm select {
	min-height: 50px;
}

.lfcForm textarea {
	min-height: 145px;
	resize: vertical;
}

.lfcForm input:focus,
.lfcForm select:focus,
.lfcForm textarea:focus {
	outline: 0;
	border-color: var(--blue, #1769aa);
	box-shadow: 0 0 0 3px rgba(23, 105, 170, .14);
}

.lfcForm input:disabled,
.lfcForm select:disabled,
.lfcForm textarea:disabled {
	background: #f2f6fa;
	color: #607086;
	cursor: not-allowed;
}

.lfcForm .button,
.lfcForm button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	min-height: 52px;
	margin: 4px 0 0;
	border: 0;
	border-radius: 0;
	background: var(--red, #e21f2f);
	padding: 0 25px;
	color: #fff !important;
	font: inherit;
	font-weight: 750;
	line-height: 1;
	cursor: pointer;
	transition: transform .18s ease, background .18s ease;
}

.lfcForm .button:hover,
.lfcForm button[type="submit"]:hover {
	transform: translateY(-2px);
	background: #c91928;
}

.lfcForm .button:focus-visible,
.lfcForm button[type="submit"]:focus-visible {
	outline: 3px solid rgba(23, 105, 170, .28);
	outline-offset: 3px;
}

.lfcFormStatus {
	padding: 14px 16px;
	margin: 0 0 20px;
	background: #e3eff7;
	color: var(--navy, #071b38);
}

.lfcFormStatus.error {
	background: #fee8e8;
	color: #8a1220;
}

.lfcForm .honeypot {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.lfcSafetyForm {
	max-width: 820px;
}

@media (max-width: 767px) {
	.lfcForm {
		gap: 16px;
	}

	.lfcForm .button,
	.lfcForm button[type="submit"] {
		width: 100%;
	}
}
