/**
 * Contact form fields/button, driven by CSS custom properties set
 * per-instance via inline style on .dfi-contact-form
 * (see dfi2026_contact_form_instance_style_attr() in inc/contact-form.php).
 */

.dfi-contact-form__message {
	padding: 0.85rem 1rem;
	border-radius: 4px;
	margin: 0 0 1rem;
}

.dfi-contact-form__message--success {
	background: rgba(46, 125, 50, 0.1);
	color: #2e7d32;
}

.dfi-contact-form__message--error {
	background: rgba(198, 40, 40, 0.1);
	color: #c62828;
}

.dfi-contact-form__recaptcha-error {
	margin: 0.5rem 0 0;
	color: #c62828;
	font-size: 0.85rem;
}

.dfi-contact-form__form {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--dfi-cf-field-gap, 1rem);
	max-width: 100%;
}

.dfi-contact-form__field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.dfi-contact-form__field label {
	color: var(--dfi-cf-label-color, #111111);
	font-size: var(--dfi-cf-label-size, 0.9rem);
}

.dfi-contact-form__required {
	color: #c62828;
}

.dfi-contact-form__field input,
.dfi-contact-form__field textarea,
.dfi-contact-form__field select {
	font: inherit;
	color: var(--dfi-cf-field-text, #111111);
	background: var(--dfi-cf-field-bg, #ffffff);
	border: var(--dfi-cf-field-edge-thickness, 1px) solid var(--dfi-cf-field-edge-color, rgba(0, 0, 0, 0.2));
	border-radius: var(--dfi-cf-field-radius, 4px);
	padding: 0.6rem 0.75rem;
	width: 100%;
	box-sizing: border-box;
}

.dfi-contact-form__field--checkbox {
	flex-direction: row;
}

.dfi-contact-form__checkbox-label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--dfi-cf-label-color, #111111);
	font-size: var(--dfi-cf-label-size, 0.9rem);
}

.dfi-contact-form__checkbox-label input {
	width: auto;
}

.dfi-contact-form__hp {
	position: absolute;
	left: -9999px;
	top: -9999px;
}

.dfi-contact-form__submit {
	align-self: flex-start;
	font: inherit;
	color: var(--dfi-cf-button-text, #ffffff);
	background: var(--dfi-cf-button-bg, #111111);
	border: 0;
	border-radius: var(--dfi-cf-field-radius, 4px);
	padding: 0.75rem 1.75rem;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.dfi-contact-form__submit:hover,
.dfi-contact-form__submit:focus {
	background: var(--dfi-cf-button-hover-bg, #333333);
}
