.pretpot-special-text-widget {
    position: relative;
    width: 100%;
    /* REMOVED overflow: hidden to prevent trimming */
}

.pretpot-special-text {
    display: block;
    width: 100%;
    margin: 0;
    /* Inherit all Elementor typography properties */
}

/* Animation Items */
.pretpot-line,
.pretpot-word,
.pretpot-letter {
    display: inline-block;
    will-change: transform, opacity, color;
    backface-visibility: hidden;
    vertical-align: baseline; /* FIX: prevents descender trimming */
}

.pretpot-line {
    width: 100%;
}

.pretpot-letter {
    white-space: pre; /* Preserve letter spacing */
}

/* Initial State */
.pretpot-anim-item {
    opacity: 0;
    transform: translateY(var(--y-offset, 30px));
    color: var(--start-color, inherit);
}

/* Active Animation State */
.pretpot-anim-active .pretpot-anim-item {
    animation: pretpotReveal var(--duration, 0.8s) var(--ease, ease-out) forwards;
    animation-delay: var(--delay, 0s);
}

/* Unified Keyframes - always ends visible */
@keyframes pretpotReveal {
    from {
        opacity: 0;
        transform: translateY(var(--y-offset, 30px));
        color: var(--start-color, inherit);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        color: var(--end-color, inherit);
    }
}

/* Click Trigger Button */
.pretpot-text-trigger {
    margin-bottom: 20px;
    padding: 12px 24px;
    background: #333;
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    transition: opacity 0.3s ease;
}

.pretpot-text-trigger:hover {
    opacity: 0.8;
}

/* Editor Preview - show text normally */
.elementor-editor-active .pretpot-special-text-widget .pretpot-anim-item {
    opacity: 1;
    transform: none;
    animation: none;
}