.mobile-menu-toggle,.mobile-menu { display:none; }
.mobile-menu[hidden] { display:none!important; }
@media(max-width:1100px) {
  .sidebar.has-mobile-menu,.info-header.has-mobile-menu { flex-wrap:wrap; height:auto; gap:12px; padding:16px 18px; align-items:center; }
  .has-mobile-menu>.brand { order:0; margin-right:auto; }
  .has-mobile-menu .mobile-menu-toggle { order:1; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 14px; border:1px solid var(--line); border-radius:10px; background:var(--bg); color:var(--ink); font:600 13px/1.2 system-ui,sans-serif; cursor:pointer; }
  .mobile-menu-toggle svg { width:20px; height:20px; }
  .sidebar.has-mobile-menu>#navigation { display:none; }
  .info-header.has-mobile-menu>div { order:2; width:100%; flex-direction:row; justify-content:flex-end; align-items:center; gap:10px; flex-wrap:wrap; }
  .info-header.has-mobile-menu .blog-header-link,.info-header.has-mobile-menu .back-link { display:none; }
  .has-mobile-menu>.mobile-menu { order:3; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; margin:0; padding:10px 0 0; gap:6px; border-top:1px solid var(--line); max-height:65dvh; overflow-y:auto; overscroll-behavior:contain; }
  .mobile-menu a { display:flex; align-items:center; min-height:48px; padding:12px; border-radius:8px; color:var(--muted); font:500 13px/1.4 system-ui,sans-serif; text-decoration:none; overflow-wrap:anywhere; }
  .mobile-menu a:hover,.mobile-menu a[aria-current] { color:var(--red); background:var(--soft); }
  .mobile-menu a[aria-current] { font-weight:700; }
  .mobile-menu a:focus-visible,.mobile-menu-toggle:focus-visible { outline:2px solid var(--red); outline-offset:-2px; }
}
@media(max-width:350px) {
  .has-mobile-menu>.brand { font-size:20px; }
  .sidebar.has-mobile-menu>.brand { gap:8px; }
  .sidebar.has-mobile-menu .brand-icon { width:34px; height:34px; }
  .sidebar.has-mobile-menu .brand small { font-size:6px; letter-spacing:.8px; }
  .has-mobile-menu .mobile-menu-toggle { padding:10px; gap:6px; }
  .mobile-menu a { font-size:12px; padding:10px; }
}
