/* PiXENDA mobile menu (pairs with /js/nav.js) */
.menu-btn { display: none; }

@media (max-width: 640px) {
  .menu-btn {
    display: inline-flex; align-items: center; justify-content: center;
    flex: 0 0 auto; width: 38px; height: 38px; margin-left: 10px; padding: 0;
    border: 1px solid var(--line, rgba(128,128,128,.35)); border-radius: 50%;
    background: transparent; color: inherit; cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  .menu-btn:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
  .menu-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
  .menu-btn .i-close { display: none; }
  header.top.menu-open .menu-btn .i-open { display: none; }
  header.top.menu-open .menu-btn .i-close { display: block; }

  header.top.menu-open .nav-links {
    display: flex; flex-direction: column; gap: 0;
    position: fixed; left: 0; right: 0; top: var(--menu-top, 64px); z-index: 1000;
    margin: 0; padding: 4px 24px calc(12px + env(safe-area-inset-bottom, 0px));
    background: var(--menu-bg, #0b1120);
    border-bottom: 1px solid var(--line, rgba(128,128,128,.35));
    box-shadow: 0 14px 28px rgba(0,0,0,.28);
    max-height: calc(100vh - var(--menu-top, 64px));
    max-height: calc(100dvh - var(--menu-top, 64px));
    overflow-y: auto;
  }
  header.top.menu-open .nav-links a {
    display: block; padding: 15px 2px; font-size: 17px;
    border-bottom: 1px solid var(--line, rgba(128,128,128,.35));
  }
  header.top.menu-open .nav-links a:last-child { border-bottom: 0; }
}
