/* Publicaciones científicas — aplicación fiel de la variante 4 de Stitch.
   Solo esta página. Conserva datos, paleta, fuentes y navegación institucional.
   El diseño de ficha documental dividida usa las imágenes reales del archivo. */

body.page-publicaciones .research-card-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px 26px;
  align-items: stretch;
}

body.page-publicaciones .research-archive-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
  min-width: 0;
  min-height: 390px;
  padding: 0;
  border: 1px solid var(--rule);
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  background: var(--paper);
  transition: border-color .2s ease, box-shadow .2s ease;
}

body.page-publicaciones .research-archive-card:hover {
  border-color: #b0c0ce;
  box-shadow: 0 6px 18px rgba(13, 40, 64, .07);
}

/* Soporte editorial independiente de la proporción de la página científica.
   El fondo es deliberadamente distinto al papel: los márgenes ya no parecen
   franjas de una imagen mal escalada y ningún documento se deforma. */
body.page-publicaciones .research-archive-card .archive-card-visual {
  grid-column: 1;
  grid-row: 1;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  align-items: center;
  justify-items: center;
  gap: 12px;
  width: 100%;
  height: 100%;
  min-height: 390px;
  aspect-ratio: auto;
  margin: 0;
  padding: 48px 20px 16px;
  overflow: hidden;
  border-right: 1px solid var(--rule);
  background: linear-gradient(155deg, #eaf0f4 0%, #dce6ec 100%);
}

body.page-publicaciones .research-archive-card .archive-card-visual img.publication-document-image {
  display: block;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  object-fit: contain;
  object-position: center;
  padding: 0;
  margin: 0;
  background: transparent;
  filter: drop-shadow(0 4px 7px rgba(18, 40, 59, .19));
}

/* La leyenda identifica el espacio que rodea a la hoja como un expositor. */
body.page-publicaciones .publication-preview-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  text-align: center;
  font: 700 .64rem/1.45 var(--sans);
  letter-spacing: .09em;
  text-transform: uppercase;
  color: #47657a;
}
body.page-publicaciones .publication-preview-caption span {font-size: .85rem;}

/* Portadas con poco contenido: presentación editorial basada en los datos
   del registro. Una miniatura auténtica sigue visible en la parte inferior. */
body.page-publicaciones .publication-featured-sheet {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: clamp(16px, 2vw, 25px);
  overflow: hidden;
  background: #fff;
  border: 1px solid #cbd8df;
  box-shadow: 0 4px 12px rgba(18, 40, 59, .13);
}
body.page-publicaciones .publication-featured-kicker {
  font: 800 .61rem/1.5 var(--sans);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--institutional-blue);
}
body.page-publicaciones .publication-featured-title {
  display: block;
  margin-top: clamp(15px, 2.5vw, 28px);
  color: #183a5d;
  font: 600 clamp(1.08rem, 1.35vw, 1.42rem)/1.33 var(--serif);
  letter-spacing: -.025em;
  overflow-wrap: anywhere;
}
body.page-publicaciones .publication-featured-rule {
  width: 42px;
  height: 3px;
  margin-top: 18px;
  background: #77bfce;
}
body.page-publicaciones .publication-featured-original {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 0;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid #d9e4eb;
  color: #48667b;
  font: 700 .66rem/1.5 var(--sans);
}
body.page-publicaciones .publication-featured-original img {
  display: block;
  width: 45px;
  height: 61px;
  flex: 0 0 45px;
  margin: 0;
  padding: 0;
  object-fit: contain;
  background: #fff;
  border: 1px solid #d7e0e7;
}

/* El aumento heredado recorta las páginas: desactivarlo solo aquí. */
body.page-publicaciones .research-archive-card .archive-card-visual:hover img,
body.page-publicaciones .research-archive-card .archive-card-visual:focus-visible img {
  transform: none;
}

/* Identificadores discretos de Stitch, superpuestos sobre el recurso real. */
body.page-publicaciones .research-archive-card .archive-card-date {
  position: absolute;
  top: 13px;
  left: 13px;
  z-index: 2;
  margin: 0;
  padding: 5px 10px;
  background: var(--institutional-blue);
  color: #fff;
  border-radius: 4px;
  font-family: var(--serif);
  font-size: .8rem;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .03em;
  box-shadow: 0 2px 5px rgba(13, 40, 64, .18);
}

body.page-publicaciones .research-archive-card::after {
  content: "#" attr(data-record-number);
  position: absolute;
  top: 13px;
  right: calc(50% + 13px);
  z-index: 2;
  padding: 5px 8px;
  border: 1px solid var(--rule);
  border-radius: 4px;
  background: rgba(255, 255, 255, .95);
  color: var(--institutional-blue);
  font-family: var(--serif);
  font-size: .72rem;
  line-height: 1.4;
  font-weight: 700;
  pointer-events: none;
}

