body.genai-glossary { background: #f7faf8; color: #172b24; margin: 0; }
.glossary-shell { width: min(62rem, calc(100% - 2rem)); margin: 0 auto; padding: 1.5rem 0 3rem; overflow-wrap: anywhere; }
.glossary-shell .glossary-path { display: flex; gap: 1rem; flex-wrap: wrap; margin: 0 0 1.25rem; }
.glossary-shell h1 { margin: .35em 0 .4em; font-size: clamp(1.8rem, 4vw, 2.55rem); line-height: 1.4; color: #174538; }
.glossary-shell h2 { margin: 1rem 0 .35rem; color: #174538; font-size: 1.35rem; line-height: 1.5; }
.glossary-shell p { margin: .4em 0 .75em; line-height: 1.75; max-width: 44em; }
.glossary-shell a { color: #165644; text-decoration: underline; text-underline-offset: .15em; }
.glossary-shell [hidden] { display: none !important; }
.glossary-shell #glossary-controls { margin-block: 1.2rem; padding: 1rem; background: #eaf3ec; border: 1px solid #c5d6cb; border-radius: .7rem; }
.glossary-shell .term-controls { display: flex; align-items: end; flex-wrap: wrap; gap: .75rem; }
.glossary-shell .term-controls > label { display: grid; gap: .3rem; min-width: 0; flex: 1 1 13rem; font-weight: 700; }
.glossary-shell :is(input,select,button) { font: inherit; line-height: 1.45; color: inherit; min-height: 2.75rem; max-width: 100%; min-width: 0; border: 1px solid #789488; border-radius: .45rem; padding: .45rem .65rem; background: #fff; }
.glossary-shell :is(input,select) { width: 100%; }
.glossary-shell button { cursor: pointer; }
.glossary-shell button.primary { color: #fff; background: #1e5945; border-color: #1e5945; }
.glossary-shell #term-status { min-height: 1.6em; color: #315449; }
.glossary-shell .term-entry { border-bottom: 1px solid #c9d8cf; background: #fff; scroll-margin-block: 1rem; }
.glossary-shell .term-entry:target { outline: 2px solid #28664e; outline-offset: 2px; }
.glossary-shell summary { min-height: 2.75rem; padding: .8rem .95rem; color: #174538; font-weight: 700; cursor: pointer; line-height: 1.55; }
.glossary-shell .term-contexts { display: grid; gap: .35rem; padding: 0 .95rem .9rem; }
.glossary-shell .term-context + .term-context { border-top: 1px solid #dce8de; padding-top: .65rem; }
.glossary-shell .term-context strong { color: #254b3e; }
.glossary-shell .term-route { display: inline-block; padding-block: .15rem; }
.glossary-shell .term-direct { justify-self: start; color: #335b4c; }
.glossary-shell #terms-more { margin-top: .9rem; }
.glossary-shell :focus-visible { outline: 3px solid #175e49; outline-offset: 3px; }
@media (max-width: 37.5rem) {
  .glossary-shell { padding-top: .9rem; }
  .glossary-shell .term-controls { align-items: stretch; }
  .glossary-shell .term-controls > label { flex-basis: 100%; }
}
