.rocket-memory-game{height:100dvh!important;min-height:0!important;overflow:hidden;background:#091b43!important;display:flex;flex-direction:column}
.rocket-memory-game .topbar{flex:0 0 auto;z-index:4}
.orbit-stage{width:100%;position:relative;flex:1;min-height:0;overflow:hidden;background:url('assets/space-v35.webp') center center/cover;display:grid;grid-template-rows:9% 65% 26%;padding:0 4%;isolation:isolate}
.orbit-signals{display:flex;align-items:center;justify-content:center;gap:18px;color:white;font-size:clamp(22px,4vh,38px)}
.orbit-signals i{width:22px;height:22px;border:2px solid #91cde8;border-radius:50%;background:#10243c;box-shadow:0 0 0 5px #173753}
.orbit-signals i.lit{background:#ffdb68;box-shadow:0 0 22px #ffd34c}
.orbit-fleet{display:grid;grid-template-columns:repeat(var(--fleet-count),minmax(0,1fr));gap:3%;width:min(100%,1250px);height:100%;margin:auto;align-items:stretch}
.orbit-rocket{position:relative;min-width:0;width:100%;height:100%;padding:0;border:0;background:none!important;box-shadow:none!important;cursor:pointer;opacity:1!important;overflow:visible;transform:none!important}
.orbit-ship{position:absolute;inset:2% 2% 16%;filter:drop-shadow(0 9px 7px #051d4970)}
.orbit-body{position:absolute;left:13%;right:13%;top:27%;bottom:8%;border-radius:15% 15% 20% 20%;background:linear-gradient(90deg,#b7cedd 0%,#fafdff 24%,#ecf7ff 64%,#90a8bc 100%);border:2px solid #b6d5ec;box-shadow:inset -6px 0 9px #13365a35;z-index:2}
.orbit-nose{position:absolute;left:13%;right:13%;top:0;height:36%;border-radius:60% 60% 8% 8% / 100% 100% 0 0;background:linear-gradient(100deg,#ffffff80,var(--rocket-color) 36%,#00000035);background-color:var(--rocket-color);border:2px solid #e9f5ff9c;z-index:3}
.orbit-port{position:absolute;left:7%;right:7%;top:12%;height:62%;display:grid;place-items:center;border:clamp(4px,.6vw,9px) solid var(--rocket-color);border-radius:22%;background:#fff;box-shadow:0 0 0 3px #476981,inset 0 0 8px #6583a3;overflow:hidden}
.orbit-port img{display:block;width:100%;height:100%;object-fit:contain!important;object-position:center;padding:3%;border-radius:14%}
.orbit-empty{font-size:clamp(24px,4vw,55px);color:#c1d9e7}
.orbit-rivets{position:absolute;bottom:8%;left:0;width:100%;font-size:12px;letter-spacing:5px;color:var(--rocket-color)}
.orbit-fin{position:absolute;bottom:4%;width:24%;height:40%;background:linear-gradient(100deg,#ffffff70,var(--rocket-color),#00000035);background-color:var(--rocket-color);border:2px solid #d7efffb0;z-index:1}
.orbit-fin.left{left:0;border-radius:90% 0 8% 12%;transform:skewY(-12deg)}
.orbit-fin.right{right:0;border-radius:0 90% 12% 8%;transform:skewY(12deg)}
.orbit-engine{position:absolute;bottom:3%;left:32%;right:32%;height:12%;background:linear-gradient(90deg,#405268,#b7d6e4,#35465a);border-radius:0 0 25% 25%;z-index:1}
.orbit-flame{position:absolute;top:94%;height:30%;left:37%;width:26%;border-radius:20% 20% 55% 55%;background:radial-gradient(ellipse at top,#fff 10%,#fff3aa 35%,#ffbd37 55%,#ff683b 72%,transparent 75%);opacity:0;filter:drop-shadow(0 0 12px #ffbd37)}
.orbit-pad{position:absolute;bottom:10%;left:1%;right:1%;height:7%;border-radius:50%;background:linear-gradient(#b4d3e8,#476889);border-bottom:6px solid #193b5a;box-shadow:0 4px 0 #051c33,0 -2px 9px #70dfff}
.orbit-order{position:absolute;bottom:0;left:calc(50% - 17px);width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#f7fcff;background:#133452;border:2px solid #80bed9;font:700 19px system-ui}
.orbit-rocket.speaking .orbit-port,.orbit-rocket.next .orbit-port{box-shadow:0 0 0 4px #fff,0 0 28px 12px #8ae9ff}
.orbit-rocket.next .orbit-order{background:#f8ce61;color:#203455;border-color:white}
.orbit-cards{display:flex;align-items:center;justify-content:center;gap:clamp(8px,2vw,25px);padding:12px 0 18px;min-height:0}
.orbit-cards button{width:min(18vw,170px);height:100%;max-height:155px;border:4px solid #b9e6ff;background:#fff;border-radius:20px;padding:5px;box-shadow:0 6px 0 #17466d,0 10px 22px #03163370;cursor:pointer;min-width:0}
.orbit-cards button img{width:100%;height:100%;object-fit:contain;display:block;border-radius:12px}
.orbit-cards button.selected{border-color:#ffda65;transform:translateY(-6px);box-shadow:0 0 0 3px white,0 0 24px #ffd262}
.orbit-cards button:disabled{visibility:hidden}
.orbit-cards button.wrong{border-color:#fa806b}
.rocket-memory-game[data-space-phase="countdown"] .orbit-flame,.rocket-memory-game[data-space-phase="launch"] .orbit-flame{opacity:1;animation:orbit-fire .16s infinite alternate}
.rocket-memory-game[data-space-phase="launch"] .orbit-ship{animation:orbit-lift 2.1s cubic-bezier(.5,0,.8,.5) var(--launch-delay) forwards}
.rocket-memory-game[data-space-phase="complete"] .orbit-ship{visibility:hidden}
.orbit-rocket:focus-visible,.orbit-cards button:focus-visible{outline:4px solid #ffdc65;outline-offset:4px}
@keyframes orbit-fire{to{transform:scaleX(.88) scaleY(1.16)}}
@keyframes orbit-lift{0%{transform:translateY(0)}10%{transform:translateY(-6px)}100%{transform:translateY(-130vh)}}
@media(max-width:600px){.orbit-stage{padding:0 2%;grid-template-rows:12% 57% 31%}.orbit-fleet{gap:1%}.orbit-ship{inset:12% 0 17%}.orbit-body{left:9%;right:9%}.orbit-nose{left:9%;right:9%;top:7%;height:30%}.orbit-port{left:5%;right:5%;height:54%;border-radius:15%}.orbit-rivets{font-size:8px;letter-spacing:1px}.orbit-cards{gap:8px;align-items:center}.orbit-cards button{width:23%;height:105px;padding:2px;border-radius:12px}.orbit-order{width:27px;height:27px;left:calc(50% - 13px);font-size:16px}.orbit-signals i{width:16px;height:16px}}

