:root{color-scheme:dark;--text:#e8e9e3;--muted:#9a9e9e;--accent:#d9e2e5;--line:#aebdb52a;font-family:'Segoe UI','Microsoft YaHei',sans-serif;color:var(--text);background:#07090b}*{box-sizing:border-box}body{margin:0}main{position:relative;height:100svh;min-height:570px;overflow:hidden}#universe{position:absolute;inset:0}#universe canvas{display:block;touch-action:none;cursor:grab}#loading{position:absolute;top:48%;width:100%;text-align:center;font-size:12px;color:var(--muted)}header{position:absolute;z-index:5;top:0;left:40px;right:40px;height:84px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:20px}.back{font-size:15px;color:#d2d8d4;text-decoration:none}.back span{font-size:10px;margin-left:10px;letter-spacing:1px}.brand{font:11px Consolas,monospace;letter-spacing:2.6px;color:#c0c9c8}.brand i{font-style:normal;color:#536566;margin:0 10px}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}#settings-toggle{border:0;background:transparent;color:#adb7b4;font-size:10px;letter-spacing:1px;padding:10px 0}.intro{position:absolute;z-index:2;top:148px;left:54px;pointer-events:none;text-shadow:0 2px 18px #000,0 1px 4px #000}.eyebrow{font:9px Consolas,monospace;letter-spacing:2.5px;color:#bac4c0;margin:0 0 28px}h1{font-family:'SimSun','Songti SC',serif;font-weight:400;line-height:1.4;letter-spacing:5px;font-size:clamp(36px,4vw,58px);margin:0}#scene-note{font-size:11px;letter-spacing:1.4px;color:#a4afab;margin:21px 0 0;max-width:270px;line-height:1.8}.coordinates{position:absolute;right:42px;top:128px;display:flex;flex-direction:column;gap:9px;pointer-events:none;color:#838f8d;font:8px Consolas,monospace;letter-spacing:1.5px;text-shadow:0 1px 3px #000}.coordinates span:last-child{color:#576766;font-size:7px}.chapters{position:absolute;z-index:3;right:36px;top:48%;display:flex;flex-direction:column;gap:24px}.chapters button{display:flex;align-items:center;gap:11px;border:0;background:transparent;color:#788280;font-size:10px;padding:4px 7px;letter-spacing:1px;text-shadow:0 1px 6px #000}.chapters b{font:9px Consolas,monospace}.chapters button::after{content:'';display:block;width:13px;height:1px;background:#7f8e8270;margin-left:3px;transition:width .3s}.chapters button.active{color:#f0f3ed}.chapters button.active::after{width:30px;background:#dce5dd}.settings{position:absolute;z-index:7;right:35px;top:76px;width:228px;padding:22px;background:#101518f5;backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:0 18px 60px #0006}.settings[hidden]{display:none}.settings label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:#b8c3bf;margin-bottom:18px}.settings select{font-size:10px;background:#1d2527;border:1px solid #99a29d35;color:#dde3de;padding:6px;max-width:118px}.settings .speed-label{display:grid;grid-template-columns:1fr auto;margin-bottom:0;font-size:10px}.speed-label input{grid-column:1/-1;width:100%;accent-color:var(--accent);height:3px}.lower{position:absolute;z-index:4;left:44px;right:44px;bottom:24px}.status-row{display:flex;justify-content:space-between;margin-bottom:15px;font:9px Consolas,monospace;letter-spacing:1px;color:#9eaaa6;text-shadow:0 1px 8px #000}.status-row>span:first-child{display:flex;align-items:center;gap:8px}.status-row i{width:4px;height:4px;border-radius:50%;background:#d5dfd7;box-shadow:0 0 8px #b1c8ad44}.progress-label{font-size:8px;color:#75827c}.journey{appearance:none;display:block;width:100%;height:2px;background:#a6bbb644;margin:0;cursor:ew-resize}.journey::-webkit-slider-thumb{appearance:none;width:8px;height:8px;background:var(--accent);border-radius:50%;box-shadow:0 0 7px #fff2}.journey::-moz-range-thumb{width:8px;height:8px;border:0;border-radius:50%;background:var(--accent)}.bottom-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:17px}.hint{display:flex;gap:11px;font-size:9px;color:#7e8a85;letter-spacing:.4px;margin:0;pointer-events:none;text-shadow:0 1px 4px #000}.hint i{font-style:normal;color:#5a6c61}.actions{display:flex;align-items:center;gap:18px}.actions button{border:0;background:#090d1066;color:#c1cbc5;letter-spacing:.5px;font-size:10px;padding:6px 7px}.actions button:hover{color:white}#auto[aria-pressed=true]{color:#eff4eb}#auto span{font-size:5px;vertical-align:middle;margin-left:6px}#auto[aria-pressed=false] span{color:#566059}#explode{border:1px solid #a1b8aa35;padding:9px 12px}.vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(#06090b55,transparent 17%,transparent 77%,#06090baa),radial-gradient(ellipse at 56% 46%,transparent 38%,#03050733 100%)}.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}@media(max-width:850px){header{left:24px;right:24px;height:73px}.brand{font-size:9px;letter-spacing:1.4px}.intro{left:30px;top:122px}h1{font-size:42px}.eyebrow{font-size:8px;margin-bottom:20px}.coordinates{right:27px;top:110px;font-size:7px}.coordinates span:last-child{display:none}.chapters{right:19px;gap:22px}.lower{left:25px;right:25px}.hint{font-size:8px;gap:7px}.actions{gap:10px}.actions button{font-size:9px}.back span{font-size:9px}#settings-toggle{font-size:9px}.settings{right:24px}}@media(max-width:600px){main{min-height:650px}header{height:66px;left:20px;right:20px}.brand{font-size:8px;letter-spacing:1px}.brand i{margin:0 6px}.back span{display:none}#settings-toggle{font-size:8px}.intro{left:25px;top:102px}h1{font-size:36px;letter-spacing:3px}.eyebrow{font-size:7px;letter-spacing:1.7px;margin-bottom:16px}#scene-note{font-size:10px;letter-spacing:.7px;max-width:205px;margin-top:16px}.coordinates{display:none}.chapters{right:14px;top:46%;gap:27px}.chapters button{font-size:9px;gap:6px;padding-right:1px}.chapters button::after{width:8px;margin-left:0}.chapters button.active::after{width:15px}.chapters b{font-size:7px}.lower{left:23px;right:23px;bottom:18px}.bottom-row{flex-direction:column-reverse;gap:17px;padding-top:18px}.actions{width:100%;justify-content:space-between;gap:12px}.actions button{font-size:9px}.hint{font-size:8px;gap:10px}.status-row{font-size:8px}.settings{width:213px;top:63px;right:20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
