@font-face{font-family:FFMarkPro;src:url(/fonts/FFMarkPro-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:FFMarkPro;src:url(/fonts/FFMarkPro-Bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--purple: #7f75f8;--navy: #051b3f;--white: #ffffff;--yellow: #fed13f;--magenta: #d55cfd;--bg: var(--white);--text: var(--navy);--font-sans: "FFMarkPro", system-ui, -apple-system, sans-serif;--spring-bounce: cubic-bezier(.175, .885, .32, 1.275);--spring-smooth: cubic-bezier(.34, 1.56, .64, 1)}html.dark{--bg: #051b3f;--text: #ffffff}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;transition:background .3s ease,color .3s ease}.page{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(1rem,3vh,2.5rem);padding:clamp(1.5rem,5vw,4rem);text-align:center}.logo{width:clamp(160px,22vw,260px);height:auto}.lead{margin:0;font-size:clamp(1rem,2.5vw,1.4rem);font-weight:600;letter-spacing:.02em;color:var(--purple);text-transform:uppercase}.counter{display:inline-grid;justify-items:center;font-size:clamp(3.5rem,18vw,12rem);font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.counter>span{grid-area:1 / 1}.counter__sizer{visibility:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.spenden-button{border:none;border-radius:999rem;padding:.95rem 2.6rem;background:var(--purple);color:var(--white);font-family:inherit;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:700;cursor:pointer;transition:transform .08s ease,box-shadow .15s ease,background .15s ease;box-shadow:0 8px 24px #7f75f859}.spenden-button:hover{background:#6c61f6}.spenden-button:active{transform:scale(.96)}.spenden-button:focus-visible{outline:3px solid var(--magenta);outline-offset:3px}.hint{margin:0;color:color-mix(in srgb,var(--text) 65%,transparent);font-size:1rem}.hint kbd{font-family:inherit;font-weight:700;background:var(--yellow);color:var(--navy);border-radius:.4rem;padding:.1rem .55rem}.status{position:fixed;bottom:1rem;right:1rem;font-size:.85rem;font-weight:600}.status--live{color:#22c55e}.status--offline{color:color-mix(in srgb,var(--text) 45%,transparent)}html.dark .logo{filter:brightness(0) invert(1)}.info-button{position:fixed;top:1rem;left:1rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:.5rem;cursor:pointer;border-radius:50%;display:inline-flex;color:var(--text);transition:transform .1s ease,opacity .15s ease;opacity:.7}.info-button:hover{opacity:1}.info-button:active{transform:scale(.92)}.info-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}.info-button__icon{width:28px;height:28px}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#051b3f8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog__panel{width:min(26rem,92vw);background:var(--bg);color:var(--text);border-radius:1rem;padding:1.5rem;box-shadow:0 24px 60px #051b3f59;border:1px solid color-mix(in srgb,var(--text) 12%,transparent)}.dialog__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.dialog__title{margin:0;font-size:1.25rem;font-weight:700}.dialog__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:inherit;font-size:1.2rem;line-height:1;cursor:pointer;padding:.25rem .5rem;border-radius:.5rem;opacity:.7;margin-left:auto}.dialog__close:hover{opacity:1}.dialog__close:focus{outline:none}.admin-tools__group{display:flex;flex-direction:column;gap:.6rem}.admin-tools__label{font-weight:600;font-size:.95rem}.admin-tools__row{display:flex;align-items:center;gap:.6rem}.admin-tools__input{flex:1;min-width:0;font-family:inherit;font-size:1.1rem;padding:.6rem .8rem;border-radius:.6rem;border:1px solid color-mix(in srgb,var(--text) 25%,transparent);background:var(--bg);color:var(--text)}.admin-tools__input:focus-visible{outline:2px solid var(--purple);outline-offset:1px}.admin-tools__suffix{font-weight:600;opacity:.7}.admin-tools__row .spenden-button{padding:.6rem 1.2rem;font-size:1rem;box-shadow:none}.admin-tools__divider{border:none;border-top:1px solid color-mix(in srgb,var(--text) 12%,transparent);margin:1.5rem 0}.admin-tools__danger{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;border-radius:999rem;padding:.6rem 1.4rem;background:transparent;color:#ef4444;border:2px solid #ef4444;transition:background .15s ease,color .15s ease}.admin-tools__danger:hover{background:#ef4444;color:var(--white)}.admin-tools__danger:disabled,.admin-tools__row .spenden-button:disabled{opacity:.5;cursor:not-allowed}.theme-toggle{position:fixed;top:1rem;right:1rem;z-index:10;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:.5rem;cursor:pointer;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:visible;color:var(--text)}.theme-toggle:hover .theme-toggle__icon{animation:wiggle-sun .4s ease-out}html.dark .theme-toggle:hover .theme-toggle__icon{animation:wiggle-moon .4s ease-out}.theme-toggle:focus-visible{outline:2px solid currentColor;outline-offset:2px}@keyframes wiggle-sun{0%,to{transform:rotate(0)}20%{transform:rotate(-5deg)}40%{transform:rotate(5deg)}60%{transform:rotate(-3deg)}80%{transform:rotate(3deg)}}@keyframes wiggle-moon{0%,to{transform:rotate(-45deg)}20%{transform:rotate(-57deg)}40%{transform:rotate(-33deg)}60%{transform:rotate(-53deg)}80%{transform:rotate(-37deg)}}.theme-toggle__icon{display:block;transform-origin:center;transition:transform .5s var(--spring-bounce);overflow:visible}html.dark .theme-toggle__icon{transform:rotate(-45deg)}.theme-toggle__rays{transform-origin:center;transition:transform .4s var(--spring-smooth),opacity .3s ease;transform:scale(1);opacity:1}.theme-toggle__rays line{stroke:currentColor}html.dark .theme-toggle__rays{transform:scale(0);opacity:0}.theme-toggle__circle{transform-origin:center;transition:transform .5s var(--spring-bounce);transform:scale(1)}html.dark .theme-toggle__circle{transform:scale(1.8)}.theme-toggle__mask{transition:transform .5s var(--spring-bounce);transform:translate(20px)}html.dark .theme-toggle__mask{transform:translate(0)}
