/* Grzybiarze – Społeczność NAV FINAL
   Celowo brak MutationObservera i brak ingerencji w cały DOM. */
.gsp-nav > div {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-width: 0 !important;
}
.gsp-nav > div > a {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 7px 0 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

/* Mobile hamburger from the existing community template. */
@media (max-width: 900px) {
  .gspf-mobile-toggle {
    position: relative !important;
    z-index: 1002 !important;
    width: 52px !important;
    height: 52px !important;
    padding: 7px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    cursor: pointer !important;
  }
  .gspf-mobile-toggle span {
    width: 30px !important;
    height: 2px !important;
    margin: 4px 0 !important;
    display: block !important;
    transition: transform .2s ease, opacity .2s ease !important;
  }
  .gspf-mobile-toggle.is-open span:nth-child(1) {
    transform: translateY(6px) rotate(45deg) !important;
  }
  .gspf-mobile-toggle.is-open span:nth-child(2) {
    opacity: 0 !important;
  }
  .gspf-mobile-toggle.is-open span:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg) !important;
  }

  .gspf-mobile-menu {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: 82px !important;
    z-index: 1001 !important;
    max-width: none !important;
    max-height: calc(100dvh - 82px) !important;
    overflow-y: auto !important;
    margin: 0 !important;
    padding: 18px 22px 28px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    background: rgba(7,16,11,.98) !important;
    border-top: 1px solid rgba(220,232,210,.11) !important;
    box-shadow: 0 24px 55px rgba(0,0,0,.45) !important;
    transform: translateY(-10px) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  }
  .gspf-mobile-menu.is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }
  .gspf-mobile-menu a {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 17px 4px !important;
    border-radius: 0 !important;
    border-bottom: 1px solid rgba(224,238,216,.12) !important;
    font-family: Georgia, serif !important;
    font-size: 21px !important;
    line-height: 1.2 !important;
  }
  .gspf-mobile-menu a:last-child { border-bottom: 0 !important; }
  html.gsp-nav-final-lock,
  html.gsp-nav-final-lock body { overflow: hidden !important; }
}

@media (max-width: 560px) {
  .gspf-mobile-menu {
    top: 72px !important;
    max-height: calc(100dvh - 72px) !important;
    padding: 10px 20px 24px !important;
  }
  .gspf-mobile-menu a { font-size: 20px !important; padding: 16px 3px !important; }
}
