/* Modulare Regel – Ergebnisblock.
   Technische Anwendungen: Seiten „Informationen“, „Update-Information“, „Profil löschen“,
   „Berater freischalten“, „Analyse Zustimmung“, „Schritt für Schritt Anleitung“,
   „Geschichte deiner Tiere“, „Anmelden“ und „Besatzübersicht“.
   Breiten bleiben seitenbezogen. Überschriftenabstände haben Vorrang. */

.ergebnisblock-modular {
    box-sizing: border-box;
    border: 1px solid #D8E6EF;
    border-radius: 18px;
    box-shadow: none;
}

.ergebnisblock-aussen-modular {
    background: #FFFCE7;
}

.ergebnisblock-innen-1-modular {
    background: #FFFFFF;
}

.ergebnisblock-innen-2-modular {
    background: #E4E4E4;
}

/* Ergebnisblock-Abstände haben Vorrang. Links/rechts gelten bei Außen- und
   Innenblock jeweils 14 px; zusammen mit dem 1-px-Rand sind es 15 px bis
   zum Inhalt. Außenblock unten = 20 px, Innenblock unten = 14 px. */
body.seite-informationen main.container > .information-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
}

body.seite-informationen main.container .info-section.ergebnisblock-innen-1-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 14px !important;
}

/* Ohne vorangestellte H1/H2/H3 beginnt ein Außenblock 20 px und ein
   Innenblock 14 px unter dem Rahmen. Beginnt ein Block mit H1/H2/H3,
   setzt die modulare Überschriftenregel stattdessen 18/16/14 px und hat
   ausdrücklich Vorrang. */
body.seite-informationen main.container > .information-page.ergebnisblock-aussen-modular:not(:has(> h1:first-child)):not(:has(> h2:first-child)):not(:has(> h3:first-child)) {
    padding-top: 20px !important;
}

body.seite-informationen main.container .info-section.ergebnisblock-innen-1-modular:not(:has(> h1:first-child)):not(:has(> h2:first-child)):not(:has(> h3:first-child)) {
    padding-top: 14px !important;
}

/* Das letzte Element addiert keinen eigenen unteren Außenabstand zum
   Ergebnisblock-Innenabstand. */
body.seite-informationen main.container .ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Direkt aufeinanderfolgende äußere Ergebnisblöcke: 20 px Gesamt-Abstand,
   nicht 20 + 20 px. Der letzte Block erhält keinen zusätzlichen Außenabstand;
   dadurch bleibt die bestehende Footer-Abstandsregel unverändert maßgeblich. */
body.seite-informationen main.container > .information-page.ergebnisblock-aussen-modular {
    margin-bottom: 0;
}

body.seite-informationen main.container > .information-page.ergebnisblock-aussen-modular + .information-page.ergebnisblock-aussen-modular {
    margin-top: 20px;
}

/* Verschachtelte Ergebnisblöcke auf derselben Ebene: ebenfalls 20 px. */
body.seite-informationen main.container .info-sections {
    gap: 20px;
}

body.seite-informationen main.container .information-start-result-group {
    gap: 20px;
}

/* Die Ampellogik ist ein normaler Innenblock 1; frühere Sonderfarbe und
   Verlauf gehören nicht zur verbindlichen Ergebnisblock-Regel. */
body.seite-informationen main.container .traffic-light-section.ergebnisblock-innen-1-modular {
    border-color: #D8E6EF;
    background: #FFFFFF;
}

/* Anwendung „Update-Information“.
   Der vorhandene einzige Außenblock verwendet die verbindliche Ergebnisblock-
   Gestaltung. H1 steht in der bestehenden Kopfzeile; dessen oberer Abstand
   wird weiterhin ausschließlich durch die modulare Überschriftenregel bestimmt. */
body.seite-update-information main.container > .update-information-public-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
}

/* Das letzte sichtbare Element addiert keinen eigenen unteren Außenabstand
   zum Ergebnisblock-Innenabstand. */
