/* ── Glossary layout ── */
.gl-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:32px;flex-wrap:wrap}
.gl-stat{display:flex;align-items:baseline;gap:6px}
.gl-stat-num{font-size:32px;font-weight:800;color:var(--c-accent);letter-spacing:-1px;line-height:1}
.gl-stat-lbl{font-size:14px;color:var(--c-text-muted);font-weight:500}
.gl-search-wrap{position:relative;flex:1;max-width:360px}
.gl-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--c-text-muted);pointer-events:none}
.gl-search{width:100%;padding:9px 14px 9px 38px;font-size:14px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);color:var(--c-text);outline:none;transition:border-color .15s}
.gl-search:focus{border-color:var(--c-accent)}
/* Alphabet nav */
.gl-alpha{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:44px;padding:16px 20px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius)}
.gl-alpha-link{font-size:14px;font-weight:700;color:var(--c-text-muted);padding:4px 10px;border-radius:6px;transition:all .15s;text-decoration:none}
.gl-alpha-link:hover{background:var(--c-accent-subtle);color:var(--c-accent)}
/* Letter block */
.gl-letter-block{margin-bottom:52px}
.gl-letter-head{font-size:48px;font-weight:800;color:rgba(47,128,237,.12);line-height:1;margin-bottom:16px;letter-spacing:-2px}
.gl-terms{display:grid;gap:14px}
/* Term card */
.gl-term{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:22px 24px;transition:all .2s}
.gl-term:hover{border-color:var(--c-accent);box-shadow:var(--shadow-md)}
.gl-term.gl-hidden{display:none}
.gl-term-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.gl-term-name{font-size:16px;font-weight:700;margin:0}
.gl-term-link{color:var(--c-dark);text-decoration:none;transition:color .15s}
.gl-term-link:hover{color:var(--c-accent)}
.gl-count{font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px;background:rgba(47,128,237,.08);color:var(--c-accent);white-space:nowrap}
.gl-term-desc{font-size:14px;line-height:1.65;color:var(--c-text-secondary);margin:0}
.gl-no-desc{color:var(--c-text-muted) !important;font-style:italic}
/* Responsive */
@media(max-width:768px){
  .gl-search-wrap{max-width:100%}
  .gl-letter-head{font-size:36px}
  .gl-term{padding:16px 18px}
}

