/* ================================================================
   Forenses.net — buddypress.css v3.0
   Adaptado 1:1 de BuddyWeb (paramiweb.com), con la paleta de
   forenses.net. Mismos arreglos estructurales probados en producción.

   COLUMNAS:
   - Actividad: 2 col escritorio, 1 móvil
   - Grupos:    3 col escritorio, 2 tablet (≤1024px), 1 móvil (≤768px)
   - Miembros:  3 col escritorio, 2 tablet (≤1024px), 1 móvil (≤768px)
   ================================================================ */

/* ── BASE ──────────────────────────────────────────────────── */
body.bp-page { background: #fff; }

.bp-page .site-content,
.bp-page #content { max-width: 100% !important; width: 100% !important; padding: 0 !important; }

#buddypress {
  width: 100%;
  box-sizing: border-box;
  font-family: var(--sans);
  color: var(--ink-2);
}
#buddypress * { box-sizing: border-box; }
#buddypress a { color: var(--blue); text-decoration: none; }
#buddypress a:hover { color: var(--blue-dark); }

/* ── FIX CRÍTICO: nav vertical de BP Nouveau ──────────────────
   Por defecto BP Nouveau puede montar la navegación de
   directorio en modo vertical (columna lateral), dejando un
   hueco enorme en Actividad y Miembros. Forzamos horizontal.
   ─────────────────────────────────────────────────────────── */
.bp-dir-vert-nav .dir-navs,
.bp-dir-vert-nav .bp-navs.dir-navs,
.bp-dir-vert-nav nav.dir-navs {
  float: none !important; width: 100% !important; position: static !important; display: block !important;
}
.bp-dir-vert-nav .dir-navs ul {
  display: flex !important; flex-direction: row !important; flex-wrap: wrap !important;
  float: none !important; width: 100% !important;
}
.bp-dir-vert-nav .dir-navs ul li { float: none !important; width: auto !important; }
.bp-dir-vert-nav .screen-content {
  margin-left: 0 !important; border-left: none !important; padding-left: 0 !important;
  width: 100% !important; float: none !important;
}
#buddypress .screen-content { width: 100% !important; max-width: 100% !important; margin-left: 0 !important; float: none !important; }

/* ── NAVEGACIÓN DE DIRECTORIOS ────────────────────────────────
   Real: nav.bp-navs / nav.dir-navs / nav.main-navs / nav.groups-type-navs
   ─────────────────────────────────────────────────────────── */
#buddypress nav.bp-navs,
#buddypress nav.dir-navs,
#buddypress nav.main-navs,
#buddypress nav.groups-type-navs,
#buddypress nav ul.component-navigation {
  margin-bottom: 1.5rem !important; border-bottom: 2px solid var(--border) !important; background: none !important;
}
#buddypress nav.bp-navs ul,
#buddypress nav.dir-navs ul,
#buddypress nav.main-navs ul,
#buddypress nav.groups-type-navs ul,
#buddypress ul.component-navigation {
  display: flex !important; flex-wrap: wrap !important; list-style: none !important;
  margin: 0 !important; padding: 0 !important; gap: 2px !important; border: none !important; background: none !important;
}
#buddypress nav.bp-navs ul li a,
#buddypress nav.dir-navs ul li a,
#buddypress nav.main-navs ul li a,
#buddypress nav.groups-type-navs ul li a,
#buddypress ul.component-navigation li a {
  display: inline-flex !important; align-items: center !important; gap: 6px !important;
  padding: 10px 16px !important; font-size: .875rem !important; font-weight: 700 !important;
  color: var(--muted) !important; border-bottom: 3px solid transparent !important; margin-bottom: -2px !important;
  text-transform: uppercase !important; letter-spacing: .04em !important; transition: all 150ms !important;
  white-space: nowrap !important; background: none !important;
}
#buddypress nav.bp-navs ul li a:hover,
#buddypress ul.component-navigation li a:hover { color: var(--blue) !important; border-bottom-color: var(--blue) !important; }
#buddypress nav.bp-navs ul li.current a,
#buddypress nav.bp-navs ul li.selected a,
#buddypress nav.dir-navs ul li.current a,
#buddypress nav.main-navs ul li.current a,
#buddypress nav.groups-type-navs ul li.current a,
#buddypress ul.component-navigation li.selected a,
#buddypress ul.component-navigation li.current a {
  color: var(--blue-dark) !important; border-bottom-color: var(--blue-dark) !important;
}
#buddypress nav.bp-navs ul li a span,
#buddypress ul.component-navigation li a .count {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  min-width: 20px !important; height: 20px !important; padding: 0 5px !important;
  font-size: .65rem !important; font-weight: 700 !important;
  background: var(--blue) !important; color: #fff !important; border-radius: 9999px !important;
}
#buddypress nav.bp-navs ul li.current a span { background: var(--blue-dark) !important; }

