@media (max-width: 1180px){
    .span-8,
    .span-7,
    .span-6,
    .span-5,
    .span-4{ grid-column:span 12; }
    .topbar{ flex-wrap:wrap; }
    .search-box{ width:min(100%, 420px); flex:1; }
}

@media (max-width: 1100px){
    .metrics-grid,
    .dashboard-summary-grid,
    .dashboard-dist-grid,
    .dashboard-activity-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px){
    .app-shell{ grid-template-columns:1fr; }
    .topbar{ margin:-16px -16px 16px; padding:14px 16px; }
    .sidebar{ position:fixed; top:0; left:0; width:min(88vw, 320px); height:100vh; transform:translateX(-100%); transition:transform var(--transition); box-shadow:var(--shadow-3); }
    .app-shell.is-collapsed{ grid-template-columns:1fr; }
    .app-shell.is-collapsed .sidebar{ width:min(88vw, 320px); padding:18px 16px; }
    .app-shell.is-collapsed .brand-copy,
    .app-shell.is-collapsed .collapse-btn span,
    .app-shell.is-collapsed .nav-label,
    .app-shell.is-collapsed .user-copy{ display:initial; }
    .app-shell.is-collapsed .nav-link{ justify-content:flex-start; gap:12px; padding-inline:14px; }
    .app-shell.is-collapsed .collapse-btn{ width:100%; padding:0 14px; }
    .app-shell.is-collapsed .user-card{ justify-content:flex-start; padding-inline:14px; }
    body.sidebar-open .sidebar{ transform:translateX(0); }
    body.sidebar-open .sidebar-overlay{ opacity:1; visibility:visible; pointer-events:auto; }
    .mobile-menu-btn,
    .mobile-close{ display:grid; }
    .collapse-btn{ display:none; }
    .main-area{ padding:16px; }
}

@media (max-width: 860px){
    .panel-head,
    .panel-head--center,
    .pastores-panel-head,
    .templos-panel-head,
    .casos-panel-head,
    .atenciones-panel-head,
    .cierres-panel-head,
    .dashboard-panel-head{ align-items:flex-start; }
    .pastores-panel-head .btn,
    .templos-panel-head .btn,
    .casos-panel-head .btn,
    .atenciones-panel-head .btn,
    .cierres-panel-head .btn,
    .dashboard-panel-head .btn{ width:100%; }
    .pastor-view-grid{ grid-template-columns:1fr; }
    .pastor-view-item,
    .pastor-view-item-full{ grid-column:auto; }
}

@media (max-width: 760px){
    .topbar-right{ flex-wrap:wrap; justify-content:flex-start; }
    .search-box{ order:10; width:100%; flex-basis:100%; }
    .form-grid{ grid-template-columns:1fr; }
    .panel-head{ flex-direction:column; align-items:stretch; }
    .panel-actions,
    .table-filters{ width:100%; }
    .metrics-grid,
    .dashboard-summary-grid,
    .dashboard-dist-grid,
    .dashboard-activity-grid{ grid-template-columns:1fr; }
    .status-pill{ justify-self:start; white-space:normal; line-height:1.2; padding:8px 12px; min-height:unset; }
}

@media (max-width: 560px){
    .main-area{ padding:12px; }
    .topbar{ margin:-12px -12px 16px; padding:14px 12px; }
    .page-heading h1{ font-size:20px; }
    .page-heading p{ white-space:normal; }
    .profile-btn{ width:50px; height:50px; padding:0; justify-content:center; }
    .profile-copy{ display:none; }
    .metric-card,
    .panel{ border-radius:20px; }
}
