/* =========================================
   BuddyPress Wall – Inspenet (Nouveau)
   Limpio + Sidebar sticky + Match foros/noticias
   ========================================= */

/* ---------- Variables ---------- */
:root{
  /* branding */
  --color-principal:#032A53;
  --color-secundario:#f6f8fb;
  --color-fondo:#fff;
  --color-borde:#E8E8EA;
  --color-texto:#0A0C1C;
  --color-texto-sec:#64748b;
  --color-azul:#1677ff;

  /* radii & shadows */
  --radius-xl:14px;
  --radius-lg:12px;
  --radius-md:10px;
  --radius-sm:8px;
  --shadow-xs:0 1px 2px rgba(16,24,40,.06);
  --shadow-sm:0 2px 5px rgba(16,24,40,.10);
  --shadow-md:0 6px 16px rgba(12,28,64,.08);

  /* layout */
  --layout-max:1240px;
  --wall-aside:300px;
  --wall-gap:24px;

  /* sticky */
  --header-sticky:64px;     /* ajusta a tu header fijo */
  --adminbar:32px;          /* barra admin WP */
  --wall-sticky-gap:16px;
}

/* ---------- Contenedor base BP ---------- */
body.buddypress.bp-nouveau #buddypress{
  font-family:'Work Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--color-texto);
}
body.buddypress.bp-nouveau #buddypress .bp-wrap,
body.buddypress.bp-nouveau #buddypress .activity{
  max-width:var(--layout-max);
  margin:0 auto;
  padding:12px 12px 24px;
}

/* Evitar que algún wrapper mate el sticky */
body.buddypress #buddypress,
body.buddypress #buddypress .bp-wrap,
body.buddypress .site-main,
body.buddypress .content-area,
body.buddypress #main{
  overflow:visible;
}

/* ---------- Título/Hero ---------- */
body.buddypress.bp-nouveau #buddypress .bp-wrap .page-title,
body.buddypress.bp-nouveau #buddypress h1.entry-title,
body.buddypress.bp-nouveau #buddypress h1{
  font-size:2.2rem; line-height:1.1; font-weight:800;
  text-transform:uppercase; color:var(--color-principal);
  margin:14px 0 12px;
}

/* Alinear título con el contenedor centrado */
body.directory.activity.buddypress.bp-nouveau h1.entry-title{
  width:min(96%, var(--layout-max));
  margin:12px auto 10px;
  padding:0 12px;
}

/* Tarjeta “hero” opcional */
body.buddypress.bp-nouveau #buddypress .inspenet-wall-hero{
  border:1px solid var(--color-borde);
  background:linear-gradient(180deg,#ffffff,#f7f9fc);
  border-radius:var(--radius-xl);
  padding:14px 16px;
  box-shadow:var(--shadow-xs);
  margin-bottom:14px;
}

/* ---------- Tabs / Chips ---------- */
#buddypress .item-list-tabs{
  border:1px solid var(--color-borde); background:#fff;
  border-radius:var(--radius-xl); padding:10px; box-shadow:var(--shadow-xs);
  margin-bottom:12px;
}
#buddypress .item-list-tabs ul{
  display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none;
}
#buddypress .item-list-tabs a{
  display:inline-block; padding:8px 12px; border-radius:999px;
  text-decoration:none; color:var(--color-principal);
  background:var(--color-secundario); font-weight:700; transition:all .18s ease;
}
#buddypress .item-list-tabs li.selected a,
#buddypress .item-list-tabs a:hover{
  background:var(--color-principal); color:#fff;
}

/* ---------- Search + filtros ---------- */
#buddypress .dir-search,
#buddypress .subnav-filters{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0 0 12px; }

#buddypress .bp-dir-search-form{
  flex:1 1 480px; display:flex; gap:8px; align-items:center;
  background:#fff; border:1px solid var(--color-borde);
  border-radius:999px; padding:6px 8px; box-shadow:var(--shadow-xs);
}
#buddypress .bp-dir-search-form input[type="search"]{
  flex:1; height:38px; border:0; outline:none; font-size:14px; padding:0 10px; background:transparent; color:var(--color-texto);
}
#buddypress .bp-dir-search-form button,
#buddypress .bp-dir-search-form input[type="submit"]{
  height:36px; padding:0 14px; border:0; border-radius:10px;
  background:var(--color-azul); color:#fff; font-weight:700; cursor:pointer;
}
#buddypress .bp-dir-search-form button:hover{ filter:brightness(1.05); }

#buddypress .subnav-filters select{
  appearance:none; background:#fff; border:1px solid var(--color-borde);
  border-radius:12px; padding:8px 34px 8px 12px; font-size:14px; color:var(--color-texto);
  box-shadow:var(--shadow-xs);
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18"><path d="M4 7l5 5 5-5" fill="none" stroke="%23032A53" stroke-width="2" stroke-linecap="round"/></svg>');
  background-repeat:no-repeat; background-position:right 10px center;
}

