*{box-sizing:border-box}body{margin:0;background:#f5f9fc;color:var(--rh-text,#1f2b38);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}
.entry-shell{width:min(480px,100%);margin:0 auto;padding:28px 18px 40px}.entry-brand{display:flex;justify-content:center;margin:0 auto 20px}.entry-brand img{height:auto;max-width:100%}
.entry-card{background:white;border:1px solid var(--rh-line,#e3ebf2);border-radius:20px;padding:28px;box-shadow:0 8px 35px #23435a08}h1{font-size:1.55rem;margin:0;text-align:center;line-height:1.25}h2{font-size:1.05rem;margin:22px 0 12px}.entry-lead{text-align:center;color:var(--rh-muted,#5b6b7b);font-size:.9rem;margin:10px 0 22px}
.entry-tabs{display:flex;gap:4px;background:#edf4f8;padding:4px;border-radius:12px}.entry-tabs a{flex:1;min-height:44px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#5b6b7b;font-weight:750;border-radius:9px}.entry-tabs a[aria-current]{background:white;color:#087daf;box-shadow:0 1px 5px #23435a12}
label{display:block;font-weight:650;font-size:.88rem;margin:14px 0 6px}select,input:not([type=hidden]){width:100%;min-height:46px;border:1px solid #cedce6;border-radius:9px;padding:11px 12px;font:inherit;background:white;color:inherit}select:focus,input:focus{outline:2px solid #16a3e0;outline-offset:2px}a:focus-visible,button:focus-visible{outline:3px solid #16a3e0;outline-offset:3px}
.entry-primary{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;padding:11px 12px;border:0;border-radius:10px;font:inherit;font-weight:750;text-decoration:none;cursor:pointer;text-align:center}.entry-primary{background:#0788c2;color:white;margin-top:18px}.entry-primary[disabled]{opacity:.6;cursor:wait}.entry-google{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:18px;border-radius:24px;text-decoration:none}.entry-google img{display:block;width:198px;height:44px;max-width:100%;object-fit:contain}.entry-google:hover img{filter:brightness(.97)}
.entry-help{display:flex;align-items:center;min-height:44px;color:#087daf;font-weight:650;font-size:.86rem;margin-top:4px}.entry-copy{font-size:.92rem;color:#5b6b7b}.entry-note{text-align:center;font-size:.8rem;color:#667580;margin:22px 0 0}.entry-divider{display:flex;align-items:center;gap:12px;color:#667580;font-size:.85rem;margin:22px 0 16px}.entry-divider:before,.entry-divider:after{content:'';height:1px;background:#e3ebf2;flex:1}
.entry-message,.msg{font-size:.9rem;padding:12px;border-radius:9px;background:#edf6fc;overflow-wrap:anywhere;margin:14px 0}.entry-message[hidden]{display:none}.error,.msg.err{background:#fff2f1;color:#a83937}.entry-footer{display:flex;flex-wrap:wrap;justify-content:center;column-gap:20px;margin-top:18px}.entry-footer a{display:flex;align-items:center;min-height:44px;color:#5b6b7b;font-size:.83rem}
.pwregeln{list-style:none;padding:0;font-size:.8rem;color:#667580;line-height:1.7}.pwregeln .hk{display:inline-block;width:1.2em}.pwregeln .erfuellt{color:#26744e}.pwregeln .offen{color:#8b611c}
@media(max-width:380px){.entry-shell{padding:16px 12px 28px}.entry-card{padding:22px 18px}h1{font-size:1.4rem}}

/* Direct birthday entry, including on narrow phone screens. */
.birth-fields{border:0;padding:0;margin:14px 0;min-width:0}
.birth-fields legend{font-weight:700;margin-bottom:6px}
.birth-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.4fr) minmax(0,1fr);gap:10px}
.birth-grid>div{min-width:0}.birth-grid input,.birth-grid select{min-width:0;width:100%;box-sizing:border-box}
.birth-grid label{font-size:.85rem}

.newsletter-choice{display:flex!important;align-items:flex-start;gap:10px;margin-top:18px}.newsletter-choice input[type=checkbox]{width:20px!important;min-width:20px;height:20px;margin:3px 0 0;flex:none}
