/* D2 SMARTNOTIFY LIVE BELL V4 */

.d2-bell-host{
  position:relative !important;
  overflow:visible !important;
}

.d2-bell-badge{
  position:absolute !important;
  z-index:999999 !important;
  top:-7px !important;
  right:-8px !important;

  min-width:21px !important;
  height:21px !important;
  padding:0 5px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:999px !important;
  border:2px solid #fff !important;

  background:#ef4444 !important;
  color:#fff !important;

  font:900 10px/1 system-ui,sans-serif !important;

  box-shadow:
    0 3px 12px rgba(239,68,68,.45) !important;

  pointer-events:none !important;
}

.d2-bell-badge[hidden]{
  display:none !important;
}

@keyframes d2BellPulseV4{
  0%{transform:scale(1) rotate(0)}
  15%{transform:scale(1.14) rotate(12deg)}
  30%{transform:scale(1.12) rotate(-10deg)}
  50%{transform:scale(1.1) rotate(8deg)}
  70%{transform:scale(1.05) rotate(-5deg)}
  100%{transform:scale(1) rotate(0)}
}

.d2-bell-pulse{
  animation:d2BellPulseV4 .8s ease !important;
}

/* Fallback bell only appears when no existing bell can be found */
#d2FallbackBell{
  position:fixed !important;
  z-index:999990 !important;

  top:calc(14px + env(safe-area-inset-top)) !important;
  right:14px !important;

  width:48px !important;
  height:48px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  border-radius:16px !important;
  border:1px solid rgba(8,123,117,.14) !important;

  background:rgba(255,255,255,.97) !important;
  color:#102a2e !important;

  text-decoration:none !important;
  font-size:23px !important;

  box-shadow:
    0 10px 30px rgba(15,23,42,.15) !important;

  backdrop-filter:blur(15px) !important;
}

#d2FallbackBell[hidden]{
  display:none !important;
}
