.club-birthdays {
  margin: 18px 0;
  padding: 18px;
  border: 1px solid rgba(255, 183, 0, .35);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 247, 218, .96), #fff);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
}

.club-birthdays-title {
  margin: 0 0 4px;
  font-size: 1.25rem;
}

.club-birthdays-sub {
  margin: 0 0 14px;
  color: #667085;
  font-size: .88rem;
}

.club-birthday-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  border-top: 1px solid rgba(0, 0, 0, .07);
}

.club-birthday-card:first-of-type {
  border-top: 0;
}

.club-birthday-copy {
  min-width: 0;
}

.club-birthday-name {
  font-weight: 900;
  font-size: 1.05rem;
}

.club-birthday-age {
  font-size: .86rem;
  color: #667085;
  margin-top: 2px;
}

.club-birthday-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.club-birthday-count {
  font-weight: 800;
  white-space: nowrap;
}

.club-birthday-btn {
  border: 0;
  border-radius: 999px;
  padding: 11px 16px;
  background: #111827;
  color: #fff;
  font-weight: 850;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(17, 24, 39, .18);
  transition: transform .1s ease;
}

.club-birthday-btn:active {
  transform: scale(.96);
}

.birthday-particle {
  position: absolute;
  z-index: 999999;
  pointer-events: none;
  font-size: 24px;
  animation: rncBirthdayPop 1.45s cubic-bezier(.1, .7, .1, 1) forwards;
}

@keyframes rncBirthdayPop {
  from {
    transform: translate(0, 0) rotate(0);
    opacity: 1;
  }

  to {
    transform: translate(var(--x), var(--y)) rotate(var(--r));
    opacity: 0;
  }
}

@media (max-width: 650px) {
  .club-birthday-card {
    align-items: flex-start;
    flex-direction: column;
  }

  .club-birthday-actions {
    justify-content: flex-start;
  }

  .club-birthday-btn {
    width: 100%;
  }
}