/* Stepper der oeffentlichen Anmeldungen (Taufe, Trauung, Sterbefall) - 08.10.2026.
   Ruhig wie die Assistenten im Pfarrbuero: offene Schritte grau, erledigte mit Haken, Akzent nur am
   aktuellen. Mobil zuerst; Beschriftung am Handy nur beim aktuellen Schritt. */
.anm-seite{--gold:#c9a227;--gold-dunkel:#7a5c00;--bordeaux:#7a2832;--tinte:#1a1a1a;--mittel:#4a4a4a;--leise:#5f5a52;--warm:#f7f1e6;--linie:#e0d8ce;
  max-width:640px;margin:0 auto;padding:.4rem 16px 2.5rem;font-family:Inter,system-ui,sans-serif;color:var(--mittel);line-height:1.55}
.anm-kopf{padding:.6rem 0 .3rem;text-align:center}
.anm-kopf a{font-size:.8rem;color:var(--gold-dunkel);text-decoration:none}
.anm-kopf h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(1.25rem,4vw,1.6rem);color:var(--tinte);margin:.15rem 0 0}
.anm-leiste{display:flex;list-style:none;margin:.6rem 0 .2rem;padding:0}
.anm-leiste li{flex:1;position:relative;min-width:0}
.anm-leiste li+li::before{content:"";position:absolute;top:15px;right:50%;width:100%;height:2px;background:var(--linie)}
.anm-leiste li.fertig+li::before,.anm-leiste li.fertig+li.aktiv::before{background:var(--gold)}
.anm-leiste button{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.15rem;width:100%;min-height:44px;background:none;border:0;padding:0;font:inherit;color:var(--leise);cursor:pointer}
.anm-leiste button:disabled{cursor:default}
.anm-leiste .nr{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;border:2px solid #cfc5b5;font-size:.8rem;font-weight:700}
.anm-leiste .t{font-size:.72rem;font-weight:600;text-align:center;line-height:1.15}
.anm-leiste li.fertig .nr{border-color:var(--gold);background:#fbf5e3;color:var(--gold-dunkel)}
.anm-leiste li.aktiv .nr{background:var(--gold-dunkel);border-color:var(--gold-dunkel);color:#fff}
.anm-leiste li.aktiv .t{color:var(--gold-dunkel)}
.anm-leiste button:focus-visible .nr{box-shadow:0 0 0 3px #ffd36b}
@media(max-width:560px){.anm-leiste .t{display:none}.anm-leiste li.aktiv .t{display:block}}
.anm-stand{position:absolute;left:-9999px}
.anm-schritt{border:1px solid var(--linie);border-radius:14px;background:#fff;padding:.9rem clamp(.9rem,3vw,1.4rem) 1rem;margin-top:.5rem}
.anm-titel{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:1.3rem;color:var(--tinte);margin:0 0 .6rem;outline:none}
.anm-schritt h3{font-size:.95rem;color:var(--tinte);margin:1rem 0 .3rem}
.anm-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:0 .8rem}
.anm-feld{display:flex;flex-direction:column;margin:.35rem 0}
.anm-feld[hidden],.anm-block[hidden]{display:none}
.anm-feld label{font-size:.84rem;font-weight:600;color:var(--tinte);margin-bottom:.2rem}
.anm-feld label .pflicht{color:var(--bordeaux)}
.anm-seite input:not([type=checkbox]):not([type=radio]),.anm-seite select,.anm-seite textarea{width:100%;min-height:44px;padding:.55rem .7rem;border:1px solid #cfc5b5;border-radius:9px;font:inherit;font-size:16px;background:#fdfbf7;color:var(--tinte)}
.anm-seite textarea{min-height:90px;resize:vertical}
.anm-seite input:focus,.anm-seite select:focus,.anm-seite textarea:focus{outline:none;border-color:var(--gold-dunkel);box-shadow:0 0 0 3px rgba(201,162,39,.25)}
.anm-feld .anm-tipp{font-size:.78rem;color:var(--leise);margin-top:.15rem}
.anm-feld.fehler input,.anm-feld.fehler select,.anm-feld.fehler textarea{border-color:#b42318}
.anm-fehler,.anm-fehler-gruppe{font-size:.8rem;color:#b42318;margin-top:.15rem}
.anm-hinweis{border-radius:10px;padding:.55rem .8rem;margin:.6rem 0;font-size:.86rem;line-height:1.45;background:#fbf5e3;color:#5c4400}
.anm-hinweis.info{background:#eef5f6;color:#1f4752}
.anm-hinweis:empty{display:none}
.anm-wahl{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}
.anm-wahl label,.anm-haken{display:flex;align-items:flex-start;gap:.55rem;min-height:44px;font-weight:500;color:var(--mittel);cursor:pointer;padding-top:.6rem}
.anm-wahl input,.anm-haken input{width:20px;height:20px;margin-top:.1rem;accent-color:var(--gold-dunkel);flex:0 0 auto}
.anm-liste{list-style:none;margin:.4rem 0;padding:0;display:flex;flex-direction:column;gap:.35rem}
.anm-liste li{border:1px solid var(--linie);border-left:4px solid var(--gold);border-radius:9px;padding:.45rem .7rem;font-size:.88rem}
.anm-liste li small{display:block;color:var(--leise)}
.anm-nav{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid #efe8dc}
.anm-nav button{min-height:44px;padding:.5rem 1.3rem;border-radius:999px;font:inherit;font-weight:700;cursor:pointer}
.anm-zurueck{background:#fff;border:1.5px solid var(--linie);color:var(--mittel)}
.anm-weiter{background:var(--gold-dunkel);border:0;color:#fff}
.anm-senden{background:var(--bordeaux);border:0;color:#fff}
.anm-senden:disabled{opacity:.6;cursor:wait}
.anm-zusammenfassung section{border-bottom:1px solid #efe8dc;padding:.3rem 0 .5rem}
.anm-zf-kopf{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.anm-zf-kopf h3{margin:.4rem 0}
.anm-aendern{min-height:44px;background:none;border:0;color:var(--gold-dunkel);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}
.anm-zusammenfassung table{border-collapse:collapse;width:100%;font-size:.86rem}
.anm-zusammenfassung th{text-align:left;font-weight:500;color:var(--leise);width:42%;padding:.2rem .4rem .2rem 0;vertical-align:top}
.anm-zusammenfassung td{padding:.2rem 0;color:var(--tinte);word-break:break-word}
.anm-leer{font-size:.84rem;color:var(--leise);margin:0}
.anm-meldung{background:#fdecea;color:#8a1c12;border-radius:10px;padding:.6rem .8rem;margin-top:.8rem;font-size:.88rem}
.anm-erfolg{text-align:center;border:1px solid var(--linie);border-radius:14px;padding:1.4rem 1rem;margin-top:.6rem}
.anm-erfolg h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:var(--tinte);outline:none}
.anm-code{display:inline-block;font:700 1.4rem/1.2 ui-monospace,monospace;letter-spacing:.1em;color:var(--gold-dunkel);background:#fbf5e3;border:2px solid var(--gold);border-radius:10px;padding:.45rem 1.2rem;margin:.6rem 0}
.anm-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* pg-weilheim-ui.css faerbt jeden <button> per button:not(...) grau und gibt Rand/Polster (E2E 08.10.:
   Knoepfe grau, Schrittleiste der Trauung am Handy zu breit). Gezielt zurueckgesetzt. */
.anm-seite .anm-leiste button{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;color:var(--leise)!important;min-width:0!important}
.anm-seite .anm-leiste li.aktiv button{color:var(--gold-dunkel)!important}
.anm-seite .anm-nav button{padding:.5rem 1.3rem!important;border-radius:999px!important;box-shadow:none!important;font-weight:700!important;min-height:44px!important}
.anm-seite .anm-weiter,.anm-seite .anm-weiter:hover{background:var(--gold-dunkel)!important;color:#fff!important;border:0!important}
.anm-seite .anm-senden,.anm-seite .anm-senden:hover{background:var(--bordeaux)!important;color:#fff!important;border:0!important}
.anm-seite .anm-zurueck,.anm-seite .anm-zurueck:hover{background:#fff!important;color:var(--mittel)!important;border:1.5px solid var(--linie)!important}
.anm-seite .anm-aendern,.anm-seite .anm-aendern:hover{background:none!important;border:0!important;box-shadow:none!important;padding:0 .2rem!important;color:var(--gold-dunkel)!important}
.anm-seite ::placeholder{color:#6b6459;opacity:1}
.anm-seite .anm-haken.anm-feld{flex-direction:row}
/* Zwischenspeichern (08.10.2026): Zeile unter der Navigation, Feld mit Code, "Schon angefangen?" */
.anm-merken-zeile{text-align:center;margin-top:.4rem}
.anm-seite .anm-merken,.anm-seite .anm-merken:hover{background:none!important;border:0!important;box-shadow:none!important;padding:.4rem .6rem!important;min-height:44px;color:var(--gold-dunkel)!important;font:inherit;font-size:.86rem!important;font-weight:600!important;text-decoration:underline;cursor:pointer}
.anm-entwurf{margin-top:.6rem;border:1px dashed var(--gold);border-radius:12px;background:#fffdf7;padding:.7rem .9rem;font-size:.88rem}
.anm-entwurf p{margin:.2rem 0}
.anm-entwurf-code{font:700 1.25rem/1.3 ui-monospace,monospace;letter-spacing:.08em;color:var(--gold-dunkel)}
.anm-entwurf-aktion{display:flex;flex-wrap:wrap;gap:.4rem;margin:.4rem 0}
.anm-seite .anm-entwurf-aktion button,.anm-seite .anm-fortsetzen button,.anm-seite .anm-neu{min-height:44px!important;padding:.4rem 1rem!important;border-radius:999px!important;border:1.5px solid var(--gold-dunkel)!important;background:#fff!important;color:var(--gold-dunkel)!important;font:inherit;font-weight:700!important;box-shadow:none!important;cursor:pointer}
.anm-seite .anm-entwurf-aktion .anm-entwurf-speichern{background:var(--gold-dunkel)!important;color:#fff!important}
.anm-entwurf-meldung:empty,.anm-fortsetzen-meldung:empty{display:none}
.anm-fortsetzen{margin:.4rem 0 0;font-size:.88rem}
.anm-fortsetzen summary{cursor:pointer;color:var(--gold-dunkel);font-weight:600;min-height:44px;display:flex;align-items:center}
.anm-fortsetzen-zeile{display:flex;gap:.5rem;flex-wrap:wrap}
.anm-seite .anm-fortsetzen-zeile input{flex:1 1 12rem;width:auto;text-transform:uppercase;letter-spacing:.06em}
.anm-wiederhergestellt{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .8rem}
/* 08.10.2026: Vorschlaege, Kontakt-Bestaetigung (Einmalcode), QR-Code, schmalere Leiste bei vielen Schritten */
.anm-seite .anm-vorschlag{background:#fbf5e3!important;border-style:dashed!important}
.anm-otp{margin-top:.6rem;border:1px solid var(--linie);border-radius:12px;padding:.6rem .8rem;background:#fffdf7;font-size:.9rem}
.anm-otp:empty{display:none}
.anm-otp-zeile{display:flex;gap:.5rem;flex-wrap:wrap}
.anm-seite .anm-otp-zeile input{flex:1 1 9rem;width:auto;font:700 1.2rem/1.2 ui-monospace,monospace;letter-spacing:.3em;text-align:center}
.anm-seite .anm-otp button{min-height:44px!important;padding:.4rem 1rem!important;border-radius:999px!important;border:1.5px solid var(--gold-dunkel)!important;background:#fff!important;color:var(--gold-dunkel)!important;font:inherit;font-weight:700!important;box-shadow:none!important;cursor:pointer}
.anm-seite .anm-otp .anm-otp-pruefen{background:var(--gold-dunkel)!important;color:#fff!important}
.anm-otp-meldung{min-height:1.2em;margin:.3rem 0 0}.anm-otp-meldung.fehler{color:#b42318;font-weight:600}
[data-qr] img{display:block;margin:.6rem auto;max-width:100%;height:auto;image-rendering:pixelated}
.anm-qr-aktion{justify-content:center}
.anm-seite .anm-qr-aktion button,.anm-seite .anm-qr-laden{display:inline-flex;align-items:center;min-height:44px;padding:.4rem 1rem;border-radius:999px;border:1.5px solid var(--gold-dunkel);background:#fff;color:var(--gold-dunkel);font-weight:700;text-decoration:none}
@media print{.anm-qr-aktion,.anm-kopf a,header,nav,.pg-nav,footer{display:none!important}.anm-erfolg{border:0}}
@media(max-width:560px){.anm-leiste .nr{width:24px;height:24px;font-size:.7rem}.anm-leiste li+li::before{top:12px}
  /* aktive Beschriftung braucht Platz ("Absenden"), sonst laeuft die Leiste bei 9-11 Schritten ueber (E2E 08.10.) */
  .anm-leiste li.aktiv{flex:2.6}.anm-leiste li.aktiv .t{overflow-wrap:anywhere}.anm-leiste li.aktiv+li::before{width:200%}}
