.atmosphere{position:absolute;inset:0;pointer-events:none!important;overflow:hidden;z-index:100;isolation:isolate;border-radius:inherit}.atmosphere *{pointer-events:none!important}.scene-grade{position:absolute;inset:0;background:var(--scene-tint,transparent);transition:background 1.5s}.scene-cloud{position:absolute;width:35%;height:8%;top:3%;background:radial-gradient(ellipse,#fff9 0%,#fff4 45%,transparent 70%);filter:blur(8px);animation:cloud-drift 65s ease-in-out infinite alternate}.cloud-one{left:5%}.cloud-two{left:55%;top:7%;animation-delay:-25s;animation-duration:95s;opacity:.6}.scene-water{position:absolute;left:27%;top:14.2%;width:42%;height:5.8%;background:repeating-linear-gradient(177deg,transparent 0 8px,#d9f8ff66 9px,transparent 11px 17px);mask-image:linear-gradient(transparent,#0008,transparent);animation:water-shimmer 6s ease-in-out infinite alternate;opacity:.65}.scene-tree{position:absolute;inset:0;background:url('/hakata-open-plaza.png') 0 0/100% 100%;transform-origin:15% 38%;clip-path:polygon(8% 29%,14% 27%,19% 29%,19% 33%,16% 35%,10% 33%);animation:tree-sway 7s ease-in-out infinite alternate}.tree-right{clip-path:polygon(83% 29%,89% 27%,94% 29%,94% 34%,87% 36%,82% 33%);transform-origin:88% 38%;animation-delay:-3s}.scene-windows{position:absolute;inset:0;width:100%;height:100%;opacity:var(--window-light,0);filter:drop-shadow(0 0 5px #ffc24a);transition:opacity 2s}.scene-pet{position:absolute;width:5%;min-width:28px;left:22%;top:55%;animation:pet-roam 48s linear infinite}.scene-pet svg{width:100%;overflow:visible}.pet-cat{left:70%;top:72%;width:4%;animation-delay:-18s;animation-duration:61s}.pet-body{animation:pet-bob .7s ease-in-out infinite}.pet-leg{animation:pet-step .7s ease-in-out infinite alternate;transform-box:fill-box;transform-origin:top}.pet-leg.other{animation-delay:-.7s}.scene-precipitation{position:absolute;inset:0;display:none;overflow:hidden}.scene-precipitation i{position:absolute;left:var(--x);top:-10%;animation:precip-fall var(--duration) linear var(--delay) infinite}.scene-lightning{position:absolute;inset:0;background:#d5e4ff;opacity:0}
:root[data-scene-time=dawn]{--scene-tint:linear-gradient(#bcb6f136,#ffdbac26);--window-light:.3}:root[data-scene-time=dusk]{--scene-tint:linear-gradient(#66366350,#ef9c443b 40%,#5e415138);--window-light:.7}:root[data-scene-time=night]{--scene-tint:linear-gradient(#09183ec9,#11284baf);--window-light:1}:root[data-scene-time=night] .scene-cloud{opacity:.12}:root[data-scene-time=night] .scene-tree{filter:brightness(.35) saturate(.7)}:root[data-scene-time=dusk] .scene-tree{filter:sepia(.25) brightness(.8)}
:root[data-scene-weather=rain] .scene-precipitation,:root[data-scene-weather=storm] .scene-precipitation,:root[data-scene-weather=snow] .scene-precipitation{display:block}:root[data-scene-weather=rain] .scene-precipitation i,:root[data-scene-weather=storm] .scene-precipitation i{width:1px;height:22px;background:linear-gradient(transparent,#d1e8f9a0);animation-duration:1.1s;transform:rotate(12deg)}:root[data-scene-weather=snow] .scene-precipitation i{width:5px;height:5px;border-radius:50%;background:#ffffffe0;box-shadow:0 0 4px #fff6}:root[data-scene-weather=storm] .scene-lightning{animation:distant-lightning 18s ease-in-out infinite}:root[data-scene-weather=rain] .scene-grade,:root[data-scene-weather=storm] .scene-grade{box-shadow:inset 0 0 200px #22395655}
.atmosphere-settings p{font-size:12px;line-height:1.8;color:var(--ui-muted)}.atmosphere-options{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 24px}.atmosphere-options button{padding:12px 16px;min-height:44px;border-radius:14px;background:#e9eddf;color:#245345}.atmosphere-options button[aria-pressed=true]{background:#245345;color:#fff9e8}.venue-caption,.venue-host,.venue-guest,.plaza-cast{z-index:110;position:relative}.venue-host,.venue-guest{position:absolute}
@keyframes cloud-drift{to{transform:translateX(45%)}}@keyframes water-shimmer{to{transform:translateX(10px);opacity:.3}}@keyframes tree-sway{to{transform:rotate(.6deg)}}@keyframes precip-fall{to{translate:-35px 1300px}}@keyframes distant-lightning{0%,85%,100%{opacity:0}88%{opacity:.13}94%{opacity:0}}@keyframes pet-roam{0%{transform:translateX(0) scaleX(1)}45%,48%{transform:translateX(160%) scaleX(1)}50%{transform:translateX(160%) scaleX(-1)}95%,98%{transform:translateX(0) scaleX(-1)}100%{transform:translateX(0) scaleX(1)}}@keyframes pet-bob{50%{transform:translateY(-1px)}}@keyframes pet-step{to{transform:rotate(14deg)}}
:root[data-scene-motion=false] .atmosphere *{animation:none!important}:root[data-scene-motion=false] .scene-precipitation{display:none}@media(prefers-reduced-motion:reduce){.atmosphere *{animation:none!important}.scene-precipitation{display:none!important}}@media(max-width:600px){.scene-precipitation i:nth-child(n+21){display:none}}
.map-stage .resident{z-index:150}.scene-windows g:first-child{opacity:.72}.scene-pet{filter:drop-shadow(0 2px 2px #1b302533)}

.map-stage .resident.walking>.avatar-art{animation:gentle-walk .65s ease-in-out infinite}.map-stage .resident>.avatar-art{transform:scaleX(var(--facing,1))}
