.registration-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:15;display:flex;flex-direction:column;padding:calc(32px + env(safe-area-inset-top)) 28px calc(16px + env(safe-area-inset-bottom));background:url(/electric-castle-2026/game/share-stage-bg.png) center bottom / cover no-repeat;overflow-y:auto}.registration-overlay:not(.registration-overlay--success):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:#00000052;pointer-events:none}.registration-card{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;max-width:420px;margin:0 auto;padding:0 16px;background:transparent;border:none;border-radius:0;box-shadow:none}.registration-overlay--success{display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden;background:none}.registration-overlay--success .registration-success-title{position:relative;z-index:3;margin:0;max-width:min(92%,520px);padding:0 20px;line-height:1.15;text-align:center}.success-notes{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:hidden}.success-note{position:absolute;width:9%;max-width:60px}.success-note--center{transform:translate(-50%)}.success-note__float{animation:successNoteFloat var(--float-dur, 3s) ease-in-out infinite;animation-delay:var(--float-delay, 0s)}.success-note__img{display:block;width:100%;height:auto;object-fit:contain;transform-origin:center center;animation:successNoteSpin var(--spin-dur, 14s) linear infinite,successNoteGlow 2.2s ease-in-out infinite;animation-delay:0s,var(--glow-delay, 0s)}@keyframes successNoteFloat{0%,to{translate:0 0}50%{translate:0 -12px}}@keyframes successNoteSpin{0%{transform:rotate(var(--rot, 0deg)) scale(var(--note-scale, 1))}to{transform:rotate(calc(var(--rot, 0deg) + 360deg)) scale(var(--note-scale, 1))}}@keyframes successNoteGlow{0%,to{filter:drop-shadow(0 0 6px rgba(254,107,217,.8)) drop-shadow(0 0 12px rgba(245,239,57,.35))}50%{filter:drop-shadow(0 0 14px rgba(254,107,217,1)) drop-shadow(0 0 24px rgba(245,239,57,.7)) drop-shadow(0 0 32px rgba(180,80,255,.55))}}.registration-title{margin:0 0 16px;font-size:clamp(1.5rem,7vw,2rem);font-weight:400;line-height:1.1;text-align:center;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.registration-subtitle{margin:0 0 20px;font-size:clamp(1.3rem,5.25vw,1.5rem);font-weight:400;line-height:1.3;text-align:center;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.registration-form{display:flex;flex-direction:column;gap:14px;padding:0 8px}.form-field{display:flex;flex-direction:column;gap:5px}.form-label{font-size:.78rem;font-weight:400;color:#fff;letter-spacing:.01em;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.form-label__required{color:#fff;font-weight:600}.form-input{width:100%;padding:12px 14px;font-size:.95rem;font-family:inherit;color:#0a0a0a;background:#fff;border:none;border-radius:16px;box-shadow:0 0 5px red,0 0 5px red,0 0 5px red;outline:none;transition:box-shadow .15s ease}.form-input::placeholder{color:#0a0a0a66}.form-input:focus{box-shadow:0 0 8px red,0 0 12px red,0 0 16px red}.form-input--error{box-shadow:0 0 8px red,0 0 12px #f44,0 0 16px red}.form-error{font-size:.72rem;color:#faa;margin-top:2px;text-shadow:0 0 4px #ff0000}.form-checkboxes{display:flex;flex-direction:column;gap:12px;margin-top:8px}.form-checkbox{display:flex;align-items:flex-start;gap:8px;cursor:pointer;-webkit-tap-highlight-color:transparent}.form-checkbox input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.form-checkbox__box{flex-shrink:0;width:16px;height:16px;margin-top:2px;border:none;border-radius:4px;background:#fff;box-shadow:0 0 5px red,0 0 5px red,0 0 5px red;position:relative;transition:background .15s ease}.form-checkbox input:checked+.form-checkbox__box{background:#e4007c}.form-checkbox input:checked+.form-checkbox__box:after{content:"";position:absolute;top:1px;left:4px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.form-checkbox input:focus-visible+.form-checkbox__box{box-shadow:0 0 8px red,0 0 12px red,0 0 16px red}.form-checkbox--error .form-checkbox__box{box-shadow:0 0 8px red,0 0 12px #f44,0 0 16px red}.form-checkbox__text{font-size:.72rem;line-height:1.4;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.form-link{color:#fff;text-decoration:underline;text-underline-offset:2px}.form-link:hover{color:#ffe0e0}.form-submit-error{margin:8px 0 0;padding:10px 12px;font-size:.82rem;line-height:1.4;color:#fff;background:#00000073;border:none;border-radius:16px;text-align:center;box-shadow:0 0 5px red,0 0 5px red,0 0 5px red}.form-buttons{display:flex;flex-direction:column;gap:10px;margin-top:4px;text-align:center}.form-buttons .btn-submit,.form-buttons .btn-secondary{width:100%;max-width:none;margin-left:0;margin-right:0}.rules-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:9;display:flex;align-items:center;justify-content:center;padding:calc(12px + env(safe-area-inset-top)) 14px calc(12px + env(safe-area-inset-bottom));box-sizing:border-box;pointer-events:auto}.rules-overlay__dim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0804208c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.rules-panel{position:relative;z-index:1;width:min(100%,400px);max-height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:18px 16px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.28);background:linear-gradient(155deg,#ffffff38,#ffffff14 45%,#7850c82e);box-shadow:0 0 0 1px #ffffff0f inset,0 12px 40px #00000073,0 0 24px #fe6bd91f;backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2)}.rules-panel__shine{pointer-events:none;position:absolute;top:0;left:0;right:0;height:42%;border-radius:20px 20px 60% 60%;background:linear-gradient(180deg,#ffffff59,#fff0)}.rules-panel__title{position:relative;margin:0 0 8px;font-size:clamp(1.35rem,5.5vw,1.65rem);font-weight:400;line-height:1.15;text-align:center;color:#fff;text-shadow:0 0 6px #ff0000,0 0 12px rgba(254,107,217,.5)}.rules-panel__lead,.rules-panel__footer,.rules-panel__controls{position:relative;margin:0 0 12px;font-size:.88rem;line-height:1.45;text-align:center;color:#ffffffeb}.rules-panel__controls{margin-bottom:14px;font-size:.82rem;color:#ffffffc7}.rules-steps{position:relative;list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:10px}.rules-step{display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:#00000047;border:1px solid rgba(255,255,255,.1)}.rules-step__visual{flex:0 0 56px;width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ffffff14}.rules-step__img{max-width:48px;max-height:48px;object-fit:contain}.rules-step__text{flex:1 1 auto;min-width:0}.rules-step__title{margin:0 0 4px;font-size:.95rem;font-weight:400;color:#f5ef39;text-shadow:0 0 8px rgba(245,239,57,.45)}.rules-step__body{margin:0;font-size:.8rem;line-height:1.4;color:#ffffffe6}.rules-step__scores{margin:8px 0 0;font-size:.95rem;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:.04em}.rules-step__scores-sep{color:#ffffff8c;text-shadow:none}.rules-step__score--gain{color:#7dff4a;text-shadow:0 0 6px rgba(125,255,74,.9),0 0 12px rgba(125,255,74,.5)}.rules-step__score--loss{color:#ff4d4d;text-shadow:0 0 6px rgba(255,77,77,.9),0 0 12px rgba(255,77,77,.5)}.rules-panel__cta{position:relative;display:block;width:100%;margin:0}.catch-glow-root,.catch-glow-root *,.catch-glow-root *:before,.catch-glow-root *:after{box-sizing:border-box;font-weight:400}html.catch-glow-page,html.catch-glow-page body{margin:0;min-height:100%;min-height:100dvh;height:100%;overflow:hidden;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;font-family:Staatliches,Segoe UI,system-ui,sans-serif;font-weight:400}html.catch-glow-page{background-color:#05030a}html.catch-glow-page body{position:relative;color:#f2f2f4;background-color:transparent}.catch-glow-root{position:relative;z-index:0;width:100%;min-height:100%;height:100%;display:flex;flex-direction:column;font-family:Staatliches,Segoe UI,system-ui,sans-serif;font-weight:400;color:#f2f2f4;overflow:hidden;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;box-sizing:border-box}html.catch-glow-page .catch-glow-root{min-height:100dvh}.catch-glow-root:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:url(/electric-castle-2026/game/bg-stage.jpg) center / cover no-repeat;pointer-events:none}.catch-glow-root:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:#0000004d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.catch-glow-root.catch-glow-root--lite-window:before,.catch-glow-root.catch-glow-root--lite-window:after{display:none;content:none;backdrop-filter:none;-webkit-backdrop-filter:none}@media(max-width:768px){.catch-glow-root:before,.catch-glow-root:after{display:none;content:none;backdrop-filter:none;-webkit-backdrop-filter:none}}@media(prefers-reduced-motion:reduce){.catch-glow-root:before{transform:none}}.shell{--accent: #e4002b;--accent-soft: rgba(228, 0, 43, .35);--panel: rgba(18, 18, 22, .78);--scene-max-w: 480px;--scene-max-h: 840px;--scene-edge-y: 15px;--btn-radius: 16px;--btn-cta-shadow: 0 0 5px #ff0000, 0 0 5px #ff0000, 0 0 5px #ff0000;margin:0 auto;width:100%;max-width:none;flex:1 1 auto;min-height:100%;height:100%;max-height:100%;display:flex;flex-direction:column;position:relative;z-index:2;background:#1a0a6a;box-shadow:0 0 0 1px #ffffff0f inset}html.catch-glow-page .catch-glow-root{align-items:center;justify-content:center;min-height:100dvh}html.catch-glow-page .catch-glow-root .shell{aspect-ratio:480 / 840;width:min(var(--scene-max-w),100vw,calc((100dvh - 2 * var(--scene-edge-y)) * 480 / 840));height:min(var(--scene-max-h),calc(100dvh - 2 * var(--scene-edge-y)),175vw);flex:0 0 auto;min-height:0;max-height:min(var(--scene-max-h),calc(100dvh - 2 * var(--scene-edge-y)));margin:var(--scene-edge-y) auto;overflow:hidden}.shell-main{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;background:transparent}.shell-main--inactive{pointer-events:none;-webkit-user-select:none;user-select:none}@media(max-width:1023.98px){html.catch-glow-page .catch-glow-root .shell{--scene-edge-y: 0px;margin-block:0;margin-inline:auto;width:min(100vw,calc(100dvh * 480 / 840));height:min(100dvh,175vw);max-width:none;max-height:none}}@media(min-width:1024px){html.catch-glow-page .catch-glow-root .shell{--scene-edge-y: 20px;max-width:none;max-height:none;width:min(100vw,calc((100dvh - 2 * var(--scene-edge-y)) * 480 / 840));height:min(calc(100dvh - 2 * var(--scene-edge-y)),175vw);margin:var(--scene-edge-y) auto;border-radius:24px;box-shadow:0 0 0 1px #ffffff14 inset,0 20px 56px #0000006b}html:not(.catch-glow-page) .catch-glow-root{align-items:stretch;justify-content:stretch;min-height:100%;height:100%}html:not(.catch-glow-page) .catch-glow-root .shell{width:100%;max-width:none;flex:1 1 auto;min-height:100%;height:100%;max-height:none;margin:0;border-radius:0;box-shadow:0 0 0 1px #ffffff0f inset}.stage-wrap{margin:0;border-radius:0}}.stage-wrap{flex:1 1 auto;display:flex;flex-direction:column;position:relative;min-height:0;margin:0;overflow:hidden}.scene-hud{position:absolute;top:0;left:0;right:0;z-index:10;pointer-events:none}.scene-progress-bar{width:100%;height:2px;background:#0006;overflow:hidden}.scene-progress-bar__fill{height:100%;transition:width .1s linear}.scene-hud__row{display:flex;justify-content:space-between;align-items:flex-start;padding:calc(16px + env(safe-area-inset-top)) 12px 0}.hud-score,.hud-timer{display:flex;flex-direction:column;gap:4px}.hud-score{align-items:flex-start}.hud-score__row{display:flex;align-items:center;gap:8px;min-height:1.25rem}.hud-score__value-wrap{position:relative;display:inline-flex;align-items:center}.hud-score-pop{position:absolute;left:calc(100% + 10px);top:50%;font-size:.95rem;font-weight:400;font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;pointer-events:none;animation:hudScorePop .9s ease-out forwards}.hud-score-pop--gain{color:#7dff4a;text-shadow:0 0 6px rgba(125,255,74,.9),0 0 12px rgba(125,255,74,.5)}.hud-score-pop--loss{color:#ff4d4d;text-shadow:0 0 6px rgba(255,77,77,.9),0 0 12px rgba(255,77,77,.5)}@keyframes hudScorePop{0%{opacity:0;transform:translateY(-50%) translate(6px)}18%{opacity:1;transform:translateY(-50%) translate(0)}72%{opacity:1;transform:translateY(-50%) translate(0)}to{opacity:0;transform:translateY(-70%) translate(0)}}.hud-timer{align-items:flex-end}.hud-score__img,.hud-timer__img{display:block;height:30px;width:auto;object-fit:contain;flex-shrink:0;line-height:0}.hud-score__value{font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 0 8px #fe6bd9,0 0 16px #fe6bd9,0 0 24px #fe6bd9;letter-spacing:.08em;margin-left:12px}.hud-timer__value{font-size:1rem;font-weight:400;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 0 8px #F5EF39,0 0 16px #F5EF39,0 0 24px #F5EF39;letter-spacing:.08em;margin-right:18px}.stage-canvas-area{flex:1 1 auto;position:relative;min-height:0;align-self:stretch;width:100%;overflow:hidden;background-color:#1a0a6a}.stage-canvas-area__bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:url(/electric-castle-2026/game/bg-stage.jpg);background-repeat:no-repeat;background-size:115% auto;background-position:50% center}@media(prefers-reduced-motion:reduce){.stage-canvas-area__bg{background-position:50% center!important}}.game-canvas{position:relative;z-index:2;display:block;width:100%;height:100%;touch-action:none;background:transparent}.stage-fog{position:absolute;bottom:0;left:0;width:100%;aspect-ratio:804 / 946;max-height:60%;background:url(/electric-castle-2026/game/fog.png) bottom center / 100% 100% no-repeat;pointer-events:none;z-index:1;opacity:.85;animation:fogDrift 8s ease-in-out infinite;transform-origin:center bottom}.stage-fog.fog--static,.intro-fog.fog--static{animation:none}@keyframes fogDrift{0%{opacity:.75;transform:translateY(0) rotateX(0)}25%{opacity:.9;transform:translateY(-2%) rotateX(2deg)}50%{opacity:.7;transform:translateY(0) rotateX(0)}75%{opacity:.85;transform:translateY(-1%) rotateX(1deg)}to{opacity:.75;transform:translateY(0) rotateX(0)}}.intro-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;background:url(/electric-castle-2026/game/bg-stage.jpg) center center / cover no-repeat;overflow:hidden}.intro-header{position:absolute;top:0;right:0;z-index:10;display:flex;justify-content:flex-end;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 16px}.intro-mute{flex-shrink:0}.intro-body{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.intro-top{position:absolute;top:calc(3% + 20px);left:50%;transform:translate(-50%);width:70%;z-index:100;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.intro-title{margin:0;width:47.15%;max-width:100%;display:flex;flex-direction:column;align-items:center;gap:.15rem;font-family:Henkel GT Flexa Compressed,sans-serif;font-weight:700;font-style:normal;font-size:58px;line-height:.92;letter-spacing:-.02em;text-transform:uppercase;color:#fdec31;text-align:center;pointer-events:none}.intro-title__line{display:block;white-space:nowrap}.intro-title__line--bottom{font-size:64px}.intro-instructions{width:100%;max-width:320px;margin:0;padding:10px 16px;text-align:center;font-size:.9rem;letter-spacing:.05em;color:#fff;background:#00000080;border-radius:12px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;pointer-events:auto}.intro-instructions--ended{max-width:360px;font-size:1rem;line-height:1.45;letter-spacing:.03em}.intro-start-btn{position:absolute;top:50%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;width:50%;background:transparent;border:none;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.intro-start-btn__button{width:100%;height:auto;object-fit:contain}.intro-start-btn__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-70%);width:70%;height:auto;object-fit:contain;pointer-events:none}.intro-start-btn__subtitle{position:absolute;bottom:27px;left:50%;transform:translate(-50%);width:70%;height:auto;object-fit:contain;pointer-events:none}.intro-stage{position:absolute;bottom:3%;left:50%;transform:translate(-50%);width:55%;height:auto;object-fit:contain;z-index:1;pointer-events:none}.intro-products{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.intro-overlay{--parallax-x: 0px;--parallax-y: 0px}.intro-overlay--no-parallax .intro-product{translate:none;transition:none}.intro-fog{position:absolute;bottom:0;left:0;width:100%;aspect-ratio:804 / 946;max-height:60%;background:url(/electric-castle-2026/game/fog.png) bottom center / 100% 100% no-repeat;pointer-events:none;z-index:1;opacity:.85;animation:fogDrift 8s ease-in-out infinite;transform-origin:center bottom}.intro-product{position:absolute;height:auto;object-fit:contain;animation-fill-mode:backwards;transition:translate .15s ease-out;translate:var(--parallax-x) var(--parallax-y)}@keyframes pulseLayer1{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes pulseLayer2{0%,to{transform:translate(-50%,-70%) scale(1)}50%{transform:translate(-50%,-70%) scale(1.15)}}@keyframes pulseLayer3{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.12)}}.intro-start-btn__button{animation:pulseLayer1 3s ease-in-out infinite}.intro-start-btn__text{animation:pulseLayer2 3s ease-in-out infinite .15s}.intro-start-btn__subtitle{animation:pulseLayer3 3s ease-in-out infinite .3s}@keyframes floatProduct{0%,to{transform:translateY(0) rotate(var(--rot, 0deg))}50%{transform:translateY(-12px) rotate(calc(var(--rot, 0deg) + 3deg))}}.intro-product--1{left:9%;top:8%;width:8%;--rot: -15deg;transform:rotate(-15deg);animation:floatProduct 3.2s ease-in-out infinite}.intro-product--2{left:35%;top:28%;width:9.6%;--rot: 12deg;transform:rotate(12deg);animation:floatProduct 3.5s ease-in-out infinite;animation-delay:.3s}.intro-product--3{left:8%;top:44%;width:8%;--rot: -8deg;transform:rotate(-8deg);animation:floatProduct 2.9s ease-in-out infinite;animation-delay:.6s}.intro-product--4{left:13%;top:66%;width:7.2%;--rot: 10deg;transform:rotate(10deg);animation:floatProduct 3.3s ease-in-out infinite;animation-delay:.9s}.intro-product--5{right:13%;top:18%;width:12.8%;--rot: 8deg;transform:rotate(8deg);animation:floatProduct 3.1s ease-in-out infinite;animation-delay:.15s}.intro-product--6{right:5%;top:35%;width:8%;--rot: -12deg;transform:rotate(-12deg);animation:floatProduct 3.4s ease-in-out infinite;animation-delay:.45s}.intro-product--7{right:7%;top:58%;width:5.6%;--rot: 15deg;transform:rotate(15deg);animation:floatProduct 2.8s ease-in-out infinite;animation-delay:.75s}.intro-product--8{right:9%;top:79%;width:23.2%;--rot: -5deg;transform:rotate(-5deg);animation:floatProduct 3.6s ease-in-out infinite;animation-delay:1s}.intro-start-btn:active .intro-start-btn__button{transform:scale(.95)}.scene-mute-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:50%;border:3px solid #0a0a0a;background:#fff;box-shadow:4px 4px #0a0a0a;color:#0a0a0a;cursor:pointer;-webkit-tap-highlight-color:transparent}.scene-mute-btn:active{transform:translate(2px,2px);box-shadow:2px 2px #0a0a0a}.scene-mute-btn__icon{width:22px;height:22px;display:block}.portrait-lock-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:calc(20px + env(safe-area-inset-top)) 24px calc(20px + env(safe-area-inset-bottom));box-sizing:border-box;overflow:hidden;pointer-events:auto}.portrait-lock-overlay__bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:url(/electric-castle-2026/game/share-stage-bg.png) center bottom / cover no-repeat}.portrait-lock-overlay__glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#00000059;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 0 60px 20px #b450ff40,inset 0 0 120px 40px #50a0ff26;pointer-events:none}.portrait-lock-overlay__title{position:relative;z-index:2;margin:0;max-width:min(92%,520px);padding:0 20px;font-size:clamp(1.5rem,7vw,2.25rem);font-weight:400;line-height:1.15;text-align:center;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.end-scene-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;display:flex;flex-direction:column;overflow:hidden}.end-scene-overlay__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/electric-castle-2026/game/share-stage-bg.png) center bottom / cover no-repeat;z-index:0}.end-scene-overlay__glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#00000059;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 0 60px 20px #b450ff40,inset 0 0 120px 40px #50a0ff26;pointer-events:none}.end-scene-overlay__content{position:relative;z-index:2;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;width:100%;max-width:380px;margin:0 auto;padding:calc(12px + env(safe-area-inset-top)) 14px 10px;box-sizing:border-box;overflow:hidden}.end-scene-overlay__title{margin:4% 0 8px;font-size:clamp(3rem,15vw,4.5rem);font-weight:400;line-height:1;text-align:center;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.end-scene-overlay__best-score{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.35em;margin:0 0 8px;font-size:clamp(1.3rem,5.25vw,1.5rem);font-weight:400;line-height:1.25;text-align:center;color:#fff;text-shadow:0 0 5px #ff0000,0 0 5px #ff0000,0 0 5px #ff0000}.end-scene-overlay__best-score-value{font:inherit;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:inherit;text-shadow:inherit}.end-scene-overlay__best-score--session-best{margin-top:0;font-size:clamp(1.05rem,4.5vw,1.25rem);opacity:.92}.end-leaderboard{width:100%;margin:0 0 16px}.end-leaderboard__table-wrap{width:100%;border-radius:14px;background:#0000006b;border:1px solid rgba(255,255,255,.14);overflow:hidden}.end-leaderboard__table-wrap--continued{margin-top:4px;border-top-left-radius:8px;border-top-right-radius:8px}.end-leaderboard__table{width:100%;border-collapse:collapse;font-size:.82rem;font-variant-numeric:tabular-nums}.end-leaderboard__table thead{background:#00000059}.end-leaderboard__table th,.end-leaderboard__table td{padding:8px 10px;text-align:left;color:#f2f2f4f2}.end-leaderboard__table th{font-size:.72rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;color:#f2f2f499}.end-leaderboard__table th:last-child,.end-leaderboard__table td:last-child{text-align:right}.end-leaderboard__table th:first-child,.end-leaderboard__table td:first-child{width:2.2rem;text-align:center}.end-leaderboard__table tbody tr:nth-child(2n){background:#ffffff0a}.end-leaderboard__table tbody tr.end-leaderboard__row--player{background:var(--accent);color:#fff}.end-leaderboard__table tbody tr.end-leaderboard__row--player td{color:#fff;text-shadow:none}.end-leaderboard__table tbody tr.end-leaderboard__row--player:nth-child(2n){background:var(--accent)}.end-leaderboard__table tbody tr:first-child td{color:#fff;text-shadow:0 0 6px rgba(255,80,120,.45)}.end-scene-overlay__panel{position:relative;z-index:2;flex:0 0 auto;width:100%;max-width:380px;margin:0 auto;padding:8px 14px calc(12px + env(safe-area-inset-bottom));box-sizing:border-box}.btn-ghost--replay{margin-top:6px}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:24px;background:#050508b8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.overlay[hidden]{display:none!important}.overlay-card{width:min(100%,320px);background:linear-gradient(160deg,#1a1a22,#121218);border:1px solid rgba(255,255,255,.09);border-radius:20px;padding:28px 22px;text-align:center;box-shadow:0 24px 48px #00000073,0 0 0 1px var(--accent-soft)}.overlay-title{margin:0 0 8px;font-size:1.05rem;font-weight:400}.overlay-score{margin:0 0 22px;font-size:1rem;color:#f2f2f4e0}.overlay-score strong{color:#fff;font-size:1.35rem}.overlay-sub{margin:-12px 0 18px;font-size:.8rem;color:#f2f2f48c}.catch-glow-root .btn-primary,.catch-glow-root .btn-secondary,.catch-glow-root .btn-ghost,.catch-glow-root .btn-submit,.catch-glow-root .btn-back{display:block;width:100%;border-radius:var(--btn-radius, 16px);font-family:inherit;font-weight:400;cursor:pointer;-webkit-tap-highlight-color:transparent;box-sizing:border-box}.catch-glow-root .btn-primary,.catch-glow-root .btn-submit{padding:14px 20px;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--accent);border:none;box-shadow:var(--btn-cta-shadow);transition:transform .08s ease,filter .15s ease}.catch-glow-root .btn-primary{margin-bottom:10px}.catch-glow-root .btn-primary:active,.catch-glow-root .btn-submit:active:not(:disabled){transform:scale(.98)}.catch-glow-root .btn-submit:disabled{opacity:.6;cursor:not-allowed}.catch-glow-root .btn-secondary{padding:12px 18px;font-size:.95rem;letter-spacing:.02em;text-transform:none;color:#f2f2f4eb;background:#00000052;border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px #0003;margin-bottom:10px}.catch-glow-root .btn-secondary:active{transform:scale(.98);background:#00000070}.catch-glow-root .end-scene-overlay__panel .btn-primary,.catch-glow-root .end-scene-overlay__panel .btn-secondary{padding:14px 20px;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;border-width:1px;border-style:solid;line-height:1.2}.catch-glow-root .end-scene-overlay__panel .btn-primary{border-color:transparent;box-shadow:var(--btn-cta-shadow),inset 0 0 24px #00000038}.catch-glow-root .end-scene-overlay__panel .btn-secondary{background:#0000005c;box-shadow:inset 0 0 28px #00000047}.catch-glow-root .registration-form .btn-submit,.catch-glow-root .registration-form .btn-secondary{padding:14px 20px;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;border-width:1px;border-style:solid;line-height:1.2}.catch-glow-root .registration-form .btn-submit{border-color:transparent;box-shadow:var(--btn-cta-shadow),inset 0 0 24px #00000038}.catch-glow-root .registration-form .btn-secondary{background:#0000005c;box-shadow:inset 0 0 28px #00000047}.catch-glow-root .btn-back{padding:12px 18px;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#00000059;border:none;box-shadow:none;margin-bottom:10px}.catch-glow-root .btn-back:active{transform:scale(.98);background:#00000073}.catch-glow-root .btn-ghost{padding:12px 16px;font-size:.95rem;background:transparent;color:#f2f2f4b3;border:1px solid rgba(255,255,255,.14);margin-bottom:10px}.catch-glow-root .btn-ghost:active{background:#ffffff0d}.overlay-card--end{width:min(100%,360px);max-height:min(92dvh,900px);overflow-y:auto;padding:20px 18px 24px}.overlay-score--compact{margin:0 0 14px}.catch-glow-root .btn-secondary:focus-visible,.catch-glow-root .btn-back:focus-visible{outline:2px solid rgba(255,255,255,.45);outline-offset:2px}.catch-glow-root .btn-primary:focus-visible,.catch-glow-root .btn-submit:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}@media(prefers-reduced-motion:reduce){.catch-glow-root,.catch-glow-root *,.catch-glow-root *:before,.catch-glow-root *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