/* ── BUSCADOR ─────────────────────────────────────────────── */
#buddypress .bp-dir-search-form,
#buddypress .bp-search-form {
  display: flex !important; align-items: center !important; gap: 8px !important;
  max-width: 460px !important; margin-bottom: 1rem !important;
}
#buddypress .bp-dir-search-form input[type="search"],
#buddypress .bp-search-form input[type="search"] {
  flex: 1 !important; min-width: 0 !important; height: 42px !important; padding: 0 14px !important;
  border: 2px solid var(--border) !important; border-radius: var(--radius) !important;
  font-size: .9rem !important; background: #fff !important; outline: none !important;
}
#buddypress .bp-dir-search-form input[type="search"]:focus { border-color: var(--blue) !important; }
#buddypress .bp-dir-search-form button.nouveau-search-submit,
#buddypress .bp-search-form input[type="submit"] {
  flex: 0 0 42px !important; width: 42px !important; height: 42px !important;
  background: var(--blue) !important; color: #fff !important; border: none !important;
  border-radius: var(--radius) !important; cursor: pointer !important;
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  transition: background 150ms !important;
}
#buddypress .bp-dir-search-form button.nouveau-search-submit:hover { background: var(--blue-dark) !important; }

/* ── FILTRO (orden por...) ────────────────────────────────── */
#buddypress .last.filter { display: flex !important; justify-content: flex-end !important; margin-bottom: 1rem !important; }
#buddypress .last.filter select,
#buddypress select {
  padding: 8px 14px !important; border: 2px solid var(--border) !important; border-radius: var(--radius) !important;
  font-size: .875rem !important; background: #fff !important; outline: none !important;
}

/* ── GRID GRUPOS Y MIEMBROS — 3 columnas ─────────────────────
   Estructura REAL confirmada por inspección directa:
   #groups-dir-list.groups.dir-list > ul#groups-list.item-list
     > li.odd/even.bp-group-status-public...
         > div.item-avatar > a > img
         > div.item > div.item-title, div.item-meta, div.item-desc
         > div.action
         > div.clear
   ─────────────────────────────────────────────────────────── */
#buddypress #groups-list,
#buddypress #members-list {
  display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 1.5rem !important;
  list-style: none !important; margin: 0 !important; padding: 0 !important; width: 100% !important; align-items: start !important;
}

/* Neutralizar floats clásicos de BP que causan el solapamiento */
#buddypress #groups-list > li,
#buddypress #members-list > li,
#buddypress #groups-list .item-avatar,
#buddypress #groups-list .item,
#buddypress #members-list .item-avatar,
#buddypress #members-list .item {
  float: none !important; clear: none !important; width: auto !important;
}
#buddypress #groups-list .clear,
#buddypress #members-list .clear { display: none !important; }

/* La propia <li> ES la tarjeta */
#buddypress #groups-list > li,
#buddypress #members-list > li {
  background: var(--surface-1) !important; border: 1px solid var(--border) !important;
  border-radius: 14px !important; overflow: hidden !important;
  display: flex !important; flex-direction: column !important;
  padding: 0 !important; margin: 0 !important; position: relative !important;
  grid-column: auto !important; grid-row: auto !important;
  transition: box-shadow 160ms, transform 160ms !important;
}
#buddypress #groups-list > li:hover,
#buddypress #members-list > li:hover {
  box-shadow: 0 6px 24px rgba(47,101,185,.14) !important; transform: translateY(-3px) !important;
}
#buddypress #groups-list > li::before,
#buddypress #members-list > li::before {
  content: '' !important; display: block !important; height: 3px !important; background: var(--blue) !important;
  width: 0 !important; transition: width 240ms !important;
  position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important;
}
#buddypress #groups-list > li:hover::before,
#buddypress #members-list > li:hover::before { width: 100% !important; }

