/* Familienkalender (familienkalender.html) – baut auf aemtliplan.css auf; Blatt A4 hoch, ein Monat pro Seite */
.ap-form select { width: 100%; min-height: 46px; padding: 0 12px; border: 1.5px solid var(--line-2); border-radius: 12px; background: var(--white); font: inherit; color: var(--ink); }
.ap-radio input[type=checkbox] { width: 22px; height: 22px; margin: 2px 0 0; accent-color: var(--sage); flex: none; }
.fk-preview { max-width: 520px; }
.fk-sheet { aspect-ratio: 210 / 297; gap: .8em; padding: 1.6em 1.6em 1.2em; }
.fk-table { width: 100%; border-collapse: collapse; table-layout: fixed; flex: 1; font-size: 1.1em; }
.fk-table th, .fk-table td { border-bottom: 1px solid var(--line); border-left: 1px solid var(--line); padding: 0 .4em; height: 1em; text-align: left; vertical-align: middle; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.fk-table thead th { background: var(--sage-soft); color: var(--sage-dark); font-weight: 900; border: 0; padding: .45em .4em; text-align: center; }
.fk-table thead th:first-child { border-radius: .6em 0 0 .6em; }
.fk-table thead th:last-child { border-radius: 0 .6em .6em 0; }
.fk-table thead th:first-child { width: 9.5em; }
.fk-table td.fk-d { border-left: 0; font-weight: 800; }
.fk-table td.fk-d small { font-weight: 600; color: var(--quiet); margin-left: .3em; }
.fk-table tr.fk-we td { background: var(--sage-tint); }
.fk-table tr.fk-hol td { background: var(--coral-soft); }
.fk-table tr.fk-mo td { border-top: 1.5px solid var(--line-2); }
#ap-print-out .fk-table tr td { -webkit-print-color-adjust: exact; print-color-adjust: exact; }

.ap-real .ap-sheet.fk-sheet { width: 210mm; height: 296mm; padding: 10mm 11mm 8mm; font-size: 3.3mm; }

@media print {
  @page { size: A4 portrait; margin: 0; }
  #ap-print-out .ap-sheet.fk-sheet { break-after: page; }
  #ap-print-out .ap-sheet.fk-sheet:last-child { break-after: auto; }
}
.fk-table tr.fk-hol td.fk-d small { color: var(--coral-ink); font-weight: 800; }
