@media (max-width: 991.98px) {
  .app-main { margin-left: 0; width: 100%; }
  .topbar { height: 66px; padding: 0 14px; }
  .content-wrapper { padding-left: 14px!important; padding-right: 14px!important; }
  .detail-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
  .page-header { align-items: stretch; flex-direction: column; }
  .page-actions { width: 100%; }
  .page-actions .btn { flex: 1 1 auto; }
  .filter-card .btn { width: 100%; }
  .card-body { padding: 1rem; }
  .responsive-table thead { display: none; }
  .responsive-table, .responsive-table tbody, .responsive-table tr, .responsive-table td { display: block; width: 100%; }
  .responsive-table tr { border-bottom: 1px solid var(--border); padding: 12px 0; }
  .responsive-table tr:last-child { border-bottom: 0; }
  .responsive-table td { border: 0; padding: 5px 14px; display: flex; justify-content: space-between; gap: 12px; text-align: right; }
  .responsive-table td::before { content: attr(data-label); font-weight: 700; color: var(--muted); text-align: left; }
  .responsive-table td.mobile-primary { display: block; text-align: left; padding-top: 10px; }
  .responsive-table td.mobile-primary::before { display: none; }
  .responsive-table td.mobile-actions { justify-content: flex-end; padding-bottom: 10px; }
  .responsive-table td.mobile-actions::before { display: none; }
  .detail-grid { grid-template-columns: 1fr; }
  .app-footer { flex-direction: column; gap: 3px; text-align: center; }
}
@media (max-width: 575.98px) {
  .topbar .btn-brand { padding-inline: 10px; }
  .stat-card h3 { font-size: 1.35rem; }
  .auth-form-panel { padding: 16px; }
  .auth-card-wrap { padding: 22px; }
}