/* Avatar centrado arriba */
#buddypress .item-avatar {
  padding: 1.5rem 1.5rem 0 !important; text-align: center !important; width: 100% !important; box-sizing: border-box !important;
}
#buddypress .item-avatar a { display: inline-block !important; }
#buddypress .item-avatar img {
  width: 80px !important; height: 80px !important; border-radius: 50% !important; object-fit: cover !important;
  display: block !important; margin: 0 auto !important; border: none !important;
}

/* Bloque de texto centrado — cubre tanto Legacy (.item-title/.item-desc)
   como Nouveau (h2.list-title dentro de .item-block, .group-desc p) */
#buddypress .item,
#buddypress .item-block {
  flex: 1 !important; padding: 1rem 1.25rem 1.25rem !important; text-align: center !important;
  width: 100% !important; box-sizing: border-box !important; word-break: break-word !important;
  display: flex !important; flex-direction: column !important;
}
#buddypress .item-title,
#buddypress h2.list-title {
  font-size: 1rem !important; font-weight: 700 !important; color: var(--ink) !important;
  margin: 0 0 .4rem !important; line-height: 1.3 !important;
}
#buddypress .item-title a,
#buddypress h2.list-title a { color: var(--ink) !important; }
#buddypress .item-title a:hover,
#buddypress h2.list-title a:hover { color: var(--blue) !important; }
#buddypress .item-meta,
#buddypress p.item-meta,
#buddypress p.last-activity {
  font-size: .82rem !important; color: var(--muted) !important; margin: 0 0 .5rem !important;
  line-height: 1.5 !important;
}
#buddypress .item-desc,
#buddypress .group-desc p {
  font-size: .85rem !important; color: var(--muted) !important; font-style: italic !important;
  margin: .35rem 0 0 !important; overflow: hidden !important;
  display: -webkit-box !important; -webkit-line-clamp: 3 !important; -webkit-box-orient: vertical !important;
}

/* Botones de acción */
#buddypress #groups-list .action,
#buddypress #members-list .action {
  padding: .75rem 1rem !important; border-top: 1px solid var(--border) !important; background: #fff !important;
  display: flex !important; justify-content: center !important; gap: 8px !important; flex-wrap: wrap !important;
  width: 100% !important; margin: auto 0 0 !important; box-sizing: border-box !important;
}
/* Si no hay botón dentro, no dejar el hueco del borde superior */
#buddypress #groups-list .action:empty,
#buddypress #members-list .action:empty { display: none !important; }

/* ── GRID ACTIVIDAD — 2 columnas ─────────────────────────────── */
#buddypress ul.activity-list {
  display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 1.25rem !important;
  list-style: none !important; margin: 0 !important; padding: 0 !important; width: 100% !important; align-items: start !important;
}

/* Loader / cargar más */
#buddypress li#bp-ajax-loader { display: none !important; }
#buddypress li#bp-ajax-loader.loading { display: block !important; grid-column: 1 / -1 !important; text-align: center !important; padding: 2rem !important; }
#buddypress li.load-more { grid-column: 1 / -1 !important; text-align: center !important; background: transparent !important; border: none !important; box-shadow: none !important; padding: 1rem !important; }
#buddypress li.load-more::before { display: none !important; }
#buddypress li.load-more a { display: inline-flex !important; padding: 10px 24px !important; background: var(--blue) !important; color: #fff !important; border-radius: var(--radius) !important; font-weight: 700 !important; font-size: .875rem !important; text-transform: uppercase !important; }
#buddypress li.load-more a:hover { background: var(--blue-dark) !important; }

/* ── FIX: hueco de la primera celda del grid ─────────────────
   BP Nouveau puede aplicar grid-column-start al primer <li>
   y su ::before ocupa una celda. Neutralizamos ambos.
   ─────────────────────────────────────────────────────────── */
#buddypress #groups-list::before, #buddypress ul.groups-list::before,
#buddypress #members-list::before, #buddypress ul.members-list::before,
#buddypress ul.activity-list::before { display: none !important; content: none !important; width: 0 !important; height: 0 !important; }
#buddypress #groups-list > li:first-child, #buddypress ul.groups-list > li:first-child,
#buddypress #members-list > li:first-child, #buddypress ul.members-list > li:first-child,
#buddypress ul.activity-list > li:first-child { grid-column-start: 1 !important; grid-column-end: auto !important; }
#buddypress #groups-list > li, #buddypress ul.groups-list > li,
#buddypress #members-list > li, #buddypress ul.members-list > li,
#buddypress ul.activity-list > li { grid-column: auto !important; grid-row: auto !important; width: 100% !important; max-width: 100% !important; float: none !important; clear: none !important; margin: 0 !important; min-width: 0 !important; }

