/* Denright shared breakpoints: 480 / 768 / 1024 / 1280 */
img, video { max-width: 100%; height: auto; }
table { max-width: 100%; }
.table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

@media (max-width: 479px) {
  body { font-size: 15px; }
  .wrap, .header-inner, main { padding-left: 0.75rem !important; padding-right: 0.75rem !important; }
}

@media (max-width: 767px) {
  .grid2, .form-row, .admin-grid-2, .sigs { grid-template-columns: 1fr !important; display: block; }
  .admin-tabs, .admin-sidenav .admin-tabs, .field-side, .nav-links, .dr-nav .nav-links {
    display: inline-flex !important;
    flex-wrap: nowrap;
    gap: 0.3rem;
    overflow-x: auto;
    max-width: 100%;
    white-space: nowrap;
  }
  .admin-sidenav button[data-tab],
  .admin-tabs button,
  .field-side button {
    font-size: 0.8rem !important;
    padding: 0.4rem 0.55rem !important;
  }
  .header-inner, .session-bar { flex-wrap: wrap; }
  .toolbar { flex-direction: column; align-items: stretch; }
  .sheet { width: auto !important; min-height: auto !important; margin: 0 !important; padding: 12px !important; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .admin-tabs, .field-side, .nav-links { flex-wrap: nowrap; overflow-x: auto; }
}

@media (min-width: 1024px) {
  .wrap { max-width: 1100px; }
}

@media (min-width: 1280px) {
  .wrap { max-width: 1240px; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation: none !important; transition: none !important; }
}
