/*
 * Design v2 – Kindergeld-, Familienkassen- und Rechnerseiten (Begutachtung 10.11.2026, Paket P6: D-4, D-11, E-6).
 * Monatsblock und Jahrestabelle der Termine-Seite, Hinweis „Familienkasse“, Kinderzuschlag-Zeile, Kalender-Knopf im
 * Termin-Finder, Steckbrief der Rechner. Geladen nur auf Seiten mit diesen Bausteinen.
 */

/* Gemeinsame Hülle (Abschnitt wie Text-Bausteine); die Kästen selbst höchstens so breit wie die Lesespalte */
.v2-seite main .z-kg-bereich p { margin: 0; }

/* Monatsblock „Kindergeld im November 2026“ */
.v2-seite main .z-kgmonat { width: 100%; max-width: var(--lesebreite); box-sizing: border-box; margin: var(--s-4) 0 var(--s-5); padding: var(--s-4); background: var(--c-flaeche-warm, #fdf6f3);
  border: 1px solid var(--c-linie); border-top: 4px solid var(--ee-rot); border-radius: var(--radius); box-sizing: border-box; text-align: left; }
.v2-seite main .z-kgmonat__titel { font-size: var(--fs-h4); font-weight: 700; line-height: 1.3; margin-bottom: var(--s-1) !important; color: var(--c-text); }
.v2-seite main .z-kgmonat__text { margin-bottom: var(--s-3) !important; line-height: 1.5; }
.v2-seite main .z-kgmonat__liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(9.25rem, 1fr)); gap: 6px 8px; }
.v2-seite main .z-kgmonat__liste li { display: flex; align-items: center; gap: var(--s-2); margin: 0; padding: 6px 8px; background: #fff;
  border: 1px solid var(--c-linie); border-radius: var(--radius-s); line-height: 1.3; }
