/* Rechtstexte – eine Quelle für Website und PDF.
   Bildschirm: dunkles StockHub-Design (baut auf ../stockhub.css auf).
   Druck/PDF: das helle Layout der bisherigen PDFs mit Navy-Kopfzeile. */

.doc { max-width: 780px; margin: 0 auto; padding: 8px 16px 64px; position: relative; z-index: 1; }
.doc-head { margin: 24px 0 28px; }
.doc-head h1 { font-size: clamp(28px, 5vw, 40px); line-height: 1.1; letter-spacing: -.03em; margin: 0 0 8px; }
.doc-head .stand { color: var(--muted); font-size: 14px; }
.doc h2 { font-size: 19px; margin: 34px 0 10px; letter-spacing: -.01em; }
.doc h3 { font-size: 16px; margin: 22px 0 8px; }
.doc p, .doc li { color: #d3d7dc; }
.doc ul { padding-left: 20px; }
.doc li { margin: 4px 0; }
.doc a { color: var(--green); }
.callout { background: var(--green-soft); border: 1px solid rgba(30, 224, 143, .25); border-radius: 12px; padding: 14px 16px; margin: 0 0 8px; }
.callout p { margin: 0; color: var(--text); }
.parties { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 14px; }
.parties th, .parties td { border: 1px solid var(--border); padding: 10px 12px; text-align: left; vertical-align: top; }
.parties th { background: var(--surface-2); font-weight: 600; }
.formline { border-bottom: 1px solid var(--border-strong); height: 26px; margin: 4px 0 10px; }
.sign { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }

/* Platzhalter, die vor Veröffentlichung ausgefüllt werden müssen – absichtlich grell. */
.todo { background: #f2c84b; color: #1a1400; padding: 1px 6px; border-radius: 4px; font-weight: 600; }

/* Neue oder geänderte Stellen – nur sichtbar mit #aenderungen in der Adresse. */
.review .neu { background: rgba(30, 224, 143, .16); outline: 1px dashed rgba(30, 224, 143, .6); border-radius: 4px; }

.legal-nav { display: flex; gap: 18px; flex-wrap: wrap; color: var(--muted); font-size: 13px; padding: 24px 0 0; border-top: 1px solid var(--border); margin-top: 48px; }
.legal-nav a { color: var(--muted); text-decoration: none; }
.legal-nav a:hover, .legal-nav a[aria-current] { color: var(--text); }
.back { color: var(--muted); text-decoration: none; font-size: 14px; }
.back:hover { color: var(--text); }
.print-only { display: none; }

@media print {
  /* Ohne das färbt das dunkle Farbschema der Website die Seitenränder im PDF. */
  :root { color-scheme: light; }
  @page {
    size: A4;
    margin: 24mm 16mm 18mm 16mm;
    background: #fff;
    /* Kopfzeile wie in den bisherigen PDFs: Navy-Balken mit grüner Linie, auf jeder Seite. */
    @top-left-corner { content: ""; background: linear-gradient(#1c2129 0 11mm, #1ee08f 11mm 11.8mm, transparent 11.8mm); }
    @top-left { content: "STOCKHUB"; color: #fff; font: 700 9pt Arial, Helvetica, sans-serif; letter-spacing: .08em; vertical-align: top; padding-top: 4mm; background: linear-gradient(#1c2129 0 11mm, #1ee08f 11mm 11.8mm, transparent 11.8mm); }
    @top-center { content: ""; background: linear-gradient(#1c2129 0 11mm, #1ee08f 11mm 11.8mm, transparent 11.8mm); }
    @top-right { color: #fff; font: 9pt Arial, Helvetica, sans-serif; vertical-align: top; padding-top: 4mm; background: linear-gradient(#1c2129 0 11mm, #1ee08f 11mm 11.8mm, transparent 11.8mm); }
    @top-right-corner { content: ""; background: linear-gradient(#1c2129 0 11mm, #1ee08f 11mm 11.8mm, transparent 11.8mm); }
    @bottom-left { color: #7b8794; font: 7.5pt Arial, Helvetica, sans-serif; border-top: .3pt solid #cfd6dd; vertical-align: top; padding-top: 2mm; }
    @bottom-center { content: ""; border-top: .3pt solid #cfd6dd; }
    @bottom-right { content: "Seite " counter(page); color: #7b8794; font: 7.5pt Arial, Helvetica, sans-serif; border-top: .3pt solid #cfd6dd; vertical-align: top; padding-top: 2mm; }
  }

  html, body { background: #fff !important; color: #1f2933; }
  body { font: 9.5pt/1.45 Arial, Helvetica, sans-serif; min-height: 0; }
  body::before, .glow, .topbar, .legal-nav, .back, .screen-only { display: none !important; }
  .print-only { display: block; }
  .doc { max-width: none; padding: 0; }
  .doc-head { text-align: center; margin: 6mm 0 6mm; }
  .doc-head h1 { color: #1c2129; font-size: 20pt; letter-spacing: 0; line-height: 1.2; }
  .doc-head .stand { color: #6b7785; font-size: 10pt; }
  .doc h2 { color: #1c2129; font-size: 12.5pt; margin: 6mm 0 2mm; break-after: avoid; }
  .doc h3 { color: #1c2129; font-size: 11pt; margin: 4mm 0 1.5mm; break-after: avoid; }
  .doc p, .doc li { color: #1f2933; margin: 0 0 2.2mm; }
  .doc a { color: #1f2933; text-decoration: none; }
  .callout { background: #e9f8f1; border: 0; border-radius: 0; padding: 4mm 5mm; }
  .callout p { color: #1f2933; }
  .parties th, .parties td { border-color: #d7dde3; padding: 2.5mm 3mm; }
  .parties th { background: #f5f7f9; font-weight: 400; }
  .parties { break-inside: avoid; font-size: 9pt; }
  .formline { border-color: #9aa5b1; height: 7mm; }
  .page-break { break-before: page; }
  .todo { background: #ffe08a; color: #1a1400; }
  .review .neu { background: #d9f7ea; outline: none; }
}
