/* Publication menu: left edge follows the header's left-hand trigger. */
#mm-mobile-menu.mm-navigation-drawer {
  position: fixed;
  inset: 0 auto 0 0;
  margin: 0;
  width: min(420px, 100vw);
  max-width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  border: 0;
  border-radius: 0;
  overflow: auto;
  overscroll-behavior: contain;
  box-shadow: 12px 0 48px #0002;
}
#mm-mobile-menu.mm-navigation-drawer[open] { animation: mm-drawer-enter 180ms ease-out; }
#mm-mobile-menu .mm-dialog-content { padding: 28px 30px; min-height: 100%; max-height: none; overflow: visible; }
#mm-mobile-menu .mm-dialog-heading { padding-bottom: 22px; }
#mm-mobile-menu .mm-icon-button { width: 44px; height: 44px; min-width: 44px; border: 0; background: transparent; font-size: 28px; }
#mm-mobile-menu .mm-mobile-nav { display: flex; flex-direction: column; gap: 8px; padding: 24px 0 0; font-size: clamp(28px, 5vw, 36px); line-height: 1.15; }
#mm-mobile-menu .mm-mobile-nav a { display: flex; align-items: center; min-height: 56px; padding: 8px 0; }
#mm-mobile-menu .mm-mobile-nav a:hover { color: #D7282F; }
@keyframes mm-drawer-enter { from { transform: translateX(-100%); } to { transform: translateX(0); } }
@media (max-width: 480px) { #mm-mobile-menu .mm-dialog-content { padding: 20px 24px; } }
@media (prefers-reduced-motion: reduce) { #mm-mobile-menu.mm-navigation-drawer[open] { animation: none; } }
