@media (max-width: 900px) {
  #top { padding: 7px 12px; flex-wrap: wrap; min-height: 48px; }
  #top .uptime { font-size: 0.72rem; padding: 3px 8px; }
  #top .reflector-name { font-size: 0.88rem; }
  #menubar { top: 48px; padding: 0 8px; overflow-x: auto; }
  #menu { flex-wrap: nowrap; }
  .menulink { padding: 10px 12px; font-size: 0.85rem; }
  #content { padding: 14px; }

  .layout-grid { grid-template-columns: 1fr; gap: 14px; }

  .listingtable { font-size: 0.82rem; }
  .listingtable thead th { padding: 8px 8px; font-size: 0.68rem; }
  .listingtable td { padding: 7px 8px; }

  .filters { padding: 10px; gap: 6px; }
  .FilterField, .filter-form input[type="text"] { width: 130px; }
}

@media (max-width: 640px) {
  html { font-size: 13px; }
  #top .brand img, #top .brand svg { height: 24px; }
  #top .uptime { display: none; }
  .menulink { padding: 8px 10px; }
  .menulink .count { display: none; }

  .listingtable th:nth-child(4),
  .listingtable td:nth-child(4),
  .listingtable th:nth-child(5),
  .listingtable td:nth-child(5),
  .listingtable th:nth-child(6),
  .listingtable td:nth-child(6) {
    display: none;
  }

  .modules-grid { grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); gap: 6px; padding: 10px; }
  .module-card { padding: 8px; }
}

.table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: var(--radius-lg);
}

@media (max-width: 480px) {
  #content { padding: 8px; }
  .panel { border-radius: var(--radius-md); }
}
