/* ============================================================
   Elldus Wochenprogramm – Stylesheet v1.1.0
   ============================================================ */

#wochenplan-wp {
  --brand-blue-dark: #2d4c5a;
  --brand-creme:     #efe9e1;
  --brand-gold:      #eac783;
  --brand-gruen:     #7a9e7e;
  --brand-hellblau:  #7da6a8;
  --brand-text-muted:#4a6570;
  --brand-border:    #c5cfd3;

  --color-family:    #fdf3dc;
  --color-baby:      #fef8ee;
  --color-kids3:     #e5ede5;
  --color-juniors:   #dce9ea;
  --color-ponyhof:   #ede6d8;
  --color-relaxfit:  #c8d9c9;
  --color-other:     #cdd8dd;

  font-family: Georgia, 'Times New Roman', serif;
  color: var(--brand-blue-dark);
  background: var(--brand-creme);
}

/* ── Admin-Bereich ─────────────────────────────────────── */
#wochenplan-wp h1,
#wochenplan-wp h2,
#wochenplan-wp h3,
#wochenplan-wp h4 { margin-top: 1rem; color: var(--brand-blue-dark); }

#wochenplan-wp .wp-section {
  background: var(--brand-creme);
  border-radius: 6px;
  padding: 1rem;
  margin: 1rem auto;
  max-width: 1200px;
  border: 1px solid var(--brand-border);
  box-shadow: 0 2px 8px rgba(45,76,90,0.08);
}
#wochenplan-wp .wp-section-header {
  border-bottom: 2px solid var(--brand-gold);
  margin-bottom: 0.8rem;
  padding-bottom: 0.5rem;
}
#wochenplan-wp .wp-section-header h1 {
  background: var(--brand-blue-dark);
  color: var(--brand-creme);
  margin: 0 0 0.5rem 0;
  padding: 0.5rem 0.8rem;
  border-radius: 4px;
  font-size: 1.1rem;
}
#wochenplan-wp input[type="text"],
#wochenplan-wp input[type="date"],
#wochenplan-wp select,
#wochenplan-wp textarea {
  padding: 0.3rem;
  font-size: 0.9rem;
  box-sizing: border-box;
  border: 1px solid var(--brand-border);
  border-radius: 3px;
  background: #fff;
  color: var(--brand-blue-dark);
}
#wochenplan-wp button {
  padding: 0.35rem 0.8rem;
  cursor: pointer;
  font-size: 0.9rem;
  background: var(--brand-blue-dark);
  color: var(--brand-creme);
  border: none;
  border-radius: 3px;
}
#wochenplan-wp button:hover { filter: brightness(1.1); }
#wochenplan-wp button:disabled { opacity: 0.5; cursor: default; }
#wochenplan-wp .wp-flex-row { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 0.5rem; }
#wochenplan-wp .wp-flex-col { flex: 1 1 200px; min-width: 200px; }
#wochenplan-wp .wp-small-hint { font-size: 0.8rem; color: var(--brand-text-muted); }

