
:root{--ink:#1b323b;--muted:#71828b;--accent:#27636c;--line:#dce3e4;--paper:rgba(251,253,252,.92)}*{box-sizing:border-box}body{margin:0;font-family:Arial,"Microsoft YaHei",sans-serif;color:var(--ink);overflow:hidden}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;border:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #59b3c2;outline-offset:3px}button:disabled{opacity:.4;cursor:wait}#viewport,canvas{position:fixed;inset:0;width:100%;height:100%;display:block}header{position:fixed;z-index:3;left:0;top:0;right:0;height:80px;padding:0 38px;display:flex;align-items:center;justify-content:space-between;background:rgba(249,252,250,.88);border-bottom:1px solid #fff9;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);font-size:15px;letter-spacing:2px;font-weight:750}.brand b{font-weight:400}.brand small{display:block;font-size:12px;letter-spacing:4px;margin-top:5px;font-weight:400;color:var(--muted)}.brand-icon{font-size:38px;color:var(--accent)}nav{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:1px}nav i{height:12px;width:1px;background:#b7c5c7;margin:0 12px}.live-dot{width:6px;height:6px;border-radius:50%;background:#58a18f;display:inline-block;box-shadow:0 0 0 3px #58a18f12}.header-actions{display:flex;align-items:center;gap:16px}.icon-button{background:none;font-size:22px;color:#6e8389}.outline-button{padding:10px 15px;border:1px solid #c4d0d2;background:transparent;border-radius:4px;font-size:12px;letter-spacing:1px}.intro{position:fixed;left:40px;top:130px;pointer-events:none}.eyebrow{font-size:12px;font-weight:650;letter-spacing:2.6px;color:var(--accent)}h1{font-weight:400;letter-spacing:3px;font-size:43px;line-height:1.5;margin:20px 0 12px}p{font-size:12px;line-height:1.9;color:#60757d}.intro-rule{width:30px;height:1px;background:#80999e;margin:25px 0}.tag{font-size:12px;letter-spacing:2px;font-weight:600}.intro>small{display:block;color:#6d848a;font-size:12px;letter-spacing:1px;margin-top:10px}.world-panel{position:fixed;right:28px;top:107px;width:294px;padding:23px 22px 0;background:var(--paper);backdrop-filter:blur(18px);border:1px solid #ffffffb3;border-radius:9px;box-shadow:0 12px 50px #1938430d;max-height:calc(100vh - 230px);overflow:auto}.panel-title{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.panel-title small{font-size:12px;letter-spacing:2px;color:#8b9da3}.panel-title h2{font-size:18px;font-weight:500;letter-spacing:1px;margin:6px 0 0}.panel-title>span{color:#6b8f91;font-size:22px}.section-caption{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:600;margin:21px 0 12px}.section-caption>span{font-family:monospace;font-size:12px;color:#91a3a7;font-weight:400}.section-caption b{margin-left:auto;font-size:12px;color:#8b9ca3;letter-spacing:1px;font-weight:500}.segments{display:flex;background:#eaf0ef;border-radius:5px;padding:4px;gap:4px}.segments button{flex:1;background:transparent;padding:8px 0;border-radius:3px;font-size:12px;color:#83949a}.segments button.active{background:#fff;color:#315862;box-shadow:0 1px 4px #203c4112}.range-label{display:flex;justify-content:space-between;font-size:12px;margin:16px 0 9px;color:#6d8187}.range-label output{font-family:monospace;font-size:12px;color:#46616c}input[type=range]{width:100%;height:3px;margin:4px 0 10px;accent-color:var(--accent);cursor:pointer}.range-ends{display:flex;justify-content:space-between;font-family:monospace;font-size:12px;color:#9aa9ae}.toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-top:15px;position:relative;cursor:pointer}.toggle-row input{position:absolute;right:0;opacity:0;width:30px;height:18px;z-index:1;cursor:pointer}.switch{width:28px;height:16px;border-radius:12px;background:#c7d2d3;transition:.2s;position:relative}.switch:after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:white;transition:.2s}.toggle-row input:checked+.switch{background:#396d74}.toggle-row input:checked+.switch:after{transform:translateX(12px)}.toggle-row input:focus-visible+.switch{outline:3px solid #59b3c2}.seasons{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.seasons button{display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:1px solid #dce5e5;border-radius:5px;padding:10px 0 8px;font-size:12px;color:#87979b;transition:.2s}.seasons button>span{font-size:20px;line-height:24px}.seasons button.active{background:#e5efeb;border-color:#abc6bc;color:#457b69}.seasons button[data-season=summer].active{background:#edf2de;color:#7c913d;border-color:#bac890}.seasons button[data-season=autumn].active{background:#f7ece0;color:#b87d3d;border-color:#dcbd99}.seasons button[data-season=winter].active{background:#e8f1f7;color:#5483a5;border-color:#adc7db}.hint{font-size:12px;line-height:1.6;color:#98a7ab;margin:10px 0 0}.light-channels{display:flex;flex-wrap:wrap;gap:7px 10px;margin-top:3px;font-size:12px;color:#7d9197}.light-channels label{display:flex;align-items:center;gap:3px;cursor:pointer}.light-channels input{width:11px;height:11px;accent-color:#396d74;margin:0}.panel-footer{display:flex;align-items:center;gap:6px;border-top:1px solid var(--line);font-size:12px;color:#8a9b9f;margin-top:20px;padding:13px 0}.panel-footer b{font-family:monospace;margin-left:auto;font-size:12px;font-weight:400}.scene-label{position:fixed;left:40px;bottom:145px;display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:1.3px;font-weight:600}.scene-label small{display:block;font-size:12px;color:#7b929a;font-weight:400;letter-spacing:1px;margin-top:6px}.corner-mark{font-size:25px;color:#6a8d93}.compass{position:fixed;left:41px;bottom:58px;width:50px;height:50px;border:1px solid #879e9f60;border-radius:50%;text-align:center;color:#6c8a90;font-family:monospace;font-size:12px}#compass-needle{padding-top:4px;transform-origin:center 25px}#compass-needle span{display:block;font-size:22px;margin-top:-3px}.compass small{position:absolute;bottom:-17px;left:-3px;font-size:12px;white-space:nowrap;letter-spacing:1px}.toolbar{position:fixed;bottom:48px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;border:1px solid #ffffffb0;background:rgba(251,253,252,.93);backdrop-filter:blur(16px);padding:8px 10px;border-radius:7px;box-shadow:0 10px 40px #1a354412;white-space:nowrap}.toolbar button{display:flex;align-items:center;gap:7px;background:transparent;border-radius:4px;font-size:12px;padding:11px 12px}.toolbar button span{font-size:19px;color:#607f86;line-height:18px}.toolbar button:hover,.toolbar button[aria-pressed=true]{background:#e5eeed;color:#2d6870}.toolbar button#launch{background:#2c616b;color:#fff;padding-left:17px;padding-right:17px}.toolbar button#launch span{color:#d5ece9}.divider{height:21px;width:1px;background:#dce4e4;margin:0 4px}.camera-bar{position:fixed;bottom:122px;left:50%;transform:translateX(-50%);display:flex;gap:3px;align-items:center;padding:4px;background:#ffffffa6;backdrop-filter:blur(8px);border-radius:5px}.camera-bar>span{font-size:12px;color:#8d9b9d;padding:0 10px}.camera-bar button{background:transparent;font-size:12px;padding:7px 12px;border-radius:3px;color:#7b9097}.camera-bar button.active{background:#fff;color:#315b65}.gesture-guide{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:20px;font-size:12px;letter-spacing:.5px;color:#607d86b0;white-space:nowrap}.panel-toggle{display:none}.selection{position:fixed;left:40px;top:420px;width:240px;padding:18px;background:#ffffffdf;border:1px solid white;border-radius:6px}.selection button{position:absolute;right:10px;top:8px;background:transparent;font-size:20px;color:#82979d}.selection h3{font-size:15px;font-weight:500;margin:12px 0 5px}.selection p{font-size:12px;margin:0 0 12px}.selection small{font-size:12px;color:#9babad}#loading{position:fixed;inset:0;z-index:10;background:#eff4f1;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .65s}#loading.hidden{opacity:0;pointer-events:none}.loading-symbol{font-size:60px;color:#567d76;margin-bottom:24px;animation:pulse 2s ease-in-out infinite}#loading h2{font-size:21px;font-weight:400;letter-spacing:3px;margin:20px 0}.progress{width:210px;height:2px;background:#cfdfd8;margin:12px}#progress-fill{width:5%;height:2px;background:#54897d;transition:width .3s}#loading p{font-size:12px;color:#83998f}#toast{position:fixed;z-index:20;bottom:185px;left:50%;transform:translate(-50%,10px);background:#193b45e8;color:#fff;padding:12px 20px;border-radius:5px;font-size:12px;opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{border:1px solid #d2ddda;border-radius:10px;padding:35px;max-width:470px;color:var(--ink);background:#f8fbf9}dialog::backdrop{background:#18343f66;backdrop-filter:blur(5px)}dialog h2{font-size:23px;font-weight:400;letter-spacing:2px}dialog p{font-size:12px}dialog a{color:#2f7780;text-underline-offset:3px}.close{position:absolute;right:15px;top:10px;background:transparent;font-size:25px;color:#739096}.download-link{display:inline-block;background:#285b64;color:white;text-decoration:none;padding:12px 20px;border-radius:4px;font-size:12px;margin-top:15px}body.night{--ink:#d9e5e9;--muted:#93a8b4;--accent:#91c2c9;--line:#3d535e;--paper:rgba(25,43,55,.94)}body.night header{background:#162b38d9;border-bottom-color:#49616e55}body.night .outline-button{border-color:#54717c}body.night .segments{background:#112632}body.night .segments button.active{background:#39535e;color:#e1eff1}body.night .range-label,body.night .range-label output{color:#a3bdc7}body.night .camera-bar,body.night .toolbar{background:#1d3543eb;border-color:#4c6477}body.night .camera-bar button.active{background:#3c5665;color:white}body.night .toolbar button:hover,body.night .toolbar button[aria-pressed=true]{background:#38535e;color:#d6f0ee}body.night .intro p,body.night .scene-label small,body.night .gesture-guide{color:#9cb3bf}body.night .selection{background:#1d3543eb;border-color:#4c6477}body.night .seasons button.active{color:#406a58}body.night dialog{background:#1d3543}body.night dialog p{color:#b8cad1}@keyframes pulse{50%{opacity:.4;transform:rotate(20deg)}}@media(max-height:850px) and (min-width:851px){.world-panel{top:96px;max-height:calc(100vh - 145px);padding-top:16px}.panel-title{padding-bottom:10px}.section-caption{margin-top:15px}.range-label{margin-top:10px}.hint{margin-top:7px}.panel-footer{margin-top:12px}.intro{top:115px}h1{font-size:36px}.selection{top:370px}}@media(max-width:1100px){.intro{left:25px}.intro h1{font-size:34px}.world-panel{right:18px;width:264px;padding-left:17px;padding-right:17px}.toolbar button{padding:10px 8px}.toolbar{left:45%}.camera-bar{left:45%}.gesture-guide{gap:12px}.scene-label{left:26px}}@media(max-width:850px){header{height:66px;padding:0 20px}.brand{font-size:12px;letter-spacing:1px;gap:8px}.brand-icon{font-size:30px}.brand small{font-size:12px;letter-spacing:2px}nav{display:none}.header-actions{gap:10px}.outline-button{font-size:12px;padding:8px}.intro{top:93px;left:22px}.intro .eyebrow{font-size:12px}.intro h1{font-size:29px;line-height:1.35;margin:15px 0}.intro p{font-size:12px}.intro-rule,.intro .tag,.intro>small{display:none}.panel-toggle{display:block;position:fixed;right:18px;top:86px;z-index:5;background:#f8fbf9ed;border:1px solid #fff;border-radius:5px;font-size:12px;padding:10px 13px;color:#365660}.world-panel{top:128px;right:18px;width:265px;max-height:calc(100vh - 270px);z-index:4;transition:opacity .2s,transform .2s}.world-panel.collapsed{opacity:0;pointer-events:none;transform:translateX(15px)}.toolbar{bottom:44px;left:50%;max-width:calc(100vw - 24px);gap:0;padding:6px}.toolbar button{font-size:12px;padding:9px 9px;flex-direction:column;gap:5px}.toolbar button#launch{padding-left:13px;padding-right:13px}.toolbar .divider{margin:0 2px}.toolbar #fullscreen{display:none}.camera-bar{left:50%;bottom:127px}.gesture-guide{font-size:12px;gap:10px;bottom:18px}.gesture-guide span:nth-child(n+3){display:none}.scene-label{left:22px;bottom:185px;font-size:12px}.scene-label small{font-size:12px}.compass{left:auto;right:24px;bottom:186px;width:40px;height:40px}.compass small{display:none}.selection{left:22px;top:auto;bottom:235px;width:210px;z-index:4}.selection .eyebrow{font-size:12px}.selection p{font-size:12px}dialog{margin:auto 20px;padding:25px}#toast{bottom:210px;width:max-content;max-width:85vw;text-align:center}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}


.camera-bar{width:max-content;white-space:nowrap}.camera-bar button{flex-shrink:0}

body{background:#edf3ef}#viewport{z-index:0}main{position:relative;z-index:2}#loading{z-index:20}

body.compatibility #loading{transition:none}

body.forest-view .intro{opacity:0;pointer-events:none}

body.cloud-view .intro{opacity:0;pointer-events:none}
@media(max-width:420px){.camera-bar button{padding-left:9px;padding-right:9px}}

body.mountain-view .intro{opacity:0;pointer-events:none}
@media(max-width:850px){.world-panel{max-height:calc(100vh - 310px)}}

body.crew-view .intro{opacity:0;pointer-events:none}.crew-status{font-size:12px;color:var(--accent);margin:13px 0 0;line-height:1.6}.camera-bar{max-width:calc(100vw - 24px);overflow-x:auto;scrollbar-width:none}.camera-bar::-webkit-scrollbar{display:none}@media(max-width:420px){.camera-bar button{padding-left:7px;padding-right:7px}}

body.traffic-view .intro{opacity:0;pointer-events:none}.traffic-status{font-size:12px;color:var(--muted);margin:3px 0 0;line-height:1.6}

body.musk-view .intro{opacity:0;pointer-events:none}.walk-help,.walk-prompt,.walk-hud{z-index:8}.walk-help[hidden],.walk-prompt[hidden],.walk-hud[hidden]{display:none}.walk-help{position:fixed;top:105px;left:26px;width:305px;padding:24px;border:1px solid #ffffff90;border-radius:10px;background:rgba(247,251,249,.96);box-shadow:0 16px 45px #142e4022;backdrop-filter:blur(12px);max-height:calc(100vh - 300px);overflow:auto;color:#25434c}.walk-help>small{font-size:12px;letter-spacing:2px;color:#73918d}.walk-help h2{font-size:20px;font-weight:500;margin:14px 0 10px}.walk-help p{font-size:12px;line-height:1.8;color:#72888d}.walk-help dl{display:grid;grid-template-columns:1fr;gap:3px;margin:18px 0}.walk-help dt{font-size:12px;margin-top:9px}.walk-help dd{font-size:12px;color:#70868b;margin:0}.walk-help kbd{font-family:inherit;font-size:12px;background:#e2ece8;border:1px solid #ccdcd7;border-radius:4px;padding:3px 7px;display:inline-block}.walk-close{position:absolute;right:10px;top:8px;background:transparent;color:#78918e;font-size:24px;padding:2px 7px}.walk-primary{background:#285f69;color:white;border-radius:5px;padding:12px 18px;font-size:12px}.walk-help .walk-primary{width:100%;margin-top:7px}.walk-help-note{padding-top:10px;border-top:1px solid #dbe5e0}.walk-touch-note{display:none}.walk-hud{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:15px;border:1px solid #526f7b90;border-radius:7px;padding:7px 10px;background:#183541ed;color:#dfedf1;max-width:calc(100vw - 24px);white-space:nowrap;backdrop-filter:blur(8px)}#walk-state{font-size:12px}#walk-controls{display:flex;gap:5px}#walk-controls button{background:#31545e;color:#e4eef0;border-radius:4px;font-size:12px;padding:10px 12px}#walk-controls button:hover{background:#466a74}.walk-mode .intro,.walk-mode .scene-label,.walk-mode .compass,.walk-mode .gesture-guide{display:none}.walk-mode .toolbar{bottom:85px}.walk-mode .camera-bar{bottom:160px}.walk-engaged header,.walk-engaged .world-panel,.walk-engaged .toolbar,.walk-engaged .camera-bar,.walk-engaged #panel-toggle{opacity:0;pointer-events:none}.walk-engaged #walk-controls{display:none}.walk-crosshair{display:none;position:fixed;left:50%;top:50%;width:4px;height:4px;background:#eaf4f2;border:1px solid #15323c;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:4}.walk-engaged .walk-crosshair{display:block}.walk-prompt{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);padding:22px;background:#14313ce8;color:#e8f4f1;backdrop-filter:blur(6px);border:1px solid #75948e80;border-radius:9px;display:flex;flex-direction:column;align-items:center;gap:15px}.walk-prompt>span{font-size:13px}.walk-prompt small{font-size:12px;color:#b5cecc;white-space:nowrap}.walk-touch-controls,.walk-touch-actions{display:none}.walk-touch.walk-mode .walk-touch-note{display:block}.walk-touch.walk-engaged .walk-touch-controls{display:grid;position:fixed;bottom:105px;left:24px;grid-template-columns:repeat(3,46px);gap:5px;z-index:8}.walk-touch-controls button,.walk-touch-actions button{background:#21444ed9;color:white;border:1px solid #92b1b180;border-radius:8px;height:46px;touch-action:none;user-select:none}.walk-touch-controls button:first-child{grid-column:2}.walk-touch-controls button:nth-child(2){grid-column:1;grid-row:2}.walk-touch-controls button:nth-child(3){grid-column:2;grid-row:2}.walk-touch-controls button:nth-child(4){grid-column:3;grid-row:2}.walk-touch.walk-engaged .walk-touch-actions{display:flex;position:fixed;bottom:105px;right:24px;flex-direction:column;gap:8px;z-index:8}.walk-touch-actions button{width:48px;font-size:12px}.walk-mode #viewport canvas{touch-action:none;outline:none}body.night .walk-help{background:#1c3542f5;color:#dfedf2;border-color:#506976}body.night .walk-help p,body.night .walk-help dd{color:#aec5cb}body.night .walk-help kbd{background:#385461;border-color:#58727b}@media(max-width:850px){.walk-help{left:18px;top:89px;width:calc(100vw - 36px);max-width:330px;padding:20px;max-height:calc(100vh - 290px)}.walk-help h2{font-size:18px}.walk-help dl{margin:10px 0}.walk-help dt{margin-top:5px}.walk-hud{padding:6px;gap:5px}.walk-hud #walk-state{display:none}.walk-engaged .walk-hud #walk-state{display:block}.walk-prompt{max-width:calc(100vw - 36px);width:300px;padding:20px}.walk-prompt small{font-size:12px}.walk-mode .camera-bar{bottom:169px}.walk-mode .toolbar{bottom:85px}}
.walk-help dl{grid-template-columns:112px 1fr;gap:9px 10px;align-items:start}.walk-help dt{margin-top:0;font-size:12px}.walk-help dd{line-height:1.7;padding-top:2px}@media(max-width:850px){.walk-help dt{margin-top:0}}
.walk-touch.walk-engaged #walk-controls{display:flex}.walk-touch.walk-engaged #walk-controls button:not(#walk-play){display:none}

body.water-view .intro{opacity:0;pointer-events:none}

body.crown-view .intro{opacity:0;pointer-events:none}

body.drone-view .intro,body.bird-view .intro{opacity:0;pointer-events:none}.air-status{font-size:12px;color:var(--muted);margin:3px 0 0;line-height:1.6}

#opening-hud[hidden]{display:none}#opening-hud{position:fixed;z-index:24;right:26px;top:24px;display:flex;align-items:center;gap:0;padding:0;background:transparent;color:#254953;border:0;border-radius:6px;backdrop-filter:none;font-size:12px;box-shadow:none}#opening-hud button{background:#2c616b;color:white;border-radius:4px;font-size:12px;padding:9px 13px}.gsap-opening-cover{transition:none!important}body.night #opening-hud{background:transparent;color:#d9e8eb;border-color:transparent}#replay-intro{font-size:24px}@media(max-width:850px){#opening-hud{top:18px;right:18px;gap:12px}header .header-actions{gap:8px}#replay-intro{font-size:22px}}
.gsap-opening-cover.cinematic-cover>*{visibility:hidden}
