diff --git a/CLAUDE.md b/CLAUDE.md
index ba41d8c..81aa1bf 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -1051,6 +1051,44 @@ wie die Formular-Abschnitte angehoben (600/1rem statt 500/0.9375rem) —
für eine einheitliche Überschriften-Hierarchie statt Zufallsgrößen je
nach UA-Stylesheet.
+**Endgültige Korrektur — `fieldset`/`legend` durch echte Überschriften
+ersetzt (2026-09-01):** die obige "Nachbesserung" war ein Pflaster auf
+dem eigentlichen Problem, nicht die Ursache behoben — sie kam prompt
+wieder zum Vorschein, sobald eine neue `.form-section`-Seite entstand
+(Betreiber-Firmenanlage), und der Nutzer wies zu Recht darauf hin, dass
+das "immer wieder derselbe Fehler" sei. Der eigentliche Grund:
+`` positioniert sich **laut Spezifikation immer** auf der
+oberen Rahmenlinie seines `
` — das ist seine definierte
+Funktion (die Box zu betiteln) und lässt sich durch kein Padding/keine
+Breite aufheben, nur kaschieren. `.form-section` ist deshalb jetzt ein
+`` (kein `
` mehr), die Überschrift ein normales `` — verhält sich wie jede andere Überschrift,
+volle CSS-Kontrolle, keine Sonderregeln. Betrifft alle neun Vorlagen,
+die das Muster nutzen (`register.html`, `betreiber_account_neu.html`,
+`firmendaten.html`, `login.html`, `loeschfristen_liste.html`,
+`genehmiger_rollen_liste.html`, `freigabe_regeln_liste.html`,
+`email_vorlage_bearbeiten.html`, `betreiber_werkzeug_form.html`).
+`antrag_neu.html` (der Fragebogen) bleibt bewusst unverändert — dessen
+`fieldset`/`legend` sind einfache, nicht-kartierte Elemente ohne
+Rahmen-Konflikt, an eine bereits getestete `:has()`-Adaptivlogik
+(Folgefragen ein-/ausblenden) gekoppelt; ein Umbau hätte unnötiges
+Risiko für rein kosmetischen Gewinn bedeutet, da dort gar kein
+sichtbarer Rahmen existiert, mit dem die Legend kollidieren könnte.
+
+**Restliche unstyled Formulare auf dasselbe Muster gehoben
+(2026-09-01):** `passwort_vergessen.html`, `passwort_zuruecksetzen.html`,
+`einladung.html`, `nutzer_neu.html` (Rollenauswahl jetzt `.chip-group`
+statt nacktem `fieldset`), `nutzer_import.html`, `abteilung_liste.html`
+(Anlegen-Formular), `betreiber_account_detail.html` (Umbenennen-
+Formular), sowie der komplette "Entscheiden"-Bereich in
+`fall_detail.html` (Entscheidung jetzt `.chip-group` statt nacktem
+`fieldset`) — alle jetzt `.form-card`/`.form-section`/`.form-grid`
+statt roher ``+` `-Ketten. Explizit **nicht** angefasst:
+`antrag_neu.html` (siehe oben), sowie reine Listen-Aktionsformulare
+(Filter, Löschen-/Aktivieren-Buttons in `.beitraege-liste`-Zeilen) —
+die haben ihr eigenes, bereits passendes CSS-Muster und keinen
+Formular-Charakter im hier gemeinten Sinn.
+
**enconf-Patterns übertragen (2026-08-31):** enconf (Schwesterprojekt)
ist React + Ant Design (`ProTable`/`StatCard`/`PageHeader`-Komponenten)
— nicht 1:1 übernehmbar, da Deklarix bewusst kein SPA ist, aber die
diff --git a/internal/web/static/app.css b/internal/web/static/app.css
index 24e94d9..26722ae 100644
--- a/internal/web/static/app.css
+++ b/internal/web/static/app.css
@@ -582,6 +582,16 @@ button.entfernen {
margin-bottom: 0;
}
+/* form-section ist bewusst ein , kein
—
+ positioniert sich per Spezifikation IMMER auf der oberen Rahmenlinie
+ des (das ist seine ganze Funktion: die Box zu betiteln),
+ das lässt sich nicht per CSS aufheben, nur mit fragilen Hacks
+ kaschieren (padding/Breite anpassen ändert nichts an der
+ Border-Überlappung selbst — genau das führte zu einer bereits einmal
+ "reparierten" Überschrift, die nach der nächsten neuen Seite wieder
+ zu klein/zu randnah aussah). Eine echte Übersicht (.form-section-title)
+ verhält sich wie jede normale Überschrift: volle CSS-Kontrolle, keine
+ browserseitigen Sonderregeln. */
.form-section {
border: none;
margin: 0;
@@ -593,16 +603,11 @@ button.entfernen {
border-top: 1px solid var(--color-border);
}
-/* ignoriert das padding des umschließenden (es
- positioniert sich an dessen Border-Box, nicht an der Padding-Box) —
- ohne eigenes padding-left säße die Abschnittsüberschrift bündig am
- Kartenrand, während der restliche Inhalt eingerückt ist. */
-.form-section > legend {
- padding: 0 0 16px 0;
+.form-section-title {
+ margin: 0 0 16px 0;
font-size: 1.0625rem;
font-weight: 700;
color: var(--color-heading);
- width: 100%;
}
.form-grid {
diff --git a/internal/web/templates/abteilung_liste.html b/internal/web/templates/abteilung_liste.html
index 3424b11..7e07ed7 100644
--- a/internal/web/templates/abteilung_liste.html
+++ b/internal/web/templates/abteilung_liste.html
@@ -25,12 +25,22 @@
{{end}}
{{end}}
+
+