.event-scene{--scene-ink:#f3ead6;--scene-accent:#ffbe3d;--scene-soft:#ed857a;--scene-paper:#211727;margin:0;padding:8px 14px 10px;background:var(--scene-paper);border:1px solid var(--card-edge);border-radius:16px}
.scene-art{max-width:340px;margin:auto}
.scene-art svg{display:block;width:100%;height:auto;max-height:154px;fill:none;stroke:var(--scene-ink);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;overflow:hidden}
.scene-art svg *{vector-effect:non-scaling-stroke}
.scene-art svg text{font-family:var(--body);font-weight:600}
.event-scene figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;line-height:1.4;color:var(--muted)}
.event-scene .pill{flex:none;padding:6px 12px;font-size:12px}
.scene-art [class*="ev-"]{transform-box:fill-box;transform-origin:center;animation-duration:4s;animation-iteration-count:infinite;animation-timing-function:ease-in-out}
.ev-pop{animation-name:event-pop}.ev-float{animation-name:event-float}.ev-sway{animation-name:event-sway}.ev-slide{animation-name:event-slide}.ev-spin{animation-name:event-spin}.ev-flip{animation-name:event-flip}.ev-pulse{animation-name:event-pulse}.ev-draw{animation-name:event-draw;stroke-dasharray:700;stroke-dashoffset:0}
@keyframes event-pop{0%,12%{opacity:0;transform:scale(.4)}30%,85%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1)}}
@keyframes event-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes event-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes event-slide{0%,10%{opacity:0;transform:translateX(-25px)}35%,88%{opacity:1;transform:translateX(0)}100%{opacity:0}}
@keyframes event-spin{0%{transform:rotate(-160deg)}60%,100%{transform:rotate(0)}}
@keyframes event-flip{0%,15%{transform:scaleX(.05) translateY(-10px)}35%,85%{transform:scaleX(1) translateY(0)}100%{transform:scaleX(.05)}}
@keyframes event-pulse{0%,100%{opacity:.3}45%,75%{opacity:1}}
@keyframes event-draw{0%{stroke-dashoffset:700}65%,100%{stroke-dashoffset:0}}
.event-scene[data-motion="still"] svg *{animation:none!important}
.event-scene[data-motion="replay"] svg *{animation-iteration-count:1!important}
#game[hidden] .scene-art *{animation-play-state:paused!important}
@media (prefers-reduced-motion:reduce){
  html:not(.full-motion) .event-scene svg *{animation:none!important}
}
