/* App – Anmelden / Registrieren / Warten */
.alg { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; gap: 14px; padding: calc(env(safe-area-inset-top, 0px) + 40px) 22px calc(env(safe-area-inset-bottom, 0px) + 30px); background: radial-gradient(500px 300px at 50% 0%, rgba(227,179,65,.18), transparent); }
.alg [hidden] { display: none !important; }
.alg__bar { display: flex; align-items: center; gap: 10px; }
.alg__dots { flex: 1; display: flex; gap: 6px; }
.alg__dots span { flex: 1; height: 5px; border-radius: 999px; background: var(--ap-line); }
.alg__dots span.is-on { background: var(--ap-gold); }
.alg__start { flex: 1; display: flex; flex-direction: column; gap: 14px; }
.alg__hero { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 12px; padding: 20px 0; }
.alg__hero img { width: 132px; height: 132px; border-radius: 50%; background: #FFFFFF; object-fit: contain; box-shadow: 0 0 0 4px var(--ap-gold); padding: 8px; }
.alg__name { font-family: var(--ap-head); font-stretch: 125%; font-weight: 900; font-size: 30px; line-height: 1.05; }
.alg__hero p { font-size: 15px; color: var(--ap-soft); line-height: 1.5; max-width: 280px; margin: 0; }
.alg__hero .ap-pill { font-size: 11px; padding: 5px 10px; display: inline-flex; align-items: center; gap: 5px; }
.alg__tip { text-align: center; margin: 0; line-height: 1.45; }
.alg__form { flex: 1; display: flex; flex-direction: column; gap: 12px; }
.alg__h { font-family: var(--ap-head); font-stretch: 125%; font-weight: 900; font-size: 28px; margin: 4px 0 0; line-height: 1.05; }
.alg__fields { flex: 1; display: flex; flex-direction: column; gap: 12px; }
.alg__row { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 13px; }
.alg__grow { flex: 1; min-height: 10px; }
.alg__link { border: 0; background: transparent; color: var(--ap-gold-t); min-height: 44px; cursor: pointer; font-size: 14px; }
.alg__box { font-size: 14px; line-height: 1.5; color: var(--ap-soft); padding: 16px; }
.alg__push { display: flex; gap: 12px; align-items: center; font-size: 14px; }
.alg__bell { color: var(--ap-gold-t); flex: none; }
.alg p.ap-small { margin: 0; }
