

/* some quando zero */
.ball-notice[data-count="0"] { display: none; }

/* aplica o pulso quando existe notificaÃ§Ã£o */
.ball-notice:not([data-count="0"]) {
    animation: badgePulse 1.2s ease-in-out infinite;
    transform-origin: center;
    will-change: transform, box-shadow;
}

/* Efeito de pulso */
@keyframes badgePulse {
    0% {
        transform: scale(1);
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35),
                    0 0 0 0 rgb(182 30 36 / 70%);
    }
    50% {
        transform: scale(1.15);
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35),
                    0 0 0 8px rgb(244 163 144 / 25%);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35),
                    0 0 0 0 rgba(236, 27, 36, 0);
    }
}

/* Brilho interno */
.ball-notice::before {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 6px;
    height: 6px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    animation: shine 1.5s ease-in-out infinite;
    pointer-events: none;
}

@keyframes shine {
    0%, 100% { opacity: 0.3; }
    50%      { opacity: 1; }
}

/* Hover (opcional): nÃ£o conflita com a animaÃ§Ã£o */
.ball-notice:hover {
    animation-play-state: paused;
    transform: scale(1.2);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4),
                0 0 0 10px rgba(236, 27, 36, 0.2);
}
