/* 动画由独立画布承载，真实文字与按钮始终可以点击、选择和键盘操作。 */
*{box-sizing:border-box}html,body{margin:0;background:#050b1b;color:#fff5f3;font-family:Arial,Helvetica,sans-serif}body{min-width:280px}.flight{position:relative;isolation:isolate;height:100svh;min-height:620px;overflow:hidden}canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}header{position:absolute;top:max(28px,env(safe-area-inset-top));left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:16px}.wordmark{font-size:15px;letter-spacing:.24em;text-decoration:none;color:inherit;white-space:nowrap}.wordmark span{color:#92f7fa}.headline{position:absolute;top:13%;width:100%;text-align:center;pointer-events:none}.headline p{font-size:10px;letter-spacing:.32em;color:#abcfdf}.headline h1{margin:16px 0 0;font-size:clamp(30px,4.3vw,62px);font-weight:400;line-height:1.14;letter-spacing:.075em;text-transform:uppercase;text-shadow:0 2px 22px #060d2b}footer{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));width:100%;text-align:center}/* 桃色取自宇航员护腕。文字和箭头作为一个整体居中，固定 10px 间距，禁止两端拉开。 */
.launch{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:calc(100% - 48px);min-width:220px;min-height:56px;padding:15px 28px;border:0;border-radius:14px;background:#ffbc94;box-shadow:0 6px 18px #08081870;color:#302132;text-decoration:none;font-size:15px;letter-spacing:.01em;font-weight:600;transition:transform .18s,box-shadow .18s}
.launch::before{content:"";position:absolute;z-index:-1;inset:-60% -30%;background:linear-gradient(110deg,transparent 40%,#fff9 50%,transparent 60%);transform:translateX(-100%);animation:launch-sheen 7s ease-in-out infinite}
.launch-label{line-height:1.25;text-align:left}.launch-icon{display:grid;place-items:center;flex:0 0 20px;height:20px}.launch svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;animation:launch-arrow 7s ease-in-out infinite}.launch:hover{transform:translateY(-2px);box-shadow:0 9px 22px #08081890}.launch:active{transform:translateY(1px) scale(.985)}
@keyframes launch-sheen{0%,65%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}
@keyframes launch-arrow{0%,65%,85%,100%{transform:translateX(0)}75%{transform:translateX(3px)}}
/* 语言使用展开式选项，键盘和触屏都能直接选择。 */
.language-picker{position:relative}.language-picker button{font:inherit;color:#f5e7dc;cursor:pointer}#language-toggle{display:flex;align-items:center;gap:8px;border:1px solid #f0d9c340;border-radius:20px;padding:10px 13px;background:#071129b3;font-size:12px}#language-toggle svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.4}#language-options{position:absolute;right:0;top:calc(100% + 10px);width:160px;padding:6px;background:#141a2e;border:1px solid #e4c9af55;border-radius:14px;box-shadow:0 10px 25px #0006}#language-options button{display:block;width:100%;padding:10px 12px;border:0;border-radius:8px;text-align:left;background:none;font-size:13px}#language-options button:hover,#language-options button[aria-current="true"]{background:#f4d3b522}header{z-index:3}
.motion-stopped .launch::before,.motion-stopped .launch svg{animation-play-state:paused}
a:focus-visible,button:focus-visible{outline:3px solid white;outline-offset:6px}footer p{margin:22px 0 0;font-size:9px;letter-spacing:.35em;color:#bccadd}footer p span{padding:0 10px}.loading{position:absolute;top:52%;text-align:center;width:100%;font-size:13px;color:#b7d5e6}.loading[hidden]{display:none}@media(max-width:600px){.flight{min-height:570px}header{top:22px;left:6%;right:6%}.wordmark{font-size:11px;letter-spacing:.15em}#language-toggle{font-size:11px;padding:9px 11px}.headline{top:13%}.headline p{font-size:8px;letter-spacing:.2em}.headline h1{font-size:clamp(26px,7.3vw,42px);letter-spacing:.07em}.launch{min-height:56px;font-size:15px}footer{bottom:26px}footer p{margin-top:20px;font-size:8px}}@media(prefers-reduced-motion:reduce){.launch{transition:none}.launch:hover{transform:none}}

@media(prefers-reduced-motion:reduce){.launch::before,.launch svg{animation:none}}
/* 翻译后的标题更长，缩小展示字号以保持两行和角色之间的留白。 */
html:not([lang="en"]) .headline h1{font-size:clamp(17px,4.3vw,42px);letter-spacing:.025em}
