/**
 * Research landing, publication directory and single publication refinements.
 * Loaded only where needed.
 */

/* Investigación: cards keep descriptive copy selectable; only image and title are links. */
.research-page .section--research-cards { padding-top: 2.5rem; }
.research-page .research-card-grid { gap: clamp(1rem, 2vw, 1.5rem); }
.research-page .research-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--aiedi-border);
  border-radius: 18px;
  color: var(--aiedi-navy);
  background: #fff;
  box-shadow: 0 8px 22px rgba(28, 53, 90, .08);
}
.research-page .research-card__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.research-page .research-card__media-link:focus-visible,
.research-page .research-card__title-link:focus-visible {
  position: relative;
  z-index: 3;
  outline: 3px solid #111;
  outline-offset: 3px;
  box-shadow: 0 0 0 3px #fff;
}
.research-page .research-card__media {
  display: block;
  width: 100%;
  aspect-ratio: 20 / 13;
  overflow: hidden;
  border-radius: 0;
  background: #eef4fc;
}
.research-page .research-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: none;
  border-radius: 0;
  transition: transform .18s ease;
}
.research-page .research-card__media-link:hover .research-card__image { transform: scale(1.025); }
.research-page .research-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 1.35rem 1.45rem 1.5rem;
}
.research-page .research-card__body h3 {
  margin: 0 0 .7rem;
  font-size: clamp(1.2rem, 1.8vw, 1.48rem);
}
.research-page .research-card__title-link {
  color: var(--aiedi-navy);
  text-decoration: none;
  text-decoration-thickness: .09em;
  text-underline-offset: .16em;
}
.research-page .research-card__title-link:hover {
  color: var(--aiedi-blue-dark);
  text-decoration: underline;
}
.research-page .research-card__description {
  display: block;
  flex: 1;
  margin: 0;
  color: var(--aiedi-muted);
  font-size: .94rem;
  line-height: 1.65;
  cursor: text;
  user-select: text;
}

/* Investigación 2: tabs with clearer research-specific symbols. */
.section--publication-directory { padding-top: 1.5rem; }
.publication-directory { overflow: hidden; border-radius: 18px; }
.publication-tabs {
  gap: 0;
  background: #fff;
}
.publication-tab {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: .85rem;
  align-items: center;
  min-height: 94px;
  padding: 1rem 1.2rem;
  border-bottom: 3px solid transparent;
  transition: background-color .16s ease, border-color .16s ease;
}
.publication-tab:hover { color: var(--aiedi-navy); background: #f6f9ff; }
.publication-tab:focus-visible { z-index: 2; }
.publication-tab.is-current {
  color: var(--aiedi-navy);
  background: #f3f7ff;
  border-bottom-color: var(--aiedi-blue);
}
.publication-tab.is-current::after { display: none; }
.publication-tab__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border: 1px solid #bfd2f4;
  border-radius: 14px;
  color: var(--aiedi-blue-dark);
  background: #fff;
}
.publication-tab__icon .aiedi-icon { width: 28px; height: 28px; stroke-width: 1.8; }
.publication-tab__label {
  color: inherit;
  font-size: .9rem;
  font-weight: 780;
  line-height: 1.35;
}

