.filter-btn.active {
  background-color: #2C5F2E;
  color: white;
  border-color: #2C5F2E;
}

.faq-answer {
  max-height: 0;
}

.faq-item.active .faq-answer {
  max-height: 500px;
}

.faq-item.active .faq-icon {
  transform: rotate(180deg);
}

.recipe-card img {
  transition: transform 0.5s ease;
}

.recipe-card:hover img {
  transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

input[type="checkbox"].ingredient-checkbox:checked + span {
  text-decoration: line-through;
  color: #5C5C5C;
}

.star-form .star-input {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 4px;
}

.star-form input[type="radio"] {
  display: none;
}

.star-form label {
  font-size: 1.5rem;
  color: #E8E8E2;
  cursor: pointer;
  transition: color 0.15s;
}

.star-form input[type="radio"]:checked ~ label,
.star-form label:hover,
.star-form label:hover ~ label {
  color: #F4A261;
}

.star-full  { color: #F4A261; }
.star-half  { color: #F4A261; opacity: 0.6; }
.star-empty { color: #E8E8E2; }

.stars-display { font-size: 1.25rem; }
