/* The apple boughs are a genuine transparent foreground frame over the play square. */
.apple-canopy-v1210{position:absolute;inset:-65px 0 0;z-index:21;overflow:hidden;contain:layout paint;pointer-events:none!important;opacity:0;visibility:hidden;transition:opacity .6s,visibility 0s .6s}
.apple-canopy-v1210 *{pointer-events:none!important;user-select:none}
#journey-viewport[data-stop=glade][data-look=centre]:not([data-transit]):not([data-entry-building])>.apple-canopy-v1210{opacity:1;visibility:visible;transition:opacity .65s,visibility 0s}
.apple-canopy-v1210>.apple-bough-v1210{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;transform:translate3d(calc(var(--bough-base-x,0px) + var(--bough-x,0px)),var(--bough-y,0px),0) rotate(var(--bough-angle,0deg));transform-origin:var(--bough-pivot);transition:transform .7s cubic-bezier(.18,.75,.25,1);filter:drop-shadow(0 5px 7px #33402d33)}
.apple-bough-v1210>.wind-tip{position:absolute;inset:0;width:100%;height:100%;background:none!important;display:block;transform-origin:var(--bough-pivot)}
.apple-bough-left-v1210{--bough-pivot:0% 30%}
.apple-bough-right-v1210{--bough-pivot:100% 31%}
/* Real scenery remains visible through the middle and all interactive UI sits above. */
@media(max-width:600px){.apple-bough-left-v1210{--bough-base-x:3vw}.apple-bough-right-v1210{--bough-base-x:-24vw}.apple-canopy-v1210{inset:-12px 0 0;clip-path:inset(0 0 40% 0)}}
#journey-app[data-motion=still] .apple-bough-v1210{transition:none;transform:translate3d(var(--bough-base-x,0px),0,0)}
@media(prefers-reduced-motion:reduce){.apple-canopy-v1210{transition:none}.apple-bough-v1210{transition:none;transform:translate3d(var(--bough-base-x,0px),0,0)}}
/* Fit lettering on the painted sign faces, not on the awning or carved edges. */
.hall-label-fit-v1210{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 1px;gap:0;font-size:11.3px;line-height:10.5px;letter-spacing:.06px;white-space:nowrap;color:#513425;text-shadow:0 .5px #f7dfaf99}
.hall-label-fit-v1210>span{display:block;line-height:10.5px}
.library-label-fit-v1210{font-size:11.2px;line-height:12px;letter-spacing:.1px;white-space:nowrap;rotate:-2deg;color:#452c20;text-shadow:0 .5px #f0d4a999}
#grove-route-v128>.gate-invitation-v1210{position:relative;min-height:27px;padding:2px 12px 2px 3px;font:400 10.6px/11px "Quest Display",sans-serif;letter-spacing:.05px;white-space:nowrap;text-align:center}
.gate-invitation-v1210 svg{position:absolute;right:3px;top:8px;width:10px;height:11px;stroke:currentColor;stroke-width:1.4;fill:none}
/* Traversal is a single continuous Village -> Grove action. Bridge art is unchanged. */
#journey-viewport{touch-action:pan-y pinch-zoom}
#trail-look-controls{display:none!important}
#journey-viewport[data-transit=outward] .hub-world-v127{opacity:0!important;visibility:visible!important;transition:opacity .45s 1.2s,visibility 0s!important}
#journey-viewport[data-transit=outward] .outside-world{opacity:1!important;visibility:visible!important;pointer-events:none!important;transition:opacity .45s 1.2s!important;--cam-z:2050px}
#journey-viewport[data-stop=trail] .outside-world{transition:opacity .4s,transform .4s!important}
#journey-viewport[data-transit=outward] .scenery-glade{opacity:0!important;transition:opacity .45s 1.2s!important}
#journey-app[data-motion=still] [data-transit=outward] .hub-world-v127,#journey-app[data-motion=still] [data-transit=outward] .outside-world{transition:none!important}
#journey-app[data-motion=still] .outside-world,#journey-app[data-motion=still] .hub-world-v127,#journey-app[data-motion=still] .lane-world-v1210{transition:none!important;animation:none!important}
#outside-world>.trail-foreground.fern-left,#outside-world>.trail-foreground.fern-right{display:none!important}
.wind-native-woods-v1210{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none!important}
.wind-native-woods-v1210>.wind-plant{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;transform:none!important}
.wind-native-woods-v1210 .wind-tip{position:absolute;inset:0;width:100%;height:100%;display:block;background:none!important;pointer-events:none!important}
@media(prefers-reduced-motion:reduce){.outside-world,.hub-world-v127,.lane-world-v1210{transition:none!important;animation:none!important}}
/* Short landscape windows keep the caption beside the play area, not over the pets. */
@media(max-height:540px) and (min-width:601px){#journey-viewport .journey-reading-dock,#journey-viewport:not([data-stop=glade]) .journey-reading-dock{left:18px;translate:none;width:min(260px,38vw);bottom:66px}#journey-viewport .journey-story h1{font-size:1.0625rem;line-height:1.2}}