/* ── ACTIVIDAD: contenedor ────────────────────────────────── */
#buddypress #activity-stream { display: block !important; width: 100% !important; float: none !important; padding: 0 !important; margin: 0 !important; }

/* ── ITEM DE ACTIVIDAD ───────────────────────────────────────
   Header blanco + cuerpo gris claro + footer de acciones,
   sin avatar lateral (todo el ancho para el contenido).
   ─────────────────────────────────────────────────────────── */
#buddypress li.activity-item {
  background: var(--surface-1) !important; border: 1px solid var(--border) !important; border-radius: 14px !important;
  overflow: hidden !important; width: 100% !important; float: none !important; list-style: none !important;
  display: flex !important; flex-direction: column !important; margin: 0 !important; position: relative !important;
}
#buddypress li.activity-item::before {
  content: '' !important; display: block !important; height: 3px !important; background: var(--blue) !important;
  width: 0 !important; transition: width 240ms !important; position: absolute !important; top: 0 !important; left: 0 !important; z-index: 1 !important;
}
#buddypress li.activity-item:hover { border-color: var(--blue) !important; }
#buddypress li.activity-item:hover::before { width: 100% !important; }

#buddypress li.activity-item > .activity-avatar,
#buddypress li.activity-item > div.activity-avatar {
  display: none !important; width: 0 !important; height: 0 !important; overflow: hidden !important;
  position: absolute !important; pointer-events: none !important;
}
#buddypress li.activity-item > .activity-content {
  flex: 1 !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important;
  display: flex !important; flex-direction: column !important; float: none !important;
}
#buddypress li.activity-item .activity-header {
  width: 100% !important; padding: .875rem 1.25rem !important; background: #fff !important;
  border-bottom: 1px solid var(--border) !important; margin: 0 !important; box-sizing: border-box !important; float: none !important;
}
#buddypress li.activity-item .activity-header p { margin: 0 !important; color: var(--muted) !important; font-size: .875rem !important; line-height: 1.5 !important; }
#buddypress li.activity-item .activity-header p a { font-weight: 700 !important; color: var(--ink) !important; }
#buddypress li.activity-item .activity-header p a:hover { color: var(--blue) !important; }

#buddypress li.activity-item .activity-inner {
  font-family: var(--reading);
  width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important;
  font-size: .95rem !important; color: var(--ink-2) !important; line-height: 1.7 !important;
  background: var(--surface-1) !important; box-sizing: border-box !important; float: none !important; overflow: hidden !important;
}
#buddypress li.activity-item .activity-inner * { float: none !important; clear: none !important; }
#buddypress li.activity-item .activity-inner p { margin: 0 !important; padding: .75rem 1.25rem !important; }

/* Primera imagen: ancho completo, sin recorte, pegada al header */
#buddypress li.activity-item .activity-inner img:not(.emoji) {
  display: block !important; width: 100% !important; max-width: 100% !important; height: auto !important; max-height: none !important;
  object-fit: contain !important; object-position: center top !important; float: none !important; margin: 0 !important;
  border-radius: 0 !important; background: var(--surface-1) !important;
}
#buddypress li.activity-item .activity-inner p:has(> img:first-child:not(.emoji)) { padding: 0 !important; margin: 0 !important; }

/* Meta / acciones */
#buddypress li.activity-item .activity-meta {
  width: 100% !important; padding: .625rem 1.25rem !important; border-top: 1px solid var(--border) !important;
  background: #fff !important; display: flex !important; flex-wrap: wrap !important; gap: 8px !important;
  margin: 0 !important; box-sizing: border-box !important; float: none !important; margin-top: auto !important;
}
#buddypress li.activity-item .activity-meta a {
  font-size: .78rem !important; font-weight: 700 !important; color: var(--muted) !important; padding: 4px 10px !important;
  border: 1.5px solid var(--border) !important; border-radius: 4px !important; text-transform: uppercase !important;
  letter-spacing: .03em !important; transition: all 150ms !important; background: #fff !important;
}
#buddypress li.activity-item .activity-meta a:hover { background: var(--blue) !important; color: #fff !important; border-color: var(--blue) !important; }
#buddypress li.activity-item .activity-comments { width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }

