.elf-guide-navigation > summary { cursor: pointer; }
.elf-guide-toc-control { padding: 1rem 0; max-width: 54rem; }
.elf-guide-toc-control > label { display: block; margin-bottom: .5rem; font-weight: 700; }
.elf-guide-toc-search-row { display: flex; flex-wrap: wrap; gap: .65rem; }
.elf-guide-toc-search-row input { flex: 1 1 16rem; min-width: 0; padding: .8rem 1rem; border: 1px solid #73879a; border-radius: .5rem; background: #fff; color: #172a3a; font: inherit; }
.elf-guide-toc-search-row button { min-height: 44px; padding: .65rem 1rem; border: 1px solid #172a3a; border-radius: .5rem; background: #172a3a; color: #fff; font: inherit; font-weight: 700; }
.elf-guide-toc-control p { margin: .65rem 0 0; font-size: .95rem; }
.elf-guide-navigation [hidden] { display: none !important; }
.elf-guide-navigation li > a { height: 100%; padding-inline: .45rem; overflow-wrap: anywhere; border-radius: .35rem; }
.elf-guide-navigation li > a:hover { background: #eef4f8; }
.elf-guide-navigation :is(input, button, a, summary):focus-visible,
.elf-guide-faq-item > summary:focus-visible,
.elf-guide-section-return a:focus-visible { outline: 3px solid #1d4ed8; outline-offset: 3px; }
.elf-guide-template-page #main-content [id] { scroll-margin-top: 7rem; }
.elf-guide-practical-overview { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.elf-guide-practical-overview .elf-guide-toc-access { margin: 0; }
.elf-guide-practical-overview .elf-guide-toc-access a { display: inline-block; padding: .6rem 0; color: #fff !important; text-underline-offset: .2rem; }
.elf-guide-practical-overview .elf-guide-toc-access a:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.elf-guide-section-return { margin: 1.5rem 0 0; }
.elf-guide-section-return a { display: inline-block; padding: .5rem 0; font-size: .95rem; text-underline-offset: .2rem; }
.elf-guide-faq-list { display: grid; gap: .8rem; }
.elf-guide-faq-item { border: 1px solid #c4d1db; border-radius: .65rem; background: #fff; overflow-wrap: anywhere; }
.elf-guide-faq-item > summary { padding: 1.1rem 1.3rem; color: #172a3a; font-size: 1.05rem; font-weight: 750; line-height: 1.5; cursor: pointer; border-radius: .65rem; }
.elf-guide-faq-item > summary::marker { color: #c65b00; }
.elf-guide-faq-item[open] > summary { background: #edf4f9; border-radius: .65rem .65rem 0 0; }
.elf-guide-faq-answer { padding: 1.1rem 1.3rem; border-top: 1px solid #c4d1db; }
.elf-guide-faq-answer > p { margin: 0; }
@media (max-width: 600px) {
  .elf-guide-toc-search-row input { flex-basis: 100%; width: 100%; }
  .elf-guide-faq-item > summary, .elf-guide-faq-answer { padding: 1rem; }
}
