body.echo-active{overflow:hidden}
body.echo-active > :is(.header,main,footer,.space-vignette,#planetLabels,#moonLabels,#satelliteExplore,.cursor-light){animation:echoInterfaceDissolve 2.5s .45s both;pointer-events:none}
#echoJourney{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:transparent;color:#e7e4dc;opacity:1;transition:opacity .7s ease;font-family:inherit}
#echoJourney::backdrop{background:transparent;backdrop-filter:none}
#echoJourney.is-closing{opacity:0;pointer-events:none}
#echoJourney .echo-screen{position:absolute;inset:0;background:#000;animation:echoCanvasReveal .65s ease both}
#echoJourney canvas{display:block;position:absolute;inset:0;width:100%;height:100%}
#echoJourney button{cursor:pointer;font-family:inherit}
#echoJourney button:focus-visible{outline:2px solid #e5d5b8;outline-offset:6px}
.echo-choice{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:24px;text-align:center;opacity:0;filter:blur(8px);transform:translateY(14px);transition:opacity 1.8s ease,filter 1.8s ease,transform 2.1s ease}
.echo-choice[hidden],.echo-flight-caption[hidden],.echo-controls [hidden]{display:none!important}
.echo-choice.is-visible{opacity:1;filter:blur(0);transform:none}
.echo-kicker{font-size:11px;letter-spacing:.5em;color:#8b929f;margin:0 0 27px}
.echo-choice h1{font-weight:400;font-family:'Orbit Court','Orbit Manuscript','Songti SC',serif;font-size:clamp(66px,8vw,125px);line-height:1.2;letter-spacing:.22em;margin:0 0 0 .22em;text-shadow:0 0 50px #c0d3ef22}
.echo-choice h1 span{display:block;margin-top:22px;font-family:inherit;font-size:clamp(22px,2.6vw,34px);letter-spacing:.44em;color:#b9bdc7}
.echo-rule{width:54px;height:1px;background:linear-gradient(90deg,transparent,#ac9982,transparent);margin:36px 0 25px}
.echo-question{color:#838a96;letter-spacing:.17em;font-size:14px;margin:0 0 28px}
.echo-actions{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap}
.echo-actions button{padding:15px 25px;font-size:14px;letter-spacing:.14em;border:1px solid #aa978454;border-radius:2px;background:transparent;color:#c4c1bc;transition:background .3s,border-color .3s}
.echo-actions .echo-enter{background:linear-gradient(125deg,#9d856924,#b3cbef10);color:#e7dece;border-color:#b09c7566}
.echo-enter span{display:inline-block;padding-left:23px;color:#b7a488}
.echo-actions button:hover{background:#c2ad9224;border-color:#c2ad9299}
.echo-controls{position:absolute;left:clamp(16px,3vw,48px);right:clamp(16px,3vw,48px);top:max(22px,env(safe-area-inset-top));display:flex;justify-content:space-between;align-items:center;z-index:2}
.echo-controls button{border:1px solid #ffffff26;color:#c4cbd5;background:#080b1499;backdrop-filter:blur(12px);padding:10px 16px;border-radius:30px;font-size:12px;letter-spacing:.08em}
.echo-controls button:hover{background:#151c2bcc;color:white}
.echo-flight-caption{position:absolute;bottom:max(34px,env(safe-area-inset-bottom));left:0;right:0;text-align:center;pointer-events:none;animation:echoFlightCaption 7s both;text-shadow:0 2px 16px #000}
.echo-flight-caption span{font-family:'Orbit Court','Orbit Manuscript',serif;display:block;font-size:25px;letter-spacing:.18em}
.echo-flight-caption small{display:block;margin-top:12px;font-size:11px;letter-spacing:.3em;color:#c7d6e9}
@keyframes echoInterfaceDissolve{0%{opacity:1;filter:none}45%{opacity:.4;filter:blur(1px)}100%{opacity:0;filter:blur(7px)}}
@keyframes echoCanvasReveal{from{opacity:0}to{opacity:1}}
@keyframes echoFlightCaption{0%{opacity:0}25%,65%{opacity:.85}100%{opacity:.3}}
@media(max-width:600px){.echo-actions{flex-direction:column;gap:14px;width:100%;max-width:290px}.echo-actions button{width:100%;padding:16px}.echo-choice h1{font-size:72px}.echo-choice h1 span{font-size:24px}.echo-kicker{margin-bottom:24px}.echo-rule{margin:29px 0 22px}.echo-controls{top:max(15px,env(safe-area-inset-top))}.echo-controls button{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){#echoJourney .echo-choice{transition:opacity .3s!important;transform:none;filter:none}#echoJourney .echo-screen{animation:none}.echo-flight-caption{opacity:.6}}

body.echo-active.echo-returning > :is(.header,main,footer,.space-vignette,#planetLabels,#moonLabels,#satelliteExplore,.cursor-light){animation:echoInterfaceReturn .65s 2.15s both;pointer-events:none}
#echoJourney[data-phase="returning"] .echo-controls{opacity:0;transition:opacity .4s;pointer-events:none}
@keyframes echoInterfaceReturn{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:none}}
@media(prefers-reduced-motion:reduce){body.echo-active.echo-returning > :is(.header,main,footer,.space-vignette,#planetLabels,#moonLabels,#satelliteExplore,.cursor-light){animation-duration:.3s;animation-delay:0s}}
