/* =========================================================
   Vita-Leben GmbH — Plugin-Module (Kontaktformular, Anamnese,
   Pflegegradrechner, Doctolib) an das Theme angleichen.
   Der Pflegegradrechner nutzt bereits --primary/--surface/--radius
   aus base.css und braucht keine Zusatzregeln.
   ========================================================= */

/* ---- Doctolib-Termin-Button ---- */
.wpx-doctolib-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.85rem 1.6rem;
	border-radius: var(--radius);
	font-weight: 700;
	font-size: 0.95rem;
	min-height: 44px;
	background: var(--accent);
	color: #fff !important;
	box-shadow: var(--shadow-sm);
	transition: transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);
}

.wpx-doctolib-btn:hover {
	background: var(--primary);
	box-shadow: var(--shadow-md);
}

.wpx-doctolib-btn:active {
	transform: scale(0.98);
}

/* ---- Kontaktformular / Anamnese-Formular (wpscp-form) ----
   Das Plugin gibt sein eigenes <style> direkt vor dem Formular aus (Quellreihenfolge
   nach unserem Stylesheet) — nur hoehere Spezifitaet (Compound-Selektoren statt
   einzelner .wpscp-form-Klasse) gewinnt zuverlaessig gegen diesen Inline-Block. */
.wpscp-form.wpscp-contact-form,
.wpscp-form.wpscp-an-form {
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	max-width: none;
	margin: 0;
	background: none;
	padding: 0;
	box-shadow: none;
	border-radius: 0;
}

.wpscp-form .wpscp-form__title {
	display: none;
}

.wpscp-form.wpscp-contact-form .wpscp-form__row,
.wpscp-form.wpscp-an-form .wpscp-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.1rem;
}

.wpscp-form.wpscp-contact-form label,
.wpscp-form.wpscp-an-form label {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	font-weight: 600;
	font-size: 0.92rem;
	color: var(--text);
}

.wpscp-form.wpscp-contact-form input[type="text"],
.wpscp-form.wpscp-contact-form input[type="email"],
.wpscp-form.wpscp-contact-form input[type="tel"],
.wpscp-form.wpscp-contact-form textarea,
.wpscp-form.wpscp-an-form input[type="text"],
.wpscp-form.wpscp-an-form input[type="email"],
.wpscp-form.wpscp-an-form input[type="tel"],
.wpscp-form.wpscp-an-form textarea {
	font: inherit;
	font-weight: 400;
	padding: 0.8rem 0.9rem;
	border: 1.5px solid var(--border);
	border-radius: var(--radius);
	background: var(--bg);
	color: var(--text);
	transition: border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);
	min-height: 44px;
}

.wpscp-form.wpscp-contact-form textarea,
.wpscp-form.wpscp-an-form textarea {
	min-height: 140px;
	resize: vertical;
}

.wpscp-form.wpscp-contact-form input:focus,
.wpscp-form.wpscp-contact-form textarea:focus,
.wpscp-form.wpscp-an-form input:focus,
.wpscp-form.wpscp-an-form textarea:focus {
	border-color: var(--accent);
	background: var(--surface);
	outline: none;
}

.wpscp-form.wpscp-contact-form .wpscp-form__btn,
.wpscp-form.wpscp-an-form .wpscp-form__btn {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.85rem 1.7rem;
	border-radius: var(--radius);
	font-weight: 700;
	min-height: 44px;
	background: var(--primary);
	color: #fff;
	border: 0;
	box-shadow: var(--shadow-sm);
	transition: transform var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);
}

.wpscp-form.wpscp-contact-form .wpscp-form__btn:hover,
.wpscp-form.wpscp-an-form .wpscp-form__btn:hover {
	background: var(--primary-dark);
	box-shadow: var(--shadow-md);
	filter: none;
}

.wpscp-form.wpscp-contact-form .wpscp-form__btn:active,
.wpscp-form.wpscp-an-form .wpscp-form__btn:active {
	transform: scale(0.98);
}

.wpscp-form-success,
.wpscp-form-error {
	max-width: none;
	margin: 0 0 1rem;
	padding: 1rem 1.2rem;
	border-radius: var(--radius);
	font-weight: 600;
}

.wpscp-form-success {
	background: oklch(0.65 0.1 45 / 0.14);
	color: var(--primary-dark);
	border: 0;
}

.wpscp-form-error {
	background: oklch(0.6 0.15 30 / 0.14);
	color: oklch(0.4 0.17 30);
	border: 0;
}

.wpscp-an-hint {
	font-size: 0.9rem;
	color: var(--text-muted);
	margin-top: -0.4rem;
}

.wpscp-form.wpscp-an-form .wpscp-an-consent {
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 0.6rem !important;
}

.wpscp-an-consent input[type="checkbox"] {
	margin-top: 0.3rem;
	flex-shrink: 0;
	width: 18px;
	height: 18px;
}

/* ---- Pflegegradrechner: nur Abstand zum umgebenden Layout ---- */
.wpscp-pgr {
	margin-top: 2.2rem;
}

/* ---- Rechtstexte (Impressum/Datenschutz Shortcodes) ---- */
.prose .wpx-impressum,
.prose .wpx-datenschutz {
	font-size: 0.98rem;
	line-height: 1.7;
}

.prose .wpx-impressum h2,
.prose .wpx-datenschutz h2 {
	font-size: 1.35rem;
	margin-top: 1.8em;
}
