.book-language-section,
.book-genre-section {
  display: grid;
  gap: 12px;
  /* Responsive columns: 4 per row on desktop, 2 per row on mobile */
  grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 767px) {
  .book-language-section,
  .book-genre-section {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Hide native radio input */
.radio-btn input[type="radio"] {
  display: none;
}

/* Style the button to look like a selectable tile */
.radio-btn button {
  width: 100%;
  padding: 12px;
  border: 2px solid #ccc;
  border-radius: 12px;
  background: #fff;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
}

/* Beta text styling inside buttons */
.radio-btn button small.text-success {
  font-weight: 600;
  color: #28a745;
}

/* When the radio is checked, style the button */
.radio-btn input[type="radio"]:checked + button {
  border-color: #0073e6;
        background-color: #f9f9f9;
  /* color: #dc3545; */
}

/* Button hover effect */
.radio-btn button:hover {
  border-color: #dc3545;
}

/* Accessibility: Focus styles */
.radio-btn input[type="radio"]:focus + button {
  outline: 3px solid #dc3545;
  outline-offset: 2px;
}