#wochenplan-wp .wp-entries-list {
  border: 1px solid var(--brand-border);
  border-radius: 4px;
  padding: 0.5rem;
  max-height: 300px;
  overflow-y: auto;
  background: #fff;
  margin-top: 0.5rem;
}
#wochenplan-wp .wp-entry-item {
  background: var(--brand-creme);
  border-radius: 4px;
  border-left: 4px solid var(--brand-blue-dark);
  padding: 0.4rem;
  margin-bottom: 0.4rem;
  position: relative;
  font-size: 0.85rem;
}
#wochenplan-wp .wp-entry-item.family   { border-color: #c9a24e; background: var(--color-family); }
#wochenplan-wp .wp-entry-item.baby     { border-color: #e8c886; background: var(--color-baby); }
#wochenplan-wp .wp-entry-item.kids3    { border-color: #7a9e7e; background: var(--color-kids3); }
#wochenplan-wp .wp-entry-item.juniors  { border-color: #7da6a8; background: var(--color-juniors); }
#wochenplan-wp .wp-entry-item.ponyhof  { border-color: #a89070; background: var(--color-ponyhof); }
#wochenplan-wp .wp-entry-item.relaxfit { border-color: #5a8060; background: var(--color-relaxfit); }
#wochenplan-wp .wp-entry-item.other    { border-color: #2d4c5a; background: var(--color-other); }
#wochenplan-wp .wp-entry-header { font-weight: bold; margin-bottom: 0.2rem; color: var(--brand-blue-dark); }
#wochenplan-wp .wp-entry-meta { font-size: 0.8rem; color: var(--brand-text-muted); }
#wochenplan-wp .wp-entry-desc { font-size: 0.8rem; margin-top: 0.2rem; color: var(--brand-blue-dark); }
#wochenplan-wp .wp-entry-actions {
  position: absolute; top: 4px; right: 4px;
  display: flex; gap: 0.3rem;
}
#wochenplan-wp .wp-entry-actions button {
  font-size: 0.75rem; padding: 0.2rem 0.4rem;
  background: var(--brand-border); color: var(--brand-blue-dark); border-radius: 2px;
}
#wochenplan-wp .wp-times-input-row { display: flex; gap: 0.5rem; }
#wochenplan-wp .wp-times-input-row input { flex: 1 1 auto; min-width: 0; }
#wochenplan-wp .wp-times-input-row button { flex: 0 0 auto; white-space: nowrap; }
#wochenplan-wp .wp-times-chips { display: flex; flex-wrap: wrap; gap: 0.35rem; margin-top: 0.4rem; min-height: 1.6rem; }
#wochenplan-wp .wp-time-chip {
  display: inline-flex; align-items: center; gap: 0.3rem;
  background: var(--brand-border); color: var(--brand-blue-dark);
  padding: 0.15rem 0.3rem 0.15rem 0.55rem;
  border-radius: 12px; font-size: 0.8rem;
}
#wochenplan-wp .wp-time-chip button {
  background: none; border: none; color: var(--brand-blue-dark);
  font-weight: bold; cursor: pointer; padding: 0 0.25rem; font-size: 0.9rem; line-height: 1;
  border-radius: 50%;
}
#wochenplan-wp .wp-time-chip button:hover { background: rgba(45,76,90,0.15); filter: none; }

#wochenplan-wp .wp-image-input-row { display: flex; gap: 0.5rem; flex-wrap: wrap; }
#wochenplan-wp .wp-image-input-row input { flex: 1 1 240px; min-width: 0; }
#wochenplan-wp .wp-image-input-row button { flex: 0 0 auto; white-space: nowrap; }
#wochenplan-wp .wp-image-preview {
  display: block; max-width: 160px; max-height: 100px;
  object-fit: cover; margin-top: 0.4rem; border-radius: 4px;
  border: 1px solid var(--brand-border);
}

#wochenplan-wp .wp-entry-form {
  border: 1px solid var(--brand-border);
  border-radius: 4px;
  padding: 0.5rem;
  margin-top: 0.5rem;
  background: #fff;
}
#wochenplan-wp .wp-buttons-row { margin-top: 0.5rem; display: flex; gap: 0.5rem; flex-wrap: wrap; }
#wochenplan-wp .wp-save-msg { margin-top: 0.5rem; font-size: 0.85rem; color: var(--brand-gruen); }
#wochenplan-wp .wp-template-row {
  display: flex; align-items: center; gap: 0.5rem;
  margin-top: 0.2rem; font-size: 0.8rem;
}
#wochenplan-wp .wp-template-select { max-width: 250px; font-size: 0.8rem; padding: 0.2rem; }

