/* Unterseiten von symkura.app (bau_live.py): Rechtstexte, Konto löschen, 404, Sprachwahl. Farben, Kopf, Fuß und Grundschrift
   kommen aus site.css (Entwurf A in Nebula); hier nur Aufbau und Typografie der Unterseiten. */
html[data-lang=de] [data-lb=en],html[data-lang=en] [data-lb=de]{display:none!important}
html:not([data-lang]) .kopf[data-lb=en],html:not([data-lang]) footer[data-lb=en]{display:none}
main.unter::before{content:none}
main.unter{min-height:60vh}
.unter h1{font-weight:500;font-size:clamp(2rem,1.1rem + 2.4vw,3.6rem);line-height:1.04;letter-spacing:-.035em;margin:0 0 .9rem;max-width:22ch;text-wrap:balance;overflow-wrap:break-word;hyphens:auto}
.txtlink,.unter .rt a,.rel .rel-mail a,.appkarte a,.weg p a:not(.knopf){color:var(--acc-tx);text-underline-offset:.2em}
/* Rechtstexte: Text in Lesebreite, daneben Rechtliches und Inhaltsverzeichnis; die Fläche füllen Spalten und feste Randteile */
.lg{display:grid;grid-template-columns:minmax(0,1fr);gap:2.5rem var(--gap);align-items:start;padding-block:clamp(2rem,1rem + 3vw,5.5rem) var(--sec)}
.rt .page-header{margin-bottom:clamp(1.6rem,1rem + 1.5vw,3rem)}
.rt .meta{color:var(--muted);font-size:.95rem;margin:0}
.rt .page-header .sub{font-size:clamp(1.05rem,.95rem + .3vw,1.3rem);margin:0}
.rt .content{display:block}
.rt h2{font-weight:600;font-size:1.15rem;letter-spacing:-.01em;line-height:1.35;margin:2.6rem 0 .7rem;max-width:none;text-wrap:pretty}
.rt .col>h2:first-child{margin-top:0}
.rt .col p{color:var(--ink2);margin:0 0 1.15rem;max-width:72ch}
.rt h2[id]{scroll-margin-top:6rem}
.rel,.toc{background:var(--card);border:1px solid var(--hair);border-radius:16px;padding:1.05rem 1.25rem 1.15rem}
.rel-h,.toc-h{font-weight:600;font-size:.98rem;margin:0 0 .5rem;color:var(--ink)}
.rel ul,.toc ol{list-style:none;margin:0;padding:0}
.rel li a,.toc li a{display:block;padding:.42rem 0;color:var(--ink2);text-decoration:none;line-height:1.35}
.rel li a:hover,.toc li a:hover{color:var(--acc-tx);text-decoration:underline;text-underline-offset:.2em}
.rel a[aria-current]{color:var(--acc-tx);font-weight:600}
.rel .rel-mail{margin:.9rem 0 0;padding-top:.9rem;border-top:1px solid var(--hair);font-size:.92rem;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
.toc{display:none}
.toc li a{font-size:.94rem}
/* Impressum: zwei kurze Spalten; Kontakt: Formular und Adressen */
.kurz .content,.kontakt .content{display:grid;grid-template-columns:minmax(0,1fr);gap:0 var(--gap)}
.kontakt .form-card,.info-card{background:var(--card);border:1px solid var(--hair);border-radius:20px;padding:clamp(1.3rem,.8rem + 1.6vw,2.6rem)}
.kontakt .info-side{display:grid;gap:.9rem;align-content:start;order:-1;margin-bottom:.9rem}
.kontakt .info-card{padding:1.15rem 1.3rem 1.25rem}
.info-label{font-size:.88rem;color:var(--muted);margin:0 0 .2rem}
.info-card h3{font-weight:600;font-size:1.08rem;margin:0 0 .35rem}
.info-card p{margin:0}
.form-group{margin-bottom:1.15rem}
.form-group label{display:block;font-weight:600;font-size:.95rem;margin:0 0 .45rem;color:var(--ink)}
.form-group input,.form-group textarea,.form-group select{width:100%;font:inherit;font-size:1rem;color:var(--ink);background:var(--paper);border:1px solid var(--hair2);border-radius:12px;padding:.8rem .95rem;line-height:1.45}
.form-group textarea{min-height:9rem;resize:vertical}
.form-group select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:2.6rem;background-image:var(--chev);background-repeat:no-repeat;background-position:right 1rem center;background-size:12px 8px}
.form-group select option{background:var(--card);color:var(--ink)}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted);opacity:1}
.form-group input:focus-visible,.form-group textarea:focus-visible,.form-group select:focus-visible{outline:2.5px solid var(--acc-tx);outline-offset:2px;border-color:var(--acc)}
.submit-btn{display:inline-flex;align-items:center;min-height:2.85rem;padding:0 1.5rem;border:0;border-radius:12px;background:var(--acc);color:var(--onacc);font:inherit;font-weight:600;cursor:pointer}
.submit-btn:hover{background:var(--acchov)}.submit-btn:disabled{opacity:.55;cursor:not-allowed}
.success-msg{display:none;padding:1.4rem;background:var(--accsoft);border:1px solid var(--accbd);border-radius:16px}
.success-msg p{margin:0;color:var(--ink)}
:root{--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%235D5D5F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
html[data-theme=dark]{--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23BDBCBF' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
@media (prefers-color-scheme:dark){html:not([data-theme]){--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23BDBCBF' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}}
@media (min-width:760px){.kurz .content{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){
 .lg{grid-template-columns:minmax(12.5rem,16rem) minmax(0,1fr)}
 .lg>.rt{grid-column:2;grid-row:1}
 .lg>.rel{grid-column:1;grid-row:1;position:sticky;top:6rem}
 .lg.mit-toc{grid-template-rows:auto 1fr}
 .lg.mit-toc>.rt{grid-row:1/span 2;max-width:44rem}
 .lg.mit-toc>.rel{position:static}
 .lg .toc{display:block;grid-column:1;grid-row:2;position:sticky;top:6rem;max-height:calc(100vh - 7.5rem);overflow:auto}
 .kontakt .content{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
 .kontakt .info-side{order:0;margin:0}
}
@media (min-width:1280px){
 .lg.mit-toc{grid-template-columns:minmax(12.5rem,16rem) minmax(0,44rem) minmax(12.5rem,1fr);grid-template-rows:auto}
 .lg.mit-toc>.rt{grid-column:2;grid-row:1}
 .lg.mit-toc>.rel{grid-column:1;grid-row:1;position:sticky;top:6rem}
 .lg.mit-toc .toc{grid-column:3;grid-row:1}
}
/* Konto löschen */
.del{padding-block:clamp(2rem,1rem + 3vw,5.5rem) var(--sec)}
.del-top{display:grid;grid-template-columns:minmax(0,1fr);gap:1.6rem var(--gap);align-items:end;margin-bottom:clamp(1.8rem,1rem + 2.4vw,4rem)}
.del .lead{margin:0;max-width:52ch}
.appkarte{margin:0;background:var(--card);border:1px solid var(--hair);border-radius:16px;padding:.35rem 1.25rem}
.appkarte div{display:grid;grid-template-columns:minmax(7rem,9.5rem) minmax(0,1fr);gap:.8rem;padding:.8rem 0;border-bottom:1px solid var(--hair)}
.appkarte div:last-child{border-bottom:0}
.appkarte dt{font-weight:600;font-size:.95rem}.appkarte dd{margin:0;color:var(--ink2);overflow-wrap:break-word}
@media (max-width:559px){.appkarte div{grid-template-columns:minmax(0,1fr);gap:.15rem}}
.wege{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-bottom:1rem}
.weg,.karte{background:var(--card);border:1px solid var(--hair);border-radius:20px;padding:clamp(1.3rem,.8rem + 1.6vw,2.6rem)}
.weg.haupt{background:var(--probg);border:1.5px solid var(--probd);color:var(--protx)}
.weg h2,.karte h2{font-weight:500;font-size:clamp(1.4rem,1rem + 1vw,2.1rem);letter-spacing:-.025em;line-height:1.15;margin:0 0 1rem;max-width:none}
.karte h3{font-weight:600;font-size:1.05rem;margin:1.4rem 0 .4rem}.karte h2+h3{margin-top:0}
.weg p,.karte p{color:var(--ink2);max-width:62ch}
.weg.haupt p{color:var(--protx)}
.weg.haupt .klein{color:var(--profine);font-size:.94rem;margin:0}
.knopfzeile{margin:1.6rem 0 1rem}
.knopf{display:inline-flex;align-items:center;min-height:2.85rem;padding:.55rem 1.3rem;border-radius:12px;background:var(--acc);color:var(--onacc);font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.knopf:hover{background:var(--acchov)}
.schritte{list-style:none;counter-reset:s;margin:0 0 1.4rem;padding:0}
.schritte li{counter-increment:s;display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.6rem;padding:.75rem 0;border-bottom:1px solid var(--hair);color:var(--ink2)}
.schritte li::before{content:counter(s);display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--accsoft);color:var(--acc-tx);font:600 .88rem/1 'Geist Mono',ui-monospace,monospace}
.drei{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.liste{list-style:none;margin:0;padding:0}
.liste li{padding:.75rem 0 .75rem 1.2rem;border-top:1px solid var(--hair);color:var(--ink2);position:relative}
.liste li::before{content:"";position:absolute;left:0;top:1.45rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--acc)}
.mehr{margin:2rem 0 0;color:var(--ink2)}
@media (min-width:900px){.wege{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}}
@media (min-width:1024px){.del-top{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
@media (min-width:1280px){.drei{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* 404 */
.nf{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--gap);align-items:center;padding-block:clamp(3rem,1rem + 6vw,9rem) var(--sec)}
.nf .lead{margin-bottom:1.6rem}
.nfl{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.75rem}
.nfl a{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.2rem;border-radius:12px;border:1px solid var(--hair2);background:var(--surf);color:var(--ink);text-decoration:none;font-weight:500}
.nfl li:first-child a{background:var(--acc);border-color:var(--acc);color:var(--onacc);font-weight:600}
.nfl a:hover{border-color:var(--acc)}
.nfring{display:none;aspect-ratio:1;width:min(100%,26rem);justify-self:center;background:var(--acc);opacity:calc(var(--ringop) * 2.4);-webkit-mask:var(--grossring) center/contain no-repeat;mask:var(--grossring) center/contain no-repeat}
@media (min-width:900px){.nf{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.nfring{display:block}}
/* Sprachwahl / */
.wahlseite{padding-block:clamp(2.5rem,1rem + 5vw,8rem) var(--sec)}
.wahlseite h1{max-width:none}.wahlseite .tr{color:var(--muted);font-weight:300}
.wahlen{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin-top:2rem}
.wahl{display:flex;flex-direction:column;gap:.7rem;padding:clamp(1.4rem,.8rem + 2vw,3rem);background:var(--card);border:1px solid var(--hair);border-radius:20px;text-decoration:none;color:var(--ink)}
.wahl:hover{border-color:var(--accbd)}
.wahl .sp{font-weight:600;font-size:1.05rem;color:var(--acc-tx)}
.wahl .sz{font-weight:500;font-size:clamp(1.35rem,1rem + 1vw,2.2rem);letter-spacing:-.025em;line-height:1.15}
.wahl .go{color:var(--ink2)}
@media (min-width:760px){.wahlen{grid-template-columns:1fr 1fr}}
@media (min-width:1024px){.wahlfuss .made{grid-column:3}}
