/*
 * ANBITA – Anmeldung und Registrierung
 * Einheitliche, kompakte Darstellung für Smartphone, App, Tablet, Laptop und PC.
 */
.anbita-auth-combined,
.anbita-auth-combined input,
.anbita-auth-combined select,
.anbita-auth-combined button,
.anbita-auth-combined a{
    font-family:Arial, Helvetica, sans-serif;
}
/* Überschriften ohne doppelte Trennstriche. */
.anbita-auth-combined > .portal-logo-heading .portal-heading-line,
.anbita-auth-combined .anbita-auth-window-title::before,
.anbita-auth-combined .anbita-auth-window-title::after,
.anbita-auth-combined .anbita-register-box > h2::before,
.anbita-auth-combined .anbita-register-box > h2::after{
    display:none!important;
    content:none!important;
}
.anbita-auth-combined .anbita-auth-window-title,
.anbita-auth-combined .anbita-register-box > h2{
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    background-image:none!important;
    text-decoration:none!important;
}

/* Registrieren bleibt rot, bis wirklich alle Pflichtprüfungen erfüllt sind. */
.anbita-auth-combined .anbita-register-submit{
    background:#cf2027!important;
    border:1px solid #a9151b!important;
    color:#ffffff!important;
    opacity:1!important;
    cursor:not-allowed!important;
}
.anbita-auth-combined .anbita-register-submit.is-ready:not(:disabled){
    background:#198f3d!important;
    border-color:#116c2d!important;
    color:#ffffff!important;
    cursor:pointer!important;
}
.anbita-auth-combined .anbita-register-submit:disabled{
    background:#cf2027!important;
    border-color:#a9151b!important;
    color:#ffffff!important;
    opacity:1!important;
}

/* Zurück immer gelb mit schwarzer Schrift. */
.anbita-auth-combined .anbita-register-close,
.anbita-auth-combined .anbita-register-close:visited,
.anbita-auth-combined .anbita-register-close:hover,
.anbita-auth-combined .anbita-register-close:focus{
    background:#ffd83d!important;
    border:1px solid #c9a700!important;
    color:#111111!important;
    text-decoration:none!important;
}

.anbita-auth-combined .anbita-register-optional{
    font-weight:400!important;
    opacity:.78;
}
.anbita-auth-combined .anbita-register-field-status.is-checking{
    color:#8a5a00!important;
}