/* ── Gäste-Bereich ─────────────────────────────────────── */
#wochenplan-wp .wp-week-header {
  display: flex; justify-content: center; align-items: center;
  gap: 0.5rem; margin: 1rem 0; flex-wrap: wrap;
}
#wochenplan-wp .wp-week-info {
  text-align: center; margin-bottom: 0.3rem;
  font-weight: bold; color: var(--brand-creme);
  text-shadow: 0 1px 4px rgba(0,0,0,0.7);
  font-size: 1rem;
}
#wochenplan-wp .wp-filter-row {
  display: flex; justify-content: center; gap: 0.5rem;
  flex-wrap: wrap; margin-bottom: 1rem;
  font-size: 0.85rem; align-items: center;
}
#wochenplan-wp .wp-filter-label { font-weight: bold; margin-right: 0.3rem; color: var(--brand-creme); text-shadow: 0 1px 3px rgba(0,0,0,0.6); }
#wochenplan-wp .wp-filter-chip {
  border-radius: 16px; padding: 0.25rem 0.7rem;
  border: 1px solid rgba(255,255,255,0.5);
  background: rgba(255,255,255,0.18);
  cursor: pointer; display: inline-flex;
  align-items: center; gap: 0.3rem;
  color: #fff; backdrop-filter: blur(4px);
}
#wochenplan-wp .wp-filter-chip.active {
  border-color: var(--brand-gold);
  background: var(--brand-gold);
  color: var(--brand-blue-dark);
  font-weight: bold;
}
#wochenplan-wp .wp-week-grid {
  display: grid;
  /* minmax(0, 1fr) statt 1fr: verhindert, dass lange Wörter/Titel eine
     Spalte breiter zwingen als ihr Platz im Raster – dadurch lief das
     Raster zuvor über den Container hinaus und der Sonntag (letzte Spalte)
     wurde vom Theme abgeschnitten/unsichtbar. Die Spaltenzahl wird auf
     schmalen Bildschirmen reduziert (statt die Spalten immer schmaler zu
     pressen), damit Wörter normal umbrechen statt Buchstabe für
     Buchstabe. Alle 7 Tage bleiben dabei sichtbar, nur in mehreren Reihen. */
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 0.5rem;
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 1000px) { #wochenplan-wp .wp-week-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 620px)  { #wochenplan-wp .wp-week-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 380px)  { #wochenplan-wp .wp-week-grid { grid-template-columns: minmax(0, 1fr); } }

/* Einzelner Tag ausgewählt (Tag-Filter): nur 1 Spalte, zentriert und
   angenehm lesbar, statt eine einzelne schmale Spalte im 7er-Raster. */
#wochenplan-wp .wp-week-grid.wp-week-grid-single {
  grid-template-columns: minmax(0, 1fr);
  max-width: 700px;
  margin: 0 auto;
}
#wochenplan-wp .wp-day-column {
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 6px;
  padding: 0.5rem;
  background: rgba(239,233,225,0.15);
  backdrop-filter: blur(6px);
  min-width: 0; /* Grid-Item darf schrumpfen, sonst erzwingt der Inhalt Überlauf */
  box-sizing: border-box;
  overflow-wrap: break-word;
  /* Deutsche Wörter sind oft lange Komposita ohne natürliche Trennstelle
     (z.B. "Materialkosten"). hyphens:auto trennt an echten Silbengrenzen
     mit Bindestrich, statt wie overflow-wrap allein irgendwo mitten im
     Wort abzureißen. lang="de" auf dem Wrapper aktiviert die deutsche
     Trennregel im Browser. */
  hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
}
#wochenplan-wp .wp-day-header {
  font-weight: bold; text-align: center; margin-bottom: 0.5rem;
  color: var(--brand-gold);
  text-shadow: 0 1px 3px rgba(0,0,0,0.6);
  font-size: 0.85rem;
  overflow-wrap: break-word; hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}
#wochenplan-wp .wp-view-entry {
  border-radius: 4px; padding: 0.5rem 0.6rem;
  margin-bottom: 0.4rem; font-size: 0.85rem;
  color: var(--brand-blue-dark); display: flex; gap: 0.6rem; align-items: flex-start;
  min-width: 0;
}
#wochenplan-wp .wp-view-entry.family   { background: var(--color-family);   border: 1px solid #c9a24e; }
#wochenplan-wp .wp-view-entry.baby     { background: var(--color-baby);     border: 1px solid #e8c886; }
#wochenplan-wp .wp-view-entry.kids3    { background: var(--color-kids3);    border: 1px solid #7a9e7e; }
#wochenplan-wp .wp-view-entry.juniors  { background: var(--color-juniors);  border: 1px solid #7da6a8; }
#wochenplan-wp .wp-view-entry.ponyhof  { background: var(--color-ponyhof);  border: 1px solid #a89070; }
#wochenplan-wp .wp-view-entry.relaxfit { background: var(--color-relaxfit); border: 1px solid #5a8060; }
#wochenplan-wp .wp-view-entry.other    { background: var(--color-other);    border: 1px solid #2d4c5a; }
#wochenplan-wp .wp-view-entry-icon {
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--brand-creme); border: 2px solid var(--brand-gold);
  color: var(--brand-blue-dark); display: flex;
  align-items: center; justify-content: center;
  flex-shrink: 0; margin-top: 0.1rem;
  position: relative; box-sizing: border-box;
}
#wochenplan-wp .wp-view-entry-icon svg { width: 18px; height: 18px; display: block; }
#wochenplan-wp .wp-view-entry-content {
  flex: 1; min-width: 0;
  overflow-wrap: break-word; hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}
