/* CMS disclosure navigation extends the existing amui visual system, not its theme. */
.shared-site-header { position: relative; z-index: 40; width: 100%; }
.public-theme-control { max-width: 72rem; margin: .5rem auto; padding-inline: 1.5rem; text-align: right; }
/* The fresh SSR header replaces only the old top bar inside an otherwise untouched cached
   docs fragment. display:none also removes that duplicate landmark from keyboard/AT navigation. */
.has-shared-site-header .amui-layout-docs > .amui-component[data-component="nav"] { display: none; }
.amui-nav { position: relative; z-index: 40; gap: 1rem; flex-wrap: wrap; }
.amui-nav > .flex-none { display: flex; flex-wrap: wrap; align-items: center; }
.homepage-nav-menus { display: flex; flex-wrap: wrap; gap: .35rem; align-items: center; }
.homepage-nav-menu { position: relative; }
.homepage-nav-menu > summary { cursor: pointer; list-style: none; padding: .75rem 1rem; border-radius: .45rem; font: inherit; }
.homepage-nav-menu > summary::-webkit-details-marker { display: none; }
.homepage-nav-menu > summary::after { content: ' ▾'; opacity: .65; }
.homepage-nav-menu[open] > summary::after { content: ' ▴'; }
.homepage-nav-menu > summary:hover,
.homepage-nav-menu[open] > summary { background: var(--color-base-200, #16201b); }
.homepage-nav-menu > summary:focus-visible,
.homepage-nav-menu a:focus-visible { outline: 2px solid var(--color-primary, #87d89a); outline-offset: 3px; }
.homepage-nav-menu-links { position: absolute; z-index: 50; top: calc(100% + .4rem); right: 0; width: max-content; min-width: 14rem; max-width: min(22rem, calc(100vw - 2rem)); padding: .55rem; margin: 0; list-style: none; background: var(--color-base-100, #0c100e); color: var(--color-base-content, #dce7dc); border: 1px solid var(--color-base-300, #2a3b2e); border-radius: .65rem; box-shadow: 0 .8rem 2rem #0006; }
.homepage-nav-menu-links li a { display: block; white-space: normal; padding: .7rem .8rem; border-radius: .35rem; }
.homepage-nav-menu-links a:hover { background: var(--color-base-200, #16201b); }
@media (max-width: 640px) {
  .amui-nav > .flex-1 { flex-basis: 100%; }
  .amui-nav > .flex-none { width: 100%; gap: .25rem; }
  .homepage-nav-menu { position: static; }
  .homepage-nav-menu > summary { padding: .7rem .6rem; }
  /* Anchor to the full nav, not the individual summary: wrapped labels and long menu
     names must never push a dropdown beyond the viewport. */
  .homepage-nav-menu-links { left: 1rem; right: 1rem; width: auto; min-width: 0; max-width: none; }
}