body.seite-update-information main.container > .update-information-public-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}



/* Anwendungen auf vier weitere Seiten der Aquarienverwaltung.
   Die Ergebnisblock-Gestaltung bleibt verbindlich. Für „Analyse Zustimmung“
   werden ausschließlich die seitlichen 14 px ausgenommen, solange sie
   die bestätigten Tabellen verschieben würden. Breiten bleiben seitenbezogen. */
body.seite-profil-loeschen main.container > .danger-zone.ergebnisblock-aussen-modular,
body.seite-berater-freischalten main.container > .advisor-unlock-page.ergebnisblock-aussen-modular,
body.seite-schritt-fuer-schritt-anleitung main.container > .step-by-step-guide-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

/* Analyse Zustimmung: Ergebnisblock-Gestaltung bleibt modular,
   die seitlichen 14 px werden hier bewusst NICHT technisch angewendet, weil
   sie die bestätigten Tabellen horizontal verschieben würden. Der bisherige
   seitenbezogene 12-px-Abstand bleibt bis zu einem ausdrücklichen Auftrag bestehen. */
body.seite-analyse-zustimmung main.container > .analysis-consent-page.ergebnisblock-aussen-modular {
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

/* Das letzte sichtbare Element addiert keinen eigenen unteren Außenabstand
   zum Ergebnisblock-Innenabstand. */
body.seite-profil-loeschen main.container > .danger-zone.ergebnisblock-modular > :last-child,
body.seite-berater-freischalten main.container > .advisor-unlock-page.ergebnisblock-modular > :last-child,
body.seite-analyse-zustimmung main.container > .analysis-consent-page.ergebnisblock-modular > :last-child,
body.seite-schritt-fuer-schritt-anleitung main.container > .step-by-step-guide-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Mehrere äußere Ergebnisblöcke auf derselben Ebene: 20 px Gesamt-Abstand. */
body.seite-berater-freischalten main.container > .advisor-unlock-page.ergebnisblock-aussen-modular
+ .advisor-unlock-page.ergebnisblock-aussen-modular,
body.seite-schritt-fuer-schritt-anleitung main.container > .step-by-step-guide-page.ergebnisblock-aussen-modular
+ .step-by-step-guide-page.ergebnisblock-aussen-modular {
    margin-top: 20px !important;
}

/* Profil löschen: Bestätigungsbereich = Innenblock 1.
   Das Formularraster liefert bereits 16 px; 4 px zusätzlicher Blockabstand
   ergeben sichtbar 20 px bis zum Innenblock. */
body.seite-profil-loeschen main.container .delete-confirm-box.ergebnisblock-innen-1-modular {
    padding: 14px !important;
    margin-top: 4px !important;
}

body.seite-profil-loeschen main.container .delete-confirm-box.ergebnisblock-innen-1-modular > :first-child {
    margin-top: 0 !important;
}

body.seite-profil-loeschen main.container .delete-confirm-box.ergebnisblock-innen-1-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Berater freischalten: vorhandener Prüfrahmen = Innenblock 1.
   Da H2 unmittelbar davor steht, bestimmt die Überschriftenregel den Abstand
   zum Innenblock. Innerhalb des Blocks gelten 14 px rundum. */
body.seite-berater-freischalten main.container .advisor-check-section
.info-section.ergebnisblock-innen-1-modular {
    padding: 14px !important;
}

body.seite-berater-freischalten main.container .advisor-check-section
.info-section.ergebnisblock-innen-1-modular > :first-child {
    margin-top: 0 !important;
}

body.seite-berater-freischalten main.container .advisor-check-section
.info-section.ergebnisblock-innen-1-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Der letzte Inhalt des ersten Berater-Außenblocks erhält keinen zusätzlichen
   historischen Unterrand über den 20-px-Ergebnisblock-Innenabstand hinaus. */
body.seite-berater-freischalten main.container
.advisor-unlock-page.ergebnisblock-aussen-modular .advisor-requirements-grid:last-child {
    margin-bottom: 0 !important;
}

/* Seite „Schritt für Schritt Anleitung“:
   Die elf fachlich bestätigten Inhaltsbereiche des ersten Außenblocks werden
   als gleichartige Innenblöcke 1 geführt. Die bisherige Textbreite von 760 px
   bleibt innerhalb der 14-px-Innenabstände erhalten; daraus ergibt sich eine
   seitenbezogene sichtbare Blockbreite von 790 px einschließlich 1-px-Rahmen. */
body.seite-schritt-fuer-schritt-anleitung main.container
.step-guide-inner-block.ergebnisblock-innen-1-modular {
    width: 790px;
    max-width: 100%;
    padding: 0 14px 14px 14px !important;
    margin-left: 0;
    margin-right: 0;
}

/* Vor dem ersten Innenblock bleibt der bisherige H2-Anlauf als Abstand zum
   einleitenden Text erhalten. Direkt aufeinanderfolgende Innenblöcke erhalten
   nach der modularen Ergebnisblock-Regel 20 px Gesamt-Abstand. */
body.seite-schritt-fuer-schritt-anleitung main.container
.step-by-step-guide-page > .step-guide-inner-block:first-of-type {
    margin-top: 16px !important;
}

body.seite-schritt-fuer-schritt-anleitung main.container
.step-guide-inner-block + .step-guide-inner-block {
    margin-top: 20px !important;
}

/* Der Innenblock bestimmt den Abstand seines letzten Elements zur Unterkante;
   ein historischer Element-Unterrand wird dort nicht zusätzlich addiert. */
body.seite-schritt-fuer-schritt-anleitung main.container
.step-guide-inner-block > :last-child {
    margin-bottom: 0 !important;
}

/* Geschichte deiner Tiere: vollständige Ergebnisblock-Regel mit
   14 px links/rechts und 20 px unten. */
body.seite-geschichte-deiner-tiere main.container > .livestock-history-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-geschichte-deiner-tiere main.container > .livestock-history-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Vollständige Ergebnisblock-Anwendung auf „Anmelden“ und „Besatzübersicht“.
   Beide Seiten verwenden 14 px links/rechts, 1 px #D8E6EF, #FFFCE7,
   Radius 18 px und keinen Schatten. */
body.seite-anmelden main.container > .login-page.ergebnisblock-aussen-modular,
body.seite-besatzuebersicht main.container > .livestock-overview-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-anmelden main.container > .login-page.ergebnisblock-modular > :last-child,
body.seite-besatzuebersicht main.container > .livestock-overview-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Vollständige Ergebnisblock-Anwendung auf Besatz anlegen,
   Tagebucheintrag erstellen und Termin erstellen. Keine Ausnahme: Außenblöcke
   verwenden 14 px links/rechts und 20 px unten; Termin erstellen nutzt den
   vorhandenen Eingabebereich zusätzlich als Innenblock 1. */
body.seite-besatz-anlegen main.container > .livestock-create-page.ergebnisblock-aussen-modular,
body.seite-tagebucheintrag-erstellen main.container > .diary-create-page.ergebnisblock-aussen-modular,
body.seite-termin-erstellen main.container > .appointment-create-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-termin-erstellen main.container .appointment-create-page
.appointment-create-block.ergebnisblock-innen-1-modular {
    padding: 14px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

body.seite-besatz-anlegen main.container > .livestock-create-page.ergebnisblock-modular > :last-child,
body.seite-tagebucheintrag-erstellen main.container > .diary-create-page.ergebnisblock-modular > :last-child,
body.seite-termin-erstellen main.container > .appointment-create-page.ergebnisblock-modular > :last-child,
body.seite-termin-erstellen main.container .appointment-create-page .ergebnisblock-innen-1-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Seite Termine vollständig als modularer Außen-Ergebnisblock. */
body.seite-termine main.container > .termine-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-termine main.container > .termine-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}



/* Seite Volumenrechner vollständig nach der modularen
   Ergebnisblock-Regel. Die seitenbezogene Außenbreite 550 px bleibt bestehen. */
body.seite-volumenrechner main.container > .volume-calculator-page.ergebnisblock-aussen-modular {
    padding-top: 20px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-volumenrechner main.container .volume-result-block.ergebnisblock-innen-1-modular {
    padding: 14px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}
body.seite-volumenrechner main.container > .volume-calculator-page.ergebnisblock-modular > :last-child,
body.seite-volumenrechner main.container .volume-result-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Seite Futterübersicht als modularer Außen-Ergebnisblock.
   Außenbreite 1180 px seitenbezogen; 14 px Innenabstand links/rechts, 20 px unten. */
body.seite-futteruebersicht main.container > .food-overview-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-futteruebersicht main.container > .food-overview-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Technik ändern: modularer Außen-Ergebnisblock mit seitenbezogener 550-px-Außenbreite
   und 520-px-Inhaltsbreite bei 14 px Innenabstand links/rechts. */
body.seite-technik-aendern main.container > .technology-change-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-technik-aendern main.container > .technology-change-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Seite „Technik anlegen“ als vollständiger modularer Außen-Ergebnisblock.
   Außenbreite bleibt 550 px; 14 px Innenabstand links/rechts ergeben mit 1-px-Rahmen
   520 px nutzbare Inhaltsbreite. */
body.seite-technik-anlegen main.container > .technology-create-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-technik-anlegen main.container > .technology-create-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Seite „Deine Beckenübersicht“ als vollständiger modularer
   Außen-Ergebnisblock. Die seitenbezogene Außenbreite 1180 px bleibt bestehen;
   1 px Rahmen + 14 px links/rechts ergeben 1150 px nutzbare Inhaltsbreite.
   Die ausdrücklich freigegebene Umstellung 12 -> 14 px verschiebt den Inhalt
   einschließlich der bestätigten Tabelle um 2 px nach rechts; Tabellenbreiten
   und Spaltenbreiten bleiben unverändert. */
body.seite-deine-beckenuebersicht main.container > .aquarium-overview-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-deine-beckenuebersicht main.container > .aquarium-overview-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Zusage-Master · Alle sechs Zusage-Seiten als modulare Ergebnisblöcke.
   Außenbreite 550 px; 1 px Rahmen + 14 px links/rechts ergeben 520 px
   Außen-Inhaltsbreite. Die drei inneren Blöcke besitzen 14 px rundum. */
body main.container > .zusage-area-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

main.container .zusage-area-page .zusage-area-consent-block.ergebnisblock-innen-1-modular,
main.container .zusage-area-page .zusage-area-info-block.ergebnisblock-innen-1-modular,
main.container .zusage-area-page .zusage-area-objection-info-block.ergebnisblock-innen-1-modular {
    padding: 14px !important;
}

body main.container > .zusage-area-page.ergebnisblock-modular > :last-child,
main.container .zusage-area-page .zusage-area-consent-block.ergebnisblock-modular > :last-child,
main.container .zusage-area-page .zusage-area-info-block.ergebnisblock-modular > :last-child,
main.container .zusage-area-page .zusage-area-objection-info-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Beckenauswertung wird ohne historische Versionsklasse direkt
   über .aquarium-all-page an die bestätigte modulare Ergebnisblock-Geometrie
   angebunden. Becken kopieren bleibt unverändert auf dem bestätigten Stand. */
body.seite-alle-becken main.container > .aquarium-all-page.ergebnisblock-aussen-modular,
body.seite-becken-kopieren main.container > .aquarium-copy-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

/* Becken kopieren: vorhandener gerahmter Gedankenbereich = Innenblock 1.
   14 px rundum; vorhandene Texte/Checkboxen und deren Funktion bleiben unverändert. */
body.seite-becken-kopieren main.container
.aquarium-copy-thought.ergebnisblock-innen-1-modular {
    padding: 14px !important;
}

body.seite-alle-becken main.container > .aquarium-all-page.ergebnisblock-modular > :last-child,
body.seite-becken-kopieren main.container > .aquarium-copy-page.ergebnisblock-modular > :last-child,
body.seite-becken-kopieren main.container .aquarium-copy-thought.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}



/* Volumenrechner – grüne Innen-Ergebnisblöcke bleiben als
   ausdrücklich bestätigte Farbausnahme grün. Geometrie und Abstände folgen
   vollständig der modularen Ergebnisblock-Regel. */
body.seite-volumenrechner main.container .volume-design-block.ergebnisblock-innen-1-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 14px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: var(--soft, #DEFE98) !important;
    box-shadow: none !important;
}
body.seite-volumenrechner main.container .volume-design-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Admin-Tester 4.2.2: Außenblock 408 px; 14 px außen und 14 px in den grünen
   Innenblöcken. Die +8 px Gesamtbreite hält deren bisherige Textbreite exakt. */
body.seite-volumenrechner main.container .volume-calculator-summary.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: #FFFCE7 !important;
    box-shadow: none !important;
}
body.seite-volumenrechner main.container .volume-summary-block.ergebnisblock-innen-1-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 14px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: var(--soft, #DEFE98) !important;
    box-shadow: none !important;
}
body.seite-volumenrechner main.container .volume-calculator-summary.ergebnisblock-modular > :last-child,
body.seite-volumenrechner main.container .volume-summary-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Anwendung „Besatz anlegen - Informationen“.
   Bestätigte Variante 4.1.2: vollständige Außen-Ergebnisblock-Regel mit
   14 px links/rechts; mögliche zusätzliche Text-/Buttonumbrüche bei einzelnen
   Zwischenbreiten sind ausdrücklich freigegeben. */
