/* Mitglieder: Registrierung, Anmeldung, Konto (08.11.2026) */
.mk-members { box-sizing: border-box; padding: 20px 24px 40px; background: #fff; color: #444; font: 400 16px/1.6 Lato, Arial, sans-serif; }
.mk-members > * { max-width: 560px; }
.mk-members-rules > * { max-width: 46em; }
@media (max-width: 600px) { .mk-members { padding: 16px 16px 32px; } }
.mk-members-form { margin: 0 0 32px; }
.mk-members-lead { margin: 0 0 18px; font-size: 16px; line-height: 1.55; color: #3a3d42; }
.mk-members-field { margin: 0 0 18px; }
.mk-members-field label { display: block; margin: 0 0 4px; font-weight: 700; color: #282b30; }
.mk-members-field .form-control { width: 100%; height: 42px; font-size: 16px; }
.mk-members-hint { margin: 4px 0 0; font-size: 13px; line-height: 1.45; color: #6b6b6b; }
.mk-members-invalid:empty, .mk-members-error:empty { display: none; }
.mk-members-invalid { margin: 4px 0 0; font-size: 13px; color: #b42318; }
.mk-members-error { margin: 0 0 16px; padding: 10px 12px; border-radius: 6px; background: #fbebeb; color: #8a1c13; }
.mk-members-password { display: flex; gap: 8px; }
.mk-members-password .form-control { flex: 1 1 auto; min-width: 0; }
.mk-members-reveal { flex: 0 0 auto; padding: 0 12px; border: 1px solid #ccc; border-radius: 4px; background: #fff; color: #282b30; font-size: 14px; cursor: pointer; }
.mk-members-reveal:focus-visible, .mk-members-check input:focus-visible { outline: 2px solid #7eb6cf; outline-offset: 2px; }
.mk-members-check { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0 2px; }
.mk-members-check input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; }
.mk-members-check label { margin: 0; font-weight: 400; line-height: 1.45; }
.mk-members-submit { margin-top: 18px; min-height: 44px; padding: 0 22px; font-weight: 700; }
.mk-members-alt { margin: 16px 0 0; font-size: 14px; color: #6b6b6b; }
.mk-members-box { margin: 0 0 24px; padding: 16px 18px; border: 1px solid #e3e3dc; border-radius: 8px; background: #fafaf7; }
.mk-members-box h2, .mk-members-heading { color: #282b30; font-weight: 700; text-transform: none; letter-spacing: 0; }
.mk-members-box p { margin: 0 0 8px; }
.mk-members-box p:last-child { margin-bottom: 0; }
.mk-members-box h2 { margin: 0 0 8px; font-size: 22px; }
.mk-members-box--ok { border-color: #b7dfb5; background: #e5f4e4; }
.mk-members-heading { margin: 28px 0 12px; font-size: 20px; }
.mk-members-flash { margin: 0 0 16px; padding: 10px 12px; border-radius: 6px; background: #e7f1fb; color: #1d3f63; }
.mk-members-flash--error { background: #fbebeb; color: #8a1c13; }
.mk-members-flash--success { background: #e5f4e4; color: #166534; }
/* Falle für Bots: für Menschen unsichtbar, auch für Screenreader ausgeblendet */
.mk-members-trap { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
/* Benutzername: Prüfung beim Eintippen */
.mk-members-status { margin: 4px 0 0; font-size: 13px; line-height: 1.45; color: #6b6b6b; }
.mk-members-status:empty { display: none; }
.mk-members-status.is-ok { color: #166534; }
.mk-members-status.is-ok::before { content: "✓ "; font-weight: 700; }
.mk-members-status.is-bad { color: #b42318; }
.mk-members-field input[aria-invalid="true"] { border-color: #d92d20; }
