#lions-counter{position:relative;overflow:hidden}
#lions-counter .overlay{position:relative;overflow:hidden}

/* animation d'ambiance discrète */
#lions-counter .overlay::before{
  content:"";
  position:absolute;
  inset:-30%;
  background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.10),transparent 35%),
             radial-gradient(circle at 80% 30%,rgba(255,255,255,.07),transparent 30%),
             radial-gradient(circle at 50% 80%,rgba(255,255,255,.06),transparent 30%);
  animation:lionsAmbientGlow 12s ease-in-out infinite;
  pointer-events:none;
}
@keyframes lionsAmbientGlow{
  0%,100%{transform:scale(1) translate3d(0,0,0);opacity:.75}
  50%{transform:scale(1.06) translate3d(0,-10px,0);opacity:1}
}

/* message d'alerte wow ajouté en JS */
#lions-counter .lions-wow-alert{
  position:absolute;
  top:14px;
  left:50%;
  transform:translateX(-50%) translateY(-12px);
  z-index:5;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(17,24,39,.78);
  color:#fff;
  font-weight:700;
  font-size:clamp(.92rem,1.2vw,1.05rem);
  letter-spacing:.02em;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .28s ease, transform .28s ease;
  pointer-events:none;
  max-width:min(92%, 720px);
  text-align:center;
}
#lions-counter .lions-wow-alert.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}
#lions-counter .lions-wow-alert.goal{background:rgba(22,101,52,.86)}
#lions-counter .lions-wow-alert.milestone{background:rgba(146,64,14,.86)}
#lions-counter .lions-wow-alert.big{background:rgba(91,33,182,.86)}

/* pulse du montant */
#lions-counter #amount.lions-wow-pulse{
  animation:lionsAmountPulse .72s cubic-bezier(.2,.9,.22,1);
}
@keyframes lionsAmountPulse{
  0%{transform:scale(1); filter:drop-shadow(0 0 0 rgba(255,255,255,0))}
  28%{transform:scale(1.08); filter:drop-shadow(0 0 18px rgba(255,255,255,.33))}
  100%{transform:scale(1); filter:drop-shadow(0 0 0 rgba(255,255,255,0))}
}

/* gros don */
#lions-counter .overlay.lions-wow-big-donation{
  animation:lionsBigDonationGlow 1s ease;
}
@keyframes lionsBigDonationGlow{
  0%{box-shadow:0 0 0 rgba(250,204,21,0)}
  15%{box-shadow:0 0 0 3px rgba(250,204,21,.45), 0 0 40px rgba(250,204,21,.35)}
  100%{box-shadow:0 0 0 rgba(250,204,21,0)}
}

/* barre vivante */
#lions-counter .progress-container{position:relative;overflow:hidden}
#lions-counter .progress-container.lions-wow-wave::after{
  content:"";
  position:absolute;
  top:0; left:-22%;
  width:22%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.45), transparent);
  animation:lionsWavePass 1.2s ease;
}
@keyframes lionsWavePass{
  0%{left:-22%}
  100%{left:110%}
}

/* approche de l'objectif */
#lions-counter.lions-near-goal .progress-container{
  box-shadow:0 0 0 2px rgba(250,204,21,.18), 0 0 22px rgba(250,204,21,.25);
}
#lions-counter.lions-near-goal #progress{
  animation:lionsNearGoalPulse 1.6s ease-in-out infinite;
}
@keyframes lionsNearGoalPulse{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.18)}
}

/* objectif atteint */
#lions-counter.lions-goal-reached .overlay{
  box-shadow:0 0 0 2px rgba(34,197,94,.22), 0 0 40px rgba(34,197,94,.22);
}
#lions-counter.lions-goal-reached #amount{
  color:#fde68a;
  text-shadow:0 0 18px rgba(250,204,21,.45);
}

/* surlignage ticker quand activité */
.lions-ticker.lions-wow-active{
  box-shadow:0 0 0 1px rgba(250,204,21,.18), 0 0 22px rgba(250,204,21,.18) inset;
  transition:box-shadow .25s ease;
}
.lions-ticker .lions-item.lions-wow-highlight{
  color:#fde68a;
}

/* couche confettis */
#lions-counter .lions-wow-confetti{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:4;
}

@media (max-width: 768px){
  #lions-counter .lions-wow-alert{
    top:10px;
    padding:8px 12px;
  }
}
