/* Glossary (LT-23, revised LT-24). Loaded only on /glossary/.
   Every term is on the page, nothing collapses. The A–Z row sticks under the
   site header on every width, so on a phone the letters are always one tap
   away however far down the list the reader is. Letters are plain text links
   with a 40px tap area, not buttons. */
.ls-gloss__letters {
  position: sticky; top: 3.8rem; z-index: 10;
  display: flex; flex-wrap: nowrap; gap: 0; overflow-x: auto; -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin: 0 -.75rem 1rem; padding: .25rem .75rem;
  background: var(--ls-surface); border-bottom: 1px solid var(--ls-border);
  font-family: var(--ls-mono); font-variant-numeric: tabular-nums; font-size: .9rem;
}
.ls-gloss__letters::-webkit-scrollbar { display: none; }
.ls-gloss__letters a, .ls-gloss__letters span {
  flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center;
  min-width: 2rem; min-height: 2.5rem; text-decoration: none;
}
.ls-gloss__letters a { color: var(--ls-accent-text); }
.ls-gloss__letters a:hover, .ls-gloss__letters a:focus-visible { text-decoration: underline; }
.ls-gloss__letters span { color: var(--ls-border-2); }
@media (min-width: 768px) { .ls-gloss__letters { top: 4.5rem; margin: 0 0 1rem; padding: .25rem 0; } .ls-gloss__letters a, .ls-gloss__letters span { min-width: 1.5rem; } }
/* Specific enough to beat brand.css's [id] rule, which loads after this file. */
section.ls-gloss__group[id] { padding-top: 1rem; scroll-margin-top: 7.5rem; }
.ls-gloss__letter { font-family: var(--ls-mono); font-size: .8rem; letter-spacing: .14em; color: var(--ls-muted); border-bottom: 1px solid var(--ls-border-2); padding-bottom: .3rem; margin-bottom: 1rem; }
article.ls-gloss__term[id] { margin-bottom: 1.5rem; scroll-margin-top: 7.5rem; }
.ls-gloss__name { font-size: 1.1rem; margin: 0 0 .25rem; }
.ls-gloss__anchor { color: var(--ls-ink); text-decoration: none; }
.ls-gloss__anchor:hover, .ls-gloss__anchor:focus-visible { text-decoration: underline; text-decoration-color: var(--ls-accent); }
.ls-gloss__term:target .ls-gloss__name { color: var(--ls-accent-text); }
.ls-gloss__def { color: var(--ls-ink-2); margin-bottom: .35rem; }
.ls-gloss__see { margin-bottom: 0; }