.v2-seite main .z-kgmonat__liste li::before { content: none; }
.v2-seite main .z-kgmonat__ziffer { flex: none; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%;
  background: var(--ee-rot); color: #fff; font-weight: 700; font-size: .9375rem; }
.v2-seite main .z-kgmonat__datum { font-size: .9375rem; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.v2-seite main .z-kgmonat__liste li.z-kgmonat--vorbei { background: transparent; }
.v2-seite main .z-kgmonat--vorbei .z-kgmonat__ziffer { background: var(--ee-grau-200, #ece7e5); color: var(--c-text-2); }
.v2-seite main .z-kgmonat--vorbei .z-kgmonat__datum { font-weight: 400; color: var(--c-text-2); }
.v2-seite main .z-kgmonat__liste li.z-kgmonat--heute { border: 2px solid var(--ee-rot); padding: 5px 7px; }
.v2-seite main .z-kgmonat__fuss { margin-top: var(--s-3) !important; font-size: .875rem; line-height: 1.5; color: var(--c-text-2); }
.v2-seite main .z-kgmonat__fuss a { font-weight: 600; }

/* Jahrestabelle Endziffer × Monat (echte Tabelle) */
.v2-seite main .z-kgtabelle { width: 100%; max-width: var(--lesebreite); box-sizing: border-box; margin: var(--s-4) 0 var(--s-5); }
.v2-seite main .z-kgtabelle__rahmen { overflow-x: auto; border: 1px solid var(--c-linie); border-radius: var(--radius-s); background: #fff; }
.v2-seite main .z-kgtabelle__rahmen:focus-visible { outline: 3px solid var(--c-text); outline-offset: 2px; }
.v2-seite main .z-kgtabelle table { width: 100%; border-collapse: collapse; margin: 0; font-size: .875rem; line-height: 1.2; font-variant-numeric: tabular-nums; }
.v2-seite main .z-kgtabelle caption { caption-side: top; text-align: left; padding: var(--s-2) var(--s-3); font-weight: 700; color: var(--c-text); line-height: 1.4; }
.v2-seite main .z-kgtabelle th, .v2-seite main .z-kgtabelle td { padding: 7px 4px; text-align: center; border: 0; border-top: 1px solid var(--c-linie); white-space: nowrap; }
.v2-seite main .z-kgtabelle thead th { background: var(--ee-grau-100); font-weight: 600; font-size: .8125rem; }
.v2-seite main .z-kgtabelle tbody th, .v2-seite main .z-kgtabelle thead th:first-child { text-align: left; padding-left: var(--s-3); font-weight: 600; }
.v2-seite main .z-kgtabelle .z-kgtabelle--aktuell { background: var(--ee-gelb-zart, #fff6d6); font-weight: 700; }
.v2-seite main .z-kgtabelle thead .z-kgtabelle--aktuell { background: var(--ee-gelb-hell, #ffe9a6); }
.v2-seite main .z-kgtabelle abbr { text-decoration: none; }
.v2-seite main .z-kgtabelle__fuss { margin-top: var(--s-2) !important; font-size: .8125rem; line-height: 1.5; color: var(--c-text-2); }
@media (max-width: 29.99rem) {
  .v2-seite main .z-kgtabelle table { font-size: .8125rem; }
  .v2-seite main .z-kgtabelle th, .v2-seite main .z-kgtabelle td { padding: 6px 1px; }
  .v2-seite main .z-kgtabelle thead th { font-size: .75rem; }
  .v2-seite main .z-kgtabelle tbody th, .v2-seite main .z-kgtabelle thead th:first-child { padding-left: var(--s-2); }
}

/* Hinweis „Fragen zu Ihrem Kindergeld beantwortet nur die Familienkasse“ (am Handy höchstens zwei Zeilen) */
.v2-seite main p.z-kghinweis { width: 100%; max-width: var(--lesebreite); box-sizing: border-box; margin: var(--s-4) 0; padding: var(--s-2) var(--s-3); background: var(--ee-grau-50, #f7f5f4); border-left: 4px solid var(--ee-grau-500, #8a817e);
  border-radius: var(--radius-s); font-size: .875rem; line-height: 1.45; color: var(--c-text); box-sizing: border-box; }
.v2-seite main p.z-kghinweis a { font-weight: 600; white-space: nowrap; }

/* Kinderzuschlag-Zeile */
.v2-seite main p.z-kgkiz { width: 100%; max-width: var(--lesebreite); box-sizing: border-box; display: flex; gap: var(--s-3); align-items: flex-start; margin: var(--s-4) 0 var(--s-5); padding: var(--s-3) var(--s-4); background: #fff;
  border: 1px solid var(--c-linie); border-radius: var(--radius); box-sizing: border-box; line-height: 1.5; }
.v2-seite main .z-kgkiz__symbol { flex: none; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: var(--ee-gruen-zart); color: var(--ee-gruen); font-weight: 700; }
.v2-seite main .z-kgkiz__text a { font-weight: 600; }

/* Kalender-Knopf im Termin-Finder (termin-finder.js) */
.v2-seite .v2-finder__kalender { display: block; margin-top: var(--s-3); padding-top: var(--s-3); border-top: 1px solid rgba(29, 102, 48, .25); }
.v2-seite .v2-finder__kalender .v2-btn { white-space: normal; text-align: center; min-height: 44px; }
.v2-seite .v2-finder__kalender small { display: block; margin-top: var(--s-2); font-size: .8125rem; line-height: 1.45; color: var(--c-text-2); font-weight: 400; }
@media (max-width: 29.99rem) { .v2-seite .v2-finder__kalender .v2-btn { width: 100%; } }

/* Steckbrief der Rechner */
.v2-seite main .z-steckbrief { width: 100%; max-width: var(--lesebreite); box-sizing: border-box; margin: var(--s-5) 0; padding: var(--s-4) var(--s-5); background: #fff; border: 1px solid var(--c-linie); border-radius: var(--radius); box-sizing: border-box; }
.v2-seite main .z-steckbrief__titel { font-weight: 700; margin-bottom: var(--s-3) !important; }
.v2-seite main .z-steckbrief dl { margin: 0; display: grid; grid-template-columns: minmax(7.5rem, max-content) 1fr; gap: var(--s-2) var(--s-4); }
.v2-seite main .z-steckbrief dt { font-weight: 600; color: var(--c-text-2); font-size: .875rem; padding-top: 2px; }
.v2-seite main .z-steckbrief dd { margin: 0; line-height: 1.5; }
@media (max-width: 29.99rem) {
  .v2-seite main .z-steckbrief { padding: var(--s-4); }
  .v2-seite main .z-steckbrief dl { grid-template-columns: 1fr; gap: 0; }
  .v2-seite main .z-steckbrief dd { margin-bottom: var(--s-3); }
  .v2-seite main .z-steckbrief dd:last-child { margin-bottom: 0; }
}
