@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./noto-sans-sc-latin-wght-normal-BwajdZ5W.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./noto-sans-sc-cyrillic-wght-normal-BIgnYsOi.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./noto-sans-sc-vietnamese-wght-normal-D-gVvgeD.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Sans SC Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./noto-sans-sc-latin-ext-wght-normal-PDqTqU3h.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}.so-hud{--so-hud-border: rgba(199, 224, 239, .2);--so-hud-border-strong: rgba(201, 230, 247, .42);--so-hud-panel: rgba(5, 12, 20, .78);--so-hud-panel-solid: rgba(5, 11, 18, .94);--so-hud-text: rgba(238, 247, 251, .9);--so-hud-muted: rgba(205, 224, 235, .52);--so-hud-accent: rgba(166, 220, 247, .92);position:absolute;z-index:14;top:0;right:0;bottom:0;left:0;color:var(--so-hud-text);font-family:inherit;pointer-events:none}.so-hud button{color:inherit;font:inherit}.so-hud__mission,.so-hud__telemetry,.so-hud__heading,.so-hud__pause,.so-hud__forward{position:absolute;pointer-events:auto}.so-hud__minimap{position:absolute;top:max(28px,env(safe-area-inset-top));left:max(34px,env(safe-area-inset-left));width:168px;color:var(--so-hud-text);pointer-events:none;text-shadow:0 2px 16px rgba(0,3,7,.78)}.so-hud__minimap-head{display:flex;height:18px;padding:0 2px;align-items:flex-start;justify-content:space-between;color:#c4dcea7a;font-size:8px;font-weight:500;letter-spacing:.16em}.so-hud__minimap-head b{color:#e0eff6ad;font-weight:430;font-variant-numeric:tabular-nums;letter-spacing:0}.so-hud__minimap-render{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border-top:1px solid rgba(199,224,239,.26);border-bottom:1px solid rgba(199,224,239,.18);background:#050b129e}.so-hud__minimap>p{display:flex;min-width:0;min-height:27px;margin:0;padding:7px 2px 0;align-items:flex-start;justify-content:space-between;gap:8px;color:#cce1ec8a;font-size:8px;letter-spacing:.06em}.so-hud__minimap>p span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.so-hud__minimap>p b{flex:0 0 auto;color:#e0edf494;font-size:7px;font-weight:390;font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap}.so-hud--playing.so-hud--has-minimap .so-hud__mission{left:max(228px,calc(194px + env(safe-area-inset-left)))}.so-hud__mission{top:max(28px,env(safe-area-inset-top));left:max(34px,env(safe-area-inset-left));width:min(230px,24vw);padding:2px 0 0 18px;text-shadow:0 2px 16px rgba(0,3,7,.72)}.so-hud__mission:before{position:absolute;top:2px;bottom:1px;left:0;width:1px;background:#bbdef161;content:""}.so-hud__section-head{display:flex;align-items:center;gap:9px;color:#c4dcea73;font-size:8px;font-weight:500;letter-spacing:.2em}.so-hud__section-head i{width:34px;height:1px;background:var(--so-hud-border)}.so-hud__mission h2{margin:8px 0 0;color:var(--so-hud-text);font-size:clamp(17px,1.45vw,22px);font-weight:300;letter-spacing:.14em}.so-hud__mission>p{margin:7px 0 0;color:var(--so-hud-muted);font-size:10px;font-weight:340;letter-spacing:.08em}.so-hud__mission-state{display:flex;margin-top:16px;padding-top:11px;align-items:center;gap:8px;border-top:1px solid rgba(203,227,241,.16);color:#bfe1f2ad;font-size:9px;letter-spacing:.1em}.so-hud__mission-state svg{width:15px;height:15px;color:var(--so-hud-accent)}.so-hud__heading{top:max(31px,env(safe-area-inset-top));left:50%;display:flex;min-width:330px;align-items:center;justify-content:center;gap:11px;transform:translate(-50%);color:#d9e9f2a1}.so-hud__heading>svg{width:13px;height:13px;color:var(--so-hud-accent);transform:rotate(7deg)}.so-hud__heading>div{display:flex;align-items:baseline;gap:7px}.so-hud__heading small{font-size:7px;letter-spacing:.2em}.so-hud__heading b{color:#ecf6fad9;font-size:11px;font-weight:430;letter-spacing:.12em}.so-hud__heading-rule{width:clamp(28px,4.5vw,72px);height:1px;background:var(--so-hud-border)}.so-hud__target{display:flex;align-items:center;gap:6px;color:#c0e1f2a8;font-size:8px;font-weight:500;letter-spacing:.16em}.so-hud__target i{width:4px;height:4px;border-radius:50%;background:var(--so-hud-accent);box-shadow:0 0 9px #97dcfb9e}.so-hud__telemetry{right:max(34px,env(safe-area-inset-right));bottom:max(30px,env(safe-area-inset-bottom));display:flex;gap:26px;text-shadow:0 2px 16px rgba(0,3,7,.78)}.so-hud__telemetry-item{position:relative;min-width:112px;padding:0 0 0 14px}.so-hud__telemetry-item:before{position:absolute;top:2px;bottom:2px;left:0;width:1px;background:#c2e0f13d;content:""}.so-hud__telemetry-item>span{display:flex;align-items:center;gap:7px;color:var(--so-hud-muted);font-size:8px;letter-spacing:.12em}.so-hud__telemetry-item>span svg{width:14px;height:14px;color:#b5daeea8}.so-hud__telemetry-item p{display:flex;margin:7px 0 0;align-items:baseline;gap:6px}.so-hud__telemetry-item b{color:#f1f8fbe6;font-size:20px;font-weight:260;letter-spacing:.04em;line-height:1}.so-hud__telemetry-item small{color:#cde1ec70;font-size:8px;letter-spacing:.08em}.so-hud__pause{top:max(28px,env(safe-area-inset-top));right:max(34px,env(safe-area-inset-right));display:flex;min-width:60px;height:34px;padding:0;align-items:center;justify-content:flex-end;gap:8px;border:0;background:transparent;color:#dbebf4a3;cursor:pointer;text-shadow:0 2px 14px rgba(0,3,7,.82);transition:color .16s ease,opacity .16s ease}.so-hud__pause:hover,.so-hud__pause:focus-visible{color:var(--so-hud-text)}.so-hud__pause svg{width:14px;height:14px}.so-hud__pause span{font-size:9px;letter-spacing:.14em}.so-hud__forward{bottom:max(28px,env(safe-area-inset-bottom));left:50%;display:flex;min-width:104px;padding:0;align-items:center;justify-content:center;gap:12px;border:0;background:transparent;transform:translate(-50%);color:var(--so-hud-text);cursor:pointer;text-shadow:0 2px 15px rgba(0,3,7,.8);transition:transform .16s ease,color .16s ease}.so-hud__forward:hover,.so-hud__forward:focus-visible{color:#fff;transform:translate(-50%,-2px)}.so-hud__forward>svg{width:24px;height:24px;color:var(--so-hud-accent)}.so-hud__forward>span{display:grid;gap:2px;text-align:left}.so-hud__forward b{font-size:11px;font-weight:410;letter-spacing:.16em}.so-hud__forward small{color:#c7deeb6b;font-size:7px;letter-spacing:.15em}.so-hud__task-action>svg{color:#a5e1f8e6}.so-hud__scrim{position:absolute;z-index:18;top:0;right:0;bottom:0;left:0;border:0;background:#000408c7;pointer-events:auto;cursor:default;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.so-hud__panel{position:absolute;z-index:19;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));display:flex;width:min(330px,calc(100vw - 36px));min-height:0;padding:28px 34px 22px 28px;flex-direction:column;border:0;background:transparent;pointer-events:auto;text-shadow:0 2px 18px rgba(0,0,0,.78);animation:so-hud-panel-in .42s cubic-bezier(.22,1,.36,1) both}.so-hud__panel:before{position:absolute;top:28px;bottom:22px;left:0;width:1px;background:#c4e2f22e;content:""}.so-hud__panel-head{display:flex;align-items:flex-start;justify-content:space-between}.so-hud__panel-head p{margin:0 0 7px;color:#c1dbe966;font-size:8px;font-weight:500;letter-spacing:.22em}.so-hud__panel-head h2{margin:0;color:var(--so-hud-text);font-size:25px;font-weight:280;letter-spacing:.18em}.so-hud__panel-head button{display:grid;width:34px;height:34px;padding:0;place-items:center;border:0;background:transparent;color:#d3e6f18f;cursor:pointer}.so-hud__panel-head button:hover,.so-hud__panel-head button:focus-visible{color:var(--so-hud-text)}.so-hud__panel-head svg{width:20px;height:20px}.so-hud__settings{display:grid;margin-top:27px;border-top:1px solid rgba(201,226,240,.13)}.so-hud__setting{display:grid;min-height:66px;padding:0 2px;grid-template-columns:26px 1fr auto;align-items:center;gap:11px;border:0;border-bottom:1px solid rgba(201,226,240,.12);background:transparent;text-align:left;cursor:pointer}.so-hud__setting:disabled{cursor:not-allowed;opacity:.38}.so-hud__setting>svg{width:19px;height:19px;color:#c1deeeb0}.so-hud__setting>span{display:grid;gap:4px}.so-hud__setting b{color:#ebf4f9d1;font-size:11px;font-weight:390;letter-spacing:.1em}.so-hud__setting small{color:#c5dae66e;font-size:8px;letter-spacing:.06em}.so-hud__switch{position:relative;width:32px;height:17px;border:1px solid rgba(190,220,236,.26);border-radius:18px;background:#ffffff0a;transition:border-color .16s ease,background-color .16s ease}.so-hud__switch span{position:absolute;top:3px;left:3px;width:9px;height:9px;border-radius:50%;background:#d5e6ef8f;transition:transform .18s ease,background-color .18s ease}.so-hud__setting[aria-checked=true] .so-hud__switch{border-color:#a1dbf88f;background:#7ac2e629}.so-hud__setting[aria-checked=true] .so-hud__switch span{background:var(--so-hud-accent);transform:translate(15px)}.so-hud__panel-actions{display:grid;margin-top:auto;padding-top:25px;grid-template-columns:1fr;gap:9px}.so-hud__panel-actions button{display:flex;min-height:39px;padding:0;align-items:center;justify-content:flex-start;gap:9px;border:0;border-bottom:1px solid rgba(194,224,241,.3);background:transparent;color:#eef7fbe6;font-size:10px;font-weight:390;letter-spacing:.12em;cursor:pointer;transition:color .16s ease,border-color .16s ease}.so-hud__panel-actions button+button{border-color:#c2e0f124;background:transparent}.so-hud__panel-actions button:hover,.so-hud__panel-actions button:focus-visible{border-color:#c6eafcb8;color:#fff}.so-hud__panel-actions svg{width:15px;height:15px}.so-hud__panel-foot{margin:13px 0 0;color:#c2d8e454;font-size:8px;letter-spacing:.08em;text-align:center}.so-hud.is-overlay-open>:not(.so-hud__scrim,.so-hud__panel){opacity:.36}@keyframes so-hud-panel-in{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0)}}@media(max-width:980px)and (orientation:landscape){.so-hud__minimap{top:max(14px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));width:132px}.so-hud__minimap-head{height:15px;font-size:7px}.so-hud__minimap>p{min-height:22px;padding-top:5px;font-size:7px}.so-hud__minimap>p b{display:none}.so-hud__mission{top:max(14px,env(safe-area-inset-top));left:max(18px,env(safe-area-inset-left));width:195px;padding:2px 0 0 14px}.so-hud--playing.so-hud--has-minimap .so-hud__mission{left:max(166px,calc(148px + env(safe-area-inset-left)));width:150px}.so-hud__mission h2{margin-top:5px;font-size:16px}.so-hud__mission>p{margin-top:4px;font-size:8px}.so-hud__mission-state{margin-top:10px;padding-top:8px}.so-hud__heading{top:max(17px,env(safe-area-inset-top));min-width:260px}.so-hud__pause{top:max(14px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right))}.so-hud__telemetry{right:max(18px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom))}.so-hud__telemetry-item{min-width:96px;padding:0 0 0 11px}.so-hud__telemetry-item b{font-size:17px}.so-hud__forward{bottom:max(14px,env(safe-area-inset-bottom));min-width:96px;padding:0}.so-hud__forward>svg{width:20px;height:20px}.so-hud__panel{width:min(310px,calc(100vw - 24px));top:12px;right:12px;bottom:12px;padding:20px 22px 17px 25px}.so-hud__panel-head h2{font-size:21px}.so-hud__settings{margin-top:18px}.so-hud__setting{min-height:56px}.so-hud__panel-actions{padding-top:16px}.so-hud__panel-actions button{min-height:39px}}@media(max-height:470px)and (orientation:landscape){.so-hud__mission-state,.so-hud__heading-rule{display:none}.so-hud__mission{width:184px}.so-hud__telemetry-item{min-width:88px}.so-hud__panel{padding-top:16px;padding-bottom:14px}.so-hud__settings{margin-top:12px}.so-hud__setting{min-height:48px}.so-hud__panel-foot{display:none}}@media(orientation:portrait)and (max-width:900px){.so-hud{display:none}}@media(prefers-reduced-motion:reduce){.so-hud *,.so-hud *:before,.so-hud *:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.ftl-root{position:relative;width:100%;height:100%;overflow:hidden;background:#0f0f10;color:#e1eef2c7;font-family:Noto Sans SC Variable,PingFang SC,sans-serif;-webkit-user-select:none;user-select:none;touch-action:none}.ftl-root:before{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(180deg,#17191a,#090a0b 58%,#111314);background-size:42px 42px,42px 42px,100% 100%;content:""}.ftl-panel{position:absolute;top:6%;right:7%;bottom:6%;left:7%;display:grid;grid-template-rows:auto 1fr auto;border:1px solid rgba(210,229,235,.09);background:#05070885;box-shadow:inset 0 1px #ffffff06,0 28px 70px #0000008f}.ftl-header,.ftl-footer{position:relative;z-index:1;display:flex;min-height:56px;padding:0 clamp(18px,3vw,44px);align-items:center;justify-content:space-between;border-bottom:1px solid rgba(201,225,234,.08);color:#c0dae46e;font:500 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}.ftl-footer{min-height:48px;border-top:1px solid rgba(201,225,234,.08);border-bottom:0}.ftl-status{color:#a2dedbb8}.ftl-stage{position:relative;z-index:1;display:grid;min-height:0;grid-template-columns:1fr 1px 1fr;align-items:center}.ftl-divider{width:1px;height:68%;background:#c9e1ea1a}.ftl-channel{display:grid;min-width:0;place-items:center;gap:clamp(12px,2.6vh,24px)}.ftl-channel-label{display:grid;gap:5px;text-align:center}.ftl-channel-label b{color:#e0edf1ad;font-size:12px;font-weight:390;letter-spacing:0}.ftl-channel-label small{color:#bdd7e04f;font:500 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}.ftl-knob{--ftl-angle: 0deg;position:relative;width:clamp(132px,22vmin,230px);aspect-ratio:1;padding:0;border:0;border-radius:50%;background:radial-gradient(circle at 38% 32%,#555b5d 0,#555b5d 4%,#282c2d 28%,#111314 62%,#050606 74%),#111;color:#d3e7ec99;box-shadow:inset 0 2px 2px #ffffff14,inset 0 -12px 24px #000000b8,0 16px 34px #00000094,0 0 0 15px #17191a,0 0 0 16px #dcecf117;cursor:grab;touch-action:none}.ftl-knob:active{cursor:grabbing}.ftl-knob:focus-visible{outline:1px solid rgba(164,224,238,.72);outline-offset:20px}.ftl-knob:before{position:absolute;top:10%;left:50%;width:2px;height:26%;background:#cdebeeb8;box-shadow:0 0 9px #7cdbde33;content:"";transform:translate(-50%) rotate(var(--ftl-angle));transform-origin:50% 154%}.ftl-knob:after{position:absolute;top:-24px;right:-24px;bottom:-24px;left:-24px;border:1px dashed rgba(191,220,228,.13);border-radius:50%;content:""}.ftl-meter{width:min(72%,280px);height:2px;overflow:hidden;background:#b1cfd91a}.ftl-meter span{display:block;width:var(--ftl-level, 0%);height:100%;background:#85d5d2a8;transition:width 80ms linear}.ftl-readout{display:grid;place-items:center;gap:5px}.ftl-readout b{color:#c5ebe2c7;font:300 clamp(21px,3.2vw,42px)/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}.ftl-readout small{color:#bcd9e057;font:500 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}.ftl-root.is-locking .ftl-readout b{color:#b4f6dff5;text-shadow:0 0 18px rgba(93,225,181,.22)}.ftl-root.is-complete .ftl-panel{border-color:#9cebcf3d}@media(max-height:520px)and (orientation:landscape){.ftl-panel{top:4%;right:5%;bottom:4%;left:5%}.ftl-header{min-height:38px}.ftl-footer{min-height:34px}.ftl-channel{gap:9px}.ftl-knob{width:clamp(104px,29vh,152px)}.ftl-knob:after{top:-14px;right:-14px;bottom:-14px;left:-14px}}@media(prefers-reduced-motion:reduce){.ftl-meter span{transition:none}}.sll-root{position:fixed;left:0;top:0;width:100vw;height:100vh;transform-origin:0 0;overflow:hidden;background-color:#1a1d22;background-image:radial-gradient(rgba(255,255,255,.02) 1px,transparent 1px),radial-gradient(rgba(0,0,0,.4) 1px,transparent 1px),linear-gradient(180deg,#14161a,#22262c 10%,#22262c 90%,#14161a),radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.05),transparent 65%);background-size:3px 3px,3px 3px,100% 100%,100% 100%;background-position:0 0,1px 2px,0 0,0 0;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;touch-action:none;z-index:1}.sll-root:before{content:"";position:absolute;top:12px;right:12px;bottom:12px;left:12px;border:2px solid rgba(0,0,0,.6);border-radius:6px;box-shadow:inset 0 0 0 1px #ffffff0f,inset 0 40px 80px #0009,inset 0 -40px 80px #0009;pointer-events:none}.sll-canvas{display:block;width:100%;height:100%;touch-action:none}.sll-root.sll-embedded{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform-origin:0 0}:root{font-family:Noto Sans SC Variable,Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;color:#edf4fa;background:#010205;font-synthesis:none;text-rendering:geometricPrecision;--hairline: rgba(220, 235, 247, .36);--quiet: rgba(222, 234, 244, .62);--bright: #f4f8fb;--cyan: #9ed8f5;--warm: #f0e0c3}*{box-sizing:border-box}html,body,#root{width:100%;height:100%}body{margin:0;min-width:320px;min-height:100vh;overflow:hidden;overscroll-behavior:none;background:#010205;-webkit-font-smoothing:antialiased}button,a{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible{outline:1px solid var(--cyan);outline-offset:5px}.game-shell{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;isolation:isolate;background:#010205;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.game-shell a,.game-shell canvas,.game-shell img,.game-shell svg{-webkit-user-drag:none}.scene-viewport{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;touch-action:none;cursor:grab}.scene-viewport:active{cursor:grabbing}.scene-viewport canvas{display:block;width:100%;height:100%}.scene-blackout{position:absolute;z-index:24;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#000;opacity:0;transition:opacity .9s cubic-bezier(.4,0,.2,1)}.scene-blackout.is-active{opacity:1}.signal-lever-overlay{position:absolute;z-index:60;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#050810;touch-action:none}.signal-lever-overlay__stage{position:absolute;top:0;right:0;bottom:0;left:0}.signal-lever-overlay__close{position:absolute;z-index:4;top:max(18px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));display:grid;width:44px;height:44px;padding:0;place-items:center;border:0;background:#05080c61;color:#ebf4fac2;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.signal-lever-overlay__close:hover,.signal-lever-overlay__close:focus-visible{color:#fff}.signal-lever-overlay__close svg{width:22px;height:22px}.task-overlay{position:absolute;z-index:60;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#050810;touch-action:none}.task-overlay__stage,.task-overlay__frame{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.task-overlay__close{position:absolute;z-index:4;top:max(18px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));display:grid;width:44px;height:44px;padding:0;place-items:center;border:0;background:#05080c61;color:#ebf4fac2;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.task-overlay__close:hover,.task-overlay__close:focus-visible{color:#fff}.task-overlay__close svg{width:22px;height:22px}.top-controls{position:absolute;z-index:12;top:max(24px,env(safe-area-inset-top));right:max(28px,env(safe-area-inset-right));display:flex;align-items:center;gap:6px;opacity:.3;transition:opacity .18s ease}.top-controls[hidden]{display:none}.game-shell:hover .top-controls,.top-controls:focus-within{opacity:1}.icon-button,.close-dialog{display:grid;width:44px;height:44px;padding:0;place-items:center;border:0;background:transparent;color:#ebf4faad;cursor:pointer;transition:color .18s ease,opacity .18s ease}.icon-button:hover,.icon-button.is-active,.close-dialog:hover{color:var(--bright)}.icon-button svg,.close-dialog svg{width:21px;height:21px}.title-lockup{position:absolute;z-index:8;left:clamp(34px,3.6vw,60px);bottom:clamp(70px,12vh,120px);pointer-events:none;transition:opacity .5s ease,transform .7s ease}.title-lockup .eyebrow,.mission-hud .eyebrow,.credits-dialog .eyebrow{margin:0 0 13px;color:#cddde870;font-size:9px;font-weight:420;letter-spacing:.28em}.title-lockup h1{margin:0;color:#e9f0f5bd;font-size:clamp(26px,2.1vw,38px);font-weight:280;letter-spacing:.26em;line-height:1.1;text-shadow:0 2px 20px rgba(0,0,0,.35)}.stage-approach .title-lockup,.stage-pitch .title-lockup,.stage-yaw .title-lockup,.stage-motion .title-lockup,.stage-ready .title-lockup,.stage-launch .title-lockup,.stage-playing .title-lockup{opacity:.76;transform:scale(.86);transform-origin:left bottom}.stage-pitch .title-lockup,.stage-yaw .title-lockup,.stage-motion .title-lockup,.stage-ready .title-lockup,.stage-launch .title-lockup,.stage-playing .title-lockup{opacity:0}.start-action{position:absolute;top:calc(100% - 6px);left:0;display:flex;min-width:170px;min-height:48px;margin-top:0;padding:0;align-items:center;gap:14px;border:0;background:transparent;color:#f4f8fbe0;font-size:13px;font-weight:370;letter-spacing:.2em;pointer-events:auto;cursor:pointer}.start-action span{width:24px;height:1px;background:currentColor;transition:width .24s ease}.start-action:hover span{width:44px}.status-copy{margin:19px 0 0;color:#dce8f08c;font-size:11px;letter-spacing:.2em}.status-copy:after,.approach-copy:after{content:" · · ·";animation:status-pulse 2.4s steps(4,end) infinite}.earth-orbit-action{position:absolute;z-index:10;right:max(34px,env(safe-area-inset-right));bottom:max(34px,env(safe-area-inset-bottom));display:grid;min-width:142px;padding:10px 12px;gap:3px;border:1px solid rgba(185,213,232,.14);background:#030b1647;color:#e2eff7ad;font:inherit;font-size:10px;font-weight:380;letter-spacing:.16em;text-align:left;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}.earth-orbit-action span{color:#adcfe56b;font-size:7px;letter-spacing:.28em}.earth-orbit-action:hover,.earth-orbit-action:focus-visible{border-color:#cde5f361;background:#05101f80;color:#f0f7fbf0}.headphone-notice{--headphone-notice-duration: 2.2s;position:absolute;z-index:32;top:0;right:0;bottom:0;left:0;display:grid;overflow:hidden;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));place-items:center;background:#010205;text-align:center}.headphone-notice__content{display:grid;width:min(360px,78vw);place-items:center;animation:headphone-notice-lifecycle var(--headphone-notice-duration) cubic-bezier(.4,0,.2,1) both}.headphone-notice__content>svg{width:58px;height:58px;margin-bottom:24px;color:#e2eff7c7;filter:drop-shadow(0 0 18px rgba(158,216,245,.08))}.headphone-notice__code{margin:0 0 12px;color:#b5cfe06b;font-size:9px;font-weight:420;letter-spacing:0}.headphone-notice h2{margin:0;color:#eff6fae0;font-size:22px;font-weight:300;letter-spacing:0;line-height:1.25}.headphone-notice h2+p{margin:11px 0 0;color:#d7e5ee94;font-size:12px;font-weight:340;letter-spacing:0;line-height:1.7}.headphone-notice__progress{width:72px;height:1px;margin-top:28px;overflow:hidden;background:#deecf624}.headphone-notice__progress i{display:block;width:100%;height:100%;background:#cde8f8b3;transform:scaleX(0);transform-origin:left center;animation:headphone-notice-progress var(--headphone-notice-duration) linear both}.loading-state{position:absolute;z-index:10;top:50%;left:50%;width:min(280px,70vw);transform:translate(-50%,-50%);color:var(--quiet);text-align:center}.loading-state p{margin:0 0 20px;font-size:11px;font-weight:360;letter-spacing:.24em}.load-track{width:100%;height:1px;background:#deecf629}.load-track span{display:block;height:1px;background:#cde8f8bd;transition:width .18s ease}.loading-state b{display:block;margin-top:12px;font-size:9px;font-weight:390;letter-spacing:.2em}.station-target{--station-x: 34%;--station-y: 48%;--station-scale: 1;position:absolute;z-index:9;top:var(--station-y);left:var(--station-x);display:block;width:560px;height:300px;padding:0;border:0;background:transparent;color:#eef6fbf5;opacity:0;transform:translate(-50%,-50%) scale(var(--station-scale));transform-origin:50% 50%;pointer-events:none;cursor:pointer;transition:opacity .45s ease}.station-target[data-visible=true]:not(:disabled){opacity:1;pointer-events:auto}.station-reticle{position:absolute;top:calc(50% + 31px);left:calc(50% + 34px);width:50px;height:50px;color:#ebf5fae0;animation:reticle-breathe 4s ease-in-out infinite}.station-line{position:absolute;top:calc(50% + 56px);left:calc(50% + 83px);width:66px;height:1px;background:var(--hairline)}.station-copy{position:absolute;top:calc(50% + 43px);left:calc(50% + 157px);white-space:nowrap;font-size:clamp(13px,1.25vw,17px);font-weight:340;letter-spacing:.18em;text-shadow:0 1px 12px #000}.approach-copy{position:absolute;z-index:8;bottom:10vh;left:50%;margin:0;transform:translate(-50%);color:#e0ebf394;font-size:11px;letter-spacing:.26em}.motion-demo{position:absolute;z-index:10;bottom:clamp(40px,8vh,86px);left:50%;display:grid;width:min(520px,calc(100vw - 64px));grid-template-columns:144px 1fr;align-items:center;gap:38px;transform:translate(-50%)}.device-motion{display:grid;width:144px;height:104px;place-items:center;perspective:600px}.device-motion svg{width:78px;height:118px;color:#e9f1f6d6;filter:drop-shadow(0 18px 20px rgba(0,0,0,.42));transform:rotate(90deg);transform-style:preserve-3d}.motion-demo.pitch .device-motion svg{animation:pitch-phone 4.2s ease-in-out infinite}.motion-demo.yaw .device-motion svg{animation:yaw-phone 4.2s ease-in-out infinite}.step-count{margin:0 0 8px;color:#c0dae87a;font-size:9px;font-weight:450;letter-spacing:.22em}.motion-demo h2,.motion-permission h2,.credits-dialog h2,.mission-hud h2{margin:0;color:#f1f7faeb;font-size:clamp(22px,2vw,31px);font-weight:280;letter-spacing:.16em}.motion-demo>div:last-child>p:last-child,.motion-permission>p:not(.step-count){margin:8px 0 0;color:#d5e2eb99;font-size:12px;font-weight:340;line-height:1.8;letter-spacing:.08em}.motion-permission{position:absolute;z-index:10;top:auto;bottom:max(14px,env(safe-area-inset-bottom));left:50%;width:min(410px,calc(100vw - 48px));padding:15px 0 0;border:0;background:transparent;transform:translate(-50%);text-align:center;text-shadow:0 2px 18px rgba(0,3,7,.82)}.motion-permission:before{position:absolute;top:0;left:50%;width:72px;height:1px;background:#c6e2f147;content:"";transform:translate(-50%)}.motion-permission>svg{width:28px;height:28px;margin-bottom:7px;color:#e4f0f7ad;transform:rotate(90deg)}.choice-actions{display:flex;margin-top:14px;justify-content:center;gap:22px}.error-state button{min-width:124px;min-height:42px;padding:0 18px;border:1px solid rgba(211,230,241,.3);background:#04080c7a;color:#eef6fae6;font-size:12px;font-weight:360;letter-spacing:.14em;cursor:pointer}.choice-actions button{min-width:118px;min-height:34px;padding:0 4px 5px;border:0;border-bottom:1px solid rgba(196,225,241,.22);background:transparent;color:#e2eff6b8;font-size:11px;font-weight:360;letter-spacing:.15em;cursor:pointer;transition:color .16s ease,border-color .16s ease}.choice-actions button:first-child{border-color:#b3ddf494;color:#eff7fbe6}.choice-actions button:hover,.choice-actions button:focus-visible{border-color:#cdebfbd1;color:#fff}.forward-ready{position:absolute;z-index:10;bottom:max(34px,env(safe-area-inset-bottom));left:50%;display:flex;flex-direction:column;align-items:center;transform:translate(-50%)}.forward-ready>p{margin:0 0 15px;color:#d6e5ee8f;font-size:10px;letter-spacing:.14em}.forward-ready>small{margin-top:8px;color:#d5e2eb61;font-size:9px;letter-spacing:.12em}.forward-control{display:grid;width:72px;height:72px;padding:9px 0 7px;place-items:center;align-content:center;gap:2px;border:1px solid rgba(204,231,246,.46);border-radius:50%;background:#02060a57;color:#eff8fce6;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .16s ease,transform .16s ease}.forward-control:hover{border-color:#d8f0fcd1;transform:translateY(-3px)}.forward-control svg{width:25px;height:25px}.forward-control span{font-size:9px;font-weight:380;letter-spacing:.14em}.launch-state{position:absolute;z-index:10;top:50%;left:50%;display:flex;align-items:center;gap:14px;transform:translate(-50%,-50%);color:#e4eff6b3}.launch-state svg{width:29px;height:29px}.launch-state p{margin:0;font-size:11px;letter-spacing:.22em}.mission-hud{position:absolute;z-index:8;top:clamp(30px,6vh,64px);left:clamp(28px,4vw,70px)}.mission-hud h2{font-size:22px}.mission-hud>div{display:flex;margin-top:18px;align-items:baseline;gap:8px}.mission-hud>div span,.mission-hud>div small{color:#d5e3eb7a;font-size:9px;letter-spacing:.14em}.mission-hud>div b{color:#ecf5f9db;font-size:24px;font-weight:240;letter-spacing:.04em}.control-hint{position:absolute;z-index:8;right:clamp(28px,4vw,70px);bottom:clamp(24px,5vh,56px);display:flex;align-items:center;gap:10px;color:#d3e2eb73;font-size:9px;letter-spacing:.11em}.control-hint svg{width:20px;height:20px}.error-state{position:absolute;z-index:20;top:50%;left:50%;width:min(420px,calc(100vw - 48px));transform:translate(-50%,-50%);text-align:center}.error-state p{color:#f0e2e2c7;font-size:13px;line-height:1.7}.error-state button{margin-top:18px}.modal-backdrop{position:absolute;z-index:40;top:0;right:0;bottom:0;left:0;display:grid;padding:28px;place-items:center;background:#000205d1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.credits-dialog{position:relative;width:min(560px,100%);padding:38px 44px 40px;border:1px solid rgba(204,225,238,.2);background:#04070adb}.credits-dialog .close-dialog{position:absolute;top:12px;right:12px}.credits-dialog h2{margin-bottom:24px;font-size:25px}.credits-dialog>p:not(.eyebrow){margin:0 0 14px;color:#d7e4eca8;font-size:12px;line-height:1.85;letter-spacing:.04em}.credit-links{display:flex;margin-top:26px;flex-wrap:wrap;gap:12px 26px}.credit-links span{color:#c6e2f2d1;font-size:11px;letter-spacing:.08em}.rotate-notice{position:absolute;z-index:50;top:0;right:0;bottom:0;left:0;display:none;padding:24px;place-items:center;align-content:center;gap:20px;background:#020408;text-align:center}.rotate-notice svg{width:64px;height:64px;color:#e4eff6b3;animation:rotate-device 2.8s ease-in-out infinite}.rotate-notice p{margin:0;color:#e1edf4b8;font-size:13px;letter-spacing:.14em}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes status-pulse{0%{opacity:.3}to{opacity:1}}@keyframes headphone-notice-lifecycle{0%{opacity:0;transform:translateY(7px)}18%,78%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}@keyframes headphone-notice-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes reticle-breathe{0%,to{opacity:.62;transform:scale(.94)}50%{opacity:1;transform:scale(1.04)}}@keyframes pitch-phone{0%,to{transform:rotateX(-18deg) rotate(90deg)}50%{transform:rotateX(18deg) rotate(90deg)}}@keyframes yaw-phone{0%,to{transform:rotateY(-24deg) rotate(90deg)}50%{transform:rotateY(24deg) rotate(90deg)}}@keyframes rotate-device{0%,20%{transform:rotate(0)}75%,to{transform:rotate(90deg)}}@media(max-width:900px)and (orientation:landscape){.top-controls{top:max(10px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));gap:0}.icon-button{width:38px;height:38px}.title-lockup{left:26px;bottom:48px}.title-lockup .eyebrow{display:none}.title-lockup h1{font-size:23px}.start-action{min-height:42px;top:calc(100% - 1px)}.earth-orbit-action{top:auto;right:16px;bottom:16px;min-width:126px;padding:8px 10px}.headphone-notice__content>svg{width:48px;height:48px;margin-bottom:18px}.headphone-notice h2{font-size:19px}.headphone-notice__progress{margin-top:20px}.motion-demo{bottom:18px;grid-template-columns:98px 1fr;gap:22px}.device-motion{width:98px;height:70px}.device-motion svg{width:54px;height:82px}.motion-demo h2{font-size:20px}.motion-demo>div:last-child>p:last-child{margin-top:6px;line-height:1.5}.forward-ready{bottom:14px}.forward-ready>p,.forward-ready>small{display:none}.forward-control{width:62px;height:62px}}@media(orientation:portrait)and (max-width:900px){.rotate-notice{display:grid}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.headphone-notice__content{opacity:1;transform:none;animation:none}.headphone-notice__progress i{transform:scaleX(1);animation:none}}
