button.glossary-term {
  display: inline;
  border: 0;
  border-bottom: 1px dotted currentColor;
  border-radius: 0;
  padding: 0 .12em .06em 0;
  margin: 0 .18em 0 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: inherit;
  cursor: pointer;
}
button.glossary-term::after {
  content: '';
  display: inline-block;
  width: .8em;
  height: .8em;
  margin-left: .25em;
  vertical-align: baseline;
  background-color: currentColor;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20m0 2a8 8 0 1 1 0 16 8 8 0 0 1 0-16m-1 6h2v7h-2zm0-3h2v2h-2z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.glossary-popover {
  position: fixed;
  z-index: 10000;
  box-sizing: border-box;
  width: 360px;
  padding: 1.25rem;
  overflow: auto;
  border: 1px solid #056b71;
  border-radius: 1rem;
  background: #fff;
  color: #1f2937;
  box-shadow: 0 12px 36px #0003;
  font: 1rem/1.6 system-ui, sans-serif;
  text-align: left;
  overflow-wrap: anywhere;
}
.glossary-popover [hidden], .glossary-popover[hidden] { display: none !important; }
.glossary-popover h2 { margin: 0 2.5rem .75rem 0; font-size: 1.125rem; font-weight: 700; line-height: 1.4; }
.glossary-popover p { margin: 0 0 .75rem; }
.glossary-popover a, .glossary-popover-retry { display: inline-block; padding: .4rem 0; color: #056b71; text-decoration: underline; text-underline-offset: .2em; }
.glossary-popover-retry { margin-right: 1rem; border: 0; background: transparent; font: inherit; cursor: pointer; }
.glossary-popover-close { position: absolute; top: .3rem; right: .3rem; width: 44px; height: 44px; border: 0; border-radius: .5rem; background: transparent; color: #1f2937; font-size: 1.75rem; cursor: pointer; }
.glossary-popover-close:hover { background: #e0edeb; }
button.glossary-term:focus-visible, .glossary-popover :is(a, button):focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
@media (forced-colors: active) { .glossary-popover { border: 2px solid CanvasText; } }