/* Improved writing/search panel. */
.publication-directory__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
  gap: 1.4rem;
  align-items: center;
  padding: 1.5rem;
  border-bottom: 1px solid var(--aiedi-border);
  background: linear-gradient(110deg, #fff, #f7faff);
}
.publication-directory__heading {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: .9rem;
  align-items: center;
}
.publication-directory__heading-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  color: #fff;
  background: var(--aiedi-blue);
}
.publication-directory__heading-icon .aiedi-icon { width: 28px; height: 28px; }
.publication-directory__intro h2 {
  margin: 0 0 .25rem;
  font-size: clamp(1.12rem, 1.6vw, 1.35rem);
}
.publication-directory__intro p {
  max-width: 650px;
  margin: 0;
  color: var(--aiedi-muted);
  font-size: .88rem;
  line-height: 1.55;
}
.publication-search {
  display: block;
  width: 100%;
}
.publication-search > label {
  display: block;
  margin: 0 0 .45rem;
  color: var(--aiedi-navy);
  font-size: .84rem;
  font-weight: 760;
}
.publication-search__control {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  min-height: 54px;
  overflow: hidden;
  border: 2px solid #73809a;
  border-radius: 14px;
  background: #fff;
}
.publication-search__control:focus-within {
  border-color: var(--aiedi-blue);
  box-shadow: 0 0 0 3px rgba(7, 88, 217, .2);
}
.publication-search__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--aiedi-blue-dark);
}
.publication-search__icon .aiedi-icon { width: 23px; height: 23px; }
.publication-search input {
  width: 100%;
  min-width: 0;
  min-height: 50px;
  padding: .7rem .45rem;
  border: 0;
  border-radius: 0;
  color: var(--aiedi-text);
  background: transparent;
}
.publication-search input:focus-visible { outline: none; box-shadow: none; }
.publication-search button {
  display: inline-flex;
  gap: .45rem;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 92px;
  min-height: 50px;
  padding: .65rem 1rem;
  border: 0;
  border-left: 1px solid #c8d5e8;
  border-radius: 0;
  color: #fff;
  background: var(--aiedi-blue);
  font-weight: 780;
  cursor: pointer;
}
.publication-search button:hover { background: var(--aiedi-blue-dark); }
.publication-search button .aiedi-icon { width: 18px; height: 18px; }

/* Investigación 2: stable row cards. The image can no longer dictate the row
   height and the "Leer más" action participates in normal layout, so excerpts
   and multi-author metadata never sit underneath the button. */
.publication-card--row {
  grid-template-columns: 160px minmax(0, 1fr);
  align-items: stretch;
}
.publication-card--row .publication-card__image {
  position: relative;
  min-width: 0;
  min-height: 0;
  height: 100%;
  overflow: hidden;
}
.publication-card--row .publication-card__img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.publication-card--row .publication-card__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "tag tag"
    "title title"
    "meta meta"
    "excerpt excerpt"
    ". action";
  align-content: start;
  column-gap: 1rem;
  min-width: 0;
  min-height: 176px;
  padding: 1rem 1.2rem;
}
.publication-card--row .publication-card__content > .tag { grid-area: tag; justify-self: start; }
.publication-card--row .publication-card__title {
  grid-area: title;
  min-width: 0;
  padding-right: 0;
}
.publication-card--row .publication-card__meta { grid-area: meta; min-width: 0; }
.publication-card--row .publication-card__content > p {
  grid-area: excerpt;
  display: -webkit-box;
  overflow: hidden;
  margin: .55rem 0 .1rem;
  padding-right: 0;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.publication-card--row .publication-card__content > .text-link {
  position: static;
  grid-area: action;
  justify-self: end;
  align-self: end;
  margin-top: .65rem;
}

/* Single publication: clearer author/date/read-time information. */
.single-publication .article-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
  margin-top: 1.15rem;
  color: var(--aiedi-text);
}
.single-publication .article-meta__item {
  display: grid;
  margin: 0;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: .65rem;
  align-items: center;
  min-width: 0;
  min-height: 68px;
  padding: .7rem .8rem;
  border: 1px solid #cbd7e8;
  border-radius: 14px;
  background: #fff;
}
.single-publication .article-meta__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  color: var(--aiedi-blue-dark);
  background: #edf4ff;
}
.single-publication .article-meta__icon .aiedi-icon { width: 24px; height: 24px; stroke-width: 1.9; }
.single-publication .article-meta__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: .13rem;
}
.single-publication .article-meta__copy small {
  color: var(--aiedi-muted);
  font-size: .7rem;
  font-weight: 650;
  line-height: 1.25;
}
.single-publication .article-meta__copy strong {
  overflow-wrap: anywhere;
  color: var(--aiedi-navy);
  font-size: .82rem;
  line-height: 1.35;
}

