/* v5.1.4 — Mobile category drawer bottom-safe fix */

@media (max-width: 782px) {
  /* Give the whole open drawer more usable height while keeping browser UI in mind */
  body.vlg-theme .vlg-nav.is-open,
  body.vlg-theme.vlg-menu-open .vlg-nav.is-open {
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  body.vlg-theme .vlg-nav.is-open .vlg-nav-inner,
  body.vlg-theme.vlg-menu-open .vlg-nav.is-open .vlg-nav-inner {
    padding-bottom: max(34px, calc(env(safe-area-inset-bottom) + 24px)) !important;
  }

  /* Main category scroll area: larger height + bigger bottom padding */
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > ul,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > .vlg-cat-dropdown-list,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-cat-tree,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > ul,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > .vlg-cat-dropdown-list,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown .vlg-cat-tree,
  body.vlg-theme.vlg-mobile-auto-open-categories .vlg-nav.is-open .vlg-cat-tree {
    max-height: min(66vh, calc(100vh - 168px)) !important;
    padding-bottom: max(72px, calc(env(safe-area-inset-bottom) + 56px)) !important;
    margin-bottom: 4px !important;
    overscroll-behavior-y: contain !important;
    scroll-padding-bottom: 72px !important;
  }

  @supports (height: 100dvh) {
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > ul,
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > .vlg-cat-dropdown-list,
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-cat-tree,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > ul,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > .vlg-cat-dropdown-list,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown .vlg-cat-tree,
    body.vlg-theme.vlg-mobile-auto-open-categories .vlg-nav.is-open .vlg-cat-tree {
      max-height: min(66dvh, calc(100dvh - 168px)) !important;
    }
  }

  /* Spacer after the final category item so the last row never sits against the bottom edge */
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > ul::after,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > .vlg-cat-dropdown-list::after,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-cat-tree::after,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > ul::after,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > .vlg-cat-dropdown-list::after,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown .vlg-cat-tree::after,
  body.vlg-theme.vlg-mobile-auto-open-categories .vlg-nav.is-open .vlg-cat-tree::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 64px !important;
    flex: 0 0 64px !important;
  }

  /* Keep the last rows fully clickable and not visually jammed */
  body.vlg-theme .vlg-nav.is-open .vlg-cat-tree .vlg-cat-item:last-child,
  body.vlg-theme .vlg-nav.is-open .vlg-cat-tree .vlg-cat-item:last-child > .vlg-cat-submenu,
  body.vlg-theme .vlg-nav.is-open .vlg-cat-dropdown-list li:last-child,
  body.vlg-theme.vlg-menu-open .vlg-nav.is-open .vlg-cat-tree .vlg-cat-item:last-child,
  body.vlg-theme.vlg-menu-open .vlg-nav.is-open .vlg-cat-dropdown-list li:last-child {
    margin-bottom: 12px !important;
  }
}

@media (max-width: 430px) {
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > ul,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > .vlg-cat-dropdown-list,
  body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-cat-tree,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > ul,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > .vlg-cat-dropdown-list,
  body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown .vlg-cat-tree,
  body.vlg-theme.vlg-mobile-auto-open-categories .vlg-nav.is-open .vlg-cat-tree {
    max-height: min(68vh, calc(100vh - 160px)) !important;
    padding-bottom: max(88px, calc(env(safe-area-inset-bottom) + 68px)) !important;
    scroll-padding-bottom: 88px !important;
  }

  @supports (height: 100dvh) {
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > ul,
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-category-dropdown > .vlg-cat-dropdown-list,
    body.vlg-theme .vlg-nav.is-open .vlg-category-menu.is-open .vlg-cat-tree,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > ul,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown > .vlg-cat-dropdown-list,
    body.vlg-theme .vlg-nav.is-open .vlg-category-button[aria-expanded="true"] + .vlg-category-dropdown .vlg-cat-tree,
    body.vlg-theme.vlg-mobile-auto-open-categories .vlg-nav.is-open .vlg-cat-tree {
      max-height: min(68dvh, calc(100dvh - 160px)) !important;
    }
  }
}
