.mobile-menu-btn { display: none; }
@media (max-width: 900px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: fixed; left: -280px; top: 0; width: var(--sidebar-width); z-index: 60; transition: left .2s ease; }
  .sidebar.open { left: 0; }
  .mobile-menu-btn { display: grid; }
  .grid-4, .grid-3, .form-grid { grid-template-columns: 1fr; }
  .app-content { padding: 16px; }
}
