/* Rocket Launch — theme styles */
.scene.themed { background:linear-gradient(180deg, #A5D8F0 0%, #C9E8F7 55%, #DDF0FA 100%); }
#scene-transit.themed { background:linear-gradient(180deg,#141B33 0%, #1E2A4A 60%, #2D3E5F 100%); }
#scene-arrival.themed { background:linear-gradient(180deg,#141B33 0%, #1E2A4A 70%, #26334F 100%); }
#scene-intro .ground, #scene-stop .ground { position:absolute; left:0; right:0; bottom:0; height:26%; z-index:2; background:linear-gradient(180deg,#8CC98A 0%,#79B877 30%,#6BA869 100%); }
#scene-stop .ground:before { content:''; position:absolute; left:6%; width:56%; top:-14px; height:18px; border-radius:10px; background:#9AA2B2; }
#scene-transit .ground { display:none; }
#scene-arrival .ground { position:absolute; left:0; right:0; bottom:0; height:24%; z-index:2; background:linear-gradient(180deg,#C7CDD9 0%, #AEB6C6 60%, #9AA2B2 100%); }
.sun-el { position:absolute; top:4%; right:5%; width:clamp(70px,12vw,120px); aspect-ratio:1; z-index:1; animation:sun-spin 40s linear infinite; }
@keyframes sun-spin { to { transform:rotate(360deg); } }
.sun-el svg, .cloud-el svg { width:100%; height:100%; }
.cloud-el { position:absolute; width:clamp(90px,16vw,170px); aspect-ratio:200/90; z-index:1; opacity:.95; }
.cloud-el.c1 { top:6%; left:8%; } .cloud-el.c2 { top:16%; left:55%; width:clamp(70px,12vw,130px); }
.prop.dish { width:clamp(90px,15vw,170px); aspect-ratio:220/90; bottom:24%; right:3%; }
.prop.planet1 { width:clamp(70px,11vw,120px); aspect-ratio:1; top:10%; left:8%; }
.prop.planet2 { width:clamp(50px,8vw,90px); aspect-ratio:1; top:22%; right:12%; }
.prop.star { width:clamp(18px,3vw,32px); aspect-ratio:1; animation:star-tw 2.2s ease-in-out infinite; }
.prop.star.s1 { top:12%; left:42%; } .prop.star.s2 { top:34%; left:20%; animation-delay:.7s } .prop.star.s3 { top:8%; right:30%; animation-delay:1.3s }
@keyframes star-tw { 0%,100%{opacity:.5; transform:scale(.9)} 50%{opacity:1; transform:scale(1.15)} }
.prop.earth { width:clamp(80px,13vw,150px); aspect-ratio:1; top:6%; right:8%; }
.prop.crater { width:clamp(60px,10vw,120px); aspect-ratio:100/44; bottom:12%; opacity:.9; z-index:3; }
.prop.crater.cr1 { left:40%; } .prop.crater.cr2 { right:6%; bottom:6%; }
/* upright rocket: narrower holder, window slots stacked vertically */
.veh-holder { --slot-w:18%; --slot-h:11.7%; width:min(40vw,250px); aspect-ratio:372/640; left:8%; bottom:12%; }
.veh-holder.arrival { width:min(34vw,220px); left:6%; }
.veh-holder.transit { width:min(30vw,190px); bottom:auto; top:16%; animation:fly-bob 1.1s ease-in-out infinite; }
@keyframes fly-bob { 0%,100%{transform:translateX(-50%) translateY(0) rotate(0deg)} 50%{transform:translateX(-50%) translateY(-12px) rotate(1.5deg)} }
.transit-scene .scroll-strip { display:none; }
@media (max-width:540px){ .veh-holder { width:44vw; left:3%; bottom:18%; } .veh-holder.arrival { width:42vw; } }
