
:root{ --wb-adminbar: 0px; --wb-header-h: 0px; }

body.admin-bar { --wb-adminbar: 32px; }
@media (max-width: 782px){ body.admin-bar { --wb-adminbar: 46px; } }

/* Sticky header preferred */
.wb-sticky-header {
  position: sticky;
  top: var(--wb-adminbar);
  z-index: 1000;
  background: var(--wp--preset--color--background, #fff);
  border-bottom: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 2px 10px rgba(0,0,0,.04);
  backdrop-filter: saturate(180%) blur(6px);
}

/* Fixed fallback */
.wb-fixed-header { position: fixed; top: var(--wb-adminbar); left:0; right:0;
  z-index: 1000; background: var(--wp--preset--color--background, #fff);
  border-bottom: 1px solid rgba(0,0,0,.06); box-shadow: 0 2px 10px rgba(0,0,0,.05); }
.wb-fixed-padding { padding-top: calc(var(--wb-header-h) + var(--wb-adminbar)); }

/* ===== Mobile menu overlay: full-viewport, scrollable, above all ===== */
.wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation__responsive-dialog[aria-hidden="false"] {
  position: fixed !important;
  inset: 0 !important;
  top: var(--wb-adminbar, 0px) !important;
  z-index: 100000 !important;
  background: var(--wp--preset--color--background, #fff) !important;
  display: flex !important;
  flex-direction: column;
  min-height: calc(100vh - var(--wb-adminbar, 0px));
  overflow: auto !important;
  padding: 20px 22px 28px !important;
}

/* prevent page scroll when menu open */
html.is-menu-open, body.is-menu-open,
html.has-modal-open, body.has-modal-open { overflow: hidden !important; }

/* Close (X) button pinned to top-right */
.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-dialog .wp-block-navigation__responsive-close {
  position: absolute; right: 1rem; left: auto; top: 1rem;
  z-index: 100001; background: transparent;
}

/* Larger, spaced menu links */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.wp-block-navigation__responsive-dialog[aria-hidden="false"] .wp-block-navigation__container {
  gap: 22px !important; padding-top: 12px;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.wp-block-navigation__responsive-dialog[aria-hidden="false"] .wp-block-navigation-item__content {
  font-size: 22px; line-height: 1.3; font-weight: 600;
}

/* OPTIONAL: hide bottom CTA (add class 'wb-bottom-cta' to that Group) while menu open */
html.is-menu-open .wb-bottom-cta { display: none !important; }
