/* The Lantern Wood: a second trail, a small atlas, and meaningful world changes. */
.rootway-object,.lantern-nest{position:absolute;display:none;pointer-events:none;z-index:4}
#world[data-realm=wood] .rootway-object,#world[data-realm=wood] .lantern-nest{display:block}
.rootway-object{filter:drop-shadow(0 8px 7px #041c2b90)}
.rootway-object img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform-origin:50% 100%;transition:transform 1.8s ease}.rootway-object .root-left{clip-path:inset(0 50% 0 0)}.rootway-object .root-right{clip-path:inset(0 0 0 50%)}
.rootway-object .root-moss{stroke:#778770;stroke-width:9;opacity:.8}
#world[data-path-open=true] .root-left{transform:translateX(-90px) rotate(-26deg)}
#world[data-path-open=true] .root-right{transform:translateX(90px) rotate(26deg)}
#world[data-path-open=true] .root-moss{opacity:.2}
#world[data-path-manner=slowly] .rootway-object img{transition-duration:4s}
#world[data-path-quality=quiet] .rootway-object{filter:drop-shadow(0 0 9px #b5a3d18c)}
.path-spark{position:absolute;inset:55% -15% 0;background:radial-gradient(ellipse,#d2dab73d,transparent 66%);opacity:0;transition:opacity 1.5s}
#world[data-path-open=true] .path-spark{opacity:1}
.lantern-nest{opacity:.2;transition:opacity 1.5s}
.lantern-nest i{position:absolute;left:var(--x);top:var(--y);width:22px;height:34px;border:2px solid #7a7258;border-radius:6px 6px 9px 9px;background:linear-gradient(90deg,#303f3b,#59604a,#303f3b);transform:translate(-50%,-50%)}
.lantern-nest i:before{content:'';position:absolute;left:5px;right:5px;top:7px;bottom:6px;border-radius:8px;background:#4f5950}
.lantern-nest i:after{content:'';position:absolute;left:5px;top:-9px;width:8px;height:8px;border:2px solid #8b805e;border-radius:50%}
#world[data-nest-awake=true] .lantern-nest{opacity:1}
#world[data-nest-awake=true] .lantern-nest i{background:linear-gradient(90deg,#9d793d,#ffe09a,#aa7b3d);box-shadow:0 0 25px #f8d89499;animation:lanternDrift 7s ease-in-out infinite alternate;animation-delay:var(--delay)}
#world[data-nest-awake=true] .lantern-nest i:before{background:#fff0ba;box-shadow:0 0 13px #ffde8f}
#world[data-haven-open=true] .lantern-nest i{animation-name:lanternWelcome;animation-duration:8s}
#world[data-realm=wood] .moon-object{opacity:.35;filter:brightness(.7);z-index:-2}
#world[data-realm=wood] .flower-object{opacity:1!important}
#world[data-realm=wood] .gate-object{filter:brightness(.8) saturate(.75)}
.gate-object>.wood-door{display:none}
#world[data-realm=wood] .gate-object>.gate-frame,#world[data-realm=wood] .gate-object>.gate-leaf:not(.wood-door){display:none}
#world[data-realm=wood] .gate-object>.wood-door{display:block}
#world[data-realm=wood][data-haven-open=true] .gate-object{filter:brightness(1.15) drop-shadow(0 0 25px #e9cd8859)}
#world[data-realm=wood][data-marsh-water-routed=true] .river-sheen{background-color:#8fddc212;box-shadow:0 0 25px #a6e9cd22}
.panoramic #world[data-travel-kind=leap][data-realm=wood] #worldSpace .mei-actor .actor-art{animation:catLeapTilt 1.75s ease-in-out both}
.at-title.panoramic #worldSpace .bridge-object,.at-title.panoramic #worldSpace .gate-object,.at-title .rootway-object,.at-title .lantern-nest{display:none}
.title-atlas{font:11px system-ui;color:#dfd8bd;background:#112d3970;border:1px solid #d3cfb24d;border-radius:7px;padding:10px 14px;min-height:40px;margin-top:4px}
.title-atlas span{margin-left:12px}
.atlas-dialog{width:min(850px,94vw);padding:27px}
.atlas-intro{color:#c8d7c6;max-width:620px;font-size:13px;line-height:1.7}
.atlas-chapters{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:22px 0}
.atlas-card{padding:0;border:1px solid #bac8a847;border-radius:13px;overflow:hidden;background:#0e2a34;display:flex;flex-direction:column}
.atlas-art{height:146px;background-color:#173844;background-size:cover;background-position:center 62%;position:relative}
.atlas-art:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#0e2a34)}
.atlas-card.garden .atlas-art{background-image:url('assets/adventure/sleeping-valley.webp')}
.atlas-card.wood .atlas-art{background-image:url('assets/adventure/lantern-wood-v14.webp');background-position:55% 70%;background-size:auto 145%}
.atlas-copy{padding:0 20px 19px;display:flex;flex-direction:column;flex:1}
.atlas-copy h3{font:23px Georgia,serif;margin:0 0 9px;color:#eddaa8}
.atlas-copy p{font-size:12px;line-height:1.6;color:#bdcfc0;margin:0 0 13px}
.atlas-copy .atlas-status{font-size:10px;color:#d8c491;letter-spacing:.4px;margin:12px 0}
.atlas-dots{display:flex;gap:9px;margin:4px 0 9px}
.atlas-dots i{width:10px;height:10px;transform:rotate(45deg);border:1px solid #bac8a85e;border-radius:2px}
.atlas-dots i.lit{background:#e8d08d;border-color:#e8d08d;box-shadow:0 0 10px #e8d08d44}
.atlas-copy button{margin-top:auto;text-align:left;font-size:12px;min-height:44px}
.atlas-copy button:disabled{opacity:.55}
.atlas-route{font:10px system-ui;letter-spacing:2px;color:#c7c5a0;margin:0 0 8px;text-transform:uppercase}
@keyframes lanternDrift{to{transform:translate(-50%,calc(-50% - 18px)) rotate(6deg)}}
@keyframes lanternWelcome{to{transform:translate(-50%,calc(-50% - 80px)) rotate(-4deg)}}
@media(max-width:760px){.atlas-chapters{grid-template-columns:1fr}.atlas-art{height:105px}.atlas-copy h3{font-size:21px}.atlas-dialog{padding:20px}.title-atlas{font-size:10px;margin-top:0}}
@media(max-width:360px){.wordmark{gap:5px;font-size:18px}.wordmark>span{font-size:12px}.game-header nav{gap:4px}.icon-button{width:32px;height:36px}}
@media(max-height:750px){.title-atlas{margin-top:0;padding:8px 12px}.title-footnote{margin:12px 0 6px}}
.reduce-motion .lantern-nest i,.reduce-motion .rootway-object img{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.lantern-nest i,.rootway-object img{animation:none!important;transition:none!important}}
/* Crystal Caverns and Skyroot Peaks share the established painted cast and a new atlas route. */
.atlas-card.cavern .atlas-art{background-image:url('assets/trails-v13/cavern-far.webp');background-position:50% 60%}
.atlas-card.peaks .atlas-art{background-image:url('assets/trails-v13/peaks-far.webp');background-position:70% 45%}
#world:is([data-realm=cavern],[data-realm=peaks]) :is(.moon-object,.flower-object,.ground-lantern,.rootway-object,.lantern-nest,.mirror-flower-object,.gate-river-sheen,.river-sheen){display:none!important}
#world:is([data-realm=cavern],[data-realm=peaks]) .bridge-object{display:none}
#world[data-realm=cavern][data-scene-step="15"] .bridge-object{display:block;filter:brightness(.9) saturate(.65) hue-rotate(15deg)}
#world:is([data-realm=cavern],[data-realm=peaks]) .gate-object{display:none;filter:brightness(1.05) saturate(.8)}
#world[data-scene-step="18"] .gate-object,#world[data-scene-step="24"] .gate-object{display:block}
#world[data-realm=cavern] .gate-object>.wood-door,#world[data-realm=peaks] .gate-object>.wood-door{display:none}
#world[data-realm=cavern] .gate-object>.gate-frame,#world[data-realm=cavern] .gate-object>.gate-leaf:not(.wood-door),#world[data-realm=peaks] .gate-object>.gate-frame,#world[data-realm=peaks] .gate-object>.gate-leaf:not(.wood-door){display:block}
body:is([data-chapter=cavern],[data-chapter=peaks]) .quest-tracker{background:linear-gradient(90deg,#102e43c9,transparent);border-radius:12px;padding:12px 16px;margin:-12px -16px}
#world[data-realm=cavern] .wild-stone{filter:hue-rotate(12deg) brightness(.7)}
.trail-wonder .wild-blockers{position:absolute;left:0;top:640px;width:360px;height:260px}
.wild-blockers img{position:absolute;top:0;width:195px;height:260px;filter:brightness(.7) sepia(.3) hue-rotate(140deg);transition:translate 1.4s,rotate 1.4s,filter 1.4s}
.wild-blockers .slab-left{left:0}.wild-blockers .slab-right{left:155px;rotate:8deg}
.wild-blockers span{position:absolute;left:5px;right:5px;top:225px;height:12px;border-radius:50%;background:#bce8ff;filter:blur(8px);opacity:.2;transition:opacity 1.4s}
.trail-wonder[data-open=true] .slab-left{translate:-90px 0;rotate:-25deg;filter:brightness(1.2)}
.trail-wonder[data-open=true] .slab-right{translate:90px 0;rotate:25deg;filter:brightness(1.2)}
.trail-wonder[data-open=true] .wild-blockers span{opacity:1}
.trail-wonder[data-pack=cave-water] .wild-pool{width:380px;left:80px;height:70px;opacity:.2;transition:opacity 1.5s,scale 1.5s;scale:1 .35}
.trail-wonder[data-stream=true][data-pack=cave-water] .wild-pool{opacity:1;scale:1;box-shadow:0 0 40px #bddeff80,inset 0 -8px 12px #063c5acc;animation:trailPool 4s ease-in-out infinite alternate}
.trail-wonder[data-story="17"] .wild-star,.trail-wonder[data-story="18"] .wild-star{filter:grayscale(1) brightness(.45)}
.trail-wonder[data-story="17"][data-star-awake=true] .wild-star,.trail-wonder[data-story="18"][data-star-awake=true] .wild-star{filter:grayscale(1) brightness(1.65) drop-shadow(0 0 22px #ddedff)}
@keyframes trailPool{to{transform:rotate(3deg);filter:brightness(1.15)}}
@media(max-width:760px){body:is([data-chapter=cavern],[data-chapter=peaks]) .quest-tracker{padding:9px 12px;margin:-9px -12px}}
/* Let both dimensions grow, preserving the tree art’s aspect ratio. */
.trail-wonder[data-tree-grown=true] .wild-tree{width:360px;height:430px}
.trail-wonder[data-tree-quality=small] .wild-tree{width:175px;height:240px}
.trail-wonder[data-tree-quality=tall] .wild-tree{width:490px;height:580px}
.trail-wonder[data-pack=roots] .wild-leaf-orbit{transform-origin:200px 0}
.trail-wonder[data-pack=roots] .wild-leaf{filter:brightness(1.25) drop-shadow(0 0 10px #ffe39f)}
@media(min-width:761px){
 .atlas-dialog .atlas-art{height:96px}
 .atlas-dialog .atlas-copy{padding:0 18px 14px}
 .atlas-dialog .atlas-copy h3{font-size:21px;margin-bottom:7px}
 .atlas-dialog .atlas-copy p{margin-bottom:8px}
 .atlas-dialog .atlas-copy .atlas-status{margin:8px 0}
 .atlas-dialog .atlas-dots{margin:2px 0 5px}
 .atlas-dialog .atlas-chapters{margin:16px 0}
}
