/* seiten/anmeldung.css – G1 Anmeldung – anmelden.html, link.html, kein_zugang.html, leer.html
   Wird von base.html auf JEDER Seite nach app.css geladen (?v=STATIC_VERSION).
   Nur Selektoren dieser Gruppe. Tokens (var(--…)) nur aus app.css, keine neuen Farbwerte hier. */

.link-karte .qr { max-width: 240px; margin: var(--s2) auto; background: #fff; padding: 10px; border-radius: var(--r-m); box-shadow: inset 0 0 0 1px var(--line); }
.link-karte .qr svg { width: 100%; height: auto; display: block; }
input.link-feld { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: var(--fs-md); }
/* ===== Anmeldung ===== */
html:has(body.anmeldung) { background: var(--paper); }
body.anmeldung { --breite: 440px; --breite-kopf: 440px; min-height: 100vh; min-height: 100dvh; }
body.anmeldung .kopf { background: transparent; color: var(--brand-text); padding-top: calc(28px + env(safe-area-inset-top)); }
body.anmeldung .kopf-zeile { padding-bottom: 0; }
body.anmeldung main { padding-top: var(--s4); }
.anmelde-karte { padding: 28px 24px; }
.anmelde-karte h1 { font-size: var(--fs-2xl); margin-bottom: var(--s5); }
.anmelde-karte .overline + h1 { margin-top: 0; }
.kein-zugang { text-align: center; }
.kein-zugang .leer { padding-bottom: 0; }
.anmelde-karte form > label:first-child, .anmelde-karte form > input[type=hidden] + label { margin-top: 0; }
input.code-feld { font-size: var(--fs-3xl); letter-spacing: .35em; text-indent: .35em; text-align: center; font-weight: 700; font-family: var(--f-titel); }
input.pin-gross { font-size: 1.75rem; letter-spacing: .4em; text-indent: .4em; text-align: center; font-weight: 700; }
.konto-knopf { justify-content: flex-start; text-align: left; padding: 10px 16px; min-height: 64px; }
.konto-knopf .ic { width: 24px; height: 24px; }
.anmelde-wege { display: grid; gap: 12px; margin-top: var(--s5); padding-top: var(--s4); border-top: 1px solid var(--line-soft); }
.anmelde-weg { display: flex; gap: 12px; align-items: flex-start; font-size: var(--fs-md); color: var(--ink-2); line-height: 1.4; }
.anmelde-weg .ic { width: 20px; height: 20px; color: var(--brand-text); margin-top: 1px; }
.anmelde-weg b { display: block; color: var(--ink); font-weight: 600; }
.feld-ic { position: relative; }
.feld-ic > .ic { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); margin-top: 3px; color: var(--ink-3); pointer-events: none; }
.feld-ic > input { padding-left: 44px; }
.anmelde-gruss { display: flex; justify-content: center; margin: 4px 0 14px; }
.anmelde-gruss + h1 { text-align: center; }
.anmelde-symbol { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--brand-tint); color: var(--brand-text); }
.anmelde-symbol .ic { width: 26px; height: 26px; }
.hinweis-zeile { display: flex; gap: 8px; align-items: flex-start; }
.hinweis-zeile .ic { width: 16px; height: 16px; margin-top: 3px; color: var(--ink-3); }
