.stage-scene{isolation:isolate;border:1px solid hsl(var(--border));border-radius:1rem;flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden;container-type:inline-size}.stage-scene--stage,.stage-scene--cinema{height:100%;min-height:0}.stage-scene--fixed{z-index:10;border:none;border-radius:0;height:100dvh;position:fixed;inset:0}.stage-shell:not(.stage-shell--mobile) .stage-shell__scene{justify-content:center;align-items:stretch;display:flex;overflow:hidden;container-type:size}.stage-shell:not(.stage-shell--mobile) .stage-scene--stage,.stage-shell:not(.stage-shell--mobile) .stage-scene--cinema{flex:auto;width:100%;max-width:none}.stage-scene--dim .stage-scene__bg-img{filter:brightness(.55)saturate(.85)}.stage-scene__bg{z-index:0;pointer-events:none;position:absolute;inset:0}.stage-scene__bg-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%}.stage-scene__bg-fallback{width:100%;height:100%}.stage-scene__bg-shade{background:linear-gradient(#0000 55%,#09090c8c 100%);position:absolute;inset:0}.stage-scene__fx{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.stage-scene__viz{opacity:.72;pointer-events:none;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(#000000eb 0%,#000 44%,#000000f5 100%);mask-image:linear-gradient(#000000eb 0%,#000 44%,#000000f5 100%)}.stage-scene--ambient .stage-scene__viz{opacity:.84}.stage-scene--cinema .stage-scene__viz,.stage-scene--fullscreen .stage-scene__viz{opacity:.8}.stage-scene__stage{z-index:2;flex-direction:column;flex:none;align-items:center;width:min(100%,177.778cqh);max-width:1920px;margin-inline:auto;padding:clamp(12px,2.2vh,28px) 4% clamp(2px,.7vh,10px);display:flex;position:relative}.stage-scene--cinema .stage-scene__stage{width:min(100%,200cqh);max-width:2200px}.stage-screen{z-index:4;aspect-ratio:16/9;width:min(100%,clamp(520px,36cqw,680px),71vh);min-width:200px;min-height:250px;box-shadow:0 0 0 1px hsl(var(--border)), 0 18px 40px -12px #ff621f59, 0 8px 22px #000a;background:#000;border-radius:.75rem;transition:width .45s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}.stage-screen--has-player{margin-bottom:46px}.stage-scene--cinema .stage-screen{width:min(100%,clamp(700px,52cqw,920px),96vh)}.stage-screen--player-expanded{width:min(100%,clamp(760px,56cqw,1040px),96vh)!important}.stage-scene--cinema .stage-screen--player-expanded{width:min(100%,clamp(900px,66cqw,1220px),104vh)!important}.stage-scene--player-cinema .stage-scene__stage{flex:auto;justify-content:center;width:100%;max-width:none;height:100%;min-height:0;padding:clamp(10px,1.8vh,20px) clamp(10px,1.8cqw,24px) clamp(56px,7vh,72px)}.stage-screen--player-cinema{max-width:none;width:min(100% - 8px,165cqh)!important}.stage-scene--player-cinema .stage-deck,.stage-scene--player-cinema .stage-scene__floor{display:none}.stage-scene--fullscreen .stage-screen,.stage-scene--ambient .stage-screen{width:min(92vw,1280px,112vh)}.stage-scene--fixed .stage-scene__stage{padding-top:max(76px,clamp(12px,2.2vh,28px))}.stage-fixed-root:has(.stage-fixed-chat) .stage-scene__stage{padding-right:min(21rem,85%)}.stage-fixed-root:has(.stage-fixed-chat) .stage-screen{width:min(100%,1280px,112vh)}.stage-scene__stage--festival{padding-top:clamp(22px,4.6vh,58px);padding-bottom:0}.stage-screen--festival{border:1px solid #ffffff2e;border-radius:clamp(8px,1vw,14px);width:min(68cqw,960px,92vh);min-height:320px;transform:translateY(clamp(-18px,-1.8vh,-8px));box-shadow:0 16px 48px -20px #000,0 0 0 1px #ffffff0d,0 0 30px -14px #1fdcf93d}.stage-scene--cinema .stage-screen--festival,.stage-scene--fullscreen .stage-screen--festival,.stage-scene--ambient .stage-screen--festival{width:min(66vw,1080px,98vh)}.stage-shell--mobile .stage-scene__stage--festival{padding-top:clamp(24px,5vh,48px)}.stage-shell--mobile .stage-screen--festival{width:min(92cqw,720px);transform:translateY(-4px)}.stage-screen__idle{text-align:center;background:#0e0d1299;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;inset:0}.stage-deck{z-index:3;flex-direction:column;align-items:center;width:100%;margin-top:clamp(-14px,-1vh,-6px);display:flex;position:relative}.stage-deck__dj{z-index:1;justify-content:center;display:flex;position:relative}.stage-deck__dj-link{z-index:2;position:relative}.stage-deck__dj-empty{justify-content:center;align-items:center;min-height:90px;display:flex}.stage-deck__front{z-index:3;background:linear-gradient(#17151eeb,#0b0b0ff5);border:1px solid #ff621f73;border-radius:16px 16px 6px 6px;justify-content:center;align-items:center;width:min(100%,clamp(560px,40cqw,720px));margin-top:clamp(-54px,-4.5vh,-28px);padding:clamp(8px,1.1vh,12px) 20px;display:flex;position:relative;box-shadow:0 10px 30px -8px #000c,0 0 22px -4px #ff621f66}.stage-deck__logo{-o-object-fit:contain;object-fit:contain;width:100%;max-height:clamp(58px,8vh,96px)}.stage-scene--fullscreen .stage-deck__front,.stage-scene--ambient .stage-deck__front{width:min(100%,820px)}.stage-scene--fullscreen .stage-deck__logo,.stage-scene--ambient .stage-deck__logo{max-height:128px}.stage-scene__nowplaying{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:2px;margin-top:8px;display:flex;position:relative}.stage-scene__floor{z-index:2;flex-direction:column;flex:auto;justify-content:flex-end;align-items:center;width:100%;min-height:0;padding:clamp(2px,.5vh,8px) 4% clamp(34px,5.5vh,72px);display:flex;position:relative}.stage-scene__floor-label{justify-content:center;margin-bottom:6px;display:flex}.stage-scene__floor-rows{flex:none;width:min(100%,177.778cqh);max-width:1920px;margin-inline:auto;position:relative}.stage-scene--cinema .stage-scene__floor-rows{width:min(100%,200cqh);max-width:2200px}.stage-scene__row{left:50%;bottom:var(--crowd-row-bottom,0px);z-index:var(--crowd-row-z,1);width:max-content;max-width:calc(100% - 12px);transform:translateX(calc(-50% + var(--crowd-row-shift,0px))) scale(var(--crowd-row-scale,1));transform-origin:50% 100%;flex-wrap:nowrap;justify-content:center;gap:4px 6px;display:flex;position:absolute}.stage-scene__person{border-radius:10px;flex-direction:column;align-items:center;width:clamp(58px,12cqw,92px);min-width:0;max-width:100%;text-decoration:none;display:flex}.stage-scene--fullscreen .stage-scene__person,.stage-scene--ambient .stage-scene__person{width:clamp(70px,10vw,120px)}.stage-scene__person:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:4px;border-radius:10px}.stage-scene__person:hover .stage-character__image{filter:drop-shadow(0 0 9px)}.stage-scene__name{text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;color:hsl(var(--foreground));text-shadow:0 1px 5px #000;padding:4px 2px 0;font-size:10px;line-height:16px;display:block;overflow:hidden}.stage-scene__name--self{color:#51e4fb}.stage-shell--mobile .stage-scene__person{width:clamp(70px,14cqw,104px)}.stage-shell--mobile .stage-character{height:clamp(128px,24cqw,172px)}.stage-shell--mobile .stage-character--selector{width:clamp(150px,31cqw,210px);height:clamp(205px,38cqw,255px)}.stage-character{flex-shrink:0;width:100%;height:clamp(112px,20cqw,150px);padding:5px 6px 7px;position:relative}.stage-character--selector{width:clamp(132px,29cqw,200px);height:clamp(180px,34cqw,230px)}.stage-scene--fullscreen .stage-character--selector,.stage-scene--ambient .stage-character--selector{width:clamp(170px,18vw,260px);height:clamp(230px,24vw,320px)}.stage-character--mini{width:42px;height:68px;padding:3px 3px 5px}.stage-character__shadow{opacity:.6;background:#0009;border-radius:50%;width:64%;height:9px;position:absolute;bottom:3px;left:18%;box-shadow:0 0 8px}.stage-character__motion{transform-origin:50% 100%;width:100%;height:100%;position:relative}.stage-character__image{-o-object-fit:contain;object-fit:contain;-o-object-position:center bottom;object-position:center bottom;filter:drop-shadow(0 3px 4px #0008);width:100%;height:100%;display:block;overflow:hidden}.stage-character.is-dancing .stage-character__motion{animation:stage-groove var(--dance-duration,1s) ease-in-out var(--dance-delay,0s) infinite}@keyframes stage-groove{0%,to{transform:rotate(-3deg)translateY(0)}25%{transform:rotate(2deg)translateY(-4px)scaleY(1.025)}50%{transform:rotate(3deg)translateY(0)scaleY(.975)}75%{transform:rotate(-2deg)translateY(-3px)}}.stage-character__fallback{opacity:.7;width:60%;min-width:20px;height:100%;margin:auto;position:relative}.stage-character__head{background:hsl(var(--card));border:2px solid;border-radius:45%;justify-content:center;align-items:center;width:60%;height:28%;font-size:clamp(9px,2cqw,16px);display:flex;position:absolute;top:5%;left:20%}.stage-character__body{background:currentColor;border-radius:35% 35% 20% 20%;width:84%;height:37%;position:absolute;top:37%;left:8%}.stage-character__legs{border-left:9px solid;border-right:9px solid;border-radius:0 0 4px 4px;width:60%;height:28%;position:absolute;top:72%;left:20%}.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene__stage,.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene__floor-rows,.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene__fx,.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene__bg{width:100%;max-width:none}.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-screen{width:min(100%,clamp(520px,36cqw,760px),76vh)}.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene--cinema .stage-screen{width:min(100%,clamp(700px,48cqw,980px),96vh)}.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-deck__front{width:min(100%,clamp(560px,40cqw,820px))}.stage-shell--expanded-stage:not(.stage-shell--mobile) .stage-scene__floor{padding-inline:clamp(1rem,3vw,4rem)}.stage-shell--chrome-free:not(.stage-shell--mobile) .stage-shell__scene{padding:0}.stage-shell--chrome-free:not(.stage-shell--mobile) .stage-scene{border:0;border-radius:0}@media (width>=1800px) and (aspect-ratio>=2){.stage-shell:not(.stage-shell--mobile) .stage-shell__aside{width:clamp(21rem,18vw,28rem)}.stage-shell:not(.stage-shell--mobile) .stage-shell__scene{padding-inline:clamp(.5rem,.8vw,1.25rem)}.stage-scene--stage .stage-scene__person,.stage-scene--cinema .stage-scene__person{width:clamp(68px,5cqw,102px)}}@media (width>=2500px) and (aspect-ratio>=2.6){.stage-shell:not(.stage-shell--mobile) .stage-shell__aside{width:clamp(24rem,17vw,32rem)}}@media (width>=1800px){.stage-shell--chrome-free:not(.stage-shell--mobile) .stage-shell__scene{padding:0}}@media (prefers-reduced-motion:reduce){.stage-character.is-dancing .stage-character__motion{animation:none}}.stage-deck__dj--transitioning{will-change:transform, opacity;transform-origin:50% 88%;backface-visibility:hidden;z-index:1}.stage-takeover-transition{z-index:2;pointer-events:none;perspective:700px;width:100%;height:clamp(180px,34cqw,230px);position:absolute;top:0;left:50%;overflow:visible;transform:translate(-50%)}.stage-takeover-transition__incoming{z-index:2;transform-origin:50% 88%;will-change:transform, opacity;backface-visibility:hidden;opacity:0;width:clamp(132px,29cqw,200px);position:absolute;top:0;left:50%;transform:translate(-50%)}@keyframes gc-booth-autodj-yeet-out{0%{opacity:1;transform:translate(0,0)rotate(0)scale(1)}28%{opacity:1;transform:translate(34px,-3px)rotate(6deg)scale(1.01)}66%{opacity:.96;transform:translate(112px,8px)rotate(18deg)scale(.92)}to{opacity:0;transform:translate(184px,18px)rotate(34deg)scale(.76)}}@keyframes gc-booth-autodj-return-out{0%{opacity:1;transform:translate(0,0)rotate(0)scale(1)}28%{opacity:1;transform:translate(-34px,-3px)rotate(-6deg)scale(1.01)}64%{opacity:.96;transform:translate(-112px,8px)rotate(-18deg)scale(.92)}to{opacity:0;transform:translate(-184px,18px)rotate(-34deg)scale(.76)}}@keyframes gc-booth-dj-step-off{0%{opacity:1;transform:translate(0,0)rotate(0)scale(1)}30%{opacity:1;transform:translate(28px,-2px)rotate(5deg)scale(1.01)}68%{opacity:.98;transform:translate(96px,7px)rotate(12deg)scale(.94)}to{opacity:0;transform:translate(158px,16px)rotate(24deg)scale(.8)}}@keyframes gc-booth-dj-oopsie{0%{transform:translate(0,0)rotate(0)scale(1)}24%{transform:translate(54px,2px)rotate(5deg)scale(.99)}46%{transform:translate(92px,8px)rotate(10deg)scale(.96)}58%{transform:translate(100px,8px)rotate(11deg)scale(.96)}72%{transform:translate(66px,2px)rotate(-3deg)scale(.99)}88%{transform:translate(-8px,-2px)rotate(-4deg)scale(1.015)}to{transform:translate(0,0)rotate(0)scale(1)}}@keyframes gc-autodj-yeet-in{0%{opacity:0;transform:translate(-50%)translate(-188px,16px)rotate(-24deg)scale(.76)}16%{opacity:.96}48%{opacity:1;transform:translate(-50%)translate(-104px,7px)rotate(-12deg)scale(.9)}76%{opacity:1;transform:translate(-50%)translate(-24px,-3px)rotate(-4deg)scale(1.01)}to{opacity:1;transform:translate(-50%)translate(0,0)rotate(0)scale(1)}}@keyframes gc-autodj-return-in{0%{opacity:0;transform:translate(-50%)translate(188px,16px)rotate(24deg)scale(.76)}16%{opacity:.96}48%{opacity:1;transform:translate(-50%)translate(104px,7px)rotate(12deg)scale(.9)}76%{opacity:1;transform:translate(-50%)translate(24px,-3px)rotate(4deg)scale(1.01)}to{opacity:1;transform:translate(-50%)translate(0,0)rotate(0)scale(1)}}@keyframes gc-dj-step-up{0%{opacity:0;transform:translate(-50%)translate(-162px,16px)rotate(-22deg)scale(.8)}18%{opacity:.94}50%{opacity:1;transform:translate(-50%)translate(-90px,7px)rotate(-11deg)scale(.91)}78%{opacity:1;transform:translate(-50%)translate(-20px,-3px)rotate(-4deg)scale(1.01)}to{opacity:1;transform:translate(-50%)translate(0,0)rotate(0)scale(1)}}@keyframes gc-bonk-pop{0%,18%{opacity:0;transform:translate(-50%)scale(.4)rotate(-14deg)}32%{opacity:1;transform:translate(-50%,-10px)scale(1.2)rotate(9deg)}68%{opacity:.95;transform:translate(-50%,-20px)scale(1)rotate(-4deg)}to{opacity:0;transform:translate(-50%,-34px)scale(.82)}}@keyframes gc-crowd-handoff-settle{0%{opacity:0;transform:translate(18px,-18px)rotate(10deg)scale(.78)}55%{opacity:1;transform:translate(-4px,3px)rotate(-3deg)scale(1.04)}to{opacity:1;transform:translate(0,0)rotate(0)scale(1)}}.stage-deck__dj--autodj_yeet{animation:1.38s cubic-bezier(.22,.78,.18,1) forwards gc-booth-autodj-yeet-out}.stage-deck__dj--autodj_return{animation:1.36s cubic-bezier(.22,.78,.18,1) forwards gc-booth-autodj-return-out}.stage-deck__dj--dj_swap{animation:1.28s cubic-bezier(.22,.78,.18,1) forwards gc-booth-dj-step-off}.stage-deck__dj--dj_oopsie{animation:1.3s cubic-bezier(.22,.75,.2,1) forwards gc-booth-dj-oopsie}.stage-takeover-transition--autodj_yeet .stage-takeover-transition__incoming{animation:1.34s cubic-bezier(.18,.84,.2,1) 20ms forwards gc-autodj-yeet-in}.stage-takeover-transition--autodj_return .stage-takeover-transition__incoming{animation:1.32s cubic-bezier(.18,.84,.2,1) 20ms forwards gc-autodj-return-in}.stage-takeover-transition--dj_swap .stage-takeover-transition__incoming{animation:1.24s cubic-bezier(.18,.84,.2,1) 20ms forwards gc-dj-step-up}.stage-scene__person--handoff-return{animation:.6s cubic-bezier(.2,.78,.22,1) both gc-crowd-handoff-settle}.stage-takeover-transition__bonk{z-index:2;opacity:0;font-family:var(--font-display,ui-sans-serif);letter-spacing:.08em;color:#fff;text-shadow:0 2px #000,0 0 12px #ff621fe6;font-size:clamp(13px,2cqw,20px);font-weight:1000;animation:.92s ease-out forwards gc-bonk-pop;position:absolute;top:10%;left:67%;transform:translate(-50%)}.stage-takeover-transition--autodj_return .stage-takeover-transition__bonk{left:33%}.stage-scene__sfx-toggle{z-index:7;border:1px solid hsl(var(--border) / .8);color:#ffffff9e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#100f15c2;border-radius:999px;place-items:center;width:34px;height:34px;transition:transform .16s,color .16s,border-color .16s,background .16s;display:grid;position:absolute;bottom:clamp(8px,1.4vw,16px);right:clamp(8px,1.4vw,16px);box-shadow:0 8px 22px #00000047}.stage-scene__sfx-toggle:hover{color:#fff;border-color:#15dbf96b;transform:translateY(-1px)scale(1.04)}.stage-scene__sfx-toggle.is-on{color:#6ae8fb;background:#0357632e;border-color:#15dbf947}.stage-scene__sfx-toggle:focus-visible{outline-offset:3px;outline:2px solid #51e4fb}@media (prefers-reduced-motion:reduce){.stage-deck__dj--transitioning{opacity:1}.stage-takeover-transition{display:none}.stage-scene__sfx-toggle{transition:none}}@keyframes stage-light-sweep{0%,to{opacity:.18;transform:translate(-250%)rotate(-12deg)}50%{opacity:.5;transform:translate(250%)rotate(12deg)}}.stage-light-beam{mix-blend-mode:screen;filter:blur(3px);animation:7s ease-in-out infinite stage-light-sweep}@keyframes stage-light-flash{0%{opacity:0}12%{opacity:1}to{opacity:0}}.stage-light-flash{mix-blend-mode:screen;animation:.8s ease-out forwards stage-light-flash}@keyframes gc-floor-rise{0%{opacity:0;transform:translateY(12px)scale(.72)}14%{opacity:1}78%{opacity:.92}to{transform:translate3d(var(--gc-drift,0), -180px, 0) scale(1.12) rotate(var(--gc-spin,0deg));opacity:0}}@keyframes gc-floor-throw{0%{opacity:0;transform:translateY(10px)scale(.8)rotate(0)}12%{opacity:1}55%{transform:translate3d(calc(var(--gc-drift,0) * .6), -150px, 0) scale(1.15) rotate(var(--gc-spin,0deg));opacity:1}to{transform:translate3d(var(--gc-drift,0), -28px, 0) scale(.82) rotate(calc(var(--gc-spin,0deg) * 2));opacity:0}}@keyframes gc-floor-splash{0%{opacity:0;filter:blur(2px);transform:translateY(8px)scale(.55)}20%{opacity:1;filter:blur();transform:translateY(-46px)scale(1.18)}70%{transform:translate3d(var(--gc-drift,0), -72px, 0) scale(1.35);opacity:.8}to{transform:translate3d(var(--gc-drift,0), -42px, 0) scale(1.7);opacity:0;filter:blur(2px)}}@keyframes gc-floor-confetti{0%{opacity:0;transform:translateY(6px)scale(.6)rotate(0)}14%{opacity:1}to{transform:translate3d(var(--gc-drift,0), -210px, 0) scale(1.28) rotate(calc(var(--gc-spin,0deg) * 3));opacity:0}}@keyframes gc-floor-slide{0%{opacity:0;transform:translate(-28px,6px)scale(.8)}22%{opacity:1}68%{transform:translate3d(var(--gc-drift,0), -34px, 0) scale(1.05) rotate(var(--gc-spin,0deg));opacity:1}to{transform:translate3d(var(--gc-drift,0), -52px, 0) scale(.9);opacity:0}}.gc-floor-rise{animation:2.35s cubic-bezier(.2,.7,.2,1) forwards gc-floor-rise}.gc-floor-throw{animation:2.25s cubic-bezier(.24,.7,.25,1) forwards gc-floor-throw}.gc-floor-splash{animation:1.7s ease-out forwards gc-floor-splash}.gc-floor-confetti{animation:2.4s cubic-bezier(.16,.8,.2,1) forwards gc-floor-confetti}.gc-floor-slide{animation:2.1s ease-out forwards gc-floor-slide}@media (prefers-reduced-motion:reduce){.gc-floor-rise,.gc-floor-throw,.gc-floor-splash,.gc-floor-confetti,.gc-floor-slide{opacity:.85;animation:none}}
