/* Rückrufformular (sv-kern). Farben aus dem Theme, mit Ersatzwerten. Ziele: 48 px Tippfläche, sichtbarer Fokus, WCAG 2.1 AA. */
.sv-rr { display: grid; gap: 1.1rem; max-width: 36rem; scroll-margin-top: 6rem; }
.sv-rr-feld { display: grid; gap: 0.35rem; }
.sv-rr label { font-weight: 700; color: var(--wp--preset--color--graphit, #172027); }
.sv-rr-pflicht, .sv-rr-frei { font-weight: 400; color: var(--wp--preset--color--text-ruhig, #4B5862); }
.sv-rr input[type="tel"], .sv-rr input[type="text"], .sv-rr select, .sv-rr textarea {
	width: 100%;
	min-height: 48px;
	padding: 0.65rem 0.8rem;
	font: inherit;
	font-size: max(1rem, 16px); /* verhindert Auto-Zoom auf dem iPhone */
	color: var(--wp--preset--color--graphit, #172027);
	background: #FFFFFF;
	border: 2px solid var(--wp--preset--color--text-ruhig, #4B5862); /* 7,3 : 1 zu Weiß */
	border-radius: 6px;
	box-sizing: border-box;
}
.sv-rr textarea { min-height: 7.5rem; resize: vertical; }
.sv-rr input:focus-visible, .sv-rr select:focus-visible, .sv-rr textarea:focus-visible {
	outline: 3px solid var(--wp--preset--color--graphit, #172027);
	outline-offset: 2px;
	border-color: var(--wp--preset--color--graphit, #172027);
}
.sv-rr [aria-invalid="true"] { border-color: #B00020; }
.sv-rr-zeile { display: grid; gap: 1.1rem; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); }

.sv-rr-hilfe { margin: 0; font-size: 0.9375rem; color: var(--wp--preset--color--text-ruhig, #4B5862); }
.sv-rr-feldfehler { margin: 0; font-weight: 700; color: #B00020; }
.sv-rr-feldfehler::before { content: "Fehler: "; }

.sv-rr-meldung, .sv-rr-danke {
	padding: 1rem 1.1rem;
	border-left: 4px solid #B00020;
	background: #FDE7EA;
	color: #5C000C;
	border-radius: 0 6px 6px 0;
}
.sv-rr-meldung p, .sv-rr-meldung ul { margin: 0 0 0.4rem; }
.sv-rr-meldung a { color: #5C000C; font-weight: 700; }
.sv-rr-danke { display: block; border-left-color: #1E7A3C; background: #E8F5EC; color: #10391E; }
.sv-rr-danke p { margin: 0; }
.sv-rr-danke p + p { margin-top: 0.4rem; }
.sv-rr-danke a { color: #10391E; font-weight: 700; }
.sv-rr-danke__titel { font-weight: 700; margin: 0 0 0.35rem; }
.sv-rr-meldung:focus, .sv-rr-danke:focus { outline: 3px solid var(--wp--preset--color--graphit, #172027); outline-offset: 2px; }

.sv-rr button.wp-block-button__link { cursor: pointer; border: 2px solid transparent; }

/* Falle für Bots: aus dem sichtbaren Bereich geschoben (nicht display:none, das erkennen viele Bots). */
.sv-rr-falle { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

/* Dunkle Abschnitte: Formular steht immer auf hellem Grund. */
.sv-dunkel .sv-rr label, .sv-dunkel .sv-rr legend { color: inherit; }

/* Handy: Absendeknopf über die volle Breite wie die übrigen Hauptknöpfe. */
@media (max-width: 600px) {
	.sv-rr .wp-block-button, .sv-rr button.wp-block-button__link { width: 100%; }
}
