:root{color:#f9f9ff;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top,#272146 0%,#0d0d16 60%);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-weight:400;line-height:1.4}*,:before,:after{box-sizing:border-box}html{background:#11121a;height:100%}body{background:#11121a;flex-direction:column;min-height:100svh;margin:0;display:flex}#root{color:#0c0c15;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}html:has(.app-shell--light){background:#ececf3}html:has(.app-shell--light) body{background:#ececf3}html:has(.app-shell--light) #root{color:#1a1a24}.app-shell{--event-primary:#8f8f9e;--shell-pad-x:clamp(12px, 5vw, 28px);--shell-pad-y:clamp(16px, 6vw, 36px);--app-bg-solid:#11121a;--app-radial-primary-pct:34%;--app-card-top:color-mix(in srgb, var(--event-primary) 22%, #1a1528);--app-card-bottom:#0d0d16;--app-card-border:color-mix(in srgb, var(--event-primary) 28%, #272739);--app-card-shadow:0 16px 40px #00000059;--app-card-ended-border:color-mix(in srgb, var(--event-primary) 15%, #3a3a48);--app-color-body:#e8e8f0;--app-color-eyebrow:#a1a1b3;--app-heading-mix-base:#f6f6fa;--app-heading-mix-pct:14%;--app-color-subtitle:#c6c6dc;--app-color-subtitle-ended:#a8a8bc;--app-color-meta:#a9aac3;--app-color-status-mix-pct:18%;--app-color-status-base:#dbdcf7;--app-color-error:#ff9da6;box-sizing:border-box;width:100%;max-width:100vw;min-height:100svh;padding-top:max(var(--shell-pad-y), env(safe-area-inset-top,0px));padding-bottom:max(var(--shell-pad-y), env(safe-area-inset-bottom,0px));padding-left:max(var(--shell-pad-x), env(safe-area-inset-left,0px));padding-right:max(var(--shell-pad-x), env(safe-area-inset-right,0px));color:var(--app-color-body);background:radial-gradient(ellipse 140% 90% at 50% -15%, color-mix(in srgb, var(--event-primary) var(--app-radial-primary-pct), transparent) 0%, transparent 55%), var(--app-bg-solid);flex-direction:column;flex:1;justify-content:flex-start;align-items:stretch;display:flex;overflow-x:clip}.app-shell--light{--event-primary:#d6d8e4;--app-bg-solid:#ececf3;--app-radial-primary-pct:22%;--app-card-top:color-mix(in srgb, var(--event-primary) 9%, #fff);--app-card-bottom:#f4f5fa;--app-card-border:color-mix(in srgb, var(--event-primary) 24%, #c8cbd8);--app-card-shadow:0 12px 36px #1216301a;--app-card-ended-border:color-mix(in srgb, var(--event-primary) 22%, #a8aab8);--app-color-body:#1a1a24;--app-color-eyebrow:#5a5a6e;--app-heading-mix-base:#12121c;--app-heading-mix-pct:38%;--app-color-subtitle:#45455a;--app-color-subtitle-ended:#63637a;--app-color-meta:#525266;--app-color-status-mix-pct:32%;--app-color-status-base:#2c2c3a;--app-color-error:#b91c3c}.card{background:radial-gradient(circle at 50% 0%, var(--app-card-top) 0%, var(--app-card-bottom) 65%);border:1px solid var(--app-card-border);text-align:center;width:100%;min-width:0;max-width:min(100%,28rem);min-height:0;box-shadow:var(--app-card-shadow);-webkit-overflow-scrolling:touch;border-radius:clamp(12px,3vw,20px);flex-direction:column;flex:auto;justify-content:flex-start;align-items:stretch;margin-inline:auto;padding:clamp(20px,5vw,32px) clamp(16px,4vw,28px);display:flex;position:relative;overflow-y:auto}.card-info-button{z-index:2;border:1px solid color-mix(in srgb, var(--event-primary) 35%, transparent);background:color-mix(in srgb, var(--app-card-bottom) 70%, transparent);width:2.25rem;height:2.25rem;color:color-mix(in srgb, var(--event-primary) 40%, var(--app-color-eyebrow));cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:absolute;top:clamp(10px,2.2vw,16px);right:clamp(10px,2.2vw,16px)}.card-info-button:hover{background:color-mix(in srgb, var(--event-primary) 16%, var(--app-card-bottom));color:var(--app-color-body)}.card-info-button:focus-visible{outline:2px solid var(--event-primary);outline-offset:2px}.card-info-button__icon{width:1.2rem;height:1.2rem}.info-modal-backdrop{z-index:100;padding:max(16px, env(safe-area-inset-top,0px)) 16px 16px;padding-bottom:max(16px, env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08080e94;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.app-shell--light .info-modal-backdrop{background:#12142452}.info-modal{border:1px solid var(--app-card-border);background:radial-gradient(circle at 50% 0%, var(--app-card-top) 0%, var(--app-card-bottom) 100%);width:100%;max-width:min(22rem,100vw - 32px);max-height:min(100dvh,100svh);box-shadow:var(--app-card-shadow);color:var(--app-color-body);text-align:left;border-radius:clamp(12px,3vw,16px);padding:clamp(18px,4vw,24px);position:relative;overflow-y:auto}.info-modal__close{width:2.25rem;height:2.25rem;color:var(--app-color-eyebrow);cursor:pointer;background:0 0;border:none;border-radius:8px;margin:0;padding:0;font-size:1.5rem;line-height:1;position:absolute;top:6px;right:8px}.info-modal__close:hover{color:var(--app-color-body);background:color-mix(in srgb, var(--event-primary) 12%, transparent)}.info-modal__title{color:color-mix(in srgb, var(--event-primary) var(--app-heading-mix-pct), var(--app-heading-mix-base));margin:0 2rem 12px 0;font-size:1.15rem;font-weight:700}.info-modal__steps{color:var(--app-color-subtitle);margin:0 0 20px;padding-left:1.25rem;font-size:.92rem;line-height:1.45}.info-modal__steps li+li{margin-top:20px}.info-modal__powered{border-top:1px solid var(--app-card-border);text-align:center;flex-direction:column;align-items:center;gap:10px;padding-top:12px;display:flex}.info-modal__powered-label{letter-spacing:.08em;text-transform:uppercase;color:var(--app-color-eyebrow);font-size:.72rem;font-weight:600}.info-modal__logo{object-fit:contain;width:100%;max-width:140px;height:auto;max-height:40px;display:block}.card--event-ended{border-color:var(--app-card-ended-border)}.card--no-event{justify-content:center}.card-header{text-align:center;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:0;padding-bottom:30px;display:flex}.event-logo{object-fit:contain;width:auto;max-width:min(220px,72vw);height:auto;max-height:clamp(52px,16vw,104px);margin:0 0 16px;display:block}.card-center{flex-direction:column;flex:auto;justify-content:center;align-items:center;width:100%;min-height:0;display:flex}.card-error{text-align:center;flex-shrink:0;margin-top:auto}@media (width>=48rem){.app-shell{padding:var(--shell-pad-y) var(--shell-pad-x);padding-left:max(var(--shell-pad-x), env(safe-area-inset-left,0px));padding-right:max(var(--shell-pad-x), env(safe-area-inset-right,0px));padding-bottom:max(var(--shell-pad-y), env(safe-area-inset-bottom,0px));padding-top:max(var(--shell-pad-y), env(safe-area-inset-top,0px));flex:0 auto;justify-content:center;align-items:center;min-height:100svh}.card{flex:0 auto;justify-content:flex-start;min-height:0}}.eyebrow{color:var(--app-color-eyebrow);margin:0;font-size:.9rem}h1{color:color-mix(in srgb, var(--event-primary) var(--app-heading-mix-pct), var(--app-heading-mix-base));margin:8px 0 4px;font-size:clamp(2rem,6vw,2.8rem);line-height:1.05}.subtitle{color:var(--app-color-subtitle);margin:0}.subtitle--ended{color:var(--app-color-subtitle-ended)}.meta{color:var(--app-color-meta);overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;margin:12px 0 0;font-size:clamp(.8rem,2.8vw,.95rem)}.meta--above-tap{text-align:center;margin:0 0 30px}@keyframes tap-button-show-glow{0%,to{box-shadow:0 0 0 4px color-mix(in srgb, var(--event-primary) 52%, black), 0 0 0 8px color-mix(in srgb, var(--event-primary) 24%, transparent), 0 0 30px color-mix(in srgb, var(--event-primary) 48%, transparent), 0 0 56px color-mix(in srgb, var(--event-primary) 32%, transparent), 0 0 82px color-mix(in srgb, var(--event-primary) 18%, transparent), inset 0 2px 12px #ffffff38, inset 0 -6px 16px color-mix(in srgb, var(--event-primary) 38%, black), 0 14px 32px color-mix(in srgb, var(--event-primary) 28%, black)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--event-primary) 62%, white), 0 0 0 9px color-mix(in srgb, var(--event-primary) 30%, transparent), 0 0 38px color-mix(in srgb, var(--event-primary) 58%, transparent), 0 0 72px color-mix(in srgb, var(--event-primary) 38%, transparent), 0 0 98px color-mix(in srgb, var(--event-primary) 22%, transparent), inset 0 2px 14px #ffffff47, inset 0 -6px 16px color-mix(in srgb, var(--event-primary) 38%, black), 0 16px 36px color-mix(in srgb, var(--event-primary) 32%, black)}}.tap-button{--tap-glow-idle:0 0 0 4px color-mix(in srgb, var(--event-primary) 52%, black), 0 0 0 8px color-mix(in srgb, var(--event-primary) 24%, transparent), 0 0 30px color-mix(in srgb, var(--event-primary) 48%, transparent), 0 0 56px color-mix(in srgb, var(--event-primary) 32%, transparent), 0 0 82px color-mix(in srgb, var(--event-primary) 18%, transparent), inset 0 2px 12px #ffffff38, inset 0 -6px 16px color-mix(in srgb, var(--event-primary) 38%, black), 0 14px 32px color-mix(in srgb, var(--event-primary) 28%, black);aspect-ratio:1;letter-spacing:.06em;color:#fffef8;text-align:center;text-transform:uppercase;width:min(220px,85%,72vw);height:auto;text-shadow:0 0 18px color-mix(in srgb, var(--event-primary) 35%, white), 0 0 32px color-mix(in srgb, var(--event-primary) 45%, transparent), 0 2px 6px color-mix(in srgb, var(--event-primary) 65%, black);cursor:pointer;background:radial-gradient(120% 120% at 30% 25%, color-mix(in srgb, var(--event-primary) 45%, white) 0%, color-mix(in srgb, var(--event-primary) 22%, transparent) 42%, transparent 48%), linear-gradient(145deg, color-mix(in srgb, var(--event-primary) 72%, white) 0%, var(--event-primary) 32%, color-mix(in srgb, var(--event-primary) 55%, black) 72%, color-mix(in srgb, var(--event-primary) 78%, black) 100%);background-color:color-mix(in srgb, var(--event-primary) 68%, black);box-shadow:var(--tap-glow-idle);border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:.12em;margin:0 auto;padding:12px;font-size:clamp(.95rem,4vw,1.05rem);font-weight:800;line-height:1.15;transition:transform .14s,filter .14s,opacity .14s;animation:2.4s ease-in-out infinite tap-button-show-glow;display:flex;position:relative}.tap-button__line{text-align:center;line-height:1.1;display:block}@media (prefers-reduced-motion:reduce){.tap-button{box-shadow:var(--tap-glow-idle);animation:none}}.tap-button:active:not(:disabled){filter:brightness(.95);box-shadow:0 0 0 4px color-mix(in srgb, var(--event-primary) 48%, black), 0 0 0 7px color-mix(in srgb, var(--event-primary) 22%, transparent), 0 0 22px color-mix(in srgb, var(--event-primary) 42%, transparent), inset 0 4px 12px color-mix(in srgb, var(--event-primary) 45%, black), 0 8px 20px color-mix(in srgb, var(--event-primary) 32%, black);animation:none;transform:scale(.96)}.tap-button--disabled{cursor:not-allowed;opacity:.5;filter:saturate(.65)brightness(.88);box-shadow:0 0 0 3px color-mix(in srgb, var(--event-primary) 35%, black), 0 0 0 6px color-mix(in srgb, var(--event-primary) 15%, transparent), inset 0 2px 8px color-mix(in srgb, var(--event-primary) 40%, black), 0 8px 20px color-mix(in srgb, var(--event-primary) 25%, black);text-shadow:0 1px 3px color-mix(in srgb, var(--event-primary) 70%, black);animation:none}.status{color:color-mix(in srgb, var(--event-primary) var(--app-color-status-mix-pct), var(--app-color-status-base));min-height:1.5rem;margin:30px 0 0}.error{color:var(--app-color-error);margin:10px 0 0}
