@charset "UTF-8";
/* Author: mingyu.guo */
:root{color-scheme:dark;--bg:#03050a;--text:#e9edf2;--muted:#8c98a8;--accent:#b7d4f3;--line:rgba(201,220,244,.14);font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text)}button,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button,a,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid #c8e1ff;outline-offset:5px}button:disabled{cursor:progress;opacity:.45}[hidden]{display:none!important}::selection{color:#02040a;background:#c6def6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-70px;left:24px;z-index:100;background:white;color:#080d16;padding:12px 20px}.skip-link:focus{top:15px}.universe{position:relative;width:100%;height:100vh;height:100dvh;min-height:460px;isolation:isolate}.scene-container{position:absolute;inset:0;z-index:0;cursor:grab;touch-action:none}.scene-container:active{cursor:grabbing}.scene-container canvas{display:block;width:100%;height:100%;outline:0}.space-vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(2,5,12,.45),transparent 49%),linear-gradient(0deg,rgba(2,5,12,.92),transparent 25%,transparent 82%,rgba(2,5,12,.5))}.topbar{position:absolute;top:31px;left:38px;right:38px;z-index:6;display:flex;align-items:center;justify-content:space-between;height:43px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;color:#e1e9f3}.brand svg{width:35px;height:35px;color:#b7cbe2}.brand>span{font-size:16px;letter-spacing:2.6px;font-weight:650;line-height:1}.brand small{display:block;font-size:6px;letter-spacing:1.6px;color:#8190a4;margin-top:9px;font-weight:400}.scene-navigation{display:flex;align-items:center;gap:9px;padding:7px 12px;background:rgba(8,13,24,.52);backdrop-filter:blur(14px);border:1px solid rgba(190,212,243,.13);border-radius:6px;position:absolute;left:50%;transform:translateX(-50%)}.scene-tab{background:transparent;border:0;padding:10px 15px;color:#8491a3;font-size:12px;white-space:nowrap;transition:color .25s,background .25s;border-radius:3px}.scene-tab>span{font-family:Consolas,monospace;font-size:8px;margin-right:7px;opacity:.6}.scene-tab:hover{color:#e6edf6}.scene-tab.is-active{color:#edf3fc;background:rgba(190,218,255,.085)}.scene-navigation>i{font-style:normal;font-weight:300;color:#4c5767;font-size:15px}.info-button{display:flex;align-items:center;gap:7px;background:transparent;border:0;color:#a6b4c5;font-size:11px;letter-spacing:1px;padding:10px 0 10px 14px}.info-button svg{width:19px;height:19px}.info-button:hover{color:#edf5ff}.scene-copy{position:absolute;left:49px;bottom:153px;z-index:4;max-width:350px;pointer-events:none;transition:opacity .35s,transform .35s}.scene-eyebrow{display:flex;gap:10px;align-items:center;font:9px Consolas,monospace;letter-spacing:2.8px;color:#a0b4cf;margin:0 0 20px;white-space:nowrap}.scene-eyebrow>span:last-child{margin-left:8px;color:#4f6077;font-size:8px;letter-spacing:1px}.live-dot{width:4px;height:4px;border-radius:50%;background:#b4d4f9;box-shadow:0 0 12px #b4d4f97a}h1{font-size:70px;line-height:1.2;letter-spacing:2px;font-weight:500;margin:0 0 24px;text-shadow:0 3px 30px #0005}.title-dot{color:#8bafda;margin-left:1px}.scene-description{font-size:13px;line-height:2;letter-spacing:.7px;color:#9caabd;margin:0;min-height:52px;text-shadow:0 2px 12px #02040d}.journey-actions{display:flex;align-items:center;gap:20px;margin-top:30px;pointer-events:auto}.journey-next{display:flex;justify-content:space-between;align-items:center;gap:33px;background:#d4e2f2;color:#101a29;border:1px solid #d4e2f2;border-radius:3px;font-size:12px;letter-spacing:1px;padding:14px 15px 14px 20px;box-shadow:0 0 45px rgba(171,209,255,.05);transition:background .2s,transform .2s}.journey-next:hover{background:#eff6ff;transform:translateY(-2px)}.journey-next>span:last-child{font-size:20px;line-height:1}.journey-back{display:flex;align-items:center;gap:8px;border:0;padding:10px 0;background:transparent;color:#95a7bd;font-size:10px;white-space:nowrap}.journey-back:hover{color:#d4e7ff}.journey-back>span:first-child{font-size:17px}.scene-note{font-size:9px;letter-spacing:1px;color:#62748e;margin:24px 0 0;line-height:1.9}.observation{position:absolute;right:41px;bottom:158px;z-index:3;width:201px;color:#8d9bb0;pointer-events:none}.observation>p{display:flex;align-items:center;justify-content:space-between;font:8px Consolas,monospace;letter-spacing:1.7px;border-bottom:1px solid var(--line);padding-bottom:13px;margin:0 0 13px}.observation>p>span{font-size:17px;color:#b2c9e7}.observation-line{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:9px;margin-top:13px}.observation-line>span{color:#62738c}.observation-line>strong{font-size:10px;font-weight:400;color:#b1c0d3}.observation-coordinate{margin-top:20px;font:7px Consolas,monospace;letter-spacing:1.2px;color:#4e6584}.bottom-bar{position:absolute;bottom:45px;left:40px;right:40px;z-index:6;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;gap:20px}.interaction-tip{display:flex;align-items:center;gap:11px;color:#71849d;font-size:9px;letter-spacing:.7px}.interaction-tip>svg{width:12px;height:19px;flex-shrink:0}.tip-divider{color:#384b66;margin:0 12px}.view-controls{display:flex;align-items:center;gap:8px}.control-button{width:34px;height:34px;background:rgba(15,24,39,.38);border:1px solid rgba(151,180,221,.13);border-radius:4px;color:#8c9fb9;display:grid;place-items:center;transition:color .2s,border-color .2s,background .2s}.control-button:hover{color:#d5e6fc;border-color:#6b849f;background:rgba(50,68,95,.28)}.control-button svg{width:18px;height:18px}.control-button .play-icon{display:none}#pause-button[aria-pressed=true] .play-icon{display:block}#pause-button[aria-pressed=true] .pause-icon{display:none}#labels-button[aria-pressed=false]{color:#45576e;background:transparent}.control-divider{height:18px;width:1px;background:var(--line);margin-inline:6px}.quality-control select{background:rgba(10,16,27,.65);border:1px solid rgba(151,180,221,.14);border-radius:4px;max-width:110px;color:#95a8c1;font-size:9px;padding:9px 7px;cursor:pointer}.quality-control option{background:#0a101b;color:#ccdcef}.site-signature{position:absolute;left:40px;right:40px;bottom:14px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;font:7px Consolas,monospace;letter-spacing:.8px;color:#3d506b;pointer-events:none}.site-signature>button{pointer-events:auto;color:#4f6584;background:transparent;border:0;font-size:7px;padding:2px}.site-signature>button:hover{color:#a4b9d5}.object-labels{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.celestial-label{position:absolute;left:0;top:0;pointer-events:none;display:flex;align-items:center;gap:6px;white-space:nowrap;color:#9caec8;font-size:10px;letter-spacing:.5px;text-shadow:0 2px 6px #000,0 0 10px #000}.celestial-label:before{content:"";width:3px;height:3px;border-radius:50%;background:#a8bdd9;box-shadow:0 0 6px #9cc2f8}.celestial-label.is-target{pointer-events:auto;background:rgba(5,13,25,.5);border:1px solid rgba(180,211,251,.25);border-radius:3px;padding:8px 11px;color:#d9e7fa;backdrop-filter:blur(6px);font-size:10px;cursor:pointer}.celestial-label.is-target:before{width:5px;height:5px;background:#d1e6ff;box-shadow:0 0 12px #e1ecff}.celestial-label.is-target:after{content:"↗";margin-left:12px;font-size:14px}.celestial-label.is-target:hover{background:rgba(46,68,100,.5);border-color:#accbf0}.celestial-label.is-moon{font-size:8px;color:#6d819d}.loading-state{position:absolute;z-index:12;top:45%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:15px;background:rgba(4,9,18,.78);border:1px solid var(--line);border-radius:5px;backdrop-filter:blur(14px);padding:18px 25px;color:#b7c8df;font-size:11px;letter-spacing:1px;pointer-events:none;white-space:nowrap}.loading-orbit{width:18px;height:18px;border:1px solid #526783;border-top-color:#d5e7ff;border-radius:50%;animation:spin 1.1s linear infinite}.transition-veil{position:absolute;inset:0;z-index:8;background:#03050a;opacity:0;pointer-events:none}.transition-veil>span{position:absolute;left:50%;top:45%;width:3px;height:3px;background:#e6f2ff;border-radius:50%;box-shadow:0 0 35px 18px rgba(160,201,255,.18),0 0 100px 50px rgba(106,157,223,.04);opacity:.7}.is-travelling .scene-copy{opacity:0;transform:translateY(8px)}.is-travelling .observation{opacity:0}.toast{position:absolute;bottom:112px;left:50%;transform:translate(-50%,10px);padding:11px 18px;max-width:calc(100% - 40px);background:rgba(25,39,61,.9);border:1px solid rgba(183,211,248,.22);border-radius:4px;color:#cfdef1;font-size:11px;line-height:1.8;opacity:0;pointer-events:none;z-index:20;transition:opacity .2s,transform .2s;text-align:center}.toast.is-visible{opacity:1;transform:translate(-50%,0)}.scene-error{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);z-index:20;background:#0d1524;border:1px solid #344860;border-radius:6px;padding:28px;width:min(400px,calc(100% - 40px))}.scene-error h2{font-size:19px;font-weight:500;margin:0 0 16px}.scene-error p{color:#9aacc4;font-size:12px;line-height:2}.scene-error button{background:#c6dcf5;border:0;border-radius:3px;color:#0a1424;padding:10px 15px;margin-top:5px;font-size:11px}.noscript-note{position:fixed;left:20px;bottom:120px;z-index:30;color:#c6d9f0;background:#172232;padding:20px;font-size:12px}dialog{color:#d6e1ef;background:rgba(8,15,27,.97);border:1px solid #34485f;border-radius:9px;padding:29px 32px;max-width:580px;width:calc(100% - 32px);max-height:85dvh;overflow:auto;box-shadow:0 30px 100px #0007}dialog::backdrop{background:rgba(0,4,12,.7);backdrop-filter:blur(7px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;color:#7088a7;font:9px Consolas,monospace;letter-spacing:2px}.dialog-heading button{background:none;border:0;font-size:27px;color:#b6cae3;line-height:1;padding:0 3px}dialog h2{font-size:29px;font-weight:450;letter-spacing:1px;margin:21px 0 18px}dialog h3{font-size:13px;font-weight:500;margin:24px 0 8px;color:#c3d5ed}dialog p{font-size:11px;line-height:2.1;color:#8b9fb9}dialog a{color:#b5d5ff;text-decoration:underline;text-underline-offset:3px}.instructions{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);padding-block:15px;margin-block:23px;gap:10px;font-size:10px}.instructions>span{color:#6e89ab}.instructions strong{font-weight:400;color:#bdcde3}.dialog-author{font:8px Consolas,monospace;color:#68809f!important;margin-top:25px!important}@keyframes spin{to{transform:rotate(360deg)}}
.time-panel{position:absolute;z-index:6;right:41px;top:108px;width:245px;padding:12px 15px;border:1px solid rgba(151,180,221,.12);border-radius:5px;background:rgba(5,12,23,.48);backdrop-filter:blur(12px)}.time-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#b3c6df;letter-spacing:1px;margin-bottom:9px}.time-switch{width:32px;height:18px;padding:2px;border:1px solid #40536c;border-radius:12px;background:#152134;flex-shrink:0;transition:background .2s}.time-switch>span{display:block;width:12px;height:12px;border-radius:50%;background:#8b9db4;transition:transform .2s,background .2s}.time-switch[aria-checked=true]{background:#9cbfe7;border-color:#b8d4f5}.time-switch[aria-checked=true]>span{transform:translateX(12px);background:#10243c}.time-panel time{display:block;color:#95a9c3;font:9px Consolas,"Microsoft YaHei",monospace;font-variant-numeric:tabular-nums;white-space:nowrap}.time-panel p{color:#627993;font-size:8px;margin:7px 0 0;line-height:1.6;letter-spacing:.2px}
@media(min-width:1550px){.time-panel{right:60px;top:122px}.scene-copy{left:70px;bottom:180px}h1{font-size:86px}.scene-description{font-size:15px;line-height:2.05}.journey-next{font-size:13px;padding:17px 19px 17px 24px}.scene-eyebrow{font-size:10px}.observation{right:60px;bottom:185px;width:220px}.topbar{left:57px;right:57px;top:40px}.bottom-bar,.site-signature{left:60px;right:60px}.bottom-bar{bottom:49px}.site-signature{bottom:18px}}
@media(max-width:1000px){.topbar{left:25px;right:25px;top:26px}.brand>span{font-size:13px;letter-spacing:2px}.brand svg{width:30px;height:30px}.brand small{font-size:5px}.scene-tab{font-size:11px;padding:10px}.scene-tab>span{margin-right:4px;font-size:7px}.scene-navigation{gap:5px;padding-inline:8px}.info-button>span{display:none}.scene-copy{left:30px;bottom:150px;max-width:300px}h1{font-size:60px}.scene-description{font-size:12px}.observation{right:29px;width:175px;bottom:155px}.observation-line{font-size:8px}.observation-line>strong{font-size:9px}.observation-coordinate{font-size:6px}.bottom-bar,.site-signature{left:29px;right:29px}.interaction-tip{font-size:8px}.tip-divider{margin-inline:7px}.site-signature{font-size:6px;letter-spacing:.4px}.site-signature>button{font-size:6px}.journey-back{font-size:9px}.journey-actions{gap:15px}}
@media(max-width:700px){.universe{min-height:520px}.topbar{left:20px;right:20px;top:max(21px,env(safe-area-inset-top));height:32px}.brand{gap:8px}.brand>span{font-size:13px;letter-spacing:2px}.brand small{font-size:5px;letter-spacing:1px;margin-top:7px}.brand svg{width:29px;height:29px}.info-button{padding:5px}.info-button>svg{width:19px;height:19px}.scene-navigation{top:56px;gap:7px;padding:4px 7px;width:max-content;max-width:calc(100vw - 30px);background:rgba(8,13,24,.55)}.scene-tab{padding:10px 11px;font-size:11px}.scene-tab>span{font-size:7px;margin-right:6px}.scene-copy{left:23px;bottom:139px;max-width:calc(100% - 46px);width:calc(100% - 46px)}h1{font-size:44px;letter-spacing:1px;margin-bottom:13px;line-height:1.18}.scene-eyebrow{font-size:7px;letter-spacing:2px;margin-bottom:13px;gap:8px}.scene-eyebrow>span:last-child{font-size:7px;margin-left:4px}.scene-description{font-size:11px;line-height:1.95;min-height:43px;color:#9caec5;letter-spacing:.5px}.journey-actions{margin-top:19px;gap:23px}.journey-next{font-size:10px;padding:12px 14px 12px 17px;gap:29px}.journey-next>span:last-child{font-size:17px}.journey-back{font-size:10px}.scene-note,.observation{display:none}.bottom-bar{left:21px;right:21px;bottom:47px;padding-top:13px;gap:8px}.interaction-tip{max-width:120px;font-size:7px;line-height:1.8;gap:7px;letter-spacing:0}.interaction-tip>svg{width:10px;height:17px}.tip-divider{margin-inline:4px}.view-controls{gap:5px}.control-button{width:29px;height:29px;border-radius:3px}.control-button>svg{width:16px;height:16px}.control-divider{display:none}.quality-control select{font-size:7px;padding:8px 2px;max-width:76px}.fullscreen-button{display:none}.site-signature{left:22px;right:22px;bottom:18px;gap:8px;font-size:5px;letter-spacing:.2px}.site-signature>span:last-child{display:none}.site-signature>button{font-size:5px;padding:0;max-width:155px;text-align:right;line-height:1.5}.space-vignette{background:linear-gradient(0deg,rgba(2,5,12,.94),rgba(2,5,12,.42) 28%,transparent 57%,rgba(2,5,12,.25) 85%,rgba(2,5,12,.55))}.celestial-label{font-size:8px}.celestial-label.is-target{font-size:8px;padding:6px 8px}.celestial-label.is-target:after{font-size:12px;margin-left:6px}.loading-state{top:37%;padding:14px 18px;font-size:10px}.toast{bottom:108px;font-size:10px}dialog{padding:23px}dialog h2{font-size:25px}.scene-error{top:37%}}
@media(max-width:370px){.brand>span{font-size:11px}.brand svg{width:26px;height:26px}.scene-tab{font-size:10px;padding-inline:10px}.scene-copy{bottom:136px}.interaction-tip{max-width:89px;font-size:6px}.view-controls{gap:4px}.control-button{width:27px;height:27px}.quality-control select{max-width:69px;font-size:6px}.site-signature{font-size:4px}.site-signature>button{font-size:4px}}
@media(max-height:640px) and (min-width:701px){.scene-copy{bottom:125px}.scene-copy h1{font-size:48px;margin-bottom:12px}.scene-eyebrow{margin-bottom:14px}.scene-description{font-size:11px;min-height:42px}.journey-actions{margin-top:20px}.scene-note{display:none}.observation{bottom:135px}.topbar{top:18px}.bottom-bar{bottom:40px;padding-top:13px}.site-signature{bottom:12px}}
@media(max-width:700px){.time-panel{left:22px;right:22px;top:131px;width:auto;padding:10px 11px;display:grid;grid-template-columns:91px 1fr;column-gap:13px;align-items:center}.time-panel-heading{grid-row:1/3;margin:0;padding-right:11px;border-right:1px solid var(--line);gap:5px;font-size:8px;letter-spacing:0}.time-switch{width:28px;height:16px}.time-switch>span{width:10px;height:10px}.time-switch[aria-checked=true]>span{transform:translateX(10px)}.time-panel time{font-size:7px}.time-panel p{font-size:6px;letter-spacing:0;margin-top:4px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.loading-orbit{border-color:#b8cfea}}