body.seite-besatz-anlegen-informationen main.container > .livestock-info-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-besatz-anlegen-informationen main.container > .livestock-info-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* „Besatz anlegen - Informationen“: Die vier fachlichen
   Informationsbereiche sind echte Innen-Ergebnisblöcke 1. */
body.seite-besatz-anlegen-informationen main.container
.livestock-info-section.ergebnisblock-innen-1-modular {
    padding: 14px !important;
    border: 1px solid #D8E6EF !important;
    border-radius: 18px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}

body.seite-besatz-anlegen-informationen main.container
.livestock-info-section.ergebnisblock-modular > :first-child {
    margin-top: 0 !important;
}

body.seite-besatz-anlegen-informationen main.container
.livestock-info-section.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Bestandsauswertung, Zuchtliste, Wunschbesatz und Besatz-Suche.
   Bestätigte Variante 4.1.2: vollständige Außen-Ergebnisblock-Regel mit
   14 px links/rechts und 20 px unten. Zusätzliche Textumbrüche bei einzelnen
   Zwischenbreiten sind ausdrücklich freigegeben. */
body.seite-bestandsauswertung main.container > .bestandsauswertung-page.ergebnisblock-aussen-modular,
body.seite-zuchtliste main.container > .breeding-list-page.ergebnisblock-aussen-modular,
body.seite-wunschbesatz main.container > .wishlist-page.ergebnisblock-aussen-modular,
body.seite-besatz-suche main.container > .livestock-search-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-bestandsauswertung main.container > .bestandsauswertung-page.ergebnisblock-modular > :last-child,
body.seite-zuchtliste main.container > .breeding-list-page.ergebnisblock-modular > :last-child,
body.seite-wunschbesatz main.container > .wishlist-page.ergebnisblock-modular > :last-child,
body.seite-besatz-suche main.container > .livestock-search-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Anwendung „Mein Tagebuch“.
   Außenblock vollständig nach Ergebnisblock-Regel. Die 14-px-Seitenabstände
   ergeben mit dem 1-px-Rahmen exakt 15 px bis zum Inhalt. */