/* Technisches Bot-Feld niemals sichtbar ausgeben. */
.anbita-auth-combined .anbita-register-honey{
    position:absolute!important;
    left:-10000px!important;
    top:auto!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Hinweisfenster nur bei einer Meldung als echtes Overlay öffnen. */
.anbita-auth-combined .anbita-register-modal{
    display:none!important;
    position:fixed!important;
    inset:0!important;
    z-index:10000!important;
    align-items:center!important;
    justify-content:center!important;
    padding:18px!important;
    background:rgba(0,0,0,.62)!important;
    box-sizing:border-box!important;
}
.anbita-auth-combined .anbita-register-modal.is-open{
    display:flex!important;
}
.anbita-auth-combined .anbita-register-modal-box{
    width:100%!important;
    max-width:420px!important;
    padding:20px 18px!important;
    border:1px solid rgba(31,91,216,.38)!important;
    border-radius:14px!important;
    background:#ffffff!important;
    color:#111111!important;
    box-sizing:border-box!important;
    text-align:center!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
    line-height:1.45!important;
}
.anbita-auth-combined .anbita-register-modal-box p{
    margin:0 0 16px!important;
}
.anbita-auth-combined .anbita-register-modal-close{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:84px!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 18px!important;
    border-radius:9px!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
}
html.dark-mode .anbita-auth-combined .anbita-register-modal-box,
body.dark-mode .anbita-auth-combined .anbita-register-modal-box{
    background:#171717!important;
    color:#ffffff!important;
    border-color:rgba(255,255,255,.24)!important;
}

/* Passwort-vergessen-Fenster: kompakt, gut antippbar und auch in der App nutzbar. */
.anbita-auth-combined .anbita-password-modal-box{
    max-width:430px!important;
    text-align:left!important;
}
.anbita-auth-combined .anbita-password-modal-box h2{
    margin:0 0 12px!important;
    text-align:center!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:22px!important;
    line-height:1.25!important;
}
.anbita-auth-combined .anbita-password-recovery-intro{
    margin:0 0 14px!important;
    text-align:center!important;
}
.anbita-auth-combined .anbita-password-recovery-form{
    display:flex!important;
    flex-direction:column!important;
    gap:12px!important;
    width:100%!important;
}
.anbita-auth-combined .anbita-password-recovery-form > label{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    margin:0!important;
    font-size:16px!important;
    font-weight:700!important;
}
.anbita-auth-combined .anbita-password-recovery-form input{
    width:100%!important;
    min-height:46px!important;
    padding:10px 12px!important;
    border:1px solid rgba(0,0,0,.28)!important;
    border-radius:9px!important;
    box-sizing:border-box!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
}
.anbita-auth-combined .anbita-password-recovery-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:10px 12px!important;
    margin-top:4px!important;
}
.anbita-auth-combined .anbita-password-recovery-actions .anbita-login-button,
.anbita-auth-combined .anbita-password-recovery-actions .anbita-register-modal-close{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:104px!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 18px!important;
    border-radius:9px!important;
    box-sizing:border-box!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
    line-height:1.2!important;
    text-decoration:none!important;
}
.anbita-auth-combined .anbita-password-recovery-message{
    margin:0 0 16px!important;
    padding:12px 14px!important;
    border:1px solid #6bad7c!important;
    border-radius:9px!important;
    background:#edf9f0!important;
    color:#124c22!important;
    font-size:16px!important;
    line-height:1.45!important;
    text-align:left!important;
}
.anbita-auth-combined .anbita-password-recovery-close,
.anbita-auth-combined .anbita-password-recovery-close:visited{
    background:#ffd83d!important;
    border:1px solid #c9a700!important;
    color:#111111!important;
}
.anbita-auth-combined .anbita-password-recovery-honey{
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}
html.dark-mode .anbita-auth-combined .anbita-password-recovery-form input,
body.dark-mode .anbita-auth-combined .anbita-password-recovery-form input{
    background:#101010!important;
    color:#ffffff!important;
    border-color:rgba(255,255,255,.3)!important;
}
html.dark-mode .anbita-auth-combined .anbita-password-recovery-message,
body.dark-mode .anbita-auth-combined .anbita-password-recovery-message{
    background:#17331f!important;
    border-color:#5b9b6b!important;
    color:#f1fff4!important;
}

