/* glossary page-specific styles (verbatim; loaded after site.css). */
  /* Page-specific styles. Shared core CSS injected above from index.html by build/build.py. */
  .gloss-group { margin-bottom: 1.6rem; }
  .gloss-group.hidden { display: none; }
  .gloss-letter {
    font-family: 'Courier New', monospace; font-size: var(--fs-h3); font-weight: bold;
    color: var(--accent2); border-bottom: 1px solid var(--border);
    padding-bottom: 0.3rem; margin: 0 0 0.85rem;
  }
  .gloss-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); gap: 0.7rem; }
  .gloss-entry {
    background: var(--surface); border: 1px solid var(--border);
    border-left: 3px solid var(--accent); border-radius: 0 var(--radius) var(--radius) 0;
    padding: 0.8rem 1rem;
  }
  .gloss-entry.hidden { display: none; }
  .gloss-head { display: flex; align-items: baseline; gap: 0.5rem; margin-bottom: 0.3rem; flex-wrap: wrap; }
  .gloss-term { font-weight: bold; color: var(--accent2); font-size: var(--fs-dense); }
  .gloss-syn { font-weight: normal; color: var(--muted); font-size: var(--fs-sm); }
  .gloss-cat {
    margin-left: auto; font-family: 'Courier New', monospace; font-size: var(--fs-3xs);
    letter-spacing: 0.08em; text-transform: uppercase; color: var(--faint);
    border: 1px solid var(--border); border-radius: 3px; padding: 0.1rem 0.4rem; white-space: nowrap;
  }
  .gloss-def { font-size: var(--fs-dense); color: var(--muted); line-height: 1.55; margin: 0; max-width: none; }
  .gloss-xref {
    display: inline-block; margin-top: 0.45rem; font-family: 'Courier New', monospace;
    font-size: var(--fs-2xs); color: var(--accent); text-decoration: none;
  }
  .gloss-xref:hover { text-decoration: underline; }
  .ltr-btns { display: flex; flex-wrap: wrap; gap: 0.3rem; }
  .ltr-btn {
    font-family: 'Courier New', monospace; font-size: var(--fs-xs);
    min-width: 2.1rem; min-height: 2.1rem; padding: 0.25rem 0.45rem;
    border: 1px solid var(--border); background: transparent; color: var(--muted);
    cursor: pointer; border-radius: 4px; text-transform: uppercase; transition: all 0.12s;
  }
  .ltr-btn:hover, .ltr-btn.active { background: var(--accent); border-color: var(--accent); color: #000; }
  .section-intro { max-width: none; }
  