@media (max-width: 980px) {
  .publication-directory__intro { grid-template-columns: 1fr; }
  .publication-search { max-width: 720px; }
  .single-publication .article-meta { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .publication-card--row { grid-template-columns: 110px minmax(0, 1fr); }
  .publication-card--row .publication-card__content {
    grid-template-columns: 1fr;
    grid-template-areas: "tag" "title" "meta" "action";
    min-height: 0;
  }
  .publication-card--row .publication-card__content > p { display: none; }
  .publication-card--row .publication-card__content > .text-link { justify-self: start; }
  .publication-tab { grid-template-columns: 48px minmax(0, 1fr); min-height: 82px; }
  .publication-tab__icon { width: 44px; height: 44px; border-radius: 12px; }
  .publication-directory__intro { padding: 1.1rem; }
  .publication-directory__heading { grid-template-columns: 48px minmax(0, 1fr); }
  .publication-directory__heading-icon { width: 46px; height: 46px; }
  .publication-search__control { grid-template-columns: 40px minmax(0, 1fr); }
  .publication-search button {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 48px;
    border-top: 1px solid #c8d5e8;
    border-left: 0;
  }
  .single-publication .article-meta { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .publication-card--row { grid-template-columns: 1fr; }
  .publication-card--row .publication-card__image {
    height: auto;
    aspect-ratio: 1.8 / 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .research-page .research-card__image { transition: none; }
  .research-page .research-card__media-link:hover .research-card__image { transform: none; }
  .publication-tab { transition: none; }
}
@media (forced-colors: active) {
  .research-page .research-card,
  .publication-tab__icon,
  .publication-search__control,
  .single-publication .article-meta__item,
  .single-publication .article-meta__icon { border: 1px solid CanvasText; }
  .publication-directory__heading-icon { border: 1px solid CanvasText; }
}

/* Multi-author publication profiles. */
.publication-card__authors {
  min-width: 0;
}
.publication-card__authors > .aiedi-icon {
  width: 1.05rem;
  height: 1.05rem;
  color: var(--aiedi-blue);
  flex: 0 0 auto;
}
.publication-card__authors > span {
  min-width: 0;
}
.publication-card__author-link {
  color: inherit;
  font-weight: 700;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}
.publication-card__author-link:hover,
.publication-card__author-link:focus-visible {
  color: var(--aiedi-blue);
}

.single-publication .article-authors-block {
  margin-top: 1rem;
}
.single-publication .article-authors__title {
  margin: 0 0 .55rem;
  color: var(--aiedi-navy);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.25;
}
.single-publication .article-authors {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: .7rem;
  margin-top: .75rem;
}
.single-publication .article-author-card {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: .75rem;
  align-items: center;
  min-width: 0;
  min-height: 74px;
  padding: .55rem .7rem;
  border: 1px solid #d5dfed;
  border-radius: 14px;
  color: var(--aiedi-text);
  background: #f8fbff;
  text-decoration: none;
}
.single-publication a.article-author-card:hover {
  border-color: var(--aiedi-blue);
  background: #f0f6ff;
}
.single-publication a.article-author-card:focus-visible {
  outline: 3px solid #111;
  outline-offset: 4px;
  box-shadow: 0 0 0 3px #fff;
}
.single-publication .article-author-card__media {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8f1ff;
}
.single-publication .article-author-card__photo {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.single-publication .article-author-card__placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--aiedi-blue);
}
.single-publication .article-author-card__placeholder .aiedi-icon {
  width: 27px;
  height: 27px;
}
.single-publication .article-author-card__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: .15rem;
}
.single-publication .article-author-card__copy strong {
  overflow-wrap: anywhere;
  color: var(--aiedi-navy);
  font-size: .88rem;
  line-height: 1.3;
}
.single-publication .article-author-card__copy small {
  color: var(--aiedi-muted);
  font-size: .72rem;
  line-height: 1.35;
}
@media (max-width: 520px) {
  .single-publication .article-authors { grid-template-columns: 1fr; }
}
@media (forced-colors: active) {
  .single-publication .article-author-card { border: 1px solid CanvasText; }
}


/* Single publication refinements — 1.2.46 */
.single-publication .article-header h1 {
  width: 100%;
  max-width: none;
  overflow-wrap: anywhere;
}
.single-publication .article-author-card__copy small {
  text-align: start;
  word-spacing: normal;
}
.single-publication .related-card,
.single-publication .related-card li,
.single-publication .related-card li a,
.single-publication .related-card li a > span,
.single-publication .related-card strong,
.single-publication .related-card small {
  text-align: start !important;
  text-align-last: start !important;
  word-spacing: normal !important;
}

/* --------------------------------------------------------------------------
 * Single publication — uniform, accessible and responsive featured image.
 * The original image is never cropped: vertical and square artwork is fitted
 * inside a consistent 16:9 frame with object-fit: contain.
 * -------------------------------------------------------------------------- */
.single-publication .article-featured-image {
  width: 100%;
  margin: clamp(1.15rem, 2vw, 1.5rem) 0;
}
.single-publication .article-featured-image__viewport {
  display: flex;
  width: 100%;
  aspect-ratio: 16 / 9;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #d9e2ef;
  border-radius: var(--aiedi-radius);
  background: #f6f9fd;
}
.single-publication .article-featured-image__img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
  background: transparent;
}
.single-publication .article-featured-image__credit {
  margin-top: .65rem;
  color: var(--aiedi-text-muted);
  font-size: .86rem;
  line-height: 1.55;
  text-align: start;
}
.single-publication .article-featured-image__credit a {
  color: var(--aiedi-blue);
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}
.single-publication .article-featured-image__credit a:focus-visible {
  outline: 3px solid #111;
  outline-offset: 4px;
  box-shadow: 0 0 0 3px #fff;
  border-radius: 4px;
}