#wochenplan-wp .wp-view-entry-time { font-weight: bold; }
#wochenplan-wp .wp-view-entry-title { font-weight: bold; margin-top: 0.15rem; }
#wochenplan-wp .wp-view-entry-meta { font-size: 0.8rem; opacity: 0.9; }
#wochenplan-wp .wp-view-entry-small { font-size: 0.75rem; opacity: 0.85; margin-top: 0.1rem; }
#wochenplan-wp .wp-view-entry-label { font-weight: 600; text-transform: uppercase; font-size: 0.65rem; letter-spacing: 0.04em; opacity: 0.7; margin-right: 0.2rem; }
#wochenplan-wp .wp-view-entry-desc { margin-top: 0.3rem; font-size: 0.8rem; opacity: 0.95; }
#wochenplan-wp .wp-view-entry-toggle {
  overflow-wrap: break-word; hyphens: auto; -webkit-hyphens: auto; -ms-hyphens: auto;
}
#wochenplan-wp .wp-no-data { text-align: center; margin-top: 1.5rem; color: var(--brand-creme); text-shadow: 0 1px 3px rgba(0,0,0,0.6); }

/* Aufklappbare Details im Frontend: standardmäßig nur Uhrzeit + Titel,
   Alter/Treffpunkt/Beschreibung erst nach Klick auf den Programmpunkt. */
#wochenplan-wp .wp-view-entry-collapsible { cursor: pointer; }
#wochenplan-wp .wp-view-entry-collapsible:hover,
#wochenplan-wp .wp-view-entry-collapsible:focus-visible {
  filter: brightness(1.06);
  outline: none;
}
#wochenplan-wp .wp-view-entry-toggle {
  font-size: 0.7rem; font-weight: 600; opacity: 0.8;
  margin-top: 0.3rem; user-select: none;
}
#wochenplan-wp .wp-view-entry-details {
  display: none;
  margin-top: 0.2rem;
}
#wochenplan-wp .wp-view-entry.expanded .wp-view-entry-details { display: block; }

/* Buchungslink: immer sichtbarer CTA-Button, unabhängig vom Aufklappen. */
#wochenplan-wp .wp-view-entry-booking-link {
  display: inline-block;
  margin-top: 0.3rem;
  padding: 0.2rem 0.6rem;
  background: var(--brand-gold);
  color: var(--brand-blue-dark);
  font-size: 0.75rem;
  font-weight: bold;
  text-decoration: none;
  border-radius: 3px;
  white-space: nowrap;
}
#wochenplan-wp .wp-view-entry-booking-link:hover,
#wochenplan-wp .wp-view-entry-booking-link:focus-visible {
  filter: brightness(1.08);
  text-decoration: none;
}

/* Bild je Programmpunkt: erscheint nur in der Einzeltagsansicht (siehe JS),
   nicht in der Wochenübersicht "Alle Tage". */
#wochenplan-wp .wp-view-entry-image {
  display: block;
  width: 100%;
  max-width: 420px;
  height: auto;
  border-radius: 6px;
  margin: 0.4rem 0;
  object-fit: cover;
}

/* ── Waldmotiv-Hintergrund (Gäste-Bereich) ─────────────── */
/* background-image wird per PHP-Shortcode gesetzt (inline style).
   background-size: cover sorgt dafür, dass das Bild IMMER die volle
   Fläche des Bereichs abdeckt, egal wie hoch/breit er durch Inhalt und
   Bildschirmgröße gerade ist. overflow: hidden verhindert, dass die
   abgerundeten Ecken durch überlaufenden Inhalt "aufgerissen" wirken. */