body.seite-mein-tagebuch main.container > .diary-page.ergebnisblock-aussen-modular {
    padding-top: 18px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-mein-tagebuch main.container > .diary-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Besatz-Becken-Übersicht: vollständiger Außen-Ergebnisblock.
   H1-Topabstand bleibt ausschließlich Sache der modularen Überschriftenregel. */
body.seite-besatz-becken-uebersicht main.container
> .livestock-aquarium-overview-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-besatz-becken-uebersicht main.container
> .livestock-aquarium-overview-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Beckenauswertung ADMIN und Bestandsauswertung-Admin als
   vollständige modulare Außen-Ergebnisblöcke. ADMIN-Hintergrund #F0F0F0
   bleibt durch die zentrale ADMIN-Regel erhalten. */
body.seite-beckenauswertung-admin main.container > .beckenauswertung-admin-page.ergebnisblock-aussen-modular,
body.seite-bestandsauswertung-admin main.container > .bestandsauswertung-admin-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

body.seite-beckenauswertung-admin main.container > .beckenauswertung-admin-page.ergebnisblock-modular > :last-child,
body.seite-bestandsauswertung-admin main.container > .bestandsauswertung-admin-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Kostenrechner: Außenblock und vorhandene gerahmte Inhaltsbereiche
   werden vollständig nach der modularen Ergebnisblock-Regel geführt. Breite bleibt seitenbezogen. */
body.seite-kostenrechner main.container > .costs-calculator-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-kostenrechner main.container .costs-calculator-page .ergebnisblock-innen-1-modular {
    padding: 14px !important;
}
body.seite-kostenrechner main.container > .costs-calculator-page.ergebnisblock-modular > :last-child,
body.seite-kostenrechner main.container .costs-calculator-page .ergebnisblock-innen-1-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Kostenbuch als vollständiger modularer Außen-Ergebnisblock. */
body.seite-kostenbuch main.container > .costs-book-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-kostenbuch main.container > .costs-book-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Kostenposition erstellen: vollständige modulare Ergebnisblöcke. */
body.seite-kostenposition-erstellen main.container > .cost-position-create-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-kostenposition-erstellen main.container .cost-position-create-page > .ergebnisblock-innen-1-modular {
    padding: 14px !important;
}
body.seite-kostenposition-erstellen main.container > .cost-position-create-page.ergebnisblock-modular > :last-child,
body.seite-kostenposition-erstellen main.container .cost-position-create-page > .ergebnisblock-innen-1-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Kostenrechner alle Becken: modularer Außen-Ergebnisblock. */
body.seite-kostenrechner-alle-becken main.container > .costs-overview-all-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-kostenrechner-alle-becken main.container > .costs-overview-all-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Seite Terminverwaltung vollständig als modularer Außen-Ergebnisblock.
   Die seitenbezogene Breite 1180 px und die 1150-px-Tabelle bleiben bestehen. */
body.seite-terminverwaltung main.container > .appointment-management-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-terminverwaltung main.container > .appointment-management-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Technik-Übersicht: Hauptblock als modularer Außenblock und
   vorhandener Beschreibungsblock als Innenblock 1. Seitenbreite bleibt 1180 px. */
body.seite-technik-uebersicht main.container > .technology-overview-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-technik-uebersicht main.container .technology-description-block.ergebnisblock-innen-1-modular {
    padding: 14px !important;
    border-color: #D8E6EF !important;
    border-radius: 18px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
}
body.seite-technik-uebersicht main.container > .technology-overview-page.ergebnisblock-modular > :last-child,
body.seite-technik-uebersicht main.container .technology-description-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Futter-Formular: Hauptbereich als modularer Außen-Ergebnisblock.
   H1 steuert den oberen Abstand; links/rechts 14 px, unten 20 px. */
.seite-futter-formular main.container > .food-form-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

.seite-futter-formular main.container > .food-form-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Futterübersicht zu allen Becken: modularer Außen-Ergebnisblock.
   H1 steuert den oberen Abstand; links/rechts 14 px, unten 20 px. */
.seite-futteruebersicht-alle-becken main.container > .food-overview-all-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

.seite-futteruebersicht-alle-becken main.container > .food-overview-all-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Futter-ABC: äußerer Ergebnisblock und vier Innenblöcke 1.
   H1/H2 steuern jeweils den oberen Abstand über die Überschriftenkomponente. */
.seite-futter-abc main.container > .food-abc-page.ergebnisblock-aussen-modular {
    box-sizing: border-box;
    border: 1px solid #D8E6EF !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    background: #FFFCE7 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

.seite-futter-abc main.container .food-abc-block.ergebnisblock-innen-1-modular {
    box-sizing: border-box;
    border: 1px solid #D8E6EF !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    background: #FFFFFF !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 14px !important;
}

.seite-futter-abc main.container > .food-abc-page.ergebnisblock-modular > :last-child,
.seite-futter-abc main.container .food-abc-block.ergebnisblock-modular > :last-child {
    margin-bottom: 0;
}


/* Hauptmenü Wasserwerte: bestätigte Nutzerseiten als modulare
   Außen-Ergebnisblöcke. Breiten, Tabellenbreiten und fachliche Abläufe bleiben
   seitenbezogen unverändert; links/rechts 14 px, unten 20 px. */
:is(
    .seite-wasseranalyse-uebersicht,
    .seite-wasseranalyse-anlegen,
    .seite-meine-wasserwerte,
    .seite-wasserwerte-anzeigen,
    .seite-wasserwerte-erfassen,
    .seite-icp-importieren,
    .seite-icp-import-historie,
    .seite-neue-dosierung,
    .seite-ausgleichswerte-berechnen
) main.container > .ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

:is(
    .seite-wasseranalyse-uebersicht,
    .seite-wasseranalyse-anlegen,
    .seite-meine-wasserwerte,
    .seite-wasserwerte-anzeigen,
    .seite-wasserwerte-erfassen,
    .seite-icp-importieren,
    .seite-icp-import-historie,
    .seite-neue-dosierung,
    .seite-ausgleichswerte-berechnen
) main.container > .ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}

/* Zusage Wasserwerte: Korrektur des alten nicht passenden Master-Selektors.
   Nur diese Wasserwerte-Zusage wird in der bestehenden Fassung verändert. */
body.seite-zusage-wasserwerte main.container > .zusage-area-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}