#buddypress li.activity-item .activity-inner a,
#buddypress li.activity-item .activity-content a:not(.button):not(.bp-tooltip) {
  color: var(--blue) !important; text-decoration: underline !important; text-underline-offset: 2px !important; transition: color 150ms !important;
}
#buddypress li.activity-item .activity-inner a:hover { color: var(--blue-dark) !important; }

/* Vídeos embebidos */
#buddypress .activity-inner .wp-block-embed,
#buddypress .activity-inner .embed-responsive,
#buddypress .activity-inner .video-wrapper {
  position: relative !important; width: 100% !important; padding-bottom: 56.25% !important; height: 0 !important;
  overflow: hidden !important; margin: 0 !important; background: #000 !important;
}
#buddypress .activity-inner .wp-block-embed iframe,
#buddypress .activity-inner .video-wrapper iframe,
#buddypress .activity-inner video {
  position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; border: none !important;
}

/* Vista detalle de una actividad individual */
body.activity-permalink #buddypress ul.activity-list { display: block !important; max-width: 1440px !important; margin: 0 auto !important; }
body.activity-permalink #buddypress li.activity-item { width: 100% !important; }
body.activity-permalink #buddypress li.activity-item .activity-inner img {
  object-fit: contain !important; max-height: none !important; height: auto !important; width: 100% !important; background: var(--surface-1) !important;
}

/* ── CABECERA GRUPO / PERFIL — portada con degradado ──────────── */
#buddypress #item-header { background: #fff; border: 1px solid var(--border); border-radius: 16px; overflow: visible !important; margin-bottom: 1.5rem; }
#buddypress #cover-image-container {
  position: relative !important; width: 100% !important; height: 225px !important; overflow: hidden !important;
  border-radius: 16px 16px 0 0 !important;
  background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%) !important;
}
#buddypress #header-cover-image { position: absolute !important; top: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; background-size: cover !important; background-position: center !important; z-index: 1 !important; }
#buddypress #item-header-cover-image {
  position: relative !important; z-index: 2 !important; display: flex !important; align-items: flex-end !important;
  padding: 0 2rem 1.5rem !important; height: 100% !important;
  background: linear-gradient(to top, rgba(0,0,0,.5) 0%, transparent 60%) !important;
}
#buddypress #item-header-cover-image #item-header-avatar { flex-shrink: 0 !important; padding: 0 !important; margin: 0 1.5rem 0 0 !important; float: none !important; width: auto !important; }
#buddypress #item-header-cover-image #item-header-avatar img { width: 90px !important; height: 90px !important; border-radius: var(--radius) !important; border: 3px solid #fff !important; object-fit: cover !important; display: block !important; }
#buddypress #item-header-cover-image #item-header-content { color: #fff !important; padding: 0 !important; float: none !important; width: auto !important; }
#buddypress #item-header-cover-image #item-header-content h2 { color: #fff !important; font-size: 1.5rem !important; font-weight: 800 !important; margin: 0 0 .25rem !important; text-shadow: 0 1px 3px rgba(0,0,0,.4) !important; }
#buddypress #item-header-cover-image #item-header-content .activity { color: rgba(255,255,255,.85) !important; font-size: .875rem !important; margin: 0 !important; }

/* Ocultar admins/mods sobrantes en la cabecera del grupo, y en
   cualquier otra parte de la página (widget "Administradores de
   grupo" con avatares, muy invasivo visualmente). */
#buddypress .group-admins, #buddypress .group-mods,
#buddypress .avatar-list, #buddypress ul.item-list.avatars,
#buddypress .moderators-lists, #buddypress .highlight.group-status,
#buddypress .widget_bp_group_members_widget,
.widget_bp_group_members_widget,
.widget:has(.group-admins),
#buddypress [class*="group-admins"],
#buddypress [class*="group-mods"] { display: none !important; }
#buddypress #item-header-content p:has(a[href*="/miembros/"]),
#buddypress #item-header-content ul:has(a[href*="/miembros/"]) { display: none !important; }

