/* Scene furniture is part of the actor rig, not duplicated in the backdrop. */
.rt-card .ritual-scene{position:relative;isolation:isolate;height:min(40dvh,330px);min-height:205px;aspect-ratio:2/3;max-width:100%;margin:10px auto;overflow:hidden;border:1px solid #d8b365;border-radius:16px;background:#3b2415 center/cover no-repeat;box-shadow:inset 0 -30px 32px #180b0540;touch-action:pan-y}
.rt-card .ritual-scene.bell-scene{background-image:url('/assets/art/scenes/temple-bell-interior-v1.webp')}
.rt-card .ritual-scene.wheel-scene{background-image:url('/assets/art/scenes/temple-wheel-corridor-v1.webp');touch-action:pan-y}
.rt-card .ritual-scene.fortune-scene{background-image:url('/assets/art/scenes/temple-fortune-alcove-v1.webp')}
.ritual-scene .ritual-person{position:absolute;left:7%;bottom:10%;width:86%;height:52%;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 3px 3px #24110570);transform-origin:50% 95%;pointer-events:none}
.ritual-scene .ritual-person.working{animation:ritual-work 1.1s ease-in-out infinite}
.ritual-scene .ritual-person.strike{animation:ritual-strike .85s ease-in-out}
.ritual-scene .ritual-person.shaking{animation:ritual-shake .24s ease-in-out infinite}
@keyframes ritual-work{0%,100%{transform:rotate(-.7deg)}50%{transform:rotate(.7deg)}}
@keyframes ritual-strike{0%,100%{transform:rotate(0)}35%{transform:rotate(2deg)}60%{transform:rotate(-1deg)}}
@keyframes ritual-shake{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
.ritual-scene .ritual-caption{position:absolute;left:8px;right:8px;bottom:7px;padding:5px 7px;border-radius:8px;background:#24140edb;color:#fff3d2;font:700 11px/1.4 Nunito,system-ui,sans-serif;text-align:center;pointer-events:none}
.ritual-scene .ritual-target{position:absolute;inset:32% 4% 9% 4%;z-index:3;cursor:grab;touch-action:none;border-radius:15px}
.ritual-scene .ritual-target:active{cursor:grabbing}
.ritual-scene .ritual-target:focus-visible{outline:3px solid #ffd25e;outline-offset:-3px}
.rt-card .wheel-scene .wh-cyl{position:absolute;left:56%;bottom:31%;width:33%;height:20%;box-sizing:border-box;z-index:2;pointer-events:none;border-width:1px;border-radius:8px;background-size:90px 100%;box-shadow:inset 10px 0 12px #0005,inset -10px 0 12px #0005}
.rt-card .wheel-scene .wh-top{display:none}.rt-card .wheel-scene .wh-cyl::before,.rt-card .wheel-scene .wh-cyl::after{height:5px;left:-3px;right:-3px;border-width:1px}.rt-card .wheel-scene .wh-cyl::before{top:-4px}.rt-card .wheel-scene .wh-cyl::after{bottom:-4px}
.rt-card .wheel-scene .wh-pole{display:none}
.wheel-scene::after{content:'';position:absolute;left:52%;bottom:19%;width:37%;height:29%;border-radius:45%;background:linear-gradient(100deg,transparent 10%,#ffe3a32e 30%,transparent 50%);background-size:200% 100%;pointer-events:none;opacity:0}
.wheel-scene.spinning::after{opacity:1;animation:ritual-wheel .7s linear infinite}
@keyframes ritual-wheel{to{background-position:200% 0}}
.rt-card .fortune-scene .ritual-person{width:59%;height:40%;left:0;bottom:10%}
.ar[data-ritual=bell] .bg{background-position:center}
.ar .ritual-bell-rig{width:74%;height:50%!important;left:50%!important;top:82%!important;transform:translate(-50%,-100%)}
.ar .ritual-bell-rig img{width:100%;height:100%;object-fit:contain;object-position:50% 100%}
.ar .ritual-bell-rig.strike img{animation:ritual-strike .85s ease-in-out}
@media(max-height:650px){.rt-card .ritual-scene{height:31dvh;min-height:160px}.rt-card .sub{font-size:12px}}
@media(prefers-reduced-motion:reduce){.ritual-scene *,.ritual-scene::after,.ar .ritual-bell-rig img{animation:none!important}}
.rm .ritual-scene *,.rm .ritual-scene::after,.rm .ar .ritual-bell-rig img{animation:none!important}
