@font-face{font-family:"PingFang SC";src:local("PingFang SC");font-weight:100 900;font-display:swap}
@font-face{font-family:"Microsoft YaHei";src:local("Microsoft YaHei");font-display:swap}
:root{color-scheme:dark;--paper:#eeeae2;--muted:#a8b1b8;--accent:#a3d3dc;--line:rgba(218,231,239,.15)}
*{box-sizing:border-box}body{margin:0;background:#06090d;color:var(--paper);font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;background:none;border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button:hover{color:#fff}a{color:inherit;text-decoration:none}svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.35;fill:none;stroke-linecap:round;stroke-linejoin:round}.mono{font-family:"IBM Plex Mono","Courier New",monospace;letter-spacing:.08em;font-variant-numeric:tabular-nums}#root{position:relative;width:100vw;height:100svh;min-height:620px;overflow:hidden}.world{position:absolute;inset:0}#universe{display:block;width:100%;height:100%}.edge-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(6,9,13,.55),transparent 20%,transparent 60%,rgba(6,9,13,.65) 82%,#06090d 100%)}.topbar{position:absolute;top:0;left:0;right:0;padding:31px 42px;display:flex;align-items:center;justify-content:space-between;gap:24px}.identity{display:flex;align-items:center;gap:15px}.orbit-mark{width:41px;height:41px;color:#cfdbde}.identity strong{font-size:19px;letter-spacing:.22em;font-weight:600}.identity small{display:block;font-family:"Courier New",monospace;font-size:8px;letter-spacing:.19em;margin-top:6px;color:var(--muted)}.archive{font-size:11px;letter-spacing:.13em;display:flex;gap:12px;align-items:center;color:#d4d9dc}.archive .mono{font-size:10px;color:var(--muted)}.tiny-dot{display:inline-block;width:4px;height:4px;background:var(--accent);border-radius:50%}.divider{color:#56616a;margin:0 3px}.top-actions{display:flex;align-items:center;gap:23px}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;color:#c6d0d5;border-radius:4px;transition:background .2s}.icon-button:hover{background:rgba(218,231,239,.08)}.quiet-button{font-size:11px;letter-spacing:.14em;display:flex;align-items:center;gap:10px}.quiet-button svg{width:17px;height:17px}.telemetry{position:absolute;right:44px;top:152px;width:176px;padding:0 0 18px 22px;border-left:1px solid var(--line)}.telemetry-label{font-size:10px;letter-spacing:.16em;color:var(--accent);display:flex;align-items:center;gap:8px;margin-bottom:28px}.reading{margin-bottom:21px}.reading>span{display:block;font-size:10px;letter-spacing:.12em;color:var(--muted);margin-bottom:7px}.reading strong{display:block;font-size:17px;font-weight:400;letter-spacing:.03em;font-variant-numeric:tabular-nums}.reading em{font:10px "Courier New",monospace;color:var(--muted);margin-left:7px}.mini-rule{height:2px;background:rgba(200,220,230,.14);width:126px;margin-top:-5px;overflow:hidden}.mini-rule span{display:block;background:var(--accent);height:100%;width:100%;transform-origin:left;transform:scaleX(.32)}.telemetry-foot{display:block;font-size:7px;letter-spacing:.1em;color:#84919b;margin-top:14px}.story{position:absolute;bottom:206px;left:46px;max-width:720px;pointer-events:none}.chapter-kicker{display:flex;align-items:center;gap:11px;color:#c7d4db;font-size:11px;letter-spacing:.16em;margin-bottom:18px}.chapter-kicker .mono{color:var(--accent);font-size:10px}.chapter-rule{width:25px;height:1px;background:rgba(180,214,226,.65)}h1{font-size:clamp(24px,2.4vw,40px);font-weight:400;letter-spacing:.06em;line-height:1.5;margin:0 0 11px}#story-description{font-size:12px;font-weight:300;letter-spacing:.06em;color:#b9c3cb;line-height:1.9;margin:0}.player{position:absolute;bottom:0;left:44px;right:44px;padding:0 0 22px}.chapters{display:flex;gap:0;width:min(880px,83%);margin-bottom:23px}.chapters button{flex:1;text-align:left;position:relative;font-size:11px;letter-spacing:.1em;color:#98a5ae;padding:15px 0 4px;border-top:1px solid var(--line);white-space:nowrap}.chapters button .mono{font-size:8px;color:#82919c;margin-right:11px}.chapters button:before{content:"";position:absolute;top:-1px;left:0;width:0;height:1px;background:#d4e7ed;transition:width .35s}.chapters button.active{color:#eeeae2}.chapters button.active:before{width:72%}.chapters button.active .mono{color:var(--accent)}.transport{display:flex;align-items:center;gap:19px}.play-button svg{stroke-width:2;fill:currentColor;width:18px;height:18px}.restart-button svg{width:17px;height:17px}.time{font-size:10px;color:#d3dce2;min-width:44px;letter-spacing:.06em}.total{color:#9eacb6}.scrubber{position:relative;flex:1;height:30px;display:flex;align-items:center}.scrubber-track{height:2px;background:rgba(200,220,230,.22);width:100%;pointer-events:none}.scrubber-track span{display:block;width:100%;height:100%;background:#b9d8df;transform:scaleX(0);transform-origin:left;position:relative}.scrubber-track span:after{content:"";width:6px;height:6px;border-radius:50%;background:#e3edf0;position:absolute;right:-3px;top:-2px}#seek{position:absolute;inset:0;width:100%;margin:0;opacity:0;cursor:pointer}.speed-button{font-size:11px;width:30px;color:#bdcbd3}.footer-meta{display:flex;justify-content:space-between;align-items:center;margin-top:20px;font-size:9px;letter-spacing:.12em;color:#86959f}.footer-meta .mono{font-size:8px;letter-spacing:.12em}.meta-dot{padding:0 11px;color:#63717a}.planet-label{position:absolute;display:flex;align-items:flex-start;gap:10px;color:#c6d2da;pointer-events:none;font-size:10px;letter-spacing:.18em;white-space:nowrap}.planet-label small{display:block;font:7px "Courier New",monospace;letter-spacing:.13em;color:#98aab6;margin-top:4px}.label-line{width:33px;height:1px;background:rgba(208,227,237,.4);margin-top:6px}.planet-label:before{content:"";position:absolute;left:-2px;top:4px;width:4px;height:4px;border:1px solid rgba(208,227,237,.7);border-radius:50%}.interface{transition:opacity .6s}.cinema .interface{opacity:0;pointer-events:none}.cinema .edge-shade{opacity:0}#exit-cinema{display:none;position:absolute;right:32px;bottom:24px;padding:10px 14px;border:1px solid rgba(220,235,245,.15);background:rgba(6,9,13,.5);color:#bac7cf;border-radius:3px;font-size:10px;opacity:.3}.cinema #exit-cinema{display:block}#exit-cinema:hover{opacity:1}#exit-cinema span{margin-left:14px}.loading{position:absolute;inset:0;z-index:10;background:#06090d;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;transition:opacity .8s}.loading span{font-size:14px;letter-spacing:.25em}.loading small{font-size:8px;color:#9aabb5}.loading-orbit{width:40px;height:40px;border-radius:50%;border:1px solid #4d6775;border-top-color:#c5e3ee}.loading.loaded{opacity:0;pointer-events:none}dialog{background:#0e141b;color:#e5e6e3;border:1px solid #35414b;border-radius:4px;width:min(520px,calc(100% - 40px));padding:42px;box-shadow:0 30px 120px #000a}dialog::backdrop{background:#030609a8;backdrop-filter:blur(7px)}.dialog-eyebrow{font-size:9px;color:var(--accent)}dialog h2{font-size:30px;letter-spacing:.12em;font-weight:400;margin:17px 0 20px}dialog p{font-size:13px;line-height:1.9;color:#b8c3cd}dialog dl{margin-top:26px}dialog dl>div{padding:17px 0;border-top:1px solid var(--line)}dialog dt{font-size:12px;letter-spacing:.08em;margin-bottom:8px}dialog dd{font-size:12px;line-height:1.8;color:#a9b7c2;margin:0}dialog .credits{font-size:9px;margin-bottom:0;color:#8c9ca8}dialog a{text-decoration:underline;text-underline-offset:3px}.close-info{position:absolute;right:17px;top:15px;font-size:26px}
@media(min-width:1700px){.topbar{padding:42px 60px}.story{left:64px;bottom:238px}.player{left:60px;right:60px;bottom:12px}.telemetry{right:62px;top:180px}.archive{font-size:13px}.chapters{width:1100px}.chapters button{font-size:13px}.footer-meta{font-size:11px}.reading>span{font-size:12px}.reading strong{font-size:21px}.identity strong{font-size:23px}}
@media(max-width:760px){#root{min-height:580px}.topbar{padding:22px}.identity{gap:10px}.identity strong{font-size:16px}.identity small{font-size:6px}.orbit-mark{width:32px;height:32px}.archive{display:none}.top-actions{gap:9px}.quiet-button span{display:none}.telemetry{top:108px;right:24px;width:142px;padding-left:15px}.telemetry-foot{font-size:6px}.reading strong{font-size:14px}.story{left:24px;right:22px;bottom:188px}.story h1{font-size:25px}.story p{font-size:11px;max-width:290px}.player{left:22px;right:22px;padding-bottom:18px}.chapters{width:100%;overflow-x:auto;gap:15px;margin-bottom:17px;padding-bottom:7px}.chapters button{font-size:10px;min-width:72px}.chapters button .mono{display:none}.transport{gap:10px}.restart-button{display:none}.time{min-width:35px;font-size:9px}.footer-meta{font-size:8px;margin-top:14px}.footer-meta .mono{display:none}.footer-meta>span:last-child{font-size:7px}.planet-label{display:none}.scrubber{min-width:30px}}
/* Readable controls retain a quiet dark backing wherever bright planets pass behind them. */
.topbar{background:rgba(6,9,13,.42)}
.telemetry{background:rgba(6,9,13,.80);padding:17px 16px 18px 22px;width:194px;border-radius:0 3px 3px 0}
.telemetry-foot{color:#a7b6c0}.divider,.meta-dot{color:#a4b2bd}
.planet-label>span:last-child{background:rgba(6,9,13,.94);padding:5px 7px;border-radius:2px;color:#e1e9ee}.planet-label small{color:#b8c7d0}
.story{padding:14px 18px 14px 0;background:rgba(6,9,13,.18)}
.rendering *{transition:none!important}
@media(max-width:760px){.telemetry{width:158px;padding:14px 12px 16px 15px}}
.archive .mono,.divider{color:#c4d0d8}.chapters button{color:#b3c0c9}.chapters button .mono{color:#a9bac5}
