/* Gemeinsame Guest-Optik für Login, Impressum und Moderator. */
:root{--public-primary:linear-gradient(135deg,#9b39b5,#dc398c);--public-background:linear-gradient(135deg,#102537 0%,#17203b 22%,#341443 48%,#682144 72%,#614023 100%)}
body.public-guest{margin:0;padding:0;min-height:100vh;min-height:100svh;height:auto;background:var(--public-background);background-size:400% 400%;animation:public-party 18s ease infinite;color:#fff;font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;display:flex;align-items:center;justify-content:center;flex-direction:column}
@keyframes public-party{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.entry-page{width:100%;max-width:600px;margin:auto;padding:32px 20px max(24px,env(safe-area-inset-bottom));box-sizing:border-box}
.entry-page .logo{text-align:center;margin:0 0 12px}.entry-page .logo img{width:90px;height:auto;filter:drop-shadow(0 4px 12px #0003)}
.entry-page .title{font-family:inherit;font-size:clamp(28px,6vw,36px);font-weight:700;letter-spacing:-.04em;color:#fff;text-align:center;margin:0}
.brand-tagline{text-align:center;margin:8px 0 26px;color:#e4dbee;font-size:15px}
.entry-page .jumbotron{width:100%;max-width:none;padding:clamp(22px,5vw,38px);margin:0;background:#201638d9;color:#fff;border:2px solid #ffffff40;border-radius:28px;box-shadow:0 20px 60px #0003;backdrop-filter:blur(20px);text-align:left}
.entry-page .eyebrow{color:#89f5f3;font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:700;margin:0 0 12px}
.entry-page h1{font-size:clamp(26px,5vw,34px);line-height:1.15;letter-spacing:-.04em;margin:0 0 14px;font-weight:700}.entry-page .intro{font-size:16px;line-height:1.55;color:#eee8fa;margin:0 0 24px}
.entry-page label{display:block;font-weight:650;font-size:16px;margin:0 0 9px}.entry-page .input-group{border-radius:12px;background:white;border:2px solid #ffffff40;overflow:hidden}.entry-page .input-group:focus-within{outline:3px solid #70eceb;outline-offset:3px}
.entry-page .input-group-text{background:#fff;border:0;color:#764ba2;padding:12px 14px}.entry-page .form-control{min-width:0;min-height:52px;border:0;background:#fff;color:#211a32;font:18px 'Segoe UI',sans-serif;padding:13px 14px}.entry-page .form-control:focus{box-shadow:none}
.entry-page .btn-orange{min-height:54px;padding:15px 20px;border:0;border-radius:999px;background:var(--public-primary);color:white;font:700 17px 'Segoe UI',sans-serif;box-shadow:0 8px 25px #0003;margin-top:8px}.entry-page .btn-orange:hover{filter:brightness(1.12);color:#fff}
.entry-page a{color:#89f5f3}.entry-page #error{color:#ffd5e8!important;line-height:1.5}.entry-page #error:not(:empty){padding:12px 14px;border:1px solid #ff83cd80;border-radius:10px;background:#ff83cd12}
.entry-page .footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:24px 0 0}.entry-page .footer-links a{color:#e4dbee;text-decoration:none;font-size:14px;padding:8px 0}.entry-page .footer-links a:hover{color:#89f5f3;text-decoration:underline}
.entry-page .contact-info{font-size:17px;line-height:1.6;color:#eee8fa}.entry-page .contact-info p{margin:0 0 8px}.entry-page .contact-info strong{font-size:21px;color:white}.entry-page .email{display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:18px 0}.entry-page .email a{overflow-wrap:anywhere;min-width:0}.entry-page .email i{margin:0;color:#89f5f3}
.public-guest a:focus-visible,.public-guest button:focus-visible{outline:3px solid #70eceb;outline-offset:4px}
.moderator-workspace .header{background:#201638ed;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff30;gap:10px;padding:12px 20px}.moderator-workspace .header img{height:44px;width:auto}.moderator-workspace .header h1{font-family:inherit;font-weight:700;color:#fff;letter-spacing:-.03em}.moderator-workspace .header h1 span{color:#e4dbee;font-weight:400}
.moderator-workspace .card{background:#201638d9;color:white;border:1px solid #ffffff30;border-radius:18px;overflow:hidden}.moderator-workspace .card-body{background:#201638d9!important;border-top:1px solid #ffffff25}.moderator-workspace .card-header{background:#201638ed!important;border-bottom:1px solid #ffffff25}.moderator-workspace .card-body button i{color:#89f5f3}.moderator-workspace .card-body button:hover i{color:#ff83cd}
.moderator-workspace .list-group-item{background:#ffffff0a!important;color:#eee8fa!important;border-color:#ffffff25}.moderator-workspace .bottom-nav{background:#201638ed;backdrop-filter:blur(16px);border-top:1px solid #ffffff30}.moderator-workspace .form-check-input:checked{background-color:#ad3f9e;border-color:#dc398c}.moderator-workspace .modal-content{background:#211a32;color:white;border:1px solid #ffffff40;border-radius:18px}.moderator-workspace .modal-footer{border-color:#ffffff25}
@media(max-width:380px){.entry-page{padding:22px 12px}.entry-page .jumbotron{padding:22px 18px;border-radius:22px}.entry-page .logo img{width:72px}.moderator-workspace .header h1{font-size:18px}.moderator-workspace .header img{height:36px}}
@media(prefers-reduced-motion:reduce){body.public-guest{animation:none}}
