/**
 * Animated Text Reveal Widget Styles
 * Creates an animated background clipped to text effect
 */

.wml-animated-text-reveal {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.wml-atr-text {
    margin: 0;
    padding: 0;
    color: var(--wml-atr-fallback-color, white);
    background-image: var(--wml-atr-bg-image);
    background-size: var(--wml-atr-bg-size, auto 200%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-repeat: repeat;
}

/* Top to Bottom Animation */
.wml-atr-anim-toptobottom .wml-atr-text {
    animation: wml-atr-shine-ttb var(--wml-atr-duration, 20s) linear infinite;
}

@keyframes wml-atr-shine-ttb {
    from {
        background-position: center 0;
    }

    to {
        background-position: center 200%;
    }
}

/* Bottom to Top Animation */
.wml-atr-anim-bottomtotop .wml-atr-text {
    animation: wml-atr-shine-btt var(--wml-atr-duration, 20s) linear infinite;
}

@keyframes wml-atr-shine-btt {
    from {
        background-position: center 200%;
    }

    to {
        background-position: center 0;
    }
}

/* Left to Right Animation */
.wml-atr-anim-lefttoright .wml-atr-text {
    animation: wml-atr-shine-ltr var(--wml-atr-duration, 20s) linear infinite;
}

@keyframes wml-atr-shine-ltr {
    from {
        background-position: 0 center;
    }

    to {
        background-position: 200% center;
    }
}

/* Right to Left Animation */
.wml-atr-anim-righttoleft .wml-atr-text {
    animation: wml-atr-shine-rtl var(--wml-atr-duration, 20s) linear infinite;
}

@keyframes wml-atr-shine-rtl {
    from {
        background-position: 200% center;
    }

    to {
        background-position: 0 center;
    }
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    .wml-atr-text {
        animation: none !important;
    }
}