/* Rechtstexte (Impressum, Datenschutz, AVV, Nutzungsbedingungen, Kontakt) — gleiches Aussehen wie die Startseite */
:root{--ink:#0f172a;--sub:#334155;--muted:#64748b;--line:#e2e8f0;--bg:#f8fafc;--card:#fff;--blue:#2563eb;--blue-d:#1d4ed8;--green:#16a34a;--red:#dc2626}
@media (prefers-color-scheme:dark){:root{--ink:#f1f5f9;--sub:#cbd5e1;--muted:#94a3b8;--line:#334155;--bg:#0f172a;--card:#1e293b;--blue:#60a5fa;--blue-d:#93c5fd}}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6}
a{color:var(--blue)}
.top{max-width:820px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:17px;text-decoration:none;color:var(--ink)}
.brand img{width:30px;height:30px;border-radius:8px}
.top nav a{font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;margin-left:14px}
main{max-width:820px;margin:0 auto;padding:12px 20px 40px}
main h1{font-size:30px;line-height:1.15;letter-spacing:-.015em;font-weight:800;margin:6px 0 6px}
main .stand{color:var(--muted);font-size:14px;margin-bottom:22px}
main h2{font-size:19px;font-weight:750;margin:30px 0 8px}
main h3{font-size:16px;font-weight:700;margin:18px 0 6px}
main p,main li{font-size:15.5px;color:var(--sub)}
main p{margin-bottom:10px}
main ul,main ol{margin:0 0 12px 20px;display:grid;gap:5px}
main .box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin:12px 0}
main .note{background:var(--card);border-left:3px solid var(--blue);border-radius:0 12px 12px 0;padding:12px 16px;margin:14px 0;font-size:15px;color:var(--sub)}
main table{width:100%;border-collapse:collapse;margin:8px 0 14px;font-size:14.5px}
main th,main td{text-align:left;vertical-align:top;padding:8px 10px;border-bottom:1px solid var(--line);color:var(--sub)}
main th{color:var(--ink);font-weight:700;background:var(--card)}
main .toc{columns:2;column-gap:28px;margin:6px 0 10px 18px}
main .toc li{break-inside:avoid;font-size:14.5px}
footer{max-width:820px;margin:0 auto;padding:22px 20px 40px;color:var(--muted);font-size:14px;border-top:1px solid var(--line)}
footer a{color:var(--muted);text-decoration:none;margin-right:14px;display:inline-block;padding:4px 0}
form label{display:block;font-weight:650;font-size:14.5px;margin:14px 0 6px;color:var(--ink)}
form input,form textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:11px;padding:11px 12px}
form textarea{min-height:150px;resize:vertical}
form button{margin-top:18px;min-height:48px;padding:0 22px;border:none;border-radius:12px;background:var(--blue);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
form button:disabled{opacity:.6}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ok{color:var(--green);font-weight:650}.err{color:var(--red);font-weight:650}
@media (max-width:600px){main h1{font-size:25px}main .toc{columns:1}main table,main thead,main tbody,main tr,main th,main td{display:block}main thead{display:none}main td{border:none;padding:2px 0}main tr{border-bottom:1px solid var(--line);padding:8px 0}main td:first-child{font-weight:700;color:var(--ink)}}
@media print{.top nav,footer,.noprint{display:none}body{background:#fff}}
