/* LayerNX © – Rechtliches im Wiki-Aufbau (Ergänzung zu /_lnx/css/lnx-ui.css) */
.legal-main { max-width: 900px; }
.legal-main > h1 { margin-bottom: 8px; }
.legal-sec { scroll-margin-top: calc(var(--top-h) + 12px); max-width: none; }
.legal-sec > h2 { margin-top: 1.8em; }
.legal-sec h3 { font-size: 1rem; }
.legal-sec address { font-style: normal; line-height: 1.7; }
.legal-domains { font-family: var(--mono); font-size: .86rem; color: var(--text-2); }
.legal-meta { margin-top: 18px; padding-top: 10px; border-top: 1px solid var(--line); color: var(--faint); font-size: .84rem; }
.credits-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
.credits-actions .btn { text-decoration: none; }
.credits-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); margin: 10px 0 16px; }
.credits-table { width: 100%; border-collapse: collapse; font-size: .9rem; margin: 0 !important; }
.credits-table th, .credits-table td { padding: 8px 12px; border: 0 !important; border-bottom: 1px solid var(--line) !important; text-align: left; }
.credits-table th { background: var(--bg-2); color: var(--faint); font: 700 .66rem var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.credits-table tr:last-child td { border-bottom: 0 !important; }
.toc a { font-size: .88rem; }
@media (max-width: 860px) {
  .credits-table th, .credits-table td { padding: 7px 9px; font-size: .82rem; }
}

/* Eigenständige Dokumente mit ruhiger Lesespalte und thematischer Übersicht. */
.legal-main { max-width: 1120px; padding-bottom: 64px; }
.legal-heading { max-width: 760px; padding: 20px 0 28px; }
.legal-heading h1 { font-size: clamp(2rem,4vw,3rem); letter-spacing: -.04em; line-height: 1.12; margin: 8px 0 18px; }
.legal-eyebrow,.legal-number { font: 700 .75rem var(--mono); text-transform: uppercase; letter-spacing: .09em; color: var(--faint); }
.legal-intro { font-size: 1.12rem; line-height: 1.7; color: var(--text-2); }
.legal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.legal-card { display:block; padding:26px; border:1px solid var(--line); border-radius:12px; color:inherit; text-decoration:none; background:var(--bg-2); }
.legal-card:hover,.legal-card:focus-visible { border-color:var(--text-2); }
.legal-card h2 { margin:14px 0 10px; font-size:1.25rem; }
.legal-card p { color:var(--text-2); line-height:1.6; min-height:3.2em; }
.legal-card > span:last-child { font-size:.85rem; }
.legal-outline { padding:20px 24px; background:var(--bg-2); border:1px solid var(--line); border-radius:10px; max-width:76ch; margin-bottom:32px; }
.legal-outline ul { columns:2; padding-left:20px; line-height:1.8; margin-bottom:0; }
.legal-outline li { break-inside:avoid; padding-right:12px; }
.legal-document { max-width:76ch; font-size:1rem; line-height:1.85; overflow-wrap:anywhere; }
.legal-document h2 { margin:2.5em 0 .85em; padding-top:16px; border-top:1px solid var(--line); font-size:1.3rem; scroll-margin-top:80px; }
.legal-document p,.legal-document ul { margin:0 0 1.25em; }
.legal-document li { margin-bottom:.65em; }
.legal-document address { font-style:normal; padding:20px; background:var(--bg-2); border-left:3px solid var(--line); }
@media(max-width:650px){ .legal-grid { grid-template-columns:1fr; } .legal-outline ul { columns:1; } .legal-card { padding:20px; } }
.license-text { white-space: pre-wrap; font-size: .82rem; line-height: 1.6; max-height: none; }