#wochenplan-wp .wp-section-gaeste {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  overflow: hidden;
  box-sizing: border-box;
  border-radius: 8px;
  padding: 1.5rem;
  margin: 1rem auto;
  max-width: 1200px;
  width: 100%;
  box-shadow: 0 4px 20px rgba(45,76,90,0.3);
  position: relative;
}
/* Overlay: Dunkelblau-Schleier für Lesbarkeit */
#wochenplan-wp .wp-section-gaeste::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 8px;
  background: rgba(45, 76, 90, 0.52);
  pointer-events: none;
  z-index: 0;
}
#wochenplan-wp .wp-section-gaeste > * { position: relative; z-index: 1; }

/* Header im Gäste-Bereich */
#wochenplan-wp .wp-section-gaeste .wp-section-header {
  border-bottom: 2px solid var(--brand-gold);
  margin-bottom: 1rem;
  padding-bottom: 0.6rem;
}
#wochenplan-wp .wp-section-gaeste .wp-section-header h2 {
  color: var(--brand-creme);
  text-shadow: 0 1px 4px rgba(0,0,0,0.5);
  margin: 0 0 0.3rem 0;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
}
#wochenplan-wp .wp-section-gaeste .wp-small-hint {
  color: rgba(239,233,225,0.85);
  text-shadow: 0 1px 3px rgba(0,0,0,0.5);
}

/* Buttons im Gäste-Bereich */
#wochenplan-wp .wp-section-gaeste button {
  background: rgba(234,199,131,0.2);
  border: 1px solid var(--brand-gold);
  color: var(--brand-gold);
  backdrop-filter: blur(4px);
}
#wochenplan-wp .wp-section-gaeste button:hover {
  background: rgba(234,199,131,0.35);
}
#wochenplan-wp .wp-section-gaeste input[type="date"] {
  background: rgba(239,233,225,0.9);
  border: 1px solid var(--brand-gold);
  border-radius: 3px;
  color: var(--brand-blue-dark);
}

/* ── PDF-Druck je Programm ─────────────────────────────── */
#wochenplan-wp .wp-print-row {
  display: flex; align-items: center; gap: 0.6rem;
  flex-wrap: wrap; margin-bottom: 0.5rem;
  padding: 0.5rem; border: 1px solid var(--brand-border); border-radius: 4px;
  background: #fff;
}
#wochenplan-wp .wp-print-row .wp-print-label { font-weight: bold; min-width: 220px; color: var(--brand-blue-dark); }
#wochenplan-wp .wp-print-row button { white-space: nowrap; }

/* Druck-Layout (nur beim Drucken sichtbar) – A3 quer, immer 1 Seite,
   nur Überschrift + Programm, kein Datum/Logo/Fußzeile. */
#wp-printSheet { position: absolute; left: -99999px; top: 0; background: #fff; }
#wp-printSheet .pr-page-frame {
  overflow: hidden; background: #fff; position: relative;
}
#wp-printSheet .pr-page {
  padding: 24px 32px; background: #fff;
  color: var(--brand-blue-dark, #2d4c5a);
  font-family: Georgia, 'Times New Roman', serif;
  box-sizing: border-box; /* Ohne das zählt die Padding zur Breite hinzu:
    die Seite wurde dadurch 64px breiter als der Druckrahmen und das Logo
    rechts oben wurde vom overflow:hidden des Rahmens abgeschnitten. */
}
#wp-printSheet .pr-header {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 16px;
  border-bottom: 3px solid var(--brand-gold, #eac783);
  padding-bottom: 12px; margin-bottom: 14px;
}
#wp-printSheet .pr-title-main {
  font-size: 34px; font-weight: bold; letter-spacing: 1px;
  text-transform: uppercase;
}
/* Überschrift in derselben Farbe wie der Programmbereich im Frontend.
   !important zur Absicherung gegen evtl. Cache/Theme-Überlagerungen. */
