/* Anmelde-/Registrierungspanel im oeffentlichen Header und auf /login.
   Eigene Datei, damit public-entry.css ihr Byte-Budget behaelt. */
.auth-launcher{position:relative;display:flex;align-items:center;gap:22px}
.auth-panel{position:absolute;top:calc(100% + 14px);right:0;z-index:41;width:392px;background:var(--panel);border:1px solid var(--line);box-shadow:0 24px 60px #0009;padding:22px 24px 26px}
.auth-panel[hidden]{display:none}
.auth-panel-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}
.auth-panel-tabs{display:flex;gap:18px;border-bottom:1px solid var(--line)}
.auth-panel-tabs button{appearance:none;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);font:inherit;font-weight:650;font-size:.86rem;padding:8px 4px;cursor:pointer;white-space:nowrap}
.auth-panel-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--acid)}
.auth-panel-close{appearance:none;background:none;border:0;color:var(--muted);font-size:1.4rem;cursor:pointer;width:32px;height:32px;flex:0 0 32px;line-height:32px;text-align:center;margin:-4px -4px 0 auto}
.auth-panel .auth-form{display:grid;gap:14px;margin:0}
.auth-panel label{display:grid;gap:6px;font-size:.84rem;color:var(--muted)}
.auth-panel input:not([type=hidden],[type=checkbox]){background:var(--night);border:1px solid var(--line);color:var(--ink);padding:11px 12px;font:inherit;font-size:.94rem;width:100%}
.auth-panel input:focus-visible{outline:3px solid var(--acid)}
.auth-panel .auth-consent-row{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;font-size:.78rem}
.auth-panel .auth-consent-row input{width:16px;height:16px;margin:2px 0 0;padding:0;accent-color:var(--acid)}
.auth-panel .auth-consent-row a{color:var(--ink);text-decoration:underline}
.auth-panel .auth-form-support{font-size:.82rem}
.auth-panel .auth-text-link{color:var(--acid)}
.auth-panel .auth-inline-status{padding:10px 12px;margin-bottom:14px;font-size:.82rem;border:1px solid var(--line)}
.auth-panel .auth-inline-status.success{border-color:var(--acid);color:var(--ink)}
.auth-panel .auth-inline-status.error{border-color:#ff8b8b;color:#ffb3b3}
@media (max-width:640px){.auth-panel{position:fixed;top:62px;left:12px;right:12px;width:auto;max-height:calc(100vh - 96px);overflow-y:auto}}
.nowrap{white-space:nowrap}
.auth-field-error{color:var(--k-danger,#ff9f96);font-size:.8rem;line-height:1.4}
.auth-form input[aria-invalid="true"]{border-color:var(--k-danger,#ff9f96)}
/* Honeypot: Formular-Bots lesen HTML, nicht CSS. display:none nimmt das Feld für Menschen,
   Tastatur, Screenreader und UI-Audits vollständig aus der Oberfläche (QL-453). */
.auth-honeypot{display:none !important}
