/* ── Pläne CSS – extrahiert aus index.html (Phase 1 ES-Modul-Migration) ── */
/* Alle .plan_* und .pz_* Regeln */

.plan_toolbar { display:flex; gap:8px; margin-bottom:16px; flex-wrap:wrap; align-items:center; padding:0 12px; }
.plan_abschnitt { padding:0 12px 24px; }
.plan_titel { font-weight:bold; font-size:10pt; color:#444; margin-bottom:8px; }

/* Übersichtsplan — 1:1 nach ODS */
.plan_tab {
  border-collapse:collapse;
  font-family:'Liberation Sans',Arial,sans-serif;
  table-layout:fixed; width:100%;
  -webkit-print-color-adjust:exact; print-color-adjust:exact;
}
.plan_tab col.pc_kw   { width:12mm; }
.plan_tab col.pc_dat  { width:28mm; }
.plan_tab col.pc_grp  { width:100mm; }

/* Kopf-/Fusszeile */
.plan_tab .pt_head td {
  height:12mm; border:1px solid #999;
  text-align:center; vertical-align:middle;
}
.pt_kw_lbl  { font-size:16pt; font-weight:bold; color:#c9211e; }
.pt_num     { font-size:16pt; font-weight:bold; color:#c9211e; }
.pt_zeit_lbl{ font-size:10pt; font-weight:bold; }

/* Datenzeilen */
.plan_tab .pt_data td { height:30mm; border:1px solid #999; text-align:center; vertical-align:middle; }
.plan_tab .pt_data:last-of-type td { border-top:2px solid #555; }
.pt_kw   { font-size:22pt; font-weight:bold; color:#c9211e; }
.pt_dat  { font-size:18pt; font-weight:bold; }
.pt_a    { font-size:48pt; font-weight:bold; background:#bbe33d; }
.pt_b    { font-size:48pt; font-weight:bold; background:#729fcf; }
.pt_c    { font-size:48pt; font-weight:bold; background:#ffff38; }
.plan_tab .plan_feiertag { color:red; text-decoration:line-through; }
.plan_tab .plan_feiertag_name { display:block; font-size:8pt; color:#c00; font-weight:normal; }
.plan_seitenumbruch { height:20px; }

/* Handzettel A4-Seite (Querformat, exakt nach ODS) */
.plan_zettel_seite {
  width:288mm; height:201mm;   /* A4 quer − 3mm Rand − 3mm Schneidefugen */
  background:white; box-shadow:0 2px 8px rgba(0,0,0,.2);
  margin:16px auto;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:repeat(5,minmax(0,1fr));
  gap:2mm;
  overflow:hidden;
  font-family:'Liberation Sans',Arial,sans-serif;
}
.plan_zettel {
  border:0.5px solid #000;
  display:flex; flex-direction:column;
  font-size:8pt; overflow:hidden;
  min-height:0;
}
.pz_head {
  display:flex; justify-content:space-between; align-items:center;
  font-weight:bold; font-size:7pt;
  border-bottom:0.5px solid #000;
  padding:0.5mm 1.5mm; flex-shrink:0;
}
.pz_ar  { direction:rtl; }
.pz_nummern {
  text-align:center; font-weight:bold; font-size:7pt;
  color:#ff0000; border-bottom:0.5px solid #000;
  padding:0.2mm 0; flex-shrink:0;
}
.pz_zeile {
  display:flex; flex:1; min-height:0;
  border-bottom:0.5px solid #000;
  align-items:center;
}
.pz_zeile:last-child { border-bottom:none; }
.pz_datum {
  flex:0 0 40%; text-align:center; font-size:10pt;
  border-right:0.5px solid #000; height:100%;
  display:flex; align-items:center; justify-content:center;
}
.pz_zeit  {
  flex:1; text-align:center; font-size:8.5pt; font-weight:bold;
}
.pz_ft    { color:red; text-decoration:line-through; }

/* Rotation-Korrektur */
.plan_korr {
  font-size:9pt; background:#f5f5f5; border:1px solid #ddd;
  border-radius:4px; padding:8px 12px; display:flex;
  gap:10px; align-items:center; flex-wrap:wrap;
}
.plan_korr label { color:#555; }

/* ── @media print für Pläne ── */
@media print {
  /* Plan drucken (Querformat) — @page-Größe wird per JS injiziert */
  body.druck_plan #app,
  body.druck_plan #inhalt { display:block !important; }
  body.druck_plan .con_links { display:none !important; }
  body.druck_plan #menu,
  body.druck_plan .con_head,
  body.druck_plan .plan_toolbar,
  body.druck_plan #plan_handzettel_wrap,
  body.druck_plan #plan_korr_wrap { display:none !important; }
  body.druck_plan .ma_a4_wrap { box-shadow:none !important; background:white !important; padding:0 !important; page-break-after:avoid !important; break-after:avoid !important; }
  body.druck_plan .ma_a4_seite {
    box-shadow:none !important; padding:0 !important;
    width:auto !important; background:white !important;
    overflow:hidden !important;
  }
  body.druck_plan .plan_druck_seite { page-break-after:always; break-after:page; }
  body.druck_plan .plan_druck_seite:last-child { page-break-after:avoid; break-after:avoid; }
  body.druck_plan #inhalt,
  body.druck_plan .con_2spalten { min-width:0 !important; width:100% !important; padding:0 !important; margin:0 !important; display:block !important; }
  body.druck_plan .plan_abschnitt { padding:0 !important; }
  body.druck_plan .plan_titel { display:none !important; }
  body.druck_plan .plan_tab { width:100%; }
  body.druck_plan .plan_tab .pt_data td { height:27mm !important; }

  /* Zettel drucken (Querformat) */
  body.druck_zettel #app,
  body.druck_zettel #inhalt { display:block !important; }
  body.druck_zettel .con_links { display:none !important; }
  body.druck_zettel #menu,
  body.druck_zettel .con_head,
  body.druck_zettel .plan_toolbar,
  body.druck_zettel #plan_uebersicht_wrap,
  body.druck_zettel #plan_korr_wrap,
  body.druck_zettel .plan_titel { display:none !important; }
  body.druck_zettel #inhalt,
  body.druck_zettel .con_2spalten { min-width:0 !important; width:100% !important; padding:0 !important; margin:0 !important; display:block !important; }
  body.druck_zettel .plan_abschnitt { padding:0 !important; }
  body.druck_zettel .ma_a4_wrap {
    display:block !important; width:100% !important;
    padding:0 !important; background:white !important; box-shadow:none !important;
    page-break-after:always !important; break-after:page !important;
    page-break-inside:avoid !important; break-inside:avoid !important;
  }
  body.druck_zettel .ma_a4_wrap:last-child {
    page-break-after:avoid !important; break-after:avoid !important;
  }
  body.druck_zettel .plan_zettel_seite {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    grid-template-rows:repeat(5,minmax(0,1fr)) !important;
    box-shadow:none !important; margin:0 !important;
    width:100% !important; height:186mm !important;
    max-height:186mm !important;
    overflow:hidden !important;
    page-break-inside:avoid; break-inside:avoid;
  }
  body.druck_zettel .plan_zettel { overflow:hidden !important; min-height:0 !important; page-break-inside:avoid; break-inside:avoid; }
}
