/* Module: core/animation.css — Shared keyframes */
@keyframes and-liquid-pulse {

    0%,
    100% {
        opacity: 0.85;
        transform: scale(1);
    }

    50% {
        opacity: 1;
        transform: scale(1.05);
    }
}

@keyframes and-home-notif-pulse {
    0%, 100% { box-shadow: 0 8px 24px -12px rgba(15, 23, 42, 0.12); }
    50% { box-shadow: 0 0 0 3px rgba(251, 191, 36, 0.18), 0 8px 24px -12px rgba(15, 23, 42, 0.12); }
}

@keyframes and-voice-ripple {
    0% { transform: scale(0.6); opacity: 0.7; }
    100% { transform: scale(1.35); opacity: 0; }
}

@keyframes and-voice-pulse-dot {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.45; transform: scale(0.82); }
}

@keyframes and-voice-fade-in {
    from { opacity: 0; transform: translateY(-3px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes and-voice-ask-wave {
    0%, 100% { transform: scaleY(0.45); opacity: 0.55; }
    50% { transform: scaleY(1.35); opacity: 1; }
}

@keyframes and-voice-ask-shell-glow {
    0%, 100% {
        box-shadow:
            0 4px 16px -6px rgba(255, 90, 0, 0.32),
            0 0 0 2px rgba(255, 255, 255, 0.28),
            inset 0 1px 0 rgba(255, 255, 255, 0.22);
    }
    50% {
        box-shadow:
            0 6px 18px -6px rgba(255, 90, 0, 0.4),
            0 0 0 3px rgba(255, 255, 255, 0.34),
            inset 0 1px 0 rgba(255, 255, 255, 0.28);
    }
}

@keyframes and-voice-ask-mic-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.06); }
}

@keyframes and-voice-ask-ripple {
    0% { transform: scale(0.7); opacity: 0.8; }
    100% { transform: scale(1.45); opacity: 0; }
}

@keyframes and-voice-ask-dot {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.8); }
}

@keyframes and-ask-island-breathe {

    0%,
    100% {
        box-shadow:
            0 4px 16px -6px rgba(255, 90, 0, 0.3),
            0 0 0 2px rgba(255, 255, 255, 0.24),
            inset 0 1px 0 rgba(255, 255, 255, 0.22);
    }

    50% {
        box-shadow:
            0 6px 18px -6px rgba(255, 90, 0, 0.38),
            0 0 0 3px rgba(255, 255, 255, 0.3),
            inset 0 1px 0 rgba(255, 255, 255, 0.28);
    }
}

@keyframes and-live-pulse {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.5;
        transform: scale(0.85);
    }
}
