/**
 * Glossary page — A–Z term list with search.
 * Scoped under .vl-glossary-page so nothing leaks into the shared header/footer.
 *
 * @package VoiceLink_Classic_Theme
 */

.vl-glossary-page{background:#f8faff;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:#0a0a0a;padding-bottom:4rem}
.vl-glossary-page *{box-sizing:border-box}
.vl-glossary-wrap{max-width:900px;margin:0 auto;padding:0 1.5rem}

/* Hero: padding-top clears the theme's fixed navbar (~80px desktop). */
.vl-glossary-hero{background:#fff;border-bottom:1px solid #e8eef7;padding:6rem 0 2.5rem;text-align:center}
.vl-glossary-eyebrow{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#1a56db;background:#eef3fd;border:1px solid #c7d9f9;border-radius:20px;padding:4px 14px;margin-bottom:1rem}
.vl-glossary-title{font-size:40px;font-weight:800;letter-spacing:-1px;line-height:1.1;margin:0 0 .75rem;color:#0a0a0a}
.vl-glossary-intro{font-size:16px;color:#666;line-height:1.7;max-width:620px;margin:0 auto}
.vl-glossary-intro p{margin:0 0 .6rem}
.vl-glossary-intro p:last-child{margin-bottom:0}

/* Search */
.vl-glossary-search{position:relative;max-width:420px;margin:1.75rem auto 0}
.vl-glossary-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#94a3b8;pointer-events:none}
#vl-glossary-search{width:100%;font-family:inherit;font-size:15px;color:#0a0a0a;background:#fff;border:1px solid #e8eef7;border-radius:10px;padding:12px 14px 12px 42px;outline:none;transition:border-color .15s,box-shadow .15s}
#vl-glossary-search:focus{border-color:#1a56db;box-shadow:0 0 0 3px rgba(26,86,219,.12)}
.vl-glossary-count{font-size:13px;color:#94a3b8;margin:.75rem 0 0}

/* A–Z nav */
.vl-glossary-az{position:sticky;top:80px;z-index:20;background:rgba(248,250,255,.92);backdrop-filter:blur(6px);border-bottom:1px solid #e8eef7;padding:.75rem 0;margin-bottom:2.5rem}
.vl-glossary-az .vl-glossary-wrap{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}
.vl-glossary-az-link{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:7px;font-size:13px;font-weight:600;color:#1a56db;text-decoration:none;transition:background .15s,color .15s}
.vl-glossary-az-link:hover{background:#eef3fd}
.vl-glossary-az-link.is-empty{color:#cbd5e1;cursor:default}
.vl-glossary-az-link.is-empty:hover{background:none}

/* Term groups */
.vl-glossary-group{margin-bottom:2.5rem;scroll-margin-top:140px}
.vl-glossary-letter{font-size:22px;font-weight:800;color:#1a56db;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #e8eef7}
.vl-glossary-terms{margin:0}
.vl-glossary-term{background:#fff;border:1px solid #e8eef7;border-radius:12px;padding:1.1rem 1.25rem;margin-bottom:.75rem}
.vl-glossary-term:last-child{margin-bottom:0}
.vl-glossary-term-name{font-size:17px;font-weight:700;color:#0a0a0a;margin:0 0 .35rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.vl-glossary-aka{font-size:12px;font-weight:500;color:#94a3b8}
.vl-glossary-term-def{margin:0;font-size:15px;line-height:1.7;color:#555}
.vl-glossary-term-def p{margin:0 0 .6rem;font-size:15px;line-height:1.7;color:#555}
.vl-glossary-term-def p:last-child{margin-bottom:0}
.vl-glossary-term-def ul,.vl-glossary-term-def ol{margin:0 0 .6rem;padding-left:1.25rem}
.vl-glossary-term-def a{color:#1a56db;text-decoration:underline}

/* States */
.vl-glossary-empty,.vl-glossary-none{text-align:center;color:#94a3b8;font-size:15px;padding:2.5rem 0}
.vl-glossary-term[hidden],.vl-glossary-group[hidden]{display:none}

@media(max-width:768px){
	.vl-glossary-hero{padding:5rem 0 2rem}
	.vl-glossary-title{font-size:28px}
	.vl-glossary-intro{font-size:14px}
	.vl-glossary-az{top:64px}
	.vl-glossary-group{scroll-margin-top:120px}
	.vl-glossary-letter{font-size:19px}
	.vl-glossary-term-name{font-size:16px}
	.vl-glossary-term-def,.vl-glossary-term-def p{font-size:14px}
}

/* A–Z list: each term name links to its own page. */
.vl-glossary-term-link{color:inherit;text-decoration:none}
.vl-glossary-term-link::after{content:"\2192";display:inline-block;margin-left:6px;color:#1a56db;font-weight:600;transition:transform .15s}
.vl-glossary-term-link:hover{color:#1a56db}
.vl-glossary-term-link:hover::after{transform:translateX(3px)}

/* ── Single term page (single-glossary.php) ── */
.vl-glossary-term-hero{text-align:left;padding-bottom:2rem}
.vl-glossary-crumbs ol{list-style:none;margin:0 0 1.25rem;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:#94a3b8}
.vl-glossary-crumbs li{display:flex;align-items:center;gap:6px}
.vl-glossary-crumbs li+li::before{content:"/";color:#cbd5e1}
.vl-glossary-crumbs a{color:#1a56db;text-decoration:none}
.vl-glossary-crumbs a:hover{text-decoration:underline}
.vl-glossary-crumbs [aria-current]{color:#64748b}
.vl-glossary-term-aka{font-size:15px;color:#64748b;margin:0}

.vl-glossary-body{padding-top:2.5rem}
.vl-glossary-definition{background:#f3f7ff;border:1px solid #dbe6fb;border-radius:16px;padding:1.4rem 1.6rem;margin-bottom:2.5rem}
.vl-glossary-definition-label{display:block;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:#64748b;margin-bottom:.55rem}
.vl-glossary-definition-text,.vl-glossary-definition-text p{font-size:17px;line-height:1.7;color:#1e293b;margin:0 0 .6rem}
.vl-glossary-definition-text p:last-child{margin-bottom:0}
.vl-glossary-definition-text a{color:#1a56db;text-decoration:underline}

/* Long-form article written in the post editor. */
.vl-glossary-article{font-size:16px;line-height:1.75;color:#334155;margin-bottom:2.5rem}
.vl-glossary-article > *:first-child{margin-top:0}
.vl-glossary-article h2{font-size:26px;font-weight:800;letter-spacing:-.4px;line-height:1.25;color:#0a0a0a;margin:2.25rem 0 .85rem}
.vl-glossary-article h3{font-size:20px;font-weight:700;line-height:1.3;color:#0a0a0a;margin:1.75rem 0 .65rem}
.vl-glossary-article h4{font-size:17px;font-weight:700;color:#0a0a0a;margin:1.5rem 0 .5rem}
.vl-glossary-article p{margin:0 0 1.1rem}
.vl-glossary-article ul,.vl-glossary-article ol{margin:0 0 1.1rem;padding-left:1.4rem}
.vl-glossary-article ul{list-style:disc}
.vl-glossary-article ol{list-style:decimal}
.vl-glossary-article li{margin-bottom:.4rem}
.vl-glossary-article a{color:#1a56db;text-decoration:underline}
.vl-glossary-article strong,.vl-glossary-article b{color:#0a0a0a;font-weight:700}
.vl-glossary-article blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border:1px solid #dbe6fb;background:#f3f7ff;border-radius:12px;color:#1e293b}
.vl-glossary-article img{max-width:100%;height:auto;border-radius:12px}
.vl-glossary-article hr{border:0;border-top:1px solid #e8eef7;margin:2rem 0}
.vl-glossary-article code{font-size:.9em;background:#eef3fd;border-radius:5px;padding:1px 6px}
.vl-glossary-article table{width:100%;border-collapse:collapse;margin:0 0 1.5rem;font-size:15px;background:#fff;border:1px solid #e8eef7}
.vl-glossary-article th{background:#1a56db;color:#fff;font-weight:600;text-align:left;padding:.75rem 1rem;white-space:nowrap}
.vl-glossary-article td{padding:.75rem 1rem;border-top:1px solid #e8eef7;vertical-align:top}

/* Related terms + back link. */
.vl-glossary-related{margin:3rem 0 2rem}
.vl-glossary-related-title{font-size:22px;font-weight:800;color:#0a0a0a;margin:0 0 1rem}
.vl-glossary-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}
.vl-glossary-related-card{display:block;background:#fff;border:1px solid #e8eef7;border-radius:12px;padding:1rem 1.15rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}
.vl-glossary-related-card:hover{border-color:#c7d9f9;box-shadow:0 6px 20px rgba(26,86,219,.08);transform:translateY(-1px)}
.vl-glossary-related-name{display:block;font-size:16px;font-weight:700;color:#0a0a0a;margin-bottom:.3rem}
.vl-glossary-related-def{display:block;font-size:14px;line-height:1.6;color:#64748b}
.vl-glossary-back{margin:0;font-size:15px}
.vl-glossary-back a{color:#1a56db;font-weight:600;text-decoration:none}
.vl-glossary-back a:hover{text-decoration:underline}

@media(max-width:768px){
	.vl-glossary-definition-text,.vl-glossary-definition-text p{font-size:16px}
	.vl-glossary-article{font-size:15px}
	.vl-glossary-article h2{font-size:22px}
	.vl-glossary-article h3{font-size:18px}
	/* Wide tables scroll sideways on phones instead of squashing. */
	.vl-glossary-article table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
