/* RK-9:LIVE – Textseiten (/ai/, /impressum/, /datenschutz/, 404). Baut auf style.css auf; keine Inline-Styles. */
.doc { display: grid; gap: 20px; padding-block: 40px 16px; }
.doc > *, .doc article > * { max-width: 76ch; }
.doc article { display: grid; gap: 20px; overflow-wrap: anywhere; } /* Rechtstexte: sehr lange Wörter brechen statt die Seite zu verbreitern (Reflow bei 320 px) */
@media (max-width: 479px) { .doc article { hyphens: auto; } }
.doc article + article { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--line); }
.doc h1 { font-size: clamp(2.2rem, 6vw, 3.6rem); font-weight: 700; text-transform: uppercase; }
.doc h2 { font-size: 1.8rem; margin-top: 16px; }
.doc h3 { margin-top: 8px; }
.doc ul { padding-left: 1.2em; display: grid; gap: 8px; }
.doc pre { margin: 0; max-width: 100%; background: var(--well); border: 1px solid var(--line); border-radius: var(--r); padding: 12px 14px; overflow-x: auto; font: 500 .84rem/1.5 var(--f-mono); }
.doc code { overflow-wrap: anywhere; }
.doc .tbl { max-width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
.doc table { border-collapse: collapse; width: 100%; font-size: .92rem; }
.doc th, .doc td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--line); }
.doc tr:last-child td { border-bottom: 0; }
.doc th { font: 600 .95rem/1.4 var(--f-display); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.doc .gap { background: var(--accent); color: var(--accent-ink); padding: 2px 8px; border-radius: var(--r); font-weight: 600; }
.doc-links { display: flex; flex-wrap: wrap; gap: 10px; }
.doc-alt { display: grid; gap: 20px; margin-top: 12px; padding-top: 24px; border-top: 1px solid var(--line); }
