/* Chat button life: pulse ring, a small "hello" wave, label slides in.
   Same motion as the Papatoetoe site (public/papatoetoe/site.css). Stops while the
   chat is open and for anyone who has asked their device for reduced motion.
   /assets/css is cached immutable: change this file by making chat-anim.2.css. */
@keyframes gk-ring {
  0%   { box-shadow: 0 0 0 0 rgba(124,191,42,.6); }
  70%  { box-shadow: 0 0 0 16px rgba(124,191,42,0); }
  100% { box-shadow: 0 0 0 0 rgba(124,191,42,0); }
}
@keyframes gk-wave {
  0%, 82%, 100% { transform: rotate(0); }
  85% { transform: rotate(-12deg); }
  88% { transform: rotate(10deg); }
  91% { transform: rotate(-7deg); }
  94% { transform: rotate(4deg); }
  97% { transform: rotate(0); }
}
@keyframes gk-label-in {
  from { opacity: 0; transform: translate(12px, -50%); }
  to   { opacity: 1; transform: translate(0, -50%); }
}
@media (prefers-reduced-motion: no-preference) {
  #chat-toggle:not(.is-open) #chat-toggle-avatar {
    animation: gk-ring 2.6s ease-out 1.5s infinite, gk-wave 8s ease-in-out 3s infinite;
    transform-origin: 50% 90%;
  }
  #chat-toggle:not(.is-open) #chat-badge {
    animation: gk-label-in .5s cubic-bezier(.2,.8,.2,1) 1s backwards;
  }
}
