/*
 * Glossary Navigation Styles
 * A-Z navigation and search functionality styling
 */

.glossary-nav {
  background: var(--bs-light, #f8f9fa);
  padding: 1rem;
  border-radius: 0.5rem;
  border: 1px solid var(--bs-border-color, #dee2e6);
}

.glossary-search .input-group {
  max-width: 500px;
}

.glossary-letters {
  justify-content: center;
}

.glossary-letter-link {
  min-width: 2rem;
  padding: 0.25rem 0.5rem;
  font-weight: 600;
}

.glossary-letter-link:focus {
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

/* Highlight matching letter sections */
h2:target {
  scroll-margin-top: 100px;
  animation: glossary-highlight 2s ease-out;
}

@keyframes glossary-highlight {
  0% { background-color: rgba(13, 110, 253, 0.2); }
  100% { background-color: transparent; }
}

/* Term definition styling */
.glossary-term-block {
  scroll-margin-top: 80px;
}

/* Mobile adjustments */
@media (max-width: 575.98px) {
  .glossary-letters {
    gap: 0.25rem;
  }

  .glossary-letter-link,
  .glossary-letters .btn {
    min-width: 1.75rem;
    padding: 0.2rem 0.35rem;
    font-size: 0.875rem;
  }
}
