/* Werkzeug "Persönlicher Krisenplan" (krisenplan), Agent T, 22.10.2026.
   Nur Variablen der Gestaltung (Dunkelmodus), nichts schwebend. Druck: das Skript setzt beim Drucken
   body.pp-kp-druckmodus; dann erscheint nur der Plan, leere Schritte mit Linien zum Ausfüllen von Hand. */

.pp-kp-schritt { border: 1px solid var(--pp-linie-2); border-radius: 12px; padding: .75rem 1rem 1rem; margin: 0; min-width: 0; display: grid; gap: .7rem; }
.pp-kp-schritt legend { font-weight: 700; font-size: 1rem; padding: 0 .35rem; }
.pp-main .prose .pp-kp-hilfe, .pp-kp-hilfe { margin: 0; color: var(--pp-tinte-2); }
.pp-kp-schritt textarea { font: inherit; font-size: 1rem; line-height: 1.5; padding: .7rem .85rem; border-radius: 10px; border: 1.5px solid var(--pp-linie-2);
    background: var(--pp-grund); color: var(--pp-tinte); width: 100%; box-sizing: border-box; resize: vertical; min-height: 5.5rem; }
.pp-kp-schritt textarea:focus { border-color: var(--pp-marke); outline: none; box-shadow: 0 0 0 4px color-mix(in srgb, var(--pp-akzent) 22%, transparent); }
.pp-kp-personen { display: grid; gap: .6rem; }
.pp-kp-zeile { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: .6rem; }
.pp-kp-zeile input { width: 100%; box-sizing: border-box; }
.pp-main .prose .pp-kp-knopfzeile, .pp-kp-knopfzeile { margin: 0; }
.pp-kp-dienste { border: 0; padding: 0; margin: .2rem 0 0; min-width: 0; }
.pp-kp-unterlegende { font-weight: 700; font-size: .92rem; padding: 0; margin-bottom: .35rem; }
.pp-kp-dienstliste, .pp-main .prose .pp-kp-dienstliste { list-style: none; margin: 0; padding: 0; display: grid; gap: .35rem; }
.pp-kp-dienstliste li, .pp-main .prose .pp-kp-dienstliste li { margin: 0; padding: 0; }
.pp-kp-wahl { display: flex; gap: .6rem; align-items: flex-start; min-height: 24px; padding: .2rem 0; cursor: pointer; line-height: 1.45; }
.pp-kp-wahl input { flex: none; width: 1.25rem; height: 1.25rem; margin: .1rem 0 0; accent-color: var(--pp-marke); cursor: pointer; }
.pp-kp-wahl input:focus-visible { outline: 3px solid var(--pp-akzent); outline-offset: 2px; }
.pp-kp-zusatz { display: block; color: var(--pp-tinte-3); font-size: .9em; }

/* Der Plan (Ergebnis) */
.pp-kp-ergebnis { overflow-wrap: anywhere; }
.pp-main .prose .pp-kp-titel, .pp-kp-titel { margin: 0 0 .2rem; font-size: 1.2rem; }
.pp-main .prose .pp-kp-stand, .pp-kp-stand { margin: 0 0 .6rem; color: var(--pp-tinte-2); font-size: .92rem; }
.pp-kp-teil { padding: .6rem 0; border-top: 1px solid var(--pp-linie); }
.pp-main .prose .pp-kp-teil h4, .pp-kp-teil h4 { margin: 0 0 .3rem; font-size: 1rem; }
.pp-main .prose .pp-kp-teil ul { margin: 0; padding-left: 1.3rem; }
.pp-main .prose .pp-kp-teil li { margin: .15rem 0; }
.pp-kp-name { font-weight: 650; }
.pp-kp-tel { font-weight: 700; white-space: nowrap; }
.pp-main .prose .pp-kp-leer, .pp-kp-leer { margin: 0; color: var(--pp-tinte-3); font-style: italic; }
.pp-kp-schreiblinien, .pp-kp-gedruckt { display: none; }
.pp-main .prose .pp-kp-quelle { margin: .6rem 0 0; }

@media (max-width: 600px) {
    .pp-kp-zeile { grid-template-columns: minmax(0, 1fr); gap: .4rem; }
}

@media print {
    body.pp-kp-druckmodus *:not(:has(.pp-kp-druck)):not(.pp-kp-druck):not(.pp-kp-druck *) { display: none !important; }
    body.pp-kp-druckmodus .pp-kp-ergebnis { background: none; padding: 0; margin: 0; }
    .pp-kp-druck { color: #000; }
    .pp-kp-tel { color: #000; text-decoration: none; }
    .pp-kp-teil { break-inside: avoid; border-top: 1px solid #000; }
    .pp-kp-teil--leer .pp-kp-leer { display: none; }
    .pp-kp-teil--leer .pp-kp-schreiblinien { display: block; }
    .pp-kp-schreiblinien span { display: block; height: 1.7em; border-bottom: 1px solid #000; }
    .pp-kp-gedruckt { display: block; }
}
