/* Centered round badge + refined animations (v4.1) */
#pbf-badge{
  position: fixed; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 180px; height: 180px; border-radius: 50%;
  background: #d60000; color: #fff; font-weight: 700; font-size: 16px;
  text-align: center; display:flex; align-items:center; justify-content:center;
  padding:18px; z-index:99999; opacity:0; pointer-events:none;
  box-shadow:0 12px 28px rgba(0,0,0,.25); filter: drop-shadow(0 8px 16px rgba(0,0,0,.25));
  will-change: transform, opacity;
}
@media (max-width:480px){ #pbf-badge{ width:150px; height:150px; font-size:15px; } }

/* Entry animations (distinct) */
@keyframes pbf-fade-in {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes pbf-zoom-in {
  0%   { transform: translate(-50%, -50%) scale(.85); opacity: 0; }
  60%  { transform: translate(-50%, -50%) scale(1.08); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1.0);  opacity: 1; }
}
@keyframes pbf-bounce-in {
  0%   { transform: translate(-50%, -58%) scale(.92); opacity: 0; }
  50%  { transform: translate(-50%, -46%) scale(1.05); opacity: 1; }
  70%  { transform: translate(-50%, -52%) scale(0.98); opacity: 1; }
  100% { transform: translate(-50%, -50%) scale(1.0);  opacity: 1; }
}
@keyframes pbf-slide-up {
  0%   { transform: translate(-50%, -35%); opacity: 0; }
  100% { transform: translate(-50%, -50%); opacity: 1; }
}

/* Gentle floating (after entry) */
@keyframes pbf-float {
  0%, 100% { transform: translate(-50%, -50%); }
  50%      { transform: translate(calc(-50% + 0px), calc(-50% - 6px)); }
}

/* Compose entry + float; ensure state persists with 'forwards' */
.anim-fade     { animation: pbf-fade-in 360ms ease-out forwards, pbf-float 4000ms ease-in-out 360ms infinite; }
.anim-zoom     { animation: pbf-zoom-in 420ms ease-out forwards, pbf-float 4000ms ease-in-out 420ms infinite; }
.anim-bounce   { animation: pbf-bounce-in 520ms cubic-bezier(.34,1.56,.64,1) forwards, pbf-float 4000ms ease-in-out 520ms infinite; }
.anim-slide-up { animation: pbf-slide-up 380ms ease-out forwards, pbf-float 4000ms ease-in-out 380ms infinite; }
