*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{overflow:hidden}#root{width:100%;height:100vh}.stage{background:#04040f;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.bg-grid{background-image:linear-gradient(#3cc8ff0d 1px,#0000 1px),linear-gradient(90deg,#3cc8ff0d 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.bg-vignette{background:radial-gradient(85% 85%,#0000 30%,#04040f 88%);position:absolute;inset:0}.scanlines{pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000001a 2px 4px);position:absolute;inset:0}.crew{z-index:1;align-items:flex-end;gap:56px;display:flex;position:relative}@media (width<=600px){.crew{transform-origin:bottom;gap:20px;transform:scale(.65)}}.robot{--c:#00f0ff;--delay:0s;filter:drop-shadow(0 0 14px var(--c));flex-direction:column;align-items:center;display:flex;position:relative}.robot:after{content:"";background:radial-gradient(ellipse, var(--c) 0%, transparent 70%);opacity:.28;pointer-events:none;width:110px;height:24px;position:absolute;bottom:-14px;left:50%;transform:translate(-50%)}.r-antenna{flex-direction:column;align-items:center;margin-bottom:-1px;display:flex}.r-ball{background:var(--c);width:11px;height:11px;box-shadow:0 0 8px 3px var(--c);animation:.9s ease-in-out infinite pulse-ball;animation-delay:var(--delay);border-radius:50%}@keyframes pulse-ball{0%,to{opacity:.6;transform:scale(.85)}50%{opacity:1;transform:scale(1.25)}}.r-stem{background:var(--c);border-radius:2px 2px 0 0;width:4px;height:18px}.r-head{border:2px solid var(--c);background:#0c0c24;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:62px;height:52px;display:flex;box-shadow:inset 0 0 16px #000000b3}.r-eyes{gap:10px;display:flex}.r-eye{background:var(--c);width:14px;height:10px;box-shadow:0 0 6px var(--c);animation:4s ease-in-out infinite blink;animation-delay:var(--delay);border-radius:3px}.r-eye:last-child{animation-delay:calc(var(--delay) + 80ms)}@keyframes blink{0%,90%,to{transform:scaleY(1)}94%{transform:scaleY(.07)}}.r-mouth{border:2px solid var(--c);width:28px;height:8px;box-shadow:0 0 5px var(--c);border-top:none;border-radius:0 0 12px 12px}.r-torso{align-items:flex-start;margin-top:3px;display:flex}.r-arm{border:2px solid var(--c);transform-origin:top;background:#0c0c24;border-radius:7px 7px 10px 10px;width:15px;height:44px;margin-top:8px}.r-body{border:2px solid var(--c);background:#0c0c24;border-radius:8px;justify-content:center;align-items:center;width:62px;height:58px;display:flex;box-shadow:inset 0 0 16px #000000b3}.r-panel{gap:7px;display:flex}.r-dot{background:var(--c);width:9px;height:9px;box-shadow:0 0 6px var(--c);border-radius:50%;animation:1.4s ease-in-out infinite dot-pulse}.r-dot:first-child{animation-delay:var(--delay)}.r-dot:nth-child(2){animation-delay:calc(var(--delay) + .47s)}.r-dot:nth-child(3){animation-delay:calc(var(--delay) + .93s)}@keyframes dot-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.r-legs{gap:10px;margin-top:3px;display:flex}.r-leg{border:2px solid var(--c);transform-origin:top;background:#0c0c24;border-radius:5px 5px 8px 8px;width:18px;height:28px}.d-groove{animation:1s ease-in-out infinite groove;animation-delay:var(--delay)}.d-groove .r-arm-l{animation:1s ease-in-out infinite arm-gl;animation-delay:var(--delay)}.d-groove .r-arm-r{animation:1s ease-in-out infinite arm-gr;animation-delay:calc(var(--delay) + .5s)}.d-groove .r-leg:first-child{animation:1s ease-in-out infinite leg-gl;animation-delay:var(--delay)}.d-groove .r-leg:last-child{animation:1s ease-in-out infinite reverse leg-gl;animation-delay:var(--delay)}@keyframes groove{0%,to{transform:translateY(0)}50%{transform:translateY(-16px)}}@keyframes arm-gl{0%,to{transform:rotate(20deg)}50%{transform:rotate(-55deg)}}@keyframes arm-gr{0%,to{transform:rotate(-20deg)}50%{transform:rotate(55deg)}}@keyframes leg-gl{0%,to{transform:rotate(-10deg)}50%{transform:rotate(12deg)}}.d-sway{animation:1.2s ease-in-out infinite sway;animation-delay:var(--delay)}.d-sway .r-arm-l{animation:1.2s ease-in-out infinite arm-sl;animation-delay:var(--delay)}.d-sway .r-arm-r{animation:1.2s ease-in-out infinite arm-sr;animation-delay:var(--delay)}@keyframes sway{0%{transform:rotate(-14deg)translateY(0)}50%{transform:rotate(14deg)translateY(-8px)}to{transform:rotate(-14deg)translateY(0)}}@keyframes arm-sl{0%{transform:rotate(-65deg)}50%{transform:rotate(22deg)}to{transform:rotate(-65deg)}}@keyframes arm-sr{0%{transform:rotate(22deg)}50%{transform:rotate(-65deg)}to{transform:rotate(22deg)}}.d-jump{animation:.75s cubic-bezier(.33,0,.66,-.38) infinite jump;animation-delay:var(--delay)}.d-jump .r-arm-l{animation:.75s ease-in-out infinite arm-jl;animation-delay:var(--delay)}.d-jump .r-arm-r{animation:.75s ease-in-out infinite arm-jr;animation-delay:var(--delay)}.d-jump .r-leg:first-child{animation:.75s ease-in-out infinite leg-jl;animation-delay:var(--delay)}.d-jump .r-leg:last-child{animation:.75s ease-in-out infinite leg-jr;animation-delay:var(--delay)}@keyframes jump{0%{transform:translateY(0)scaleX(1.05)scaleY(.92)}35%{transform:translateY(-32px)scaleX(.92)scaleY(1.07)}65%{transform:translateY(-32px)scaleX(.92)scaleY(1.07)}90%{transform:translateY(0)scaleX(1.08)scaleY(.88)}to{transform:translateY(0)scaleX(1.05)scaleY(.92)}}@keyframes arm-jl{0%,to{transform:rotate(18deg)}40%{transform:rotate(-72deg)}}@keyframes arm-jr{0%,to{transform:rotate(-18deg)}40%{transform:rotate(72deg)}}@keyframes leg-jl{0%,to{transform:rotate(0)}40%{transform:rotate(-28deg)}}@keyframes leg-jr{0%,to{transform:rotate(0)}40%{transform:rotate(28deg)}}.d-mech{animation:.6s steps(4,end) infinite mech;animation-delay:var(--delay)}.d-mech .r-arm-l{animation:1.2s steps(3,end) infinite arm-ml;animation-delay:var(--delay)}.d-mech .r-arm-r{animation:1.2s steps(3,end) infinite arm-mr;animation-delay:calc(var(--delay) + .4s)}.d-mech .r-leg:first-child{animation:.6s steps(2,end) infinite leg-ml;animation-delay:var(--delay)}.d-mech .r-leg:last-child{animation:.6s steps(2,end) infinite leg-mr;animation-delay:calc(var(--delay) + .3s)}@keyframes mech{0%{transform:translateY(0)rotate(0)}25%{transform:translateY(-13px)rotate(-7deg)}50%{transform:translateY(-6px)rotate(0)}75%{transform:translateY(-13px)rotate(7deg)}to{transform:translateY(0)rotate(0)}}@keyframes arm-ml{0%{transform:rotate(-80deg)}33%{transform:rotate(0)}66%{transform:rotate(-45deg)}to{transform:rotate(-80deg)}}@keyframes arm-mr{0%{transform:rotate(0)}33%{transform:rotate(80deg)}66%{transform:rotate(40deg)}to{transform:rotate(0)}}@keyframes leg-ml{0%{transform:rotate(-22deg)}to{transform:rotate(22deg)}}@keyframes leg-mr{0%{transform:rotate(22deg)}to{transform:rotate(-22deg)}}