/* ---------- Form “What’s new” ---------- */

div#bp-nouveau-activity-form.activity-update-form {
  border-radius: 16px;
}
#whats-new-form {
  display: flex;
}
  .activity-update-form #whats-new-submit input {
  width: 11em;
}
@media (max-width:768px) {
  .activity-update-form #whats-new-textarea textarea {
    width:90%;
  }
  #whats-new-form {
    flex-direction: column;
  }
  #whats-new-content {
    margin-left:6px;
  }
}
#buddypress #whats-new-form{
  border:1px solid var(--color-borde); background:#fff;
  border-radius:var(--radius-xl); box-shadow:var(--shadow-xs);
  padding:12px; margin-bottom:14px;
}
#whats-new-avatar img{ width:48px; height:48px; border-radius:50%; }
#whats-new-content{ margin-left:60px; }
#whats-new-textarea textarea{
  width:100%; min-height:100px;
  border:1px solid #e5e7eb; border-radius:12px; padding:10px 12px; font-size:14px;
  box-shadow:inset 0 1px 2px rgba(16,24,40,.04);
}
#whats-new-textarea textarea:focus{ outline:none; border-color:#7aa7ff; box-shadow:0 0 0 3px rgba(30,111,255,.15); }
#whats-new-submit{ display:flex; justify-content:flex-end; gap:8px; margin-top:10px; }
#aw-whats-new-submit{ height:40px; padding:0 14px; border:0; border-radius:10px; font-weight:700; background:var(--color-azul); color:#fff; }
#aw-whats-new-submit:hover{ filter:brightness(1.05); }
.activity-list .activity-item .activity-meta.action .button span{color:#fff}
.activity-list .bp-tooltip:after{top:-40px}
.activity-list.bp-list{border-radius: 12px;}
.activity-list .activity-item .activity-meta.action{background-color: #ffffff00;}
body.buddypress.bp-nouveau #buddypress .activity{margin: 0px auto 20px auto;border-radius: 14px;}

/* ---------- Items del feed ---------- */
ul.activity-list{ list-style:none; margin:0; padding:0; }
ul.activity-list > li.activity-item{
  position:relative; border:1px solid var(--color-borde); background:#fff;
  border-radius:var(--radius-xl); box-shadow:var(--shadow-sm);
  padding:16px 16px 12px; margin-bottom:16px; transition:box-shadow .18s ease, transform .18s ease; overflow:hidden;
}
ul.activity-list > li.activity-item:hover{ box-shadow:var(--shadow-md); }
ul.activity-list > li.activity-item::after{
  content:""; position:absolute; left:0; top:0; right:0; height:3px;
  background:linear-gradient(90deg,#1677ff 0%, #032A53 100%); opacity:.9;
}

/* Cabecera */
ul.activity-list .activity-avatar{ float:left; margin-right:12px; }
ul.activity-list .activity-avatar img{ width:56px; height:56px; border-radius:50%; display:block; }
ul.activity-list .activity-header{ margin-left:72px; line-height:1.35; font-size:14px; color:var(--color-texto-sec); }
ul.activity-list .activity-header a{ color:var(--color-principal); font-weight:800; text-decoration:none; }
ul.activity-list .activity-header .time-since{ color:#8a93a2; font-weight:600; }

/* Contenido */
ul.activity-list .activity-inner{ margin:10px 0 8px 72px; color:var(--color-texto); line-height:1.6; font-size:15px; }
ul.activity-list .activity-inner p{ margin:0 0 10px; }
ul.activity-list .activity-inner img{ max-width:100%; border-radius:10px; }

/* Meta / acciones */
ul.activity-list .activity-meta{ margin-left:72px; display:flex; gap:8px; flex-wrap:wrap; }
ul.activity-list .activity-meta a{
  display:inline-block; padding:6px 12px; border:1px solid var(--color-borde);
  border-radius:999px; background:#fff; color:var(--color-principal); font-weight:700; text-decoration:none; transition:all .18s ease;
}
ul.activity-list .activity-meta a:hover{ background:var(--color-principal); color:#fff; border-color:var(--color-principal); }

/* Comentarios */
ul.activity-list .acomment-list{ list-style:none; margin:10px 0 0 72px; padding:0 0 0 12px; border-left:2px solid #eef2f6; }
ul.activity-list .acomment-list li{ padding:10px 0; border-bottom:1px solid #f1f2f4; }
ul.activity-list .acomment-avatar img{ width:34px; height:34px; border-radius:50%; }
ul.activity-list .acomment-meta{ font-size:13px; color:#8a93a2; margin-bottom:6px; }
ul.activity-list .acomment-content{ font-size:14px; color:var(--color-texto); }

/* ---------- Botones genéricos BP → azul ---------- */
#buddypress a.button,
#buddypress input[type=submit],
#buddypress .generic-button a{
  background:var(--color-azul); color:#fff; border-radius:10px; border:0;
  padding:8px 12px; font-weight:700; text-decoration:none;
}
#buddypress a.button:hover,
#buddypress input[type=submit]:hover,
#buddypress .generic-button a:hover{ filter:brightness(1.05); }

/* ---------- Loader ---------- */
#buddypress .activity.is-loading,
#buddypress .activity-list.is-loading{ position:relative; }
#buddypress .activity.is-loading::after,
#buddypress .activity-list.is-loading::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(circle closest-side,currentColor 90%,transparent 92%) center/10px 10px no-repeat,
    conic-gradient(from 0deg,transparent 10%,currentColor 10% 20%,transparent 20% 30%,currentColor 30% 40%,transparent 40% 50%,currentColor 50% 60%,transparent 60% 70%,currentColor 70% 80%,transparent 80% 90%,currentColor 90% 100%) center/22px 22px no-repeat;
  animation: bpwall-spin 1s linear infinite; opacity:.85;
}
@keyframes bpwall-spin{ to{ transform:rotate(360deg); } }

/* ---------- GRID: feed centrado + sidebar (sticky) ---------- */
#buddypress .inspenet-wall-layout{
  max-width:var(--layout-max);
  margin:16px auto 24px;
  display:grid;
  grid-template-columns:minmax(0, calc(100% - var(--wall-aside) - var(--wall-gap))) var(--wall-aside);
  gap:var(--wall-gap);
  align-items:start;                 /* clave para sticky */
}
#buddypress .wall-main{ min-width:0; }
#buddypress .wall-sidebar{
  position:sticky;
  top:calc(var(--header-sticky) + var(--wall-sticky-gap));
  align-self:start;
  display:flex; flex-direction:column; gap:16px;
  height:fit-content;
}
body.admin-bar #buddypress .wall-sidebar{
  top:calc(var(--header-sticky) + var(--adminbar) + var(--wall-sticky-gap));
}

/* Una columna en <= tablet */
@media (max-width:1024px){
  #buddypress .inspenet-wall-layout{ grid-template-columns:1fr; }
  #buddypress .wall-sidebar{ position:static; top:auto; }
}

/* ---------- Tarjetas del sidebar ---------- */
.aside-card{
  border:1px solid var(--color-borde); background:#fff;
  border-radius:var(--radius-xl); padding:14px;
  box-shadow:0 2px 6px rgba(16,24,40,.08);
}
.aside-title{ margin:0 0 10px; font-size:18px; font-weight:800; color:var(--color-principal); }

/* Redes */
.aside-social .social-row{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.btn-social{
  width:44px; height:44px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--color-principal); color:#fff; text-decoration:none;
  box-shadow:0 1px 2px rgba(16,24,40,.12), inset 0 1px 0 rgba(255,255,255,.15);
  transition:transform .08s ease, filter .2s ease;
}
.btn-social:hover{ filter:brightness(1.05); transform:translateY(-1px); }

/* ---------- Partners (grid 2 col en aside) ---------- */
.inspenet-wall-layout .event-main .event-content p{
  margin:0 0 12px; font-size:14px; line-height:1.35;
}
.inspenet-wall-layout .event-main .icon-container{
  display:grid; grid-template-columns:repeat(2, minmax(110px,1fr));
  gap:14px 18px; align-items:center; justify-items:center;
}
.inspenet-wall-layout .event-main .event-icon{
  width:100%; max-width:140px; height:auto; object-fit:contain; display:block;
}
@media (min-width:1280px){
  .inspenet-wall-layout .event-main .icon-container{ grid-template-columns:repeat(2, minmax(130px,1fr)); gap:16px 20px; }
  .inspenet-wall-layout .event-main .event-icon{ max-width:150px; }
}
@media (max-width:768px){
  .inspenet-wall-layout .event-main .icon-container{ grid-template-columns:repeat(3, minmax(90px,1fr)); gap:12px; }
  .inspenet-wall-layout .event-main .event-icon{ max-width:110px; }
}

/* ---------- Responsive compact ---------- */
@media (max-width:720px){
  #buddypress .bp-dir-search-form{ flex:1 1 100%; }
  ul.activity-list .activity-avatar{ float:none; margin-right:0; }
  ul.activity-list .activity-header,
  ul.activity-list .activity-inner,
  ul.activity-list .activity-meta,
  ul.activity-list .acomment-list{ margin-left:0; }
  ul.activity-list > li.activity-item{ padding:12px; }
}
