/* Decorative layers never intercept the test controls. */
.gg-atmosphere{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at 12% 12%,#96eb7020,transparent 48%),radial-gradient(ellipse at 85% 42%,#8973fa20,transparent 45%)}
.gg-atmosphere:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#a6bed008 1px,transparent 1px),linear-gradient(90deg,#a6bed008 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(#000,transparent 85%)}
.gg-orbit{position:absolute;width:65vw;height:65vw;min-width:450px;min-height:450px;border-radius:50%;filter:blur(65px);opacity:.22;background:conic-gradient(from 30deg,transparent,#b9a6ff55,transparent,#d2fa7533,transparent);top:-38vw;right:-12vw;animation:gg-drift 26s linear infinite}
.gg-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:#c9ef9a;box-shadow:0 0 10px #d2fa7544;left:var(--x);top:var(--y);opacity:0;animation:gg-float var(--duration) ease-in-out var(--delay) infinite}
body{isolation:isolate}.shell{position:relative}.page-intro{position:relative;padding:24px 0 30px;overflow:hidden}.page-intro:after{content:'';position:absolute;bottom:0;left:0;width:38%;height:1px;background:linear-gradient(90deg,transparent,#d2fa75,transparent);animation:gg-sweep 3s ease-in-out 1 both;pointer-events:none}
.page-intro h1 em{background:linear-gradient(100deg,#d2fa75 10%,#efffd4 40%,#b9a6ff 60%,#d2fa75 90%);background-size:250% auto;background-clip:text;-webkit-background-clip:text;color:transparent;animation:gg-title 4s ease-out 1}
.intro-badge{border:0;background:transparent;transform:none;border-radius:0;position:relative;min-width:130px;height:110px;padding-top:35px;font-size:10px;letter-spacing:1px}
.intro-badge:before{content:'';position:absolute;left:20px;right:20px;top:8px;height:26px;background:repeating-linear-gradient(90deg,#d2fa75 0 5px,transparent 5px 12px);clip-path:polygon(0 70%,8% 70%,8% 40%,20% 40%,20% 55%,32% 55%,32% 0,44% 0,44% 35%,56% 35%,56% 10%,68% 10%,68% 60%,80% 60%,80% 30%,92% 30%,92% 70%,100% 70%,100% 100%,0 100%);animation:gg-signal 3s ease-in-out infinite;transform-origin:bottom}
.gg-enter{animation:gg-arrive .75s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--entrance,0ms)}
.game{position:relative;overflow:hidden;transition:border-color .2s,background .2s,box-shadow .2s,transform .2s}.game:after{content:'';pointer-events:none;position:absolute;inset:0;background:radial-gradient(180px circle at var(--mx,50%) var(--my,50%),#d2fa7518,transparent 70%);opacity:0;transition:opacity .2s}.game:hover:after{opacity:1}.game[aria-pressed=true]{box-shadow:inset 0 0 24px #d2fa7508,0 0 18px #d2fa7508}.launch{transition:box-shadow .2s,transform .2s}.launch:hover{box-shadow:0 0 24px #d2fa7530;transform:translateY(-2px)}
@keyframes gg-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes gg-title{from{background-position:100% center}to{background-position:0 center}}@keyframes gg-sweep{from{transform:translateX(-110%);opacity:0}30%{opacity:.7}to{transform:translateX(330%);opacity:0}}@keyframes gg-drift{to{transform:rotate(360deg)}}@keyframes gg-float{0%,100%{opacity:0;transform:translateY(15px)}40%,60%{opacity:.4}80%{transform:translateY(-35px)}}@keyframes gg-signal{50%{transform:scaleY(.65);opacity:.55}}
body.no-motion .gg-atmosphere *,body.no-motion .gg-enter,body.no-motion .page-intro:after,body.no-motion .page-intro h1 em,body.no-motion .intro-badge:before{animation:none!important}body.no-motion .gg-spark{opacity:.2}body.no-motion .game,body.no-motion .launch{transition:none}body.no-motion .launch:hover{transform:none}body.gg-paused .gg-atmosphere *,body.gg-paused .intro-badge:before{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.gg-atmosphere *,.gg-enter,.page-intro:after,.page-intro h1 em,.intro-badge:before{animation:none!important}.game,.launch{transition:none!important}.launch:hover{transform:none}.gg-spark{opacity:.2}}
@media(max-width:600px){.gg-orbit{filter:blur(35px)}.intro-badge{display:none}.page-intro{padding-top:12px}.gg-spark:nth-child(n+9){display:none}}