@media (max-width: 720px) {
  .single-publication .article-featured-image {
    margin-block: 1rem;
  }
  .single-publication .article-featured-image__viewport {
    border-radius: clamp(12px, 4vw, var(--aiedi-radius));
  }
}

@media (forced-colors: active) {
  .single-publication .article-featured-image__viewport {
    border: 1px solid CanvasText;
    background: Canvas;
  }
  .single-publication .article-featured-image__credit a {
    color: LinkText;
  }
}

@media print {
  .single-publication .article-featured-image__viewport {
    aspect-ratio: auto;
    border: 0;
    background: transparent;
  }
  .single-publication .article-featured-image__img {
    width: auto;
    height: auto;
    max-width: 70%;
    max-height: none;
    margin-inline: auto;
  }
}

/* --------------------------------------------------------------------------
 * 1.2.51 — Stable single-publication proportions at browser zoom-out.
 *
 * The global site shell is intentionally fluid. At very low browser zoom that
 * means the CSS viewport becomes extremely wide, which made a 16:9 featured
 * image expand to an oversized frame and push the article content far down.
 * Single publications now have a readable desktop cap and the featured image
 * has its own maximum width. On normal, tablet, mobile and high zoom the rules
 * remain fully fluid and reflow normally.
 * -------------------------------------------------------------------------- */
.single-publication > .container {
  width: 100%;
  max-width: 1500px;
  margin-inline: auto;
}

.single-publication .article-featured-image {
  width: min(100%, 1120px);
  margin-inline: auto;
}

@media (max-width: 920px) {
  .single-publication > .container,
  .single-publication .article-featured-image {
    max-width: none;
    width: 100%;
  }
}


/* ========================================================================== 
   1.2.79 — Investigación 2: iPad Mini / iPad Air
   --------------------------------------------------------------------------
   At 721–920px the results already stack above the filter area. The previous
   global rule reserved three equal sidebar columns although this archive has
   only two cards (filters + collaboration), leaving an empty third track on
   the right and making both cards look unnaturally narrow/tall. Use two real
   columns at tablet widths, then retain the existing one-column phone layout.
   ========================================================================== */
@media (min-width: 721px) and (max-width: 920px) {
  .section--publication-directory .publication-layout,
  .section--publication-directory .publication-results,
  .section--publication-directory .filter-sidebar {
    min-width: 0;
    max-width: 100%;
  }

  .section--publication-directory .filter-sidebar {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
  }

  .section--publication-directory .filter-sidebar > .sidebar-card {
    width: 100%;
    min-width: 0;
    max-width: none;
    margin: 0;
  }

  .section--publication-directory .collaborate-card {
    display: flex;
    flex-direction: column;
  }

  .section--publication-directory .collaborate-card .aiedi-button {
    width: 100%;
    margin-top: auto;
  }

  .section--publication-directory .filter-form select,
  .section--publication-directory .filter-form .aiedi-button,
  .section--publication-directory .filter-reset {
    min-width: 0;
    max-width: 100%;
  }
}
