/* =========================================================================
   ANMELDUNG – schlichte Seiten vor dem Login
   index.php (Anmelden), passwort_vergessen.php, passwort_neu.php
   Ohne Karte: heller Hintergrund, schmale Spalte in der Mitte. Logo nur, wenn in der Firmierung hochgeladen.
   ========================================================================= */
body.anm-body { margin: 0; background: #f7f9fc; }
.anm { min-height: 100vh; box-sizing: border-box; padding: 24px 16px; display: flex; align-items: center; justify-content: center;
       font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif; color: #0d1220; }
.anm-spalte { width: 100%; max-width: 340px; display: flex; flex-direction: column; gap: 14px; }
.anm-kopf { display: flex; flex-direction: column; gap: 4px; margin-bottom: 6px; }
.anm-firma { font-size: 13px; color: #5a6680; }
.anm-logo { display: block; max-width: 220px; max-height: 90px; width: auto; height: auto; object-fit: contain; margin: 0 0 14px; }
.anm h1 { margin: 0; font-size: 22px; font-weight: 700; line-height: 1.25; color: #0d1220; }
.anm-text { margin: 0; font-size: 14px; color: #5a6680; line-height: 1.45; }
.anm form { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.anm label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; color: #33415c; margin: 0; }
.anm input:not([type=hidden]):not([type=checkbox]):not([type=radio]) {
    height: 46px; box-sizing: border-box; width: 100%; margin: 0; border: 1px solid #cbd5e1; border-radius: 8px; padding: 0 12px;
    font: inherit; font-size: 16px; font-weight: 400; color: #0d1220; background: #fff; }
.anm input:not([type=hidden]):not([type=checkbox]):not([type=radio]):focus { outline: 3px solid rgba(29, 78, 216, .25); border-color: #1d4ed8; box-shadow: none; }
.anm button[type=submit], .anm .anm-knopf {
    height: 48px; width: 100%; margin: 4px 0 0; border: 0; border-radius: 8px; background: #1d4ed8; color: #fff;
    font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; text-decoration: none;
    display: flex; align-items: center; justify-content: center; }
.anm button[type=submit]:hover, .anm .anm-knopf:hover { background: #1e40af; }
.anm-link { align-self: center; font-size: 13px; color: #5a6680; text-decoration: none; padding: 8px; }
.anm-link:hover { color: #0d1220; text-decoration: underline; }
.anm-meldung { margin: 0; border-radius: 8px; padding: 10px 12px; font-size: 14px; line-height: 1.4; }
.anm-meldung--fehler { background: #fdecea; color: #a32020; }
.anm-meldung--hinweis { background: #fff6db; color: #6b4a00; }
.anm-meldung--ok { background: #e6f5ec; color: #1e6b34; }
