:root{--ink:#332d27;--cream:#f6ead8}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#bf9b76}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:1px solid currentColor;outline-offset:6px}#landscape{position:fixed;inset:0;background:#bda38b url('assets/desert-poster.jpg') center/cover}#landscape>canvas{display:block;width:100%;height:100%;touch-action:none}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(0deg,#281b1418,transparent 20%,transparent 80%,#362c2010);z-index:1}.masthead{position:absolute;z-index:10;top:0;left:0;width:100%;padding:30px 36px;display:flex;justify-content:space-between;align-items:center}.wordmark{font-size:13px;letter-spacing:.035em;font-weight:500}.masthead button{display:flex;align-items:center;gap:14px;font-size:11px;padding:12px 0}.masthead svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1}.scene-footer{position:absolute;bottom:0;left:0;width:100%;padding:20px 36px;display:flex;align-items:center;justify-content:space-between;z-index:5;color:#fff1dc;text-shadow:0 1px 10px #301f18a0}.scene-footer>button{min-width:44px;min-height:44px;display:flex;align-items:center;gap:9px;padding:8px 0;font-size:10px}.scene-footer>button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.1}.scene-footer #motion-button{justify-content:flex-end;margin-left:auto}.world-navigation{display:flex;gap:18px;position:absolute;left:50%;transform:translateX(-50%)}.world-navigation button{width:34px;height:44px;display:flex;align-items:center;justify-content:center;position:relative;font-size:9px;letter-spacing:.07em;opacity:.65;transition:opacity .4s}.world-navigation button:after{position:absolute;content:'';width:3px;height:3px;bottom:3px;left:calc(50% - 1.5px);border-radius:50%;background:currentColor;opacity:0;transition:opacity .4s}.world-navigation button:hover,.world-navigation button.active{opacity:1}.world-navigation button.active:after{opacity:1}.world-preview{position:absolute;left:50%;bottom:105px;transform:translateX(-50%);z-index:5;color:#fff1dc;display:flex;align-items:center;gap:20px;font-size:13px;letter-spacing:.02em;text-shadow:0 1px 15px #25150d,0 1px 4px #25150d66;white-space:nowrap;padding:12px 3px;border-bottom:1px solid #fff1dc66}.world-preview[hidden]{display:none}#labels{position:absolute;inset:0;pointer-events:none;z-index:3}.portal-label{position:absolute;transform:translate(-50%,0);white-space:nowrap;font-size:9px;color:#352b23;opacity:0;transition:opacity .5s;text-shadow:0 1px 8px #eac895}.loading{position:fixed;inset:0;background:#bda38b;z-index:50;display:grid;place-items:center;transition:opacity .8s,visibility .8s}.loading.done{opacity:0;visibility:hidden}.loading span{width:18px;height:35px;border:1px solid #514439;animation:load 1.5s infinite}@keyframes load{50%{transform:rotateY(180deg)}}dialog{color:var(--ink);border:0;background:#ede5d6f0;backdrop-filter:blur(20px);box-shadow:0 15px 100px #29201720;padding:55px 40px 32px;border-radius:0;max-height:85dvh;width:min(470px,calc(100% - 40px));overflow:auto}dialog::backdrop{background:#2d271c30;backdrop-filter:blur(9px)}#close-network{position:absolute;right:21px;top:16px;font-size:26px;padding:6px 10px;line-height:1}.network-row{display:flex;justify-content:space-between;gap:25px;font-size:17px;padding:23px 0;border-bottom:1px solid #443a2926}.network-row:last-child{border:0}.network-row span:last-child{font-size:15px;opacity:.7}.skip{position:absolute;left:20px;top:-70px;background:#eee5d5;padding:12px;z-index:90}.skip:focus{top:20px}.noscript{position:fixed;z-index:100;background:#eee5d5dc;padding:30px;inset:20%;display:flex;flex-direction:column;gap:25px}.desert-poster{position:absolute;inset:0;background:url('assets/desert-poster.jpg') center/cover no-repeat}.poster-portals{position:absolute;inset:0}.poster-portal{position:absolute;padding:0;overflow:hidden;opacity:0;transition:opacity .65s;background:#272520;display:block;touch-action:manipulation}.poster-portal.active,.poster-portal:focus-visible{opacity:1}.poster-portal canvas{width:100%;height:100%;display:block}.poster-wind{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.paused *{animation-play-state:paused!important}@media(max-width:700px){.masthead{padding:20px 23px}.wordmark{font-size:11px;letter-spacing:.02em}.masthead button{font-size:10px;gap:8px}.scene-footer{padding:16px 23px}.world-navigation{gap:8px}.world-navigation button{width:30px}.world-preview{bottom:88px;font-size:12px;gap:16px}.scene-footer>button span{display:none}.network-row{font-size:16px}dialog{padding:52px 28px 25px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.poster-panorama{position:absolute;top:0;left:0;height:100%;width:100%;will-change:transform;touch-action:none}.poster-panorama .desert-poster{background-image:url("assets/desert-poster.jpg")}.poster-portals{touch-action:none}

.poster-reflections{position:absolute;inset:0;pointer-events:none}.poster-reflection{position:absolute;opacity:0;transition:opacity .65s;pointer-events:none}.poster-reflection.active{opacity:.7}.poster-reflection canvas{width:100%;height:100%;transform:scaleY(-1);filter:brightness(.8) saturate(.65);display:block}
