html,body{height:100%;overflow:hidden;overscroll-behavior:none}
#dream-journey{position:relative;height:100svh;overflow:hidden;isolation:isolate;background:#071321}
#dream-journey>main,#link-lake{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
#dream-journey>main{z-index:1;touch-action:none;background:radial-gradient(ellipse,#15283a,#030a10)}
#room-view{position:absolute;left:50%;top:50%;width:min(100vw,150svh);height:min(66.666667vw,100svh);transform:translate(-50%,-50%);transform-origin:center;will-change:transform;touch-action:none}
#room-view #art,#room-view canvas{object-fit:contain;object-position:center}
#link-lake{z-index:2;opacity:0;pointer-events:none}
#link-lake iframe{width:100%;height:100%;border:0;display:block}
#dream-mist{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 22% 65%,#aac9e683,transparent 62%),radial-gradient(ellipse at 78% 25%,#8ab5da75,transparent 65%),linear-gradient(155deg,#173047b5,#45647d99 50%,#12243cbd)}
@media(prefers-reduced-motion:reduce){#room-view{will-change:auto}}

#dream-journey>main{cursor:default}
#dream-journey>main.can-pan{cursor:grab}
#dream-journey>main.is-dragging{cursor:grabbing}
#scene-orb{position:fixed;right:max(18px,env(safe-area-inset-right));top:auto;bottom:max(18px,env(safe-area-inset-bottom));transform:none;width:48px;height:48px;border:0;background:transparent;opacity:1;z-index:8;touch-action:manipulation;cursor:pointer}
#scene-orb span{position:relative;display:block;width:22px;height:22px;margin:auto;border:1px solid #c2ecff99;border-radius:50%;background:radial-gradient(circle,transparent 35%,#8fd8ff18 65%,transparent 75%);box-shadow:0 0 12px #9cddff45,inset 0 0 8px #b8e9ff25;pointer-events:none}
#scene-orb span:after{content:"";position:absolute;inset:7px;background:#d5f3ffcc;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}
#scene-orb[data-destination=zelda] span{border-color:#f0d7a899;box-shadow:0 0 12px #e6c08045,inset 0 0 8px #eddbb325}
#scene-orb:hover span,#scene-orb:focus-visible span{border-color:#f1fbff;box-shadow:0 0 15px #b8e9ff80}

#room-view{user-select:none;-webkit-user-select:none}#room-view #art{-webkit-user-drag:none}
#pause,#music-toggle{display:none!important}
#scene-orb{top:50%;bottom:auto;transform:translateY(-50%)}
#scene-orb:focus-visible{outline:2px solid #e8d5a5;outline-offset:3px}

/* Fairy Founders remains on its resident fairy; dream bubbles are separate. */
