/* Mailbox Herroepingsfunctie - frontend formulier. Bewust neutraal en themeable. */
/* Alles gescoped onder .mb-herr en gebouwd op CSS-variabelen zodat het per site */
/* (of via Elementor / eigen CSS) overschrijfbaar is. Wordt enkel geladen als de */
/* styling-toggle aan staat. De honeypot-hide zit inline in de template (moet ook */
/* zonder deze stylesheet werken). */

.mb-herr {
	--mb-herr-accent: #2c3e50;
	--mb-herr-btn-bg: #2c3e50;
	--mb-herr-btn-text: #ffffff;
	--mb-herr-radius: 6px;
	--mb-herr-gap: 1rem;
	--mb-herr-border: #cccccc;
	--mb-herr-max-width: 640px;
	max-width: var(--mb-herr-max-width);
}

.mb-herr .mb-herr-field {
	margin-bottom: var(--mb-herr-gap);
}

.mb-herr label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.35rem;
}

.mb-herr input[type="text"],
.mb-herr input[type="email"],
.mb-herr textarea {
	width: 100%;
	padding: 0.6rem 0.75rem;
	border: 1px solid var(--mb-herr-border);
	border-radius: var(--mb-herr-radius);
	font: inherit;
	box-sizing: border-box;
}

.mb-herr input:focus,
.mb-herr textarea:focus {
	outline: 2px solid var(--mb-herr-accent);
	outline-offset: 1px;
	border-color: var(--mb-herr-accent);
}

.mb-herr fieldset {
	border: 1px solid var(--mb-herr-border);
	border-radius: var(--mb-herr-radius);
	padding: 0.75rem 1rem;
	margin: 0 0 var(--mb-herr-gap);
}

.mb-herr legend {
	font-weight: 600;
	padding: 0 0.4rem;
}

.mb-herr fieldset label {
	display: inline-block;
	font-weight: 400;
	margin-right: 1.25rem;
}

.mb-herr button {
	background: var(--mb-herr-btn-bg);
	color: var(--mb-herr-btn-text);
	border: none;
	border-radius: var(--mb-herr-radius);
	padding: 0.7rem 1.4rem;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}

.mb-herr button:hover {
	filter: brightness(0.93);
}

.mb-herr .mb-herr-errors {
	background: #fdecea;
	border: 1px solid #f5c6cb;
	border-radius: var(--mb-herr-radius);
	padding: 0.6rem 1rem;
	margin-bottom: var(--mb-herr-gap);
}

.mb-herr .mb-herr-errors ul {
	margin: 0;
	padding-left: 1.2rem;
}

.mb-herr .mb-herr-summary {
	list-style: none;
	padding: 0;
	margin: 0 0 var(--mb-herr-gap);
}

.mb-herr .mb-herr-summary li {
	padding: 0.35rem 0;
	border-bottom: 1px solid var(--mb-herr-border);
}

.mb-herr .mb-herr-actions {
	display: flex;
	gap: 1rem;
	align-items: center;
	flex-wrap: wrap;
}

.mb-herr .mb-herr-back {
	color: var(--mb-herr-accent);
}
