/* ==========================================================================
   Pflichtseiten (Impressum, Datenschutz)

   Ergaenzung zu dashboard.css: Farben, Radien und Schrift kommen von dort.
   Hier steht nur die Lesetypografie, die im Dashboard nicht vorkommt — dort
   gibt es keine Fliesstexte dieser Laenge.
   ========================================================================== */

.dp-legal-app { max-width: 52rem; }

.dp-legal {
  padding: 28px 28px 32px;
  font-size: .9375rem;
  line-height: 1.65;
  color: var(--ink-2);
}

/* Titel in Newsreader, Abschnitte fett in Manrope — wie die Überschriften
   der Kundenseiten nach Hannahs Vorlage (09.11.2026). */
.dp-legal h1 {
  margin: 0 0 1.25rem;
  font-family: var(--ff-serif);
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: -.012em;
  line-height: 1.1;
  color: var(--ink);
}

.dp-legal h2 {
  margin: 2rem 0 .6rem;
  font-size: 1.0625rem;
  font-weight: 800;
  letter-spacing: 0;
  color: var(--ink);
}

.dp-legal h3 {
  margin: 1.4rem 0 .4rem;
  font-size: .9375rem;
  font-weight: 600;
  color: var(--ink);
}

.dp-legal p { margin: 0 0 .85rem; max-width: 68ch; }
.dp-legal ul { margin: 0 0 .85rem; padding-left: 1.25rem; max-width: 68ch; }
.dp-legal li { margin-bottom: .35rem; }
.dp-legal a { color: var(--ink); text-decoration: underline; }
.dp-legal strong { color: var(--ink); font-weight: 600; }

.dp-legal address { font-style: normal; margin-bottom: .85rem; }

/* Die Auftragsverarbeiter-Tabelle: der Teil, den Kunden wirklich lesen. */
.dp-legal-table { width: 100%; border-collapse: collapse; margin: 0 0 1.25rem; font-size: .875rem; }
.dp-legal-table th,
.dp-legal-table td { text-align: left; padding: .55rem .6rem; border-bottom: 1px solid var(--soft-2); vertical-align: top; }
.dp-legal-table th { color: var(--ink); font-weight: 600; }
.dp-legal-table tr:last-child td { border-bottom: 0; }

.dp-legal-warning {
  display: flex; align-items: flex-start; gap: .5rem;
  margin: 0 0 1.5rem;
  padding: .8rem 1rem;
  border-radius: var(--r-sm);
  background: var(--orange-sft);
  color: #8A2C0D;
  font-size: .875rem;
}

.dp-legal-updated { margin-top: 2rem; font-size: .8125rem; color: var(--ink-3); }

@media (max-width: 34rem) {
  .dp-legal { padding: 22px 18px 26px; }
  .dp-legal-table { font-size: .8125rem; }
}

/* Versionierte Rechtstexte (apps/legal/documents.py) */
.dp-legal-draft {
  padding: .6rem .8rem;
  border-radius: 8px;
  background: #fff4d6;
  color: #6b4b00;
}
.dp-legal mark.legal-open { background: #fff0b3; padding: 0 .15em; }
