html,body{overscroll-behavior-y:none}.scroll-stage:focus{outline:none}.world-interactions{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;visibility:hidden;overflow:hidden}.world-interactions.is-enabled{visibility:visible}.landscape-interactions{position:absolute;pointer-events:none}.scene-hotspot{position:absolute;pointer-events:auto;padding:0;border:0;background:transparent;min-width:36px;min-height:36px;cursor:pointer;touch-action:pan-y}.scene-hotspot:after{content:"";position:absolute;left:50%;top:50%;width:3px;height:3px;background:#fff4ca;opacity:0;box-shadow:7px -4px #fff4ca55,-6px 3px #fff4ca44;pointer-events:none;transition:opacity .2s}.scene-hotspot:hover:after,.scene-hotspot:focus-visible:after{opacity:.7}.scene-hotspot:focus-visible{outline:none}.keyboard-nature{pointer-events:none}.keyboard-nature .hotspot-glint{display:none}.terrain-hint{position:absolute;width:3px;height:3px;background:#fff4ca;box-shadow:7px -4px #fff4ca66,-6px 3px #fff4ca44;opacity:0;pointer-events:none;transform:translate(8px,-10px);transition:opacity .15s}.tree-hotspot{left:35.5%;top:35%;width:14%;height:18%}.mushroom-hotspot{left:47.2%;top:50.5%;width:4%;height:6%}.water-hotspot{left:48%;top:84%;width:14%;height:7%}.sign-background{left:5%;top:62.8%;width:18%;height:5.4%}.sign-build{left:41.4%;top:57.4%;width:15.3%;height:5.4%}.sign-play{left:78.5%;top:61.5%;width:13.5%;height:5%}.cloud-hotspot{left:60%;top:20%;width:14%;height:44px;visibility:hidden;border-radius:50%}.pet-hotspot{visibility:hidden;border-radius:50%;z-index:2}.hotspot-glint{position:absolute;left:54%;top:36%;width:3px;height:3px;background:#fff4ca;opacity:0;box-shadow:0 0 8px #fff4ca;pointer-events:none}.scene-hotspot:hover .hotspot-glint,.scene-hotspot:focus-visible .hotspot-glint{opacity:.8}.world-tools{position:absolute;left:3.5%;bottom:12%;display:flex;align-items:center;gap:8px;pointer-events:auto}.world-tools button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px;color:#d8c4db;font:10px PixelUI,monospace;border:1px solid #d1b7d033;background:#221632b3;border-radius:2px}.world-tools button:hover{color:#ffedc2;border-color:#ffedc266}.world-tools .world-help{width:40px}.world-panel{position:absolute;pointer-events:auto;background:#241830f5;border:1px solid #b69aba;box-shadow:4px 4px #110d2080;color:#fff0ca;max-width:calc(100% - 32px);padding:18px 20px;font:13px/1.6 Inter,Arial,sans-serif}.world-panel button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:10px/1.6 PixelUI,monospace;border:1px solid #b69aba66;padding:10px;color:#fff0ca}.world-panel button:hover{background:#4c315b}.world-panel .panel-close{position:absolute;top:5px;right:5px;border:0;padding:5px;min-width:32px;min-height:32px}.world-panel h2{font:23px/1.3 PixelBody,monospace;font-weight:400;margin:0 24px 12px 0}.world-panel p{margin:6px 0 12px}.world-panel label{display:flex;align-items:center;gap:7px;font-size:12px;margin:14px 0}.world-panel input{accent-color:#dbc7e9;width:16px;height:16px}.world-panel kbd{font:11px PixelUI,monospace;border:1px solid #b69aba;padding:3px 5px}.world-help-panel{left:3.5%;bottom:20%;width:330px;max-height:65%;overflow:auto;overscroll-behavior:contain}.world-help-panel .revisit-night{margin-top:8px}.pet-invite{left:50%;bottom:22%;transform:translate(-50%);min-width:240px;text-align:center}.pet-invite p{font:19px PixelBody,monospace;margin-right:15px}.pet-controls{left:50%;bottom:12%;transform:translate(-50%);padding:8px 12px;text-align:center;min-width:250px}.pet-controls>span{font-size:10px;color:#d9c2dd}.pet-controls>div{display:flex;justify-content:center;gap:6px;margin-top:5px}.pet-controls button{min-width:38px;min-height:36px;padding:5px}.night-wash{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:#080e36;opacity:0;pointer-events:none;transition:opacity 1.8s ease}.night-wash.is-night{opacity:.34}.secret-sky{position:absolute;transform:none;left:58%;top:10%;width:clamp(140px,18vw,260px);text-align:center;opacity:0;visibility:hidden;color:#ffefc8;transition:opacity 1.8s ease;pointer-events:none}.secret-sky.is-revealed{visibility:visible;opacity:1}.secret-sky svg{width:100%;max-height:140px;filter:drop-shadow(0 0 6px #c0b7ed88);fill:#ffefc8}.constellation-name{display:block;font:9px/1.4 PixelUI,monospace;letter-spacing:.08em;margin:0 0 8px;color:#d8cbe6}.secret-sky p{font:24px PixelBody,monospace;margin:0 0 10px}.secret-sky button{display:block;margin:0 auto;font:9px PixelUI,monospace;text-decoration:underline;text-underline-offset:4px;pointer-events:auto;padding:8px;min-height:32px}.world-whisper{position:absolute;left:50%;bottom:5.5%;transform:translate(-50%);font:12px/1.4 PixelBody,monospace;text-align:center;color:#fff0cd;background:#251933de;border-radius:2px;max-width:70%;padding:4px 8px;pointer-events:none}.world-whisper:empty{display:none}@media(max-aspect-ratio:1/1){.world-tools{left:5%;top:66px;bottom:auto;gap:6px}.world-tools button{min-height:32px;padding:6px;font-size:9px;background:#24163088}.world-tools .world-help{width:32px}.world-help-panel{left:5%;top:106px;bottom:auto;width:90%;max-height:calc(100% - 180px)}.pet-invite{bottom:190px}.pet-controls{bottom:180px;padding:6px 10px;background:#241830f5}.world-whisper{bottom:36px;max-width:94%;font-size:11px;white-space:normal}.secret-sky{transform:none;width:150px}.secret-sky svg{max-height:100px}.constellation-name{display:block;font:9px/1.4 PixelUI,monospace;letter-spacing:.08em;margin:0 0 8px;color:#d8cbe6}.secret-sky p{font-size:21px}.secret-sky button{font-size:8px;padding:4px}.scene-hotspot{min-width:36px;min-height:36px}.signpost{min-height:28px}}@media(max-height:600px)and (min-aspect-ratio:1/1){.world-tools{bottom:16%}.world-help-panel{bottom:26%;max-height:65%}.pet-controls{bottom:18%}.secret-sky svg{max-height:100px}}@media(prefers-reduced-motion:reduce){.night-wash,.secret-sky,.scene-hotspot:after{transition:none}}@font-face{font-family:PixelDisplay;src:url(/assets/pixel-display.ttf) format("truetype");font-weight:700;font-display:block}@font-face{font-family:PixelBody;src:url(/assets/pixel-body.ttf) format("truetype");font-weight:400;font-display:block}@font-face{font-family:PixelUI;src:url(/assets/pixel-ui.ttf) format("truetype");font-weight:400;font-display:block}@font-face{font-family:Inter;src:url(/assets/ui.ttf) format("truetype");font-weight:100 900;font-display:swap}:root{color:#fff2cd;background:#1c152b;font-family:PixelBody,monospace;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button,a{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid #f7c383;outline-offset:3px}a{color:inherit}.scroll-track{position:relative}.scroll-track:after{content:"";display:block;height:max(1100px,200svh)}.demo{position:relative;isolation:isolate}.scroll-stage{position:sticky;top:0;height:100svh}.scene{position:relative;width:100%;height:100%}.surface{opacity:0;width:100%;height:100%}.surface.is-live{opacity:1}.world{position:relative;container-type:inline-size;width:100%;height:100%;overflow:hidden;background:#241b38}.landscape-layer,.landscape{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.landscape{pointer-events:none}.landscape-patch{position:absolute;overflow:hidden;pointer-events:none}.landscape-patch img{position:absolute;max-width:none}.build-detail{left:46.8%;top:50.5%;width:4.2%;height:6.1%}.build-detail img{width:2380.952381%;height:1639.344262%;left:-1114.285714%;top:-827.868852%}.billboard-clearing{left:74.7%;top:33.5%;width:20.5%;height:26.7%}.billboard-clearing img{width:487.804878%;height:374.531835%;left:-364.390244%;top:-125.468165%}.traveller-board{position:absolute;left:77.4%;bottom:40.8%;width:15.2%;padding-bottom:2.65%}.traveller-board:before,.traveller-board:after{content:"";position:absolute;bottom:0;width:6%;height:22%;background:#c67f72;border-left:2px solid #f3b287}.traveller-board:before{left:8%}.traveller-board:after{right:8%}.traveller-screen{position:relative;z-index:1;display:block;border:3px solid #ffedc2;box-shadow:0 0 0 2px #382540;background:#171628}.traveller-screen img{display:block;width:100%;height:auto;image-rendering:pixelated}.traveller-screen:hover{outline:3px solid #ffedc2;outline-offset:3px}.station.game{text-decoration:none}.top-nav{position:absolute;top:3%;right:4%;display:flex;gap:.6em;align-items:center;font:13px PixelUI,monospace;text-transform:uppercase}.top-nav button,.top-nav a{padding:8px 2px;text-decoration:none}.top-nav button:hover,.top-nav a:hover{color:#fac084}.intro{position:absolute;left:4%;top:10.9%;right:16%}.intro h1{font:700 clamp(32px,4.5vw,64px)/1.07 PixelDisplay,monospace;letter-spacing:.035em;white-space:nowrap;margin:0;color:#ffedc1;text-shadow:0 .055em #efb886}.intro p{font:400 clamp(15px,1.5vw,21px)/1.3 PixelBody,monospace;letter-spacing:.025em;margin:18px 0 0}.station{position:absolute;text-align:center;border:0;padding:3px 5px;width:max-content;height:auto;min-height:28px}.station:hover{color:#ffdab0;text-shadow:0 0 12px #f1c68c66}.station:focus-visible{outline:2px solid #fff0c5;outline-offset:5px}.mobile-label{display:none}.station-copy{display:block;font:400 clamp(14px,1.4vw,20px)/1.2 PixelBody,monospace;letter-spacing:.02em}.station-copy strong{font-weight:400;font-size:1.2em}.station.background{left:14%;top:68.8%;transform:translate(-50%);max-width:18%;padding:1px 2px}.station.background .station-copy{text-align:left}.station.build{left:49.25%;top:63.2%;transform:translate(-50%);max-width:25%}.station.game{left:85%;top:66.6%;transform:translate(-50%);max-width:18%}.world-footer{position:absolute;left:3.5%;bottom:3%}.explore{display:flex;align-items:center;gap:12px;background:#ffedc2;color:#2b1e3e;border:3px solid #eab581;padding:12px 18px;font:13px PixelUI,monospace;text-transform:uppercase}.explore svg{width:16px;height:16px}.explore:hover{background:#f7c388}.assembly{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;display:block;image-rendering:pixelated}.assembly.finished{visibility:hidden}.playback{position:absolute;right:3.5%;bottom:3%;z-index:5;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font:14px PixelBody,monospace;color:#d2bddc;max-width:100%}.playback button{display:flex;align-items:center;gap:6px;padding:4px 0}.playback button:hover{color:#ffc48c}.playback svg{width:15px;height:15px}.assembly-status{color:#bda7ca}.scroll-progress{display:flex;align-items:center;gap:6px;min-width:55px;font-variant-numeric:tabular-nums}.error-note{position:absolute;left:5%;bottom:8%;font:13px Inter,sans-serif;max-width:600px;text-align:center}.scroll-track.motion-static:after{display:none}.motion-static .scroll-stage{position:relative}.chapter-dialog{width:min(720px,calc(100vw - 40px));max-height:85svh;overflow:auto;color:#fff2cd;background:#2b203d;border:4px solid #caa3b1;padding:40px;box-shadow:8px 8px #140d25}.chapter-dialog::backdrop{background:#130d23d9}.chapter-dialog .close{position:absolute;right:16px;top:16px;padding:6px}.chapter-kicker{font:11px PixelUI,monospace;letter-spacing:.07em;color:#c8adcf;margin:0 0 22px}.chapter-dialog h2{font:700 clamp(30px,5vw,48px)/1.1 PixelDisplay,monospace;margin:0 0 26px}.chapter-dialog h3{font:700 28px PixelDisplay,monospace;margin:20px 0 10px}.chapter-dialog p:not(.chapter-kicker){font:16px/1.7 Inter,Arial,sans-serif;color:#e3d7e6}.chapter-action{display:inline-flex;align-items:center;gap:12px;padding:12px 17px;background:#f5d9ae;color:#2c203d;font:15px PixelUI,monospace;text-decoration:none;margin-top:12px}.chapter-action:hover{background:#eeb980}.chapter-action svg{width:18px;height:18px}.quiet-action{display:block;margin-top:24px;text-decoration:underline;color:#ceb7dc;font:14px Inter,sans-serif}.project-image{width:100%;max-height:260px;object-fit:cover;object-position:top;border:1px solid #8f759d}.project-image.traveller{object-fit:contain;background:#1c142d;image-rendering:pixelated}.chapter-dialog p.small-note{font-size:12px;color:#bba6c4}.contact-links{display:flex;flex-wrap:wrap;gap:12px}@media(max-aspect-ratio:1/1){.world:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/assets/world-calm.png);background-size:100% 320%;background-position:center top;background-repeat:no-repeat;pointer-events:none}.landscape-layer{inset:auto 0 180px;width:100%;height:85vw;max-height:calc(100% - 260px);aspect-ratio:auto}.top-nav{top:24px;right:5%;font-size:12px}.intro{top:clamp(92px,14svh,160px);left:5%;right:5%}.intro h1{font-size:clamp(30px,6.7vw,48px);white-space:nowrap}.intro p{font-size:clamp(15px,2.6vw,19px);line-height:1.3;margin-top:18px;max-width:340px}.stations{position:absolute;bottom:112px;left:5%;right:5%;display:flex;gap:8px}.station.background,.station.build,.station.game{position:static;transform:none;flex:1;width:auto;max-width:none;height:auto;min-height:44px;padding:4px 2px;background:transparent;border:0}.mobile-label{display:block;font:10px PixelUI,monospace;margin-bottom:6px;color:#ffdab0}.station-copy{font-size:12px;line-height:1.1;letter-spacing:0}.station-copy strong{font-size:14px}.station.background .station-copy{text-align:center;padding:0}.station.build .station-copy{font-size:0}.station.build .station-copy strong{font-size:14px}.world-footer{bottom:60px;left:5%;right:5%}.explore{width:100%;justify-content:center;font-size:11px;padding:10px;border-width:2px}.explore svg{width:13px;height:13px}.playback{left:5%;right:5%;bottom:15px;gap:10px;font-size:12px}.assembly-status{font-size:12px}}@media(max-width:480px){.intro h1{font-size:7.4vw}.station-copy{font-size:10px}.station-copy strong,.station.build .station-copy strong{font-size:12px}.mobile-label{font-size:9px}.assembly-status{max-width:160px}.chapter-dialog{padding:34px 23px;width:calc(100vw - 30px)}.chapter-dialog .chapter-action{font-size:12px}.chapter-dialog p:not(.chapter-kicker){font-size:15px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.chapter-dialog{width:min(820px,calc(100vw - 40px));overscroll-behavior:contain;scrollbar-color:#b392b2 #2b203d}.chapter-dialog .close{position:sticky;float:right;top:0;right:0;background:#2b203d;z-index:2;margin:-14px -14px 0 8px}.project-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.project-filters button{font:13px/1.4 Inter,sans-serif;padding:8px 12px;border:1px solid #8f759d;color:#e2d2e7}.project-filters button[aria-pressed=true]{background:#f5d9ae;border-color:#f5d9ae;color:#2c203d}.project-list{display:grid;gap:12px}.project-card{border:1px solid #80658e;background:#251a36}.project-card summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;cursor:pointer;list-style:none}.project-card summary::-webkit-details-marker{display:none}.project-card summary:hover{background:#352443}.project-card summary:focus-visible{outline:2px solid #f7c383;outline-offset:3px}.project-summary{display:grid;gap:9px}.project-category{font:10px/1.5 PixelUI,monospace;color:#c4a7d0}.project-summary strong{font:700 28px/1.15 PixelDisplay,monospace;color:#ffedc1}.project-short{font:14px/1.5 Inter,sans-serif;color:#dfcfe2}.project-toggle{font:28px PixelBody,monospace;color:#eaba94}.project-card[open] .project-toggle{transform:rotate(45deg)}.project-detail{padding:0 20px 24px;border-top:1px solid #60486d}.project-detail .project-image{margin-top:20px}.chapter-dialog .project-status{font-size:13px!important;color:#c9b1d5!important;border-left:2px solid #a88a77;padding-left:12px}.background-list{margin:28px 0}.background-item{padding:24px 0;border-top:1px solid #70577e}.background-item h3{margin:0;font-size:26px}.background-item p{margin:12px 0}.text-link{display:inline-flex;align-items:center;gap:6px;font:13px/1.5 Inter,sans-serif;color:#f5d9ae;text-underline-offset:4px}.text-link svg{width:15px;height:15px}@media(max-width:480px){.chapter-dialog{width:calc(100vw - 24px);padding:28px 20px}.project-card summary{padding:16px;gap:12px}.project-detail{padding:0 16px 20px}.project-summary strong{font-size:24px}.project-filters button{font-size:12px;padding:7px 9px}.station.build .station-copy strong{font-size:10px}}.world{-webkit-font-smoothing:antialiased}.living-world-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2}.scroll-hint{position:absolute;z-index:6;right:max(5%,env(safe-area-inset-right));top:43%;display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:none;color:#d2bddc;transition:opacity .4s ease}.scroll-hint span{writing-mode:vertical-rl;font:10px/1 PixelUI,monospace;letter-spacing:.12em;opacity:.32}.scroll-hint svg{width:18px;height:38px;opacity:.32;animation:scroll-cue 2.8s ease-in-out infinite}@keyframes scroll-cue{0%,to{transform:translateY(-3px);opacity:.18}50%{transform:translateY(4px);opacity:.4}}@media(prefers-reduced-motion:reduce){.scroll-hint{display:none}}
