.tma{font-family:inherit;color:#00334e;font-size:1rem;line-height:1.5}
.tma *{box-sizing:border-box}
.tma .tma-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tma .tma-schritt{border:0;margin:0;padding:0;min-width:0}
.tma .tma-schritt[hidden]{display:none}
.tma .tma-legende{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tma .tma-fortschritt{display:grid;gap:8px;margin:0 0 18px;font-size:.88rem;color:#56616b;font-weight:600}
.tma .tma-fortschritt__spur{display:block;height:4px;background:#e3e8ec;border-radius:2px;overflow:hidden}
.tma .tma-fortschritt__spur i{display:block;height:100%;width:50%;background:#59b9ea;border-radius:2px;transition:width .25s}
.tma[data-schritt="2"] .tma-fortschritt__spur i{width:100%}
.tma .tma-feld{margin:0 0 14px}
.tma .tma-reihe{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.tma .tma-reihe .tma-feld--plz{max-width:none}
.tma .tma-reihe:has(.tma-feld--plz){grid-template-columns:120px 1fr}
.tma label{display:block;font-weight:500;font-size:.92rem;margin:0 0 6px;color:#00334e}
.tma label small{font-weight:400;color:#56616b}
.tma input[type="text"],.tma input[type="email"],.tma input[type="tel"],.tma select,.tma textarea{display:block;width:100%;min-height:48px;padding:11px 14px;border:1px solid #c5ced5;border-radius:5px;background:#fff;color:#00334e;font:inherit;font-size:1rem;line-height:1.4;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.tma select{appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231c2126' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:18px}
.tma textarea{min-height:110px;resize:vertical}
.tma input:focus,.tma select:focus,.tma textarea:focus{outline:none;border-color:#00334e;box-shadow:0 0 0 3px rgba(89,185,234,.35)}
.tma [aria-invalid="true"]{border-color:#b3261e!important;box-shadow:0 0 0 3px rgba(179,38,30,.12)!important}
.tma .tma-feldfehler{color:#b3261e;font-size:.86rem;margin:6px 0 0}
.tma .tma-feld--check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start}
.tma .tma-feld--check input{width:20px;height:20px;margin:2px 0 0;accent-color:#00334e}
.tma .tma-feld--check label{font-weight:400;font-size:.9rem;color:#38424b;margin:0}
.tma .tma-feld--check .tma-feldfehler{grid-column:2}
.tma .tma-upload{display:flex;gap:12px;align-items:center;padding:14px;border:1px dashed #9aa7b1;border-radius:5px;background:#f6f8f9;cursor:pointer;font-weight:400}
.tma .tma-upload:hover{border-color:#00334e;background:#e8f5fc}
.tma .tma-upload__icon{width:26px;height:26px;flex:none;color:#00334e}
.tma .tma-upload strong{display:block;font-weight:650}
.tma .tma-upload small{display:block;color:#56616b;font-size:.84rem}
.tma .tma-upload__input{position:absolute;width:1px;height:1px;opacity:0}
.tma .tma-upload__input:focus-visible + .tma-upload__liste,.tma .tma-upload:focus-within{outline:3px solid #59b9ea}
.tma .tma-upload__liste{font-size:.86rem;color:#38424b;margin:6px 0 0}
.tma .tma-aktionen{display:flex;gap:10px;margin-top:6px}
.tma .tma-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 22px;border-radius:5px;border:2px solid #59b9ea;background:#59b9ea;color:#fff;font:inherit;font-size:1rem;font-weight:500;line-height:1.2;cursor:pointer;text-transform:none;letter-spacing:0;white-space:normal;text-align:center;transition:background-color .15s,border-color .15s}
.tma .tma-btn:hover,.tma .tma-btn:focus{background:#3ea7dd;border-color:#3ea7dd;color:#fff}
.tma .tma-btn:focus-visible{outline:3px solid #59b9ea;outline-offset:2px}
.tma .tma-btn--haupt{flex:1}
.tma .tma-btn--zurueck{background:#fff;color:#00334e;border-color:#c5ced5}
.tma .tma-btn--zurueck:hover,.tma .tma-btn--zurueck:focus{background:#eef1f3;border-color:#9aa7b1;color:#00334e}
.tma .tma-btn[disabled]{opacity:.65;cursor:progress}
.tma .tma-hinweis{font-size:.84rem;color:#56616b;margin:12px 0 0}
.tma .tma-meldung{padding:14px 16px;border-radius:5px;margin:0 0 16px;font-size:.95rem}
.tma .tma-meldung[hidden]{display:none}
.tma .tma-meldung--ok{background:#e7f5ec;border:1px solid #9fd2b1;color:#14532d}
.tma .tma-meldung--fehler{background:#fdecea;border:1px solid #f1b0aa;color:#7f1d1d}
.tma.is-gesendet .tma-schritt,.tma.is-gesendet .tma-fortschritt{display:none}
@media (max-width:480px){.tma .tma-reihe{grid-template-columns:1fr}.tma .tma-reihe:has(.tma-feld--plz){grid-template-columns:100px 1fr}}