/* Hauptmenü Bestandsauswertung: Informationen Auswertung und
   sechs Platzhalterseiten als modulare Außen-Ergebnisblöcke. Inhalte und die
   bestehende Platzhalter-Mindesthöhe bleiben unverändert. */
:is(
    .seite-informationen-auswertung,
    .seite-auswertung-becken,
    .seite-auswertung-bestand,
    .seite-auswertung-wasserwerte,
    .seite-auswertung-futter,
    .seite-auswertung-technik,
    .seite-deine-auswertung
) main.container > .ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

:is(
    .seite-informationen-auswertung,
    .seite-auswertung-becken,
    .seite-auswertung-bestand,
    .seite-auswertung-wasserwerte,
    .seite-auswertung-futter,
    .seite-auswertung-technik,
    .seite-deine-auswertung
) main.container > .ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Hauptmenüs KI Analysen, Kosten Homepage und Kaufunterstützung:
   fünf tatsächliche Menüseiten als modulare Außen-Ergebnisblöcke. Die Seite
   „Projektkosten + Aufwand“ ist rollenmäßig ADMIN vorbehalten, gehört aber nicht
   zum Hauptmenü ADMIN und verwendet daher die normale Nutzerseiten-Geometrie. */
:is(
    .seite-analyse-uebersicht,
    .seite-analyse-ergebnisse,
    .seite-analyse,
    .seite-projektkosten-aufwand,
    .seite-shop-auswahl
) main.container > .ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
}

