/* Testzugang-Formular tagstamp.de/testzugang/ (Code, 29.09.2026, Übergabe Büro
   „Testzugang als Formular statt Outlook-Vorlage"). Handy zuerst: eine Spalte,
   große Tippflächen; Farben und Abstände aus site.css. Der Entwurf von Design
   (ChatGPT) kann diese Datei ersetzen, die Feldnamen bleiben. */
.tz-formular{max-width:560px;margin-top:var(--sp-5);}
.tz-pflicht-hinweis{color:var(--ink-70);margin:0 0 var(--sp-4);}
.tz-block{border:0;padding:0;margin:0 0 var(--sp-5);}
.tz-block legend{font-family:var(--font-head);font-size:var(--h3);line-height:var(--h3-lh);font-weight:600;padding:0;margin:0 0 var(--sp-3);}
.tz-feld{margin:0 0 var(--sp-4);}
.tz-feld label,.tz-feld .tz-frage{display:block;font-weight:600;margin:0 0 var(--sp-2);}
.tz-feld .tz-zusatz{font-weight:400;color:var(--ink-70);}
.tz-stern{color:var(--accent-dark);}
.tz-feld input[type=text],.tz-feld input[type=email],.tz-feld input[type=tel],.tz-feld select,.tz-feld textarea{
  display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:4px;
  font:inherit;font-size:16px;color:var(--ink);background:var(--white);}
.tz-feld textarea{min-height:120px;resize:vertical;}
.tz-feld input:focus-visible,.tz-feld select:focus-visible,.tz-feld textarea:focus-visible{outline:3px solid var(--accent);outline-offset:1px;}
.tz-feld input[aria-invalid=true],.tz-feld select[aria-invalid=true]{border:2px solid #b3261e;}
.tz-fehler{display:block;color:#b3261e;margin:var(--sp-1) 0 0;font-size:15px;}
.tz-fehler:empty{display:none;}
.tz-zaehler{display:block;color:var(--ink-70);font-size:14px;margin-top:var(--sp-1);text-align:right;}
.tz-wahl{display:flex;flex-wrap:wrap;gap:var(--sp-2);border:0;padding:0;margin:0;}
.tz-wahl label{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border:1px solid var(--line);border-radius:4px;font-weight:400;cursor:pointer;margin:0;}
.tz-wahl input{width:20px;height:20px;margin:0;accent-color:var(--accent);}
.tz-wahl label:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);}
.tz-haken{display:flex;gap:12px;align-items:flex-start;}
.tz-haken input{flex:none;width:22px;height:22px;margin:2px 0 0;accent-color:var(--accent);}
.tz-haken label{font-weight:400;margin:0;}
.tz-knoepfe{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center;margin-top:var(--sp-4);}
.tz-knoepfe .btn{min-height:48px;}
.tz-meldung{margin-top:var(--sp-3);}
.tz-danke{max-width:560px;margin-top:var(--sp-5);padding:var(--sp-4);background:var(--bg-alt);border-left:4px solid var(--accent);}
.tz-danke h2{margin:0 0 var(--sp-2);}
.tz-danke:focus{outline:none;}
.tz-honig{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;}
@media (max-width:639px){
  .tz-knoepfe .btn{width:100%;text-align:center;}
  .tz-wahl label{flex:1 1 auto;}
}