/* ── NAV DE PERFIL / GRUPO (tabs internas) ───────────────────── */
#buddypress #object-nav { margin-bottom: 1.5rem !important; overflow-x: auto !important; border-bottom: 2px solid var(--border) !important; }
#buddypress #object-nav ul { display: flex !important; list-style: none !important; margin: 0 !important; padding: 0 !important; min-width: max-content !important; }
#buddypress #object-nav ul li a { display: block !important; padding: 12px 18px !important; font-size: .8125rem !important; font-weight: 700 !important; color: var(--muted) !important; border-bottom: 3px solid transparent !important; text-transform: uppercase !important; white-space: nowrap !important; transition: all 150ms !important; }
#buddypress #object-nav ul li a:hover { color: var(--blue) !important; border-bottom-color: var(--blue) !important; }
#buddypress #object-nav ul li.current a { color: var(--blue-dark) !important; border-bottom-color: var(--blue-dark) !important; }

/* ── BOTONES ──────────────────────────────────────────────── */
#buddypress a.button,
#buddypress button.button,
#buddypress input[type="submit"] {
  display: inline-flex !important; align-items: center !important; justify-content: center !important;
  padding: 9px 20px !important; border-radius: var(--radius) !important; font-size: .875rem !important; font-weight: 700 !important;
  border: 2px solid var(--blue) !important; background: var(--blue) !important; color: #fff !important;
  text-transform: uppercase !important; cursor: pointer !important; transition: all 150ms !important;
}
#buddypress a.button:hover,
#buddypress input[type="submit"]:hover { background: var(--blue-dark) !important; border-color: var(--blue-dark) !important; }

/* ── ANIMACIÓN DE ENTRADA ─────────────────────────────────── */
@keyframes bw-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
#buddypress li.item-entry.bw-revealed,
#buddypress li.activity-item.bw-revealed { animation: bw-in 220ms ease both; }

/* ── FORMULARIOS Y MENSAJES DE ESTADO ─────────────────────── */
#buddypress input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="search"]),
#buddypress textarea {
  border: 2px solid var(--border); border-radius: var(--radius); padding: 10px 14px;
  font-size: .95rem; font-family: var(--sans); width: 100%; color: var(--ink); background: #fff;
}
#buddypress input:focus, #buddypress textarea:focus { border-color: var(--blue); outline: none; }
#buddypress label { font-size: .875rem; font-weight: 700; display: block; margin-bottom: .4rem; }

#buddypress #message, #buddypress .bp-feedback {
  padding: .9rem 1.1rem; border-radius: var(--radius); margin-bottom: 1.25rem; font-size: .9rem;
}
#buddypress .bp-feedback.success, #buddypress #message.success { background: #f0fdf4; color: #15803d; border-left: 4px solid #22c55e; }
#buddypress .bp-feedback.error, #buddypress #message.error { background: #fff5f5; color: #991b1b; border-left: 4px solid #ef4444; }

/* ── PAGINACIÓN ───────────────────────────────────────────── */
#buddypress .bp-pagination { font-size: .875rem; color: var(--muted); margin: 1.5rem 0; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .65rem; }
#buddypress .pagination-links a, #buddypress .pagination-links span { padding: 7px 12px; border: 1px solid var(--border); border-radius: var(--radius); font-size: .875rem; color: var(--ink-2); transition: all .18s; }
#buddypress .pagination-links .current { background: var(--blue); color: #fff; border-color: var(--blue); }
#buddypress .pagination-links a:hover { border-color: var(--blue); color: var(--blue); }

/* ── RESPONSIVE ───────────────────────────────────────────── */
@media screen and (min-width: 601px) and (max-width: 1024px) {
  #buddypress #groups-list, #buddypress ul.groups-list,
  #buddypress #members-list, #buddypress ul.members-list { grid-template-columns: repeat(2, 1fr) !important; }
}
@media screen and (max-width: 768px) {
  body #buddypress #groups-list, body #buddypress ul.groups-list,
  body #buddypress #members-list, body #buddypress ul.members-list,
  body #buddypress ul.activity-list { grid-template-columns: 1fr !important; gap: 1rem !important; }
  body #buddypress li.item-entry, body #buddypress li.activity-item { word-break: break-word !important; min-width: 0 !important; }
  #buddypress #item-header-cover-image { flex-direction: column; align-items: flex-start; }
  #buddypress #item-header-cover-image #item-header-avatar { margin: 0 0 1rem; }
}