:is(
    .seite-analyse-uebersicht,
    .seite-analyse-ergebnisse,
    .seite-analyse,
    .seite-projektkosten-aufwand,
    .seite-shop-auswahl
) main.container > .ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Öffentliche Seiten: vollständige Ergebnisblock-Anwendung.
   Startseite: Hero sowie die öffentlichen Inhaltsblöcke. Anmelden war
   bereits modular und bleibt unverändert. Registrieren, Impressum, Datenschutz,
   Setup und Installation werden nun ebenfalls als Außen-Ergebnisblöcke geführt. */
body.seite-startseite main.container > .hero.public-page-block.ergebnisblock-aussen-modular,
body.seite-startseite main.container > .grid.cards-2 > .public-page-block.ergebnisblock-aussen-modular,
body.seite-startseite main.container > .overview-card.public-page-block.ergebnisblock-aussen-modular,
body.seite-registrierung main.container > .register-card.ergebnisblock-aussen-modular,
body.seite-impressum main.container > .legal-page.ergebnisblock-aussen-modular,
body.seite-datenschutz main.container > .legal-page.ergebnisblock-aussen-modular,
body.seite-setup main.container > .setup-page.ergebnisblock-aussen-modular,
body.seite-installation main.container > .installation-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}

/* H1/H2 als erstes sichtbares Element: oberer Abstand wird vom Block geliefert. */
body.seite-startseite main.container > .hero.public-page-block {
    padding-top: 18px !important;
}
body.seite-startseite main.container > .grid.cards-2 > .public-page-block:has(> h2:first-child),
body.seite-startseite main.container > .overview-card.public-page-block:has(> h2:first-child) {
    padding-top: 16px !important;
}
body.seite-registrierung main.container > .register-card.ergebnisblock-aussen-modular:has(> h1:first-child),
body.seite-impressum main.container > .legal-page.ergebnisblock-aussen-modular:has(> h1:first-child),
body.seite-datenschutz main.container > .legal-page.ergebnisblock-aussen-modular:has(> h1:first-child),
body.seite-setup main.container > .setup-page.ergebnisblock-aussen-modular:has(> h1:first-child),
body.seite-installation main.container > .installation-page.ergebnisblock-aussen-modular:has(> h1:first-child) {
    padding-top: 18px !important;
}

