:root{--anim-amp:1}.anim-soft_tilt{animation:soft-tilt 4s ease-in-out infinite}.anim-float_soft{animation:float-soft 3.5s ease-in-out infinite}.anim-gentle_knock{animation:gentle-knock 2.5s ease-in-out infinite}.anim-lamp_nod{animation:lamp-nod 3s ease-in-out infinite;transform-origin:bottom center}.anim-pulse{animation:pulse-soft 2s ease-in-out infinite}.anim-rotate_small{animation:rotate-small 6s ease-in-out infinite}.anim-reveal{animation:reveal-object var(--object-reveal-duration,1.25s) var(--object-reveal-ease,cubic-bezier(.22,1,.36,1)) forwards}.anim-lift_up{animation:lift-up 3s ease-in-out infinite}@keyframes soft-tilt{0%,to{transform:rotate(calc(-2deg * var(--anim-amp, 1)))}50%{transform:rotate(calc(2deg * var(--anim-amp, 1)))}}@keyframes float-soft{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-6px * var(--anim-amp, 1)))}}@keyframes gentle-knock{0%,85%,to{transform:rotate(0)}88%{transform:rotate(calc(-3deg * var(--anim-amp, 1)))}91%{transform:rotate(calc(3deg * var(--anim-amp, 1)))}94%{transform:rotate(calc(-2deg * var(--anim-amp, 1)))}}@keyframes lamp-nod{0%,to{transform:rotate(calc(-4deg * var(--anim-amp, 1)))}50%{transform:rotate(calc(4deg * var(--anim-amp, 1)))}}@keyframes pulse-soft{0%,to{transform:scale(1)}50%{transform:scale(calc(1 + .04 * var(--anim-amp, 1)))}}@keyframes rotate-small{0%,to{transform:rotate(calc(-3deg * var(--anim-amp, 1)))}50%{transform:rotate(calc(3deg * var(--anim-amp, 1)))}}@keyframes reveal-object{0%{opacity:0;transform:translateY(14px) scale(.86);filter:blur(4px)}to{opacity:1;transform:translateY(0) scale(1);filter:none}}@keyframes lift-up{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-8px * var(--anim-amp, 1)))}}@media (prefers-reduced-motion:reduce){.anim-float_soft,.anim-gentle_knock,.anim-lamp_nod,.anim-lift_up,.anim-pulse,.anim-reveal,.anim-rotate_small,.anim-soft_tilt{animation:none}}.anim-rock_solid{animation:none}.anim-breathe{animation:breathe 6s ease-in-out infinite}.anim-drift_side{animation:drift-side 9s ease-in-out infinite}.anim-sway_slow{animation:sway-slow 8s ease-in-out infinite;transform-origin:bottom center}.anim-shimmer{animation:shimmer 5s ease-in-out infinite}.anim-settle{animation:settle 7s ease-in-out infinite;transform-origin:bottom center}.anim-blink_rare{animation:blink-rare 11s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(calc(1 + .015 * var(--anim-amp, 1)))}}@keyframes drift-side{0%,to{transform:translateX(0)}50%{transform:translateX(calc(1.2% * var(--anim-amp, 1)))}}@keyframes sway-slow{0%,to{transform:rotate(calc(-.6deg * var(--anim-amp, 1)))}50%{transform:rotate(calc(.6deg * var(--anim-amp, 1)))}}@keyframes shimmer{0%,to{filter:brightness(1)}50%{filter:brightness(1.08)}}@keyframes settle{0%,86%,to{transform:translateY(0)}92%{transform:translateY(calc(.8% * var(--anim-amp, 1)))}}@keyframes blink-rare{0%,93%,to{opacity:1}95%{opacity:.82}97%{opacity:1}}.play-root{position:relative;width:100%;max-width:var(--stage-max-w,430px);margin:0 auto}.play-status{padding:3rem 1.5rem;text-align:center;color:#cbb78f;font-family:system-ui,sans-serif}.play-status--error{color:#e0a0a0}.play-start-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(8,6,12,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:20;border-radius:inherit}.play-start-overlay__inner{text-align:center;color:#eadfc6;font-family:system-ui,sans-serif;padding:1.5rem}.play-start-overlay__meta{font-size:.95rem;letter-spacing:.03em;margin:0 0 .4rem;opacity:.9}.play-start-overlay__hint{font-size:.8rem;opacity:.7;margin:0 0 1.4rem}.play-start-overlay__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #c9a860;background:linear-gradient(180deg,#d9b878,#b8924c);color:#201603;font-weight:700;font-size:1rem;letter-spacing:.02em;padding:.8rem 1.8rem;border-radius:999px;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.4)}.play-start-overlay__btn:active{transform:translateY(1px)}