/**
 * Gallery Keywords Styling
 *
 * Styles for keyword filter buttons used in gallery map views
 * (galerija/zemljevid and katalog/gpx)
 *
 * @package IT-Infotočka
 * @author Frajder <dev@frajder.com>
 * @version 1.0
 * @since 2025-01-20
 */

/* Keyword icon wrapper - contains button with count badge */
.keyword-icon-wrapper {
  position: relative;
  display: inline-block;
}

/* Count badge overlay on keyword button */
.keyword-count {
  position: absolute;
  top: 20px;
  left: 8px;
  width: 18px;
  height: 18px;
  background-color: var(--brand-primary-color, #79ab2b);
  color: white;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: bold;
  pointer-events: none;
}

/* Keyword buttons container */
.keyword-buttons {
  margin: 20px 0;
  padding: 15px;
  background-color: #f9f9f9;
  border-radius: 4px;
}

/* Individual keyword button */
.keyword-btn {
  margin: 5px;
  transition: all 0.2s ease;
}

/* Active keyword button (currently selected filter) */
.keyword-btn.active {
  background-color: var(--brand-secondary-color, #6a9625);
  color: white;
  border-color: var(--brand-secondary-color, #6a9625);
}

.keyword-btn.active:hover,
.keyword-btn.active:focus {
  background-color: var(--brand-primary-color, #79ab2b);
  color: white;
}

/* Links inside keyword buttons should be white */
.keyword-btn a {
  color: inherit;
  text-decoration: none;
}

.keyword-btn.active a {
  color: white;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .keyword-buttons {
    padding: 10px;
  }

  .keyword-btn {
    margin: 3px;
    font-size: 14px;
  }

  .keyword-count {
    width: 16px;
    height: 16px;
    font-size: 9px;
    top: 18px;
    left: 6px;
  }
}
