/* Zusatz-Styles nur für /agb/ – bewusst separat von style.css,
   damit für die übrigen Seiten kein Cache-Buster-Bump nötig ist.
   Bei Änderungen: ?v=N in agb/index.html erhöhen. */

.legal-content h3{ font-size:1rem; color:var(--navy-950); margin:28px 0 10px; }
.legal-content .agb-h3-note{ font-weight:400; color:var(--ink-soft); }

.agb-download{ background:var(--bg-alt); border:1px solid var(--line); border-radius:var(--radius-md); padding:20px 22px; margin:0 0 32px; }
.agb-download p{ margin:0; }
.agb-download-actions{ display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; margin-top:14px !important; }

.agb-toc{ border-left:3px solid var(--line); padding:4px 0 4px 18px; margin:28px 0 8px; }
.agb-toc-title{ font-weight:700; color:var(--navy-950) !important; margin:0 0 8px; }
.agb-toc ul li{ margin:4px 0; }
.agb-toc a{ color:var(--ink-soft); text-decoration:none; }
.agb-toc a:hover{ text-decoration:underline; }

.legal-content ol.agb-list{ list-style:decimal; padding-left:1.6em; margin:0 0 8px; color:var(--ink-soft); }
.legal-content ol.agb-list li{ margin:0 0 10px; padding-left:4px; }
.legal-content ul.agb-bullets{ list-style:disc; padding-left:1.6em; margin:0 0 12px; color:var(--ink-soft); }
.legal-content ul.agb-bullets li{ margin:0 0 8px; }
.legal-content li b, .legal-content p b{ color:var(--navy-950); font-weight:700; }
.agb-stand{ margin-top:20px; font-weight:600; }

.agb-table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; margin:0 0 8px; }
.agb-table{ width:100%; border-collapse:collapse; font-size:.95rem; color:var(--ink-soft); }
.agb-table th, .agb-table td{ text-align:left; vertical-align:top; padding:10px 12px; border:1px solid var(--line); }
.agb-table th{ background:var(--bg-alt); color:var(--navy-950); font-weight:600; }
@media (max-width:600px){
  .agb-table{ font-size:.875rem; }
  .agb-table th, .agb-table td{ padding:8px; }
  .agb-table th, .agb-table td{ -webkit-hyphens:auto; hyphens:auto; overflow-wrap:break-word; }
}

.legal-content h2[id]{ scroll-margin-top:96px; }
