/* Frontend styles */
#ta-wa-buttons-root { position: fixed; z-index: 9999; }
.ta-wa-stack { position: fixed; display:flex; flex-direction: column; align-items: center; }
.ta-wa-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    border: none;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(0,0,0,0.15);
    transition: transform .15s ease, box-shadow .15s ease, opacity .2s ease;
    will-change: transform;
}
.ta-wa-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,0.2); }

.ta-wa-btn .ta-wa-icon { display: inline-flex; width: 1em; height: 1em; }
.ta-wa-btn .ta-wa-label { margin-left: 8px; font-weight: 600; letter-spacing: .2px; }

/* Shapes */
.ta-shape-circle { border-radius: 9999px; }
.ta-shape-rounded { border-radius: 14px; padding: 0 14px; }
.ta-shape-square { border-radius: 8px; padding: 0 12px; }

/* Animations */
@keyframes ta-pulse { 0%{transform:scale(1)}50%{transform:scale(1.08)}100%{transform:scale(1)} }
@keyframes ta-bounce { 0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)} }
@keyframes ta-wobble { 0%,100%{transform:rotate(0)}25%{transform:rotate(3deg)}75%{transform:rotate(-3deg)} }
@keyframes ta-shake { 0%,100%{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)} }
@keyframes ta-vibrate { 0%,100%{transform:translate(0,0)}20%{transform:translate(-1px,1px)}40%{transform:translate(1px,-1px)}60%{transform:translate(-1px,-1px)}80%{transform:translate(1px,1px)} }
@keyframes ta-swing { 20%{transform:rotate(15deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}100%{transform:rotate(0)} }
@keyframes ta-tada { 0%{transform:scale(1)}10%,20%{transform:scale(.9) rotate(-3deg)}30%,50%,70%,90%{transform:scale(1.1) rotate(3deg)}40%,60%,80%{transform:scale(1.1) rotate(-3deg)}100%{transform:scale(1) rotate(0)} }
@keyframes ta-heartbeat { 0%{transform:scale(1)}14%{transform:scale(1.2)}28%{transform:scale(1)}42%{transform:scale(1.2)}70%{transform:scale(1)} }
@keyframes ta-blink { 0%,100%{opacity:1}50%{opacity:.6} }
@keyframes ta-rotate { 0%{transform:rotate(0)}100%{transform:rotate(360deg)} }

.ta-anim-pulse { animation-name: ta-pulse; animation-iteration-count: infinite; }
.ta-anim-bounce { animation-name: ta-bounce; animation-iteration-count: infinite; }
.ta-anim-wobble { animation-name: ta-wobble; animation-iteration-count: infinite; }
.ta-anim-shake { animation-name: ta-shake; animation-iteration-count: infinite; }
.ta-anim-vibrate { animation-name: ta-vibrate; animation-iteration-count: infinite; }
.ta-anim-swing { animation-name: ta-swing; animation-iteration-count: infinite; transform-origin: top center; }
.ta-anim-tada { animation-name: ta-tada; animation-iteration-count: infinite; }
.ta-anim-heartbeat { animation-name: ta-heartbeat; animation-iteration-count: infinite; }
.ta-anim-blink { animation-name: ta-blink; animation-iteration-count: infinite; }
.ta-anim-rotate { animation-name: ta-rotate; animation-iteration-count: infinite; }

