/**
 * star-rating.css — Yildiz puanlama stili (Apple HIG)
 *
 * 1-3 yildiz satir gorunumu, pozitif/negatif renklendirme,
 * hover animasyonlari, readonly durumu.
 */

.star-rating {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

/* Kriter satiri */
.star-rating__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-sm) var(--space-md);
  border-radius: var(--radius-md);
  background: var(--color-bg-primary);
  transition: background-color var(--transition-fast);
}

.star-rating__row:hover {
  background-color: var(--color-bg-secondary);
}

/* Negatif kriter satiri: hafif kirmizimsi arka plan */
.star-rating__row--negative {
  background: rgba(255, 59, 48, 0.04);
}

.star-rating__row--negative:hover {
  background: rgba(255, 59, 48, 0.08);
}

/* Label */
.star-rating__label-wrap {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.star-rating__label {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-primary);
}

.star-rating__negative-hint {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: var(--font-size-xs);
  color: var(--color-error);
  font-weight: var(--font-weight-medium);
}

/* Yildizlar */
.star-rating__stars {
  display: flex;
  gap: var(--space-xs);
}

.star-rating__star {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  color: var(--color-text-tertiary);
  cursor: pointer;
  transition: color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);
  background: none;
  border: none;
  padding: 0;
}

.star-rating__star:hover:not([disabled]) {
  color: var(--color-brand-primary);
  background-color: var(--color-brand-light);
  transform: scale(1.15);
}

/* Dolu yildiz — pozitif (mavi) */
.star-rating__star--filled {
  color: var(--color-brand-primary);
}

.star-rating__star--filled:hover:not([disabled]) {
  color: var(--color-brand-primary);
}

/* Dolu yildiz — negatif (kirmizi tonu) */
.star-rating__star--filled-negative {
  color: var(--color-error);
}

.star-rating__star--filled-negative:hover:not([disabled]) {
  color: var(--color-error);
  background-color: var(--color-error-bg);
}

/* Readonly durumu */
.star-rating__star--readonly {
  cursor: default;
  pointer-events: none;
}

/* ─── Result gorünümü ─── */
.star-rating--result {
  gap: var(--space-xs);
}

.star-rating__result-row {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: var(--space-xs) var(--space-md);
  border-radius: var(--radius-sm);
}

.star-rating__result-row .star-rating__label {
  flex: 1;
  font-size: var(--font-size-sm);
}

.star-rating__result-stars {
  display: flex;
  gap: 2px;
}

.star-rating__result-stars .star-rating__star {
  width: 24px;
  height: 24px;
}

.star-rating__result-avg {
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-medium);
  color: var(--color-text-secondary);
  min-width: 52px;
  text-align: right;
}

.star-rating__result-avg--negative {
  color: var(--color-error);
}

.star-rating__result-summary {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: var(--space-sm) var(--space-md);
  border-top: 1px solid var(--color-border-light);
  margin-top: var(--space-xs);
}

.star-rating__result-count {
  font-size: var(--font-size-xs);
  color: var(--color-text-tertiary);
}

/* Responsive */
@media (max-width: 480px) {
  .star-rating__row {
    padding: var(--space-sm);
  }

  .star-rating__star {
    width: 28px;
    height: 28px;
  }
}
