/**
 * Projektbrücke für Fluent Forms.
 *
 * Bewusst nicht Teil von core.min.css: Diese Regeln werden nur gemeinsam mit
 * einem tatsächlich sichtbaren Fluent Form geladen. Alle Farben bleiben
 * semantische Theme-Tokens und damit Teil derselben Kontrastquelle.
 */

/* Das Plugin setzt auf dunklen Flächen ein fixes Dunkelgrau (2,8:1). */
body form.frm-fluent-form .ff-el-form-control {
	background-color: var(--surface-base);
	color: var(--text-primary);
	border-color: var(--border-strong);
}
body form.frm-fluent-form .ff-el-form-control::placeholder {
	color: var(--text-muted);
	opacity: 1;
}

/* Plugin-Weiss auf Plugin-Blau lag bei 3,87:1; die Projektrollen sind geprüft. */
body form.frm-fluent-form button.ff-btn-submit:not(.ff_btn_no_style),
body form.frm-fluent-form input.ff-btn-submit:not(.ff_btn_no_style) {
	background-color: var(--fill-brand);
	color: var(--text-on-fill);
	border-color: transparent;
}
body form.frm-fluent-form button.ff-btn-submit:not(.ff_btn_no_style):hover,
body form.frm-fluent-form input.ff-btn-submit:not(.ff_btn_no_style):hover {
	background-color: var(--button-hover-fill);
	color: var(--text-on-fill);
}
body form.frm-fluent-form button.ff-btn-submit:not(.ff_btn_no_style):disabled,
body form.frm-fluent-form input.ff-btn-submit:not(.ff_btn_no_style):disabled {
	opacity: var(--button-disabled-opacity);
}

/* Turnstiles normale und flexible Widgets sind mindestens 300px breit. Wenn
   das globale Seitenpadding darunter führt, wächst nur das Formular mittig
   bis zur Widget-Mindestbreite; darüber bleibt sein normales Blockmaß aktiv. */
body form.frm-fluent-form {
	--nebi-turnstile-min-inline: min(300px, 100vw);
	min-inline-size: var(--nebi-turnstile-min-inline);
	margin-inline: min(0px, calc((100% - var(--nebi-turnstile-min-inline)) / 2));
}
