/* Glossary search, definitions and article references. */
.glossary-page { max-width: 1080px; }
.glossary-intro { display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:23px; }
.glossary-intro h1 { margin-top:5px;font-size:clamp(30px,4.5vw,49px); }
.glossary-intro .lead { margin-top:10px;font-size:clamp(15px,1.8vw,19px);line-height:1.8; }
.glossary-intro>img { flex:none;width:clamp(72px,10vw,112px);height:auto;aspect-ratio:1;object-fit:contain; }
.glossary-intro-break { display:none; }
.glossary-return { margin-bottom:20px;white-space:normal; }
.glossary-search-box { margin:0 0 30px;padding:clamp(16px,3vw,26px);border:2px solid var(--ink);border-radius:14px;background:#fff2c8;box-shadow:4px 5px 0 var(--ink);scroll-margin-top:100px; }
.glossary-search-box>label { display:block;font-size:clamp(18px,2vw,23px);font-weight:850;line-height:1.4;margin-bottom:11px; }
.glossary-search-row { display:flex;gap:9px; }
.glossary-search-row>input { display:block;min-width:0;width:100%;border:2px solid var(--ink);border-radius:8px;padding:11px 13px;background:white;color:var(--ink);font:inherit;font-size:16px;line-height:1.5; }
.glossary-clear { flex:none;border:2px solid var(--ink);border-radius:8px;padding:9px 13px;background:white;font-size:13px;font-weight:800; }
.glossary-clear:hover { background:#e9f7f9; }
.glossary-search-box #glossary-search-help { margin-top:8px;color:var(--muted);font-size:12px; }
.glossary-filters { display:flex;flex-wrap:wrap;gap:8px;margin-top:18px; }
.glossary-filter { display:inline-flex;align-items:center;gap:7px;max-width:100%;border:1.5px solid var(--ink);border-radius:999px;padding:6px 11px;background:white;color:var(--ink);font-size:13px;font-weight:750;line-height:1.5; }
.glossary-filter>span { display:inline-flex;align-items:center;justify-content:center;min-width:1.65em;border-radius:999px;background:#f1eeea;padding:0 4px;font-size:11px; }
.glossary-filter[aria-pressed=true] { background:var(--ink);color:white; }
.glossary-filter[aria-pressed=true]>span { background:var(--yellow);color:var(--ink); }
.glossary-filter:hover { box-shadow:1px 2px 0 var(--ink); }
.glossary-results { margin-top:17px!important;font-size:13px;font-weight:800; }
.glossary-entries { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start; }
.glossary-entry { position:relative;min-width:0;padding:clamp(18px,2.5vw,25px);border:2px solid var(--ink);border-radius:13px;background:white;box-shadow:3px 4px 0 var(--ink);scroll-margin-top:99px;overflow-wrap:anywhere; }
.glossary-entry:target { outline:4px solid var(--yellow);outline-offset:4px; }
.glossary-entry-top { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.glossary-category { display:inline-block;border-radius:5px;padding:3px 8px;background:#e2f4f7;color:#16434b;font-size:11px;font-weight:800; }
.glossary-permalink { flex:none;color:#847b79;font-size:17px;font-weight:850;text-decoration:none;line-height:1; }
.glossary-permalink:hover { color:var(--deep-red); }
.glossary-entry h2 { margin-top:11px;font-size:clamp(23px,2.5vw,30px);line-height:1.4; }
.glossary-reading { margin:4px 0 0;color:var(--muted);font-size:12px; }
.glossary-aliases { margin-top:8px;font-size:12px;color:var(--muted); }
.glossary-definition { margin-top:15px;font-size:15px;line-height:1.95; }
.glossary-example { margin-top:16px;border-left:4px solid var(--cyan);padding:10px 12px;background:#f0f9fa;border-radius:0 6px 6px 0; }
.glossary-example>strong { display:block;font-size:12px;color:#16434b; }
.glossary-example>p { margin-top:3px;font-size:13px;line-height:1.8; }
.glossary-references { display:grid;gap:15px;border-top:1px solid var(--line);padding-top:17px;margin-top:19px; }
.glossary-ref-section { min-width:0; }
.glossary-ref-section>h3 { display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.5; }
.glossary-ref-count { flex:none;border-radius:999px;padding:1px 7px;background:#f2eeeb;color:var(--muted);font-size:11px;font-weight:700; }
.glossary-ref-list { display:grid;gap:7px;margin:9px 0 0;padding:0;list-style:none; }
.glossary-ref-link { display:block;padding:9px 11px;border:1px solid #ded7d2;border-radius:7px;background:#fffdf8;text-decoration:none;font-size:13px;font-weight:750;line-height:1.6; }
.glossary-ref-link:hover { border-color:var(--deep-red);text-decoration:underline;background:#fff4ec; }
.glossary-ref-link>small { display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:500;line-height:1.5; }
.glossary-ref-more { margin-top:8px;border:0!important;border-radius:0!important;background:transparent!important;padding:0!important; }
.glossary-ref-more>summary { color:var(--deep-red);font-size:12px;font-weight:750; }
.glossary-ref-empty { margin-top:7px!important;color:var(--muted);font-size:12px;line-height:1.7; }
.glossary-sources { margin-top:17px;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;padding:12px 0 0!important; }
.glossary-sources>summary { color:var(--muted);font-size:12px;font-weight:650; }
.glossary-sources>ul { display:grid;gap:7px;margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.7; }
.glossary-back-top { display:inline-block;margin-top:15px;color:var(--muted);font-size:11px;text-decoration:none; }
.glossary-back-top:hover { text-decoration:underline; }
.glossary-no-results,.glossary-noscript { margin:20px 0;padding:17px;border:1px solid var(--line);border-radius:10px;background:white;line-height:1.8; }
.glossary-index-note { margin-top:36px;padding:19px;border:2px solid var(--ink);border-radius:12px;background:#e9f7f9; }
.glossary-index-note>strong { font-size:17px; }
.glossary-index-note>p { margin-top:6px;font-size:14px; }
.glossary-index-note>a { margin-top:10px; }
@media(max-width:760px) {
 .glossary-intro { gap:12px;align-items:flex-start; }
 .glossary-intro h1 { font-size:clamp(28px,5.8vw,39px); }
 .glossary-intro>img { width:74px;margin-top:15px; }
 .glossary-intro-break { display:initial; }
 .glossary-entries { grid-template-columns:1fr;gap:20px; }
 .glossary-filter { padding:5px 9px;font-size:12px; }
}
@media(max-width:420px) {
 .glossary-intro>img { width:57px; }
 .glossary-intro h1 { max-width:8.5em;font-size:29px; }
 .glossary-intro .lead { font-size:13px; }
 .glossary-search-box { padding:15px; }
 .glossary-search-row { gap:6px; }
 .glossary-search-row>input { padding:10px;font-size:16px; }
 .glossary-clear { padding:9px;font-size:12px; }
 .glossary-entry { padding:18px; }
}
