/* =====================================================================
   GeoSprig — Responsive behavior (mobile-first, spec section 16)
   ===================================================================== */
@media (max-width: 900px) {
  .sidebar { display: none; }
  .main { padding: var(--sp-4); }
  .topbar { padding: 0 var(--sp-4); }
  .kpi-strip { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .topbar { gap: var(--sp-2); }
  .topbar .user-name { display: none; }
  .badge-edition { font-size: 0.625rem; padding: var(--sp-1) var(--sp-2); }
  .phone-hidden { display: none; }
  .card { padding: var(--sp-4); }
  .kpi-strip { grid-template-columns: 1fr 1fr; gap: var(--sp-2); }
  .search-composer { padding: var(--sp-4); }
  .results-toolbar { gap: var(--sp-2); }
  .toast-wrap { left: var(--sp-4); right: var(--sp-4); bottom: var(--sp-4); }
}

/* Ensure no horizontal overflow on any small screen */
html, body { overflow-x: hidden; }
img, svg { max-width: 100%; }
@media (max-width: 1100px) {
  .pipeline-grid { gap:var(--sp-2); }
  .pipeline-card { padding:var(--sp-2); }
}

@media (max-width: 900px) {
  .nav-group { display:none; }
  .mobile-nav-group { display:block; }
  .crm-workspace.state-detail { grid-template-columns:1fr; }
  .crm-detail-pane { border-left:0; border-top:1px solid var(--border); }
  .crm-detail-inner { max-height:none; }
  .pipeline-viewport { max-height:65vh; }
}

@media (max-width: 640px) {
  .manual-grid, .two-fields { grid-template-columns:1fr; }
  .manual-grid-full { grid-column:auto; }
  .crm-header-actions { width:100%; }
  .crm-header-actions .btn { flex:1; justify-content:center; }
  .pipeline-grid { padding:var(--sp-2); grid-template-columns:repeat(5,minmax(0,1fr)); }
  .state-detail .pipeline-grid { min-width:1120px; }
  .crm-detail-inner { padding:var(--sp-3); }
}