/* La mitad derecha conserva los elementos originales (no se regeneran datos). */
body.page-publicaciones .research-archive-card .archive-card-body {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: 24px 20px 21px;
  background: var(--paper);
}

body.page-publicaciones .research-archive-card .archive-card-description {
  order: 0;
  display: block;
  max-width: none;
  min-width: 0;
  margin: 0 0 17px;
  padding: 11px 12px;
  border: 1px solid var(--rule);
  border-left: 3px solid #75c6d8;
  border-radius: 0 4px 4px 0;
  background: var(--off-white);
  color: var(--ink-soft);
  font-family: var(--sans);
  font-size: .82rem;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

body.page-publicaciones .research-archive-card .archive-card-description::before {
  content: "Fuente / Autores";
  display: block;
  margin-bottom: 6px;
  color: var(--institutional-blue);
  font-family: var(--serif);
  font-size: .69rem;
  line-height: 1.35;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

/* En el original, el título estaba antes que la fuente: solo se cambia el
   orden VISUAL para reproducir la ficha, sin alterar los datos del documento. */
body.page-publicaciones .research-archive-card h3 {
  order: 1;
  margin: 0 0 18px;
  color: var(--ink);
  font-family: var(--serif);
  font-size: clamp(1rem, 1.16vw, 1.17rem);
  font-weight: 650;
  line-height: 1.43;
  letter-spacing: -.018em;
  max-width: none;
  overflow-wrap: anywhere;
}

body.page-publicaciones .research-archive-card .archive-card-read {
  order: 2;
  margin: auto 0 0;
  padding: 13px 0 11px;
  align-self: flex-start;
  border-bottom: 0;
  border-top: 1px solid var(--rule);
  width: 100%;
  justify-content: flex-start;
  color: var(--institutional-blue);
  font-family: var(--sans);
  font-size: .82rem;
  font-weight: 750;
  min-height: 44px;
}

body.page-publicaciones .research-archive-card .archive-card-read:hover {
  text-decoration: underline;
}

body.page-publicaciones .research-archive-card .research-citation {
  order: 3;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 1px solid var(--rule);
  border-radius: 4px;
  background: var(--off-white);
}

body.page-publicaciones .research-archive-card .research-citation summary {
  padding: 9px 11px;
  min-height: 44px;
  color: var(--ink-soft);
  font-size: .79rem;
  font-weight: 650;
  gap: 8px;
}

body.page-publicaciones .research-archive-card .research-citation summary:hover,
body.page-publicaciones .research-archive-card .research-citation summary:focus-visible {
  background: #eff6f9;
}

body.page-publicaciones .research-archive-card .research-citation p {
  margin: 0;
  padding: 12px;
  border-top: 1px solid var(--rule);
  background: var(--paper);
  overflow-wrap: anywhere;
  font-size: .82rem;
  line-height: 1.65;
}

/* La ficha de dos columnas requiere un mínimo de ancho para que el texto
   científico, especialmente los títulos largos, siga siendo legible. */
@media (max-width: 1080px) {
  body.page-publicaciones .research-card-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
  }
  body.page-publicaciones .research-archive-card,
  body.page-publicaciones .research-archive-card .archive-card-visual {
    min-height: 340px;
  }
  body.page-publicaciones .research-archive-card h3 {
    font-size: clamp(1.12rem, 1.7vw, 1.4rem);
  }
}

@media (max-width: 640px) {
  body.page-publicaciones .research-card-grid {gap: 25px;}
  body.page-publicaciones .research-archive-card {
    grid-template-columns: minmax(0, 1fr);
    min-height: 0;
  }
  body.page-publicaciones .research-archive-card .archive-card-visual {
    grid-column: 1;
    grid-row: 1;
    grid-template-rows: auto auto;
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
    padding: 48px 20px 18px;
    border-right: 0;
    border-bottom: 1px solid var(--rule);
  }
  /* En móvil el documento utiliza altura propia y mantiene su proporción. */
  body.page-publicaciones .research-archive-card .archive-card-visual img.publication-document-image {
    width: 100%;
    height: auto;
    max-height: 510px;
    object-fit: contain;
  }
  body.page-publicaciones .publication-featured-sheet {
    height: auto;
    min-height: 325px;
    padding: 22px;
  }
  body.page-publicaciones .publication-featured-title {
    font-size: clamp(1.12rem, 4.5vw, 1.45rem);
  }
  body.page-publicaciones .research-archive-card .archive-card-body {
    grid-column: 1;
    grid-row: 2;
    padding: 19px 17px 17px;
  }
  body.page-publicaciones .research-archive-card::after {right: 13px;}
  body.page-publicaciones .research-archive-card h3 {font-size: 1.16rem;}
}

@media (prefers-reduced-motion: reduce) {
  body.page-publicaciones .research-archive-card {
    transition: none;
  }
}
