.music-object-door{position:absolute;z-index:5;padding:0;border:0;background:transparent;transform:translate(-50%,-50%);cursor:pointer;touch-action:manipulation}
.music-object-door:hover{background:transparent;box-shadow:none}
.music-object-door:focus-visible{outline:1px dashed #f4e8a4;outline-offset:3px}
.story-progressed .music-object-door,.transitioning .music-object-door{visibility:hidden;pointer-events:none}
#world{will-change:transform;transform-origin:50% 50%}

.object-door .object-hint{transition-property:opacity,transform,visibility}
#music-hand-door{pointer-events:none}
.music-arm-hit{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.music-arm-hit path{fill:transparent;stroke:none;pointer-events:fill}
.story-progressed .music-arm-hit path,.transitioning .music-arm-hit path{pointer-events:none}
.music-switch-hint{position:absolute;display:flex;align-items:center;gap:7px;width:max-content;white-space:nowrap;background:none;border:0;box-shadow:none;color:#efd7b2;font-family:var(--hand);font-size:clamp(22px,2.65vw,38px);font-weight:400;-webkit-text-stroke:.28px currentColor;text-shadow:0 2px 5px #000c,0 0 12px #0005;opacity:0;transform:translate(-50%,-50%) rotate(-12deg);transform-origin:center;transition:opacity .2s;pointer-events:none}
.music-switch-hint svg{width:.65em;height:.65em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #0009)}
.music-switch-hint .speaker-muted{display:none}
.music-is-muted .speaker-muted{display:block}
.music-is-muted .speaker-waves{display:none}
#music-hand-door:hover .music-switch-hint,#music-hand-door:focus-visible .music-switch-hint{opacity:1;transform:translate(-50%,-50%) rotate(-12deg)}
.firefly-pointer .object-door .object-hint,.firefly-pointer .music-switch-hint{opacity:0!important}

.transitioning #home .object-door,.transitioning #home .music-object-door,.transitioning #home .music-arm-hit path,.transitioning #home .eye-door,.transitioning #home .ambient-hotspot{pointer-events:none!important}
.transitioning .object-hint,.transitioning .music-switch-hint{opacity:0!important;visibility:hidden}
.object-door:hover .object-hint,.object-door:focus-visible .object-hint,.music-object-door:hover .music-switch-hint,.music-object-door:focus-visible .music-switch-hint{transition-delay:.28s}

/* Hit order: the firefly owns window capture, then illustrated doors, eyes, body. */
#home .object-door,#home .music-object-door{z-index:7}
#home .eye-door{z-index:4}
#projects-door{pointer-events:none;border-radius:0}
.tentacle-full-hit{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.tentacle-full-hit path{fill:transparent;stroke:transparent;stroke-linejoin:round;pointer-events:all}
.transitioning .tentacle-full-hit path{pointer-events:none!important}

.story-progressed .tentacle-full-hit path,#projects-door:disabled .tentacle-full-hit path{pointer-events:none!important}

.music-switch-hint>svg{display:none}

/* Warm chalk lettering belongs to the painted room, distinct from the bulbs. */
.object-hint strong,.music-switch-hint{font-size:clamp(24px,2.9vw,42px);font-weight:500;color:#ed9758;-webkit-text-stroke:.42px currentColor;text-shadow:0 2px 4px #211819e8,0 0 7px #21181980}
#music-hand-door:focus-visible{outline:none}
#music-hand-door:focus-visible .music-switch-hint{text-decoration:underline;text-underline-offset:5px}
.music-arm-hit{overflow:visible}
.music-arm-hit path{fill:transparent;stroke:transparent;stroke-linejoin:round;stroke-linecap:round;pointer-events:all}
#music-hand-door:disabled .music-arm-hit path,#music-hand-door[hidden] .music-arm-hit path,.story-progressed .music-arm-hit path,.transitioning .music-arm-hit path{pointer-events:none!important}

.object-door .object-hint{right:auto;width:max-content;line-height:1.1}
