/* =====================================================================
   AUTH.CSS — Login, Registrierung, LSF-Import-Wizard, Seiten wie
   Passwort-zurücksetzen / Impressum / Datenschutz.
   ===================================================================== */

.auth-screen {
    min-height: 100vh; min-height: 100dvh;
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px;
    padding: max(20px, var(--safe-top)) 16px calc(24px + var(--safe-bottom));
}

.auth-box {
    width: 100%; max-width: 440px;
    background: var(--surface); border: 1px solid var(--line); border-radius: 24px;
    padding: 24px 20px;
}
.wizard-box { max-width: 640px; }

.brand { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.brand img { border-radius: 10px; flex: none; }
.brand-name { font-size: 22px; font-weight: 650; letter-spacing: -0.01em; }

.auth-tabs { margin-bottom: 20px; }
.auth-tabs button { cursor: pointer; }

.center-row { text-align: center; margin-top: 8px; }
.auth-box .btn-block { margin-top: 10px; }

/* Seiten ohne App-Rahmen (Passwort-Reset, Impressum, Datenschutz) */
.page { max-width: 760px; margin: 0 auto; padding: max(24px, var(--safe-top)) 16px 56px; }
.page .top { padding-top: 8px; }
.page h2 { font-size: 17px; font-weight: 650; margin: 0 0 8px; color: var(--text); }
.page .card h2 { color: var(--muted); font-size: 15px; }
.page p, .page li { line-height: 1.6; }
.page ul { padding-left: 20px; }
.page a { color: var(--info); }

.legal-text { font-size: 15px; line-height: 1.7; color: var(--text); }
.legal-text p + p { margin-top: 14px; }
.legal-text ul { margin: 8px 0; }
