/* ===================================================
   Auth-Seiten (dialog.html): Login, Passwort anfordern,
   Reset-Bestaetigung, Anfrage erhalten.

   Ergaenzt intern.css und laedt nur dort. Karte, Formularfelder,
   Labels, Buttons, Fehlerkaesten und die Passwortstaerke-Anzeige
   kommen aus intern.css (.join-* sowie die generischen Form-Regeln) —
   hier steht nur, was dort fehlt. Farben ausschliesslich ueber Tokens,
   damit der Dark Mode greift.
   =================================================== */

/* Die Karte ist schmaler als bei den Beitrittsseiten — ein Login
   braucht keine 480px. */
.join-wrap {
    max-width: 420px;
}

/* Die Ueberschrift steht im content-Block, also ausserhalb von
   .join-header, und wird von dessen Regel nicht erfasst. */
.join-card h1 {
    margin: 0 0 20px;
    text-align: center;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: var(--t1);
}

.welcome-message {
    margin-bottom: 16px;
    text-align: center;
    color: var(--t3);
    font-size: 13.5px;
    line-height: 1.5;
}

.welcome-message p {
    margin: 0;
}

/* Die Reset-/Anforderungsformulare rendern ueber {{ form.as_div }}; deren
   Hilfetexte haben sonst die volle Textgroesse. */
.join-card .helptext {
    display: block;
    margin: 2px 0 6px;
    font-size: 12px;
    line-height: 1.45;
    color: var(--t3);
}

.login-form {
    margin-bottom: 20px;
}

.login-form .form-group {
    margin-bottom: 14px;
}

/* Volle Breite statt inline-flex wie die uebrigen Buttons. */
.login-button {
    width: 100%;
    justify-content: center;
    margin-top: 4px;
    padding: 10px;
    border-radius: var(--r);
    font-size: 14px;
    font-weight: 600;
}

.register-link {
    margin-top: 16px;
    text-align: center;
    color: var(--t3);
    font-size: 13px;
}

.register-link p {
    margin: 0;
}

.register-link a {
    font-weight: 600;
}

@media (max-width: 480px) {
    .join-card { padding: 24px 20px 20px; }
    .join-card h1 { font-size: 1.2rem; }
}
