.scenery-clouds, .scenery-transient { position: absolute; inset: 0; pointer-events: none !important; overflow: hidden; }
.scenery-clouds { z-index: -1; }
.scenery-clouds[hidden] { display: none; }
.scenery-clouds i { position: absolute; left: -30%; width: 27%; height: 4%; background: #fff3d3; opacity: .13; clip-path: polygon(0 65%, 8% 60%, 12% 25%, 20% 17%, 27% 26%, 35% 5%, 44% 0, 53% 30%, 60% 17%, 69% 24%, 74% 52%, 89% 60%, 100% 85%, 0 100%); animation: cloud-current 48s linear infinite; }
.scenery-clouds i:nth-child(1) { top: 13%; animation-delay: -16s; }
.scenery-clouds i:nth-child(2) { top: 43%; width: 35%; animation-duration: 63s; animation-delay: -44s; opacity: .08; }
.scenery-clouds i:nth-child(3) { top: 76%; animation-duration: 55s; animation-delay: -31s; }
@keyframes cloud-current { to { transform: translateX(510%); } }
.scenery-location { position: absolute; pointer-events: none !important; }
.scenery-location svg { display: block; width: 100%; height: 100%; overflow: visible; }
.scenery-crystal-flash { fill: #fffbe5; opacity: .15; animation: crystal-refraction 4.2s ease-in-out infinite; transform-origin: 50px 24px; }
.scenery-crystal-edge { stroke: #a2f7ff; stroke-width: .7; fill: none; }
@keyframes crystal-refraction { 0%, 15%, 100% { opacity: 0; transform: translate(-2px,-1px); } 42% { opacity: .65; } 70% { opacity: 0; transform: translate(2px,1px); } }
.scenery-sun-orbit { fill: none; stroke: #f2b632; stroke-width: 1; stroke-linecap: square; transform-origin: 50px 35px; opacity: .4; animation: sun-carving 15s linear infinite; }
@keyframes sun-carving { 0% { transform: rotate(0); opacity: .2; } 50% { opacity: .65; } 100% { transform: rotate(360deg); opacity: .2; } }
.scenery-water-body { fill: #9ce1dc; opacity: .62; }
.scenery-water-current { fill: none; stroke: #fff3d3; stroke-width: .65; stroke-dasharray: 4 5 2 7; animation: cliff-water .75s linear infinite; }
.scenery-water-mist { fill: none; stroke: #c9f3e7; stroke-width: .55; opacity: .6; transform-origin: 79px 89px; animation: cliff-mist 1.5s ease-out infinite; }
@keyframes cliff-water { to { stroke-dashoffset: -18; } }
@keyframes cliff-mist { from { transform: scale(.3); opacity: .7; } to { transform: scale(1.4); opacity: 0; } }
.scenery-filter-ghost { position: absolute; object-fit: contain; padding: 12px; pointer-events: none; }
.scenery-recipe-guide { position: absolute; inset: 0; width: 100%; height: 100%; overflow: hidden; }
.scenery-recipe-guide path { fill: none; stroke: #f2b632; stroke-width: 2; stroke-dasharray: 1; opacity: .65; }
.scenery-recipe-materials { position: absolute; display: flex; align-items: center; width: 46px; height: 30px; }
.scenery-recipe-materials img { width: 20px; height: 24px; object-fit: contain; margin-right: -7px; }
.scenery-paused .scenery-clouds i, .scenery-paused .scenery-location * { animation-play-state: paused !important; }
@media (prefers-reduced-motion: reduce) {
  .scenery-clouds i, .scenery-location * { animation: none !important; }
  .scenery-crystal-flash { opacity: .12; }
  .scenery-sun-orbit { opacity: .3; }
  .scenery-recipe-guide { display: none; }
}
