/* 會員icon上的星星符號  */
.btn-item:hover .gift-badge {
    opacity: 0 !important;
    transform: scale(0.4) rotate(30deg) !important;
    animation-play-state: paused;
}

.gift-badge {
    position: absolute;
    width: 17px;
    height: 17px;
    top: -3px;
    right: -6px;
    pointer-events: none;
    animation: starTwinkle 3.5s ease-in-out infinite;
    transform-origin: center;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.gift-badge-nav {
    top: 8px;
    right: calc(50% - 28px);
}

@keyframes starTwinkle {
    0% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }

    8% {
        opacity: 0.2;
        transform: scale(0.7) rotate(-25deg);
    }

    18% {
        opacity: 1;
        transform: scale(1.25) rotate(18deg);
    }

    28% {
        opacity: 0.5;
        transform: scale(0.85) rotate(-10deg);
    }

    38% {
        opacity: 1;
        transform: scale(1.1) rotate(5deg);
    }

    43% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }

    100% {
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}

/* icon Tooltip  */
.user-tooltip {
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%) translateY(4px);
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 5px 10px;
  font-size: 0.9rem;
  white-space: nowrap;
  color: #333;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
  z-index: 100;
}

.user-tooltip::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-bottom-color: #ddd;
  border-top: none;
}

.user-tooltip::after {
  content: '';
  position: absolute;
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-bottom-color: #fff;
  border-top: none;
}

.btn-item:hover .user-tooltip {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}