/* Smartphone: Anmeldung und Registrierung immer untereinander anzeigen. */
@media (max-width:760px){
    .anbita-auth-combined{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        gap:20px!important;
        width:100%!important;
        max-width:560px!important;
        margin:0 auto!important;
        padding:0 8px 24px!important;
        box-sizing:border-box!important;
        font-size:16px!important;
        line-height:1.45!important;
    }

    .anbita-auth-combined > .portal-logo-heading{
        display:none!important;
    }

    .anbita-auth-combined.auth-mode-anmelden .anbita-login-section,
    .anbita-auth-combined.auth-mode-anmelden .anbita-register-box,
    .anbita-auth-combined.auth-mode-registrieren .anbita-login-section,
    .anbita-auth-combined.auth-mode-registrieren .anbita-register-box{
        display:block!important;
        visibility:visible!important;
    }

    .anbita-auth-combined .anbita-login-section,
    .anbita-auth-combined .anbita-register-box{
        position:relative!important;
        clear:both!important;
        width:100%!important;
        max-width:520px!important;
        margin:0 auto!important;
        padding:18px 14px 20px!important;
        border:1px solid rgba(31,91,216,.34)!important;
        border-radius:14px!important;
        background:rgba(255,255,255,.97)!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }

    .anbita-auth-combined .anbita-auth-window-title,
    .anbita-auth-combined .anbita-register-box > h2{
        margin:0 0 16px!important;
        padding:0!important;
        border:0!important;
        text-align:center!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:18px!important;
        line-height:1.3!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-login-stage,
    .anbita-auth-combined .anbita-login-box{
        display:block!important;
        width:100%!important;
        max-width:none!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-login-frog,
    .anbita-auth-combined .anbita-auth-switch{
        display:none!important;
    }

    .anbita-auth-combined .anbita-login-form,
    .anbita-auth-combined .anbita-register-form{
        width:100%!important;
        max-width:460px!important;
        margin:0 auto!important;
        box-sizing:border-box!important;
        font-size:16px!important;
    }

    .anbita-auth-combined .anbita-login-form{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:14px!important;
    }

    .anbita-auth-combined .anbita-register-form{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:15px!important;
    }

    .anbita-auth-combined .anbita-login-form > label,
    .anbita-auth-combined .anbita-register-grid > label,
    .anbita-auth-combined .anbita-register-password-row > label,
    .anbita-auth-combined .anbita-register-captcha-field{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:6px!important;
        width:100%!important;
        max-width:420px!important;
        min-width:0!important;
        margin:0 auto!important;
        box-sizing:border-box!important;
        text-align:left!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:700!important;
    }

    .anbita-auth-combined input:not([type="checkbox"]):not([type="hidden"]),
    .anbita-auth-combined select{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:420px!important;
        min-height:46px!important;
        margin:0!important;
        padding:10px 12px!important;
        border-radius:8px!important;
        box-sizing:border-box!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.25!important;
    }

    .anbita-auth-combined .register-field-salutation,
    .anbita-auth-combined .register-field-house,
    .anbita-auth-combined .register-field-zip,
    .anbita-auth-combined .register-field-birthdate,
    .anbita-auth-combined .anbita-register-captcha-field{
        max-width:260px!important;
        margin-left:0!important;
        margin-right:auto!important;
    }

    .anbita-auth-combined .anbita-register-block{
        display:block!important;
        width:100%!important;
        margin:0!important;
        padding:13px 12px!important;
        border:1px solid rgba(31,91,216,.22)!important;
        border-radius:11px!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }

    .anbita-auth-combined .anbita-register-block > h3{
        margin:0 0 12px!important;
        padding:0 0 7px!important;
        border-bottom:1px solid rgba(31,91,216,.18)!important;
        text-align:left!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-register-grid,
    .anbita-auth-combined .anbita-register-password-row{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:13px!important;
        width:100%!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-grid > *,
    .anbita-auth-combined .anbita-register-password-row > *{
        grid-column:1!important;
        min-width:0!important;
    }

    .anbita-auth-combined .anbita-register-field-status,
    .anbita-auth-combined .anbita-register-password-strength{
        display:block!important;
        min-height:0!important;
        margin:1px 0 0!important;
        font-size:14px!important;
        line-height:1.3!important;
        font-weight:400!important;
        text-align:left!important;
    }

    .anbita-auth-combined .anbita-register-check-captcha-row{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:15px!important;
        width:100%!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-checks{
        display:flex!important;
        flex-direction:column!important;
        gap:11px!important;
        width:100%!important;
    }

    .anbita-auth-combined .anbita-register-checkline{
        display:grid!important;
        grid-template-columns:26px minmax(0,1fr)!important;
        align-items:center!important;
        gap:9px!important;
        width:100%!important;
        min-height:34px!important;
    }

    .anbita-auth-combined .anbita-register-checkline input[type="checkbox"]{
        width:24px!important;
        height:24px!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-form label.anbita-register-checktext{
        display:block!important;
        width:auto!important;
        max-width:none!important;
        margin:0!important;
        text-align:left!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:600!important;
    }

    .anbita-auth-combined .anbita-register-captcha-row{
        display:grid!important;
        grid-template-columns:48px minmax(0,1fr)!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
        max-width:420px!important;
        margin:0 auto!important;
    }

    .anbita-auth-combined .anbita-register-captcha-speak{
        width:46px!important;
        min-width:46px!important;
        height:46px!important;
        min-height:46px!important;
        margin:0!important;
        padding:0!important;
        border-radius:50%!important;
        font-size:19px!important;
        touch-action:manipulation!important;
    }

    .anbita-auth-combined .anbita-register-captcha-task{
        min-width:0!important;
        text-align:left!important;
        font-size:16px!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-register-captcha-field{
        grid-column:1 / -1!important;
    }

    .anbita-auth-combined .anbita-login-actions,
    .anbita-auth-combined .anbita-register-actions{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        justify-content:center!important;
        gap:11px 14px!important;
        width:100%!important;
        margin:4px 0 0!important;
        padding:3px 0!important;
        box-sizing:border-box!important;
    }

    .anbita-auth-combined .anbita-login-button,
    .anbita-auth-combined .anbita-register-submit,
    .anbita-auth-combined .anbita-register-close{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:118px!important;
        max-width:100%!important;
        min-height:46px!important;
        margin:0!important;
        padding:10px 18px!important;
        border-radius:9px!important;
        box-sizing:border-box!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.2!important;
        touch-action:manipulation!important;
    }

    .anbita-auth-combined .anbita-password-link{
        display:inline-flex!important;
        align-items:center!important;
        min-height:44px!important;
        padding:6px 4px!important;
        box-sizing:border-box!important;
        font-size:16px!important;
    }

    html.dark-mode .anbita-auth-combined .anbita-login-section,
    body.dark-mode .anbita-auth-combined .anbita-login-section,
    html.dark-mode .anbita-auth-combined .anbita-register-box,
    body.dark-mode .anbita-auth-combined .anbita-register-box{
        background:#171717!important;
        border-color:rgba(255,255,255,.22)!important;
        color:#fff!important;
    }

    html.dark-mode .anbita-auth-combined .anbita-register-block,
    body.dark-mode .anbita-auth-combined .anbita-register-block{
        border-color:rgba(255,255,255,.18)!important;
        background:rgba(255,255,255,.025)!important;
    }
}

/* Installierte App: dieselbe kompakte Reihenfolge auch bei größerer App-Breite. */
body.anbita-app .anbita-auth-combined{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    gap:20px!important;
    width:100%!important;
    max-width:560px!important;
    margin:0 auto!important;
    padding:0 8px 24px!important;
    box-sizing:border-box!important;
    font-size:16px!important;
    line-height:1.45!important;
}

body.anbita-app .anbita-auth-combined > .portal-logo-heading,
body.anbita-app .anbita-auth-combined .anbita-login-frog,
body.anbita-app .anbita-auth-combined .anbita-auth-switch{
    display:none!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-section,
body.anbita-app .anbita-auth-combined .anbita-register-box{
    display:block!important;
    visibility:visible!important;
    position:relative!important;
    clear:both!important;
    width:100%!important;
    max-width:520px!important;
    margin:0 auto!important;
    padding:18px 14px 20px!important;
    border:1px solid rgba(31,91,216,.34)!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
}

body.anbita-app .anbita-auth-combined .anbita-auth-window-title,
body.anbita-app .anbita-auth-combined .anbita-register-box > h2{
    margin:0 0 16px!important;
    padding:0!important;
    border:0!important;
    text-align:center!important;
    font-size:18px!important;
    line-height:1.3!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-stage,
body.anbita-app .anbita-auth-combined .anbita-login-box{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-form,
body.anbita-app .anbita-auth-combined .anbita-register-form{
    width:100%!important;
    max-width:460px!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-form{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-form{
    display:flex!important;
    flex-direction:column!important;
    gap:15px!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-form > label,
body.anbita-app .anbita-auth-combined .anbita-register-grid > label,
body.anbita-app .anbita-auth-combined .anbita-register-password-row > label,
body.anbita-app .anbita-auth-combined .anbita-register-captcha-field{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:6px!important;
    width:100%!important;
    max-width:420px!important;
    min-width:0!important;
    margin:0 auto!important;
    box-sizing:border-box!important;
    text-align:left!important;
    font-size:16px!important;
    line-height:1.35!important;
    font-weight:700!important;
}

body.anbita-app .anbita-auth-combined input:not([type="checkbox"]):not([type="hidden"]),
body.anbita-app .anbita-auth-combined select{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:420px!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 12px!important;
    border-radius:8px!important;
    box-sizing:border-box!important;
    font-size:16px!important;
}

body.anbita-app .anbita-auth-combined .register-field-salutation,
body.anbita-app .anbita-auth-combined .register-field-house,
body.anbita-app .anbita-auth-combined .register-field-zip,
body.anbita-app .anbita-auth-combined .register-field-birthdate,
body.anbita-app .anbita-auth-combined .anbita-register-captcha-field{
    max-width:260px!important;
    margin-left:0!important;
    margin-right:auto!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-block{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:13px 12px!important;
    border:1px solid rgba(31,91,216,.22)!important;
    border-radius:11px!important;
    box-sizing:border-box!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-block > h3{
    margin:0 0 12px!important;
    padding:0 0 7px!important;
    border-bottom:1px solid rgba(31,91,216,.18)!important;
    text-align:left!important;
    font-size:16px!important;
    line-height:1.35!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-grid,
body.anbita-app .anbita-auth-combined .anbita-register-password-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:13px!important;
    width:100%!important;
    margin:0!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-grid > *,
body.anbita-app .anbita-auth-combined .anbita-register-password-row > *{
    grid-column:1!important;
    min-width:0!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-field-status,
body.anbita-app .anbita-auth-combined .anbita-register-password-strength{
    display:block!important;
    margin:1px 0 0!important;
    font-size:14px!important;
    line-height:1.3!important;
    font-weight:400!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-check-captcha-row{
    display:flex!important;
    flex-direction:column!important;
    gap:15px!important;
    width:100%!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-checks{
    display:flex!important;
    flex-direction:column!important;
    gap:11px!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-checkline{
    display:grid!important;
    grid-template-columns:26px minmax(0,1fr)!important;
    align-items:center!important;
    gap:9px!important;
    min-height:34px!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-checkline input[type="checkbox"]{
    width:24px!important;
    height:24px!important;
    margin:0!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-form label.anbita-register-checktext{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    margin:0!important;
    font-size:16px!important;
    line-height:1.35!important;
    font-weight:600!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-captcha-row{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    max-width:420px!important;
    margin:0 auto!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-captcha-speak{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    margin:0!important;
    padding:0!important;
    border-radius:50%!important;
    font-size:19px!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-captcha-task{
    text-align:left!important;
    font-size:16px!important;
    font-weight:700!important;
}

body.anbita-app .anbita-auth-combined .anbita-register-captcha-field{
    grid-column:1 / -1!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-actions,
body.anbita-app .anbita-auth-combined .anbita-register-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:11px 14px!important;
    width:100%!important;
    margin:4px 0 0!important;
    padding:3px 0!important;
}

body.anbita-app .anbita-auth-combined .anbita-login-button,
body.anbita-app .anbita-auth-combined .anbita-register-submit,
body.anbita-app .anbita-auth-combined .anbita-register-close{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:118px!important;
    max-width:100%!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 18px!important;
    border-radius:9px!important;
    box-sizing:border-box!important;
    font-size:16px!important;
    line-height:1.2!important;
}

body.anbita-app .anbita-auth-combined .anbita-password-link{
    display:inline-flex!important;
    align-items:center!important;
    min-height:44px!important;
    padding:6px 4px!important;
    font-size:16px!important;
}

body.dark-mode.anbita-app .anbita-auth-combined .anbita-login-section,
body.dark-mode.anbita-app .anbita-auth-combined .anbita-register-box{
    background:#171717!important;
    border-color:rgba(255,255,255,.22)!important;
    color:#fff!important;
}

body.dark-mode.anbita-app .anbita-auth-combined .anbita-register-block{
    border-color:rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.025)!important;
}


.anbita-auth-combined{
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
    line-height:1.45!important;
}
.anbita-auth-combined label,
.anbita-auth-combined input,
.anbita-auth-combined select,
.anbita-auth-combined button,
.anbita-auth-combined a,
.anbita-auth-combined p{
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
}
body.anbita-auth-modal-open{
    overflow:hidden!important;
}
.anbita-auth-combined .anbita-password-modal:target{
    display:flex!important;
}
.anbita-auth-combined .anbita-password-modal{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
}
.anbita-auth-combined .anbita-password-modal-box{
    max-height:calc(100vh - 36px)!important;
    overflow-y:auto!important;
}

/* PC, Tablet und Laptop: dieselben sauberen Fenster wie mobil, untereinander unter „Anmelden“. */
@media (min-width:761px){
    .anbita-auth-combined.auth-mode-anmelden .anbita-login-section,
    .anbita-auth-combined.auth-mode-anmelden .anbita-register-box,
    .anbita-auth-combined.auth-mode-registrieren .anbita-login-section,
    .anbita-auth-combined.auth-mode-registrieren .anbita-register-box{
        display:block!important;
        visibility:visible!important;
    }

    .anbita-auth-combined{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        gap:24px!important;
        width:100%!important;
        max-width:940px!important;
        margin:0 auto!important;
        padding:0 18px 34px!important;
        box-sizing:border-box!important;
    }

    .anbita-auth-combined > .portal-logo-heading{
        width:100%!important;
        margin-bottom:0!important;
    }

    .anbita-auth-combined .anbita-login-section,
    .anbita-auth-combined .anbita-register-box{
        position:relative!important;
        clear:both!important;
        width:100%!important;
        margin:0 auto!important;
        padding:22px 24px 24px!important;
        border:1px solid rgba(31,91,216,.34)!important;
        border-radius:14px!important;
        background:rgba(255,255,255,.97)!important;
        box-sizing:border-box!important;
        box-shadow:0 8px 24px rgba(17,48,96,.08)!important;
        overflow:visible!important;
    }

    .anbita-auth-combined .anbita-login-section{
        max-width:760px!important;
    }

    .anbita-auth-combined .anbita-register-box{
        max-width:920px!important;
    }

    .anbita-auth-combined .anbita-auth-window-title,
    .anbita-auth-combined .anbita-register-box > h2{
        margin:0 0 18px!important;
        padding:0!important;
        border:0!important;
        text-align:center!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:20px!important;
        line-height:1.3!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-login-stage,
    .anbita-auth-combined .anbita-login-box{
        display:block!important;
        width:100%!important;
        max-width:none!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-login-frog,
    .anbita-auth-combined .anbita-auth-switch{
        display:none!important;
    }

    .anbita-auth-combined .anbita-login-form{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:16px 18px!important;
        width:100%!important;
        max-width:680px!important;
        margin:0 auto!important;
        box-sizing:border-box!important;
    }

    .anbita-auth-combined .anbita-login-form > label,
    .anbita-auth-combined .anbita-register-grid > label,
    .anbita-auth-combined .anbita-register-password-row > label,
    .anbita-auth-combined .anbita-register-captcha-field{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:6px!important;
        min-width:0!important;
        margin:0!important;
        box-sizing:border-box!important;
        text-align:left!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:700!important;
    }

    .anbita-auth-combined input:not([type="checkbox"]):not([type="hidden"]),
    .anbita-auth-combined select{
        display:block!important;
        width:100%!important;
        min-width:0!important;
        max-width:none!important;
        min-height:46px!important;
        margin:0!important;
        padding:10px 12px!important;
        border-radius:8px!important;
        box-sizing:border-box!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.25!important;
    }

    .anbita-auth-combined .anbita-login-actions{
        grid-column:1 / -1!important;
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        justify-content:center!important;
        gap:10px 16px!important;
        width:100%!important;
        margin:2px 0 0!important;
        padding:2px 0!important;
    }

    .anbita-auth-combined .anbita-login-button,
    .anbita-auth-combined .anbita-register-submit,
    .anbita-auth-combined .anbita-register-close{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        width:auto!important;
        min-width:118px!important;
        max-width:100%!important;
        min-height:46px!important;
        margin:0!important;
        padding:10px 18px!important;
        border-radius:9px!important;
        box-sizing:border-box!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.2!important;
    }

    .anbita-auth-combined .anbita-password-link{
        display:inline-flex!important;
        align-items:center!important;
        justify-content:center!important;
        min-height:44px!important;
        padding:6px 5px!important;
        box-sizing:border-box!important;
        font-size:16px!important;
    }

    .anbita-auth-combined .anbita-register-form{
        display:flex!important;
        flex-direction:column!important;
        align-items:stretch!important;
        gap:16px!important;
        width:100%!important;
        max-width:860px!important;
        margin:0 auto!important;
        box-sizing:border-box!important;
    }

    .anbita-auth-combined .anbita-register-block{
        display:block!important;
        width:100%!important;
        margin:0!important;
        padding:15px 16px!important;
        border:1px solid rgba(31,91,216,.22)!important;
        border-radius:11px!important;
        box-sizing:border-box!important;
        background:rgba(245,248,255,.62)!important;
    }

    .anbita-auth-combined .anbita-register-block > h3{
        margin:0 0 13px!important;
        padding:0 0 8px!important;
        border-bottom:1px solid rgba(31,91,216,.18)!important;
        text-align:left!important;
        font-family:Arial, Helvetica, sans-serif!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-register-grid{
        display:grid!important;
        grid-template-columns:repeat(12,minmax(0,1fr))!important;
        gap:14px 16px!important;
        width:100%!important;
        margin:0!important;
    }

    .anbita-auth-combined .register-field-salutation{grid-column:span 3!important;}
    .anbita-auth-combined .register-field-firstname{grid-column:span 4!important;}
    .anbita-auth-combined .register-field-lastname{grid-column:span 5!important;}
    .anbita-auth-combined .register-field-nickname{grid-column:span 5!important;}
    .anbita-auth-combined .register-field-email{grid-column:span 7!important;}
    .anbita-auth-combined .register-field-street{grid-column:span 8!important;}
    .anbita-auth-combined .register-field-house{grid-column:span 4!important;}
    .anbita-auth-combined .register-field-zip{grid-column:span 3!important;}
    .anbita-auth-combined .register-field-city{grid-column:span 5!important;}
    .anbita-auth-combined .register-field-birthdate{grid-column:span 4!important;}

    .anbita-auth-combined .anbita-register-password-row{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:14px 16px!important;
        width:100%!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-field-status,
    .anbita-auth-combined .anbita-register-password-strength{
        display:block!important;
        min-height:0!important;
        margin:1px 0 0!important;
        font-size:14px!important;
        line-height:1.3!important;
        font-weight:400!important;
        text-align:left!important;
    }

    .anbita-auth-combined .anbita-register-check-captcha-row{
        display:grid!important;
        grid-template-columns:minmax(260px,1fr) minmax(300px,1fr)!important;
        align-items:start!important;
        gap:18px 24px!important;
        width:100%!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-checks{
        display:flex!important;
        flex-direction:column!important;
        gap:11px!important;
        width:100%!important;
    }

    .anbita-auth-combined .anbita-register-checkline{
        display:grid!important;
        grid-template-columns:26px minmax(0,1fr)!important;
        align-items:center!important;
        gap:9px!important;
        width:100%!important;
        min-height:34px!important;
    }

    .anbita-auth-combined .anbita-register-checkline input[type="checkbox"]{
        width:24px!important;
        height:24px!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-form label.anbita-register-checktext{
        display:block!important;
        width:auto!important;
        max-width:none!important;
        margin:0!important;
        text-align:left!important;
        font-size:16px!important;
        line-height:1.35!important;
        font-weight:600!important;
    }

    .anbita-auth-combined .anbita-register-captcha-row{
        display:grid!important;
        grid-template-columns:48px minmax(0,1fr)!important;
        align-items:center!important;
        gap:10px!important;
        width:100%!important;
        max-width:360px!important;
        margin:0!important;
    }

    .anbita-auth-combined .anbita-register-captcha-speak{
        width:46px!important;
        min-width:46px!important;
        height:46px!important;
        min-height:46px!important;
        margin:0!important;
        padding:0!important;
        border-radius:50%!important;
        font-size:19px!important;
    }

    .anbita-auth-combined .anbita-register-captcha-task{
        min-width:0!important;
        text-align:left!important;
        font-size:16px!important;
        font-weight:700!important;
    }

    .anbita-auth-combined .anbita-register-captcha-field{
        grid-column:1 / -1!important;
        max-width:220px!important;
    }

    .anbita-auth-combined .anbita-register-actions{
        display:flex!important;
        flex-wrap:wrap!important;
        align-items:center!important;
        justify-content:center!important;
        gap:11px 14px!important;
        width:100%!important;
        margin:2px 0 0!important;
        padding:4px 0!important;
    }

    html.dark-mode .anbita-auth-combined .anbita-login-section,
    body.dark-mode .anbita-auth-combined .anbita-login-section,
    html.dark-mode .anbita-auth-combined .anbita-register-box,
    body.dark-mode .anbita-auth-combined .anbita-register-box{
        background:#171717!important;
        border-color:rgba(255,255,255,.22)!important;
        color:#ffffff!important;
        box-shadow:none!important;
    }

    html.dark-mode .anbita-auth-combined .anbita-register-block,
    body.dark-mode .anbita-auth-combined .anbita-register-block{
        border-color:rgba(255,255,255,.18)!important;
        background:rgba(255,255,255,.025)!important;
    }
}

/* Schmalere Tablets: die Felder bleiben kompakt, ohne überlange Eingaben. */
@media (min-width:761px) and (max-width:900px){
    .anbita-auth-combined{
        max-width:780px!important;
        padding-left:14px!important;
        padding-right:14px!important;
    }
    .anbita-auth-combined .anbita-login-form{
        grid-template-columns:minmax(0,1fr)!important;
        max-width:520px!important;
    }
    .anbita-auth-combined .anbita-login-actions{
        grid-column:1!important;
    }
    .anbita-auth-combined .register-field-salutation{grid-column:span 4!important;}
    .anbita-auth-combined .register-field-firstname{grid-column:span 8!important;}
    .anbita-auth-combined .register-field-lastname{grid-column:span 12!important;}
    .anbita-auth-combined .register-field-nickname{grid-column:span 6!important;}
    .anbita-auth-combined .register-field-email{grid-column:span 6!important;}
    .anbita-auth-combined .register-field-street{grid-column:span 8!important;}
    .anbita-auth-combined .register-field-house{grid-column:span 4!important;}
    .anbita-auth-combined .register-field-zip{grid-column:span 4!important;}
    .anbita-auth-combined .register-field-city{grid-column:span 8!important;}
    .anbita-auth-combined .register-field-birthdate{grid-column:span 6!important;}
    .anbita-auth-combined .anbita-register-check-captcha-row{
        grid-template-columns:minmax(0,1fr)!important;
    }
}

/* Eigener SamCity-Anmeldebereich mit zentraler ANBITA-Maske. */
.anbita-samcity-auth .anbita-samcity-auth-brand{
    width:100%;
    max-width:920px;
    margin:0 auto;
    text-align:center;
    font-family:Arial, Helvetica, sans-serif;
    font-size:16px;
}
.anbita-samcity-auth .anbita-samcity-auth-brand img{
    display:block;
    width:100%;
    max-width:920px;
    height:auto;
    margin:0 auto;
    border-radius:14px;
}
.anbita-samcity-auth .anbita-samcity-auth-welcome{
    display:flex;
    flex-direction:column;
    align-items:center;
    max-width:820px;
    margin:18px auto 28px;
    font-family:Arial, Helvetica, sans-serif;
    font-size:16px;
    line-height:1.5;
    font-weight:700;
    text-align:center;
}
.anbita-samcity-auth .anbita-samcity-auth-welcome span{
    display:block;
    white-space:nowrap;
}
@media(max-width:760px){
    .anbita-samcity-auth .anbita-samcity-auth-brand{
        width:100%;
        max-width:560px;
        min-width:0;
        overflow:hidden;
    }
    .anbita-samcity-auth .anbita-samcity-auth-brand img{
        max-width:100%;
        border-radius:10px;
    }
    .anbita-samcity-auth .anbita-samcity-auth-welcome{
        width:100%;
        max-width:100%;
        min-width:0;
        margin:14px auto 22px;
        padding:0 10px;
        box-sizing:border-box;
        font-size:clamp(14px,4.2vw,16px);
        line-height:1.45;
        overflow-wrap:anywhere;
        word-break:normal;
        white-space:normal;
    }
    .anbita-samcity-auth .anbita-samcity-auth-welcome span{
        width:100%;
        max-width:100%;
        min-width:0;
        white-space:normal;
        overflow-wrap:anywhere;
        word-break:normal;
    }
}


/* SamCity: Zurück-Schaltfläche direkt vor dem Pflichtfeld-Hinweis. */
.anbita-samcity-auth .anbita-register-required-note{
    display:inline-flex;
    align-items:center;
    min-height:46px;
    margin:0;
    padding:0 2px;
    color:inherit;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:14px!important;
    font-weight:400;
    line-height:1.3;
    white-space:nowrap;
}

.anbita-samcity-auth .anbita-register-actions{
    justify-content:flex-start;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
}
.anbita-samcity-auth .anbita-samcity-register-back{
    display:inline-flex;
    width:auto!important;
    min-width:92px;
    max-width:100%;
    min-height:44px;
    margin:0;
    padding:9px 18px;
    border:2px solid #111!important;
    border-radius:12px;
    background:#ffd21f!important;
    color:#111!important;
    -webkit-text-fill-color:#111!important;
    font-family:Arial, Helvetica, sans-serif!important;
    font-size:16px!important;
    font-weight:800!important;
    line-height:1.2;
    text-align:center;
    text-decoration:none!important;
    box-sizing:border-box;
}
.anbita-samcity-auth .anbita-samcity-register-back:hover,
.anbita-samcity-auth .anbita-samcity-register-back:focus-visible{
    background:#ffe36b!important;
    color:#111!important;
    -webkit-text-fill-color:#111!important;
}
@media(max-width:760px){
    .anbita-samcity-auth .anbita-register-actions{
        gap:10px;
    }
    .anbita-samcity-auth .anbita-samcity-register-back{
        min-width:86px;
        min-height:42px;
        padding:8px 15px;
        font-size:15px!important;
    }
    .anbita-samcity-auth .anbita-register-required-note{
        min-height:42px;
    }
}

/* SamCity-Anmeldung als ruhige Inhaltsseite: nur Bedienhilfen im Kopfbereich. */
body.anbita-samcity-auth-page .site-header .welcome-row,
body.anbita-samcity-auth-page .anbita-mobile-symbol-nav,
body.anbita-samcity-auth-page .side-menu,
body.anbita-samcity-auth-page .utility-bar .weather-mobile-top{
    display:none!important;
}
body.anbita-samcity-auth-page .utility-bar{
    justify-content:center;
}
body.anbita-samcity-auth-page .layout-grid{
    display:block;
}
body.anbita-samcity-auth-page .main-panel{
    width:100%;
    max-width:1180px;
    margin:0 auto;
}
body.anbita-samcity-auth-page .anbita-auth-combined{
    margin-left:auto!important;
    margin-right:auto!important;
}
