.couponhub-store-rating {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  position: relative;
}

.couponhub-stars-interactive {
  display: inline-flex;
  gap: 4px;
  font-size: 24px;
}

.couponhub-star {
  display: inline-flex;
  cursor: pointer;
  transition: opacity 0.2s ease;
  user-select: none;
}

.couponhub-star .star-fill {
  opacity: 0;
  transition: opacity 0.2s ease;
}

.couponhub-star:hover .star-fill,
.couponhub-star.hover .star-fill,
.couponhub-star.selected .star-fill {
  opacity: 1;
}

.couponhub-star .star-bg {
  transition: opacity 0.2s ease;
}

.couponhub-rating-info {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
}

.couponhub-rating-text {
  font-size: 14px;
  color: #464646;
  white-space: nowrap;
}

.couponhub-rating-label {
  font-size: 11px;
  color: #999;
  font-weight: normal;
  margin-left: 3px;
}

.couponhub-rating-text.couponhub-no-ratings {
  color: #999;
  font-weight: normal;
}

.couponhub-rating-message {
  font-size: 12px;
  min-height: 0;
  padding: 0;
}

.couponhub-rating-message.success {
  color: #28a745;
  font-weight: 600;
}

.couponhub-rating-message.error {
  color: #dc3545;
  font-weight: 600;
}

.couponhub-star.selected {
  opacity: 1 !important;
}

.hover~.couponhub-star:not(.hover) {
  opacity: .6 !important;
}

@media (max-width: 768px) {
  .couponhub-rating-display {
    gap: 8px;
  }

  .couponhub-star-display {
    font-size: 18px;
  }

  .couponhub-rating-input {
    position: static;
    display: block;
    margin-top: 8px;
  }

  .couponhub-stars-interactive {
    font-size: 20px;
  }
}