.aio-mission{position:absolute;inset:0;pointer-events:none;z-index:6}.aio-mission[hidden],.surface-actor[hidden]{display:none!important}.sphere:not(.relief-active) .aio-mission{display:none}
.surface-actor{position:absolute;transform-origin:50% 100%;pointer-events:none;will-change:transform,opacity}.surface-actor svg{width:100%;height:100%;display:block;overflow:visible;filter:drop-shadow(0 1px 1px #00172b99)}
.aio-astronaut{width:14px;height:22px}.aio-flag{width:49px;height:47px;transform-origin:20% 100%}.surface-dust{position:absolute;left:-6px;bottom:-2px;width:25px;height:6px;border-radius:50%;background:radial-gradient(ellipse,#bfeaff70,transparent 70%);opacity:0;filter:blur(2px)}
.mission-doorway{position:absolute;left:34%;top:48%;width:16%;height:23%;background:#041c2d;border:1px solid #86cfec;border-radius:2px;opacity:0;perspective:70px;box-shadow:0 0 5px #54d9ff88}
.mission-hatch{position:absolute;inset:0;display:block;background:linear-gradient(120deg,#d6eafb,#55768f);border:1px solid #c4e8fb;transform-origin:left center}
.mission-ramp{position:absolute;left:6%;top:75%;width:31%;height:3px;background:repeating-linear-gradient(90deg,#8cb4ce 0 3px,#28465e 3px 4px);border-bottom:1px solid #7ee5ff;transform-origin:right center;opacity:0}
.flag-cloth{transform-box:fill-box;transform-origin:left center;animation:aio-flag-cloth 5s ease-in-out infinite}.flag-stitch{stroke:#b9eaff;stroke-width:.8;stroke-dasharray:2 2;fill:none;opacity:.55}.aio-suit-light{animation:aio-suit-light 3s ease-in-out infinite}
@keyframes aio-flag-cloth{0%,100%{transform:skewY(-1deg) scaleX(.98)}50%{transform:skewY(2deg) scaleX(1)}}@keyframes aio-suit-light{50%{opacity:.4}}
@media(max-width:760px){.aio-astronaut{width:13px;height:21px}.aio-flag{width:47px;height:45px}}
@media(prefers-reduced-motion:reduce){.aio-mission *{animation:none!important}}
.aio-firework-stage{position:fixed;inset:0;pointer-events:none;z-index:15;overflow:hidden;background:transparent}.aio-firework-stage[hidden]{display:none!important}.aio-firework-stage canvas{display:block;width:100%;height:100%;background:transparent}
.tag-aio{right:8px;top:62px;animation-delay:-2.5s;min-width:100px;justify-content:center;transition:opacity .9s,filter .9s,box-shadow .9s;z-index:3}
.tag-aio.aio-pending:not(.is-revealed){opacity:0;visibility:hidden;pointer-events:none;animation:none;filter:blur(5px)}
.tag-aio.is-revealed{opacity:1;visibility:visible;filter:none;box-shadow:0 0 24px #4daaff33,0 12px 35px #0003}
@media(max-width:760px){.tag-aio{right:0;top:62px;min-width:100px}}
@media(max-width:360px){.tag-aio{top:62px;min-width:92px;padding:10px;gap:6px}}
/* The astronaut follows the projected rungs of the shuttle's exterior ladder. */
.spacecraft>.aio-astronaut{width:10px;height:15px;z-index:8;transform-origin:50% 100%}.spacecraft>.aio-astronaut .surface-dust{display:none}
@media(max-width:760px){.spacecraft>.aio-astronaut{width:10px;height:15px}}
.sphere .planet-render{filter:brightness(var(--aio-brightness,1)) drop-shadow(0 0 var(--aio-glow,0px) #59cfff55)}
.tag-aio{overflow:hidden}
.tag-aio.is-revealed::before{content:"";position:absolute;inset:-50% -30%;pointer-events:none;background:linear-gradient(110deg,transparent 36%,#b9eeff38 49%,transparent 62%);animation:aio-materialize 1.5s ease-out both}
@keyframes aio-materialize{from{transform:translateX(-100%);opacity:0}30%{opacity:1}to{transform:translateX(100%);opacity:0}}
