/* V7: room exploration, motivated sign lighting, and preserved-ID hunt expansion. */
.wood-sign{transform:translateX(-50%)}
.wood-sign .sign-core{transform-origin:41.5% 0;transform:perspective(var(--sign-width)) rotateY(22deg)}
.wood-sign .sign-board{position:absolute;inset:0;pointer-events:none;transform-origin:41.5% 0;transform:perspective(var(--sign-width)) rotateY(16.5deg)}
.sign-timber{filter:brightness(.57) saturate(.72) contrast(1.12) blur(.22px)}
.post-gas-lamp{filter:brightness(.8) saturate(.86)}
.post-contact-shadow{filter:blur(4px)}.post-cast-shadow{filter:blur(5px)}.lamp-beam{filter:blur(9px)}
.raven-shore{left:67.8%;top:24%;width:52px;height:56px}.raven-shore>img{width:41px;height:48px}.raven-shore .raven-glint{opacity:.56}
.room-exploration{position:relative;isolation:isolate;background:#080f12}
.room-exploration .room-breadcrumb{z-index:5;pointer-events:none}.room-exploration .room-breadcrumb a{pointer-events:auto}
.room-panorama{height:clamp(490px,66vw,690px);min-height:0}
.room-scene{width:max(100%,1380px);min-width:100%;height:100%}
.room-scene .scene-art{object-fit:fill}
.room-scene .lantern-light img{object-fit:fill;filter:brightness(1.65) saturate(.92)}
.room-lantern-toggle{position:absolute;left:50%;top:calc(clamp(490px,66vw,690px) - 82px);transform:translateX(-50%);z-index:5;min-height:58px;padding:8px 24px;gap:12px;font:18px Fell,Georgia,serif;background:#101912ed;border:1px solid #bda06c}
.room-lantern-toggle img{width:25px;height:38px}.room-explore-bar{display:flex;align-items:center;gap:20px;padding:17px 5vw;background:#0d1516;border-block:1px solid #8f79482b}
.room-explore-bar .pan-buttons{display:none}.can-pan .room-explore-bar .pan-buttons{display:flex}
.room-hunt-invite{font:17px/1.3 Fell,Georgia,serif;color:#cbbf9d}.room-explore-bar .text-button{padding:5px 0;min-height:44px;font-size:11px;color:#b8bda8}
.expanded-room{display:block;position:relative;padding:0;min-height:0;overflow:visible;background:#0d1315}
.expanded-room:after{display:none}.expanded-room .room-content{margin:0 auto;width:min(100% - 48px,720px);max-width:720px;padding:62px 0 60px}
.expanded-room .room-content h1{font-size:56px}.expanded-room .room-content>p{max-width:640px}
.room-title-block{width:min(100% - 48px,1150px);margin:0 auto;padding:54px 0 0}.room-title-block h1{font-size:60px;margin:12px 0}.room-title-block>p:last-child{font:20px/1.5 Fell,Georgia,serif;color:#c1baa7}
.raven-woods{left:18%;top:72%}.raven-forest-branch{left:61%;top:31%;width:50px;height:54px}.raven-forest-roots{left:86%;top:71%;width:50px;height:54px}
.backstory-exploration .watcher-1{left:68%;top:55%}.backstory-exploration .watcher-2{left:87%;top:35%}
.raven-tape-shelf{left:18%;top:11%;width:50px;height:52px}.raven-stove{left:74%;top:63%;width:50px;height:54px}
.raven-story-mail{left:6%;top:40%;width:50px;height:52px}.raven-story-beam{left:78%;top:8%;width:50px;height:54px}
.room-scene .hidden-raven>img{width:40px;height:48px}.room-scene .hidden-raven[data-lit=true]>img{filter:brightness(.88) saturate(.7)}
.poster-wall{position:absolute;inset:0;z-index:0;pointer-events:none;filter:brightness(.24) saturate(.62)}
.poster-wall.lit-posters{filter:brightness(.8) saturate(.7)}
.old-poster{position:absolute;margin:0;box-shadow:2px 4px 5px #000a;transform:rotate(-2deg);border:1px solid #2d2216;clip-path:polygon(0 0,98% 0,100% 96%,97% 100%,1% 99%);background:#8b7b57}
.old-poster img{display:block;width:100%;height:100%;object-fit:contain}.old-poster:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,#271e0a45,transparent 38%,#08050139);box-shadow:inset 0 0 8px #21170788}
.original-nod{left:79%;top:24%;width:10%;height:31%;transform:rotate(2deg)}
.twisted-poster{left:54%;top:22%;width:13.5%;height:30%;transform:rotate(-2deg)}
.chemical-poster{left:68%;top:28%;width:10%;height:27%;transform:rotate(8deg);clip-path:polygon(0 0,89% 0,100% 12%,100% 100%,0 99%)}
.chemical-poster:before{content:'';position:absolute;right:0;top:0;width:13%;height:13%;background:#b6a17a;clip-path:polygon(0 0,0 100%,100% 100%);z-index:2;box-shadow:-2px 2px 4px #000}
.spooky-widget [data-room-count]{display:block;font:11px/1.45 Arial,sans-serif;color:#dbcead;margin-top:3px}.spooky-widget .hunt-count{font-size:9px;color:#a0ad9f;margin-top:1px}
.journal-room{margin-top:23px}.journal-room h3{display:flex;justify-content:space-between;margin:0;border-bottom:1px solid #a3977066;padding:0 0 9px;font:21px Fell,Georgia,serif;color:#d8c595}.journal-room h3 span{font:11px Arial,sans-serif;color:#bbc7ac;align-self:center}.journal-room .hunt-list{margin-top:5px}
@media(min-width:1700px){.room-scene{width:100%}.room-panorama{height:44vw;max-height:860px}.room-lantern-toggle{top:calc(min(44vw,860px) - 82px)}}
@media(max-width:700px){
 .room-panorama{height:470px}.room-scene{width:940px;min-width:940px}.room-lantern-toggle{top:388px;min-height:58px;font-size:18px}
 .room-exploration .room-breadcrumb{top:15px;left:16px;right:16px;gap:14px}.room-breadcrumb>span{font-size:9px;max-width:120px;text-align:right}
 .room-explore-bar{padding:13px 16px;gap:14px}.room-hunt-invite{font-size:15px}.room-explore-bar .text-button{font-size:10px}
 .room-exploration .lantern-help{padding:10px 16px;min-height:54px;max-width:none;font-size:10px}
 .expanded-room .room-content{padding:35px 0 42px;width:calc(100% - 44px);margin:auto}.expanded-room .room-content h1{font-size:45px}
 .room-title-block{padding-top:34px;width:calc(100% - 44px)}.room-title-block h1{font-size:45px}.room-title-block>p:last-child{font-size:18px}
 .raven-shore{left:67.8%;top:24%}.raven-woods{left:18%;top:72%}
 .spooky-widget{min-width:166px;padding-right:12px;gap:5px;min-height:60px}.spooky-widget img{width:42px;height:46px}.spooky-widget strong{font-size:14px}.spooky-widget [data-room-count]{font-size:9px}.spooky-widget .hunt-count{font-size:8px}.spooky-widget strong{display:block}
}
@media(prefers-reduced-motion:reduce){.old-poster,.poster-wall{transition:none}}

.lantern-props{position:absolute;left:0;top:0;width:var(--scene-width);height:var(--scene-height);transform:translate3d(calc(var(--lantern-radius) - var(--lantern-x)),calc(var(--lantern-radius) - var(--lantern-y)),0)}.lantern-props .poster-wall{filter:brightness(.9) saturate(.76)}
.lantern-props .old-poster img{position:static;width:100%;height:100%;max-width:100%;transform:none;filter:none;object-fit:contain;will-change:auto}
