/* ==========================================================================
   Glossary page
   ========================================================================== */
.glossary-jump {
    margin-top: 24px;
    padding: 16px 20px;
    background: rgba(245, 236, 216, 0.04);
    border: 1px solid rgba(245, 236, 216, 0.1);
    border-radius: var(--r-xl);
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px 24px;
    align-items: center;
}
@media (max-width: 720px) {
    .glossary-jump {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}
.glossary-jump-links {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.glossary-jump-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: rgba(245, 236, 216, 0.05);
    border: 1px solid rgba(245, 236, 216, 0.12);
    border-radius: 50%;
    color: rgba(245, 236, 216, 0.85);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s var(--ease-out-expo);
}
.glossary-jump-link:hover {
    background: var(--gold);
    border-color: var(--gold);
    color: var(--ink-900);
}

.glossary-letter-group {
    max-width: 860px;
    margin: 0 auto;
    padding-top: clamp(28px, 4vw, 40px);
    scroll-margin-top: 90px;
}
.glossary-letter-group > h2 {
    font-size: 22px;
    color: var(--gold-dark, var(--text-dark));
    border-bottom: 1px solid var(--card-separator);
    padding-bottom: 8px;
    margin-bottom: 4px;
}
.glossary-list {
    margin: 0;
}
.glossary-term {
    padding: 14px 0;
    border-bottom: 1px solid var(--card-separator);
}
.glossary-term dt {
    font-weight: 700;
    color: var(--text-dark);
    font-size: 16px;
}
.glossary-term dd {
    margin: 4px 0 0;
    color: var(--text-secondary);
    font-size: 15px;
    line-height: 1.55;
}
/* "Used in: <games>" under each glossary term. The old 0.8 opacity put the
   text at 3.53:1 and the links (no underline, 1.22:1 against the text) did
   not read as links (axe-core, ~1,000 terms). Now text 5.36:1 and the same
   underlined link treatment as in-text game mentions. */
.glossary-used-in {
    display: block;
    margin-top: 4px;
    font-size: 12.5px;
    color: var(--text-secondary);
}
.glossary-used-in a {
    color: var(--accent-strong);
    text-decoration-line: underline;
    text-decoration-color: rgba(162, 76, 23, 0.6);
    text-decoration-thickness: 1.5px;
    text-underline-offset: 2px;
}

/* Touch targets on list pages */
@media (pointer: coarse) {
    .glossary-jump-link {
        width: 44px;
        height: 44px;
    }
}

/* Glossary: skip rendering off-screen letter groups (2,700+ links on one page) */
.glossary-letter-group {
    content-visibility: auto;
    contain-intrinsic-block-size: auto 900px;
}
