/* A small, non-interactive echo of the CTA. No layout space or scroll changes. */
.launch-flight{position:fixed;left:0;top:0;z-index:35;width:max-content;pointer-events:none;user-select:none;transform-origin:0 0;will-change:transform}
.launch-flight *{pointer-events:none!important}
.launch-flight-button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;white-space:nowrap;transform-origin:center;line-height:1.4}
.launch-flight-button>span:last-child{flex-shrink:0}
.launch-flight>i{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff2d4;box-shadow:0 0 9px #f1d49570;opacity:0}
.launch-flight[data-teleport=true] .launch-flight-button{animation:launch-teleport-in .28s cubic-bezier(.16,1,.3,1) both}
.launch-flight[data-teleport=true]:before{content:"";position:absolute;inset:-9px;border:1px solid #e9d5a878;border-radius:18px;opacity:0;animation:launch-teleport-ring .42s ease-out both}
.launch-flight[data-state=puff] .launch-flight-button{animation:launch-button-puff .5s cubic-bezier(.22,.61,.36,1) both}
.launch-flight[data-state=puff]>i{animation:launch-mote-puff .48s ease-out both}
@keyframes launch-teleport-in{0%{opacity:0;transform:scale(.88);filter:blur(5px)}100%{opacity:1;transform:scale(1);filter:blur(0)}}
@keyframes launch-teleport-ring{0%{opacity:0;transform:scale(.85)}25%{opacity:.7}100%{opacity:0;transform:scale(1.12)}}
@keyframes launch-button-puff{0%{opacity:1;transform:scale(1);filter:blur(0)}35%{opacity:.58;transform:scale(1.045);filter:blur(1px)}100%{opacity:0;transform:scale(1.12);filter:blur(5px)}}
@keyframes launch-mote-puff{0%{opacity:0;transform:translate3d(0,0,0) scale(.7)}20%{opacity:.75}100%{opacity:0;transform:translate3d(var(--puff-x),var(--puff-y),0) scale(.2)}}
@media(prefers-reduced-motion:reduce){.launch-flight{display:none}}
