/* A small margin note, using the site's quiet ink and paper tokens. */
.glossary-trigger{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;width:1.25rem;height:1.25rem;padding:0;margin-inline-start:.35rem;border:1px solid color-mix(in srgb,var(--muted,#6d7b76) 30%,transparent);border-radius:50%;background:transparent;color:var(--muted,#6d7b76);font:400 .72rem/1 var(--font-body,sans-serif);cursor:pointer;transition:color .18s,border-color .18s,background-color .18s}
.glossary-trigger:not(.glossary-word)::before{content:'?'}
.glossary-trigger:hover,.glossary-trigger[aria-expanded=true]{color:var(--ink,#263e36);border-color:var(--ink,#263e36);background:color-mix(in srgb,var(--ink,#263e36) 5%,transparent)}
.glossary-trigger:focus-visible,.glossary-close:focus-visible,.glossary-panel a:focus-visible,.glossary-index summary:focus-visible{outline:2px solid var(--accent,#b08f57);outline-offset:4px}
.glossary-index{border-block-start:1px solid var(--line,#d8ded3);padding-block:.7rem;margin-block:1rem;color:var(--muted,#6d7b76);font-size:.8rem}
.glossary-index>summary{width:fit-content;cursor:pointer;letter-spacing:.08em;font-weight:400}
.glossary-index-words{display:flex;flex-wrap:wrap;gap:.5rem .6rem;margin-block-start:.75rem}
.glossary-trigger.glossary-word{width:auto;height:auto;min-height:2rem;margin:0;padding:.35rem .65rem;border-radius:3px;font-size:.82rem;line-height:1.5;letter-spacing:.025em}
.glossary-label>.glossary-trigger{flex-shrink:0}
.glossary-panel{box-sizing:border-box;width:min(31rem,calc(100vw - 2rem));max-width:31rem;max-height:calc(100dvh - 3rem);overflow:auto;border:1px solid var(--line,#d8ded3);border-radius:8px;padding:1.65rem 1.8rem;background:var(--panel,var(--paper,#faf9f4));color:var(--ink,#263e36);box-shadow:0 22px 80px rgba(21,38,47,.14);font-family:var(--font-body,sans-serif)}
.glossary-panel:not([open]){display:none}
.glossary-panel::backdrop{background:rgba(28,43,51,.24);backdrop-filter:blur(2px)}
.glossary-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;border-block-end:1px solid var(--line,#d8ded3);padding-block-end:1rem;margin-block-end:1rem}
.glossary-eyebrow{margin:0 0 .4rem;color:var(--muted,#6d7b76);font-size:.76rem;letter-spacing:.15em;line-height:1.6}
.glossary-title{margin:0;font-size:1.55rem;font-weight:400;line-height:1.4;letter-spacing:.06em}
.glossary-close{width:2rem;height:2rem;padding:0;border:0;background:transparent;color:var(--muted,#6d7b76);font:300 1.65rem/1 sans-serif;cursor:pointer}
.glossary-definition{margin:1rem 0;font-size:.98rem;line-height:1.95;overflow-wrap:anywhere;font-weight:400}
.glossary-note,.glossary-footer{margin:.65rem 0 0;color:var(--muted,#6d7b76);font-size:.76rem;line-height:1.8}
.glossary-reference{margin-block-start:1.1rem;padding-block:1rem;border-block:1px solid var(--line,#d8ded3)}
.glossary-reference-label{margin:0 0 .4rem;color:var(--muted,#6d7b76);font-size:.74rem;letter-spacing:.08em}
.glossary-source-title{color:inherit;text-decoration-thickness:1px;text-underline-offset:.25em;font-size:.85rem;line-height:1.8;overflow-wrap:anywhere}
@media(max-width:600px){.glossary-panel{width:calc(100vw - 1.3rem);padding:1.25rem;max-height:calc(100dvh - 1.5rem)}.glossary-title{font-size:1.35rem}.glossary-definition{font-size:.93rem;line-height:1.9}.glossary-trigger{min-width:1.35rem;min-height:1.35rem}.glossary-trigger.glossary-word{min-height:2.35rem}}
@media(prefers-reduced-motion:reduce){.glossary-trigger{transition:none}.glossary-panel::backdrop{backdrop-filter:none}}
