/* Shared invitation motion layer. Themes keep their own visual identity. */
[data-temuva-reveal] {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
    transition: opacity var(--temuva-motion-duration, 720ms) var(--temuva-motion-ease, cubic-bezier(.22,.61,.36,1)),
        transform var(--temuva-motion-duration, 720ms) var(--temuva-motion-ease, cubic-bezier(.22,.61,.36,1));
    transition-delay: var(--temuva-motion-delay, 0ms);
}

[data-temuva-reveal="soft-pop"] { transform: scale(.96); }
[data-temuva-reveal="from-left"] { transform: translate3d(-20px, 0, 0); }
[data-temuva-reveal="from-right"] { transform: translate3d(20px, 0, 0); }
[data-temuva-reveal="footer"] { transform: translate3d(0, 26px, 0) scale(.98); }
[data-temuva-reveal].is-visible {
    opacity: 1;
    transform: none;
}

[data-temuva-stagger] > [data-temuva-item] {
    --temuva-motion-delay: calc(var(--temuva-item-index, 0) * 70ms);
}

@media (prefers-reduced-motion: reduce) {
    [data-temuva-reveal],
    [data-temuva-stagger] > [data-temuva-item] {
        opacity: 1;
        transform: none;
        transition: none;
        transition-delay: 0ms;
    }
}