#wp-printSheet .pr-title-main.pr-family   { color: #c9a24e !important; }
#wp-printSheet .pr-title-main.pr-baby     { color: #e8c886 !important; }
#wp-printSheet .pr-title-main.pr-kids3    { color: #7a9e7e !important; }
#wp-printSheet .pr-title-main.pr-juniors  { color: #7da6a8 !important; }
#wp-printSheet .pr-title-main.pr-ponyhof  { color: #a89070 !important; }
#wp-printSheet .pr-title-main.pr-relaxfit { color: #5a8060 !important; }
#wp-printSheet .pr-title-main.pr-other    { color: #2d4c5a !important; }
#wp-printSheet .pr-logo-img {
  height: 46px; width: auto; max-width: 160px;
  object-fit: contain; flex-shrink: 0; margin-top: 2px;
}
#wp-printSheet .pr-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 10px; }
#wp-printSheet .pr-col { border: 1px solid var(--brand-border, #c5cfd3); border-radius: 6px; overflow: hidden; background: #fff; }
#wp-printSheet .pr-day-header {
  color: var(--brand-blue-dark, #2d4c5a); text-align: center; padding: 6px 4px; font-weight: bold;
  font-size: 14px; text-transform: uppercase; letter-spacing: 1px;
}
#wp-printSheet .pr-day-body { padding: 8px 6px; min-height: 200px; }
#wp-printSheet .pr-entry { border-bottom: 1px dashed var(--brand-border, #c5cfd3); padding: 6px 0; font-size: 11px; }
#wp-printSheet .pr-entry:last-child { border-bottom: none; }
#wp-printSheet .pr-time { font-weight: bold; color: var(--brand-blue-dark, #2d4c5a); }
#wp-printSheet .pr-title { font-weight: bold; margin-top: 2px; }
#wp-printSheet .pr-meta { font-size: 10px; color: var(--brand-text-muted, #4a6570); margin-top: 1px; }
#wp-printSheet .pr-desc { font-size: 10px; margin-top: 2px; color: var(--brand-blue-dark, #2d4c5a); }
#wp-printSheet .pr-empty { font-size: 10px; color: #999; text-align: center; margin-top: 20px; }
#wp-printSheet .pr-family   .pr-day-header { background: #c9a24e; color: #fff; }
#wp-printSheet .pr-family   .pr-day-body   { background: #fdf3dc; }
#wp-printSheet .pr-baby     .pr-day-header { background: #e8c886; color: #2d4c5a; }
#wp-printSheet .pr-baby     .pr-day-body   { background: #fef8ee; }
#wp-printSheet .pr-kids3    .pr-day-header { background: #7a9e7e; color: #fff; }
#wp-printSheet .pr-kids3    .pr-day-body   { background: #e5ede5; }
#wp-printSheet .pr-juniors  .pr-day-header { background: #7da6a8; color: #fff; }
#wp-printSheet .pr-juniors  .pr-day-body   { background: #dce9ea; }
#wp-printSheet .pr-ponyhof  .pr-day-header { background: #a89070; color: #fff; }
#wp-printSheet .pr-ponyhof  .pr-day-body   { background: #ede6d8; }
#wp-printSheet .pr-relaxfit .pr-day-header { background: #5a8060; color: #fff; }
#wp-printSheet .pr-relaxfit .pr-day-body   { background: #c8d9c9; }
#wp-printSheet .pr-other    .pr-day-header { background: #2d4c5a; color: #efe9e1; }
#wp-printSheet .pr-other    .pr-day-body   { background: #cdd8dd; }

@media print {
  /* Wichtig: "visibility: hidden" auf dem Rest der Seite reicht nicht –
     unsichtbare Elemente belegen weiterhin ihre normale Höhe im
     Dokumentfluss. Bei einer langen Admin-Seite führte das dazu, dass der
     eigentliche Druckbereich erst mitten auf Seite 2 begann und der
     Ausdruck über 3 Seiten verteilt wurde (Seite 1 leer, Seite 3 nur
     angeschnitten). Stattdessen wird #wp-printSheet per JS zu einem
     direkten Kind von <body> gemacht und hier werden alle anderen
     Kind-Elemente von body komplett aus dem Fluss genommen (display:none),
     sodass nur noch der Druckbereich Platz beansprucht. */
  body > *:not(#wp-printSheet) { display: none !important; }
  #wp-printSheet {
    display: block !important;
    position: static !important;
    left: auto !important;
  }
  #wp-printSheet * {
    -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important;
  }
  @page { size: A3 landscape; margin: 10mm; }
}
