/* Gestaltung 2026 – Anmeldeformular des Rundbrief-Briefkastens auf /Verteiler und /WegZurEinheitKurs.
   Das Formular-HTML kommt aus briefkasten/lib/briefkasten.php (bk_formular_html); dessen eigene stil.css wird hier nicht geladen. */

#rb-briefkasten { margin: 1.5rem 0 2.5rem; padding: 1.75rem clamp(1rem, 4vw, 2rem); background: var(--karte); border: 1px solid var(--linie); border-radius: 10px; font-family: var(--schrift-ui); font-size: 1.05rem; line-height: 1.5; color: var(--tinte); }
#rb-briefkasten *, #rb-briefkasten *::before, #rb-briefkasten *::after { box-sizing: border-box; }
#rb-briefkasten p { margin: 0 0 .6rem; }

/* Auswahl der Listen */
#rb-briefkasten .rb-listen { border: 0; padding: 0; margin: 0 0 1.5rem; min-width: 0; }
#rb-briefkasten .rb-listen legend { font-family: var(--schrift-text); font-size: 1.2rem; font-weight: 600; padding: 0; margin: 0 0 .75rem; }
#rb-briefkasten .rb-listen legend em { font-family: var(--schrift-ui); font-style: normal; font-weight: 400; font-size: .85rem; color: var(--leise); }
#rb-briefkasten .rb-liste { display: flex; gap: .8rem; align-items: flex-start; padding: .8rem 1rem; margin: 0 0 .5rem; border: 1px solid var(--linie); border-radius: 8px; cursor: pointer; }
#rb-briefkasten .rb-liste:hover { background: var(--flaeche); }
#rb-briefkasten .rb-liste:has(input:checked) { border-color: var(--link); background: color-mix(in srgb, var(--gold) 9%, transparent); }
#rb-briefkasten .rb-liste strong { display: block; font-weight: 600; }
#rb-briefkasten .rb-liste small { display: block; color: var(--leise); font-size: .92rem; }
#rb-briefkasten input[type="checkbox"], #rb-briefkasten input[type="radio"] { flex: none; width: 1.15rem; height: 1.15rem; margin: .2rem 0 0; accent-color: var(--link); }
#rb-briefkasten .rb-rhythmus { margin: -.2rem 0 .8rem 2.95rem; font-size: .95rem; }
#rb-briefkasten .rb-rhythmus[hidden] { display: none; }
#rb-briefkasten .rb-rhythmus > span { display: block; color: var(--leise); margin-bottom: .2rem; }
#rb-briefkasten .rb-rhythmus label { display: inline-flex; align-items: center; gap: .4rem; margin: 0 1.1rem .2rem 0; cursor: pointer; }
#rb-briefkasten .rb-rhythmus input { margin: 0; }

/* Eingabefelder */
#rb-briefkasten .rb-feld { display: block; margin: 0 0 .9rem; }
#rb-briefkasten .rb-feld > span { display: block; font-size: .95rem; margin-bottom: .25rem; }
#rb-briefkasten .rb-feld em { font-style: normal; color: var(--leise); font-size: .88em; }
#rb-briefkasten .rb-feld input, #rb-briefkasten .rb-feld select {
	display: block; width: 100%; font: inherit; padding: .6rem .75rem; color: var(--tinte);
	background: var(--grund); border: 1px solid var(--linie); border-radius: 6px;
}
#rb-briefkasten .rb-feld select { width: auto; min-width: 8rem; }
#rb-briefkasten .rb-feld input:focus-visible, #rb-briefkasten .rb-feld select:focus-visible { outline: 2px solid var(--fokus); outline-offset: 1px; }
#rb-briefkasten .rb-zeile { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1rem; }

/* Einwilligung, Absenden */
#rb-briefkasten .rb-einwilligung { display: flex; gap: .8rem; align-items: flex-start; margin: 1.2rem 0 1.4rem; font-size: .9rem; line-height: 1.45; color: var(--leise); cursor: pointer; }
#rb-briefkasten .rb-knopf {
	display: inline-flex; align-items: center; justify-content: center; min-width: 12rem; font: inherit; font-weight: 600;
	padding: .7rem 1.6rem; color: var(--grund); background: var(--link); border: 1px solid var(--link); border-radius: 999px; cursor: pointer;
}
#rb-briefkasten .rb-knopf:hover { background: var(--link-hover); border-color: var(--link-hover); }
#rb-briefkasten .rb-knopf:disabled { opacity: .7; cursor: default; }
#rb-briefkasten .rb-klein { margin-top: 1rem; font-size: .88rem; color: var(--leise); }

/* Meldungen (bei Fehlern zeigt der Briefkasten das Formular mit Hinweisen) */
#rb-briefkasten .rb-fehler, #rb-briefkasten .rb-hinweis { border-radius: 8px; padding: .7rem 1rem; margin: 0 0 1.2rem; }
#rb-briefkasten .rb-fehler { background: color-mix(in srgb, #C0392B 10%, transparent); border: 1px solid color-mix(in srgb, #C0392B 35%, transparent); }
#rb-briefkasten .rb-hinweis { background: var(--flaeche); border: 1px solid var(--linie); }
#rb-briefkasten .rb-fehler ul { margin: 0; padding-left: 1.2rem; }

/* Spam-Falle: für Menschen unsichtbar */
#rb-briefkasten .rb-unsichtbar { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

@media (max-width: 520px) {
	#rb-briefkasten .rb-zeile { grid-template-columns: 1fr; }
	#rb-briefkasten .rb-rhythmus { margin-left: 0; }
	#rb-briefkasten .rb-knopf { width: 100%; }
}
