.gm-stage{--gm-a:#7c5cff;--gm-b:#22d3ee;--gm-glow:#7c5cff59;isolation:isolate;position:relative}.gm-stage[data-game=speed_quiz]{--gm-a:#8b5cf6;--gm-b:#f43f5e;--gm-glow:#f43f5e52}.gm-stage[data-game=picture]{--gm-a:#0ea5e9;--gm-b:#22c55e;--gm-glow:#0ea5e952}.gm-stage[data-game=forbidden]{--gm-a:#ef4444;--gm-b:#f59e0b;--gm-glow:#ef44444d}.gm-stage[data-game=sentence]{--gm-a:#10b981;--gm-b:#6366f1;--gm-glow:#10b9814d}.gm-stage[data-game=mission]{--gm-a:#f59e0b;--gm-b:#14b8a6;--gm-glow:#f59e0b4d}.gm-stage:before{content:"";z-index:-1;pointer-events:none;opacity:.55;background:radial-gradient(40% 50% at 15% 10%, var(--gm-glow), transparent 70%), radial-gradient(35% 45% at 90% 30%, color-mix(in srgb, var(--gm-b) 28%, transparent), transparent 70%);animation:14s ease-in-out infinite alternate gm-aurora;position:absolute;inset:-40px}@keyframes gm-aurora{to{transform:translate(12px,18px)scale(1.06)}}.gm-banner{background:linear-gradient(120deg, var(--gm-a), var(--gm-b));box-shadow:0 10px 30px -12px var(--gm-glow)}.gm-chip{background:color-mix(in srgb, var(--gm-a) 16%, transparent);color:var(--gm-a)}.gm-accent-text{background:linear-gradient(90deg, var(--gm-a), var(--gm-b));color:#0000;-webkit-background-clip:text;background-clip:text}.gm-btn{background:linear-gradient(120deg, var(--gm-a), var(--gm-b));color:#fff;box-shadow:0 8px 22px -10px var(--gm-glow);transition:transform .15s,filter .15s}.gm-btn:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.gm-btn:active:not(:disabled){transform:scale(.97)}.gm-btn:disabled{opacity:.5}.gm-card{border:1px solid color-mix(in srgb, var(--gm-a) 35%, var(--border));box-shadow:0 12px 34px -18px var(--gm-glow)}.gm-intro{z-index:30;pointer-events:none;background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--surface) 92%, transparent) 0 30%, color-mix(in srgb, var(--surface) 40%, transparent) 55%, transparent 75%);border-radius:1rem;justify-content:center;align-items:center;animation:1.25s forwards gm-intro-out;display:flex;position:absolute;inset:0}.gm-intro>div{animation:.5s cubic-bezier(.2,1.2,.3,1) both gm-intro-in}@keyframes gm-intro-in{0%{opacity:0;transform:scale(.6)rotate(-4deg)}to{opacity:1;transform:none}}@keyframes gm-intro-out{0%,70%{opacity:1}to{opacity:0;visibility:hidden}}.gm-zap{animation:.6s steps(2,end) 2 gm-zap}@keyframes gm-zap{50%{filter:drop-shadow(0 0 18px #fde047)brightness(1.6)}}.gm-speedlines{pointer-events:none;position:absolute;inset:0;overflow:hidden}.gm-speedlines i{background:linear-gradient(90deg, transparent, var(--gm-b));border-radius:2px;width:40%;height:2px;animation:.7s ease-in forwards gm-speed;position:absolute;left:-40%}@keyframes gm-speed{to{left:110%}}.gm-option{animation:.38s cubic-bezier(.2,1.3,.4,1) both gm-option-in}@keyframes gm-option-in{0%{opacity:0;transform:translateY(14px)scale(.92)}to{opacity:1;transform:none}}.gm-correct-burst{animation:.7s ease-out gm-burst}@keyframes gm-burst{0%{box-shadow:0 0 #22c55ecc}to{box-shadow:0 0 0 22px #22c55e00}}.gm-float-points{animation:1.4s ease-out forwards gm-float}@keyframes gm-float{0%{opacity:0;transform:translateY(8px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.15)}to{opacity:0;transform:translateY(-40px)}}.gm-timer-low{animation:.9s ease-in-out infinite gm-heartbeat}@keyframes gm-heartbeat{50%{transform:scale(1.08)}}.gm-lens-reveal{animation:.9s cubic-bezier(.3,.9,.3,1) both gm-lens}@keyframes gm-lens{0%{clip-path:circle(0%);filter:blur(6px)}to{clip-path:circle(75%);filter:none}}.gm-lens{pointer-events:none;border:4px solid #fff;border-radius:50%;width:90px;height:90px;animation:2.4s ease-in-out forwards gm-lens-sweep;position:absolute;box-shadow:inset 0 0 22px #ffffff80,0 6px 18px #00000059}@keyframes gm-lens-sweep{0%{opacity:0;top:60%;left:5%}15%{opacity:1}50%{top:15%;left:55%}85%{opacity:1;top:55%;left:70%}to{opacity:0;top:50%;left:78%}}.gm-spotlight{animation:3s ease-in-out infinite gm-spot}@keyframes gm-spot{50%{box-shadow:0 0 0 3px var(--gm-a), 0 0 30px -4px var(--gm-glow)}}.gm-flip-in{animation:.55s cubic-bezier(.2,.9,.3,1.2) both gm-flip}@keyframes gm-flip{0%{opacity:0;transform:perspective(700px)rotateY(-95deg)scale(.9)}to{opacity:1;transform:perspective(700px)rotateY(0)}}.gm-stamp{pointer-events:none;z-index:5;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.gm-stamp>span{letter-spacing:.12em;background:color-mix(in srgb, var(--surface) 75%, transparent);border:5px solid;border-radius:.4em;padding:.2em .5em;font-size:1.8rem;font-weight:900;animation:.9s cubic-bezier(.2,1.6,.4,1) forwards gm-stamp;transform:rotate(-12deg)}@keyframes gm-stamp{0%{opacity:0;transform:rotate(-12deg)scale(2.4)}25%{opacity:1;transform:rotate(-12deg)scale(1)}80%{opacity:1}to{opacity:0;transform:rotate(-12deg)scale(.96)}}.gm-shake{animation:.35s gm-shake}@keyframes gm-shake{25%{transform:translate(-4px)}75%{transform:translate(4px)}}.gm-tile-drop{animation:.45s cubic-bezier(.2,1.5,.4,1) both gm-drop}@keyframes gm-drop{0%{opacity:0;transform:translateY(-26px)rotate(-6deg)}to{opacity:1;transform:none}}.gm-snap{animation:.22s ease-out gm-snap}@keyframes gm-snap{0%{transform:scale(1.18)}to{transform:none}}.gm-wave>*{animation:1.2s both gm-wave;display:inline-block}@keyframes gm-wave{0%{opacity:.35;transform:translateY(6px)}40%{opacity:1;text-shadow:0 0 14px var(--gm-a);transform:translateY(-4px)}to{opacity:1;transform:none}}.gm-radar{border:2px solid var(--gm-a);background:repeating-radial-gradient(circle, transparent 0 10px, color-mix(in srgb, var(--gm-a) 25%, transparent) 10px 11px);border-radius:50%;flex-shrink:0;width:64px;height:64px;position:relative;overflow:hidden}.gm-radar:after{content:"";background:conic-gradient(from 0deg, color-mix(in srgb, var(--gm-a) 70%, transparent), transparent 25%);animation:1.6s linear infinite gm-radar;position:absolute;inset:0}@keyframes gm-radar{to{transform:rotate(360deg)}}.gm-type{animation:1.1s steps(28,end) .15s both gm-type;display:inline-block}@keyframes gm-type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.gm-dossier{animation:.6s cubic-bezier(.2,1.1,.3,1) both gm-dossier}@keyframes gm-dossier{0%{opacity:0;transform:translate(40px)rotate(3deg)}to{opacity:1;transform:none}}.gm-alert{animation:1s ease-in-out 2 gm-alert}@keyframes gm-alert{50%{box-shadow:0 0 0 4px #f59e0b8c}}.gm-count{animation:.9s cubic-bezier(.2,1.3,.3,1) both gm-count}@keyframes gm-count{0%{opacity:0;filter:blur(4px);transform:scale(2.2)}60%{opacity:1;filter:none;transform:scale(.95)}to{transform:scale(1)}}.gm-stage[data-game=forbidden] .gm-count{animation-name:gm-flip}.gm-stage[data-game=sentence] .gm-count{animation-name:gm-drop}.gm-stage[data-game=mission] .gm-count{animation-name:gm-dossier}.gm-stage[data-game=picture] .gm-count{animation-name:gm-lens}.gm-ring-pulse{border:3px solid var(--gm-a);border-radius:9999px;animation:1s ease-out infinite gm-ring;position:absolute;inset:0}@keyframes gm-ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.gm-confetti{pointer-events:none;z-index:20;position:absolute;inset:0;overflow:hidden}.gm-confetti i{opacity:0;border-radius:2px;width:8px;height:12px;animation:2.6s ease-in forwards gm-fall;position:absolute;top:-12px}@keyframes gm-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(460px)rotate(540deg)}}.gm-podium-bar{transform-origin:bottom;animation:.8s cubic-bezier(.2,1.2,.3,1) both gm-podium}@keyframes gm-podium{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.gm-crown{animation:1.6s ease-in-out infinite gm-crown}@keyframes gm-crown{50%{transform:translateY(-4px)rotate(-6deg)}}.live-dot{position:relative}.live-dot:after{content:"";border:2px solid #ef4444;border-radius:9999px;animation:1.4s ease-out infinite gm-ring;position:absolute;inset:-4px}.game-call-signal{animation:1.2s ease-in-out infinite gm-alert}@media (prefers-reduced-motion:reduce){.gm-stage:before,.gm-intro,.gm-intro>div,.gm-zap,.gm-speedlines i,.gm-option,.gm-correct-burst,.gm-float-points,.gm-timer-low,.gm-lens-reveal,.gm-lens,.gm-spotlight,.gm-flip-in,.gm-stamp>span,.gm-shake,.gm-tile-drop,.gm-snap,.gm-wave>*,.gm-radar:after,.gm-type,.gm-dossier,.gm-alert,.gm-count,.gm-ring-pulse,.gm-confetti i,.gm-podium-bar,.gm-crown,.live-dot:after,.game-call-signal{animation:none!important}.gm-intro,.gm-lens,.gm-confetti{display:none}}.gm-stage[data-host-busy] button{pointer-events:none;cursor:progress;opacity:.65}
