:root{--bg:#07080d;--card:#111521;--card2:#171b28;--line:#303747;--text:#f7f8fc;--muted:#aeb5c7;--pink:#f42583;--yellow:#fff000;--blue:#24b5f4;--green:#39d98a;--red:#ff5b6e;--radius:24px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% -10%,#251127 0,#07080d 38%,#05060a 100%);color:var(--text);min-height:100vh}.hidden{display:none!important}button,input{font:inherit}.pass-shell{width:min(860px,100%);margin:auto;padding:calc(16px + env(safe-area-inset-top)) 18px calc(36px + env(safe-area-inset-bottom))}.pass-topbar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-bottom:24px}.brand img{width:86px;height:56px;object-fit:contain;object-position:left center}.version{font-weight:900;letter-spacing:.08em;color:var(--yellow);font-size:.78rem}.pass-topbar p{margin:3px 0 0;color:var(--muted);font-size:.85rem}.icon-link{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;text-decoration:none;background:var(--card);border:1px solid var(--line);font-size:1.7rem}.center-card,.form-card,.panel{background:rgba(17,21,33,.96);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 18px 60px rgba(0,0,0,.25)}.center-card{text-align:center;padding:72px 24px}.loader{width:44px;height:44px;border:4px solid #303747;border-top-color:var(--pink);border-radius:50%;margin:0 auto 20px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-card h1,.auth-hero h1,.account-header h1{font-size:clamp(2rem,6vw,3.8rem);line-height:1;margin:8px 0 12px}.center-card p,.auth-hero p{color:var(--muted);max-width:55ch}.auth-hero{padding:22px 4px 24px}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:900;color:var(--pink)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#10131d;border:1px solid var(--line);border-radius:18px;padding:5px;margin-bottom:14px}.auth-tabs button{border:0;border-radius:14px;padding:13px;background:transparent;color:var(--muted);font-weight:800}.auth-tabs button.active{background:var(--pink);color:white}.form-card{display:grid;gap:16px}.form-card h2,.panel h2,.birthday-card h2{margin:0}.form-card p{margin:0;color:var(--muted)}label{display:grid;gap:7px;font-weight:750;font-size:.93rem}input{width:100%;border:1px solid #3c4457;border-radius:14px;background:#090c13;color:white;padding:14px 15px;outline:none}input:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(244,37,131,.16)}input:disabled{opacity:.72}.two-col{display:grid;gap:14px}.password-row{display:grid;grid-template-columns:1fr auto}.password-row input{border-radius:14px 0 0 14px}.password-row button{border:1px solid #3c4457;border-left:0;border-radius:0 14px 14px 0;background:#1f2534;color:white;padding:0 13px}.check-row{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:11px;font-weight:500;line-height:1.35}.check-row input{width:19px;height:19px;margin-top:1px;accent-color:var(--pink)}.check-row.optional{color:var(--muted)}small{color:var(--muted);font-weight:500;line-height:1.35}.primary,.secondary,.text-button{border:0;cursor:pointer}.primary{background:linear-gradient(135deg,var(--pink),#ff3476);color:white;border-radius:15px;padding:15px;font-weight:900}.primary:disabled{opacity:.5}.secondary{background:#171c29;color:white;border:1px solid var(--line);border-radius:14px;padding:12px 15px;font-weight:800}.secondary.small{padding:10px 13px}.text-button{background:transparent;color:#f79bc5;padding:5px;font-weight:750}.status-banner{position:sticky;top:12px;z-index:20;margin-bottom:14px;padding:13px 16px;border:1px solid var(--line);border-radius:15px;background:#151a27;box-shadow:0 8px 28px rgba(0,0,0,.35)}.status-banner.success{border-color:rgba(57,217,138,.5);color:#aef0ce}.status-banner.error{border-color:rgba(255,91,110,.5);color:#ffb2bc}.account-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.pass-card{position:relative;overflow:hidden;border-radius:30px;padding:22px;background:linear-gradient(145deg,#161b2a 0%,#10131c 55%,#22112a 100%);border:1px solid #41495c;box-shadow:0 24px 80px rgba(0,0,0,.45)}.pass-glow{position:absolute;width:320px;height:320px;background:radial-gradient(circle,rgba(244,37,131,.26),transparent 65%);right:-100px;top:-100px}.pass-card-head{position:relative;display:flex;justify-content:space-between;align-items:center;font-weight:950;letter-spacing:.12em}.status-chip{font-size:.66rem;background:rgba(57,217,138,.15);color:#91efbf;border:1px solid rgba(57,217,138,.4);padding:7px 10px;border-radius:999px}.pass-card-body{position:relative;display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center;margin:24px 0}.pass-qr{background:white;border-radius:18px;padding:12px;aspect-ratio:1;display:grid;place-items:center}.pass-qr img,.pass-qr svg{width:100%;height:100%;display:block}.pass-person{display:grid;gap:7px}.pass-person strong{font-size:1.65rem}.pass-person span{font-family:ui-monospace,monospace;color:#d9ddec}.pass-balance{position:relative;border-top:1px solid rgba(255,255,255,.13);padding-top:18px;display:flex;align-items:baseline;gap:10px}.pass-balance span{color:var(--muted)}.pass-balance strong{font-size:2.8rem;color:var(--yellow)}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.quick-card{text-align:left;text-decoration:none;color:white;display:grid;gap:5px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:17px;cursor:pointer}.quick-card.accent{background:var(--yellow);color:#05060a;border-color:var(--yellow)}.quick-card small{color:inherit;opacity:.72}.quick-icon{font-size:1.45rem;color:var(--pink)}.quick-card.accent .quick-icon{color:#05060a}.birthday-card{display:grid;grid-template-columns:auto 1fr;gap:16px;background:linear-gradient(135deg,#20142a,#121723);border:1px solid #493753;border-radius:24px;padding:20px;margin-bottom:16px}.birthday-icon{width:54px;height:54px;border-radius:17px;background:rgba(244,37,131,.14);display:grid;place-items:center;font-size:1.7rem}.birthday-card p{color:var(--muted);margin:8px 0}.birthday-status{font-weight:750;color:#ffd5e8}.panel{margin-top:16px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.reward-list,.history-list{display:grid;gap:11px}.history-item{display:grid;grid-template-columns:1fr auto;gap:12px;padding:15px;border:1px solid var(--line);border-radius:17px;background:#0c0f17}.history-item strong{display:block}.history-item p{margin:5px 0 0;color:var(--muted);font-size:.9rem}.reward-item{display:block;padding:0;border:1px solid var(--line);border-radius:17px;background:#0c0f17;overflow:hidden}.reward-summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:62px;padding:14px 15px;cursor:pointer;-webkit-tap-highlight-color:transparent}.reward-summary::-webkit-details-marker{display:none}.reward-summary::marker{content:""}.reward-summary:focus-visible{outline:3px solid rgba(244,37,131,.35);outline-offset:-3px}.reward-summary-title{display:flex;align-items:center;gap:10px;min-width:0}.reward-summary-title strong{min-width:0;line-height:1.25}.reward-icon{display:inline-grid;place-items:center;flex:0 0 auto;min-width:30px;font-size:1.2rem}.reward-summary-meta{display:flex;align-items:center;gap:10px}.reward-toggle{position:relative;width:28px;height:28px;flex:0 0 auto;border:1px solid #3b4354;border-radius:50%;background:#151a25}.reward-toggle::before,.reward-toggle::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;border-radius:2px;background:#d7dce7;transform:translate(-50%,-50%);transition:transform .18s ease}.reward-toggle::after{transform:translate(-50%,-50%) rotate(90deg)}.reward-item[open] .reward-toggle::after{transform:translate(-50%,-50%) rotate(0)}.reward-details{padding:0 15px 15px;border-top:1px solid rgba(255,255,255,.08)}.reward-details p{margin:13px 0 0;color:var(--muted);font-size:.9rem;line-height:1.48}.reward-status{display:block;margin-top:8px}.points-pill{align-self:center;color:var(--yellow);font-weight:950;white-space:nowrap}.progress{height:7px;background:#252b39;border-radius:99px;overflow:hidden;margin-top:11px}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--pink),var(--yellow));border-radius:99px}.empty-state{padding:26px;text-align:center;border:1px dashed #3a4253;border-radius:18px;color:var(--muted)}.profile-form{display:grid;gap:15px}.pilot-note{margin-top:16px;padding:16px;border-radius:18px;border:1px solid rgba(36,181,244,.3);background:rgba(36,181,244,.07);color:#c7eefe}.pilot-note p{margin:6px 0 0;color:#a9ccda}.error-text{color:#ff9eaa}.success-text{color:#8de8ba}@media(min-width:650px){.two-col{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:520px){.pass-card-body{grid-template-columns:128px 1fr;gap:15px}.pass-person strong{font-size:1.25rem}.pass-balance strong{font-size:2.2rem}.birthday-card{grid-template-columns:1fr}.account-header{align-items:flex-end}.account-header h1{font-size:2.25rem}}

.dev-email-panel{margin:0 0 16px;padding:18px;border-radius:18px;border:1px solid rgba(255,240,0,.45);background:rgba(255,240,0,.08);display:grid;gap:10px}.dev-email-panel p{margin:0;color:#eef0ba;line-height:1.45}.dev-email-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.dev-email-actions .primary{display:inline-block;text-decoration:none;padding:12px 16px}.dev-email-actions .text-button{padding:12px 8px}

.pass-present-hint{display:block;margin-top:4px;line-height:1.45;color:#cbd1df}.pass-present-hint strong{color:#fff;font-weight:850}

.points-pending{position:relative;margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(255,181,71,.10);border:1px solid rgba(255,181,71,.35);color:#ffd69a;font-weight:800;font-size:.86rem}.history-item.pending{border-color:rgba(255,181,71,.35);background:rgba(255,181,71,.05)}.pending-pill{color:#ffd17a!important}
.reward-intro{margin:0 0 13px;color:var(--muted);line-height:1.5}.reward-item.available{border-color:rgba(57,217,138,.32);background:rgba(57,217,138,.045)}.reward-item.available .reward-status{color:#91efbf;font-weight:800}.reward-item[open]{border-color:rgba(244,37,131,.42);box-shadow:0 0 0 1px rgba(244,37,131,.08)}.reward-item.available[open]{border-color:rgba(57,217,138,.5)}

.reward-terms{display:block;margin-top:6px;color:#d4d8e3!important;line-height:1.45}.reward-item:not(.available) .reward-terms{color:var(--muted)!important}

/* v0.9.1 – dauerhaft erreichbare Rechtslinks */
.pass-legal-links{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;margin:22px 0 4px;padding:16px 0 4px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;color:var(--muted)}.pass-legal-links a{color:inherit;text-decoration:underline}.pass-legal-links span{width:100%;text-align:center}

/* v0.9.1 – klare Trennung zwischen Teilnahmebedingungen und Datenschutzinformation */
[hidden]{display:none!important}.privacy-info-note{margin:-3px 0 13px;padding:11px 13px;border:1px solid rgba(255,255,255,.11);border-radius:12px;background:rgba(255,255,255,.035);color:var(--muted);font-size:12px;line-height:1.45}.privacy-info-note a{color:var(--pink);font-weight:850}

/* v0.9.1 - öffentliche Neuregistrierung bis zur Rechtsfreigabe gesperrt */
.registration-paused-card{border-color:rgba(255,240,0,.38);background:linear-gradient(145deg,rgba(255,240,0,.075),rgba(17,21,33,.98));}
.registration-paused-card h2{font-size:clamp(1.55rem,5vw,2.15rem);line-height:1.08}
.registration-paused-card p{line-height:1.55}
.registration-legal-link{display:block;text-align:center;text-decoration:none}

/* v0.12.2 – täglicher kostenloser EXUS-Dreh */
.daily-wheel-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:24px;align-items:center;margin:16px 0;padding:24px;border-radius:28px;border:1px solid rgba(255,240,0,.28);background:radial-gradient(circle at 82% 18%,rgba(255,240,0,.15),transparent 32%),linear-gradient(145deg,rgba(37,14,45,.98),rgba(13,18,30,.98));box-shadow:0 20px 64px rgba(0,0,0,.32)}.daily-wheel-copy{position:relative;z-index:2}.daily-wheel-copy h2{margin:6px 0 10px;font-size:clamp(1.65rem,4vw,2.55rem);line-height:1.04}.daily-wheel-copy>p{margin:0;color:var(--muted);line-height:1.5;max-width:48ch}.daily-wheel-status{min-height:24px;margin:15px 0 11px;font-weight:850;color:#fff4a8}.daily-wheel-button{width:min(100%,320px);font-size:1.02rem}.daily-wheel-result{min-height:32px;margin-top:11px;font-size:1.08rem;font-weight:950;color:var(--yellow)}.daily-wheel-result.win{animation:wheelResultPop .45s ease both}@keyframes wheelResultPop{0%{transform:scale(.88);opacity:0}100%{transform:scale(1);opacity:1}}.daily-wheel-probabilities{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 8px}.daily-wheel-probabilities span{padding:6px 8px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(0,0,0,.18);color:#d8dbe4;font-size:.72rem;font-weight:800}.daily-wheel-terms{display:inline-block;margin-top:5px;color:#f7a9ce;font-size:.78rem;text-decoration:underline}.daily-wheel-stage{position:relative;width:min(320px,74vw);aspect-ratio:1;justify-self:center;display:grid;place-items:center}.daily-wheel-pointer{position:absolute;z-index:5;top:-5px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:17px solid transparent;border-right:17px solid transparent;border-top:35px solid white;filter:drop-shadow(0 5px 7px rgba(0,0,0,.55))}.daily-wheel-disc{position:relative;width:100%;height:100%;border-radius:50%;border:9px solid #252b38;box-shadow:0 0 0 3px rgba(255,255,255,.12),0 24px 55px rgba(0,0,0,.5);overflow:hidden;will-change:transform;transform:rotate(0deg)}.daily-wheel-disc:after{content:"EXUS";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#08090d;border:5px solid #fff;font-size:16px;font-weight:950;letter-spacing:.08em}.daily-wheel-label{position:absolute;left:50%;top:50%;width:64px;text-align:center;color:white;font-size:.78rem;font-weight:950;line-height:1.05;text-shadow:0 1px 3px #000;transform-origin:center}.daily-wheel-card.spinning .daily-wheel-button{opacity:.65}.daily-wheel-card.spinning .daily-wheel-status:after{content:" · läuft";color:var(--pink)}@media(max-width:690px){.daily-wheel-card{grid-template-columns:1fr;padding:20px}.daily-wheel-stage{grid-row:1}.daily-wheel-copy{text-align:center}.daily-wheel-copy>p{margin-inline:auto}.daily-wheel-button{width:100%}.daily-wheel-probabilities{justify-content:center}}@media(prefers-reduced-motion:reduce){.daily-wheel-disc{transition-duration:.15s!important}.daily-wheel-result.win{animation:none}}

/* v0.12.2 – kompakte, aufklappbare Prämienliste */
@media(max-width:520px){.reward-summary{min-height:58px;padding:13px 12px}.reward-summary-title{gap:8px}.reward-summary-title strong{font-size:.98rem}.reward-icon{min-width:26px;font-size:1.05rem}.reward-summary-meta{gap:7px}.reward-summary-meta .points-pill{font-size:.98rem}.reward-toggle{width:26px;height:26px}.reward-details{padding:0 12px 13px}}

/* v0.13.4 – Mitarbeiter-Beta, Einladungsregistrierung und Feedback */
.beta-register-card{border-color:rgba(36,181,244,.38);background:linear-gradient(145deg,rgba(36,181,244,.08),rgba(17,21,33,.98))}.invite-status{padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#0b0e15;color:var(--muted);line-height:1.45}.invite-status.valid{border-color:rgba(57,217,138,.45);color:#aef0ce;background:rgba(57,217,138,.07)}.invite-status.invalid{border-color:rgba(255,91,110,.45);color:#ffb2bc;background:rgba(255,91,110,.07)}select,textarea{width:100%;border:1px solid #3c4457;border-radius:14px;background:#090c13;color:#fff;padding:14px 15px;outline:none;font:inherit}select:focus,textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(244,37,131,.16)}textarea{resize:vertical}.employee-beta-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;padding:17px 18px;border:1px solid rgba(36,181,244,.4);border-radius:20px;background:linear-gradient(135deg,rgba(36,181,244,.12),rgba(244,37,131,.08))}.employee-beta-banner strong{display:block;margin:4px 0}.employee-beta-banner p{margin:0;color:#b9cddd;line-height:1.45}.beta-chip{flex:0 0 auto;border-radius:999px;padding:8px 11px;background:var(--blue);color:#061019;font-weight:950;letter-spacing:.08em}.beta-feedback-form{display:grid;gap:15px}.beta-feedback-count{margin-top:12px;color:var(--muted);font-size:.86rem}.beta-feedback-shortcut{border-color:rgba(36,181,244,.38);background:rgba(36,181,244,.07)}.beta-feedback-shortcut .quick-icon{color:var(--blue)}@media(min-width:650px){.employee-beta-banner{padding:18px 22px}.quick-grid:has(.beta-feedback-shortcut:not(.hidden)){grid-template-columns:repeat(5,1fr)}}@media(max-width:520px){.employee-beta-banner{align-items:flex-start}.beta-chip{margin-top:2px}}

/* Customer registration */
.registration-fields{border:0;padding:0;margin:0;min-width:0;display:grid;gap:16px}.registration-fields:disabled{display:none}.registration-fields input[readonly]{opacity:.8} .auth-tabs button:focus-visible{outline:2px solid #f42583;outline-offset:3px}

/* v0.14.17 – self-service deletion request and accessible confirmation */
.account-deletion{margin-top:28px;padding-top:24px;border-top:1px solid var(--line);display:grid;gap:14px}
.account-deletion h3{margin:0;font-size:1.12rem}.account-deletion p{margin:0;color:var(--muted);line-height:1.5}
.account-deletion a{color:#f7a9ce;overflow-wrap:anywhere}.account-deletion>small{display:block}
.deletion-actions{display:flex;flex-wrap:wrap;gap:10px}.deletion-actions button{min-height:48px;white-space:normal}
.deletion-actions button:disabled{opacity:.55;cursor:wait}.deletion-actions button:focus-visible{outline:3px solid var(--pink);outline-offset:3px}
.deletion-status{padding:15px;border:1px solid rgba(57,217,138,.4);border-radius:15px;background:rgba(57,217,138,.06);display:grid;gap:8px}
.deletion-status strong{color:#aef0ce}.deletion-status:focus{outline:2px solid var(--pink);outline-offset:3px}
.deletion-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;border:1px solid var(--line);border-radius:22px;padding:24px;background:var(--card);color:var(--text);box-shadow:0 20px 90px #0009}
.deletion-dialog::backdrop{background:rgba(0,0,0,.78)}.deletion-dialog form{display:grid;gap:18px}
.deletion-dialog h2{margin:0;font-size:1.45rem;line-height:1.2}.deletion-dialog p{margin:0;color:var(--muted);line-height:1.5}
.deletion-dialog .error-text,.account-deletion .error-text{color:#ffb2bc}
@media(max-width:520px){.deletion-dialog{padding:20px}.deletion-actions{flex-direction:column}.deletion-actions button{width:100%}}

.deletion-waiver{border:1px solid var(--line);border-radius:12px;margin:0;padding:14px;display:grid;gap:10px;min-width:0}

.push-settings{margin-top:24px;padding-top:20px;border-top:1px solid #383941}.push-settings p{line-height:1.5}.push-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.push-actions [hidden]{display:none!important}.push-actions button,.push-actions a{min-height:44px}.push-error{color:#ffb6c6}.push-settings small{display:block;line-height:1.5;color:#bcbcc5}
