/* =========================================================
   vorlage.css: Blätter im Hochformat: Sicherheitsplan mit
   Notfallkarte, Zettel fürs Erstgespräch
   Lädt nach liste.css und übernimmt von dort Druckknopf und die
   Druckregeln, die Kopf, Fuß und Erklärtext ausblenden.
   ========================================================= */

/* Hochformat: Das Blatt ist eine Liste von Feldern, keine breite Tabelle.
   Diese Regel überschreibt das Querformat der Vorfall-Liste. */
@page { size: A4 portrait; }

.plan {
  max-width: 46rem;
  margin-block: clamp(2.5rem, 5vw, 3.5rem);
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--rule-mid);
}
.plan__title { font-size: clamp(1.3rem, 2vw, 1.6rem); }

.plan__group { margin-top: 1.75rem; }
.plan__heading {
  margin-bottom: .5rem;
  font-size: .85rem;
  font-weight: 600;
  color: var(--ink-2);
}

/* Jede Zeile ist eine Beschriftung mit freier Linie darunter. */
.plan__fields li { font-size: .9rem; color: var(--ink-2); }
.plan__fields li + li { margin-top: .6rem; }
.plan__fields li::after {
  content: '';
  display: block;
  height: 1.9rem;
  border-bottom: 1px solid var(--rule-mid);
}

/* Ankreuzen, und darunter eintragen, wo es liegt. Die Linie steht unter
   der Beschriftung, damit lange Einträge auch am Telefon sauber umbrechen. */
.plan__checks {
  display: grid;
  gap: .6rem 2rem;
}
@media (min-width: 40rem) { .plan__checks { grid-template-columns: 1fr 1fr; } }
.plan__checks li {
  display: grid;
  grid-template-columns: .85rem 1fr;
  column-gap: .6rem;
  align-items: start;
  font-size: .9rem;
}
.plan__checks li::before {
  content: '';
  width: .85rem;
  height: .85rem;
  margin-top: .3rem;
  border: 1px solid var(--ink-2);
}
.plan__checks li::after {
  content: '';
  grid-column: 2;
  height: 1.6rem;
  border-bottom: 1px solid var(--rule-mid);
}

.plan__numbers li {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 1rem;
  min-height: 2.1rem;
  border-bottom: 1px solid var(--rule-mid);
  font-size: .9rem;
}
.plan__numbers li span:last-child { font-variant-numeric: tabular-nums; font-weight: 600; }

/* --- Karten im Scheckkartenformat (85,6 × 54 mm) --- */
.karten {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-top: 2.25rem;
}
.karte {
  width: 100%;
  max-width: 21rem;
  padding: .9rem 1rem;
  border: 1px dashed var(--ink-3);
}
.karte__title { font-size: .85rem; font-weight: 600; }
.karte .plan__numbers li { min-height: 1.75rem; font-size: .82rem; }

@media print {
  /* Alles muss auf ein A4-Blatt passen, Karten eingeschlossen: Ein zweites
     Blatt geht leichter verloren oder bleibt im Drucker liegen. */
  .plan { max-width: none; margin: 0; padding: 0; border: 0; }
  .plan__title { font-size: 13pt; }
  .plan__group { margin-top: 4mm; break-inside: avoid; }
  .plan__heading { margin-bottom: 1mm; font-size: 9pt; }
  .plan__fields li,
  .plan__checks li,
  .plan__numbers li { font-size: 9pt; }
  .plan__fields li + li { margin-top: 1.5mm; }
  .plan__fields li::after { height: 5.5mm; }
  .plan__checks { grid-template-columns: 1fr 1fr; gap: 1.5mm 8mm; }
  .plan__checks li::after { height: 4.5mm; }
  .plan__numbers li { min-height: 6mm; }

  .karten { gap: 6mm; margin-top: 5mm; break-inside: avoid; }
  .karte { width: 85.6mm; height: 54mm; max-width: none; padding: 3mm 4mm; }
  .karte__title { font-size: 8pt; }
  .karte .plan__numbers li { min-height: 6.5mm; font-size: 7.5pt; }
}
