/* Herkunft: eigen. Kleines Stylesheet nur für die Anmeldeseiten (A12a-1); Systemschriften, nichts von außen, hell/dunkel. */
:root { --hg: #f6f7f9; --karte: #fff; --text: #1d2330; --leise: #5b6475; --rand: #d5d9e0; --akzent: #1f5fbf; --fehler: #b42318; --gut: #1a7f37; }
@media (prefers-color-scheme: dark) {
  :root { --hg: #12151b; --karte: #1b2029; --text: #e6e9ef; --leise: #9aa3b2; --rand: #333b48; --akzent: #6ea8ff; --fehler: #ff8a80; --gut: #6fdc8c; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--hg); color: var(--text); font: 16px/1.5 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
body.login { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 16px; }
.loginbox { width: 100%; max-width: 380px; background: var(--karte); border: 1px solid var(--rand); border-radius: 10px; padding: 24px; }
h1 { margin: 0 0 4px; font-size: 1.4rem; }
.sub, .hinweis { color: var(--leise); font-size: .9rem; }
label { display: block; margin-top: 12px; font-size: .9rem; }
input { width: 100%; margin-top: 4px; padding: 8px 10px; border: 1px solid var(--rand); border-radius: 6px; background: var(--hg); color: var(--text); font: inherit; }
button { margin-top: 18px; width: 100%; padding: 10px; border: 0; border-radius: 6px; background: var(--akzent); color: #fff; font: inherit; cursor: pointer; }
button:disabled { opacity: .6; cursor: wait; }
.err { color: var(--fehler); }
.ok { color: var(--gut); }
a { color: var(--akzent); }
/* `hidden` wirksam machen (B-A12a-5-1): eigene `display`-Angaben überstimmen sonst die Browser-Regel für [hidden] (HTML §6.1, §15.3.1). */
[hidden] { display: none !important; }