/* Ergebnisblock-Unterkante wird nicht durch Standardmargen des letzten Inhalts ergänzt. */
body.seite-startseite main.container > .hero.public-page-block .public-welcome-text,
body.seite-startseite main.container > .grid.cards-2 > .public-page-block > :last-child,
body.seite-startseite main.container > .overview-card.public-page-block > :last-child,
body.seite-registrierung main.container > .register-card.ergebnisblock-modular > :last-child,
body.seite-impressum main.container > .legal-page.ergebnisblock-modular > :last-child,
body.seite-datenschutz main.container > .legal-page.ergebnisblock-modular > :last-child,
body.seite-setup main.container > .setup-page.ergebnisblock-modular > :last-child,
body.seite-installation main.container > .installation-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}


/* Geschichte der Technik / Technikgruppe:
   vollständiger modularer Außen-Ergebnisblock mit bestätigter Seiten-Ausnahme
   von 1175 px Außenbreite. 1 px Rahmen + 14 px links/rechts ergeben 1145 px
   nutzbare Inhaltsbreite für die Gerätetabellen. */
body.seite-technikgruppe main.container > .technology-group-page.ergebnisblock-aussen-modular {
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 20px !important;
    margin-bottom: 0 !important;
}
body.seite-technikgruppe main.container > .technology-group-page.ergebnisblock-modular > :last-child {
    margin-bottom: 0 !important;
}
