/* ===== Paper_SD: CSS mínimo y robusto (WPBakery safe) ===== */

.paper-sd,
.paper-sd * ,
.paper-sd *::before,
.paper-sd *::after{
  box-sizing: border-box;
}

/* Aire lateral del bloque completo (esto es lo que te falta en la captura) */
.paper-sd{
  width: 100%;
  max-width: 100%;
  padding: 0 18px;          /* <- separación del borde */
  margin: 0;
}

/* Controles en una línea + separación con la lista */
.paper-sd .paper-sd-controls-row{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 14px 0 !important;
  flex-wrap: nowrap !important;
}

/* Si WPBakery mete <p> wrappers */
.paper-sd .paper-sd-controls-row p{
  margin: 0 !important;
  padding: 0 !important;
  display: contents !important;
}

/* La clave para que NO sobresalga con gap: proporciones flex (8/2) */
.paper-sd .paper-sd-controls-row .paper-sd-search{
  flex: 8 1 0 !important;
  min-width: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #ddd !important;
  border-radius: 12px !important;
  background: #fff !important;
}

.paper-sd .paper-sd-controls-row .paper-sd-year{
  flex: 2 0 0 !important;
  min-width: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #ddd !important;
  border-radius: 12px !important;
  background: #fff !important;
}

/* Lista sin puntos */
.paper-sd ul.paper-sd-list{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.paper-sd ul.paper-sd-list > li{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Tarjetas */
.paper-sd .paper-sd-item{
  border: 1px solid #eee;
  border-radius: 14px;
  padding: 14px 16px;
  background: #fff;
  width: 100%;
  max-width: 100%;
}

/* Título */
.paper-sd .paper-sd-title a{ text-decoration: none; }
.paper-sd .paper-sd-title a:hover{ text-decoration: underline; }

/* Meta y ref */
.paper-sd .paper-sd-meta{
  margin-top: 8px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  color: #444;
}

.paper-sd .paper-sd-ref{
  margin-top: 8px;
  color: #333;
  font-size: 0.95em;
}

/* Responsive */
@media (max-width: 640px){
  .paper-sd{ padding: 0 12px; }
  .paper-sd .paper-sd-controls-row{
    flex-wrap: wrap !important;
  }
  .paper-sd .paper-sd-controls-row .paper-sd-search,
  .paper-sd .paper-sd-controls-row .paper-sd-year{
    flex: 0 0 100% !important;
  }
}

.paper-sd ul.paper-sd-list > li.paper-sd-item{
  padding: 22px 24px !important;
}

