:root{color-scheme:dark;--bg:#0c191c;--panel:#102124;--line:#9cb9ac25;--gold:#ddc69a;--ink:#e4e9df;--muted:#9cb1aa;--serif:'Cormorant Garamond',Georgia,serif;--title:'Cinzel',Georgia,serif;--mono:'JetBrains Mono',monospace}
*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{background:var(--bg);color:var(--ink);font:16px var(--serif);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{border:0;background:none;color:inherit;cursor:pointer;touch-action:manipulation}a{color:inherit;text-decoration:none}button:hover,a:hover{color:#f7deb1}button:disabled{opacity:.35;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;z-index:100;top:-80px;background:var(--panel);padding:15px}.skip:focus{top:0}.eyebrow{font:8px/1.5 var(--mono);letter-spacing:1.65px;color:var(--gold);margin:0}
.mast{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);background:#0d1b1e;position:relative;z-index:20}.brand{display:flex;align-items:center;gap:12px;font:500 19px var(--title);letter-spacing:5px}.brand>span{font:30px Georgia;color:var(--gold);position:relative}.brand>span:after{content:'';height:35px;width:1px;background:var(--gold);position:absolute;top:0;left:50%;transform:rotate(34deg)}.mast-caption{font:8px var(--mono);letter-spacing:2px;color:#a9bcb2;display:flex;align-items:center;gap:10px}.mast-caption i,.source-badge i{width:5px;height:5px;border-radius:50%;background:#a5cfaa;display:inline-block}.return{font:9px var(--mono);color:#b0c0b3}.shell{display:grid;grid-template-columns:286px 1fr;height:calc(100dvh - 66px)}.explorer{display:flex;flex-direction:column;min-height:0;background:linear-gradient(155deg,#18312f,#0e2123 58%,#112226);border-right:1px solid var(--line);position:relative;z-index:12}.heading{padding:30px 24px 23px}.heading h1{font:400 31px var(--title);letter-spacing:-1.5px;margin:11px 0 10px}.heading p{font:19px var(--serif);color:#afc4b6;margin:0}.heading em{color:var(--gold)}.search{display:flex;align-items:center;gap:9px;border-bottom:1px solid #b8c8b24d;margin:0 22px 22px;padding:10px 0}.search>span{font:26px Georgia;color:var(--gold)}.search input{background:none;border:0;outline:0;color:var(--ink);width:100%;min-width:0;font:15px var(--serif)}.search input::placeholder{color:#9bb2a6}.search kbd{font:9px var(--mono);border:1px solid var(--line);padding:2px 5px;color:var(--muted)}.catalog-tabs{display:flex;padding:0 22px;gap:24px;border-bottom:1px solid var(--line)}.catalog-tabs button{padding:0 0 13px;border-bottom:1px solid transparent;color:var(--muted);font:14px var(--serif);margin-bottom:-1px}.catalog-tabs button.active{color:var(--gold);border-color:var(--gold)}.catalog-tabs span{font:8px var(--mono);margin-left:7px}.catalog{overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:#4d6d5d transparent;padding:13px 12px}.group-title{font:8px var(--mono);letter-spacing:1.5px;color:#89a697;padding:14px 10px 8px}.place-row{display:flex;width:100%;gap:11px;align-items:center;padding:13px 10px;border:1px solid transparent;border-radius:3px;text-align:left}.place-row:hover{background:#cae4c407}.place-row.selected{border-color:#dcc89a33;background:#ddc5930b}.place-row .symbol{font-size:20px;color:var(--place-color,var(--gold));width:25px;flex-shrink:0;text-align:center}.place-row strong{display:block;font:400 17px var(--serif);color:#d7e2d6}.place-row small{display:block;font:7px var(--mono);letter-spacing:.6px;color:#90aa9d;margin-top:5px}.place-row .arrow{margin-left:auto;font:12px var(--mono);color:#819e8e}.empty{padding:20px 12px;color:var(--muted);font:17px/1.5 var(--serif)}.explorer-foot{padding:19px 22px;border-top:1px solid var(--line);background:#102124}.source-badge{display:flex;align-items:center;gap:8px;font:7px var(--mono);letter-spacing:.75px;color:#abc1ae}.explorer-foot>button{padding:0;font:10px var(--serif);color:var(--muted);margin-top:13px}.viewport{position:relative;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 42%,#325c60,#132c32 58%,#07171e);isolation:isolate}#sceneCanvas{width:100%;height:100%;display:block;touch-action:none;outline-offset:-5px}.atmosphere{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 110px #07161d77;background:linear-gradient(#06151d20,transparent 24%,transparent 78%,#071a22aa)}.world-title{position:absolute;left:29px;top:25px;pointer-events:none;z-index:3}.world-title .eyebrow{color:#9ebcae;font-size:7px}.world-title h2{font:italic 22px var(--serif);color:#dde8d8;margin:7px 0 0;text-shadow:0 2px 12px #092028}.mode-switch{position:absolute;right:25px;top:24px;display:flex;gap:3px;border:1px solid var(--line);padding:4px;border-radius:4px;background:#0b2227d9;backdrop-filter:blur(15px);z-index:7}.mode-switch button{font:12px var(--serif);padding:8px 12px;color:#9db6aa;border-radius:2px}.mode-switch button.active{color:var(--gold);background:#debc7517}.rotation-card{position:absolute;left:29px;top:96px;display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid #b6cda433;background:#0b2327dd;backdrop-filter:blur(15px);border-radius:4px;z-index:6}.rotation-card>button:first-child{width:28px;height:28px;border-radius:50%;border:1px solid #b8cea142;font:12px Georgia;color:var(--gold)}.rotation-card .eyebrow{font-size:7px;letter-spacing:.9px;color:#9cbaa5}.rotation-card span{display:block;font:15px var(--serif);color:#e2e5cd;margin-top:4px}.rotation-card>button:last-child{font-size:22px;color:#90ac98;padding-left:9px}.time-panel{position:absolute;left:29px;top:165px;z-index:8;width:264px;padding:18px;background:#0d262af2;border:1px solid var(--line);border-radius:4px}.time-panel label{font:13px var(--serif);color:#cedcbd;display:block}.time-panel output{float:right;font:9px var(--mono)}input[type=range]{accent-color:var(--gold);width:100%;margin:14px 0 7px}.time-panel p{font:12px/1.4 var(--serif);color:var(--muted);margin:0}.labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.map-label{position:absolute;display:flex;align-items:center;gap:7px;padding:7px;transform:translate(-15px,-50%);pointer-events:auto;white-space:nowrap;text-shadow:0 2px 6px #001015;z-index:2}.map-label i{display:grid;place-items:center;width:15px;height:15px;background:#193331;border:1px solid var(--place-color,#d1c29a);transform:rotate(45deg);box-shadow:0 0 0 3px #061c2440}.map-label i:after{content:'';width:3px;height:3px;background:var(--place-color,#d1c29a)}.map-label span{font:500 14px var(--serif);color:#e3e8d9;padding:4px 7px;background:#0a2229c9;border:1px solid #bdd8ba28;border-radius:2px;backdrop-filter:blur(5px)}.map-label.selected i{background:var(--gold);box-shadow:0 0 0 5px #d4bb6740,0 0 20px #e2ca7e66}.map-label.selected span{border-color:#d3c696;color:#f7e4b8}.map-label.in-light span{color:#fff0c4}.map-label.secondary span{display:none}.map-label.secondary:hover span,.map-label.secondary:focus-visible span{display:block}.map-label.left-label{flex-direction:row-reverse;transform:translate(calc(-100% + 15px),-50%)}.welcome{position:absolute;left:29px;bottom:108px;width:267px;padding:23px;border:1px solid #bacb9e33;border-radius:4px;background:linear-gradient(145deg,#193b39e8,#0c262bee);backdrop-filter:blur(20px);z-index:5}.welcome .eyebrow{font-size:7px;letter-spacing:1px}.welcome h2{font:400 26px/1.1 var(--serif);margin:17px 0 12px}.welcome h2 em{color:var(--gold)}.welcome>p:not(.eyebrow){font:15px/1.4 var(--serif);color:#adc6b5;margin:0}.welcome button{width:100%;border-top:1px solid var(--line);padding:15px 0 0;margin-top:19px;font:13px var(--serif);text-align:left;color:var(--gold)}.welcome button span{float:right}.zoom-controls{position:absolute;right:25px;bottom:94px;display:flex;align-items:center;gap:2px;padding:5px;background:#0b2429e0;border:1px solid #b8d0a733;border-radius:4px;z-index:8;backdrop-filter:blur(12px)}.zoom-controls button{font:23px Georgia;width:35px;height:32px}.zoom-controls output{font:8px var(--mono);color:#b1c9b6;width:58px;text-align:center}.zoom-controls>span{height:18px;width:1px;background:var(--line);margin:0 5px}.bottom-bar{position:absolute;bottom:0;left:0;right:0;min-height:69px;background:#0b2128ed;backdrop-filter:blur(18px);border-top:1px solid var(--line);padding:15px 25px;display:flex;align-items:center;gap:20px;z-index:9}.layers{display:flex;gap:4px}.layers button{display:flex;align-items:center;gap:7px;font:18px Georgia;padding:8px 10px;border:1px solid transparent;color:#91b09f;border-radius:3px}.layers button span{font:11px var(--serif)}.layers button.active{border-color:#b9c99830;background:#d4daa608;color:#d9dfb7}.bottom-bar>p{font:italic 12px var(--serif);color:#91afa0;margin:0 0 0 auto}.bottom-bar>button:last-child{border:1px solid #b6cca333;width:25px;height:25px;border-radius:50%;font:13px Georgia;color:#bfd0b0}.bottom-bar #mobileExplore{display:none}.detail{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#4d6d5d transparent}.detail .detail-art{width:100%;height:134px;object-fit:cover;object-position:center 15%;mask-image:linear-gradient(#000 75%,transparent)}.detail-inner{padding:19px 24px}.detail-back{font:10px var(--mono);color:var(--muted);padding:15px 22px 6px}.detail .eyebrow{font-size:7px;letter-spacing:1.2px}.detail h2{font:400 26px/1.12 var(--title);letter-spacing:-.7px;margin:12px 0 14px}.detail blockquote{font:italic 21px/1.16 var(--serif);color:#cfd7ba;margin:0 0 17px}.detail-copy{font:16px/1.45 var(--serif);color:#afc7b6}.detail ul{padding:0;list-style:none;margin:18px 0}.detail li{font:14px/1.4 var(--serif);border-bottom:1px solid #b6ca9e15;padding:8px 0;color:#b6ccbb}.detail li:before{content:'·';color:var(--gold);margin-right:8px}.visit-buttons{display:flex;gap:7px;margin:19px 0}.visit-buttons button{flex:1;font:12px var(--serif);padding:11px 7px;border:1px solid #d6c79b66;border-radius:3px;background:#cfb46e11;color:var(--gold)}.model-note{padding:13px;border-left:1px solid #a8c18d5c;background:#bdcf9e08;font:12px/1.4 var(--serif);color:#a8bd9d}.model-note b{display:block;font:7px var(--mono);letter-spacing:1px;color:#bbd0a7;margin-bottom:7px}.related{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.related button{font:12px var(--serif);border:1px solid var(--line);border-radius:2px;padding:6px 8px}.detail-share{font:10px var(--mono);color:var(--muted);padding:12px 0;margin-top:10px}.detail-active .heading{padding-top:20px;padding-bottom:16px}.detail-active .heading h1{font-size:26px}.detail-active .heading p,.detail-active .search,.detail-active .catalog-tabs,.detail-active .catalog{display:none}.detail-active .explorer-foot{padding-top:13px;padding-bottom:13px}.surface-hud{position:absolute;left:29px;top:98px;z-index:7;display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:#0b252acc;border:1px solid var(--line);border-radius:4px;padding:13px 16px;backdrop-filter:blur(12px)}.surface-hud>span{font:8px var(--mono);letter-spacing:1px;color:#b8cfaa}.surface-hud button{font:12px var(--serif);color:var(--gold);border-left:1px solid var(--line);padding-left:15px}.crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;font:22px Georgia;color:#eff9df88}.surface .rotation-card,.surface .welcome{display:none!important}.surface .world-title h2{font-size:23px}.surface .labels{opacity:.8}.surface #zoomReadout{font-size:7px}.touch-controls{position:absolute;bottom:92px;left:24px;right:24px;pointer-events:none;z-index:10;display:none;justify-content:space-between;align-items:center}#joystick{pointer-events:auto;width:100px;height:100px;border:1px solid #cfdbb55c;border-radius:50%;background:#0d232980;touch-action:none;display:grid;place-items:center}#joystickKnob{width:40px;height:40px;border:1px solid #d9dfbc80;border-radius:50%;background:#c5d3ad33;pointer-events:none}.altitude-buttons{display:flex;flex-direction:column;gap:9px}.altitude-buttons button{pointer-events:auto;touch-action:none;width:42px;height:42px;border:1px solid #c0d3a94d;background:#0b252caa;border-radius:50%;font:23px Georgia}.loading,.fallback{position:absolute;inset:0;z-index:30;background:radial-gradient(#234749,#0b2027);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:30px;text-align:center}.loading h2,.fallback h2{font:400 32px var(--serif);margin:15px 0}.loading p:last-child,.fallback p{color:#a5c3b4;font:16px/1.5 var(--serif);max-width:360px}.loading-orbit{width:65px;height:65px;border:1px solid #d8ca9844;border-radius:50%;margin-bottom:28px;position:relative;animation:orbit 5s linear infinite}.loading-orbit:before{content:'';position:absolute;top:50%;left:50%;width:15px;height:15px;background:#dfc784;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 24px #e4d08977}.loading-orbit:after{content:'';width:5px;height:5px;background:#c2d9b1;border-radius:50%;position:absolute;left:30px;top:-3px}.fallback button,.fallback a{border:1px solid #d5c39455;margin-top:15px;padding:12px 24px;color:var(--gold)}@keyframes orbit{to{transform:rotate(360deg)}}dialog{background:#10292c;color:#bad0c0;border:1px solid #b5c99a66;border-radius:5px;width:min(560px,calc(100% - 30px));max-height:85dvh;padding:35px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#031219bb;backdrop-filter:blur(8px)}dialog h2{font:400 29px/1.15 var(--serif);color:#e0e7ce;margin:16px 0 22px}dialog p,dialog dd{font:16px/1.5 var(--serif)}dialog dt{font:12px var(--mono);color:var(--gold);margin-top:20px}dialog dd{margin:7px 0 0}.close-dialog{position:absolute;right:15px;top:15px;font:26px Georgia}.credits{font:10px/1.6 var(--mono)!important;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}dialog a{text-decoration:underline}.zooming .atmosphere{box-shadow:inset 0 0 70px #a5cfb612;transition:box-shadow .5s}.detail-mobile-close{display:none}
@media(min-width:1600px){.shell{grid-template-columns:312px 1fr}.heading{padding:35px 27px 25px}.heading h1{font-size:34px}.world-title{left:35px;top:31px}.rotation-card{left:35px;top:105px}.welcome{left:35px;width:285px}.place-row{padding-top:15px;padding-bottom:15px}}
@media(max-width:1100px){.shell{grid-template-columns:248px 1fr}.heading{padding-left:20px}.heading h1{font-size:28px}.mast-caption{font-size:7px}.world-title h2{font-size:19px;max-width:220px}.mode-switch button{padding:7px 9px;font-size:11px}.welcome{width:227px;padding:18px}.welcome h2{font-size:23px}.welcome>p:not(.eyebrow){font-size:13px}.bottom-bar{gap:10px;padding-left:19px;padding-right:19px}.bottom-bar>p{max-width:185px;font-size:11px}.layers button{padding:7px}.detail-inner{padding-left:19px;padding-right:19px}}
@media(max-width:760px){.mast{height:56px;padding:0 16px}.brand{font-size:16px;letter-spacing:3px;gap:9px}.brand>span{font-size:25px}.brand>span:after{height:28px}.mast-caption{display:none}.return{font-size:8px}.shell{height:calc(100dvh - 56px);display:block}.viewport{width:100%;height:100%}.explorer{position:absolute;top:56px;bottom:70px;left:0;width:min(315px,87vw);transform:translateX(-115%);transition:transform .2s ease;box-shadow:20px 0 65px #0006;z-index:15}.explorer.open{transform:translateX(0)}.heading{padding:24px 22px 18px}.heading h1{font-size:30px}.world-title{left:17px;top:20px}.world-title .eyebrow{font-size:6px;letter-spacing:1px}.world-title h2{font-size:19px;max-width:190px}.mode-switch{top:78px;right:16px;padding:3px;flex-direction:column}.mode-switch button{padding:7px 11px;font-size:11px}.rotation-card{left:17px;top:90px;gap:8px;padding:8px;max-width:245px}.rotation-card .eyebrow{font-size:6px;letter-spacing:.6px}.rotation-card span{font-size:12px}.rotation-card>button:first-child{width:25px;height:25px}.rotation-card>button:last-child{font-size:20px;padding-left:1px}.time-panel{top:151px;left:17px;width:239px}.welcome{left:17px;bottom:145px;width:220px;padding:17px}.welcome h2{font-size:23px}.welcome>p:not(.eyebrow){font-size:13px}.welcome .eyebrow{font-size:6px}.welcome button{margin-top:15px;padding-top:12px;font-size:12px}.zoom-controls{right:16px;bottom:89px;padding:3px}.zoom-controls button{width:31px;height:31px}.zoom-controls output{width:46px;font-size:7px}.zoom-controls #fullscreen{display:none}.bottom-bar{padding:13px 15px;min-height:70px;gap:8px}.bottom-bar #mobileExplore{display:block;border:1px solid #c5d2a44d;padding:10px;border-radius:3px;font:12px var(--serif);color:var(--gold)}.bottom-bar>p{display:none}.layers{margin-left:auto;gap:3px}.layers button{width:32px;height:32px;display:grid;place-items:center;padding:0;font-size:18px}.layers span{display:none}.bottom-bar>button:last-child{width:24px;height:24px}.map-label{gap:4px;padding:6px;transform:translate(-12px,-50%)}.map-label i{width:12px;height:12px}.map-label span{font-size:12px;padding:3px 5px}.map-label.left-label{transform:translate(calc(-100% + 12px),-50%)}.surface-hud{top:auto;bottom:150px;left:17px;right:auto;max-width:240px;padding:10px;gap:10px}.surface-hud button{font-size:11px}.surface-hud #heightReadout{display:none}.surface .touch-controls:not([hidden]){display:flex}.surface .zoom-controls{bottom:89px}.surface .surface-hud{bottom:auto;top:91px;max-width:calc(100% - 110px)}.surface .surface-hud>span{font-size:7px}.surface .mode-switch{top:80px}.surface .rotation-card{display:none}.surface .map-label:not(.selected){display:none}.surface .world-title h2{font-size:20px}.detail-mobile-close{display:block;position:absolute;top:14px;right:14px;font-size:23px;z-index:2}.detail .detail-art{height:125px}.loading h2{font-size:27px}.loading p:last-child{font-size:15px}dialog{padding:28px}.heading p{font-size:18px}}
@media(max-height:740px){.welcome{width:235px;padding:15px;bottom:95px}.welcome>p,.welcome h2{display:none}.welcome button{border:0;margin:0;padding:0}.world-title h2{font-size:18px}.rotation-card{top:85px}}
@media(max-width:760px){.welcome{bottom:151px;width:calc(100% - 34px);padding:13px 16px}.welcome>p,.welcome h2{display:none}.welcome button{border:0;margin:0;padding:0}.surface .zoom-controls{bottom:220px}.touch-controls{bottom:91px}.surface .altitude-buttons{margin-top:15px}.map-label span{font-size:11px}}
.viewport,.map-label{touch-action:none}
.surface{background:#000}.surface .atmosphere{background:none;box-shadow:inset 0 0 100px #0008}.surface #sceneCanvas{filter:blur(calc(var(--desync,0)*.65px))}.night-presence{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,transparent 36%,#190b2440 85%)}.night-presence i{position:absolute;width:35%;height:85%;top:5%;border-radius:50%;border:1px solid #91a8c318;filter:blur(3px);transform:rotate(19deg);left:-25%;box-shadow:30px 0 80px #281d4924}.night-presence i:nth-child(2){left:auto;right:-25%;transform:rotate(-19deg)}.night-presence i:nth-child(3){left:33%;top:75%;height:60%;border-color:#44374c40;filter:blur(12px)}.night-meter{position:absolute;left:29px;bottom:98px;width:290px;padding:17px 19px;z-index:8;border:1px solid #b4b6c330;background:#101a20dc;backdrop-filter:blur(15px);border-radius:4px}.night-meter .eyebrow{font-size:6px;color:#a2b1bc}.night-meter strong{display:block;font:23px var(--serif);margin-top:7px;color:#d7d7de}.night-meter p{font:14px/1.4 var(--serif);color:#a2a8b6;margin:8px 0 14px}.night-actions{display:flex;gap:8px;flex-wrap:wrap}.night-actions button{font:10px var(--serif);border:1px solid #b4b6c34d;padding:7px 9px;border-radius:3px;color:#d6cba9}.night-world .night-meter{border-color:#8a739154;background:#120f19e6}.night-world .world-title h2{color:#868591}.night-world .crosshair{color:#b4a6b455}.surface .surface-hud{max-width:calc(100% - 260px)}
@media(max-width:760px){.night-meter{left:15px;bottom:217px;width:min(235px,calc(100% - 93px));padding:10px 12px}.night-meter .eyebrow{display:none}.night-meter strong{font-size:18px;margin:0}.night-meter p{font-size:12px;margin:5px 0 9px}.night-actions{gap:5px}.night-actions button{font-size:9px;padding:6px}.surface .surface-hud{max-width:calc(100% - 110px)}.surface .zoom-controls{bottom:354px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#cyclePause{border:1px solid var(--line);padding:7px 10px;margin-top:12px;color:var(--gold);font-size:12px}.surface .time-panel{top:170px}.surface .surface-hud{gap:9px}.surface-hud #cycleButton{border:0;padding:0}.night-world .map-label{display:none}
#watchSun{border:1px solid var(--line);padding:7px 10px;margin-top:12px;color:var(--gold);font-size:12px}
.time-panel{z-index:14}
