:root {
  --metabiblioteca-radius-ui: 0.375rem;
}

/*
 * Tema Metabiblioteca custom layer for OJS 3.5.x.
 * Keep this file framework-light: the compiled Tailwind file can be rebuilt,
 * while these theme-specific components remain stable and easy to audit.
 */
.metabiblioteca-article-carousel {
  margin: 2.5rem 0;
  padding: 1.25rem;
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: var(--metabiblioteca-radius-ui);
  background: rgba(248, 250, 252, .72);
}

.dark .metabiblioteca-article-carousel {
  border-color: rgba(51, 65, 85, .8);
  background: rgba(15, 23, 42, .55);
}

.metabiblioteca-article-carousel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.metabiblioteca-article-carousel__eyebrow {
  margin: 0 0 .25rem;
  color: rgb(100, 116, 139);
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.dark .metabiblioteca-article-carousel__eyebrow {
  color: rgb(148, 163, 184);
}

.metabiblioteca-article-carousel__title {
  margin: 0;
  color: rgb(15, 23, 42);
  font-size: clamp(1.25rem, 1.5vw, 1.75rem);
  line-height: 1.2;
}

.dark .metabiblioteca-article-carousel__title {
  color: rgb(248, 250, 252);
}

.metabiblioteca-article-carousel__controls {
  display: flex;
  gap: .5rem;
}

.metabiblioteca-article-carousel__button {
  width: 2.25rem;
  height: 2.25rem;
  border: 1px solid rgba(148, 163, 184, .45);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: rgb(15, 23, 42);
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1;
}

.metabiblioteca-article-carousel__button:hover,
.metabiblioteca-article-carousel__button:focus-visible {
  border-color: rgb(14, 165, 233);
  outline: none;
}

.dark .metabiblioteca-article-carousel__button {
  background: rgb(30, 41, 59);
  color: rgb(226, 232, 240);
  border-color: rgba(71, 85, 105, .9);
}

.metabiblioteca-article-carousel__track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(16rem, 28rem);
  gap: 1rem;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: .25rem .25rem .75rem;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
}

.metabiblioteca-article-card {
  display: flex;
  min-height: 13rem;
  flex-direction: column;
  justify-content: space-between;
  scroll-snap-align: start;
  border: 1px solid rgba(226, 232, 240, .9);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  padding: 1rem;
  box-shadow: 0 10px 25px rgba(15, 23, 42, .06);
}

.dark .metabiblioteca-article-card {
  border-color: rgba(51, 65, 85, .9);
  background: rgb(15, 23, 42);
  box-shadow: none;
}

.metabiblioteca-article-card__journal {
  margin: 0 0 .5rem;
  color: rgb(14, 116, 144);
  font-size: .75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.dark .metabiblioteca-article-card__journal {
  color: rgb(125, 211, 252);
}

.metabiblioteca-article-card__title {
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.35;
}

.metabiblioteca-article-card__title a {
  color: rgb(15, 23, 42);
  text-decoration: none;
}

.metabiblioteca-article-card__title a:hover,
.metabiblioteca-article-card__title a:focus-visible {
  text-decoration: underline;
}

.dark .metabiblioteca-article-card__title a {
  color: rgb(248, 250, 252);
}

.metabiblioteca-article-card__abstract {
  margin: .75rem 0 1rem;
  color: rgb(71, 85, 105);
  font-size: .9rem;
  line-height: 1.55;
}

.dark .metabiblioteca-article-card__abstract {
  color: rgb(203, 213, 225);
}

.metabiblioteca-article-card__link {
  align-self: flex-start;
  color: rgb(2, 132, 199);
  font-size: .9rem;
  font-weight: 700;
  text-decoration: none;
}

.metabiblioteca-article-card__link:hover,
.metabiblioteca-article-card__link:focus-visible {
  text-decoration: underline;
}

.dark .metabiblioteca-article-card__link {
  color: rgb(56, 189, 248);
}

@media (max-width: 640px) {
  .metabiblioteca-article-carousel {
    padding: 1rem;
  }

  .metabiblioteca-article-carousel__controls {
    display: none;
  }

  .metabiblioteca-article-carousel__track {
    grid-auto-columns: minmax(14rem, 85vw);
  }
}

/* ========================================================================== */
/* 01. Estructura editorial general                                          */
/* -------------------------------------------------------------------------- */
/* Contenedor base para páginas del portal, revistas, números y artículos.    */
.metabiblioteca-home,
.metabiblioteca-detail-page {
  --metabiblioteca-surface: #ffffff;
  --metabiblioteca-surface-soft: #f8fafc;
  --metabiblioteca-border: rgba(148, 163, 184, .28);
  --metabiblioteca-text: var(--metabiblioteca-color-03, #0f172a);
  --metabiblioteca-muted: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 70%, transparent);
  --metabiblioteca-accent: var(--metabiblioteca-color-01, #0284c7);
  --metabiblioteca-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-text);
}

.dark .metabiblioteca-home,
.dark .metabiblioteca-detail-page {
  --metabiblioteca-surface: #0f172a;
  --metabiblioteca-surface-soft: rgba(15, 23, 42, .58);
  --metabiblioteca-border: rgba(71, 85, 105, .72);
  --metabiblioteca-text: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 16%, #f8fafc 84%);
  --metabiblioteca-muted: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 10%, #cbd5e1 90%);
  --metabiblioteca-accent: var(--metabiblioteca-color-01, #0284c7);
}

/* Retira márgenes heredados de prose cuando el bloque pertenece a una tarjeta. */
.metabiblioteca-home :where(.metabiblioteca-section, .metabiblioteca-journal-card, .metabiblioteca-journal-list__item) :where(h1, h2, h3, p, ul) {
  margin-top: 0;
}

/* ========================================================================== */
/* 02. Botones reutilizables                                                  */
/* -------------------------------------------------------------------------- */
/* Usados en envío, archivo, ver revista y número actual.                     */
.metabiblioteca-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  min-height: 2.45rem;
  border-radius: var(--metabiblioteca-radius-ui);
  padding: .62rem 1rem;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
}

.metabiblioteca-button:hover,
.metabiblioteca-button:focus-visible {
  transform: translateY(-1px);
  outline: none;
}

.metabiblioteca-button--primary {
  border: 1px solid var(--metabiblioteca-accent);
  background: var(--metabiblioteca-accent);
  color: #fff;
}

.metabiblioteca-button--ghost {
  border: 1px solid var(--metabiblioteca-border);
  background: color-mix(in srgb, var(--metabiblioteca-surface) 90%, transparent);
  color: var(--metabiblioteca-text);
}

.dark .metabiblioteca-button--ghost {
  background: rgba(15, 23, 42, .7);
}

/* ========================================================================== */
/* 03. Tarjetas y apartados de contenido                                      */
/* -------------------------------------------------------------------------- */
/* Cada apartado público queda como tarjeta: acerca de, anuncios, números, etc. */
.metabiblioteca-section {
  position: relative;
  margin: 0 0 1.75rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  padding: clamp(1rem, 2.5vw, 1.75rem);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
  overflow: hidden;
}

.dark .metabiblioteca-section {
  box-shadow: none;
}

.metabiblioteca-section::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--metabiblioteca-accent), rgba(14, 165, 233, .22));
}

.metabiblioteca-section__header {
  margin-bottom: 1rem;
}

.metabiblioteca-section__header--split {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.metabiblioteca-section__eyebrow {
  margin-bottom: .35rem;
  color: var(--metabiblioteca-accent);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.metabiblioteca-section h1,
.metabiblioteca-section h2 {
  color: var(--metabiblioteca-text);
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  font-weight: 800;
  line-height: 1.15;
}

.metabiblioteca-section h3 {
  color: var(--metabiblioteca-text);
}

.metabiblioteca-section__body,
.metabiblioteca-section--about,
.metabiblioteca-section--portal-about {
  color: var(--metabiblioteca-muted);
}

/* ========================================================================== */
/* 04. Inicio de revista: columna informativa + columna de apartados          */
/* -------------------------------------------------------------------------- */
/* Inspirado en portales OJS editoriales: una ficha lateral y contenido por bloques. */
.metabiblioteca-home-grid {
  display: grid;
  grid-template-columns: minmax(0, 18rem) minmax(0, 1fr);
  gap: clamp(1rem, 3vw, 2rem);
  align-items: start;
}

.metabiblioteca-home-grid--single {
  grid-template-columns: minmax(0, 1fr);
}

.metabiblioteca-home-aside {
  position: sticky;
  top: 6rem;
}

.metabiblioteca-journal-card {
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface-soft);
  padding: 1rem;
  box-shadow: 0 18px 40px rgba(15, 23, 42, .06);
}

.dark .metabiblioteca-journal-card {
  box-shadow: none;
}

.metabiblioteca-journal-card__image {
  margin-bottom: 1rem;
  overflow: hidden;
  border-radius: var(--metabiblioteca-radius-ui);
  border: 1px solid var(--metabiblioteca-border);
  background: #fff;
}

.metabiblioteca-journal-card__image img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
}

.metabiblioteca-journal-card__title {
  color: var(--metabiblioteca-text);
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.25;
}

.metabiblioteca-journal-card__description {
  margin-top: .75rem;
  color: var(--metabiblioteca-muted);
  font-size: .92rem;
  line-height: 1.6;
}

.metabiblioteca-journal-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 1rem;
}

.metabiblioteca-home-main {
  min-width: 0;
}

.metabiblioteca-current-issue__title {
  margin-top: .35rem;
  color: var(--metabiblioteca-muted);
  font-size: 1rem;
  font-weight: 700;
}

/* ========================================================================== */
/* 05. Portal de revistas: listado de revistas                                */
/* -------------------------------------------------------------------------- */
/* Grilla adaptable para instalar el tema en múltiples portales institucionales. */
.metabiblioteca-journal-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr));
  gap: 1rem;
  padding: 0;
  list-style: none;
}

.metabiblioteca-journal-list__item {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface-soft);
  padding: 1rem;
}

.metabiblioteca-journal-list__item:not(.has_thumb) {
  grid-template-columns: 1fr;
}

.metabiblioteca-journal-list__thumb {
  overflow: hidden;
  border-radius: var(--metabiblioteca-radius-ui);
  border: 1px solid var(--metabiblioteca-border);
  background: #fff;
}

.metabiblioteca-journal-list__thumb img {
  display: block;
  width: 100%;
  height: 9rem;
  object-fit: cover;
  margin: 0;
}

.metabiblioteca-journal-list__body h3 {
  margin-bottom: .5rem;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.25;
}

.metabiblioteca-journal-list__body h3 a {
  color: var(--metabiblioteca-text);
  text-decoration: none;
}

.metabiblioteca-journal-list__body h3 a:hover,
.metabiblioteca-journal-list__body h3 a:focus-visible {
  color: var(--metabiblioteca-accent);
  text-decoration: underline;
}

.metabiblioteca-journal-list__description {
  color: var(--metabiblioteca-muted);
  font-size: .92rem;
  line-height: 1.55;
}

.metabiblioteca-journal-list__links {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 1rem;
  padding: 0;
  list-style: none;
}

.metabiblioteca-empty-state {
  color: var(--metabiblioteca-muted);
}

/* ========================================================================== */
/* 06. Carruseles de artículos                                                */
/* -------------------------------------------------------------------------- */
/* Ajuste visual para integrarlos con los apartados editoriales del tema.      */
.metabiblioteca-article-carousel {
  border-color: var(--metabiblioteca-border);
  background: var(--metabiblioteca-surface);
  box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
}

.dark .metabiblioteca-article-carousel {
  box-shadow: none;
}

.metabiblioteca-article-card {
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-article-card__journal {
  color: var(--metabiblioteca-accent);
}

/* ========================================================================== */
/* 07. Número actual y tabla de contenidos                                    */
/* -------------------------------------------------------------------------- */
/* Portadas, metadatos y artículos del número se separan en tarjetas limpias. */
.metabiblioteca-issue-toc__summary {
  margin-top: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface-soft);
  padding: 1rem;
}

.metabiblioteca-issue-toc__cover img {
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-issue-toc__meta {
  color: var(--metabiblioteca-muted);
}

.metabiblioteca-issue-toc__content {
  max-width: none;
}

.metabiblioteca-issue-toc__sections>div {
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  padding: 1rem;
}

.metabiblioteca-issue-toc__sections h2 {
  margin-bottom: .5rem;
  color: var(--metabiblioteca-text);
  font-weight: 800;
}

.metabiblioteca-issue-toc__article {
  border-color: var(--metabiblioteca-border);
}

/* ========================================================================== */
/* 08. Resumen de artículo                                                    */
/* -------------------------------------------------------------------------- */
/* Tarjeta compacta para artículos en índices, números y listados.             */
.metabiblioteca-article-summary {
  align-items: stretch;
  margin-bottom: 1.5rem;
}

.metabiblioteca-article-summary__media img {
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-article-summary__content {
  min-width: 0;
}

.metabiblioteca-article-summary__title {
  color: var(--metabiblioteca-text);
  line-height: 1.32;
}

.metabiblioteca-article-summary__title a {
  color: var(--metabiblioteca-text);
  text-decoration: none;
}

.metabiblioteca-article-summary__title a:hover,
.metabiblioteca-article-summary__title a:focus-visible {
  color: var(--metabiblioteca-accent);
  text-decoration: underline;
}

.metabiblioteca-article-summary__authors {
  color: var(--metabiblioteca-muted);
}

.metabiblioteca-article-summary__galleys {
  margin-top: .75rem;
  justify-content: flex-start;
}

/* ========================================================================== */
/* 09. Páginas internas: artículo, número, archivo, búsqueda y estáticas      */
/* -------------------------------------------------------------------------- */
/* Mantiene consistencia visual fuera de la portada de la revista.             */
.metabiblioteca-detail-page>h1,
.metabiblioteca-detail-page .page_title,
.metabiblioteca-detail-page>.cmp_breadcrumbs+h1 {
  color: var(--metabiblioteca-text);
  font-weight: 800;
}

/* Migas de pan globales con estilo de captura */
.cmp_breadcrumbs ol {
  display: block;
  margin: 0 0 1rem 0;
  padding: 0;
  list-style: none;
  font-size: 14px;
  line-height: 1.6;
}

.cmp_breadcrumbs li {
  display: inline;
  margin: 0;
  white-space: nowrap;
}

.cmp_breadcrumbs li.current {
  display: inline;
  white-space: normal;
  word-break: break-word;
}

.cmp_breadcrumbs .separator {
  display: none;
}

.cmp_breadcrumbs li:not(:last-child)::after {
  content: "•";
  margin: 0 .6rem;
  color: var(--metabiblioteca-muted, #94a3b8);
  font-weight: normal;
}

.cmp_breadcrumbs li:first-child a {
  font-weight: 600;
  color: #000033;
  /* Azul muy oscuro para Inicio */
}

.cmp_breadcrumbs a,
.cmp_breadcrumbs li.current {
  color: var(--metabiblioteca-color-01, #0284c7);
  text-decoration: none;
}

.cmp_breadcrumbs a:hover,
.cmp_breadcrumbs a:focus-visible {
  color: var(--metabiblioteca-accent, #0ea5e9);
  text-decoration: underline;
}

.metabiblioteca-archive-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
  gap: 1rem;
  padding: 0;
  list-style: none;
}

.metabiblioteca-archive-list>li {
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  padding: 1rem;
}

/* ========================================================================== */
/* 10. Ajustes responsivos                                                    */
/* -------------------------------------------------------------------------- */
/* Evita columnas estrechas y mantiene lectura cómoda en móviles.              */
@media (max-width: 1024px) {
  .metabiblioteca-home-grid {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-home-aside {
    position: static;
  }
}

@media (max-width: 720px) {
  .metabiblioteca-section__header--split {
    display: block;
  }

  .metabiblioteca-section__header--split .metabiblioteca-button {
    margin-top: .8rem;
  }

  .metabiblioteca-journal-list__item {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-journal-list__thumb img {
    height: auto;
    max-height: 14rem;
    object-fit: contain;
  }
}

/* ========================================================================== */
/* 11. Detalle de articulo: disposicion editorial con ancho fluido            */
/* -------------------------------------------------------------------------- */
/* Recursos del articulo a la izquierda y lectura al centro. Los bloques OJS  */
/* se cargan por el sidebar global unico para que sean iguales en todos los apartados. */

/* Ajuste de ancho para articulo: evita cajas estrechas y espacios en blanco. */
.pkp_page_article .page_article,
.pkp_page_article .metabiblioteca-detail-page,
.pkp_page_article .obj_article_details {
  width: 100%;
}

.pkp_page_article main>article>.prose {
  max-width: none;
}

.pkp_page_article .xl\:block nav[aria-labelledby="on-this-page-title"] {
  width: min(18rem, 22vw);
}

.metabiblioteca-article-detail {
  --metabiblioteca-widget-header: var(--metabiblioteca-color-01, #0284c7);
  --metabiblioteca-widget-header-hover: var(--metabiblioteca-color-02, #0ea5e9);
  --metabiblioteca-widget-header-text: var(--metabiblioteca-color-04, #ffffff);
  width: 100%;
  max-width: none;
  margin-inline: 0;
}

.metabiblioteca-article-notice {
  margin-bottom: 1rem;
}

.metabiblioteca-article-hero {
  margin-bottom: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  padding: 1.15rem 1.25rem;
  box-shadow: 0 16px 40px rgba(15, 23, 42, .05);
}

.dark .metabiblioteca-article-hero {
  box-shadow: none;
}

.metabiblioteca-article-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem .75rem;
  margin-bottom: .7rem;
  color: var(--metabiblioteca-muted);
  font-size: .82rem;
  font-weight: 650;
}

.metabiblioteca-article-hero__meta span:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: .32rem;
  height: .32rem;
  margin-left: .75rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: currentColor;
  vertical-align: middle;
  opacity: .45;
}

.metabiblioteca-article-hero__meta a {
  color: inherit;
  text-decoration: none;
}

.metabiblioteca-article-hero__meta a:hover,
.metabiblioteca-article-hero__meta a:focus-visible {
  color: var(--metabiblioteca-accent);
  text-decoration: underline;
}

.metabiblioteca-article-hero__title {
  margin: 0;
  color: var(--metabiblioteca-text);
  font-size: clamp(1.45rem, 2.5vw, 2.15rem);
  font-weight: 800;
  line-height: 1.18;
}

.metabiblioteca-article-hero__subtitle {
  margin: .55rem 0 0;
  color: var(--metabiblioteca-accent);
  font-size: 1rem;
  font-style: italic;
  font-weight: 600;
  line-height: 1.45;
}

/* ========================================================================== */
/* Hero Grid for Article Details Metadata                                     */
/* -------------------------------------------------------------------------- */
.metabiblioteca-hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
  align-items: stretch;
  width: 100%;
}

@media (min-width: 768px) {
  .metabiblioteca-hero-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.metabiblioteca-hero-grid__item {
  background: var(--metabiblioteca-surface, #ffffff);
  border: 1px solid var(--metabiblioteca-border, #e2e8f0);
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.65rem;
  min-height: 3.5rem;
  box-sizing: border-box;
  text-align: center;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.metabiblioteca-hero-grid__item:hover {
  border-color: var(--metabiblioteca-accent, #0284c7);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

.metabiblioteca-hero-grid__item--voice {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  width: 100%;
}

.text-to-voice-container,
#TextToVoiceDiv {
  width: 100%;
  max-width: 100%;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  gap: 2px;
}

#TextToVoiceDiv button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  padding: 2px !important;
  border: none !important;
  margin: 1px !important;
  border-radius: var(--metabiblioteca-radius-ui, 6px) !important;
  box-shadow: 1px 1px 3px 0px rgba(119, 136, 153, 0.5) !important;
  cursor: pointer;
  flex-shrink: 0 !important;
}

div#TextToVoiceDiv svg {
  color: var(--metabiblioteca-color-01) !important;
}

#TextToVoiceDiv select,
.text-to-voice-container select {
  flex-basis: 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  font-size: 0.75rem !important;
  padding: 0.25rem 0.4rem !important;
  margin-top: 0.35rem !important;
  border: 1px solid var(--metabiblioteca-border, #cbd5e1) !important;
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem) !important;
  background: var(--metabiblioteca-surface, #ffffff) !important;
  color: var(--metabiblioteca-text, #334155) !important;
  box-sizing: border-box !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

#TextToVoiceDiv label,
.text-to-voice-container label,
#TextToVoiceDiv span {
  flex-basis: 100% !important;
  text-align: center !important;
  font-size: 0.75rem !important;
  color: var(--metabiblioteca-text, #475569) !important;
  max-width: 100% !important;
  margin-top: 0.25rem !important;
}

#TextToVoiceDiv input,
#TextToVoiceDiv input[type="range"] {
  flex-basis: 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.metabiblioteca-hero-grid__item--date,
.metabiblioteca-hero-grid__item--meta {
  flex-direction: column;
  justify-content: center;
  gap: 0.3rem;
}

.metabiblioteca-hero-grid__item--section {
  display: flex;
  align-items: center;
  justify-content: center;
}

.metabiblioteca-hero-doi {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  width: 100%;
  flex-wrap: nowrap;
}

.metabiblioteca-hero-doi__logo-link {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.metabiblioteca-hero-doi__logo {
  width: 1.75rem;
  height: 1.75rem;
  display: block;
}

.metabiblioteca-hero-doi__text-wrapper {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  min-width: 0;
  overflow: hidden;
}

.metabiblioteca-hero-doi__link {
  font-size: 0.8125rem;
  color: var(--metabiblioteca-accent);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.15s ease;
}

.metabiblioteca-hero-doi__link:hover {
  text-decoration: underline;
  color: var(--metabiblioteca-accent-hover, #0056b3);
}

.metabiblioteca-hero-doi__copy-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.2rem;
  color: var(--metabiblioteca-muted);
  transition: color 0.16s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.metabiblioteca-hero-doi__copy-btn:hover {
  color: var(--metabiblioteca-accent);
}

.metabiblioteca-hero-meta__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  font-size: 0.725rem;
  font-weight: 600;
  padding: 0.1rem 0.45rem;
  border-radius: 9999px;
  background: rgba(16, 185, 129, 0.1);
  color: rgb(5, 150, 105);
}

.metabiblioteca-hero-meta__date,
.metabiblioteca-hero-meta__section {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  font-size: 0.8125rem;
  color: var(--metabiblioteca-text, #334155);
  font-weight: 500;
  line-height: 1.3;
}

.metabiblioteca-hero-meta__section {
  font-weight: 600;
  color: var(--metabiblioteca-text, #1e293b);
  word-break: normal;
}

.metabiblioteca-hero-meta__icon {
  color: var(--metabiblioteca-color-01, #0284c7);
  flex-shrink: 0;
}

.metabiblioteca-article-layout {
  display: grid;
  grid-template-columns: minmax(14rem, 18rem) minmax(0, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  align-items: start;
}

.metabiblioteca-article-main {
  min-width: 0;
}

.metabiblioteca-article-aside {
  display: grid;
  gap: 1rem;
}

/* Citation Style Language block styled as a widget in the article aside */
.metabiblioteca-article-aside .item.citation {
  overflow: hidden;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  color: var(--metabiblioteca-text);
}

.csl-entry a {
    word-break: break-word;
}

.metabiblioteca-article-aside .item.citation .sub_item {
  display: flow-root;
}

.metabiblioteca-article-aside .item.citation .label:first-child {
  margin: 0;
  background: var(--metabiblioteca-widget-header);
  color: var(--metabiblioteca-widget-header-text);
  padding: .55rem .8rem;
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

.metabiblioteca-article-aside .item.citation .value {
  padding: .85rem;
  font-size: .86rem;
  line-height: 1.45;
}

.metabiblioteca-article-aside .item.citation .citation_formats {
  margin-top: 1em;
}

/* ========================================================================== */
/* 12. Detalle de articulo: tarjetas laterales                                */
/* -------------------------------------------------------------------------- */
/* Widgets reutilizables para portada, DOI, descargas, licencia y metadatos.   */
.metabiblioteca-widget {
  overflow: hidden;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  color: var(--metabiblioteca-text);
}

.metabiblioteca-widget__title {
  margin: 0;
  background: var(--metabiblioteca-widget-header);
  color: var(--metabiblioteca-widget-header-text);
  padding: .55rem .8rem;
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

.metabiblioteca-widget> :last-child {
  margin-bottom: .85rem;
}

.metabiblioteca-widget p,
.metabiblioteca-widget dd,
.metabiblioteca-widget li {
  font-size: .86rem;
  line-height: 1.45;
}

.metabiblioteca-article-cover-card {
  padding: 0;
  margin-inline: 0;
  overflow: hidden;
}

.metabiblioteca-article-cover-card:last-child {
  margin-bottom: 0;
}

.metabiblioteca-article-cover-card__image {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: cover;
  margin: 0;
  border-radius: 0;
  background: var(--metabiblioteca-surface-soft);
}

.metabiblioteca-download-list {
  display: grid;
  gap: .55rem;
  padding: .85rem 0 0;
  list-style: none;
}

.metabiblioteca-download-list .obj_galley_link,
.metabiblioteca-download-list a {
  width: 100%;
  justify-content: center;
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-doi-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.15rem;
  margin-top: .8rem;
}

.metabiblioteca-doi-card__logo-link {
  display: inline-block;
}

.metabiblioteca-doi-card__value-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.metabiblioteca-doi-card__link {
  overflow-wrap: anywhere;
  color: var(--metabiblioteca-accent);
  font-size: .82rem;
  font-weight: 650;
  line-height: 1.35;
  text-align: center;
  text-decoration: none;
}

.metabiblioteca-doi-card__link:hover,
.metabiblioteca-doi-card__link:focus-visible {
  color: var(--metabiblioteca-primary);
  text-decoration: underline;
  text-underline-offset: .16em;
}

.metabiblioteca-doi-card__logo {
  display: block;
  width: auto;
  height: 1.5rem;
  max-width: 6.5rem;
  object-fit: contain;
}

.metabiblioteca-doi-card__value {
  display: block;
  max-width: 100%;
}

.metabiblioteca-meta-list {
  display: grid;
  gap: .65rem;
  margin-top: .85rem;
}

.metabiblioteca-meta-list div {
  display: grid;
  gap: .15rem;
}

.metabiblioteca-meta-list dt {
  color: var(--metabiblioteca-muted);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.metabiblioteca-meta-list dd {
  margin: 0;
  color: var(--metabiblioteca-text);
}

.metabiblioteca-meta-list a,
.metabiblioteca-widget a {
  color: var(--metabiblioteca-accent);
}

.metabiblioteca-cite-card__text {
  margin-top: .85rem;
  color: var(--metabiblioteca-text);
  font-size: .82rem;
  line-height: 1.55;
}

.metabiblioteca-license-card img {
  max-width: 7rem;
  height: auto;
  margin-inline: auto;
}

.metabiblioteca-journal-info-card__title {
  margin-top: .85rem;
  font-weight: 800;
  text-align: center;
}

.metabiblioteca-journal-info-card__description {
  margin-top: .5rem;
  color: var(--metabiblioteca-muted);
  font-size: .82rem;
  line-height: 1.5;
}

.metabiblioteca-keyword-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  padding: 0;
  list-style: none;
  margin-top: .85rem;
}

.metabiblioteca-keyword-cloud li {
  display: inline-flex;
  align-items: center;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-accent) 28%, var(--metabiblioteca-border));
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-accent) 8%, transparent);
  color: var(--metabiblioteca-text);
  padding: .25rem .55rem;
  font-size: .78rem;
  font-weight: 650;
  text-decoration: none;
}

.metabiblioteca-keyword-list {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding: 0;
  list-style: none;
}

/* ==========================================================================
   ESTILOS DE PÍLDORAS PARA PALABRAS CLAVE Y CATEGORÍAS
   ========================================================================== */
.metabiblioteca-keyword-list li>span,
.metabiblioteca-keyword-list li>a,
.metabiblioteca-keyword-list li>.metabiblioteca-keyword-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-accent) 28%, var(--metabiblioteca-border));
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-accent) 8%, transparent);
  color: var(--metabiblioteca-text);
  padding: .35rem .6rem;
  font-size: .8rem;
  font-weight: 650;
  text-decoration: none;
  width: 100%;
  box-sizing: border-box;
}

.metabiblioteca-keyword-list li>.metabiblioteca-keyword-container {
  gap: .5rem;
  flex-wrap: nowrap;
}

/* El enlace de texto de la palabra clave */
.metabiblioteca-keyword-container .metabiblioteca-keyword-main-link {
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.metabiblioteca-keyword-container .metabiblioteca-keyword-main-link:hover {
  text-decoration: underline;
}

/* Contenedor de íconos alineados a la derecha */
.metabiblioteca-keyword-icons {
  display: flex;
  align-items: center;
  gap: .45rem;
  padding-left: .5rem;
  border-left: 1px solid color-mix(in srgb, var(--metabiblioteca-accent) 30%, var(--metabiblioteca-border));
  flex-wrap: nowrap;
  justify-content: flex-end;
  flex-shrink: 0;
}

/* Ajuste para los enlaces individuales de cada ícono */
.metabiblioteca-keyword-icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.metabiblioteca-keyword-icons a:hover {
  opacity: 1;
  transform: scale(1.15);
}

.metabiblioteca-keyword-icons img {
  height: 16px;
  width: auto;
  object-fit: contain;
  margin: 0 !important;
}

/* Override global prose image margin as requested */
.prose :where(img):not(:where([class~="not-prose"], [class~="not-prose"] *)) {
  margin-top: 1px !important;
  margin-bottom: 1px !important;
}

.metabiblioteca-ojs-sidebar-blocks .pkp_block,
.metabiblioteca-ojs-sidebar-blocks [class*="block"] {
  overflow: hidden;
  margin-bottom: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
}

.metabiblioteca-ojs-sidebar-blocks .pkp_block .title,
.metabiblioteca-ojs-sidebar-blocks [class*="block"] .title {
  display: block;
  margin: 0;
  background: var(--metabiblioteca-widget-header);
  color: var(--metabiblioteca-widget-header-text);
  padding: .55rem .8rem;
  font-size: .86rem;
  font-weight: 800;
  text-align: center;
}

.metabiblioteca-article-hooks:not(:empty) {
  display: grid;
  gap: .85rem;
}

/* ========================================================================== */
/* 13. Detalle de articulo: pestanas centrales                                */
/* -------------------------------------------------------------------------- */
/* Se implementan con radio buttons para evitar dependencias JS adicionales.   */
.metabiblioteca-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  overflow: hidden;
}

.metabiblioteca-tabs__input {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.metabiblioteca-tabs__label {
  cursor: pointer;
  position: relative;
  background: var(--metabiblioteca-surface);
  color: var(--metabiblioteca-text);
  padding: .8rem .5rem;
  font-size: .88rem;
  font-weight: 750;
  text-align: center;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.metabiblioteca-tabs__label::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: var(--metabiblioteca-accent);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.3s ease;
}

.metabiblioteca-tabs__label:hover,
.metabiblioteca-tabs__label:focus-visible {
  color: var(--metabiblioteca-accent);
  background: var(--metabiblioteca-surface-soft);
}

.metabiblioteca-tabs__label:hover::after {
  transform: scaleX(0.4);
}

.metabiblioteca-tabs__panel {
  display: none;
  grid-column: 1 / -1;
  min-width: 0;
  border-top: 1px solid var(--metabiblioteca-border);
  padding: 1.25rem;
}

.metabiblioteca-tabs__input:checked+.metabiblioteca-tabs__label {
  background: var(--metabiblioteca-widget-header);
  color: var(--metabiblioteca-widget-header-text);
}

.metabiblioteca-tabs__input:checked+.metabiblioteca-tabs__label::after {
  transform: scaleX(1);
  background-color: var(--metabiblioteca-widget-header-text);
}

@keyframes metabibliotecaTabEnter {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.metabiblioteca-tabs__input--abstract:checked~.metabiblioteca-tabs__panel--abstract,
.metabiblioteca-tabs__input--authors:checked~.metabiblioteca-tabs__panel--authors,
.metabiblioteca-tabs__input--references:checked~.metabiblioteca-tabs__panel--references,
.metabiblioteca-tabs__input--stats:checked~.metabiblioteca-tabs__panel--stats,
.metabiblioteca-tabs__input--similarity:checked~.metabiblioteca-tabs__panel--similarity,
.metabiblioteca-tabs__input:nth-of-type(1):checked~.metabiblioteca-tabs__panel--abstract,
.metabiblioteca-tabs__input:nth-of-type(2):checked~.metabiblioteca-tabs__panel--authors,
.metabiblioteca-tabs__input:nth-of-type(3):checked~.metabiblioteca-tabs__panel--references,
.metabiblioteca-tabs__input:nth-of-type(4):checked~.metabiblioteca-tabs__panel--stats,
.metabiblioteca-tabs__input:nth-of-type(5):checked~.metabiblioteca-tabs__panel--similarity {
  display: block;
  animation: metabibliotecaTabEnter 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.metabiblioteca-section-title {
  margin: 0 0 1rem;
  color: var(--metabiblioteca-text);
  font-size: 1.12rem;
  font-weight: 850;
}

.metabiblioteca-article-abstract {
  color: var(--metabiblioteca-text);
  font-size: .96rem;
  line-height: 1.75;
}

.metabiblioteca-article-abstract p:first-child {
  margin-top: 0;
}

.metabiblioteca-keywords-panel {
  margin-top: 1.25rem;
  border-top: 1px solid var(--metabiblioteca-border);
  padding-top: 1rem;
}

.metabiblioteca-keywords-panel h3,
.metabiblioteca-data-availability h3 {
  margin: 0 0 .75rem;
  color: var(--metabiblioteca-widget-header);
  font-size: .95rem;
  font-weight: 850;
}

.metabiblioteca-author-list {
  display: grid;
  gap: .9rem;
  padding: 0;
  list-style: none;
}

.metabiblioteca-author-card {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface-soft);
  padding: .95rem;
}

.metabiblioteca-author-card h3 {
  margin: 0 0 .25rem;
  color: var(--metabiblioteca-text);
  font-size: 1rem;
  font-weight: 800;
}

.metabiblioteca-author-card__affiliation,
.metabiblioteca-author-card__orcid,
.metabiblioteca-author-card__bio {
  margin: .3rem 0 0;
  color: var(--metabiblioteca-muted);
  font-size: .88rem;
  line-height: 1.55;
}

.metabiblioteca-author-card__orcid {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  flex-wrap: wrap;
}

.metabiblioteca-author-card__orcid svg,
.metabiblioteca-author-card__orcid img,
.metabiblioteca-author-card__orcid .metabiblioteca-icon {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}

.metabiblioteca-author-card__role {
  align-self: start;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-accent) 12%, transparent);
  color: var(--metabiblioteca-accent);
  padding: .25rem .55rem;
  font-size: .72rem;
  font-weight: 800;
  white-space: nowrap;
}

/* --- CRediT Roles in Author Card --- */
.metabiblioteca-author-credit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin: 0.35rem 0 0.45rem 0 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  width: 100%;
}

.metabiblioteca-author-credit__roles,
.metabiblioteca-author-credit__body,
.metabiblioteca-author-credit__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
  padding: 0 !important;
  padding-left: 0 !important;
  padding-inline-start: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
  list-style: none !important;
  flex: 1 1 auto;
  min-width: 0;
}

.metabiblioteca-author-credit__item {
  display: inline-flex;
  padding: 0 !important;
  margin: 0 !important;
}

.metabiblioteca-author-credit__badge {
  display: inline-flex;
  align-items: center;
  font-size: var(--metabiblioteca-font-size-01, 16px);
  line-height: 1.4;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--metabiblioteca-accent, #0284c7);
  font-weight: 500;
  text-decoration: none;
  transition: color 0.15s ease;
}

.metabiblioteca-author-credit__badge:hover,
.metabiblioteca-author-credit__badge:focus-visible {
  color: var(--metabiblioteca-accent-hover, #0ea5e9);
  text-decoration: underline;
}

.metabiblioteca-author-credit__badge:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 0.85em;
  background-color: var(--metabiblioteca-border, #cbd5e1);
  margin-left: 0.5rem;
  margin-right: 0.25rem;
  vertical-align: middle;
  pointer-events: none;
}

.metabiblioteca-author-credit__logo-wrapper {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: auto;
  padding: 2px;
  opacity: 0.9;
}

.metabiblioteca-author-credit__logo {
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  max-width: 16px;
  max-height: 16px;
  object-fit: contain;
  display: block;
}

html.dark .metabiblioteca-author-credit__badge {
  color: var(--metabiblioteca-accent, #0ea5e9);
}

html.dark .metabiblioteca-author-credit__badge:hover,
html.dark .metabiblioteca-author-credit__badge:focus-visible {
  color: #ffffff;
}

html.dark .metabiblioteca-author-credit__badge:not(:last-child)::after {
  background-color: var(--metabiblioteca-border, rgba(148, 163, 184, 0.4));
}

.metabiblioteca-reference-list {
  color: var(--metabiblioteca-text);
  font-size: .9rem;
  line-height: 1.65;
}

.metabiblioteca-reference-list p {
  margin: 0 0 .9rem;
}

.metabiblioteca-data-availability {
  margin-top: 1.25rem;
  border-top: 1px solid var(--metabiblioteca-border);
  padding-top: 1rem;
}

.metabiblioteca-versions-card {
  margin-top: 1rem;
  border: 1px solid var(--metabiblioteca-border);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface);
  padding: 1rem;
}

.metabiblioteca-versions-card h2 {
  margin: 0 0 .75rem;
  font-size: 1rem;
  font-weight: 850;
}

.metabiblioteca-versions-card ul {
  margin: 0;
  padding-left: 1.15rem;
}

/* ========================================================================== */
/* 14. Detalle de articulo: respuesta movil                                   */
/* -------------------------------------------------------------------------- */
/* En pantallas medianas se mantienen dos columnas; en movil queda una sola.  */
@media (max-width: 1100px) {
  .metabiblioteca-article-layout {
    grid-template-columns: minmax(12rem, 15rem) minmax(0, 1fr);
  }
}

@media (max-width: 780px) {
  .metabiblioteca-article-layout {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-article-aside--left {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .metabiblioteca-article-hero {
    padding: 1rem;
  }
}

@media (max-width: 520px) {
  .metabiblioteca-tabs {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-tabs__label {
    text-align: left;
    padding-inline: 1rem;
  }

  .metabiblioteca-tabs__panel {
    padding: 1rem;
  }

  .metabiblioteca-author-card {
    display: grid;
  }
}

/* ========================================================================== */
/* 15. Sidebar global y migas de pan del articulo                             */
/* -------------------------------------------------------------------------- */
/* La pagina de articulo usa una sola miga de pan, ubicada dentro del recuadro */
/* del titulo. El sidebar global ya no tiene altura fija ni scroll propio:     */
/* sus bloques se desplazan junto con toda la pagina.                          */
.pkp_page_article .metabiblioteca-detail-page>.cmp_breadcrumbs {
  display: none;
}

.metabiblioteca-global-sidebar {
  align-self: start;
  height: auto;
  max-height: none;
  overflow: visible;
  position: static;
}

.metabiblioteca-global-sidebar__nav {
  width: min(18rem, 22vw);
  overflow: visible;
}

.metabiblioteca-global-sidebar .pkp_block,
.metabiblioteca-global-sidebar [class*="block"] {
  max-height: none;
  overflow: visible;
}

@media (min-width: 1280px) {
  .pkp_page_article .metabiblioteca-global-sidebar__nav {
    width: min(20rem, 24vw);
  }
}


/* ========================================================================== */
/* 16. Ancho general del sitio y reduccion de espacios laterales              */
/* -------------------------------------------------------------------------- */
/* Reduce los espacios laterales en todos los apartados para que el contenido */
/* use mejor el area visible, sin cambiar librerias ni la estructura base.    */
body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full {
  max-width: min(100%, 98rem);
  padding-left: clamp(.5rem, 1.2vw, 1rem);
  padding-right: clamp(.5rem, 1.2vw, 1rem);
}

body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main {
  padding-left: clamp(.5rem, 1.4vw, 1.25rem);
  padding-right: clamp(.5rem, 1.4vw, 1.25rem);
  padding-top: clamp(1.75rem, 3vw, 3rem);
}

body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar {
  padding-top: clamp(1.75rem, 3vw, 3rem);
  padding-right: clamp(.5rem, 1.2vw, 1rem);
}

.metabiblioteca-section {
  padding: clamp(.9rem, 1.8vw, 1.35rem);
}

.metabiblioteca-home-grid {
  gap: clamp(.85rem, 1.8vw, 1.35rem);
}

.metabiblioteca-detail-page {
  width: 100%;
}

/* Detalle de articulo: la columna izquierda queda mas compacta para dar       */
/* prioridad al contenido central y al sidebar global de OJS.                  */
.metabiblioteca-article-layout {
  grid-template-columns: minmax(11.5rem, 14.5rem) minmax(0, 1fr);
  gap: clamp(.8rem, 1.5vw, 1.15rem);
}

.metabiblioteca-article-hero {
  padding: clamp(.95rem, 1.8vw, 1rem);
}

.metabiblioteca-tabs__panel {
  padding: clamp(1rem, 1.8vw, 1.25rem);
}

@media (min-width: 1280px) {
  body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main {
    flex-basis: 0;
  }

  .metabiblioteca-global-sidebar__nav {
    width: min(17rem, 20vw);
  }
}

@media (max-width: 1100px) {
  .metabiblioteca-article-layout {
    grid-template-columns: minmax(10.5rem, 13rem) minmax(0, 1fr);
  }
}

@media (max-width: 780px) {
  body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full {
    padding-left: .75rem;
    padding-right: .75rem;
  }

  .metabiblioteca-article-layout {
    grid-template-columns: 1fr;
  }
}

/* ========================================================================== */
/* 17. Sistema de movimiento profesional y microinteracciones                 */
/* -------------------------------------------------------------------------- */
/* Objetivo: sensación fluida tipo 120 Hz sin cambiar librerías ni estructura. */
/* Criterio técnico: animar principalmente transform y opacity para evitar     */
/* reflow/repaint costosos. El JS solo agrega clases progresivas; si falla,    */
/* el contenido queda visible y funcional.                                    */
:root {
  --metabiblioteca-motion-fast: 160ms;
  --metabiblioteca-motion-base: 260ms;
  --metabiblioteca-motion-slow: 520ms;
  --metabiblioteca-ease-out: cubic-bezier(.16, 1, .3, 1);
  --metabiblioteca-ease-spring: cubic-bezier(.2, .8, .2, 1);
  --metabiblioteca-ease-soft: cubic-bezier(.22, .61, .36, 1);
  --metabiblioteca-lift-shadow: 0 18px 45px rgba(15, 23, 42, .12);
  --metabiblioteca-lift-shadow-strong: 0 26px 70px rgba(15, 23, 42, .18);
}

/* Movimiento base de página ------------------------------------------------- */
/* Suaviza anclas internas y cambios de posición sin afectar usuarios que     */
/* prefieren menos movimiento.                                                */
html {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* Aparición progresiva ------------------------------------------------------ */
/* El estado oculto solo existe cuando JS agrega .metabiblioteca-motion-ready. */
/* Así evitamos contenido invisible si el navegador bloquea JavaScript.        */
.metabiblioteca-motion-ready .metabiblioteca-reveal {
  opacity: 0;
  transform: translate3d(0, 18px, 0) scale(.985);
  transition:
    opacity var(--metabiblioteca-motion-slow) var(--metabiblioteca-ease-out),
    transform var(--metabiblioteca-motion-slow) var(--metabiblioteca-ease-out);
  transition-delay: var(--metabiblioteca-reveal-delay, 0ms);
  will-change: opacity, transform;
}

.metabiblioteca-motion-ready .metabiblioteca-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

/* Estados interactivos globales -------------------------------------------- */
/* Botones, enlaces tipo píldora, tarjetas y bloques ganan profundidad con     */
/* transform/opacity. No se animan width, height, top, left ni margin.         */
:where(.metabiblioteca-button,
  .metabiblioteca-article-carousel__button,
  .metabiblioteca-article-card,
  .metabiblioteca-journal-card,
  .metabiblioteca-journal-list__item,
  .metabiblioteca-section,
  .metabiblioteca-widget,
  .metabiblioteca-detail-card,
  .metabiblioteca-tabs,
  .obj_article_summary,
  .obj_issue_summary,
  .pkp_block,
  .cmp_button,
  .cmp_manuscript_button,
  .pkp_navigation_primary a,
  .pkp_navigation_user a,
  .pkp_block a,
  .metabiblioteca-tabs__tab,
  .metabiblioteca-download-link) {
  transition:
    transform var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-spring),
    opacity var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    box-shadow var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    border-color var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    background-color var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    color var(--metabiblioteca-motion-fast) var(--metabiblioteca-ease-out);
}

.pkp_block.facts_label_plugin .panel-heading {
    margin: 0;
    background: var(--metabiblioteca-widget-header);
    color: var(--metabiblioteca-widget-header-text);
    padding: .55rem .8rem;
    font-size: .86rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
}

/* Elevación elegante de tarjetas ------------------------------------------- */
/* Hover sutil: suficiente para sentirse vivo, sin saltos ni distracciones.    */
:where(.metabiblioteca-article-card, .metabiblioteca-journal-card, .metabiblioteca-journal-list__item, .obj_article_summary):hover,
:where(.metabiblioteca-article-card, .metabiblioteca-journal-card, .metabiblioteca-journal-list__item, .obj_article_summary):focus-within {
  transform: translate3d(0, -4px, 0);
  box-shadow: var(--metabiblioteca-lift-shadow);
}

:where(.metabiblioteca-section, .metabiblioteca-widget, .metabiblioteca-detail-card, .metabiblioteca-tabs):hover {
  border-color: color-mix(in srgb, var(--metabiblioteca-accent, #0284c7) 38%, var(--metabiblioteca-border, rgba(148, 163, 184, .28)));
}

/* Microinteracción para botones -------------------------------------------- */
/* El botón se eleva al pasar el cursor y responde con una presión táctil.     */
:where(.metabiblioteca-button, .cmp_button, .cmp_manuscript_button, .metabiblioteca-download-link):hover,
:where(.metabiblioteca-button, .cmp_button, .cmp_manuscript_button, .metabiblioteca-download-link):focus-visible {
  transform: translate3d(0, -2px, 0);
  box-shadow: 0 12px 30px rgba(2, 132, 199, .16);
}

:where(.metabiblioteca-button, .cmp_button, .cmp_manuscript_button, .metabiblioteca-download-link):active {
  transform: translate3d(0, 0, 0) scale(.985);
  transition-duration: 90ms;
}

/* Navegación y migas de pan ------------------------------------------------- */
/* Las entradas de menú se comportan como chips suaves y fluidos.              */
:where(.pkp_navigation_primary a, .pkp_navigation_user a, .cmp_breadcrumbs a, .metabiblioteca-article-hero a) {
  position: relative;
  text-decoration-thickness: .08em;
  text-underline-offset: .2em;
}

:where(.pkp_navigation_primary a, .pkp_navigation_user a):hover,
:where(.pkp_navigation_primary a, .pkp_navigation_user a):focus-visible {
  transform: translate3d(0, -1px, 0);
}

:where(.cmp_breadcrumbs a, .metabiblioteca-article-hero a):hover,
:where(.cmp_breadcrumbs a, .metabiblioteca-article-hero a):focus-visible {
  opacity: .82;
}

/* Pestañas del detalle de artículo ----------------------------------------- */
/* Transición rápida para que cambiar de pestaña se sienta inmediato.          */
.metabiblioteca-tabs__tab {
  transform-origin: center bottom;
}

.metabiblioteca-tabs__tab:hover,
.metabiblioteca-tabs__tab:focus-visible {
  transform: translate3d(0, -1px, 0);
}

.metabiblioteca-tabs__tab[aria-selected="true"],
.metabiblioteca-tabs__tab.is-active {
  box-shadow: inset 0 -2px 0 currentColor;
}

.metabiblioteca-tabs__panel {
  animation: metabiblioteca-panel-in var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out) both;
}

@keyframes metabiblioteca-panel-in {
  from {
    opacity: 0;
    transform: translate3d(0, 8px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* Carruseles ---------------------------------------------------------------- */
/* Scroll con inercia, snap estable y tarjetas con respuesta táctil.           */
.metabiblioteca-article-carousel__track {
  scroll-padding-inline: .25rem;
  -webkit-overflow-scrolling: touch;
}

.metabiblioteca-article-carousel__track::-webkit-scrollbar {
  height: .45rem;
}

.metabiblioteca-article-carousel__track::-webkit-scrollbar-thumb {
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-accent, #0284c7) 35%, transparent);
}

.metabiblioteca-article-carousel__button:hover,
.metabiblioteca-article-carousel__button:focus-visible {
  transform: translate3d(0, -1px, 0) scale(1.04);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .14);
}

.metabiblioteca-article-carousel__button:active {
  transform: scale(.96);
}

/* Brillo direccional opcional ---------------------------------------------- */
/* El JS actualiza --metabiblioteca-pointer-x/y en tarjetas. Si no hay JS,     */
/* simplemente no aparece el brillo.                                          */
.metabiblioteca-card-tilt {
  position: relative;
  overflow: hidden;
}

.metabiblioteca-card-tilt::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
  background: radial-gradient(circle at var(--metabiblioteca-pointer-x, 50%) var(--metabiblioteca-pointer-y, 0%),
      rgba(255, 255, 255, .42),
      transparent 38%);
  transition: opacity var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out);
}

.dark .metabiblioteca-card-tilt::after {
  background: radial-gradient(circle at var(--metabiblioteca-pointer-x, 50%) var(--metabiblioteca-pointer-y, 0%),
      rgba(125, 211, 252, .18),
      transparent 42%);
}

.metabiblioteca-card-tilt:hover::after,
.metabiblioteca-card-tilt:focus-within::after {
  opacity: 1;
}

/* Formularios, buscadores y filtros ---------------------------------------- */
/* Enfasis claro y suave en inputs sin modificar su estructura HTML.           */
:where(input, select, textarea, .pkp_search input, .cmp_form input, .cmp_form textarea) {
  transition:
    border-color var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    box-shadow var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    background-color var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out),
    transform var(--metabiblioteca-motion-fast) var(--metabiblioteca-ease-out);
}

:where(input, select, textarea, .pkp_search input, .cmp_form input, .cmp_form textarea):focus {
  transform: translate3d(0, -1px, 0);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-accent, #0284c7) 16%, transparent);
}

/* Bloques laterales comunes ------------------------------------------------- */
/* Misma experiencia para todos los apartados: sin scroll interno y con        */
/* entrada suave cuando aparecen en viewport.                                 */
.metabiblioteca-global-sidebar,
.metabiblioteca-global-sidebar__nav,
.metabiblioteca-global-sidebar [class*="block"] {
  scroll-behavior: smooth;
}

.metabiblioteca-global-sidebar .pkp_block:hover,
.metabiblioteca-global-sidebar [class*="block"]:hover {
  transform: translate3d(0, -3px, 0);
  box-shadow: var(--metabiblioteca-lift-shadow);
}

/* Tablas, galeradas y listas editoriales ----------------------------------- */
/* Las listas largas ganan lectura y feedback visual sin alterar el marcado.   */
:where(table, .obj_galley_link, .issue-toc, .cmp_article_list, .galleys_links) {
  transition: opacity var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out), transform var(--metabiblioteca-motion-base) var(--metabiblioteca-ease-out);
}

:where(.obj_galley_link, .galleys_links a):hover,
:where(.obj_galley_link, .galleys_links a):focus-visible {
  transform: translate3d(0, -2px, 0);
}

/* Cabecera y contenido principal ------------------------------------------- */
/* Entrada inicial ligera para que la página no se sienta estática al cargar.  */
.metabiblioteca-motion-ready main {
  animation: metabiblioteca-page-in 480ms var(--metabiblioteca-ease-out) both;
}

@keyframes metabiblioteca-page-in {
  from {
    opacity: .96;
    transform: translate3d(0, 6px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* Respeto a accesibilidad --------------------------------------------------- */
/* Si el usuario pide menos movimiento, se eliminan animaciones/transiciones   */
/* y el sitio permanece completamente funcional.                              */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: .001ms;
    animation-iteration-count: 1;
    scroll-behavior: auto;
    transition-duration: .001ms;
    transition-delay: 0ms;
  }

  .metabiblioteca-motion-ready .metabiblioteca-reveal {
    opacity: 1;
    transform: none;
  }
}

/* --------------------------------------------------------------------------
   18. Scroll suave con Lenis y navegación tipo app
   --------------------------------------------------------------------------
   Lenis se carga de forma progresiva desde main.js. Si la librería no carga,
   el sitio sigue usando scroll nativo. Esta sección solo prepara el documento
   para que el desplazamiento se perciba más continuo, evitando scrolls internos
   y manteniendo compatibilidad con enlaces ancla, bloques laterales y OJS.
---------------------------------------------------------------------------- */

/* Lenis necesita que el documento conserve altura automática. */
html.lenis,
html.lenis body {
  height: auto;
}

/* Cuando Lenis controla el desplazamiento, se desactiva el smooth nativo para
   evitar una doble interpolación que se siente pesada o retardada. */
.lenis.lenis-smooth {
  scroll-behavior: auto;
}

/* Si algún componente interno requiere scroll propio, puede añadir el atributo
   data-lenis-prevent. Así evitamos capturar gestos en modales o desplegables. */
.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

/* Estado usado por Lenis cuando el scroll se detiene temporalmente. */
.lenis.lenis-stopped {
  overflow: hidden;
}

/* Evita que iframes capturen el puntero durante el desplazamiento suave. */
.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

/* Pequeño refinamiento visual cuando Lenis está disponible. No altera layout;
   solo unifica la sensación de interacción en links y tarjetas. */
.metabiblioteca-lenis-ready :where(a, button, .cmp_button, .metabiblioteca-button) {
  -webkit-tap-highlight-color: transparent;
}

/* El foco por teclado se mantiene visible y claro aunque haya transiciones. */
.metabiblioteca-lenis-ready :where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid color-mix(in srgb, var(--metabiblioteca-accent, #0284c7) 70%, white);
  outline-offset: 3px;
}

/* En dispositivos táctiles o con reducción de movimiento, el tema vuelve al
   comportamiento nativo para no producir mareos ni retrasos de gestos. */
@media (pointer: coarse),
(prefers-reduced-motion: reduce) {

  html,
  body,
  .lenis.lenis-smooth {
    scroll-behavior: auto;
  }
}

/* -------------------------------------------------------------------------- */
/* 19. Sistema dinamico de marca: colores y fuentes del administrador          */
/* -------------------------------------------------------------------------- */
/*
  Las variables de esta seccion se inyectan desde headerHead.tpl usando las
  opciones del administrador del tema. No edites aqui los valores de marca:
  configura Color01, Color02, Color03 y las tres fuentes en Apariencia > Tema.

  Color01: color principal para titulos, botones, enlaces e iconos.
  Color02: color de hover y elementos secundarios.
  Color03: color de fuente general, no titulos.

  Fuente01: fuente principal para cuerpo, botones, enlaces y titulos de bloque.
  Fuente02: fuente para titulos principales.
  Fuente03: fuente para subtitulos, metadatos, resumenes y textos auxiliares.
*/

/* Base tipografica global. */
html.metabiblioteca-theme,
html.metabiblioteca-theme body {
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-size: var(--metabiblioteca-font-size-01, 16px);
  color: var(--metabiblioteca-color-03, #0f172a);
}

/* Texto general: mantiene Color03 en parrafos, listas, formularios y tablas. */
.metabiblioteca-theme body,
.metabiblioteca-theme main,
.metabiblioteca-theme p,
.metabiblioteca-theme li,
.metabiblioteca-theme td,
.metabiblioteca-theme th,
.metabiblioteca-theme label,
.metabiblioteca-theme input,
.metabiblioteca-theme select,
.metabiblioteca-theme textarea,
.metabiblioteca-theme .page,
.metabiblioteca-theme .cmp_form,
.metabiblioteca-theme .article-summary,
.metabiblioteca-theme .metabiblioteca-article-tab__panel,
.metabiblioteca-theme .metabiblioteca-section--about,
.metabiblioteca-theme .metabiblioteca-section--portal-about {
  font-family: var(--metabiblioteca-font-01, inherit);
  color: var(--metabiblioteca-color-03, #0f172a);
}

/* Titulos principales: toman Color01 y Fuente02. */
.metabiblioteca-theme h1,
.metabiblioteca-theme h2,
.metabiblioteca-theme h3,
.metabiblioteca-theme .page_title,
.metabiblioteca-theme .article-title,
.metabiblioteca-theme .current_issue_title,
.metabiblioteca-theme .metabiblioteca-article-hero__title,
.metabiblioteca-theme .metabiblioteca-section__title,
.metabiblioteca-theme .metabiblioteca-article-card__title,
.metabiblioteca-theme .metabiblioteca-journal-card__title,
.metabiblioteca-theme .metabiblioteca-article-carousel__title {
  font-family: var(--metabiblioteca-font-02, Georgia, "Times New Roman", serif);
  color: var(--metabiblioteca-color-01, #0284c7);
}

/* Tamano principal de titulos: administrable en px, con limite responsive. */
.metabiblioteca-theme h1,
.metabiblioteca-theme .page_title,
.metabiblioteca-theme .article-title,
.metabiblioteca-theme .metabiblioteca-article-hero__title {
  font-size: clamp(1.75rem, 4vw, var(--metabiblioteca-font-size-02, 34px));
  line-height: 1.14;
  letter-spacing: -0.025em;
}

/* Subtitulos, metadatos y textos editoriales auxiliares. */
.metabiblioteca-theme h4,
.metabiblioteca-theme h5,
.metabiblioteca-theme h6,
.metabiblioteca-theme .subtitle,
.metabiblioteca-theme .meta,
.metabiblioteca-theme .authors,
.metabiblioteca-theme .date,
.metabiblioteca-theme .section,
.metabiblioteca-theme .metabiblioteca-section__eyebrow,
.metabiblioteca-theme .metabiblioteca-article-card__abstract,
.metabiblioteca-theme .metabiblioteca-article-hero__meta,
.metabiblioteca-theme .metabiblioteca-article-hero__section,
.metabiblioteca-theme .metabiblioteca-article-side-card__content,
.metabiblioteca-theme .metabiblioteca-journal-card__description {
  font-family: var(--metabiblioteca-font-03, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-size: var(--metabiblioteca-font-size-03, 18px);
}

/* Enlaces: Color01 normal, Color02 hover/focus. */
.metabiblioteca-theme a,
.metabiblioteca-theme .cmp_breadcrumbs a,
.metabiblioteca-theme .pkp_navigation_primary a,
.metabiblioteca-theme .pkp_navigation_user a,
.metabiblioteca-theme .metabiblioteca-article-card__link,
.metabiblioteca-theme .metabiblioteca-journal-card__link {
  color: var(--metabiblioteca-color-01, #0284c7);
  transition: color .22s cubic-bezier(.2, .8, .2, 1), opacity .22s cubic-bezier(.2, .8, .2, 1);
}

.metabiblioteca-theme a:hover,
.metabiblioteca-theme a:focus-visible,
.metabiblioteca-theme .cmp_breadcrumbs a:hover,
.metabiblioteca-theme .pkp_navigation_primary a:hover,
.metabiblioteca-theme .pkp_navigation_user a:hover,
.metabiblioteca-theme .metabiblioteca-article-card__link:hover,
.metabiblioteca-theme .metabiblioteca-journal-card__link:hover {
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

/* Botones y galeradas: Color01 normal y Color02 en hover. */
.metabiblioteca-theme button,
.metabiblioteca-theme .button,
.metabiblioteca-theme .btn,
.metabiblioteca-theme .cmp_button,
.metabiblioteca-theme .obj_galley_link,
.metabiblioteca-theme .metabiblioteca-button,
.metabiblioteca-theme input[type="submit"],
.metabiblioteca-theme input[type="button"] {
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .metabiblioteca-button--primary,
.metabiblioteca-theme .cmp_button,
.metabiblioteca-theme .obj_galley_link,
.metabiblioteca-theme input[type="submit"],
.metabiblioteca-theme input[type="button"] {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: #fff;
}

.metabiblioteca-theme .metabiblioteca-button--primary:hover,
.metabiblioteca-theme .cmp_button:hover,
.metabiblioteca-theme .obj_galley_link:hover,
.metabiblioteca-theme input[type="submit"]:hover,
.metabiblioteca-theme input[type="button"]:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
}

/* Titulos de bloques laterales y cabeceras de tarjetas: Fuente01 + Color01. */
.metabiblioteca-theme .pkp_block .title,
.metabiblioteca-theme .block_make_submission .title,
.metabiblioteca-theme .metabiblioteca-side-card__title,
.metabiblioteca-theme .metabiblioteca-article-side-card__title,
.metabiblioteca-theme .metabiblioteca-article-tab__button,
.metabiblioteca-theme .metabiblioteca-section__header h2,
.metabiblioteca-theme .metabiblioteca-section__header h3 {
  font-family: var(--metabiblioteca-font-01, inherit);
  color: var(--metabiblioteca-color-01, #0284c7);
}

/* Elementos secundarios, badges, bordes activos y pestanas. */
.metabiblioteca-theme .metabiblioteca-section__eyebrow,
.metabiblioteca-theme .metabiblioteca-article-card__journal,
.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"],
.metabiblioteca-theme .current,
.metabiblioteca-theme .active,
.metabiblioteca-theme .pkp_navigation_primary .current>a {
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"],
.metabiblioteca-theme .metabiblioteca-section,
.metabiblioteca-theme .metabiblioteca-card,
.metabiblioteca-theme .metabiblioteca-journal-card,
.metabiblioteca-theme .metabiblioteca-article-card,
.metabiblioteca-theme .metabiblioteca-article-side-card,
.metabiblioteca-theme .pkp_block {
  --metabiblioteca-accent: var(--metabiblioteca-color-01, #0284c7);
}

/* Iconos SVG: heredan Color01 para mantener coherencia visual. */
.metabiblioteca-theme svg:not(.orcid_icon):not([class*="ror"]),
.metabiblioteca-theme .icon,
.metabiblioteca-theme [class*="icon"] {
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme a:hover svg,
.metabiblioteca-theme button:hover svg {
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

/* Custom ORCID logo color */
.metabiblioteca-theme svg.orcid_icon,
.metabiblioteca-theme .metabiblioteca-icon-orcid,
.metabiblioteca-theme .metabiblioteca-icon--orcid,
.metabiblioteca-theme .fa-orcid {
  color: #A9D03F !important;
}

/* Formularios: foco de campos con Color01 y hover secundario con Color02. */
.metabiblioteca-theme input:focus,
.metabiblioteca-theme select:focus,
.metabiblioteca-theme textarea:focus {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  outline: none;
}

/* Modo oscuro: conserva superficies oscuras, pero respeta la marca en acciones. */
html.dark.metabiblioteca-theme body,
html.dark.metabiblioteca-theme main,
html.dark.metabiblioteca-theme p,
html.dark.metabiblioteca-theme li,
html.dark.metabiblioteca-theme td,
html.dark.metabiblioteca-theme th,
html.dark.metabiblioteca-theme label {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 18%, #f8fafc 82%);
}

html.dark.metabiblioteca-theme h1,
html.dark.metabiblioteca-theme h2,
html.dark.metabiblioteca-theme h3,
html.dark.metabiblioteca-theme .page_title,
html.dark.metabiblioteca-theme .article-title,
html.dark.metabiblioteca-theme .metabiblioteca-article-hero__title,
html.dark.metabiblioteca-theme .metabiblioteca-section__title {
  color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 76%, #ffffff 24%);
}

/* -------------------------------------------------------------------------- */
/* 20. Color04: contraste para botones, pestanas y cabeceras de bloques        */
/* -------------------------------------------------------------------------- */
/*
  Color04 se configura desde el administrador del tema y se usa para el texto
  que aparece encima de fondos de marca. Esto evita problemas de contraste
  cuando Color01 o Color02 son oscuros, claros o muy saturados.

  Uso recomendado:
  - Color01: fondo principal de acciones, cabeceras y pestanas activas.
  - Color02: fondo hover y estados secundarios.
  - Color03: texto general del contenido.
  - Color04: texto e iconos encima de Color01/Color02.
*/

/* Cabeceras de bloques laterales y tarjetas del detalle de articulo. */
.metabiblioteca-theme .pkp_block .title,
.metabiblioteca-theme .block_make_submission .title,
.metabiblioteca-theme .metabiblioteca-side-card__title,
.metabiblioteca-theme .metabiblioteca-article-side-card__title,
.metabiblioteca-theme .metabiblioteca-card__header,
.metabiblioteca-theme .metabiblioteca-section__header--solid {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-action-text, #ffffff);
}

/* Texto interno de cabeceras, incluyendo enlaces o etiquetas generadas por OJS. */
.metabiblioteca-theme .pkp_block .title *,
.metabiblioteca-theme .block_make_submission .title *,
.metabiblioteca-theme .metabiblioteca-side-card__title *,
.metabiblioteca-theme .metabiblioteca-article-side-card__title *,
.metabiblioteca-theme .metabiblioteca-card__header *,
.metabiblioteca-theme .metabiblioteca-section__header--solid * {
  color: var(--metabiblioteca-action-text, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

/* Pestanas del detalle de articulo: inactivas sobrias, activa con Color01. */
.metabiblioteca-theme .metabiblioteca-article-tab__button {
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  border-color: transparent;
  transition:
    background-color .24s cubic-bezier(.2, .8, .2, 1),
    color .24s cubic-bezier(.2, .8, .2, 1),
    border-color .24s cubic-bezier(.2, .8, .2, 1),
    transform .24s cubic-bezier(.2, .8, .2, 1);
}

.metabiblioteca-theme .metabiblioteca-article-tab__button:hover,
.metabiblioteca-theme .metabiblioteca-article-tab__button:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 12%, transparent);
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"],
.metabiblioteca-theme .metabiblioteca-article-tab__button.is-active,
.metabiblioteca-theme .metabiblioteca-article-tab__button.active {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-action-text, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"] *,
.metabiblioteca-theme .metabiblioteca-article-tab__button.is-active *,
.metabiblioteca-theme .metabiblioteca-article-tab__button.active * {
  color: var(--metabiblioteca-action-text, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

/* Botones principales y galeradas PDF/HTML: texto e iconos siempre con Color04. */
.metabiblioteca-theme .metabiblioteca-button--primary,
.metabiblioteca-theme .cmp_button,
.metabiblioteca-theme .obj_galley_link,
.metabiblioteca-theme a.obj_galley_link,
.metabiblioteca-theme .galley-link,
.metabiblioteca-theme input[type="submit"],
.metabiblioteca-theme input[type="button"],
.metabiblioteca-theme button[type="submit"] {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-action-text, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-button--primary:hover,
.metabiblioteca-theme .cmp_button:hover,
.metabiblioteca-theme .obj_galley_link:hover,
.metabiblioteca-theme a.obj_galley_link:hover,
.metabiblioteca-theme .galley-link:hover,
.metabiblioteca-theme input[type="submit"]:hover,
.metabiblioteca-theme input[type="button"]:hover,
.metabiblioteca-theme button[type="submit"]:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-action-text, #ffffff);
}

/* Iconos dentro de botones: fuerzan currentColor para evitar iconos azules invisibles. */
.metabiblioteca-theme .metabiblioteca-button--primary svg,
.metabiblioteca-theme .cmp_button svg,
.metabiblioteca-theme .obj_galley_link svg,
.metabiblioteca-theme .galley-link svg,
.metabiblioteca-theme .metabiblioteca-button--primary .icon,
.metabiblioteca-theme .cmp_button .icon,
.metabiblioteca-theme .obj_galley_link .icon,
.metabiblioteca-theme .galley-link .icon,
.metabiblioteca-theme .metabiblioteca-button--primary [class*="icon"],
.metabiblioteca-theme .cmp_button [class*="icon"],
.metabiblioteca-theme .obj_galley_link [class*="icon"],
.metabiblioteca-theme .galley-link [class*="icon"] {
  color: var(--metabiblioteca-action-text, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

ul.metabiblioteca-article-summary__galleys {
    text-transform: uppercase;
}

a.metabiblioteca-galley-link.obj_galley_link {
    text-transform: uppercase;
}

.metabiblioteca-theme .metabiblioteca-button--primary svg *,
.metabiblioteca-theme .cmp_button svg *,
.metabiblioteca-theme .obj_galley_link svg *,
.metabiblioteca-theme .galley-link svg * {
  fill: currentColor;
  stroke: currentColor;
}

/* Imagenes monocromas dentro de botones PDF: se aclaran para contrastar sobre la marca. */
.metabiblioteca-theme .obj_galley_link img,
.metabiblioteca-theme .galley-link img,
.metabiblioteca-theme .metabiblioteca-button--primary img,
.metabiblioteca-theme .cmp_button img {
  filter: brightness(0) invert(1);
  opacity: .96;
}

/* Badges, etiquetas y estados activos: mantienen coherencia con Color01/Color04. */
.metabiblioteca-theme .badge,
.metabiblioteca-theme .label,
.metabiblioteca-theme .cmp_notification,
.metabiblioteca-theme .metabiblioteca-badge,
.metabiblioteca-theme .metabiblioteca-label,
.metabiblioteca-theme .current_issue .current,
.metabiblioteca-theme .pkp_navigation_primary .current>a {
  color: var(--metabiblioteca-action-text, #ffffff);
}

/* Enlaces dentro de acciones con fondo: evitan que el enlace herede Color01 sobre Color01. */
.metabiblioteca-theme .metabiblioteca-button--primary a,
.metabiblioteca-theme .cmp_button a,
.metabiblioteca-theme .obj_galley_link a,
.metabiblioteca-theme .pkp_block .title a,
.metabiblioteca-theme .metabiblioteca-article-side-card__title a,
.metabiblioteca-theme .metabiblioteca-side-card__title a {
  color: var(--metabiblioteca-action-text, #ffffff);
}

/* Modo oscuro: Color04 tambien gobierna acciones y cabeceras de marca. */
html.dark.metabiblioteca-theme .obj_galley_link,
html.dark.metabiblioteca-theme .cmp_button,
html.dark.metabiblioteca-theme .metabiblioteca-button--primary,
html.dark.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"],
html.dark.metabiblioteca-theme .pkp_block .title,
html.dark.metabiblioteca-theme .metabiblioteca-side-card__title,
html.dark.metabiblioteca-theme .metabiblioteca-article-side-card__title {
  color: var(--metabiblioteca-action-text, #ffffff);
}

/* ========================================================================== */
/* 21. Color05 y Color06: fondos administrables para modo claro y oscuro      */
/* -------------------------------------------------------------------------- */
/*
  Color05 y Color06 se configuran desde el administrador del tema.

  - Color05: fondo general del sitio en modo claro.
  - Color06: fondo general del sitio en modo oscuro.

  Estos colores se aplican a la pagina completa, al area principal y a las
  superficies generales del tema sin cambiar los colores de tarjetas, botones,
  pestanas o cabeceras. Asi cada institucion puede ajustar la atmosfera del
  portal sin perder contraste ni romper la jerarquia visual.
*/

/* Fondo base del documento en modo claro. */
html.metabiblioteca-theme,
html.metabiblioteca-theme body {
  background-color: var(--metabiblioteca-bg-light, var(--metabiblioteca-color-05, #f8fafc));
}

/* Contenedores estructurales principales: evitan franjas blancas heredadas. */
html.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user),
html.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full,
html.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main,
html.metabiblioteca-theme .pkp_structure_page,
html.metabiblioteca-theme .pkp_structure_main,
html.metabiblioteca-theme .page,
html.metabiblioteca-theme .metabiblioteca-home,
html.metabiblioteca-theme .metabiblioteca-detail-page {
  background-color: var(--metabiblioteca-bg-light, var(--metabiblioteca-color-05, #f8fafc));
}

/* En modo claro, las superficies suaves usan el fondo institucional con mezcla
   blanca para que no se vea plano ni pesado. */
html.metabiblioteca-theme .metabiblioteca-home,
html.metabiblioteca-theme .metabiblioteca-detail-page {
  --metabiblioteca-surface-soft: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 82%, #ffffff 18%);
}

/* Fondo base del documento en modo oscuro. */
html.dark.metabiblioteca-theme,
html.dark.metabiblioteca-theme body {
  background-color: var(--metabiblioteca-bg-dark, var(--metabiblioteca-color-06, #020617));
}

/* Contenedores estructurales principales en modo oscuro. */
html.dark.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user),
html.dark.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full,
html.dark.metabiblioteca-theme body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main,
html.dark.metabiblioteca-theme .pkp_structure_page,
html.dark.metabiblioteca-theme .pkp_structure_main,
html.dark.metabiblioteca-theme .page,
html.dark.metabiblioteca-theme .metabiblioteca-home,
html.dark.metabiblioteca-theme .metabiblioteca-detail-page {
  background-color: var(--metabiblioteca-bg-dark, var(--metabiblioteca-color-06, #020617));
}

/* En modo oscuro, las tarjetas mantienen contraste sobre el nuevo fondo oscuro
   y las superficies suaves se mezclan con el Color06 elegido. */
html.dark.metabiblioteca-theme .metabiblioteca-home,
html.dark.metabiblioteca-theme .metabiblioteca-detail-page {
  --metabiblioteca-surface: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 82%, #ffffff 8%);
  --metabiblioteca-surface-soft: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, #ffffff 5%);
  --metabiblioteca-border: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 65%, #ffffff 20%);
}

/* Transicion suave al cambiar manualmente entre modo claro y modo oscuro. */
html.metabiblioteca-theme body,
html.metabiblioteca-theme main,
html.metabiblioteca-theme .pkp_structure_page,
html.metabiblioteca-theme .pkp_structure_main,
html.metabiblioteca-theme .page,
html.metabiblioteca-theme .metabiblioteca-home,
html.metabiblioteca-theme .metabiblioteca-detail-page {
  transition: background-color .28s cubic-bezier(.2, .8, .2, 1), color .22s cubic-bezier(.2, .8, .2, 1);
}

/* Accesibilidad: si el usuario prefiere reducir movimiento, el cambio de fondo
   se aplica sin transicion. */
@media (prefers-reduced-motion: reduce) {

  html.metabiblioteca-theme body,
  html.metabiblioteca-theme main,
  html.metabiblioteca-theme .pkp_structure_page,
  html.metabiblioteca-theme .pkp_structure_main,
  html.metabiblioteca-theme .page,
  html.metabiblioteca-theme .metabiblioteca-home,
  html.metabiblioteca-theme .metabiblioteca-detail-page {
    transition: none;
  }
}


/* -------------------------------------------------------------------------- */
/* 22. Correccion fuerte de Color01/Color02/Color04 en acciones y cabeceras   */
/* -------------------------------------------------------------------------- */
/*
  Esta seccion queda al final del archivo para ganar la cascada CSS sobre
  estilos heredados del tema base, OJS y clases generadas por plugins.

  Objetivo:
  - Color01 controla fondos de botones, pestanas activas y cabeceras de bloques.
  - Color02 controla hover/focus de esos mismos elementos.
  - Color04 controla texto e iconos sobre fondos Color01/Color02.

  Importante para mantenimiento:
  si una plantilla agrega nuevos botones o cabeceras, anexar aqui su selector
  para que siga tomando la marca desde el administrador y no un color fijo.
*/

/* Variables locales: evitan que reglas antiguas con --metabiblioteca-accent fijo ganen. */
.metabiblioteca-theme,
.metabiblioteca-theme body,
.metabiblioteca-theme .metabiblioteca-home,
.metabiblioteca-theme .metabiblioteca-detail-page,
.metabiblioteca-theme .metabiblioteca-article-detail,
.metabiblioteca-theme .pkp_structure_main,
.metabiblioteca-theme .pkp_structure_content,
.metabiblioteca-theme .pkp_structure_sidebar {
  --metabiblioteca-accent: var(--metabiblioteca-color-01, #0284c7);
  --metabiblioteca-accent-hover: var(--metabiblioteca-color-02, #0ea5e9);
  --metabiblioteca-widget-header: var(--metabiblioteca-color-01, #0284c7);
  --metabiblioteca-widget-header-hover: var(--metabiblioteca-color-02, #0ea5e9);
  --metabiblioteca-widget-header-text: var(--metabiblioteca-color-04, #ffffff);
  --metabiblioteca-action-text: var(--metabiblioteca-color-04, #ffffff);
}

/* Cabeceras de bloques propios del articulo, bloques OJS y tarjetas editoriales. */
.metabiblioteca-theme .metabiblioteca-widget__title,
.metabiblioteca-theme .metabiblioteca-card__header,
.metabiblioteca-theme .metabiblioteca-side-card__title,
.metabiblioteca-theme .metabiblioteca-article-side-card__title,
.metabiblioteca-theme .metabiblioteca-section__header--solid,
.metabiblioteca-theme .pkp_block .title,
.metabiblioteca-theme .pkp_block h2,
.metabiblioteca-theme .block_make_submission .title,
.metabiblioteca-theme .block_custom .title,
.metabiblioteca-theme aside .title,
.metabiblioteca-theme [class*="block"]>.title,
.metabiblioteca-theme [class*="block"] h2:first-child {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Texto e iconos dentro de cabeceras: siempre Color04 para contraste. */
.metabiblioteca-theme .metabiblioteca-widget__title *,
.metabiblioteca-theme .metabiblioteca-card__header *,
.metabiblioteca-theme .metabiblioteca-side-card__title *,
.metabiblioteca-theme .metabiblioteca-article-side-card__title *,
.metabiblioteca-theme .pkp_block .title *,
.metabiblioteca-theme .pkp_block h2 *,
.metabiblioteca-theme [class*="block"]>.title *,
.metabiblioteca-theme [class*="block"] h2:first-child * {
  color: var(--metabiblioteca-color-04, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

/* Botones generales de OJS, acciones, envio, busqueda y enlaces tipo boton. */
.metabiblioteca-theme .metabiblioteca-button--primary,
.metabiblioteca-theme .metabiblioteca-button,
.metabiblioteca-theme .cmp_button,
.metabiblioteca-theme .pkp_button,
.metabiblioteca-theme .button,
.metabiblioteca-theme .btn,
.metabiblioteca-theme button[type="submit"],
.metabiblioteca-theme input[type="submit"],
.metabiblioteca-theme input[type="button"],
.metabiblioteca-theme .block_make_submission a,
.metabiblioteca-theme .make_submission a,
.metabiblioteca-theme a.action,
.metabiblioteca-theme a.button {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-button--primary:hover,
.metabiblioteca-theme .metabiblioteca-button:hover,
.metabiblioteca-theme .cmp_button:hover,
.metabiblioteca-theme .pkp_button:hover,
.metabiblioteca-theme .button:hover,
.metabiblioteca-theme .btn:hover,
.metabiblioteca-theme button[type="submit"]:hover,
.metabiblioteca-theme input[type="submit"]:hover,
.metabiblioteca-theme input[type="button"]:hover,
.metabiblioteca-theme .block_make_submission a:hover,
.metabiblioteca-theme .make_submission a:hover,
.metabiblioteca-theme a.action:hover,
.metabiblioteca-theme a.button:hover,
.metabiblioteca-theme .metabiblioteca-button--primary:focus-visible,
.metabiblioteca-theme .cmp_button:focus-visible,
.metabiblioteca-theme .pkp_button:focus-visible,
.metabiblioteca-theme button[type="submit"]:focus-visible,
.metabiblioteca-theme input[type="submit"]:focus-visible,
.metabiblioteca-theme input[type="button"]:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Galeradas PDF/HTML/FLIP: cubre enlaces obj_galley_link y variantes internas. */
.metabiblioteca-theme .obj_galley_link,
.metabiblioteca-theme a.obj_galley_link,
.metabiblioteca-theme .obj_galley_link_supplementary,
.metabiblioteca-theme .galley-link,
.metabiblioteca-theme .metabiblioteca-download-list a,
.metabiblioteca-theme .metabiblioteca-download-list .obj_galley_link {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  text-transform: uppercase;
}

.metabiblioteca-theme .obj_galley_link:hover,
.metabiblioteca-theme a.obj_galley_link:hover,
.metabiblioteca-theme .obj_galley_link_supplementary:hover,
.metabiblioteca-theme .galley-link:hover,
.metabiblioteca-theme .metabiblioteca-download-list a:hover,
.metabiblioteca-theme .metabiblioteca-download-list .obj_galley_link:hover,
.metabiblioteca-theme .obj_galley_link:focus-visible,
.metabiblioteca-theme a.obj_galley_link:focus-visible,
.metabiblioteca-theme .galley-link:focus-visible,
.metabiblioteca-theme .metabiblioteca-download-list a:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Iconos, SVG e imagenes dentro de botones: heredan Color04, no Color01. */
.metabiblioteca-theme .metabiblioteca-button svg,
.metabiblioteca-theme .cmp_button svg,
.metabiblioteca-theme .pkp_button svg,
.metabiblioteca-theme .obj_galley_link svg,
.metabiblioteca-theme .galley-link svg,
.metabiblioteca-theme .metabiblioteca-download-list a svg,
.metabiblioteca-theme .metabiblioteca-button .icon,
.metabiblioteca-theme .cmp_button .icon,
.metabiblioteca-theme .pkp_button .icon,
.metabiblioteca-theme .obj_galley_link .icon,
.metabiblioteca-theme .galley-link .icon,
.metabiblioteca-theme .metabiblioteca-download-list a .icon,
.metabiblioteca-theme .metabiblioteca-button [class*="icon"],
.metabiblioteca-theme .cmp_button [class*="icon"],
.metabiblioteca-theme .pkp_button [class*="icon"],
.metabiblioteca-theme .obj_galley_link [class*="icon"],
.metabiblioteca-theme .galley-link [class*="icon"],
.metabiblioteca-theme .metabiblioteca-download-list a [class*="icon"] {
  color: var(--metabiblioteca-color-04, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

.metabiblioteca-theme .obj_galley_link img,
.metabiblioteca-theme .galley-link img,
.metabiblioteca-theme .metabiblioteca-download-list a img,
.metabiblioteca-theme .cmp_button img,
.metabiblioteca-theme .pkp_button img {
  filter: brightness(0) invert(1);
  opacity: .96;
}

/* Pestanas reales del detalle del articulo: el tema usa labels, no botones. */
.metabiblioteca-theme .metabiblioteca-tabs__label {
  background: var(--metabiblioteca-surface, #ffffff);
  color: var(--metabiblioteca-color-03, #0f172a);
  border-color: transparent;
}

.metabiblioteca-theme .metabiblioteca-tabs__label:hover,
.metabiblioteca-theme .metabiblioteca-tabs__label:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 14%, transparent);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-theme .metabiblioteca-tabs__input:checked+.metabiblioteca-tabs__label,
.metabiblioteca-theme .metabiblioteca-tabs__label[aria-selected="true"],
.metabiblioteca-theme .metabiblioteca-tabs__label.is-active,
.metabiblioteca-theme .metabiblioteca-tabs__label.active,
.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"],
.metabiblioteca-theme .metabiblioteca-article-tab__button.is-active,
.metabiblioteca-theme .metabiblioteca-article-tab__button.active {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-tabs__input:checked+.metabiblioteca-tabs__label:hover,
.metabiblioteca-theme .metabiblioteca-tabs__label[aria-selected="true"]:hover,
.metabiblioteca-theme .metabiblioteca-tabs__label.is-active:hover,
.metabiblioteca-theme .metabiblioteca-tabs__label.active:hover,
.metabiblioteca-theme .metabiblioteca-article-tab__button[aria-selected="true"]:hover,
.metabiblioteca-theme .metabiblioteca-article-tab__button.is-active:hover,
.metabiblioteca-theme .metabiblioteca-article-tab__button.active:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Enlaces ubicados dentro de fondos de marca: evitan Color01 sobre Color01. */
.metabiblioteca-theme .metabiblioteca-widget__title a,
.metabiblioteca-theme .pkp_block .title a,
.metabiblioteca-theme .metabiblioteca-tabs__label a,
.metabiblioteca-theme .cmp_button a,
.metabiblioteca-theme .pkp_button a,
.metabiblioteca-theme .obj_galley_link a,
.metabiblioteca-theme .galley-link a,
.metabiblioteca-theme .metabiblioteca-download-list a a {
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Badges y estados activos del sistema: no deben heredar Color01 como texto. */
.metabiblioteca-theme .badge,
.metabiblioteca-theme .label,
.metabiblioteca-theme .metabiblioteca-badge,
.metabiblioteca-theme .metabiblioteca-label,
.metabiblioteca-theme .cmp_notification.success,
.metabiblioteca-theme .current_issue .current {
  background-color: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* ========================================================================== 
   24. Visor PDF moderno y modo lectura
   --------------------------------------------------------------------------
   Estos estilos aplican solo al visor PDF de pdfJsViewer. No modifican PDF.js
   internamente; modernizan el contenedor externo del tema y agregan un modo
   lectura con menos distracciones, zoom page-width y una barra superior propia.
   ========================================================================== */

/* Página independiente del visor: ocupar todo el alto y evitar scroll doble. */
html:has(.metabiblioteca-pdf-viewer-page),
.metabiblioteca-pdf-viewer-page {
  min-height: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 22%, transparent), transparent 34rem),
    var(--metabiblioteca-page-bg, #f8fafc);
}

/* Contenedor principal del visor. */
.metabiblioteca-pdf-shell {
  --metabiblioteca-pdf-toolbar-h: 4.25rem;
  display: grid;
  grid-template-rows: var(--metabiblioteca-pdf-toolbar-h) minmax(0, 1fr);
  width: 100%;
  height: 100vh;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 9%, transparent), transparent 16rem),
    color-mix(in srgb, var(--metabiblioteca-page-bg, #f8fafc) 94%, #000 6%);
  color: var(--metabiblioteca-text, #0f172a);
}

/* Barra superior premium: vidrio suave, buen contraste y acciones claras. */
.metabiblioteca-pdf-toolbar {
  position: relative;
  z-index: 4;
  display: grid;
  grid-template-columns: minmax(12rem, 1fr) minmax(0, 2.2fr) minmax(12rem, 1fr);
  align-items: center;
  gap: .9rem;
  padding: .65rem clamp(.9rem, 2vw, 1.65rem);
  border-bottom: 1px solid color-mix(in srgb, var(--metabiblioteca-border, rgba(148, 163, 184, .28)) 76%, transparent);
  background: color-mix(in srgb, var(--metabiblioteca-surface, #ffffff) 82%, transparent);
  -webkit-backdrop-filter: blur(18px) saturate(1.12);
  backdrop-filter: blur(18px) saturate(1.12);
  box-shadow: 0 18px 52px rgba(15, 23, 42, .12);
}

.metabiblioteca-pdf-toolbar__left,
.metabiblioteca-pdf-toolbar__actions {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-width: 0;
}

.metabiblioteca-pdf-toolbar__actions {
  justify-content: flex-end;
}

.metabiblioteca-pdf-toolbar__title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: clamp(.92rem, 1.4vw, 1.08rem);
  font-weight: 700;
  color: var(--metabiblioteca-text, #0f172a);
  text-decoration: none;
}

/* Botones del visor: heredan los colores administrables Color01/02/04. */
.metabiblioteca-pdf-toolbar__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.45rem;
  max-width: 100%;
  padding: .68rem .95rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, var(--metabiblioteca-surface, #fff));
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: .88rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition:
    transform .34s cubic-bezier(.2, .8, .2, 1),
    box-shadow .34s cubic-bezier(.2, .8, .2, 1),
    background-color .28s ease,
    color .28s ease,
    border-color .28s ease;
}

.metabiblioteca-pdf-toolbar__download,
.metabiblioteca-pdf-toolbar__reading[aria-pressed="true"] {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  background: linear-gradient(135deg, var(--metabiblioteca-color-01, #0284c7), color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 88%, #fff 12%));
  color: var(--metabiblioteca-color-04, #fff);
  box-shadow: 0 16px 34px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 32%, transparent);
}

.metabiblioteca-pdf-toolbar__button:hover,
.metabiblioteca-pdf-toolbar__button:focus-visible {
  transform: translateY(-1px);
  border-color: var(--metabiblioteca-color-02, #0369a1);
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #fff);
  box-shadow: 0 18px 40px color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 28%, transparent);
  outline: none;
}

.metabiblioteca-pdf-toolbar__icon {
  display: inline-flex;
  width: 1rem;
  justify-content: center;
  color: currentColor;
  font-size: 1rem;
}

.metabiblioteca-pdf-frame-wrap {
  position: relative;
  z-index: 1;
  min-height: 0;
  height: 100%;
  padding: clamp(.65rem, 1.2vw, 1rem);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 5%, transparent), transparent 24rem),
    #24252a;
}

.metabiblioteca-pdf-frame-wrap iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 500px;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: #2b2c31;
  box-shadow: 0 24px 80px rgba(0, 0, 0, .34);
  transition:
    border-radius .34s ease,
    box-shadow .34s ease,
    transform .34s cubic-bezier(.2, .8, .2, 1);
}

.metabiblioteca-pdf-notice {
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 5rem;
  transform: translateX(-50%);
  max-width: min(42rem, calc(100vw - 2rem));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 18px 50px rgba(15, 23, 42, .16);
}

/* Botón flotante para salir del modo lectura (oculto por defecto) */
.metabiblioteca-pdf-exit-reading {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: 3rem;
  padding: 0 1.25rem;
  border: none;
  border-radius: 2rem;
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 700;
  font-size: 0.9rem;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(1rem);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color 0.2s ease;
}

.metabiblioteca-pdf-exit-reading:hover,
.metabiblioteca-pdf-exit-reading:focus-visible {
  background: var(--metabiblioteca-color-02, #0369a1);
  outline: none;
}

/* Modo lectura: menos cromo visual, PDF más protagonista y zoom page-width. */
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-shell {
  --metabiblioteca-pdf-toolbar-h: 0px;
  background:
    radial-gradient(circle at top, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, transparent), transparent 34rem),
    #111216;
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar {
  display: none;
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-exit-reading {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-frame-wrap {
  padding: 0;
  background: #111216;
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-frame-wrap iframe {
  border-radius: 0;
  box-shadow: none;
}

/* Respuesta móvil: prioriza título y deja acciones compactas. */
@media (max-width: 760px) {
  .metabiblioteca-pdf-toolbar {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: .45rem;
    padding-inline: .65rem;
  }

  .metabiblioteca-pdf-toolbar__button {
    padding-inline: .75rem;
  }

  .metabiblioteca-pdf-toolbar__back span:not([aria-hidden="true"]),
  .metabiblioteca-pdf-toolbar__reading .metabiblioteca-pdf-toolbar__text {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
  }
}

/* Accesibilidad: si el usuario reduce movimiento, no forzamos transiciones. */
@media (prefers-reduced-motion: reduce) {

  .metabiblioteca-pdf-toolbar__button,
  .metabiblioteca-pdf-frame-wrap iframe {
    transition: none;
  }
}


/* ========================================================================== 
   25. Visor PDF: herencia completa de marca dinamica
   --------------------------------------------------------------------------
   El visor PDF se renderiza en una plantilla independiente. Esta capa asegura
   que tome las mismas variables administrables del tema:
   - Color01: fondo de botones principales y acentos.
   - Color02: hover y estados activos.
   - Color03: texto general.
   - Color04: texto sobre botones/fondos de marca.
   - Color05/06: fondos claro/oscuro.
   - Fuente01: botones y acciones.
   - Fuente02: titulo del articulo en el visor.
   - Fuente03: textos auxiliares.
   ========================================================================== */

.metabiblioteca-pdf-viewer-page {
  font-family: var(--metabiblioteca-font-03, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
  font-size: var(--metabiblioteca-font-size-03, 16px);
  color: var(--metabiblioteca-color-03, #0f172a);
  background: var(--metabiblioteca-color-05, #f8fafc);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-shell {
  color: var(--metabiblioteca-color-03, #0f172a);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 8%, transparent), transparent 16rem),
    var(--metabiblioteca-color-05, #f8fafc);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar {
  background: color-mix(in srgb, var(--metabiblioteca-color-05, #f8fafc) 88%, #ffffff 12%);
  border-bottom-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__title {
  font-family: var(--metabiblioteca-font-02, Georgia, 'Times New Roman', serif);
  font-size: clamp(calc(var(--metabiblioteca-font-size-02, 34px) * .43), 1.35vw, calc(var(--metabiblioteca-font-size-02, 34px) * .55));
  color: var(--metabiblioteca-color-03, #0f172a);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button {
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
  font-size: clamp(.82rem, calc(var(--metabiblioteca-font-size-01, 16px) * .9), 1rem);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 38%, transparent);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, var(--metabiblioteca-color-05, #f8fafc));
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"] {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  background: linear-gradient(135deg, var(--metabiblioteca-color-01, #0284c7), color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 90%, #ffffff 10%));
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:focus-visible {
  border-color: var(--metabiblioteca-color-02, #0369a1);
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__text {
  color: currentColor;
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-frame-wrap {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, transparent), transparent 28rem),
    color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 78%, #ffffff 22%);
}

.metabiblioteca-pdf-reading-mode.metabiblioteca-pdf-viewer-page,
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-shell {
  background:
    radial-gradient(circle at top, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent), transparent 34rem),
    var(--metabiblioteca-color-06, #020617);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 82%, transparent);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 12%, transparent);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__title {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__back {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-frame-wrap {
  background: var(--metabiblioteca-color-06, #020617);
}

/* ========================================================================== 
   26. Visor PDF: coherencia visual completa con colores administrables
   --------------------------------------------------------------------------
   Esta capa final corrige la barra del visor para que no quede como un bloque
   blanco aislado. El visor PDF ahora usa la misma logica de marca del tema:
   Color01 como fondo principal, Color02 como hover/accion secundaria, Color04
   como texto sobre fondos de marca, Color05/06 como fondos de lectura.
   Tambien prepara el contenedor para que la piel inyectada en PDF.js mantenga
   coherencia con la interfaz externa del visor.
   ========================================================================== */

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar {
  background:
    linear-gradient(135deg,
      var(--metabiblioteca-color-01, #0284c7),
      color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 86%, var(--metabiblioteca-color-01, #0284c7) 14%));
  border-bottom-color: color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 72%, var(--metabiblioteca-color-06, #020617) 28%);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 16px 42px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__title {
  color: var(--metabiblioteca-color-04, #ffffff);
  opacity: .96;
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button {
  border-color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 44%, transparent);
  background: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 12%, transparent);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: none;
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"] {
  border-color: var(--metabiblioteca-color-02, #0369a1);
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 35%, transparent);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:focus-visible {
  border-color: var(--metabiblioteca-color-04, #ffffff);
  background: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 22%, transparent);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download:focus-visible,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"]:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"]:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0369a1) 78%, var(--metabiblioteca-color-01, #0284c7) 22%);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-frame-wrap {
  background:
    radial-gradient(circle at top left,
      color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent),
      transparent 28rem),
    color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 82%, var(--metabiblioteca-color-05, #f8fafc) 18%);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar {
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 72%, var(--metabiblioteca-color-01, #0284c7) 28%),
      var(--metabiblioteca-color-06, #020617));
  border-color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 14%, transparent);
}


/* ========================================================================== 
   27. Visor PDF: botones tipo galera y modo lectura oscuro
   --------------------------------------------------------------------------
   Ajuste final solicitado para que el visor PDF tenga coherencia con el resto
   del portal sin convertir toda la barra en un bloque de color. La interfaz
   normal usa una superficie clara; los botones replican la logica de galeradas:
   fondo blanco para acciones secundarias, boton principal con Color01, hover con
   Color02 y texto/iconos con Color04 cuando el fondo es de marca.

   Variables administrables utilizadas:
   - Color01: accion principal / boton descargar / bordes activos.
   - Color02: hover y estados interactivos.
   - Color03: texto general en modo normal.
   - Color04: texto sobre botones con fondo de marca.
   - Color05: fondo normal del visor.
   - Color06: fondo de modo lectura.
   - Fuente01: botones y acciones.
   - Fuente02: titulo del articulo.
   - Fuente03: textos auxiliares del visor.
   ========================================================================== */

.metabiblioteca-pdf-viewer-page {
  font-family: var(--metabiblioteca-font-03, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
  color: var(--metabiblioteca-color-03, #0f172a);
  background: var(--metabiblioteca-color-05, #f8fafc);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-shell {
  background: var(--metabiblioteca-color-05, #f8fafc);
  color: var(--metabiblioteca-color-03, #0f172a);
}

/* Barra normal: clara, limpia y alineada al resto de apartados. */
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar {
  background: color-mix(in srgb, var(--metabiblioteca-color-05, #f8fafc) 88%, #ffffff 12%);
  border-bottom: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  color: var(--metabiblioteca-color-03, #0f172a);
  box-shadow: 0 12px 34px rgba(15, 23, 42, .08);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__title {
  font-family: var(--metabiblioteca-font-02, Georgia, 'Times New Roman', serif);
  color: var(--metabiblioteca-color-03, #0f172a);
  opacity: 1;
}

/* Botones secundarios del visor: fondo blanco, borde/color Color01. */
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button {
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 42%, transparent);
  background: #ffffff;
  color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .08);
}

/* Boton principal de descarga: igual a las galeradas PDF/HTML del articulo. */
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 14px 30px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button:focus-visible,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download:hover,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__download:focus-visible {
  border-color: var(--metabiblioteca-color-02, #0369a1);
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateY(-1px);
}

.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__text {
  color: currentColor;
  font-family: var(--metabiblioteca-font-01, inherit);
}

/* Fondo del area del documento: usa Color05 en modo normal, no Color01. */
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-frame-wrap {
  background: color-mix(in srgb, var(--metabiblioteca-color-05, #f8fafc) 72%, var(--metabiblioteca-color-06, #020617) 28%);
}

/* Modo lectura: aqui si domina Color06, para reducir distracciones. */
.metabiblioteca-pdf-reading-mode.metabiblioteca-pdf-viewer-page,
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-shell,
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-frame-wrap {
  background: var(--metabiblioteca-color-06, #020617);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 92%, #ffffff 8%);
  border-bottom-color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 18%, transparent);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 18px 52px rgba(0, 0, 0, .32);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__title {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__button {
  background: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 10%, transparent);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 34%, transparent);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"],
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__download {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__button:hover,
.metabiblioteca-pdf-reading-mode .metabiblioteca-pdf-toolbar__button:focus-visible {
  background: var(--metabiblioteca-color-02, #0369a1);
  border-color: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
}


/* --------------------------------------------------------------------------
 * 27. Grafica de descargas: diseno moderno con Color01
 * --------------------------------------------------------------------------
 * La grafica de estadisticas de OJS se dibuja en canvas mediante Chart.js, por
 * eso el color de las barras se aplica desde js/main.js usando el evento
 * usageStatsChartOptions.pkp. Esta seccion solo define el contenedor visual,
 * proporciones, fondo y estados para que el grafico se vea como una tarjeta
 * editorial moderna y coherente con la marca configurada en el administrador.
 */
.metabiblioteca-tabs__panel--stats {
  position: relative;
  overflow: hidden;
  border-radius: var(--metabiblioteca-radius-ui, 12px);
  background: var(--metabiblioteca-surface, #ffffff);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  padding: 1.5rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 8%, var(--metabiblioteca-border, #e2e8f0));
}

.metabiblioteca-tabs__panel--stats .metabiblioteca-section-title {
  margin-bottom: 1.5rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: 1.25rem;
  font-weight: 600;
}

.metabiblioteca-stats-modern .usageStatsGraph,
.metabiblioteca-tabs__panel--stats .usageStatsGraph {
  display: block;
  width: 100%;
  min-height: 380px;
  max-height: 480px;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
}

.metabiblioteca-tabs__panel--stats .usageStatsUnavailable {
  padding: 1.5rem;
  text-align: center;
  border: 1px dashed color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 38%, var(--metabiblioteca-border, #e2e8f0));
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 4%, var(--metabiblioteca-surface, #fff));
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-03, inherit);
}

html.dark .metabiblioteca-tabs__panel--stats {
  background: var(--metabiblioteca-bg-dark, #0f172a);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, transparent);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

html.dark .metabiblioteca-tabs__panel--stats .usageStatsGraph {
  background: transparent;
  border: none;
}

@media (max-width: 640px) {

  .metabiblioteca-stats-modern .usageStatsGraph,
  .metabiblioteca-tabs__panel--stats .usageStatsGraph {
    min-height: 300px;
  }

  .metabiblioteca-tabs__panel--stats {
    padding: 1rem;
  }
}

/* ========================================================================== 
   28. Header institucional: logo centrado, utilidades arriba derecha y menu centrado
   --------------------------------------------------------------------------
   Ajuste solicitado para mejorar la jerarquia del encabezado sin romper la
   experiencia responsive de OJS:
   - El logo de la revista/sitio queda centrado y ocupa el ancho disponible.
   - Las utilidades (busqueda, selector de modo, idioma y usuario) quedan arriba
     a la derecha en escritorio.
   - navigationPrimary queda en una fila inferior centrada.
   - En movil se conserva el boton lateral/slide, el logo se reduce y la
     navegacion principal sigue usando el patron responsive del tema.
   ========================================================================== */

.metabiblioteca-theme .metabiblioteca-site-header {
  background: color-mix(in srgb, var(--metabiblioteca-color-05, #f8fafc) 92%, #ffffff 8%);
  color: var(--metabiblioteca-color-03, #0f172a);
  border-bottom: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
}

@media (min-width: 1024px) {
  .metabiblioteca-theme .metabiblioteca-site-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: center;
    justify-items: center;
    row-gap: .85rem;
    column-gap: 1rem;
    padding-top: 1.05rem;
    padding-bottom: .95rem;
  }

  /* Logo centrado sobre todo el ancho del encabezado. */
  .metabiblioteca-theme .metabiblioteca-header-brand {
    grid-column: 1 / -1;
    grid-row: 2;
    width: calc(100% + 4rem) !important;
    margin-left: -2rem !important;
    margin-right: -2rem !important;
    min-width: 0;
    justify-content: center;
    justify-self: center;
    text-align: center;
    z-index: 1;
  }

  .metabiblioteca-theme .metabiblioteca-header-brand a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .metabiblioteca-theme .metabiblioteca-header-brand img,
  .metabiblioteca-theme .metabiblioteca-header-brand svg {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }

  /* Utilidades arriba a la derecha, sin empujar el logo. */
  .metabiblioteca-theme .metabiblioteca-header-utilities {
    grid-column: 1 / -1;
    grid-row: 1;
    justify-self: end;
    align-self: start;
    z-index: 2;
    margin-top: .15rem;
  }

  /* Menu principal debajo del logo, centrado y con envoltura limpia. */
  .metabiblioteca-theme .metabiblioteca-header-primary {
    grid-column: 1 / -1;
    grid-row: 3;
    justify-self: center;
    width: 100%;
    min-width: 0;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary .pkp_navigation_primary {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem .55rem;
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary .pkp_navigation_primary>li {
    margin: 0;
  }
}

@media (max-width: 1023.98px) {
  .metabiblioteca-theme .metabiblioteca-site-header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas: "menu brand utilities";
    gap: .75rem;
    align-items: center;
  }

  .metabiblioteca-theme .metabiblioteca-header-mobile {
    grid-area: menu;
    justify-self: start;
  }

  .metabiblioteca-theme .metabiblioteca-header-brand {
    grid-area: brand;
    min-width: 0;
    justify-content: center;
    text-align: center;
  }

  .metabiblioteca-theme .metabiblioteca-header-brand a {
    display: inline-flex;
    justify-content: center;
    max-width: 100%;
  }

  .metabiblioteca-theme .metabiblioteca-header-brand img,
  .metabiblioteca-theme .metabiblioteca-header-brand svg {
    width: auto !important;
    height: auto !important;
    max-width: min(54vw, 320px) !important;
    max-height: 54px !important;
    object-fit: contain;
  }

  .metabiblioteca-theme .metabiblioteca-header-utilities {
    grid-area: utilities;
    justify-self: end;
  }
}

@media (max-width: 640px) {
  .metabiblioteca-theme .metabiblioteca-site-header {
    padding-inline: .9rem;
    gap: .5rem;
  }

  .metabiblioteca-theme .metabiblioteca-header-utilities {
    gap: .35rem;
  }

  /* En pantallas pequenas se prioriza el menu, busqueda y tema; el usuario queda
     disponible desde el menu lateral para evitar saturar el header. */
  .metabiblioteca-theme .metabiblioteca-header-utilities .pkp_navigation_user {
    display: none;
  }
}

/* ========================================================================== 
   29. Header: correccion de submenus y posicionamiento seguro
   --------------------------------------------------------------------------
   OJS renderiza el menu primario como una estructura jerarquica. Al centrar el
   header, el selector anterior estaba aplicando flex a todas las listas del
   menu y podia hacer visibles los submenus como columnas dentro del encabezado.
   Esta capa corrige la cascada:
   - Solo el primer nivel de navigationPrimary se muestra como fila centrada.
   - Los submenus se mantienen ocultos por defecto.
   - Los submenus aparecen como dropdown flotante en hover/focus.
   - Se conservan teclado, foco y experiencia responsive.
   ========================================================================== */

@media (min-width: 1024px) {
  .metabiblioteca-theme .metabiblioteca-header-primary {
    overflow: visible;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem .55rem;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li {
    position: relative;
    flex: 0 0 auto;
    margin: 0;
    list-style: none;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative,
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative.text-left {
    position: relative;
    display: inline-flex;
    align-items: center;
    overflow: visible;
  }

  /* Boton de primer nivel: mantiene el estilo tipo pildora del menu principal. */
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    padding: .45rem .78rem;
    border-radius: var(--metabiblioteca-radius-ui);
    background: var(--metabiblioteca-surface, #fff);
    color: var(--metabiblioteca-color-03, #0f172a);
    border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, var(--metabiblioteca-border, #e2e8f0));
    box-shadow: 0 8px 22px color-mix(in srgb, #000 7%, transparent);
    font-family: var(--metabiblioteca-font-01, inherit);
    font-size: var(--metabiblioteca-font-size-01, 16px);
    font-weight: 600;
    line-height: 1.15;
    white-space: nowrap;
    transition: transform .22s cubic-bezier(.2, .8, .2, 1), color .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:hover>.relative>a,
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:focus-within>.relative>a {
    color: var(--metabiblioteca-color-04, #fff);
    background: var(--metabiblioteca-color-01, #0284c7);
    border-color: var(--metabiblioteca-color-01, #0284c7);
    transform: translateY(-1px);
    box-shadow: 0 14px 30px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  }

  /* Dropdown: oculto por defecto, flotante sobre el contenido, no empuja el header. */
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] {
    display: none;
    position: absolute;
    top: calc(100% + .65rem);
    left: 50%;
    right: auto;
    width: max-content;
    min-width: 16rem;
    max-width: min(28rem, calc(100vw - 2rem));
    transform: translateX(-50%);
    z-index: 80;
    margin: 0;
    padding: .45rem;
    border-radius: var(--metabiblioteca-radius-ui);
    border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, var(--metabiblioteca-border, #e2e8f0));
    background: color-mix(in srgb, var(--metabiblioteca-surface, #fff) 96%, var(--metabiblioteca-color-01, #0284c7) 4%);
    box-shadow: 0 22px 55px color-mix(in srgb, #000 18%, transparent);
    backdrop-filter: blur(16px) saturate(140%);
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:hover>.relative>div[x-show="open"],
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:focus-within>.relative>div[x-show="open"] {
    display: block;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] ul {
    display: grid;
    gap: .18rem;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a {
    display: block;
    width: 100%;
    padding: .68rem .85rem;
    border-radius: var(--metabiblioteca-radius-ui);
    color: var(--metabiblioteca-color-03, #0f172a);
    font-family: var(--metabiblioteca-font-01, inherit);
    line-height: 1.25;
    text-decoration: none;
    transition: background-color .2s ease, color .2s ease, transform .2s ease;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:hover,
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:focus {
    background: var(--metabiblioteca-color-02, #0369a1);
    color: var(--metabiblioteca-color-04, #fff);
    transform: translateX(2px);
  }

  html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] {
    background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 82%, var(--metabiblioteca-color-01, #0284c7) 18%);
    border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 42%, transparent);
  }
}

/* ========================================================================== 
   30. Header: puente invisible para dropdowns clicables
   --------------------------------------------------------------------------
   Problema corregido:
   Cuando el submenu esta separado visualmente del boton principal, queda un
   pequeno espacio entre ambos. Si el puntero cruza ese espacio, se pierde el
   estado :hover y el submenu desaparece antes de poder hacer clic.

   Solucion:
   - Mantener el submenu como dropdown flotante.
   - Agregar un pseudo-elemento transparente debajo del item activo.
   - Ese puente conserva el area hover entre el boton y el submenu.
   - No cambia el layout, no empuja contenido y no afecta el modo responsive.
   ========================================================================== */

@media (min-width: 1024px) {
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative {
    isolation: isolate;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative::after {
    content: "";
    position: absolute;
    left: -.5rem;
    right: -.5rem;
    top: 100%;
    height: .9rem;
    display: none;
    background: transparent;
    pointer-events: auto;
    z-index: 79;
  }

  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:hover>.relative::after,
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:focus-within>.relative::after {
    display: block;
  }

  /* El dropdown queda justo debajo del puente invisible. */
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] {
    top: calc(100% + .7rem);
  }

  /* Mantiene abierto el submenu al mover el puntero dentro del propio dropdown. */
  .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"]:hover {
    display: block;
  }
}

/* ========================================================================== 
   31. Header: modo oscuro coherente con Color06
   --------------------------------------------------------------------------
   Correccion solicitada:
   El header institucional quedaba en modo claro porque la regla final del
   encabezado usaba Color05 con. Esta capa contempla las dos formas
   en las que el tema activa el modo oscuro:
   - html.dark.metabiblioteca-theme cuando la clase dark esta en el <html>.
   - html.dark .metabiblioteca-theme como respaldo si dark esta en un ancestro.

   En modo oscuro:
   - Color06 gobierna el fondo del header.
   - Color01 se usa como acento/borde/hover.
   - Color02 se usa para estados secundarios.
   - Color04 se usa como texto de alto contraste sobre superficies oscuras.
   ========================================================================== */

html.dark.metabiblioteca-theme .metabiblioteca-site-header,
html.dark .metabiblioteca-theme .metabiblioteca-site-header {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, var(--metabiblioteca-bg-dark, #020617)) 92%, var(--metabiblioteca-color-01, #0284c7) 8%);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-bottom-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 32%, transparent);
  box-shadow: 0 18px 45px color-mix(in srgb, #000 28%, transparent);
  backdrop-filter: blur(18px) saturate(140%);
}

/* Superficies de navegacion principal en modo oscuro. */
html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>a,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>a {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, var(--metabiblioteca-bg-dark, #020617)) 78%, #ffffff 10%);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
  box-shadow: 0 10px 24px color-mix(in srgb, #000 24%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:hover>.relative>a,
html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:focus-within>.relative>a,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:hover>.relative>a,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li:focus-within>.relative>a {
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 16px 34px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 30%, transparent);
}

/* Utilidades superiores: busqueda, selector de modo, idioma y usuario. */
html.dark.metabiblioteca-theme .metabiblioteca-header-utilities a,
html.dark.metabiblioteca-theme .metabiblioteca-header-utilities button,
html.dark.metabiblioteca-theme .metabiblioteca-header-utilities .pkp_navigation_user a,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities a,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities button,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities .pkp_navigation_user a {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, var(--metabiblioteca-bg-dark, #020617)) 70%, var(--metabiblioteca-color-01, #0284c7) 18%);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 38%, transparent);
  box-shadow: 0 10px 24px color-mix(in srgb, #000 25%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-header-utilities a:hover,
html.dark.metabiblioteca-theme .metabiblioteca-header-utilities button:hover,
html.dark.metabiblioteca-theme .metabiblioteca-header-utilities .pkp_navigation_user a:hover,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities a:hover,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities button:hover,
html.dark .metabiblioteca-theme .metabiblioteca-header-utilities .pkp_navigation_user a:hover {
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-color: var(--metabiblioteca-color-02, #0369a1);
}

/* Dropdowns en modo oscuro: mismo sistema visual del header. */
html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"],
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, var(--metabiblioteca-bg-dark, #020617)) 86%, var(--metabiblioteca-color-01, #0284c7) 14%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 40%, transparent);
  box-shadow: 0 24px 60px color-mix(in srgb, #000 42%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a {
  color: var(--metabiblioteca-color-04, #ffffff);
}

html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:hover,
html.dark.metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:focus,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:hover,
html.dark .metabiblioteca-theme .metabiblioteca-header-primary>ul#navigationPrimary.pkp_navigation_primary>li>.relative>div[x-show="open"] a:focus {
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* ========================================================================== */
/* 32. Bloques derechos: homogeneidad visual con tarjetas laterales izquierdas */
/* -------------------------------------------------------------------------- */
/*
  Los bloques del sidebar derecho de OJS se generan desde plugins y desde el
  administrador de Apariencia > Sidebar. Esta capa no cambia la estructura ni
  el orden de OJS; solo unifica su apariencia con las tarjetas izquierdas del
  detalle de articulo: contenedor redondeado, cabecera Color01, texto Color04,
  contenido ordenado y botones con el mismo lenguaje visual del portal.
*/
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"],
.metabiblioteca-theme aside .pkp_block,
.metabiblioteca-theme aside [class*="block_"] {
  overflow: hidden;
  margin: 0 0 1rem;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 22%, var(--metabiblioteca-border, #dbe4ef));
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface, #ffffff);
  color: var(--metabiblioteca-color-03, #0f172a);
  box-shadow: 0 14px 34px color-mix(in srgb, #0f172a 8%, transparent);
  transition:
    transform .28s cubic-bezier(.2, .8, .2, 1),
    box-shadow .28s cubic-bezier(.2, .8, .2, 1),
    border-color .28s cubic-bezier(.2, .8, .2, 1);
}

/* Cabecera uniforme de todos los bloques derechos. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .title,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block h2:first-child,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] .title,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] h2:first-child,
.metabiblioteca-theme aside .pkp_block .title,
.metabiblioteca-theme aside .pkp_block h2:first-child,
.metabiblioteca-theme aside [class*="block_"] .title,
.metabiblioteca-theme aside [class*="block_"] h2:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.65rem;
  margin: 0;
  padding: .72rem 1rem;
  border: 0;
  border-radius: 0;
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: .93rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

/* Texto e iconografia dentro de cabeceras de bloques. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .title *,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block h2:first-child *,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] .title *,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] h2:first-child *,
.metabiblioteca-theme aside .pkp_block .title *,
.metabiblioteca-theme aside .pkp_block h2:first-child *,
.metabiblioteca-theme aside [class*="block_"] .title *,
.metabiblioteca-theme aside [class*="block_"] h2:first-child * {
  color: var(--metabiblioteca-color-04, #ffffff);
  fill: currentColor;
  stroke: currentColor;
}

/* Cuerpo de los bloques derechos: espaciado igual al bloque izquierdo. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block> :not(.title):not(h2:first-child),
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"]> :not(.title):not(h2:first-child),
.metabiblioteca-theme aside .pkp_block> :not(.title):not(h2:first-child),
.metabiblioteca-theme aside [class*="block_"]> :not(.title):not(h2:first-child) {
  margin-left: 0;
  margin-right: 0;
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block,
.metabiblioteca-theme aside .pkp_block {
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: .92rem;
  line-height: 1.55;
}

/* Listas de enlaces del sidebar: limpias, sin viñetas y con hover suave. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block ul,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] ul,
.metabiblioteca-theme aside .pkp_block ul,
.metabiblioteca-theme aside [class*="block_"] ul {
  display: grid;
  gap: .42rem;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] li,
.metabiblioteca-theme aside .pkp_block li,
.metabiblioteca-theme aside [class*="block_"] li {
  margin: 0;
  padding: 0;
  color: var(--metabiblioteca-color-03, #0f172a);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block a,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] a,
.metabiblioteca-theme aside .pkp_block a,
.metabiblioteca-theme aside [class*="block_"] a {
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 650;
  text-decoration: none;
  transition:
    color .22s cubic-bezier(.2, .8, .2, 1),
    background-color .22s cubic-bezier(.2, .8, .2, 1),
    transform .22s cubic-bezier(.2, .8, .2, 1);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li>a,
.metabiblioteca-theme aside .pkp_block li>a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  width: 100%;
  padding: .52rem .65rem;
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block a:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block a:focus,
.metabiblioteca-theme aside .pkp_block a:hover,
.metabiblioteca-theme aside .pkp_block a:focus {
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li>a:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li>a:focus,
.metabiblioteca-theme aside .pkp_block li>a:hover,
.metabiblioteca-theme aside .pkp_block li>a:focus {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 9%, transparent);
  transform: translateX(2px);
  outline: none;
}

/* Botones o enlaces tipo accion dentro del sidebar derecho. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .cmp_button,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .pkp_button,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .button,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block input[type="submit"],
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block a.button,
.metabiblioteca-theme aside .pkp_block .cmp_button,
.metabiblioteca-theme aside .pkp_block .pkp_button,
.metabiblioteca-theme aside .pkp_block .button,
.metabiblioteca-theme aside .pkp_block input[type="submit"],
.metabiblioteca-theme aside .pkp_block a.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 2.45rem;
  padding: .65rem .95rem;
  border: 1px solid var(--metabiblioteca-color-01, #0284c7);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  text-align: center;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .cmp_button:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .pkp_button:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block .button:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block input[type="submit"]:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block a.button:hover,
.metabiblioteca-theme aside .pkp_block .cmp_button:hover,
.metabiblioteca-theme aside .pkp_block .pkp_button:hover,
.metabiblioteca-theme aside .pkp_block .button:hover,
.metabiblioteca-theme aside .pkp_block input[type="submit"]:hover,
.metabiblioteca-theme aside .pkp_block a.button:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateY(-1px);
}

/* Logos, insignias y widgets embebidos: centrados y contenidos dentro de tarjeta. */
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block img,
.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"] img,
.metabiblioteca-theme aside .pkp_block img,
.metabiblioteca-theme aside [class*="block_"] img {
  display: block;
  max-width: min(100%, 14rem);
  height: auto;
  margin: .65rem auto;
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block iframe,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block canvas,
.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block svg,
.metabiblioteca-theme aside .pkp_block iframe,
.metabiblioteca-theme aside .pkp_block canvas,
.metabiblioteca-theme aside .pkp_block svg {
  max-width: 100%;
}

/* Estado hover de la tarjeta completa, igual al lenguaje de las tarjetas del portal. */
@media (hover: hover) {

  .metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block:hover,
  .metabiblioteca-theme aside .pkp_block:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 38%, var(--metabiblioteca-border, #dbe4ef));
    box-shadow: 0 18px 42px color-mix(in srgb, #0f172a 12%, transparent);
  }
}

/* Modo oscuro: los bloques derechos usan Color06 y conservan cabecera Color01. */
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block,
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"],
html.dark.metabiblioteca-theme aside .pkp_block,
html.dark.metabiblioteca-theme aside [class*="block_"],
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar [class*="block_"],
html.dark .metabiblioteca-theme aside .pkp_block,
html.dark .metabiblioteca-theme aside [class*="block_"] {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 88%, #ffffff 8%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 12%, #ffffff 88%);
  box-shadow: 0 18px 42px color-mix(in srgb, #000000 32%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li,
html.dark.metabiblioteca-theme aside .pkp_block li,
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block p,
html.dark.metabiblioteca-theme aside .pkp_block p,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li,
html.dark .metabiblioteca-theme aside .pkp_block li,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block p,
html.dark .metabiblioteca-theme aside .pkp_block p {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 12%, #ffffff 88%);
}

html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li>a:hover,
html.dark.metabiblioteca-theme aside .pkp_block li>a:hover,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar .pkp_block li>a:hover,
html.dark .metabiblioteca-theme aside .pkp_block li>a:hover {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, transparent);
}

/* ========================================================================
   33. Bloques derechos reales de OJS: tarjetas homogéneas del sidebar global
   ------------------------------------------------------------------------
   Algunos bloques de OJS no llegan como .pkp_block, sino como elementos
   <li> generados por {metabiblioteca_menu_item}. Por eso esta capa final
   estiliza la estructura real del sidebar global:
   .metabiblioteca-global-sidebar__nav > ul > li.
   Así los bloques "Envío", "Palabras clave", "Información", bloques
   personalizados y demás widgets conservan el mismo aspecto de las tarjetas
   laterales izquierdas del detalle de artículo.
   ======================================================================== */

/* Contenedor de bloques derechos: lista vertical limpia y sin estilos heredados. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Cada bloque derecho se convierte en tarjeta, igual que los bloques izquierdos. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li {
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 30%, #ffffff 70%);
  box-shadow: 0 14px 34px color-mix(in srgb, #0f172a 8%, transparent);
  transition:
    transform .24s cubic-bezier(.2, .8, .2, 1),
    border-color .24s cubic-bezier(.2, .8, .2, 1),
    box-shadow .24s cubic-bezier(.2, .8, .2, 1);
}

/* Cabecera real del bloque: primer enlace directo del <li>. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>a:first-child,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>a:first-child,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>a:first-child,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>.title:first-child,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>.title:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.65rem;
  margin: 0;
  padding: .72rem 1rem;
  border: 0;
  border-radius: 0;
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: .93rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
}

/* Cuerpo real del bloque: sublista/contenido que aparece debajo de la cabecera. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul {
  display: grid;
  gap: .45rem;
  margin: 0;
  padding: .95rem 1rem;
  border: 0;
  list-style: none;
  background: transparent;
}

/* Elementos internos del cuerpo del bloque. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul>li,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul>li,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul>li {
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-03, inherit);
}

/* Enlaces internos: aspecto limpio; si solo hay una acción, se ve como botón. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul>li>a,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul>li>a,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul>li>a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  width: 100%;
  min-height: 2.35rem;
  padding: .58rem .72rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transition:
    color .22s cubic-bezier(.2, .8, .2, 1),
    background-color .22s cubic-bezier(.2, .8, .2, 1),
    transform .22s cubic-bezier(.2, .8, .2, 1);
}

.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul>li>a:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul>li>a:focus,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul>li>a:hover,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul>li>a:focus,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul>li>a:hover,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul>li>a:focus {
  color: var(--metabiblioteca-color-04, #ffffff);
  background: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateX(2px);
  outline: none;
}

/* Bloque de nube de palabras y widgets que insertan div/content directamente. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul>.content,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul>.content,
.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li>ul>.content,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li .wordcloud,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li .wordcloud {
  display: block;
  width: 100%;
  margin: 0;
  padding: .75rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 6%, transparent);
}

/* Imagenes, SVG y widgets embebidos dentro de los bloques derechos reales. */
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li img,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li img,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li svg,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li svg,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li canvas,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li canvas,
.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li iframe,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li iframe {
  max-width: 100%;
}

.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li img,
.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li img {
  display: block;
  height: auto;
  margin: .6rem auto;
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Hover de tarjeta completa para conservar la microinteraccion del tema. */
@media (hover: hover) {

  .metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li:hover,
  .metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li:hover,
  .metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li:hover {
    transform: translateY(-2px);
    border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 38%, #dbe4ef);
    box-shadow: 0 18px 42px color-mix(in srgb, #0f172a 12%, transparent);
  }
}

/* Modo oscuro para los bloques derechos reales. */
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li,
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li,
html.dark.metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li,
html.dark .metabiblioteca-theme aside.metabiblioteca-global-sidebar>ul>li {
  background: color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 88%, #ffffff 8%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
  box-shadow: 0 18px 42px color-mix(in srgb, #000000 32%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul,
html.dark.metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li>ul,
html.dark .metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li>ul {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 12%, #ffffff 88%);
}

/* En pantallas pequenas, se mantiene la tarjeta pero sin anchos rigidos. */
@media (max-width: 1279px) {

  .metabiblioteca-theme .metabiblioteca-global-sidebar__nav>ul>li,
  .metabiblioteca-theme .metabiblioteca-global-sidebar nav>ul>li {
    width: 100%;
  }
}

/* --------------------------------------------------------------------------
   34. Busqueda academica avanzada: UX/UI funcional sobre parametros OJS
   --------------------------------------------------------------------------
   La busqueda se apoya en los parametros que OJS ya procesa: query, authors,
   searchJournal, dateFrom* y dateTo*. Los filtros de formato/orden visible son
   progresivos sobre los resultados cargados en la pagina, sin tocar el nucleo.
*/
.page_search.metabiblioteca-search {
  max-width: min(1480px, calc(100vw - 32px));
  margin: 0 auto;
  padding-inline: clamp(0.5rem, 2vw, 1.25rem);
}

.metabiblioteca-search-hero {
  position: relative;
  overflow: hidden;
  margin: clamp(1rem, 2vw, 1.75rem) 0 1rem;
  padding: clamp(1.25rem, 3vw, 2.4rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 92%, white), white);
  box-shadow: 0 24px 70px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 9%, transparent);
}

.dark .metabiblioteca-search-hero,
html.dark.metabiblioteca-theme .metabiblioteca-search-hero {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 26%, transparent), transparent 36%),
    linear-gradient(135deg, color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 90%, #172033), var(--metabiblioteca-bg-dark, #020617));
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 30%, transparent);
}

.metabiblioteca-search-hero__eyebrow {
  margin: 0 0 0.35rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.metabiblioteca-search-hero h1 {
  max-width: 920px;
  margin: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: clamp(2rem, 5vw, 4.1rem);
  line-height: 1.02;
  letter-spacing: -0.045em;
}

.metabiblioteca-search-hero__lead {
  max-width: 820px;
  margin: 0.9rem 0 0;
  color: var(--metabiblioteca-color-03, #334155);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: clamp(1rem, 1.6vw, 1.18rem);
  line-height: 1.7;
}

.dark .metabiblioteca-search-hero__lead,
html.dark.metabiblioteca-theme .metabiblioteca-search-hero__lead {
  color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 82%, transparent);
}

.metabiblioteca-search-form {
  display: grid;
  gap: 1rem;
  margin: 0 0 1.2rem;
  padding: clamp(1rem, 2.2vw, 1.5rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, white 94%, var(--metabiblioteca-bg-light, #f8fafc));
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.07);
}

.dark .metabiblioteca-search-form,
html.dark.metabiblioteca-theme .metabiblioteca-search-form {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 4%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  box-shadow: 0 22px 70px rgba(0, 0, 0, 0.28);
}

.metabiblioteca-search-form__label,
.metabiblioteca-search-field .label,
.metabiblioteca-search-results__tools span {
  display: block;
  margin-bottom: 0.45rem;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
}

.dark .metabiblioteca-search-form__label,
.dark .metabiblioteca-search-field .label,
.dark .metabiblioteca-search-results__tools span,
html.dark.metabiblioteca-theme .metabiblioteca-search-form__label,
html.dark.metabiblioteca-theme .metabiblioteca-search-field .label,
html.dark.metabiblioteca-theme .metabiblioteca-search-results__tools span {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-search-box {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.6rem;
  padding: 0.45rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: white;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6), 0 10px 30px rgba(15, 23, 42, 0.07);
}

.dark .metabiblioteca-search-box,
html.dark.metabiblioteca-theme .metabiblioteca-search-box {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 84%, white 7%);
}

.metabiblioteca-search-box__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.65rem;
  height: 2.65rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

.metabiblioteca-search-box__input {
  width: 100%;
  min-height: 3rem;
  border: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  box-shadow: none;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: clamp(1rem, 1.35vw, 1.2rem);
}

.dark .metabiblioteca-search-box__input,
html.dark.metabiblioteca-theme .metabiblioteca-search-box__input {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-search-box__submit,
.metabiblioteca-search-actions__primary,
.metabiblioteca-search-actions__secondary,
.metabiblioteca-search-chip--button {
  border-radius: var(--metabiblioteca-radius-ui);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-search-box__submit,
.metabiblioteca-search-actions__primary {
  border: 1px solid var(--metabiblioteca-color-01, #0284c7);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  padding: 0.88rem 1.35rem;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 22%, transparent);
}

.metabiblioteca-search-box__submit:hover,
.metabiblioteca-search-actions__primary:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
}

.metabiblioteca-search-actions__secondary,
.metabiblioteca-search-chip--button {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 28%, transparent);
  background: color-mix(in srgb, white 92%, var(--metabiblioteca-color-01, #0284c7) 8%);
  color: var(--metabiblioteca-color-01, #0284c7);
  padding: 0.72rem 1rem;
}

.metabiblioteca-search-actions__secondary:hover,
.metabiblioteca-search-chip--button:hover {
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  background: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-search-form__assist,
.metabiblioteca-search-recent,
.metabiblioteca-search-active {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  align-items: center;
  margin-top: 0.75rem;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 78%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 0.92rem;
}

.metabiblioteca-search-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  padding: 0.45rem 0.78rem;
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 7%, white);
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.88rem;
  font-weight: 750;
}

.metabiblioteca-search-active {
  margin: 0 0 1rem;
}

.metabiblioteca-search-active__label {
  font-weight: 900;
  color: var(--metabiblioteca-color-03, #0f172a);
}

.metabiblioteca-search-advanced {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 70%, white);
  overflow: hidden;
}

.metabiblioteca-search-advanced summary {
  display: flex;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem 1.2rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
}

.metabiblioteca-search-advanced__hint {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 64%, transparent);
  font-size: 0.86rem;
  font-weight: 600;
}

.metabiblioteca-search-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 0;
  padding: 0 1.2rem 1.2rem;
  border: 0;
}

.metabiblioteca-search-field input,
.metabiblioteca-search-field select,
.metabiblioteca-search-results__tools input,
.metabiblioteca-search-results__tools select {
  width: 100%;
  min-height: 2.8rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: white;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  box-shadow: none;
}

.metabiblioteca-search-field--date select {
  width: auto;
  min-width: 6rem;
  margin-right: 0.35rem;
  margin-bottom: 0.35rem;
}

.metabiblioteca-search-presets {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  align-items: center;
}

.metabiblioteca-search-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

.metabiblioteca-search-results {
  margin-top: 1rem;
}

.metabiblioteca-search-results__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.metabiblioteca-search-results__header h2 {
  margin: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: clamp(1.45rem, 3vw, 2.25rem);
}

.metabiblioteca-search-results__count {
  margin: 0.3rem 0 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 72%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
}

.metabiblioteca-search-results__tools {
  display: grid;
  grid-template-columns: minmax(180px, 260px) minmax(140px, 180px) minmax(160px, 210px);
  gap: 0.75rem;
  align-items: end;
}

.metabiblioteca-search-result-list {
  display: grid;
  gap: 0.9rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-search-result {
  position: relative;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: white;
  padding: clamp(1rem, 2vw, 1.25rem);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.06);
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.metabiblioteca-search-result:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 26%, transparent);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.1);
}

.metabiblioteca-search-result .metabiblioteca-article-summary__title a {
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-search-result .metabiblioteca-article-summary__galleys {
  margin-top: 0.85rem;
  justify-content: flex-start;
}

.metabiblioteca-search-client-empty,
.metabiblioteca-search-empty,
.metabiblioteca-search-help {
  margin-top: 1rem;
  padding: 1.1rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, white 92%, var(--metabiblioteca-bg-light, #f8fafc));
  color: var(--metabiblioteca-color-03, #0f172a);
}

.metabiblioteca-search-help h2,
.metabiblioteca-search-empty h3 {
  margin-top: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
}

.metabiblioteca-search-help ul {
  display: grid;
  gap: 0.4rem;
  margin-bottom: 0;
}

.metabiblioteca-search-pagination {
  margin-top: 1.2rem;
}

.dark .metabiblioteca-search-form__assist,
.dark .metabiblioteca-search-active__label,
.dark .metabiblioteca-search-results__count,
.dark .metabiblioteca-search-advanced__hint,
.dark .metabiblioteca-search-client-empty,
.dark .metabiblioteca-search-empty,
.dark .metabiblioteca-search-help,
html.dark.metabiblioteca-theme .metabiblioteca-search-form__assist,
html.dark.metabiblioteca-theme .metabiblioteca-search-active__label,
html.dark.metabiblioteca-theme .metabiblioteca-search-results__count,
html.dark.metabiblioteca-theme .metabiblioteca-search-advanced__hint,
html.dark.metabiblioteca-theme .metabiblioteca-search-client-empty,
html.dark.metabiblioteca-theme .metabiblioteca-search-empty,
html.dark.metabiblioteca-theme .metabiblioteca-search-help {
  color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 82%, transparent);
}

.dark .metabiblioteca-search-result,
.dark .metabiblioteca-search-client-empty,
.dark .metabiblioteca-search-empty,
.dark .metabiblioteca-search-help,
html.dark.metabiblioteca-theme .metabiblioteca-search-result,
html.dark.metabiblioteca-theme .metabiblioteca-search-client-empty,
html.dark.metabiblioteca-theme .metabiblioteca-search-empty,
html.dark.metabiblioteca-theme .metabiblioteca-search-help {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 84%, white 6%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
}

.dark .metabiblioteca-search-field input,
.dark .metabiblioteca-search-field select,
.dark .metabiblioteca-search-results__tools input,
.dark .metabiblioteca-search-results__tools select,
html.dark.metabiblioteca-theme .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme .metabiblioteca-search-field select,
html.dark.metabiblioteca-theme .metabiblioteca-search-results__tools input,
html.dark.metabiblioteca-theme .metabiblioteca-search-results__tools select {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 5%);
  color: var(--metabiblioteca-color-04, #ffffff);
}

@media (max-width: 980px) {

  .metabiblioteca-search-grid,
  .metabiblioteca-search-results__tools {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-search-results__header {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (max-width: 640px) {
  .page_search.metabiblioteca-search {
    max-width: calc(100vw - 18px);
    padding-inline: 0.25rem;
  }

  .metabiblioteca-search-box {
    grid-template-columns: auto 1fr;
    border-radius: var(--metabiblioteca-radius-ui);
  }

  .metabiblioteca-search-box__submit {
    grid-column: 1 / -1;
    width: 100%;
  }

  .metabiblioteca-search-form__assist,
  .metabiblioteca-search-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

/* --------------------------------------------------------------------------
   35. Busqueda avanzada: correccion funcional OJS 3.5, fuentes y autocomplete
   --------------------------------------------------------------------------
   Esta capa corrige la busqueda avanzada para que use los parametros reales
   de OJS 3.5 (searchContext, query, authors y dateFrom/dateTo) y refuerza la
   herencia de las fuentes configuradas en el administrador del tema.
*/
.page_search.metabiblioteca-search,
.page_search.metabiblioteca-search * {
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

.page_search.metabiblioteca-search h1,
.page_search.metabiblioteca-search h2,
.page_search.metabiblioteca-search h3,
.page_search.metabiblioteca-search .title,
.page_search.metabiblioteca-search .metabiblioteca-search-hero h1,
.page_search.metabiblioteca-search .metabiblioteca-search-results__header h2 {
  font-family: var(--metabiblioteca-font-02, Georgia, "Times New Roman", serif);
}

.page_search.metabiblioteca-search p,
.page_search.metabiblioteca-search li,
.page_search.metabiblioteca-search .metabiblioteca-search-hero__lead,
.page_search.metabiblioteca-search .metabiblioteca-search-help,
.page_search.metabiblioteca-search .metabiblioteca-search-results__count {
  font-family: var(--metabiblioteca-font-03, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

/* Los labels de filtros no deben heredar estilos oscuros de cabeceras/bloques. */
.page_search.metabiblioteca-search .metabiblioteca-search-field>label,
.page_search.metabiblioteca-search .metabiblioteca-search-field .label,
.page_search.metabiblioteca-search .metabiblioteca-search-field legend {
  display: block;
  width: auto;
  margin: 0 0 0.45rem;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-weight: 800;
  line-height: 1.25;
}

.dark .page_search.metabiblioteca-search .metabiblioteca-search-field>label,
.dark .page_search.metabiblioteca-search .metabiblioteca-search-field .label,
.dark .page_search.metabiblioteca-search .metabiblioteca-search-field legend,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search .metabiblioteca-search-field>label,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search .metabiblioteca-search-field .label,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search .metabiblioteca-search-field legend {
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Autocompletado visual propio: funciona junto al datalist nativo y busquedas recientes. */
.metabiblioteca-search-box {
  position: relative;
}

.metabiblioteca-search-autocomplete {
  position: absolute;
  z-index: 80;
  top: calc(100% + 0.55rem);
  left: clamp(0.5rem, 5vw, 3.5rem);
  right: clamp(0.5rem, 12vw, 7rem);
  display: grid;
  gap: 0.35rem;
  padding: 0.55rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, white 96%, var(--metabiblioteca-bg-light, #f8fafc));
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.16);
}

.metabiblioteca-search-autocomplete[hidden] {
  display: none;
}

.metabiblioteca-search-autocomplete__item {
  width: 100%;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  padding: 0.72rem 0.9rem;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.metabiblioteca-search-autocomplete__item:hover,
.metabiblioteca-search-autocomplete__item:focus-visible {
  outline: none;
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateX(2px);
}

.dark .metabiblioteca-search-autocomplete,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 8%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
  box-shadow: 0 20px 58px rgba(0, 0, 0, 0.38);
}

.dark .metabiblioteca-search-autocomplete__item,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  color: var(--metabiblioteca-color-04, #ffffff);
}

/* Campos de fecha/selects compactos, evitando barras visuales innecesarias. */
.page_search.metabiblioteca-search .metabiblioteca-search-field input,
.page_search.metabiblioteca-search .metabiblioteca-search-field select,
.page_search.metabiblioteca-search .metabiblioteca-search-results__tools input,
.page_search.metabiblioteca-search .metabiblioteca-search-results__tools select {
  font-family: var(--metabiblioteca-font-01, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

@media (max-width: 700px) {
  .metabiblioteca-search-autocomplete {
    left: 0.4rem;
    right: 0.4rem;
  }
}

/* --------------------------------------------------------------------------
   35. Busqueda avanzada funcional: limpieza de controles no soportados
   --------------------------------------------------------------------------
   Esta capa deja visible solo lo que OJS procesa de forma nativa desde la
   busqueda publica: texto, autor, revista/contexto y fechas. Los controles
   que no tienen backend propio no se muestran para evitar una UX falsa.
*/
.metabiblioteca-theme .metabiblioteca-search,
.metabiblioteca-theme .metabiblioteca-search input,
.metabiblioteca-theme .metabiblioteca-search select,
.metabiblioteca-theme .metabiblioteca-search button,
.metabiblioteca-theme .metabiblioteca-search textarea {
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .metabiblioteca-search h1,
.metabiblioteca-theme .metabiblioteca-search h2,
.metabiblioteca-theme .metabiblioteca-search h3 {
  font-family: var(--metabiblioteca-font-02, inherit);
}

.metabiblioteca-theme .metabiblioteca-search p,
.metabiblioteca-theme .metabiblioteca-search li,
.metabiblioteca-theme .metabiblioteca-search .metabiblioteca-search-hero__lead,
.metabiblioteca-theme .metabiblioteca-search .metabiblioteca-search-help {
  font-family: var(--metabiblioteca-font-03, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-results__header--simple {
  align-items: flex-start;
}

.metabiblioteca-theme .metabiblioteca-search-result-list {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .metabiblioteca-search-result {
  list-style: none;
}

.metabiblioteca-theme .metabiblioteca-search-empty .metabiblioteca-search-empty__tips,
.metabiblioteca-theme [data-metabiblioteca-empty-tip] {
  display: none;
}

/* --------------------------------------------------------------------------
   36. Busqueda nativa OJS: mejora visual segura sin alterar funcionalidad
   --------------------------------------------------------------------------
   Se restaura la plantilla original de busqueda de OJS y esta capa solo mejora
   su presentacion. No agrega filtros falsos, no cambia parametros y no depende
   de JavaScript. Todo lo que se ve aqui sigue siendo procesado por OJS.
*/
.metabiblioteca-theme .page_search:not(.metabiblioteca-search) {
  max-width: min(1180px, calc(100vw - 2rem));
  margin-inline: auto;
  padding: clamp(1.25rem, 2vw, 2.5rem) 0;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search)>h1 {
  font-family: var(--metabiblioteca-font-02, inherit);
  color: var(--metabiblioteca-color-01, #0284c7);
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1.08;
  margin: 1rem 0 1.5rem;
  letter-spacing: -0.04em;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .cmp_form {
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 74%, white 26%);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.10);
  padding: clamp(1.1rem, 2vw, 1.8rem);
  margin-bottom: 2rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_input {
  position: relative;
  margin-bottom: 1.25rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_input input.query {
  width: 100%;
  min-height: 3.7rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #334155);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: clamp(1rem, 1.5vw, 1.1rem);
  padding: 0 1.35rem;
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_input input.query:focus-visible {
  outline: none;
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.65fr);
  gap: clamp(1rem, 2vw, 1.5rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  padding: clamp(1rem, 2vw, 1.35rem);
  background: rgba(255, 255, 255, 0.72);
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced>legend {
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  color: var(--metabiblioteca-color-01, #0284c7);
  padding: 0 0.35rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .date_range {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .author {
  display: grid;
  gap: 0.7rem;
  align-content: start;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .label,
.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .date_range legend {
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  color: var(--metabiblioteca-color-03, #334155);
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced input,
.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced select {
  width: 100%;
  min-height: 2.75rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #334155);
  font-family: var(--metabiblioteca-font-01, inherit);
  padding: 0.45rem 0.75rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .submit {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) button.submit,
.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .submit>button {
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  min-height: 2.9rem;
  padding: 0 1.5rem;
  box-shadow: 0 14px 28px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  transition: transform 180ms ease, background-color 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) button.submit:hover,
.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .submit>button:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_results {
  display: grid;
  gap: 1rem;
  margin: 1.5rem 0 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_results>li {
  list-style: none;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 13%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.07);
  padding: clamp(1rem, 2vw, 1.35rem);
}

.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .cmp_pagination {
  margin-top: 1.5rem;
}

html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .cmp_form,
html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced,
html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_results>li {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 7%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 30%, transparent);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.30);
}

html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_input input.query,
html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced input,
html.dark.metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced select {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 78%, white 10%);
  color: var(--metabiblioteca-color-04, #ffffff);
}

@media (max-width: 760px) {

  .metabiblioteca-theme .page_search:not(.metabiblioteca-search) .search_advanced,
  .metabiblioteca-theme .page_search:not(.metabiblioteca-search) .date_range {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .page_search:not(.metabiblioteca-search) .submit {
    justify-content: stretch;
  }

  .metabiblioteca-theme .page_search:not(.metabiblioteca-search) .submit>button {
    width: 100%;
  }
}

/* --------------------------------------------------------------------------
   37. Busqueda OJS funcional: orden visual, autocompletado nativo y limpieza
   --------------------------------------------------------------------------
   Esta seccion mantiene la busqueda nativa de OJS. No cambia rutas, no crea
   filtros artificiales y no intercepta el formulario. Solo mejora la UI de los
   campos reales: query, authors, searchJournal y fechas. El autocompletado usa
   sugerencias locales/datalist y siempre termina enviando el parametro normal
   query que OJS ya procesa.
*/
.metabiblioteca-theme .page_search.metabiblioteca-search-native {
  max-width: min(1180px, calc(100vw - 2rem));
  margin-inline: auto;
  padding: clamp(1.25rem, 2.4vw, 2.75rem) 0;
  font-family: var(--metabiblioteca-font-01, inherit);
  color: var(--metabiblioteca-color-03, #0f172a);
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native>h1 {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-hero {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent), transparent 34%),
    color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 74%, white 26%);
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.08);
  padding: clamp(1.25rem, 2.8vw, 2.25rem);
  margin: 1rem 0 1.4rem;
}

.metabiblioteca-theme .metabiblioteca-search-kicker {
  margin: 0 0 0.45rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.8rem;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.metabiblioteca-theme .metabiblioteca-search-hero h1 {
  margin: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

.metabiblioteca-theme .metabiblioteca-search-lead {
  max-width: 820px;
  margin: 0.9rem 0 0;
  color: var(--metabiblioteca-color-03, #334155);
  font-family: var(--metabiblioteca-font-03, var(--metabiblioteca-font-01, inherit));
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  line-height: 1.7;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .cmp_form {
  display: grid;
  gap: 1.15rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 70%, white 30%);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.09);
  padding: clamp(1rem, 2.25vw, 1.7rem);
  margin-bottom: 2rem;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input {
  position: relative;
  margin: 0;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input::before {
  content: "\f002";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 1.1rem;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  color: var(--metabiblioteca-color-01, #0284c7);
  font-size: 1.25rem;
  line-height: 1;
  pointer-events: none;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input input.query {
  width: 100%;
  min-height: 4rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 22%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: clamp(1rem, 1.45vw, 1.13rem);
  padding: 0 1.25rem 0 3rem;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7), 0 12px 26px rgba(15, 23, 42, 0.06);
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input input.query:focus-visible {
  outline: none;
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent), 0 15px 32px rgba(15, 23, 42, 0.08);
}

.metabiblioteca-theme .metabiblioteca-search-suggest {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  min-height: 0;
}

.metabiblioteca-theme .metabiblioteca-search-suggest:empty {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-suggest__button {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-01, #0284c7);
  cursor: pointer;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 800;
  font-size: 0.9rem;
  padding: 0.55rem 0.85rem;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease, border-color 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-suggest__button:hover,
.metabiblioteca-theme .metabiblioteca-search-suggest__button:focus-visible {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #fff);
  outline: none;
  transform: translateY(-1px);
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  gap: clamp(1rem, 2vw, 1.4rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #ffffff 82%, var(--metabiblioteca-bg-light, #f8fafc) 18%);
  padding: clamp(1rem, 2vw, 1.35rem);
  margin: 0;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced>legend {
  padding: 0 0.45rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  background: transparent;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.95rem;
  font-weight: 900;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .from,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .to,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .author {
  display: grid;
  gap: 0.72rem;
  align-content: start;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range fieldset,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .from>fieldset,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .to>fieldset {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  border: 0;
  padding: 0;
  margin: 0;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range legend,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .author .label {
  grid-column: 1 / -1;
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.93rem;
  font-weight: 900;
  line-height: 1.35;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range label {
  display: block;
  margin: 0 0 0.25rem;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 78%, transparent);
  font-size: 0.82rem;
  font-weight: 700;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced input,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced select {
  width: 100%;
  min-height: 2.95rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.98rem;
  padding: 0.55rem 0.75rem;
  transition: border-color 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced input:focus-visible,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced select:focus-visible {
  outline: none;
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, transparent);
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .submit {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.75rem;
  margin-top: 0;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .submit>button,
.metabiblioteca-theme .page_search.metabiblioteca-search-native button.submit {
  min-height: 3rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #fff);
  cursor: pointer;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  padding: 0 1.55rem;
  box-shadow: 0 14px 32px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  transition: background-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .submit>button:hover,
.metabiblioteca-theme .page_search.metabiblioteca-search-native button.submit:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
}

.metabiblioteca-theme .metabiblioteca-search-clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  padding: 0 1.2rem;
  text-decoration: none;
}

.metabiblioteca-theme .metabiblioteca-search-clear:hover {
  color: var(--metabiblioteca-color-04, #fff);
  background: var(--metabiblioteca-color-02, #0ea5e9);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-theme .metabiblioteca-search-results-heading {
  margin: 1.6rem 0 0.8rem;
}

.metabiblioteca-theme .metabiblioteca-search-results-heading p {
  margin: 0 0 0.25rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.metabiblioteca-theme .metabiblioteca-search-results-heading h2 {
  margin: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, inherit);
  font-size: clamp(1.55rem, 2.6vw, 2.35rem);
  letter-spacing: -0.035em;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_results {
  display: grid;
  gap: 1rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_results>li {
  list-style: none;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 13%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.07);
  padding: clamp(1rem, 2vw, 1.35rem);
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .cmp_pagination {
  margin-top: 1.5rem;
}

html.dark.metabiblioteca-theme .metabiblioteca-search-hero,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .cmp_form,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_results>li {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 7%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 30%, transparent);
  box-shadow: 0 22px 55px rgba(0, 0, 0, 0.30);
}

html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input input.query,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced input,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced select,
html.dark.metabiblioteca-theme .metabiblioteca-search-suggest__button,
html.dark.metabiblioteca-theme .metabiblioteca-search-clear {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 78%, white 10%);
  color: var(--metabiblioteca-color-04, #ffffff);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-lead,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range legend,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .author .label,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range label {
  color: var(--metabiblioteca-color-04, #ffffff);
}

@media (max-width: 860px) {

  .metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced,
  .metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .metabiblioteca-theme .page_search.metabiblioteca-search-native {
    max-width: min(100%, calc(100vw - 1rem));
  }

  .metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range fieldset,
  .metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .from>fieldset,
  .metabiblioteca-theme .page_search.metabiblioteca-search-native .date_range .to>fieldset {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .page_search.metabiblioteca-search-native .submit {
    align-items: stretch;
    flex-direction: column;
  }

  .metabiblioteca-theme .page_search.metabiblioteca-search-native .submit>button,
  .metabiblioteca-theme .metabiblioteca-search-clear {
    width: 100%;
  }
}

/* ========================================================================
   35. Buscador global y pagina de busqueda: autocompletado propio,
       sin datalist nativo y con estructura funcional de OJS
   ------------------------------------------------------------------------
   Esta capa corrige el buscador para que el autocompletado sea visualmente
   controlado por el tema. No usa <datalist>, porque algunos navegadores lo
   muestran con una interfaz oscura o ajena al diseño. La busqueda final sigue
   usando el parametro nativo query y la procesa OJS.
   ======================================================================== */

.metabiblioteca-theme .metabiblioteca-header-searchbar {
  order: 20;
  flex: 0 0 100%;
  width: 100%;
  margin-top: 0.85rem;
  display: flex;
  justify-content: center;
  padding-inline: clamp(0.5rem, 2vw, 1.5rem);
}

.metabiblioteca-theme .metabiblioteca-global-search {
  width: min(100%, 76rem);
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-combobox {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.35rem;
  width: 100%;
  min-height: 3.45rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #0f172a);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  padding: 0.35rem 0.45rem 0.35rem 1rem;
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox:focus-within {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent), 0 18px 42px rgba(15, 23, 42, 0.11);
}

.metabiblioteca-theme .metabiblioteca-search-combobox--header {
  min-height: 3rem;
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__icon svg {
  width: 1.05rem;
  height: 1.05rem;
}

.metabiblioteca-theme .metabiblioteca-search-input,
.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_input input.query {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: var(--metabiblioteca-font-size-01, 16px);
  font-weight: 650;
  box-shadow: none;
  padding: 0.45rem 0.35rem;
}

.metabiblioteca-theme .metabiblioteca-search-input::placeholder {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 52%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  cursor: pointer;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  transition: background-color 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear {
  width: 2rem;
  height: 2rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 55%, transparent);
  font-size: 1.35rem;
  line-height: 1;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__clear:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
  color: var(--metabiblioteca-color-01, #0284c7);
  outline: none;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  min-width: 3rem;
  min-height: 2.45rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  padding-inline: 1.05rem;
  box-shadow: 0 10px 26px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 25%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateY(-1px);
  outline: none;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  position: absolute;
  z-index: 1000;
  top: calc(100% + 0.55rem);
  left: 0.6rem;
  right: 0.6rem;
  display: grid;
  gap: 0.25rem;
  max-height: min(22rem, 55vh);
  overflow: auto;
  margin: 0;
  padding: 0.45rem;
  list-style: none;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  box-shadow: 0 24px 65px rgba(15, 23, 42, 0.18);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete[hidden] {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 0.65rem;
  min-height: 2.75rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  cursor: pointer;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.94rem;
  font-weight: 700;
  padding: 0.55rem 0.75rem;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 11%, transparent);
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 11%, transparent);
  color: var(--metabiblioteca-color-01, #0284c7);
  font-size: 0.95rem;
  flex: 0 0 auto;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete mark {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 22%, transparent);
  color: inherit;
  border-radius: var(--metabiblioteca-radius-ui);
  padding-inline: 0.08rem;
}

/* Pagina de busqueda: estructura ordenada y profesional */
.metabiblioteca-theme .page_search.metabiblioteca-search-native {
  width: min(100%, 78rem);
  margin-inline: auto;
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-hero {
  padding: clamp(1.35rem, 3vw, 2.2rem);
  border-radius: var(--metabiblioteca-radius-ui);
  background: linear-gradient(135deg, #fff, color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 86%, var(--metabiblioteca-color-01, #0284c7) 5%));
}

.metabiblioteca-theme .metabiblioteca-search-hero h1,
.metabiblioteca-theme .metabiblioteca-search-results-heading h2 {
  font-family: var(--metabiblioteca-font-02, inherit);
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme .metabiblioteca-search-lead,
.metabiblioteca-theme .metabiblioteca-search-help {
  font-family: var(--metabiblioteca-font-03, inherit);
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 76%, transparent);
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .cmp_form.metabiblioteca-search-form {
  display: grid;
  gap: 1.15rem;
  padding: clamp(1rem, 2vw, 1.55rem);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
}

.metabiblioteca-theme .metabiblioteca-search-label {
  display: block;
  margin: 0 0 0.55rem;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
}

.metabiblioteca-theme .metabiblioteca-search-help {
  margin: 0.65rem 0 0;
  font-size: 0.9rem;
}

.metabiblioteca-theme .metabiblioteca-search-advanced {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 15%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #fff 88%, var(--metabiblioteca-bg-light, #f8fafc) 12%);
  overflow: clip;
}

.metabiblioteca-theme .metabiblioteca-search-advanced>summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  cursor: pointer;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  padding: 1rem 1.1rem;
}

.metabiblioteca-theme .metabiblioteca-search-advanced>summary small {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 58%, transparent);
  font-size: 0.8rem;
  font-weight: 800;
}

.metabiblioteca-theme .page_search.metabiblioteca-search-native .search_advanced {
  display: block;
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, #cbd5e1);
  border-radius: 0;
  background: transparent;
  padding: 1.1rem;
}

.metabiblioteca-theme .metabiblioteca-search-advanced__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.metabiblioteca-theme .metabiblioteca-search-field--date {
  grid-column: span 1;
}

.metabiblioteca-theme .metabiblioteca-search-field .label,
.metabiblioteca-theme .metabiblioteca-search-date-card legend {
  display: block;
  margin: 0 0 0.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.92rem;
  font-weight: 900;
}

.metabiblioteca-theme .metabiblioteca-search-date-card fieldset,
.metabiblioteca-theme .metabiblioteca-search-date-card>fieldset {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  border: 0;
}

.metabiblioteca-theme .metabiblioteca-search-date-card label {
  display: block;
  margin: 0 0 0.25rem;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 62%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 0.78rem;
  font-weight: 800;
}

.metabiblioteca-theme .metabiblioteca-search-field input,
.metabiblioteca-theme .metabiblioteca-search-field select,
.metabiblioteca-theme .metabiblioteca-search-date-card select,
.metabiblioteca-theme .metabiblioteca-search-date-card input {
  width: 100%;
  min-height: 2.85rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.95rem;
  padding: 0.55rem 0.75rem;
}

.metabiblioteca-theme .metabiblioteca-search-field input:focus-visible,
.metabiblioteca-theme .metabiblioteca-search-field select:focus-visible,
.metabiblioteca-theme .metabiblioteca-search-date-card select:focus-visible,
.metabiblioteca-theme .metabiblioteca-search-date-card input:focus-visible {
  outline: none;
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.metabiblioteca-theme .metabiblioteca-search-actions .submit,
.metabiblioteca-theme .metabiblioteca-search-clear {
  min-height: 3rem;
  border-radius: var(--metabiblioteca-radius-ui);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  text-decoration: none;
}

.metabiblioteca-theme .metabiblioteca-search-actions .submit {
  border: 0;
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #fff);
  padding: 0 1.55rem;
}

.metabiblioteca-theme .metabiblioteca-search-clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, #cbd5e1);
  background: #fff;
  color: var(--metabiblioteca-color-01, #0284c7);
  padding: 0 1.2rem;
}

.metabiblioteca-theme .metabiblioteca-search-empty {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 13%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #fff;
  padding: 1.25rem;
  color: var(--metabiblioteca-color-03, #0f172a);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-combobox,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete,
html.dark.metabiblioteca-theme .page_search.metabiblioteca-search-native .cmp_form.metabiblioteca-search-form,
html.dark.metabiblioteca-theme .metabiblioteca-search-advanced,
html.dark.metabiblioteca-theme .metabiblioteca-search-empty {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 86%, white 7%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-input,
html.dark.metabiblioteca-theme .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme .metabiblioteca-search-field select,
html.dark.metabiblioteca-theme .metabiblioteca-search-date-card select,
html.dark.metabiblioteca-theme .metabiblioteca-search-date-card input {
  color: var(--metabiblioteca-color-04, #fff);
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 74%, white 9%);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-label,
html.dark.metabiblioteca-theme .metabiblioteca-search-advanced>summary,
html.dark.metabiblioteca-theme .metabiblioteca-search-field .label,
html.dark.metabiblioteca-theme .metabiblioteca-search-date-card legend,
html.dark.metabiblioteca-theme .metabiblioteca-search-empty,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  color: var(--metabiblioteca-color-04, #ffffff);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, transparent);
  color: var(--metabiblioteca-color-04, #fff);
}

@media (max-width: 1024px) {
  .metabiblioteca-theme .metabiblioteca-header-searchbar {
    margin-top: 0.65rem;
  }

  .metabiblioteca-theme .metabiblioteca-global-search {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .metabiblioteca-theme .metabiblioteca-search-combobox {
    grid-template-columns: auto minmax(0, 1fr) auto;
    border-radius: var(--metabiblioteca-radius-ui);
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__submit {
    width: 2.65rem;
    min-width: 2.65rem;
    padding-inline: 0;
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__submit:not(:has(svg)) {
    width: auto;
    padding-inline: 1rem;
  }

  .metabiblioteca-theme .metabiblioteca-search-advanced__grid {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .metabiblioteca-search-date-card fieldset,
  .metabiblioteca-theme .metabiblioteca-search-date-card>fieldset {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .metabiblioteca-search-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .metabiblioteca-theme .metabiblioteca-search-actions .submit,
  .metabiblioteca-theme .metabiblioteca-search-clear {
    width: 100%;
  }
}

/* =======================================================================
   35. Busqueda global estable: barra completa, limpia y compatible con OJS
   -----------------------------------------------------------------------
   Esta capa corrige la barra de busqueda sin tocar la logica nativa de OJS.
   - No usa datalist del navegador.
   - No agrega filtros falsos.
   - La busqueda envia solo query al endpoint de OJS.
   - Retira el icono decorativo izquierdo para evitar ruido visual.
   - La barra ocupa todo el ancho disponible del contenedor del header.
   - Aplica los colores y fuentes administrables del tema.
   ======================================================================= */

.metabiblioteca-theme .metabiblioteca-header-searchbar {
  flex: 0 0 100%;
  width: 100%;
  max-width: none;
  margin: clamp(0.7rem, 1.5vw, 1rem) auto 0;
  padding-inline: clamp(0.25rem, 1.5vw, 1rem);
}

.metabiblioteca-theme .metabiblioteca-global-search {
  width: min(100%, 82rem);
  max-width: 82rem;
  margin-inline: auto;
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-combobox {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.45rem;
  width: 100%;
  min-height: 3.45rem;
  padding: 0.38rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 38%, #ffffff 62%);
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.08);
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox:focus-within {
  border-color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, transparent), 0 18px 42px rgba(15, 23, 42, 0.12);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__icon {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-input,
.metabiblioteca-theme .page_search .search_input input.query {
  width: 100%;
  min-width: 0;
  min-height: 2.75rem;
  border: 0;
  outline: none;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: clamp(0.95rem, 1.3vw, 1.05rem);
  font-weight: 700;
  padding: 0 0.85rem;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-input::placeholder,
.metabiblioteca-theme .page_search .search_input input.query::placeholder {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 52%, transparent);
  opacity: 1;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.35rem;
  height: 2.35rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 58%, transparent);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 1.55rem;
  font-weight: 800;
  line-height: 1;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__clear:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.85rem;
  min-width: 2.85rem;
  height: 2.85rem;
  padding: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  box-shadow: 0 10px 22px color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 28%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg {
  width: 1.05rem;
  height: 1.05rem;
  color: currentColor;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  position: absolute;
  top: calc(100% + 0.45rem);
  left: 0;
  right: 0;
  z-index: 80;
  width: 100%;
  max-height: min(22rem, 65vh);
  overflow: auto;
  margin: 0;
  padding: 0.5rem;
  list-style: none;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.18);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  width: 100%;
  padding: 0.7rem 0.8rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 750;
  cursor: pointer;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, #ffffff);
  color: var(--metabiblioteca-color-01, #0284c7);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__icon {
  color: var(--metabiblioteca-color-01, #0284c7);
  opacity: 0.85;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete mark {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 20%, transparent);
  color: inherit;
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Pagina nativa de busqueda: diseño seguro sin modificar la logica de OJS */
.metabiblioteca-theme .page_search {
  width: min(100%, 76rem);
  margin-inline: auto;
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-theme .page_search>h1 {
  font-family: var(--metabiblioteca-font-02, inherit);
  color: var(--metabiblioteca-color-01, #0284c7);
  margin-bottom: 1rem;
}

.metabiblioteca-theme .page_search .cmp_form {
  display: grid;
  gap: 1.15rem;
  padding: clamp(1rem, 2vw, 1.6rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 14%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.metabiblioteca-theme .page_search .search_input {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 3.4rem;
  padding: 0.35rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 24%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 38%, #ffffff 62%);
}

.metabiblioteca-theme .page_search .search_input::after {
  content: "Buscar";
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 7rem;
  height: 2.75rem;
  padding-inline: 1rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
  pointer-events: none;
}

.metabiblioteca-theme .page_search .search_advanced {
  display: grid;
  gap: 1rem;
  padding: 1.1rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 50%, #ffffff 50%);
}

.metabiblioteca-theme .page_search .search_advanced>legend {
  padding-inline: 0.45rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
}

.metabiblioteca-theme .page_search .date_range {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.metabiblioteca-theme .page_search .author {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.metabiblioteca-theme .page_search .date_range legend,
.metabiblioteca-theme .page_search .author .label {
  display: block;
  margin: 0 0 0.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
}

.metabiblioteca-theme .page_search .date_range fieldset,
.metabiblioteca-theme .page_search .date_range .from,
.metabiblioteca-theme .page_search .date_range .to {
  min-width: 0;
}

.metabiblioteca-theme .page_search .date_range fieldset {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  border: 0;
}

.metabiblioteca-theme .page_search .date_range label {
  display: block;
  margin-bottom: 0.25rem;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 65%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-weight: 750;
}

.metabiblioteca-theme .page_search .search_advanced input,
.metabiblioteca-theme .page_search .search_advanced select {
  width: 100%;
  min-height: 2.85rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  padding: 0.55rem 0.75rem;
}

.metabiblioteca-theme .page_search .cmp_form>.submit {
  display: flex;
  justify-content: flex-end;
}

.metabiblioteca-theme .page_search .cmp_form>.submit button.submit {
  min-height: 3rem;
  padding: 0 1.55rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 900;
}

html.dark.metabiblioteca-theme .metabiblioteca-search-combobox,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete,
html.dark.metabiblioteca-theme .page_search .cmp_form,
html.dark.metabiblioteca-theme .page_search .search_input,
html.dark.metabiblioteca-theme .page_search .search_advanced {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 86%, white 7%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 34%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-input,
html.dark.metabiblioteca-theme .page_search .search_input input.query,
html.dark.metabiblioteca-theme .page_search .search_advanced input,
html.dark.metabiblioteca-theme .page_search .search_advanced select {
  color: var(--metabiblioteca-color-04, #ffffff);
  background: transparent;
}

html.dark.metabiblioteca-theme .page_search .date_range legend,
html.dark.metabiblioteca-theme .page_search .author .label,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  color: var(--metabiblioteca-color-04, #ffffff);
}

@media (max-width: 760px) {
  .metabiblioteca-theme .metabiblioteca-header-searchbar {
    padding-inline: 0;
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox {
    grid-template-columns: minmax(0, 1fr) auto auto;
    min-height: 3.25rem;
  }

  .metabiblioteca-theme .page_search .date_range,
  .metabiblioteca-theme .page_search .author,
  .metabiblioteca-theme .page_search .date_range fieldset {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .page_search .search_input::after {
    min-width: 3rem;
    width: 3rem;
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
  }
}

/* ==========================================================================
   36. Busqueda profesional estable: barra global y pagina nativa OJS
   --------------------------------------------------------------------------
   Esta capa solo cambia UI/UX. No modifica parametros ni flujo de busqueda
   de OJS. La barra global envia el parametro nativo "query" y la pagina
   /search mantiene sus campos originales: query, authors, searchJournal y
   fechas. El autocompletado es progresivo y propio del tema; no usa datalist.
   ========================================================================== */

.metabiblioteca-theme .metabiblioteca-header-searchbar {
  width: min(100%, 1220px);
  margin: 0.75rem auto 0;
  padding: 0 1rem;
  order: 20;
}

.metabiblioteca-theme .metabiblioteca-global-search {
  width: 100%;
  max-width: none;
  margin: 0;
  font-family: var(--metabiblioteca-font-primary, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-combobox {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 3.25rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 28%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 70%, #ffffff 30%);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.75);
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease, background 180ms ease;
  overflow: visible;
}

.metabiblioteca-theme .metabiblioteca-search-combobox::before,
.metabiblioteca-theme .metabiblioteca-search-combobox__icon {
  display: none;
  content: none;
}

.metabiblioteca-theme .metabiblioteca-search-combobox:focus-within {
  border-color: var(--metabiblioteca-color01, #003b73);
  box-shadow: 0 20px 50px color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 20%, transparent), 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 12%, transparent);
  transform: translateY(-1px);
}

.metabiblioteca-theme .metabiblioteca-search-input,
.metabiblioteca-theme .page_search .search_input input.query,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox input.query {
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
  min-height: 3.25rem;
  padding: 0 1rem 0 1.35rem;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--metabiblioteca-color03, #1f2937);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-size: var(--metabiblioteca-font-size-01, 16px);
  font-weight: 600;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-input::placeholder,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox input.query::placeholder {
  color: color-mix(in srgb, var(--metabiblioteca-color03, #1f2937) 56%, transparent);
  opacity: 1;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 2.35rem;
  height: 2.35rem;
  margin-right: 0.25rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: color-mix(in srgb, var(--metabiblioteca-color03, #1f2937) 65%, transparent);
  font-size: 1.65rem;
  line-height: 1;
  cursor: pointer;
  transition: background 160ms ease, color 160ms ease, transform 160ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__clear:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 10%, transparent);
  color: var(--metabiblioteca-color01, #003b73);
  transform: scale(1.03);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  flex: 0 0 auto;
  min-width: 3rem;
  height: 2.75rem;
  margin-right: 0.28rem;
  padding: 0 1.05rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color01, #003b73);
  color: var(--metabiblioteca-color04, #ffffff);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-weight: 800;
  box-shadow: 0 14px 30px color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 28%, transparent);
  cursor: pointer;
  transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color02, #005ea8);
  transform: translateY(-1px);
  box-shadow: 0 18px 38px color-mix(in srgb, var(--metabiblioteca-color02, #005ea8) 30%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg {
  width: 1.15rem;
  height: 1.15rem;
  color: currentColor;
  stroke: currentColor;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  position: absolute;
  z-index: 80;
  top: calc(100% + 0.55rem);
  left: 0;
  right: 0;
  display: grid;
  gap: 0.25rem;
  max-height: 21rem;
  margin: 0;
  padding: 0.55rem;
  overflow: auto;
  list-style: none;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 18%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 38%, #ffffff 62%);
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.18);
  font-family: var(--metabiblioteca-font-primary, inherit);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete[hidden] {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 2.75rem;
  padding: 0.72rem 0.85rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color03, #1f2937);
  cursor: pointer;
  font-weight: 650;
  transition: background 150ms ease, color 150ms ease, transform 150ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active {
  background: color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 10%, transparent);
  color: var(--metabiblioteca-color01, #003b73);
  transform: translateX(2px);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete mark {
  padding: 0 0.1rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color02, #005ea8) 16%, transparent);
  color: inherit;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__hint {
  flex: 0 0 auto;
  padding: 0.25rem 0.55rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 9%, transparent);
  color: color-mix(in srgb, var(--metabiblioteca-color03, #1f2937) 76%, transparent);
  font-size: 0.72rem;
  font-weight: 800;
}

.metabiblioteca-theme .page_search {
  max-width: min(100%, 1220px);
  margin-inline: auto;
  padding-inline: clamp(1rem, 2vw, 1.5rem);
  font-family: var(--metabiblioteca-font-primary, inherit);
}

.metabiblioteca-theme .page_search>h1 {
  margin: 0.75rem 0 1rem;
  color: var(--metabiblioteca-color01, #003b73);
  font-family: var(--metabiblioteca-font-title, var(--metabiblioteca-font-primary, inherit));
}

.metabiblioteca-theme .metabiblioteca-search-hero {
  margin: 1rem 0 1rem;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: linear-gradient(135deg, color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 72%, #ffffff 28%), color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 5%, #ffffff 95%));
  box-shadow: 0 18px 48px rgba(15, 23, 42, 0.06);
}

.metabiblioteca-theme .metabiblioteca-search-hero__eyebrow {
  margin: 0 0 0.35rem;
  color: var(--metabiblioteca-color01, #003b73);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.metabiblioteca-theme .metabiblioteca-search-hero h2 {
  margin: 0;
  color: var(--metabiblioteca-color01, #003b73);
  font-family: var(--metabiblioteca-font-title, var(--metabiblioteca-font-primary, inherit));
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  line-height: 1.08;
}

.metabiblioteca-theme .metabiblioteca-search-hero p:not(.metabiblioteca-search-hero__eyebrow) {
  max-width: 62rem;
  margin: 0.8rem 0 0;
  color: color-mix(in srgb, var(--metabiblioteca-color03, #1f2937) 82%, transparent);
  font-family: var(--metabiblioteca-font-subtitle, var(--metabiblioteca-font-primary, inherit));
}

.metabiblioteca-theme .metabiblioteca-search-page-form,
.metabiblioteca-theme .page_search .cmp_form.metabiblioteca-search-page-form {
  margin: 0 0 1.4rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-card {
  display: grid;
  gap: 1.25rem;
  padding: clamp(1rem, 2.4vw, 1.45rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 14%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 48%, #ffffff 52%);
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.08);
}

.metabiblioteca-theme .metabiblioteca-search-card__main,
.metabiblioteca-theme .page_search .search_input.metabiblioteca-search-card__main {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.metabiblioteca-theme .page_search .search_input.metabiblioteca-search-card__main::after {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-card__filters,
.metabiblioteca-theme .page_search .search_advanced.metabiblioteca-search-card__filters {
  margin: 0;
  padding: 1rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 12%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 64%, #ffffff 36%);
}

.metabiblioteca-theme .metabiblioteca-search-card__filters>legend {
  float: none;
  width: auto;
  margin: 0 0 0.8rem;
  padding: 0;
  color: var(--metabiblioteca-color01, #003b73);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-size: 0.95rem;
  font-weight: 900;
}

.metabiblioteca-theme .metabiblioteca-search-filters-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
  gap: 1rem;
  align-items: start;
}

.metabiblioteca-theme .metabiblioteca-search-filter-group {
  display: grid;
  gap: 0.9rem;
}

.metabiblioteca-theme .page_search .date_range,
.metabiblioteca-theme .page_search .metabiblioteca-search-filter-group--dates {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

.metabiblioteca-theme .page_search .date_range .from,
.metabiblioteca-theme .page_search .date_range .to,
.metabiblioteca-theme .page_search .date_range fieldset,
.metabiblioteca-theme .page_search .author {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.metabiblioteca-theme .page_search .date_range fieldset legend,
.metabiblioteca-theme .page_search .date_range legend,
.metabiblioteca-theme .page_search .author .label {
  display: block;
  margin: 0 0 0.45rem;
  padding: 0;
  background: transparent;
  color: var(--metabiblioteca-color01, #003b73);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-size: 0.9rem;
  font-weight: 850;
}

.metabiblioteca-theme .page_search .date_range ol,
.metabiblioteca-theme .page_search .date_range ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .page_search .date_range li {
  margin: 0;
}

.metabiblioteca-theme .page_search .date_range label {
  display: block;
  margin: 0 0 0.25rem;
  color: color-mix(in srgb, var(--metabiblioteca-color03, #1f2937) 78%, transparent);
  font-size: 0.78rem;
  font-weight: 750;
}

.metabiblioteca-theme .page_search .search_advanced input,
.metabiblioteca-theme .page_search .search_advanced select {
  width: 100%;
  min-height: 2.8rem;
  padding: 0 0.85rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 24%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color03, #1f2937);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-size: 0.95rem;
  box-shadow: none;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.metabiblioteca-theme .page_search .search_advanced input:focus,
.metabiblioteca-theme .page_search .search_advanced select:focus {
  border-color: var(--metabiblioteca-color01, #003b73);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 12%, transparent);
  outline: none;
}

.metabiblioteca-theme .metabiblioteca-search-card__actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.metabiblioteca-theme .metabiblioteca-search-card__reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0 1rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 25%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: var(--metabiblioteca-color01, #003b73);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-weight: 850;
  text-decoration: none;
}

.metabiblioteca-theme .metabiblioteca-search-card__actions button.submit,
.metabiblioteca-theme .page_search .metabiblioteca-search-card__actions button.submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.85rem;
  padding: 0 1.35rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color01, #003b73);
  color: var(--metabiblioteca-color04, #ffffff);
  font-family: var(--metabiblioteca-font-primary, inherit);
  font-weight: 900;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--metabiblioteca-color01, #003b73) 26%, transparent);
  cursor: pointer;
}

.metabiblioteca-theme .metabiblioteca-search-card__actions button.submit:hover,
.metabiblioteca-theme .metabiblioteca-search-card__reset:hover {
  background: var(--metabiblioteca-color02, #005ea8);
  color: var(--metabiblioteca-color04, #ffffff);
  border-color: var(--metabiblioteca-color02, #005ea8);
}

.metabiblioteca-theme .metabiblioteca-search-card__actions button.submit svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
  stroke: currentColor;
}

html.dark.metabiblioteca-theme .metabiblioteca-search-combobox,
html.dark.metabiblioteca-theme .metabiblioteca-search-card,
html.dark.metabiblioteca-theme .metabiblioteca-search-hero,
html.dark.metabiblioteca-theme .metabiblioteca-search-card__filters {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 82%, #ffffff 18%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color01, #60a5fa) 35%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-input,
html.dark.metabiblioteca-theme .page_search .search_advanced input,
html.dark.metabiblioteca-theme .page_search .search_advanced select {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 74%, #ffffff 8%);
  color: var(--metabiblioteca-color04, #ffffff);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, #ffffff 12%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color01, #60a5fa) 32%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item,
html.dark.metabiblioteca-theme .metabiblioteca-search-hero p:not(.metabiblioteca-search-hero__eyebrow),
html.dark.metabiblioteca-theme .page_search .date_range label {
  color: color-mix(in srgb, var(--metabiblioteca-color04, #ffffff) 86%, transparent);
}

@media (max-width: 900px) {

  .metabiblioteca-theme .metabiblioteca-search-filters-grid,
  .metabiblioteca-theme .page_search .date_range,
  .metabiblioteca-theme .page_search .metabiblioteca-search-filter-group--dates {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .metabiblioteca-header-searchbar {
    padding-inline: 0.75rem;
  }
}

@media (max-width: 640px) {
  .metabiblioteca-theme .metabiblioteca-search-combobox {
    border-radius: var(--metabiblioteca-radius-ui);
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__submit span {
    display: none;
  }

  .metabiblioteca-theme .metabiblioteca-search-card__actions {
    justify-content: stretch;
  }

  .metabiblioteca-theme .metabiblioteca-search-card__actions>* {
    flex: 1 1 100%;
  }
}

/* ========================================================================== 
   37. Busqueda academica profesional: implementacion UI segura
   --------------------------------------------------------------------------
   Esta capa es intencionalmente final para ganar la cascada del tema y ordenar
   la busqueda sin cambiar la logica nativa de OJS. Mantiene query, authors,
   searchJournal y fechas procesadas por OJS. El autocomplete es una ayuda
   progresiva propia del tema y no usa datalist del navegador.
   ========================================================================== */

.metabiblioteca-theme .pkp_screen_reader,
.metabiblioteca-theme .metabiblioteca-search-sr-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* Barra global en el header: ocupa todo el ancho posible y se mantiene limpia */
.metabiblioteca-theme .metabiblioteca-header-searchbar {
  order: 20;
  width: 100%;
  max-width: 1240px;
  margin: 0.9rem auto 0;
  padding-inline: clamp(0.75rem, 3vw, 2rem);
}

.metabiblioteca-theme .metabiblioteca-global-search {
  width: 100%;
  max-width: none;
  margin: 0;
  font-family: var(--metabiblioteca-font-01, var(--metabiblioteca-font-primary, inherit));
}

.metabiblioteca-theme .metabiblioteca-search-combobox {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.45rem;
  width: 100%;
  min-height: 58px;
  padding: 0.38rem 0.45rem 0.38rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 28%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 35%, #ffffff 65%);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease, transform 180ms ease;
  isolation: isolate;
}

.metabiblioteca-theme .metabiblioteca-search-combobox::before,
.metabiblioteca-theme .metabiblioteca-search-combobox__icon,
.metabiblioteca-theme .page_search .search_input::after {
  content: none;
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-combobox:focus-within {
  border-color: var(--metabiblioteca-color-01, #08166b);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 16%, transparent), 0 22px 52px rgba(15, 23, 42, 0.14);
}

.metabiblioteca-theme .metabiblioteca-search-input,
.metabiblioteca-theme .metabiblioteca-search-combobox input[type='search'],
.metabiblioteca-theme .metabiblioteca-search-combobox input[type='text'] {
  min-width: 0;
  width: 100%;
  height: auto;
  min-height: 44px;
  margin: 0;
  padding: 0 0.35rem;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, var(--metabiblioteca-font-primary, inherit));
  font-size: clamp(0.96rem, 1.4vw, 1.05rem);
  font-weight: 650;
  line-height: 1.35;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-input::placeholder {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 56%, transparent);
  opacity: 1;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit,
.metabiblioteca-theme .metabiblioteca-search-apply,
.metabiblioteca-theme .metabiblioteca-search-reset {
  font-family: var(--metabiblioteca-font-01, var(--metabiblioteca-font-primary, inherit));
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  min-width: 42px;
  min-height: 42px;
  padding: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 70%, transparent);
  font-size: 1.55rem;
  font-weight: 850;
  line-height: 1;
  cursor: pointer;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__clear:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 9%, transparent);
  color: var(--metabiblioteca-color-01, #08166b);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit,
.metabiblioteca-theme .metabiblioteca-search-apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  min-width: 52px;
  min-height: 46px;
  padding: 0 1.25rem;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-size: 0.96rem;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 28%, transparent);
  cursor: pointer;
  transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible,
.metabiblioteca-theme .metabiblioteca-search-apply:hover,
.metabiblioteca-theme .metabiblioteca-search-apply:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateY(-1px);
  box-shadow: 0 14px 32px color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 30%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .metabiblioteca-search-apply svg {
  width: 1.05rem;
  height: 1.05rem;
  color: currentColor;
  stroke: currentColor;
}

/* Dropdown propio del tema: anclado al campo, sin apariencia nativa del navegador */
.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  position: absolute;
  z-index: 90;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  width: 100%;
  max-height: min(60vh, 30rem);
  overflow: auto;
  margin: 0;
  padding: 0.55rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  list-style: none;
  box-shadow: 0 26px 70px rgba(15, 23, 42, 0.18);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete[hidden] {
  display: none;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
  width: 100%;
  margin: 0;
  padding: 0.86rem 0.95rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, var(--metabiblioteca-font-primary, inherit));
  font-size: 0.96rem;
  font-weight: 650;
  cursor: pointer;
  transition: background 150ms ease, color 150ms ease, transform 150ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 9%, #ffffff);
  color: var(--metabiblioteca-color-01, #08166b);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__hint {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.65rem;
  padding: 0 0.55rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 8%, #ffffff);
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 0.72rem;
  font-weight: 850;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete mark {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 22%, transparent);
  color: inherit;
  border-radius: var(--metabiblioteca-radius-ui);
  padding: 0 0.08em;
}

/* Pagina de busqueda: tarjeta editorial ordenada */
.metabiblioteca-theme .page_search.metabiblioteca-search-page {
  width: min(100%, 76rem);
  margin-inline: auto;
  font-family: var(--metabiblioteca-font-01, var(--metabiblioteca-font-primary, inherit));
}

.metabiblioteca-theme .metabiblioteca-search-page__title {
  margin: 0 0 1rem;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-02, var(--metabiblioteca-font-heading, inherit));
  font-size: clamp(1.75rem, 3vw, 2.55rem);
  font-weight: 780;
  letter-spacing: -0.03em;
}

.metabiblioteca-theme .metabiblioteca-search-intro {
  margin: 0 0 1.1rem;
  padding: clamp(1.25rem, 2.5vw, 2rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: linear-gradient(135deg, #ffffff 0%, color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 78%, #ffffff) 100%);
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.07);
}

.metabiblioteca-theme .metabiblioteca-search-intro__eyebrow {
  margin: 0 0 0.35rem;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.metabiblioteca-theme .metabiblioteca-search-intro h2 {
  margin: 0;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-02, var(--metabiblioteca-font-heading, inherit));
  font-size: clamp(1.45rem, 2.4vw, 2.15rem);
  font-weight: 760;
  letter-spacing: -0.025em;
}

.metabiblioteca-theme .metabiblioteca-search-intro p:not(.metabiblioteca-search-intro__eyebrow) {
  max-width: 72ch;
  margin: 0.65rem 0 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 78%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 1rem;
  line-height: 1.7;
}

.metabiblioteca-theme .metabiblioteca-search-page-form,
.metabiblioteca-theme .page_search .cmp_form.metabiblioteca-search-page-form {
  display: block;
  margin: 0 0 1.4rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-shell {
  display: grid;
  gap: 1.05rem;
  padding: clamp(1.05rem, 2.2vw, 1.55rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.08);
}

.metabiblioteca-theme .page_search .search_input.metabiblioteca-search-primary,
.metabiblioteca-theme .metabiblioteca-search-primary {
  display: block;
  width: 100%;
  min-height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.metabiblioteca-theme .metabiblioteca-search-combobox--page {
  min-height: 64px;
  padding-left: 1.25rem;
}

.metabiblioteca-theme .metabiblioteca-search-combobox--page .metabiblioteca-search-combobox__submit {
  min-width: 7.5rem;
}

.metabiblioteca-theme .metabiblioteca-search-advanced,
.metabiblioteca-theme .page_search .search_advanced.metabiblioteca-search-advanced {
  margin: 0;
  padding: clamp(1rem, 2vw, 1.3rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 55%, #ffffff 45%);
}

.metabiblioteca-theme .metabiblioteca-search-advanced>legend,
.metabiblioteca-theme .page_search .search_advanced.metabiblioteca-search-advanced>legend {
  float: none;
  width: auto;
  margin: 0 0 0.9rem;
  padding: 0 0.55rem;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.98rem;
  font-weight: 900;
}

.metabiblioteca-theme .metabiblioteca-search-advanced__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(16rem, 0.8fr);
  gap: clamp(1rem, 2.2vw, 1.35rem);
  align-items: start;
}

.metabiblioteca-theme .metabiblioteca-search-date-card,
.metabiblioteca-theme .metabiblioteca-search-meta-card,
.metabiblioteca-theme .page_search .date_range.metabiblioteca-search-date-card,
.metabiblioteca-theme .page_search .author.metabiblioteca-search-meta-card {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin: 0;
}

.metabiblioteca-theme .metabiblioteca-search-meta-card,
.metabiblioteca-theme .page_search .author.metabiblioteca-search-meta-card {
  grid-template-columns: 1fr;
}

.metabiblioteca-theme .metabiblioteca-search-date-card__group,
.metabiblioteca-theme .page_search .date_range .from.metabiblioteca-search-date-card__group,
.metabiblioteca-theme .page_search .date_range .to.metabiblioteca-search-date-card__group,
.metabiblioteca-theme .metabiblioteca-search-field {
  min-width: 0;
  padding: 0.95rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
}

.metabiblioteca-theme .page_search .date_range fieldset {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}

.metabiblioteca-theme .page_search .date_range fieldset legend,
.metabiblioteca-theme .page_search .date_range legend,
.metabiblioteca-theme .page_search .author .label,
.metabiblioteca-theme .metabiblioteca-search-field .label {
  display: block;
  margin: 0 0 0.65rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.9rem;
  font-weight: 900;
}

.metabiblioteca-theme .page_search .date_range ol,
.metabiblioteca-theme .page_search .date_range ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .page_search .date_range li {
  display: grid;
  gap: 0.35rem;
  min-width: 0;
  margin: 0;
  padding: 0;
}

.metabiblioteca-theme .page_search .date_range label {
  margin: 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 68%, transparent);
  font-family: var(--metabiblioteca-font-03, inherit);
  font-size: 0.78rem;
  font-weight: 850;
}

.metabiblioteca-theme .page_search .search_advanced input,
.metabiblioteca-theme .page_search .search_advanced select,
.metabiblioteca-theme .metabiblioteca-search-field input,
.metabiblioteca-theme .metabiblioteca-search-field select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: 0.55rem 0.7rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.94rem;
  font-weight: 600;
  box-shadow: none;
}

.metabiblioteca-theme .page_search .search_advanced input:focus,
.metabiblioteca-theme .page_search .search_advanced select:focus {
  outline: 0;
  border-color: var(--metabiblioteca-color-01, #08166b);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 0.75rem;
  margin: 0;
}

.metabiblioteca-theme .metabiblioteca-search-reset {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 1.2rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 20%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 0.95rem;
  font-weight: 850;
  text-decoration: none;
}

.metabiblioteca-theme .metabiblioteca-search-reset:hover,
.metabiblioteca-theme .metabiblioteca-search-reset:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 8%, #ffffff);
  border-color: var(--metabiblioteca-color-01, #08166b);
}

.metabiblioteca-theme .metabiblioteca-search-results {
  display: grid;
  gap: 1rem;
  margin: 1.3rem 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-theme .metabiblioteca-search-results__item {
  padding: 1.05rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.06);
}

.metabiblioteca-theme .metabiblioteca-search-pagination {
  margin-top: 1.25rem;
}

/* Modo oscuro de la busqueda */
html.dark.metabiblioteca-theme .metabiblioteca-search-combobox,
html.dark.metabiblioteca-theme .metabiblioteca-search-shell,
html.dark.metabiblioteca-theme .metabiblioteca-search-intro,
html.dark.metabiblioteca-theme .metabiblioteca-search-advanced,
html.dark.metabiblioteca-theme .metabiblioteca-search-date-card__group,
html.dark.metabiblioteca-theme .metabiblioteca-search-field,
html.dark.metabiblioteca-theme .metabiblioteca-search-results__item {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 88%, white 8%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 34%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 90%, white 6%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 38%, transparent);
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.42);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-input,
html.dark.metabiblioteca-theme .metabiblioteca-search-intro h2,
html.dark.metabiblioteca-theme .metabiblioteca-search-page__title,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item,
html.dark.metabiblioteca-theme .page_search .search_advanced input,
html.dark.metabiblioteca-theme .page_search .search_advanced select,
html.dark.metabiblioteca-theme .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme .metabiblioteca-search-field select {
  color: var(--metabiblioteca-color-04, #ffffff);
}

html.dark.metabiblioteca-theme .page_search .search_advanced input,
html.dark.metabiblioteca-theme .page_search .search_advanced select,
html.dark.metabiblioteca-theme .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme .metabiblioteca-search-field select,
html.dark.metabiblioteca-theme .metabiblioteca-search-reset {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 82%, white 10%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 38%, transparent);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-intro p:not(.metabiblioteca-search-intro__eyebrow),
html.dark.metabiblioteca-theme .page_search .date_range label {
  color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 78%, transparent);
}

@media (max-width: 980px) {

  .metabiblioteca-theme .metabiblioteca-search-advanced__grid,
  .metabiblioteca-theme .metabiblioteca-search-date-card,
  .metabiblioteca-theme .page_search .date_range.metabiblioteca-search-date-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .metabiblioteca-theme .metabiblioteca-header-searchbar {
    padding-inline: 0.75rem;
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox {
    grid-template-columns: minmax(0, 1fr) auto auto;
    min-height: 54px;
    padding-left: 0.95rem;
    border-radius: var(--metabiblioteca-radius-ui);
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__submit span {
    display: none;
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__submit {
    min-width: 46px;
    padding: 0;
  }

  .metabiblioteca-theme .page_search .date_range ol,
  .metabiblioteca-theme .page_search .date_range ul {
    grid-template-columns: 1fr;
  }

  .metabiblioteca-theme .metabiblioteca-search-actions {
    justify-content: stretch;
  }

  .metabiblioteca-theme .metabiblioteca-search-reset,
  .metabiblioteca-theme .metabiblioteca-search-apply {
    flex: 1 1 100%;
  }
}

/* --------------------------------------------------------------------------
 * 38. Busqueda: evitar doble boton de limpiar
 * --------------------------------------------------------------------------
 * Los navegadores WebKit/Blink agregan automaticamente una X dentro de
 * <input type="search"> mediante pseudoelementos propietarios. El tema ya
 * usa su propio boton de limpiar para mantener un diseño consistente con los
 * colores y fuentes administrables, por eso ocultamos el control nativo y
 * dejamos una sola X visible.
 */
.metabiblioteca-search-input::-webkit-search-decoration,
.metabiblioteca-search-input::-webkit-search-cancel-button,
.metabiblioteca-search-input::-webkit-search-results-button,
.metabiblioteca-search-input::-webkit-search-results-decoration,
.metabiblioteca-global-search input[type="search"]::-webkit-search-decoration,
.metabiblioteca-global-search input[type="search"]::-webkit-search-cancel-button,
.metabiblioteca-global-search input[type="search"]::-webkit-search-results-button,
.metabiblioteca-global-search input[type="search"]::-webkit-search-results-decoration,
.metabiblioteca-search-page-form input[type="search"]::-webkit-search-decoration,
.metabiblioteca-search-page-form input[type="search"]::-webkit-search-cancel-button,
.metabiblioteca-search-page-form input[type="search"]::-webkit-search-results-button,
.metabiblioteca-search-page-form input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

.metabiblioteca-search-input::-ms-clear,
.metabiblioteca-search-input::-ms-reveal,
.metabiblioteca-global-search input[type="search"]::-ms-clear,
.metabiblioteca-global-search input[type="search"]::-ms-reveal,
.metabiblioteca-search-page-form input[type="search"]::-ms-clear,
.metabiblioteca-search-page-form input[type="search"]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

.metabiblioteca-search-combobox__clear {
  z-index: 3;
}

/* --------------------------------------------------------------------------
 * 39. Barra global de busqueda: compacta, profesional y de ancho completo
 * --------------------------------------------------------------------------
 * Ajuste solicitado para que la barra superior no aumente tanto la altura del
 * header. La funcionalidad nativa de OJS no se modifica: el formulario sigue
 * enviando solamente el parametro "query" hacia la pagina de busqueda. La
 * barra conserva el autocompletado propio del tema, pero se reduce su altura,
 * se expande al ancho disponible del encabezado y se mantiene alineada con el
 * sistema de colores/fuentes administrables.
 */
.metabiblioteca-theme .metabiblioteca-site-header {
  row-gap: 0.55rem;
  padding-top: clamp(0.65rem, 1.4vw, 1rem);
  padding-bottom: clamp(0.65rem, 1.4vw, 1rem);
}

.metabiblioteca-theme .metabiblioteca-header-searchbar {
  flex: 0 0 100%;
  width: 100%;
  max-width: none;
  margin: 0.25rem 0 0;
  padding-inline: clamp(0.75rem, 4vw, 4.5rem);
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-global-search {
  width: 100%;
  max-width: none;
  margin: 0 auto;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  width: 100%;
  max-width: none;
  min-height: 46px;
  padding: 0.24rem 0.32rem 0.24rem 1rem;
  gap: 0.35rem;
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.07), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header:focus-within {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, transparent), 0 14px 32px rgba(15, 23, 42, 0.12);
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
  min-height: 38px;
  font-size: clamp(0.9rem, 1.05vw, 0.98rem);
  font-weight: 620;
  padding-inline: 0.15rem;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear {
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  font-size: 1.25rem;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  box-shadow: 0 8px 20px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 24%, transparent);
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg {
  width: 0.95rem;
  height: 0.95rem;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete {
  top: calc(100% + 8px);
  border-radius: var(--metabiblioteca-radius-ui);
}

/* El texto visible "Buscar articulos por" no debe aparecer sobre las barras
 * redisenadas. Conservamos el label accesible para lectores de pantalla. */
.metabiblioteca-theme .metabiblioteca-search-sr-label,
.metabiblioteca-theme .metabiblioteca-global-search>label,
.metabiblioteca-theme .metabiblioteca-search-primary>label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 700px) {
  .metabiblioteca-theme .metabiblioteca-site-header {
    row-gap: 0.45rem;
  }

  .metabiblioteca-theme .metabiblioteca-header-searchbar {
    padding-inline: 0.65rem;
    margin-top: 0.15rem;
  }

  .metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
    min-height: 44px;
    padding-left: 0.85rem;
  }
}

/* ========================================================================== 
   40. Barra global de busqueda: ancho real completo y altura mas compacta
   --------------------------------------------------------------------------
   Correccion final solicitada: la barra del header no debe ocupar tanta altura,
   pero si debe estirarse a todo el ancho util del encabezado. Se aplica al
   contenedor directo del header para evitar que reglas previas de max-width,
   flex o utilidades Tailwind limiten la barra a media pagina.
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar {
  display: block;
  flex: 1 0 100%;
  flex-basis: 100%;
  align-self: stretch;
  width: 100%;
  max-width: none;
  min-width: 100%;
  margin: 0.15rem 0 0;
  padding-inline: clamp(0.65rem, 4vw, 4rem);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-global-search {
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  margin: 0 auto;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px 38px;
  width: 100%;
  max-width: none;
  min-width: 0;
  min-height: 40px;
  height: 40px;
  gap: 0.25rem;
  padding: 0.16rem 0.22rem 0.16rem 0.95rem;
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.85);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header:focus-within {
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 13%, transparent), 0 10px 26px rgba(15, 23, 42, 0.10);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
  min-height: 32px;
  height: 32px;
  padding: 0 0.25rem;
  font-size: clamp(0.84rem, 0.92vw, 0.94rem);
  line-height: 1.2;
  font-weight: 600;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  font-size: 1.15rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  padding: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 7px 18px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 22%, transparent);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg {
  width: 0.86rem;
  height: 0.86rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete {
  top: calc(100% + 0.45rem);
  left: 0;
  right: 0;
}

@media (max-width: 700px) {
  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar {
    padding-inline: 0.65rem;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
    min-height: 38px;
    height: 38px;
    grid-template-columns: minmax(0, 1fr) 30px 36px;
  }
}

/* ========================================================================== 
   41. Header: barra de busqueda alineada al ancho real del menu
   --------------------------------------------------------------------------
   Ajuste definitivo de maquetacion: el encabezado se organiza en filas de
   grid para que logo, utilidades, menu y buscador no compitan dentro del mismo
   flujo flex. La barra de busqueda ocupa la misma linea completa que el menu
   principal, con menor altura y con el boton perfectamente centrado.
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "utilities"
    "brand"
    "primary"
    "search";
  align-items: center;
  justify-items: stretch;
  gap: 0.15rem 0.5rem;
  padding-top: 0.15rem;
  padding-bottom: 0.15rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-brand {
  grid-area: brand;
  width: calc(100% + 4rem) !important;
  margin-left: -2rem !important;
  margin-right: -2rem !important;
  display: block;
  min-width: 0;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-utilities {
  grid-area: utilities;
  justify-self: end;
  align-self: center;
  width: auto;
  min-width: max-content;
  display: flex;
  align-items: center;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-primary {
  grid-area: primary;
  justify-self: center;
  width: 100%;
  max-width: none;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 0;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-primary .pkp_navigation_primary {
  width: auto;
  max-width: 100%;
  justify-content: center;
  flex-wrap: wrap;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar {
  grid-area: search;
  justify-self: stretch;
  align-self: center;
  display: block;
  width: 100%;
  max-width: none;
  min-width: 0;
  flex: none;
  margin: 0;
  padding-inline: clamp(1rem, 5.5vw, 4.75rem);
  box-sizing: border-box;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-global-search {
  width: 100%;
  max-width: none;
  margin: 0 auto;
  display: block;
  box-sizing: border-box;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  width: 100%;
  max-width: none;
  height: 36px;
  min-height: 36px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px 34px;
  align-items: center;
  gap: 0.22rem;
  padding: 0.12rem 0.18rem 0.12rem 0.92rem;
  border-radius: var(--metabiblioteca-radius-ui);
  box-sizing: border-box;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
  height: 30px;
  min-height: 30px;
  line-height: 30px;
  padding: 0 0.25rem;
  margin: 0;
  border: 0;
  box-shadow: none;
  font-size: clamp(0.8rem, 0.86vw, 0.9rem);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  align-self: center;
  justify-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  line-height: 1;
  vertical-align: middle;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear {
  width: 26px;
  height: 26px;
  min-width: 26px;
  min-height: 26px;
  font-size: 1.05rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg {
  display: block;
  width: 0.78rem;
  height: 0.78rem;
  margin: 0;
}

@media (max-width: 1023px) {
  .metabiblioteca-theme header.metabiblioteca-site-header {
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas:
      "mobile brand utilities"
      "search search search";
    gap: 0.45rem 0.75rem;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-mobile {
    grid-area: mobile;
    justify-self: start;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar {
    padding-inline: 0.75rem;
  }
}

@media (max-width: 640px) {
  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
    height: 34px;
    min-height: 34px;
    grid-template-columns: minmax(0, 1fr) 26px 32px;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
    height: 28px;
    min-height: 28px;
    line-height: 28px;
  }
}

/* ========================================================================== 
   42. Header: centrado real del boton circular de busqueda
   --------------------------------------------------------------------------
   Correccion puntual para el boton de la barra global. Algunos estilos previos
   del tema y clases utilitarias heredadas del icono SVG podian desplazar la
   lupa dentro del circulo. Se fuerza un modelo cuadrado con grid, sin padding,
   sin transformaciones y con un SVG normalizado a currentColor.
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  grid-template-columns: minmax(0, 1fr) 26px 34px;
  align-items: center;
  justify-items: center;
  column-gap: 0.25rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
  justify-self: stretch;
  align-self: center;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  inline-size: 34px;
  block-size: 34px;
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  max-width: 34px;
  max-height: 34px;
  display: grid;
  place-items: center;
  align-items: center;
  justify-items: center;
  align-self: center;
  justify-self: center;
  padding: 0;
  margin: 0;
  border: 0;
  line-height: 0;
  transform: none;
  vertical-align: middle;
  box-sizing: border-box;
  aspect-ratio: 1 / 1;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit:focus-visible {
  transform: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit .metabiblioteca-icon-search {
  inline-size: 15px;
  block-size: 15px;
  width: 15px;
  height: 15px;
  display: block;
  flex: 0 0 auto;
  place-self: center;
  align-self: center;
  justify-self: center;
  margin: 0;
  padding: 0;
  color: currentColor;
  stroke: currentColor;
  fill: none;
  overflow: visible;
  transform: none;
  pointer-events: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear {
  inline-size: 26px;
  block-size: 26px;
  width: 26px;
  height: 26px;
  min-width: 26px;
  min-height: 26px;
  display: grid;
  place-items: center;
  align-self: center;
  justify-self: center;
  line-height: 1;
  padding: 0;
  margin: 0;
  transform: none;
}

/* ==========================================================================
   43. Header: icono de busqueda centrado por CSS, sin depender del SVG
   --------------------------------------------------------------------------
   Correccion final del boton circular del buscador superior. El SVG puede verse
   opticamente desplazado por su viewBox, stroke y estilos heredados. Para evitar
   cualquier desalineacion, el boton del header dibuja la lupa con pseudo-elementos
   centrados matematicamente dentro del circulo y oculta el SVG solo en esta barra.
   No cambia la funcionalidad ni el formulario de busqueda de OJS.
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  grid-template-columns: minmax(0, 1fr) 26px 36px;
  align-items: center;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  position: relative;
  display: block;
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  max-width: 34px;
  max-height: 34px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  line-height: 0;
  font-size: 0;
  box-sizing: border-box;
  transform: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit:focus-visible {
  transform: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit .metabiblioteca-icon-search {
  display: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: var(--metabiblioteca-radius-ui);
  transform: translate(-62%, -62%);
  box-sizing: border-box;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 2px;
  border-radius: var(--metabiblioteca-radius-ui);
  background: currentColor;
  transform: translate(1px, 3px) rotate(45deg);
  transform-origin: left center;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__clear {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  min-width: 26px;
  min-height: 26px;
  padding: 0;
  margin: 0;
  line-height: 1;
  font-size: 1.08rem;
  transform: none;
}

/* ==========================================================================
   44. Hotfix: centrado exacto del boton submit del buscador en header
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  display: grid;
  place-items: center;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::before {
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::after {
  left: 50%;
  top: 50%;
  transform: translate(1px, 2px) rotate(45deg);
}

/* ==========================================================================
   45. Override final: boton contenido + lupa mas grande
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  grid-template-columns: minmax(0, 1fr) 24px 30px;
  column-gap: 0.2rem;
  padding-right: 0.14rem;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  max-width: 30px;
  max-height: 30px;
  justify-self: center;
  align-self: center;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::before {
  width: 12px;
  height: 12px;
  border-width: 2px;
  transform: translate(-56%, -56%);
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::after {
  width: 9px;
  height: 2px;
  transform: translate(1px, 4px) rotate(45deg);
}

/* ==========================================================================
   46. Usar icono nativo de la plantilla en submit del buscador
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::before,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::after {
  content: none;
  display: none;
}

.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit .metabiblioteca-icon-search {
  display: block;
  width: 16px;
  height: 16px;
  margin: 0;
  padding: 0;
  color: currentColor;
  stroke: currentColor;
  fill: none;
  transform: none;
}



/* ==========================================================================
   45. Curaduría editorial y sobriedad visual
   --------------------------------------------------------------------------
   Ajustes aplicados sobre la base estable del tema. Objetivo:
   - reducir sombras/hover/gradientes excesivos;
   - mantener sensación moderna sin perder sobriedad académica;
   - mejorar jerarquía editorial;
   - preparar páginas reales con contenido imperfecto.
   ========================================================================== */

:root,
.metabiblioteca-theme {
  --mb-ease-standard: cubic-bezier(.2, .8, .2, 1);
  --mb-shadow-subtle: 0 .35rem 1rem rgba(15, 23, 42, .045);
  --mb-shadow-soft: 0 .55rem 1.35rem rgba(15, 23, 42, .055);
  --mb-shadow-hover: 0 .7rem 1.65rem rgba(15, 23, 42, .07);
  --mb-border-soft: rgba(148, 163, 184, .28);
  --mb-editorial-surface: color-mix(in srgb, var(--metabiblioteca-color-05, #f8fafc) 94%, #fff 6%);
  --mb-editorial-tint: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 7%, transparent);
}

.dark,
html[data-bs-theme="dark"] {
  --mb-shadow-subtle: 0 .35rem 1rem rgba(0, 0, 0, .22);
  --mb-shadow-soft: 0 .55rem 1.35rem rgba(0, 0, 0, .28);
  --mb-shadow-hover: 0 .7rem 1.65rem rgba(0, 0, 0, .32);
  --mb-border-soft: rgba(100, 116, 139, .34);
  --mb-editorial-surface: color-mix(in srgb, var(--metabiblioteca-color-06, #020617) 90%, #fff 10%);
  --mb-editorial-tint: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 16%, transparent);
}

/* Sombra y movimiento más sobrios para portal académico */
.metabiblioteca-theme :where(.metabiblioteca-card,
  .metabiblioteca-journal-card,
  .metabiblioteca-section,
  .metabiblioteca-widget,
  .metabiblioteca-sidebar-stack > *,
  .pkp_block,
  .metabiblioteca-article-summary,
  .metabiblioteca-article-hero,
  .metabiblioteca-tabs__panel,
  .metabiblioteca-author-card,
  .metabiblioteca-keywords-panel,
  .metabiblioteca-article-carousel,
  .metabiblioteca-random-carousel,
  .metabiblioteca-search-intro,
  .metabiblioteca-search-page-form,
  .metabiblioteca-pdf-viewer-shell) {
  box-shadow: var(--mb-shadow-soft);
  border-color: var(--mb-border-soft);
}

.metabiblioteca-theme :where(.metabiblioteca-card:hover,
  .metabiblioteca-journal-card:hover,
  .metabiblioteca-section:hover,
  .metabiblioteca-widget:hover,
  .metabiblioteca-sidebar-stack > *:hover,
  .pkp_block:hover,
  .metabiblioteca-article-summary:hover,
  .metabiblioteca-author-card:hover) {
  transform: translateY(-1px);
  box-shadow: var(--mb-shadow-hover);
}

.metabiblioteca-theme :where(.metabiblioteca-card,
  .metabiblioteca-journal-card,
  .metabiblioteca-section,
  .metabiblioteca-widget,
  .pkp_block,
  .metabiblioteca-article-summary,
  .metabiblioteca-button,
  .obj_galley_link,
  .metabiblioteca-tabs__label,
  .metabiblioteca-search-input) {
  transition-duration: .18s;
  transition-timing-function: var(--mb-ease-standard);
}

/* Menos gradiente decorativo, más superficie editorial */
.metabiblioteca-theme :where(.metabiblioteca-section,
  .metabiblioteca-widget,
  .pkp_block,
  .metabiblioteca-article-summary,
  .metabiblioteca-search-intro,
  .metabiblioteca-search-page-form) {
  background-image: none;
  background-color: var(--mb-editorial-surface);
}

/* Hero editorial sobrio para portada de revista */
.metabiblioteca-editorial-hero {
  position: relative;
  overflow: hidden;
  margin: 0 0 1.35rem;
  padding: clamp(1.35rem, 3vw, 2.4rem);
  border: 1px solid var(--mb-border-soft);
  border-radius: var(--metabiblioteca-radius-ui);
  background:
    radial-gradient(circle at top right, var(--mb-editorial-tint), transparent 18rem),
    linear-gradient(135deg, var(--mb-editorial-surface), color-mix(in srgb, var(--mb-editorial-surface) 88%, var(--metabiblioteca-color-01, #0284c7) 12%));
  box-shadow: var(--mb-shadow-soft);
}

.metabiblioteca-editorial-hero::after {
  content: "";
  position: absolute;
  inset: auto -2rem -5rem auto;
  width: 16rem;
  height: 16rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  opacity: .55;
  pointer-events: none;
}

.metabiblioteca-editorial-hero__content {
  position: relative;
  z-index: 1;
  max-width: 58rem;
}

.metabiblioteca-editorial-hero__eyebrow {
  margin: 0 0 .55rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.metabiblioteca-editorial-hero__title {
  margin: 0;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-family: var(--metabiblioteca-font-02, Georgia, serif);
  font-size: clamp(1.9rem, 4vw, 3.35rem);
  line-height: 1.06;
  letter-spacing: -.025em;
}

.metabiblioteca-editorial-hero__description {
  max-width: 48rem;
  margin-top: .85rem;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-03, var(--metabiblioteca-font-01, system-ui));
  font-size: clamp(.98rem, 1.4vw, 1.12rem);
  line-height: 1.68;
}

.dark .metabiblioteca-editorial-hero__description,
html[data-bs-theme="dark"] .metabiblioteca-editorial-hero__description {
  color: rgba(226, 232, 240, .88);
}

.metabiblioteca-editorial-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  margin-top: 1.2rem;
}

/* Tipografía editorial seria: evitar fuentes informales por defecto */
.metabiblioteca-theme {
  --mb-font-editorial-title: var(--metabiblioteca-font-02, "Roboto Serif", "Cardo", Georgia, serif);
  --mb-font-editorial-body: var(--metabiblioteca-font-01, "Source Sans 3", system-ui, -apple-system, "Segoe UI", sans-serif);
}

.metabiblioteca-theme :where(h1, h2, h3, h4, h5, h6, .page_title, .metabiblioteca-section__header h2, .metabiblioteca-article-hero__title) {
  font-family: var(--mb-font-editorial-title);
}

.metabiblioteca-theme :where(body, p, li, input, select, textarea, button) {
  font-family: var(--mb-font-editorial-body);
}

/* Jerarquía y contenido imperfecto */
.metabiblioteca-theme :where(.page_title, .metabiblioteca-article-hero__title, .metabiblioteca-section__header h2) {
  overflow-wrap: anywhere;
  hyphens: auto;
}

.metabiblioteca-theme :where(.metabiblioteca-article-summary__title, .metabiblioteca-journal-card__title) {
  overflow-wrap: anywhere;
  line-height: 1.24;
}

.metabiblioteca-theme :where(.metabiblioteca-author-list, .metabiblioteca-keyword-list, .metabiblioteca-download-list) {
  min-width: 0;
}

.metabiblioteca-theme :where(.metabiblioteca-doi-card__link, .metabiblioteca-reference-list, .metabiblioteca-sidebar-stack a, .pkp_block a) {
  overflow-wrap: anywhere;
  word-break: normal;
}

/* Portadas faltantes o imágenes desproporcionadas */
.metabiblioteca-theme :where(.metabiblioteca-article-cover-card__image, .metabiblioteca-article-summary__media img, .issue_cover img, .cover img) {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 7%, transparent);
  object-fit: cover;
}

.metabiblioteca-theme :where(.metabiblioteca-article-summary__media, .metabiblioteca-article-cover-card__image) {
  border-color: var(--mb-border-soft);
}

/* Bloques laterales: menos brillo, más consistencia */
.metabiblioteca-theme :where(.metabiblioteca-sidebar-stack > *, .pkp_block, .metabiblioteca-widget) {
  background: var(--mb-editorial-surface);
}

.metabiblioteca-theme :where(.metabiblioteca-sidebar-stack .title, .pkp_block .title, .metabiblioteca-widget__title) {
  box-shadow: none;
}

/* Formularios y login/registro: enfoque claro, menos efecto */
.metabiblioteca-theme :where(input, select, textarea, .metabiblioteca-search-input) {
  box-shadow: none;
}

.metabiblioteca-theme :where(input:focus, select:focus, textarea:focus, .metabiblioteca-search-input:focus) {
  box-shadow: 0 0 0 .18rem color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 18%, transparent);
}

/* Accesibilidad: reducir movimiento cuando el sistema lo solicita */
@media (prefers-reduced-motion: reduce) {

  .metabiblioteca-theme *,
  .metabiblioteca-theme *::before,
  .metabiblioteca-theme *::after {
    transition-duration: .01ms;
    animation-duration: .01ms;
    scroll-behavior: auto;
  }
}

@media (max-width: 768px) {
  .metabiblioteca-editorial-hero {
    padding: 1.15rem;
  }

  .metabiblioteca-editorial-hero__actions {
    flex-direction: column;
  }

  .metabiblioteca-editorial-hero__actions .metabiblioteca-button {
    width: 100%;
    justify-content: center;
  }
}



/* ==========================================================================
   46. Corrección de capas para dropdowns del menú principal
   --------------------------------------------------------------------------
   Evita que los dropdowns queden visualmente detrás/debajo de la fila del
   buscador. Bootstrap maneja dropdowns como overlays; por eso el menú debe
   tener una capa superior a la barra de búsqueda y esta no debe crear un
   stacking context que lo tape.
   ========================================================================== */

.metabiblioteca-site-header {
  isolation: isolate;
  overflow: visible;
}

.metabiblioteca-header-primary,
.metabiblioteca-header-primary .pkp_navigation_primary,
#navigationPrimary {
  position: relative;
  z-index: 80;
  overflow: visible;
}

.metabiblioteca-header-searchbar {
  position: relative;
  z-index: 20;
}

.metabiblioteca-header-primary #navigationPrimary>li,
.metabiblioteca-header-primary .pkp_navigation_primary>li {
  position: relative;
  z-index: 81;
}

.metabiblioteca-header-primary #navigationPrimary>li:hover,
.metabiblioteca-header-primary #navigationPrimary>li:focus-within,
.metabiblioteca-header-primary .pkp_navigation_primary>li:hover,
.metabiblioteca-header-primary .pkp_navigation_primary>li:focus-within {
  z-index: 120;
}

.metabiblioteca-header-primary #navigationPrimary ul,
.metabiblioteca-header-primary .pkp_navigation_primary ul,
.metabiblioteca-header-primary .dropdown-menu,
#navigationPrimary .dropdown-menu {
  position: absolute;
  top: calc(100% + .45rem);
  left: 0;
  right: auto;
  z-index: 130;
  min-width: 15rem;
  max-width: min(24rem, calc(100vw - 2rem));
  margin: 0;
  padding: .45rem;
  overflow: visible;
  background: var(--mb-editorial-surface, var(--mb-surface, #fff));
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: var(--mb-shadow-hover, 0 .7rem 1.65rem rgba(15, 23, 42, .07));
}

.metabiblioteca-header-primary #navigationPrimary>li:nth-last-child(-n+2)>ul,
.metabiblioteca-header-primary .pkp_navigation_primary>li:nth-last-child(-n+2)>ul,
.metabiblioteca-header-primary #navigationPrimary>li:nth-last-child(-n+2)>.dropdown-menu,
.metabiblioteca-header-primary .pkp_navigation_primary>li:nth-last-child(-n+2)>.dropdown-menu {
  left: auto;
  right: 0;
}

.metabiblioteca-header-primary #navigationPrimary ul li,
.metabiblioteca-header-primary .pkp_navigation_primary ul li {
  display: block;
  width: 100%;
}

.metabiblioteca-header-primary #navigationPrimary ul a,
.metabiblioteca-header-primary .pkp_navigation_primary ul a,
.metabiblioteca-header-primary .dropdown-item {
  display: block;
  width: 100%;
  padding: .62rem .78rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  text-decoration: none;
  font-weight: 700;
  line-height: 1.25;
  white-space: normal;
}

.metabiblioteca-header-primary #navigationPrimary ul a:hover,
.metabiblioteca-header-primary #navigationPrimary ul a:focus,
.metabiblioteca-header-primary .pkp_navigation_primary ul a:hover,
.metabiblioteca-header-primary .pkp_navigation_primary ul a:focus,
.metabiblioteca-header-primary .dropdown-item:hover,
.metabiblioteca-header-primary .dropdown-item:focus {
  color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

/* El autocompletado del buscador debe quedar por encima del contenido de página,
   pero por debajo de los dropdowns del menú cuando ambos están activos. */
.metabiblioteca-search-autocomplete {
  z-index: 70;
}

/* Responsive: dentro del menú lateral no usamos overlays flotantes. */
@media (max-width: 1023.98px) {
  .metabiblioteca-header-primary {
    display: none;
  }

  #navigationPrimaryMobile,
  #navigationPrimarySide {
    overflow: visible;
  }

  #navigationPrimaryMobile ul,
  #navigationPrimarySide ul {
    position: static;
    min-width: 0;
    max-width: none;
    margin-top: .35rem;
    box-shadow: none;
  }
}



/* ==========================================================================
   47. Puente hover para dropdowns del menú principal
   --------------------------------------------------------------------------
   Corrige el cierre prematuro del submenu cuando el puntero baja desde el
   botón hacia la lista. El problema lo causa el espacio vertical entre el
   item padre y el dropdown. El pseudo-elemento ::before crea una zona
   invisible que mantiene el hover/focus mientras el cursor cruza ese espacio.
   ========================================================================== */

.metabiblioteca-header-primary #navigationPrimary>li,
.metabiblioteca-header-primary .pkp_navigation_primary>li {
  position: relative;
}

.metabiblioteca-header-primary #navigationPrimary>li:has(> ul)::before,
.metabiblioteca-header-primary #navigationPrimary>li:has(> .dropdown-menu)::before,
.metabiblioteca-header-primary .pkp_navigation_primary>li:has(> ul)::before,
.metabiblioteca-header-primary .pkp_navigation_primary>li:has(> .dropdown-menu)::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: .65rem;
  z-index: 125;
  background: transparent;
  pointer-events: auto;
}

/* Fallback para navegadores antiguos sin :has(): se aplica a todos los items
   del menú primario. No afecta visualmente porque el puente es invisible. */
@supports not selector(li:has(> ul)) {

  .metabiblioteca-header-primary #navigationPrimary>li::before,
  .metabiblioteca-header-primary .pkp_navigation_primary>li::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: .65rem;
    z-index: 125;
    background: transparent;
    pointer-events: auto;
  }
}

/* Mantiene visible el submenu tanto al pasar por el botón, como por el puente,
   como al entrar al propio dropdown. */
.metabiblioteca-header-primary #navigationPrimary>li:hover>ul,
.metabiblioteca-header-primary #navigationPrimary>li:focus-within>ul,
.metabiblioteca-header-primary #navigationPrimary>li:hover>.dropdown-menu,
.metabiblioteca-header-primary #navigationPrimary>li:focus-within>.dropdown-menu,
.metabiblioteca-header-primary .pkp_navigation_primary>li:hover>ul,
.metabiblioteca-header-primary .pkp_navigation_primary>li:focus-within>ul,
.metabiblioteca-header-primary .pkp_navigation_primary>li:hover>.dropdown-menu,
.metabiblioteca-header-primary .pkp_navigation_primary>li:focus-within>.dropdown-menu {
  display: block;
  visibility: visible;
  opacity: 1;
}

/* El dropdown queda pegado visualmente al puente. Si se cambia esta distancia,
   también debe ajustarse la altura del ::before. */
.metabiblioteca-header-primary #navigationPrimary ul,
.metabiblioteca-header-primary .pkp_navigation_primary ul,
.metabiblioteca-header-primary .dropdown-menu,
#navigationPrimary .dropdown-menu {
  top: calc(100% + .45rem);
}

/* Evita que el buscador capture el puntero justo en la franja de descenso. */
.metabiblioteca-header-primary:hover~.metabiblioteca-header-searchbar,
.metabiblioteca-header-primary:focus-within~.metabiblioteca-header-searchbar {
  z-index: 10;
}

.metabiblioteca-header-primary:hover,
.metabiblioteca-header-primary:focus-within {
  z-index: 140;
}

/* Dentro de paneles móviles/laterales no debe existir el puente hover. */
@media (max-width: 1023.98px) {

  #navigationPrimaryMobile>li::before,
  #navigationPrimarySide>li::before {
    content: none;
  }
}



/* ==========================================================================
   48. Dropdown persistente con retardo real
   --------------------------------------------------------------------------
   La corrección anterior solo cubría CSS. El helper real del tema cerraba el
   menú con `@mouseleave` en el botón disparador, por eso se perdía antes de
   llegar al submenu. Ahora el estado se controla desde el contenedor padre y
   se mantiene abierto con un retardo corto al salir.
   ========================================================================== */

.metabiblioteca-dropdown {
  position: relative;
}

.metabiblioteca-dropdown__body {
  z-index: 160;
}

/* Área invisible entre el botón y el submenu para que el puntero no salga del
   componente durante el descenso. */
.metabiblioteca-dropdown__body::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .75rem;
  background: transparent;
  pointer-events: auto;
}

.metabiblioteca-dropdown__trigger {
  position: relative;
  z-index: 161;
}

.metabiblioteca-header-primary .metabiblioteca-dropdown:hover,
.metabiblioteca-header-primary .metabiblioteca-dropdown:focus-within {
  z-index: 170;
}

/* En pantallas táctiles o menús laterales se evita depender del hover. */
@media (hover: none),
(max-width: 1023.98px) {
  .metabiblioteca-dropdown__body::before {
    content: none;
  }
}



/* ==========================================================================
   49. Dropdown CSS-only sin cierre por Alpine
   --------------------------------------------------------------------------
   Corrección completa: el dropdown del menú principal ya no depende de
   eventos mouseleave/mouseenter de Alpine. El submenu se muestra por CSS
   con :hover y :focus-within, pegado al disparador sin gap vertical.
   ========================================================================== */

.metabiblioteca-header-primary .metabiblioteca-dropdown {
  position: relative;
  display: inline-block;
  z-index: 150;
}

/* Sin gap: el submenu empieza prácticamente tocando el botón. */
.metabiblioteca-header-primary .metabiblioteca-dropdown__body {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  right: auto;
  margin: 0;
  z-index: 300;
  min-width: max(15rem, 100%);
  max-width: min(26rem, calc(100vw - 2rem));
  padding: .45rem;
  background: var(--mb-editorial-surface, var(--metabiblioteca-color-05, #fff));
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: var(--mb-shadow-hover, 0 .7rem 1.65rem rgba(15, 23, 42, .12));
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
}

/* Últimos elementos abren hacia la izquierda para no cortarse. */
.metabiblioteca-header-primary #navigationPrimary>li:nth-last-child(-n+2) .metabiblioteca-dropdown__body,
.metabiblioteca-header-primary .pkp_navigation_primary>li:nth-last-child(-n+2) .metabiblioteca-dropdown__body {
  left: auto;
  right: 0;
}

/* Estado abierto. CSS puro, sin Alpine. */
.metabiblioteca-header-primary .metabiblioteca-dropdown:hover>.metabiblioteca-dropdown__body,
.metabiblioteca-header-primary .metabiblioteca-dropdown:focus-within>.metabiblioteca-dropdown__body {
  display: block;
}

/* Puente adicional, por si algún navegador calcula 1px de separación. */
.metabiblioteca-header-primary .metabiblioteca-dropdown__body::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .45rem;
  background: transparent;
  pointer-events: auto;
}

/* El trigger sigue por encima del header, pero debajo del panel. */
.metabiblioteca-header-primary .metabiblioteca-dropdown__trigger {
  position: relative;
  z-index: 250;
}

/* Items internos con área de clic completa. */
.metabiblioteca-header-primary .metabiblioteca-dropdown__body ul {
  display: grid;
  gap: .15rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.metabiblioteca-header-primary .metabiblioteca-dropdown__body li {
  display: block;
  width: 100%;
  margin: 0;
}

.metabiblioteca-header-primary .metabiblioteca-dropdown__body a {
  display: block;
  width: 100%;
  padding: .65rem .75rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  text-decoration: none;
  font-weight: 700;
  line-height: 1.25;
  white-space: normal;
}

.metabiblioteca-header-primary .metabiblioteca-dropdown__body a:hover,
.metabiblioteca-header-primary .metabiblioteca-dropdown__body a:focus {
  color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

/* Anula reglas anteriores que intentaban mover cualquier ul del menú principal
   y generaban gaps o conflictos de stacking. */
.metabiblioteca-header-primary #navigationPrimary ul.metabiblioteca-dropdown__body,
.metabiblioteca-header-primary .pkp_navigation_primary ul.metabiblioteca-dropdown__body {
  top: calc(100% - 1px);
}

/* En responsive/lateral no usamos dropdown flotante. */
@media (max-width: 1023.98px) {
  .metabiblioteca-header-primary .metabiblioteca-dropdown__body {
    position: static;
    display: block;
    min-width: 0;
    max-width: none;
    box-shadow: none;
    margin-top: .35rem;
  }

  .metabiblioteca-header-primary .metabiblioteca-dropdown__body::before {
    content: none;
  }
}



/* ==========================================================================
   50. Corrección estructural definitiva del menú primario de escritorio
   --------------------------------------------------------------------------
   Se reemplaza el dropdown legacy generado por helpers por un markup directo:
   li > a + ul. Así el submenu queda anclado al item real del menú y no al
   helper previo. Esto elimina el gap funcional y evita cierres prematuros.
   ========================================================================== */

.metabiblioteca-header-primary {
  overflow: visible;
  position: relative;
  z-index: 140;
}

.metabiblioteca-primary-desktop-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .35rem;
  list-style: none;
  margin: 0;
  padding: 0;
  overflow: visible;
}

.metabiblioteca-primary-desktop-nav__item {
  position: relative;
  list-style: none;
  overflow: visible;
}

.metabiblioteca-primary-desktop-nav__link {
  position: relative;
  z-index: 150;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .3rem;
  min-height: 2.125rem;
  height: 2.125rem;
  padding: 0 .75rem;
  border: none;
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  text-decoration: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 600;
  line-height: 1;
  letter-spacing: .01em;
  box-shadow: none;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), background-color .2s cubic-bezier(0.4, 0, 0.2, 1);
}

.metabiblioteca-primary-desktop-nav__link:hover,
.metabiblioteca-primary-desktop-nav__link:focus {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #dc2626);
}

.metabiblioteca-primary-desktop-nav__caret {
  font-size: .62rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
}

/* Submenu pegado al botón, sin hueco real */
.metabiblioteca-primary-desktop-nav__submenu {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  left: 0;
  z-index: 220;
  min-width: max(13rem, 100%);
  max-width: min(24rem, calc(100vw - 2rem));
  margin: 0;
  padding: .35rem;
  list-style: none;
  background: var(--mb-editorial-surface, #fff);
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: var(--mb-shadow-hover, 0 .5rem 1.25rem rgba(15, 23, 42, .08));
}

/* Últimos items abren hacia adentro */
.metabiblioteca-primary-desktop-nav__item:nth-last-child(-n+2)>.metabiblioteca-primary-desktop-nav__submenu {
  left: auto;
  right: 0;
}

.metabiblioteca-primary-desktop-nav__item:hover>.metabiblioteca-primary-desktop-nav__submenu,
.metabiblioteca-primary-desktop-nav__item:focus-within>.metabiblioteca-primary-desktop-nav__submenu {
  display: block;
}

/* Puente invisible para descenso del puntero */
.metabiblioteca-primary-desktop-nav__submenu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .45rem;
  background: transparent;
}

/* Items del submenu */
.metabiblioteca-primary-desktop-nav__submenu-item {
  display: block;
  width: 100%;
  list-style: none;
}

.metabiblioteca-primary-desktop-nav__submenu-link {
  display: block;
  width: 100%;
  padding: .45rem .65rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  text-decoration: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 600;
  line-height: 1.25;
  white-space: normal;
}

.metabiblioteca-primary-desktop-nav__submenu-link:hover,
.metabiblioteca-primary-desktop-nav__submenu-link:focus {
  color: var(--metabiblioteca-color-01, #0284c7);
  -webkit-text-fill-color: currentColor;
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

/* El buscador queda por debajo del menú */
.metabiblioteca-header-searchbar {
  position: relative;
  z-index: 50;
}

.metabiblioteca-search-autocomplete {
  z-index: 120;
}

/* Ocultar navegación desktop antigua si llega a seguir saliendo por otro render */
.metabiblioteca-header-primary .metabiblioteca-dropdown,
.metabiblioteca-header-primary .dropdown-menu {
  display: none;
}

/* Responsive: este menú de escritorio desaparece por completo */
@media (max-width: 1023.98px) {
  .metabiblioteca-primary-desktop-nav {
    display: none;
  }
}



/* ==========================================================================
   51. Visibilidad de textos del menú + menú de usuario estructural
   --------------------------------------------------------------------------
   - fuerza color visible en los botones del menú primario
   - reescribe visualmente el menú de usuario con estructura directa
   - elimina dependencia del helper dropdown legacy en la cabecera
   ========================================================================== */

/* Textos del menú principal estilo navegación */
.metabiblioteca-primary-desktop-nav__link,
.metabiblioteca-primary-desktop-nav__link span,
.metabiblioteca-primary-desktop-nav__caret {
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  opacity: 1;
  text-shadow: none;
}

.metabiblioteca-primary-desktop-nav__link {
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 600;
  line-height: 1.3;
  background: transparent;
  border: none;
  box-shadow: none;
}

.metabiblioteca-primary-desktop-nav__link:hover,
.metabiblioteca-primary-desktop-nav__link:hover span,
.metabiblioteca-primary-desktop-nav__link:focus,
.metabiblioteca-primary-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-01, #0284c7);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-primary-desktop-nav__link,
html.dark .metabiblioteca-primary-desktop-nav__link span,
html.dark .metabiblioteca-primary-desktop-nav__caret {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-primary-desktop-nav__link:hover,
html.dark .metabiblioteca-primary-desktop-nav__link:hover span,
html.dark .metabiblioteca-primary-desktop-nav__link:focus,
html.dark .metabiblioteca-primary-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-02, #38bdf8);
  -webkit-text-fill-color: currentColor;
}

/* Menú de usuario desktop estilo navegación */
.metabiblioteca-user-desktop-nav {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: .35rem !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.metabiblioteca-user-desktop-nav__item {
  position: relative !important;
  list-style: none !important;
  display: inline-block !important;
  width: auto !important;
  flex: 0 0 auto !important;
}

.metabiblioteca-user-desktop-nav__link {
  position: relative;
  z-index: 180;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .25rem;
  min-height: 2.125rem;
  height: 2.125rem;
  width: auto;
  min-width: auto;
  padding: 0 .625rem;
  border: none;
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  text-decoration: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 600;
  line-height: 1;
  box-shadow: none;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), background-color .2s cubic-bezier(0.4, 0, 0.2, 1);
}

.metabiblioteca-user-desktop-nav__link span,
.metabiblioteca-user-desktop-nav__caret {
  color: inherit;
  -webkit-text-fill-color: currentColor;
  opacity: 1;
}

.metabiblioteca-user-desktop-nav__link:hover,
.metabiblioteca-user-desktop-nav__link:focus {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #dc2626);
}

html.dark .metabiblioteca-user-desktop-nav__link {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-user-desktop-nav__link:hover,
html.dark .metabiblioteca-user-desktop-nav__link:focus {
  color: var(--metabiblioteca-color-02, #38bdf8);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 20%, transparent);
  -webkit-text-fill-color: currentColor;
}

.metabiblioteca-user-desktop-nav__submenu {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  right: 0;
  left: auto;
  z-index: 260;
  min-width: 13rem;
  max-width: min(22rem, calc(100vw - 2rem));
  margin: 0;
  padding: .45rem;
  list-style: none;
  background: var(--mb-editorial-surface, #fff);
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: var(--mb-shadow-hover, 0 .7rem 1.65rem rgba(15, 23, 42, .07));
}

.metabiblioteca-user-desktop-nav__item:hover>.metabiblioteca-user-desktop-nav__submenu,
.metabiblioteca-user-desktop-nav__item:focus-within>.metabiblioteca-user-desktop-nav__submenu {
  display: block;
}

.metabiblioteca-user-desktop-nav__submenu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .4rem;
  background: transparent;
}

.metabiblioteca-user-desktop-nav__submenu-item {
  display: block;
  width: 100%;
}

.metabiblioteca-user-desktop-nav__submenu-link {
  display: block;
  width: 100%;
  padding: .62rem .75rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  text-decoration: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-weight: 600;
  line-height: 1.25;
}

.metabiblioteca-user-desktop-nav__submenu-link:hover,
.metabiblioteca-user-desktop-nav__submenu-link:focus {
  color: var(--metabiblioteca-color-01, #0284c7);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

/* Oculta dropdown user legacy dentro de utilities si llega a persistir */
.metabiblioteca-header-utilities .metabiblioteca-dropdown {
  display: none;
}

@media (max-width: 767.98px) {
  .metabiblioteca-user-desktop-nav {
    display: none;
  }
}



/* ==========================================================================
   52. Menús de cabecera: persistencia y capas
   --------------------------------------------------------------------------
   Ajuste final y de alta especificidad para:
   - mantener visibles los textos del menú primario;
   - evitar que el submenu del usuario quede detrás del buscador;
   - eliminar el cierre al bajar el puntero al submenu del usuario;
   - asegurar overflow visible en toda la zona superior.
   ========================================================================== */

.metabiblioteca-site-header,
.metabiblioteca-site-header .container,
.metabiblioteca-site-header .container-fluid,
.metabiblioteca-site-header .container-xl,
.metabiblioteca-site-header .container-xxl {
  overflow: visible;
  isolation: isolate;
}

.metabiblioteca-header-brand,
.metabiblioteca-header-primary,
.metabiblioteca-header-utilities,
.metabiblioteca-header-searchbar {
  overflow: visible;
  position: relative;
}

.metabiblioteca-header-primary {
  z-index: 240;
}

.metabiblioteca-header-utilities {
  z-index: 260;
}

.metabiblioteca-header-searchbar {
  z-index: 120;
}

/* Menú primario: textos y estilo navegación */
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link,
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link span,
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__caret {
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  opacity: 1;
  visibility: visible;
  mix-blend-mode: normal;
  background: transparent;
  border: none;
  box-shadow: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:hover,
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:hover span,
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:focus,
.metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link,
html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link span,
html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__caret {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:hover,
html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:hover span,
html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:focus,
html.dark .metabiblioteca-header-primary .metabiblioteca-primary-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-02, #38bdf8);
  -webkit-text-fill-color: currentColor;
}

/* User menu desktop always above search row */
.metabiblioteca-header-utilities #navigationUser.metabiblioteca-user-desktop-nav,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav {
  position: relative;
  z-index: 265;
  display: flex;
  overflow: visible;
}

.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__item {
  position: relative;
  z-index: 266;
  overflow: visible;
}

.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link span,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__caret {
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  opacity: 1;
  visibility: visible;
  background: transparent;
  border: none;
  box-shadow: none;
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-family: var(--metabiblioteca-font-01, inherit);
}

.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:hover,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:hover span,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:focus,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link,
html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link span,
html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__caret {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: currentColor;
}

html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:hover,
html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:hover span,
html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:focus,
html.dark .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__link:focus span {
  color: var(--metabiblioteca-color-02, #38bdf8);
  -webkit-text-fill-color: currentColor;
}

/* Panel del submenu pegado al botón y por encima de todo */
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  right: 0;
  left: auto;
  z-index: 320;
  min-width: 14rem;
  max-width: min(24rem, calc(100vw - 1.5rem));
  margin: 0;
  padding: .45rem;
  list-style: none;
  background: var(--mb-editorial-surface, #fff);
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui);
  box-shadow: 0 18px 50px rgba(15, 23, 42, .18);
  overflow: visible;
  pointer-events: auto;
}

/* Abre con hover/focus del item entero */
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__item:hover>.metabiblioteca-user-desktop-nav__submenu,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__item:focus-within>.metabiblioteca-user-desktop-nav__submenu {
  display: block;
}

/* Puente invisible para que no se pierda al bajar el puntero */
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .55rem;
  background: transparent;
  pointer-events: auto;
}

/* Área de clic completa dentro del submenu */
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu-item {
  display: block;
  width: 100%;
}

.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu-link {
  display: block;
  width: 100%;
  padding: .65rem .78rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: var(--metabiblioteca-color-03, #0f172a);
  text-decoration: none;
  font-weight: 700;
  line-height: 1.25;
}

.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu-link:hover,
.metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu-link:focus {
  color: var(--metabiblioteca-color-01, #0284c7);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 10%, transparent);
}

/* El autocompletado del buscador queda debajo de los menús de cabecera */
.metabiblioteca-search-autocomplete {
  z-index: 180;
}

@media (max-width: 1023.98px) {
  .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav {
    display: none;
  }
}



/* ==========================================================================
   53. Sistema de radios reducido
   --------------------------------------------------------------------------
   Curaduría de bordes redondeados basada en buenas prácticas de consistencia:
   - detalle pequeño: 2px
   - controles interactivos: 4px
   - cards, dropdowns y contenedores: 6px
   - superficies grandes: 8px
   Solo los elementos que deben ser intencionalmente circulares conservan radio completo.
   ========================================================================== */

:root,
.metabiblioteca-theme {
  --mb-radius-2xs: var(--metabiblioteca-radius-ui);
  --mb-radius-xs: var(--metabiblioteca-radius-ui);
  --mb-radius-sm: var(--metabiblioteca-radius-ui);
  --mb-radius-md: var(--metabiblioteca-radius-ui);
  --mb-radius-lg: var(--metabiblioteca-radius-ui);
  --mb-radius-xl: var(--metabiblioteca-radius-ui);
  --mb-radius-2xl: var(--metabiblioteca-radius-ui);
  --mb-radius-pill: var(--metabiblioteca-radius-ui);
}

/* Radios base de Bootstrap/OJS */
.metabiblioteca-theme,
:root {
  --bs-border-radius: var(--metabiblioteca-radius-ui);
  --bs-border-radius-sm: var(--metabiblioteca-radius-ui);
  --bs-border-radius-lg: var(--metabiblioteca-radius-ui);
  --bs-border-radius-xl: var(--metabiblioteca-radius-ui);
  --bs-border-radius-xxl: var(--metabiblioteca-radius-ui);
  --bs-border-radius-pill: var(--metabiblioteca-radius-ui);
}

/* Controles interactivos */
.metabiblioteca-theme :where(.btn,
  button,
  input,
  select,
  textarea,
  .form-control,
  .form-select,
  .metabiblioteca-search-input,
  .metabiblioteca-search-combobox,
  .metabiblioteca-search-combobox__clear,
  .metabiblioteca-search-combobox__submit,
  .metabiblioteca-primary-desktop-nav__link,
  .metabiblioteca-user-desktop-nav__link,
  .metabiblioteca-tabs__label,
  .obj_galley_link,
  .cmp_button,
  .pkp_button) {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Cards, paneles y contenedores */
.metabiblioteca-theme :where(.card,
  .metabiblioteca-card,
  .metabiblioteca-widget,
  .metabiblioteca-section,
  .metabiblioteca-journal-card,
  .metabiblioteca-editorial-hero,
  .metabiblioteca-article-summary,
  .metabiblioteca-article-hero,
  .metabiblioteca-author-card,
  .metabiblioteca-keywords-panel,
  .metabiblioteca-search-intro,
  .metabiblioteca-search-page-form,
  .metabiblioteca-tabs__panel,
  .metabiblioteca-sidebar-stack > *,
  .pkp_block,
  .metabiblioteca-pdf-viewer-shell,
  .metabiblioteca-pdf-shell,
  .metabiblioteca-random-carousel,
  .metabiblioteca-article-carousel,
  .metabiblioteca-offcanvas-section,
  .offcanvas,
  .modal-content,
  .dropdown-menu,
  .metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-user-desktop-nav__submenu,
  .metabiblioteca-search-autocomplete) {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Elementos de detalle */
.metabiblioteca-theme :where(.badge,
  .metabiblioteca-keyword-list li,
  .metabiblioteca-author-card__role,
  .metabiblioteca-primary-desktop-nav__submenu-link,
  .metabiblioteca-user-desktop-nav__submenu-link,
  .dropdown-item) {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Grandes superficies */
.metabiblioteca-theme :where(.container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl,
  .page,
  .pkp_page_index,
  .page_index_journal,
  .metabiblioteca-page-shell) {
  border-radius: 0;
}

/* Componentes antes demasiado capsulares */
.metabiblioteca-theme :where(.metabiblioteca-search-combobox,
  .metabiblioteca-search-group,
  .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link,
  .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link) {
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-theme :where(.metabiblioteca-search-combobox__submit,
  .metabiblioteca-search-combobox__clear) {
  border-radius: 0;
}

.metabiblioteca-theme :where(.metabiblioteca-search-combobox > *:first-child) {
  border-top-left-radius: var(--metabiblioteca-radius-ui);
  border-bottom-left-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-theme :where(.metabiblioteca-search-combobox > *:last-child) {
  border-top-right-radius: var(--metabiblioteca-radius-ui);
  border-bottom-right-radius: var(--metabiblioteca-radius-ui);
}

/* Submenus y overlays más rectos */
.metabiblioteca-theme :where(.metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-user-desktop-nav__submenu,
  .dropdown-menu,
  .metabiblioteca-search-autocomplete) {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* PDF, tablas y bloques internos */
.metabiblioteca-theme :where(table,
  pre,
  code,
  iframe,
  .metabiblioteca-pdf-frame-wrap iframe,
  .metabiblioteca-article-summary__media,
  .metabiblioteca-article-cover-card__image,
  .metabiblioteca-article-card) {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Solo lo que debe ser verdaderamente circular conserva radio completo */
.metabiblioteca-theme :where(.avatar,
  .pkp_dropdown__button--avatar,
  .metabiblioteca-theme-selector,
  .metabiblioteca-theme-selector button,
  .metabiblioteca-theme-toggle__button,
  .metabiblioteca-article-carousel__button,
  .metabiblioteca-random-carousel__button) {
  border-radius: var(--metabiblioteca-radius-ui);
}



/* ==========================================================================
   54. Eliminación de destellos y brillos decorativos
   --------------------------------------------------------------------------
   Mejora de legibilidad: se eliminan overlays radiales, gradientes internos,
   filtros y efectos de "shine" que compiten con texto/iconos en botones y
   acciones clave.
   ========================================================================== */

/* Desactiva el brillo radial interactivo en tarjetas y elementos con tilt */
.metabiblioteca-card-tilt::after,
.metabiblioteca-card-tilt:hover::after,
.metabiblioteca-card-tilt:focus-within::after {
  opacity: 0;
  background: none;
  content: none;
}

/* Botones principales y galeradas: fondo sólido, sin brillo ni gradiente */
.metabiblioteca-theme :where(.metabiblioteca-button--primary,
  .cmp_button,
  .obj_galley_link,
  a.obj_galley_link,
  .galley-link,
  input[type="submit"],
  input[type="button"],
  button[type="submit"],
  .metabiblioteca-pdf-toolbar__download,
  .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"]) {
  background-image: none;
  background: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 8px 18px rgba(15, 23, 42, .08);
  text-shadow: none;
  filter: none;
  -webkit-filter: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.metabiblioteca-theme :where(.metabiblioteca-button--primary:hover,
  .cmp_button:hover,
  .obj_galley_link:hover,
  a.obj_galley_link:hover,
  .galley-link:hover,
  input[type="submit"]:hover,
  input[type="button"]:hover,
  button[type="submit"]:hover,
  .metabiblioteca-pdf-toolbar__download:hover,
  .metabiblioteca-pdf-toolbar__reading[aria-pressed="true"]:hover) {
  background-image: none;
  background: var(--metabiblioteca-color-02, #0ea5e9);
  box-shadow: 0 10px 22px rgba(15, 23, 42, .10);
}

/* Íconos de PDF/botones sin realce adicional que lave el contraste */
.metabiblioteca-theme :where(.obj_galley_link img,
  .galley-link img,
  .metabiblioteca-button--primary img,
  .cmp_button img,
  .obj_galley_link svg,
  .galley-link svg,
  .metabiblioteca-button--primary svg,
  .cmp_button svg) {
  filter: none;
  -webkit-filter: none;
  opacity: 1;
  text-shadow: none;
}

/* Títulos de widget y botones internos del sidebar: superficie sólida */
.metabiblioteca-theme :where(.metabiblioteca-widget__title,
  .pkp_block .title,
  .metabiblioteca-side-card__title,
  .metabiblioteca-article-side-card__title) {
  background-image: none;
  box-shadow: none;
}

/* PDF toolbar: menos vidrio decorativo, más claridad */
.metabiblioteca-pdf-toolbar {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .10);
}



/* ==========================================================================
   55. Buscador superior con esquinas rectificadas
   --------------------------------------------------------------------------
   Bootstrap permite controlar el radio de bordes con sus utilidades y escala
   de radius. Para acercarlo visualmente a los botones del header, el buscador
   deja de usar radio grande/capsular y pasa a una geometría casi recta con
   esquinas suaves.
   ========================================================================== */

.metabiblioteca-header-searchbar,
.metabiblioteca-header-searchbar form,
.metabiblioteca-header-search-control,
.metabiblioteca-search-combobox,
.metabiblioteca-search-group {
  border-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-search-combobox.input-group,
.metabiblioteca-search-group.input-group,
.metabiblioteca-header-searchbar .metabiblioteca-search-combobox,
.metabiblioteca-header-searchbar .metabiblioteca-search-group {
  border-radius: var(--metabiblioteca-radius-ui);
  overflow: hidden;
}

.metabiblioteca-header-searchbar .form-control,
.metabiblioteca-header-searchbar input[type="search"],
.metabiblioteca-header-searchbar .metabiblioteca-search-input {
  border-radius: 0;
}

.metabiblioteca-header-searchbar .metabiblioteca-search-combobox>*:first-child,
.metabiblioteca-header-searchbar .metabiblioteca-search-group>*:first-child {
  border-top-left-radius: var(--metabiblioteca-radius-ui);
  border-bottom-left-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-header-searchbar .metabiblioteca-search-combobox>*:last-child,
.metabiblioteca-header-searchbar .metabiblioteca-search-group>*:last-child {
  border-top-right-radius: var(--metabiblioteca-radius-ui);
  border-bottom-right-radius: var(--metabiblioteca-radius-ui);
}

.metabiblioteca-header-searchbar .metabiblioteca-search-combobox__clear,
.metabiblioteca-header-searchbar .metabiblioteca-search-combobox__submit {
  border-radius: 0;
}

/* El listado de autocompletado también se alinea con esa misma geometría */
.metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete {
  border-radius: var(--metabiblioteca-radius-ui);
}



/* ==========================================================================
   56. Menú hamburguesa: solo navegación y usuario
   --------------------------------------------------------------------------
   El panel lateral se simplifica para seguir el patrón offcanvas: búsqueda,
   navegación principal y usuario. Se retiran los bloques de sidebar.
   ========================================================================== */

.metabiblioteca-mobile-panel {
  display: grid;
  gap: 1rem;
}

.metabiblioteca-mobile-panel__section {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-border, #cbd5e1) 82%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-surface, #fff);
  padding: .9rem;
  box-shadow: 0 8px 20px rgba(15, 23, 42, .06);
}

.metabiblioteca-mobile-panel__title {
  margin: 0 0 .7rem;
  color: var(--metabiblioteca-color-01, #0284c7);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

#navigationPrimaryMobile.metabiblioteca-offcanvas-primary-nav,
#navigationUserMobile.metabiblioteca-offcanvas-user-nav {
  display: grid;
  gap: .55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

#navigationPrimaryMobile.metabiblioteca-offcanvas-primary-nav>li,
#navigationUserMobile.metabiblioteca-offcanvas-user-nav>li {
  display: block;
  width: 100%;
  margin: 0;
}

.metabiblioteca-offcanvas-primary-nav__link,
.metabiblioteca-offcanvas-user-nav__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 2.45rem;
  padding: .68rem .8rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-border, #cbd5e1) 86%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-surface, #fff) 94%, var(--metabiblioteca-color-01, #0284c7) 6%);
  color: var(--metabiblioteca-color-03, #0f172a);
  text-decoration: none;
  font-weight: 700;
}

.metabiblioteca-offcanvas-primary-nav__submenu,
.metabiblioteca-offcanvas-user-nav__submenu {
  display: grid;
  gap: .35rem;
  margin: .45rem 0 0 .5rem;
  padding: .1rem 0 0 .75rem;
  list-style: none;
  border-left: 2px solid color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 22%, transparent);
}

.metabiblioteca-offcanvas-primary-nav__submenu-link,
.metabiblioteca-offcanvas-user-nav__submenu-link {
  display: block;
  width: 100%;
  padding: .48rem .65rem;
  border-radius: var(--metabiblioteca-radius-ui);
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 88%, transparent);
  text-decoration: none;
  font-weight: 600;
}

.metabiblioteca-offcanvas-primary-nav__submenu-link:hover,
.metabiblioteca-offcanvas-user-nav__submenu-link:hover,
.metabiblioteca-offcanvas-primary-nav__link:hover,
.metabiblioteca-offcanvas-user-nav__link:hover {
  color: var(--metabiblioteca-color-01, #0284c7);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 9%, transparent);
}

/* remove sidebar blocks from hamburger completely */
.metabiblioteca-header-mobile .pkp_block,
.metabiblioteca-header-mobile .metabiblioteca-widget,
.metabiblioteca-header-mobile .block_make_submission,
.metabiblioteca-header-mobile .block_information,
.metabiblioteca-header-mobile .block_keywordcloud,
.metabiblioteca-header-mobile .block_languageToggle,
.metabiblioteca-header-mobile .block_web_feed {
  display: none !important;
}

.metabiblioteca-author-search-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 0.35rem;
  font-size: 0.85em;
  color: var(--metabiblioteca-color-02, #0ea5e9);
  transition: color 0.2s ease, transform 0.2s ease;
  vertical-align: middle;
}

.metabiblioteca-author-search-link:hover,
.metabiblioteca-author-search-link:focus-visible {
  color: var(--metabiblioteca-color-01, #0284c7);
  transform: translateY(-1px);
}

html.dark .metabiblioteca-author-search-link {
  color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 60%, transparent);
}

html.dark .metabiblioteca-author-search-link:hover,
html.dark .metabiblioteca-author-search-link:focus-visible {
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

/* ========================================================================== 
   57. Menú hamburguesa a pantalla completa y sin doble scroll
   --------------------------------------------------------------------------
   Cuando el offcanvas móvil está abierto, se bloquea el scroll del documento,
   se ocultan utilidades del header que ya están dentro del menú y el panel toma
   todo el ancho disponible.
   ========================================================================== */

html.metabiblioteca-mobile-nav-open,
body.metabiblioteca-mobile-nav-open {
  overflow: hidden;
  height: 100%;
}

@media (max-width: 1279.98px) {

  html.metabiblioteca-mobile-nav-open .metabiblioteca-header-utilities,
  html.metabiblioteca-mobile-nav-open .metabiblioteca-header-searchbar {
    display: none;
    visibility: hidden;
  }

  html.metabiblioteca-mobile-nav-open .metabiblioteca-header-mobile [role="dialog"] {
    inset: 0;
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    overflow: hidden;
    padding-right: 0;
  }

  html.metabiblioteca-mobile-nav-open .metabiblioteca-header-mobile [role="dialog"]>[data-headlessui-state="open"] {
    width: 100vw;
    max-width: none;
    height: 100vh;
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
  }
}


/* ==========================================================================
   58. Menú móvil: utilidades dentro del hamburguesa
   --------------------------------------------------------------------------
   En móviles, el selector de modo de color y el menú de usuario viven dentro
   del panel hamburguesa. El header público conserva estas utilidades solo en
   escritorio para evitar duplicados visuales.
   ========================================================================== */

@media (max-width: 1279.98px) {
  .metabiblioteca-theme .metabiblioteca-header-utilities {
    display: none;
    visibility: hidden;
  }
}

@media (max-width: 1023.98px) {
  .metabiblioteca-theme .metabiblioteca-site-header {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-areas: "menu brand";
  }

  .metabiblioteca-theme .metabiblioteca-header-brand {
    justify-self: center;
  }
}

.metabiblioteca-mobile-theme-control {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  min-height: 2.45rem;
  padding: .68rem .8rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-border, #cbd5e1) 86%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-surface, #fff) 94%, var(--metabiblioteca-color-01, #0284c7) 6%);
}

.metabiblioteca-mobile-theme-control__label {
  color: var(--metabiblioteca-color-03, #0f172a);
  font-weight: 700;
}

.metabiblioteca-mobile-theme-control .metabiblioteca-theme-selector__button {
  width: 2.25rem;
  height: 2.25rem;
  flex: 0 0 auto;
  background: var(--metabiblioteca-surface, #fff);
}

/* Autocompletado profesional basado en metadatos publicados de OJS */
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__body {
  display: grid;
  min-width: 0;
  gap: 0.18rem;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__meta {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 62%, #64748b);
  font-size: 0.78rem;
  font-weight: 560;
  line-height: 1.3;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover .metabiblioteca-search-autocomplete__meta,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active .metabiblioteca-search-autocomplete__meta {
  color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 70%, #475569);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item--article .metabiblioteca-search-autocomplete__hint,
.metabiblioteca-theme .metabiblioteca-search-autocomplete__item--doi .metabiblioteca-search-autocomplete__hint {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 14%, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item--author .metabiblioteca-search-autocomplete__hint {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #ffffff);
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete__item--issue .metabiblioteca-search-autocomplete__hint {
  background: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 8%, #ffffff);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__meta,
.dark .metabiblioteca-search-autocomplete__meta {
  color: rgba(226, 232, 240, 0.72);
}

html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item:hover .metabiblioteca-search-autocomplete__meta,
html.dark.metabiblioteca-theme .metabiblioteca-search-autocomplete__item.is-active .metabiblioteca-search-autocomplete__meta,
.dark .metabiblioteca-search-autocomplete__item:hover .metabiblioteca-search-autocomplete__meta,
.dark .metabiblioteca-search-autocomplete__item.is-active .metabiblioteca-search-autocomplete__meta {
  color: rgba(255, 255, 255, 0.82);
}

@media (max-width: 640px) {
  .metabiblioteca-theme .metabiblioteca-search-autocomplete__item {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.45rem;
  }

  .metabiblioteca-theme .metabiblioteca-search-autocomplete__hint {
    justify-self: flex-start;
  }
}

/* ==========================================================================
   57. Autocompletado del buscador: dropdown visible sobre contenido
   --------------------------------------------------------------------------
   La geometria del buscador superior usa overflow:hidden para unir bordes de
   input/botones; eso recortaba el listado de sugerencias. El combobox debe
   dejar salir el panel y el z-index debe superar tarjetas/contenido.
   ========================================================================== */
.metabiblioteca-theme .metabiblioteca-header-searchbar,
.metabiblioteca-theme .metabiblioteca-header-searchbar form,
.metabiblioteca-theme .metabiblioteca-search-combobox,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox {
  overflow: visible;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar {
  z-index: 900;
}

.metabiblioteca-theme .metabiblioteca-search-combobox:has(.metabiblioteca-search-autocomplete:not([hidden])) {
  z-index: 950;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete {
  display: block;
  z-index: 1000;
  pointer-events: auto;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete[hidden],
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete[hidden] {
  display: none;
}

/* ==========================================================================
   58. Desktop dropdowns: capas sobre la barra de busqueda
   --------------------------------------------------------------------------
   Correccion:
   La barra global de busqueda quedaba con z-index alto por el autocompletado
   y se interponia entre el boton del menu y su submenu. En desktop los
   dropdowns de navegacion y usuario deben flotar por encima del buscador para
   que el puntero pueda entrar al submenu sin perder el hover/focus.
   ========================================================================== */
@media (min-width: 1024px) {

  .metabiblioteca-theme header.metabiblioteca-site-header,
  .metabiblioteca-theme .metabiblioteca-site-header {
    overflow: visible;
    position: relative;
    top: auto;
    isolation: isolate;
    z-index: 3000;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-brand {
    position: relative;
    z-index: 3010;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-primary {
    position: relative;
    overflow: visible;
    z-index: 3300;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-utilities {
    position: relative;
    overflow: visible;
    z-index: 3400;
  }

  /* El buscador sigue visible, pero no tapa los menus desplegables. */
  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar {
    position: relative;
    overflow: visible;
    z-index: 100;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox {
    position: relative;
    z-index: 110;
  }

  /* Si el autocompletado del buscador esta abierto, queda encima del contenido,
     pero siempre por debajo de los dropdowns del header. */
  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox:has(.metabiblioteca-search-autocomplete:not([hidden])) {
    z-index: 1800;
  }

  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-autocomplete {
    z-index: 1810;
  }

  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav,
  .metabiblioteca-theme .metabiblioteca-user-desktop-nav {
    position: relative;
    overflow: visible;
  }

  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav__item,
  .metabiblioteca-theme .metabiblioteca-user-desktop-nav__item {
    position: relative;
    overflow: visible;
  }

  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav__submenu {
    z-index: 3500;
    top: calc(100% - 1px);
    pointer-events: auto;
  }

  .metabiblioteca-theme .metabiblioteca-user-desktop-nav__submenu,
  .metabiblioteca-theme .metabiblioteca-header-utilities .metabiblioteca-user-desktop-nav__submenu {
    z-index: 3600;
    top: calc(100% - 1px);
    pointer-events: auto;
  }

  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav__item:hover>.metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav__item:focus-within>.metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-theme .metabiblioteca-user-desktop-nav__item:hover>.metabiblioteca-user-desktop-nav__submenu,
  .metabiblioteca-theme .metabiblioteca-user-desktop-nav__item:focus-within>.metabiblioteca-user-desktop-nav__submenu {
    display: block;
  }

  /* Puentes de hover ampliados: el submenu queda clicable aunque pase por la fila
     visual del buscador o por una sombra del header. */
  .metabiblioteca-theme .metabiblioteca-primary-desktop-nav__submenu::before,
  .metabiblioteca-theme .metabiblioteca-user-desktop-nav__submenu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    height: .8rem;
    background: transparent;
    pointer-events: auto;
  }
}

/* Fix: inicio de revista sin metabiblioteca-home-aside.
   La plantilla usa una sola columna y no debe conservar el ancho lateral vacío. */
.metabiblioteca-journal-home .metabiblioteca-home-grid--no-aside {
  grid-template-columns: minmax(0, 1fr);
}

.metabiblioteca-journal-home .metabiblioteca-home-grid--no-aside .metabiblioteca-home-main {
  min-width: 0;
  width: 100%;
}

.metabiblioteca-section--homepage-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: var(--metabiblioteca-radius-ui);
}


/* ==========================================================================
   60. Header no sticky
   --------------------------------------------------------------------------
   El header debe participar en el flujo normal de la pagina y desplazarse con
   el contenido. Se neutraliza cualquier clase utilitaria sticky/top-0 o regla
   previa de desktop para recuperar espacio visual al leer.
   ========================================================================== */
.metabiblioteca-theme header.metabiblioteca-site-header,
.metabiblioteca-theme .metabiblioteca-site-header {
  position: relative;
  top: auto;
}


/* Article list metadata: pages, publication date and PDF usage metrics */
.metabiblioteca-article-summary__meta {
  min-width: 8rem;
  line-height: 1.25;
  row-gap: .35rem;
  padding-bottom: .35rem;
}

.metabiblioteca-article-summary__meta-row {
  color: rgb(107 114 128);
  width: 100%;
  display: flex;
  justify-content: flex-end;
}

.metabiblioteca-article-summary__meta-row--usage {
  column-gap: .5rem;
  margin-top: .15rem;
}

.dark .metabiblioteca-article-summary__meta-row {
  color: rgb(156 163 175);
}

.metabiblioteca-article-summary__meta-badge {
  white-space: nowrap;
}

.metabiblioteca-article-summary__meta-badge svg {
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .metabiblioteca-article-summary .flex.justify-between {
    align-items: flex-start;
    flex-direction: column;
  }

  .metabiblioteca-article-summary__meta {
    align-items: flex-start;
    margin-top: .5rem;
    min-width: 0;
    width: 100%;
  }

  .metabiblioteca-article-summary__meta-row {
    justify-content: flex-start;
  }

  .metabiblioteca-article-summary__meta-row--usage {
    justify-content: flex-start;
  }
}


/* Metabiblioteca: control de busqueda por voz en buscadores. */
.metabiblioteca-theme .metabiblioteca-search-combobox {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  min-height: 42px;
  margin: 0 0.18rem 0 0.08rem;
  color: var(--metabiblioteca-color-01, #08166b);
  line-height: 1;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control>* {
  max-width: 100%;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control button,
.metabiblioteca-theme .metabiblioteca-search-voice-control [role='button'] {
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  border-radius: var(--metabiblioteca-radius-ui);
}

/* Metabiblioteca: voz en buscador alineada con el boton de busqueda.
   Se deja al final para sobreescribir reglas compiladas previas del combobox. */
.metabiblioteca-theme .metabiblioteca-search-combobox {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  align-items: center;
  column-gap: 0.4rem;
  row-gap: 0;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear,
.metabiblioteca-theme .metabiblioteca-search-voice-control,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  align-self: center;
  justify-self: center;
  grid-row: 1;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  min-width: 46px;
  max-width: 46px;
  height: 46px;
  min-height: 46px;
  max-height: 46px;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 10px 24px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 28%, transparent);
  cursor: pointer;
  overflow: hidden;
  line-height: 1;
  vertical-align: middle;
  transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control:hover,
.metabiblioteca-theme .metabiblioteca-search-voice-control:focus-within {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: translateY(-1px);
  box-shadow: 0 14px 32px color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 30%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-voice-control.is-listening {
  background: #dc2626 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control *,
.metabiblioteca-theme .metabiblioteca-search-voice-control button,
.metabiblioteca-theme .metabiblioteca-search-voice-control a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: currentColor;
  box-shadow: none;
  line-height: 1;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control svg,
.metabiblioteca-theme .metabiblioteca-search-voice-control img,
.metabiblioteca-theme .metabiblioteca-search-voice-control i {
  width: 1.12rem;
  height: 1.12rem;
  max-width: 1.12rem;
  max-height: 1.12rem;
  color: currentColor;
  fill: currentColor;
  stroke: currentColor;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  margin: 0;
}

@media (max-width: 640px) {
  .metabiblioteca-theme .metabiblioteca-search-combobox {
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    column-gap: 0.25rem;
    padding-right: 0.35rem;
  }

  .metabiblioteca-theme .metabiblioteca-search-voice-control,
  .metabiblioteca-theme .metabiblioteca-search-combobox__submit {
    width: 42px;
    min-width: 42px;
    max-width: 42px;
    height: 42px;
    min-height: 42px;
    max-height: 42px;
  }
}

/* ==========================================================================
   Metabiblioteca hotfix: buscador con microfono alineado
   --------------------------------------------------------------------------
   El script externo de voz inyecta controles dentro del contenedor. Para evitar
   que el boton de busqueda baje de linea o se superponga, el combobox se maneja
   como una fila flex sin wrapping y todos los controles tienen tamano fijo.
   ========================================================================== */
.metabiblioteca-theme .metabiblioteca-search-combobox,
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: stretch;
  gap: .38rem;
  grid-template-columns: none;
  overflow: visible;
}

.metabiblioteca-theme .metabiblioteca-search-combobox .metabiblioteca-search-input,
.metabiblioteca-theme .metabiblioteca-search-combobox input[type='search'],
.metabiblioteca-theme .metabiblioteca-search-combobox input[type='text'] {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  order: 1;
  align-self: center;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__clear {
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  height: 30px;
  min-height: 30px;
  max-height: 30px;
  order: 2;
  align-self: center;
  margin: 0;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  position: relative;
  flex: 0 0 40px;
  inline-size: 40px;
  block-size: 40px;
  width: 40px;
  min-width: 40px;
  max-width: 40px;
  height: 40px;
  min-height: 40px;
  max-height: 40px;
  display: inline-grid;
  place-items: center;
  align-items: center;
  justify-content: center;
  align-self: center;
  justify-self: auto;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 24%, transparent);
  line-height: 1;
  overflow: hidden;
  transform: none;
  box-sizing: border-box;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control {
  order: 3;
  font-size: 0;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  order: 4;
  cursor: pointer;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control:hover,
.metabiblioteca-theme .metabiblioteca-search-voice-control:focus-within,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: none;
  box-shadow: 0 10px 24px color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 28%, transparent);
}

.metabiblioteca-theme .metabiblioteca-search-voice-control *,
.metabiblioteca-theme .metabiblioteca-search-voice-control button,
.metabiblioteca-theme .metabiblioteca-search-voice-control a,
.metabiblioteca-theme .metabiblioteca-search-voice-control span,
.metabiblioteca-theme .metabiblioteca-search-voice-control div {
  position: static;
  inset: auto;
  transform: none;
  display: inline-grid;
  place-items: center;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: currentColor;
  box-shadow: none;
  line-height: 1;
  overflow: hidden;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control svg,
.metabiblioteca-theme .metabiblioteca-search-voice-control img,
.metabiblioteca-theme .metabiblioteca-search-voice-control i,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit .metabiblioteca-icon {
  display: block;
  width: 1rem;
  height: 1rem;
  max-width: 1rem;
  max-height: 1rem;
  color: currentColor;
  fill: currentColor;
  stroke: currentColor;
  margin: 0;
  transform: none;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  min-height: 42px;
  padding: .18rem .28rem .18rem 1rem;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-input {
  min-height: 34px;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  flex-basis: 34px;
  inline-size: 34px;
  block-size: 34px;
  width: 34px;
  min-width: 34px;
  max-width: 34px;
  height: 34px;
  min-height: 34px;
  max-height: 34px;
}

.metabiblioteca-theme .metabiblioteca-search-autocomplete {
  left: 0;
  right: 0;
}

@media (max-width: 640px) {

  .metabiblioteca-theme .metabiblioteca-search-combobox,
  .metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header,
  .metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page {
    gap: .24rem;
    padding-right: .24rem;
  }

  .metabiblioteca-theme .metabiblioteca-search-combobox__clear {
    flex-basis: 28px;
    width: 28px;
    min-width: 28px;
    max-width: 28px;
  }

  .metabiblioteca-theme .metabiblioteca-search-voice-control,
  .metabiblioteca-theme .metabiblioteca-search-combobox__submit {
    flex-basis: 34px;
    inline-size: 34px;
    block-size: 34px;
    width: 34px;
    min-width: 34px;
    max-width: 34px;
    height: 34px;
    min-height: 34px;
    max-height: 34px;
  }
}

/* ========================================================================== 
   72. Hotfix final: microfono con el mismo tamano y centrado que la lupa
   --------------------------------------------------------------------------
   El script externo de voz inyecta su propio marcado dentro de
   .voice-to-text-container. Estas reglas normalizan ese marcado para que el
   control resultante mida y se alinee exactamente como el boton submit.
   ========================================================================== */
.metabiblioteca-theme .metabiblioteca-search-combobox {
  --metabiblioteca-search-action-size: 30px;
  --metabiblioteca-search-action-icon-size: 16px;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  flex: 0 0 var(--metabiblioteca-search-action-size);
  inline-size: var(--metabiblioteca-search-action-size);
  block-size: var(--metabiblioteca-search-action-size);
  width: var(--metabiblioteca-search-action-size);
  min-width: var(--metabiblioteca-search-action-size);
  max-width: var(--metabiblioteca-search-action-size);
  height: var(--metabiblioteca-search-action-size);
  min-height: var(--metabiblioteca-search-action-size);
  max-height: var(--metabiblioteca-search-action-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  justify-self: center;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  line-height: 0;
  vertical-align: middle;
  box-sizing: border-box;
  overflow: hidden;
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 24%, transparent);
  transform: none;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control {
  position: relative;
  order: 3;
  font-size: 0;
  text-indent: 0;
}

.metabiblioteca-theme .metabiblioteca-search-combobox__submit {
  order: 4;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control>*,
.metabiblioteca-theme .metabiblioteca-search-voice-control button,
.metabiblioteca-theme .metabiblioteca-search-voice-control [role='button'],
.metabiblioteca-theme .metabiblioteca-search-voice-control a,
.metabiblioteca-theme .metabiblioteca-search-voice-control span,
.metabiblioteca-theme .metabiblioteca-search-voice-control div {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: currentColor;
  box-shadow: none;
  line-height: 0;
  font-size: 0;
  text-align: center;
  overflow: hidden;
  transform: none;
  box-sizing: border-box;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control svg,
.metabiblioteca-theme .metabiblioteca-search-voice-control img,
.metabiblioteca-theme .metabiblioteca-search-voice-control i,
.metabiblioteca-theme .metabiblioteca-search-voice-control [class*='icon'],
.metabiblioteca-theme .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit .metabiblioteca-icon-search {
  position: static;
  display: block;
  flex: 0 0 var(--metabiblioteca-search-action-icon-size);
  inline-size: var(--metabiblioteca-search-action-icon-size);
  block-size: var(--metabiblioteca-search-action-icon-size);
  width: var(--metabiblioteca-search-action-icon-size);
  min-width: var(--metabiblioteca-search-action-icon-size);
  max-width: var(--metabiblioteca-search-action-icon-size);
  height: var(--metabiblioteca-search-action-icon-size);
  min-height: var(--metabiblioteca-search-action-icon-size);
  max-height: var(--metabiblioteca-search-action-icon-size);
  margin: 0;
  padding: 0;
  color: currentColor;
  fill: currentColor;
  stroke: currentColor;
  line-height: 1;
  font-size: var(--metabiblioteca-search-action-icon-size);
  transform: none;
  vertical-align: middle;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control ::before,
.metabiblioteca-theme .metabiblioteca-search-voice-control ::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  line-height: 1;
}

.metabiblioteca-theme .metabiblioteca-search-voice-control:hover,
.metabiblioteca-theme .metabiblioteca-search-voice-control:focus-within,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: none;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  --metabiblioteca-search-action-size: 30px;
  --metabiblioteca-search-action-icon-size: 16px;
  gap: .22rem;
  padding-top: .18rem;
  padding-bottom: .18rem;
  padding-right: .28rem;
}

/* ==========================================================================
   73. Botones de Búsqueda Uniformes: Botón de Voz y Botón de Lupa
   ========================================================================== */

/* BARRA DE BÚSQUEDA DEL HEADER (metabiblioteca-search-combobox--header) */
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  flex: 0 0 34px !important;
  box-sizing: border-box !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: var(--metabiblioteca-radius-ui, 6px) !important;
  background: var(--metabiblioteca-color-01, #08166b) !important;
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  box-shadow: 0 4px 10px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 20%, transparent) !important;
  overflow: hidden !important;
  position: relative !important;
  transition: transform 180ms ease, background-color 180ms ease !important;
}

/* Forzar que el control inyectado por plugin (#btn_search_voice) se extienda al 100% de su contenedor */
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" fill="%23ffffff"><path d="M192 0C139 0 96 43 96 96V256c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H216V430.4c85.8-11.7 152-85.3 152-174.4V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128s-128-57.3-128-128V216z"/></svg>') !important;
  background-size: 15px 15px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  background-color: transparent !important;
  color: currentColor !important;
  border: none !important;
  border-radius: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  font-size: 0 !important;
  text-indent: 0 !important;
  cursor: pointer !important;
}

.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice * {
  display: none !important;
}

/* Ocultar pseudo-lupa del submit del header si existe para usar el SVG nativo */
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::before,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit::after {
  content: none !important;
  display: none !important;
}

/* Asegurar que se muestre el SVG nativo de lupa en el header */
.metabiblioteca-theme header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg {
  display: block !important;
}

/* Iconos de la barra del header */
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control svg,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control img,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control i,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice svg,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice img,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice i,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit i {
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  font-size: 15px !important;
  color: currentColor !important;
  fill: currentColor !important;
  stroke: none !important;
  margin: auto !important;
  padding: 0 !important;
}

/* PÁGINA DE BÚSQUEDA / PÁGINAS PERSONALIZADAS (metabiblioteca-search-combobox--page) */
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-combobox__submit {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  flex: 0 0 40px !important;
  box-sizing: border-box !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: var(--metabiblioteca-radius-ui, 6px) !important;
  background: var(--metabiblioteca-color-01, #08166b) !important;
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  box-shadow: 0 4px 10px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 20%, transparent) !important;
  overflow: hidden !important;
  position: relative !important;
  transition: transform 180ms ease, background-color 180ms ease !important;
}

/* Extender botón de voz inyectado en página de búsqueda al 100% de su contenedor */
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" fill="%23ffffff"><path d="M192 0C139 0 96 43 96 96V256c0 53 43 96 96 96s96-43 96-96V96c0-53-43-96-96-96zM64 216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 89.1 66.2 162.7 152 174.4V464H120c-13.3 0-24 10.7-24 24s10.7 24 24 24h72 72c13.3 0 24-10.7 24-24s-10.7-24-24-24H216V430.4c85.8-11.7 152-85.3 152-174.4V216c0-13.3-10.7-24-24-24s-24 10.7-24 24v40c0 70.7-57.3 128-128 128s-128-57.3-128-128V216z"/></svg>') !important;
  background-size: 15px 15px !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  background-color: transparent !important;
  color: currentColor !important;
  border: none !important;
  border-radius: inherit !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  font-size: 0 !important;
  text-indent: 0 !important;
  cursor: pointer !important;
}

.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice * {
  display: none !important;
}

/* Iconos de la barra de la página de búsqueda */
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control svg,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control img,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control i,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice svg,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice img,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice i,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-combobox__submit svg,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-combobox__submit i {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  font-size: 18px !important;
  color: currentColor !important;
  fill: currentColor !important;
  stroke: none !important;
  margin: auto !important;
  padding: 0 !important;
}

/* Estados Hover & Focus Uniformes para ambos entornos */
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control:hover,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header #btn_search_voice:hover,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control:hover,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-combobox__submit:hover,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page #btn_search_voice:hover {
  background: var(--metabiblioteca-color-02, #0ea5e9) !important;
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  transform: translateY(-1px) !important;
}

/* Ocultar boton limpiar si el input esta vacio para evitar espacio fantasma */
.metabiblioteca-theme .metabiblioteca-search-input:placeholder-shown ~ .metabiblioteca-search-combobox__clear,
.metabiblioteca-search-input:placeholder-shown ~ .metabiblioteca-search-combobox__clear {
  display: none !important;
}

/* Estado de grabacion por voz: parpadeo rojo visible para identificar (sin resplandor) */
.metabiblioteca-theme .metabiblioteca-search-voice-control.is-listening,
.metabiblioteca-theme .metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header .metabiblioteca-search-voice-control.is-listening,
.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page .metabiblioteca-search-voice-control.is-listening,
.metabiblioteca-search-voice-control.is-listening {
  background: #dc2626 !important;
  color: #ffffff !important;
  box-shadow: none !important;
  animation: metabiblioteca-voice-blink 0.75s infinite ease-in-out !important;
}

@keyframes metabiblioteca-voice-blink {
  0%, 100% {
    background-color: #dc2626 !important;
    opacity: 1 !important;
  }
  50% {
    background-color: #ef4444 !important;
    opacity: 0.35 !important;
  }
}

/* Movimiento suave del placeholder durante la captura de voz (sin resplandor en el input) */
.metabiblioteca-theme .metabiblioteca-search-input.is-listening,
.metabiblioteca-search-input.is-listening {
  box-shadow: none !important;
}

.metabiblioteca-theme .metabiblioteca-search-input.is-listening::placeholder,
.metabiblioteca-search-input.is-listening::placeholder {
  color: #dc2626 !important;
  display: inline-block;
  animation: metabiblioteca-placeholder-breathe 1.8s ease-in-out infinite alternate !important;
}

@keyframes metabiblioteca-placeholder-breathe {
  0% {
    opacity: 0.45;
    letter-spacing: 0px;
    transform: translateX(0);
  }
  50% {
    opacity: 0.85;
    letter-spacing: 0.4px;
    transform: translateX(4px);
  }
  100% {
    opacity: 1;
    letter-spacing: 0.2px;
    transform: translateX(2px);
  }
}

.metabiblioteca-theme .page_search .metabiblioteca-search-combobox--page {
  --metabiblioteca-search-action-size: 40px;
  --metabiblioteca-search-action-icon-size: 17px;
}

@media (max-width: 640px) {
  .metabiblioteca-theme .metabiblioteca-search-combobox {
    --metabiblioteca-search-action-size: 30px;
    --metabiblioteca-search-action-icon-size: 15px;
    gap: .2rem;
  }
}

/* ==========================================================================
   73. Capa final de saneamiento de cascada sin prioridad forzada
   --------------------------------------------------------------------------
   Esta capa sustituye los hotfixes previos con selectores suficientemente
   acotados y ordenados al final del archivo. Mantiene el comportamiento del
   buscador, el microfono y los medios sin depender de prioridad forzada.
   ========================================================================== */
html.metabiblioteca-theme body .metabiblioteca-reset-media,
html.metabiblioteca-theme body .metabiblioteca-article-summary__media img,
html.metabiblioteca-theme body .metabiblioteca-issue-toc__cover img,
html.metabiblioteca-theme body ._obj_issue_summary img {
  margin: 0;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox,
html.metabiblioteca-theme body header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header,
html.metabiblioteca-theme body .page_search .metabiblioteca-search-combobox--page {
  --metabiblioteca-search-action-size: 40px;
  --metabiblioteca-search-action-icon-size: 17px;
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: stretch;
  gap: .38rem;
  grid-template-columns: none;
  overflow: visible;
}

html.metabiblioteca-theme body header.metabiblioteca-site-header>.metabiblioteca-header-searchbar .metabiblioteca-search-combobox--header {
  --metabiblioteca-search-action-size: 30px;
  --metabiblioteca-search-action-icon-size: 16px;
  min-height: 42px;
  padding: .18rem .28rem .18rem 1rem;
  gap: .22rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox .metabiblioteca-search-input,
html.metabiblioteca-theme body .metabiblioteca-search-combobox input[type='search'],
html.metabiblioteca-theme body .metabiblioteca-search-combobox input[type='text'] {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  order: 1;
  align-self: center;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__clear {
  flex: 0 0 30px;
  width: 30px;
  min-width: 30px;
  max-width: 30px;
  height: 30px;
  min-height: 30px;
  max-height: 30px;
  order: 2;
  align-self: center;
  margin: 0;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit {
  position: relative;
  flex: 0 0 var(--metabiblioteca-search-action-size);
  inline-size: var(--metabiblioteca-search-action-size);
  block-size: var(--metabiblioteca-search-action-size);
  width: var(--metabiblioteca-search-action-size);
  min-width: var(--metabiblioteca-search-action-size);
  max-width: var(--metabiblioteca-search-action-size);
  height: var(--metabiblioteca-search-action-size);
  min-height: var(--metabiblioteca-search-action-size);
  max-height: var(--metabiblioteca-search-action-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  justify-self: center;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  line-height: 0;
  vertical-align: middle;
  box-sizing: border-box;
  overflow: hidden;
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 24%, transparent);
  transform: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control {
  order: 3;
  font-size: 0;
  text-indent: 0;
  cursor: pointer;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit {
  order: 4;
  cursor: pointer;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control:hover,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control:focus-within,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit:hover,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  transform: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control>*,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control button,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control [role='button'],
html.metabiblioteca-theme body .metabiblioteca-search-voice-control a,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control span,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control div {
  position: absolute;
  inset: 0;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  height: 100%;
  min-height: 100%;
  max-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: var(--metabiblioteca-radius-ui);
  background: transparent;
  color: currentColor;
  box-shadow: none;
  line-height: 0;
  font-size: 0;
  text-align: center;
  overflow: hidden;
  transform: none;
  box-sizing: border-box;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control svg,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control img,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control i,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control [class*='icon'],
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit svg,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit .metabiblioteca-icon-search {
  position: static;
  display: block;
  flex: 0 0 var(--metabiblioteca-search-action-icon-size);
  inline-size: var(--metabiblioteca-search-action-icon-size);
  block-size: var(--metabiblioteca-search-action-icon-size);
  width: var(--metabiblioteca-search-action-icon-size);
  min-width: var(--metabiblioteca-search-action-icon-size);
  max-width: var(--metabiblioteca-search-action-icon-size);
  height: var(--metabiblioteca-search-action-icon-size);
  min-height: var(--metabiblioteca-search-action-icon-size);
  max-height: var(--metabiblioteca-search-action-icon-size);
  margin: 0;
  padding: 0;
  color: currentColor;
  fill: currentColor;
  stroke: currentColor;
  line-height: 1;
  font-size: var(--metabiblioteca-search-action-icon-size);
  transform: none;
  vertical-align: middle;
}

html.metabiblioteca-theme body .metabiblioteca-search-autocomplete {
  left: 0;
  right: 0;
}

@media (max-width: 640px) {
  html.metabiblioteca-theme body .metabiblioteca-search-combobox {
    --metabiblioteca-search-action-size: 30px;
    --metabiblioteca-search-action-icon-size: 15px;
    gap: .2rem;
  }
}

/* ==========================================================================
   74. Pagina de busqueda academica moderna y filtros aplicados
   --------------------------------------------------------------------------
   Rediseño frontend seguro para OJS 3.5. Conserva method="get", nombres de
   parametros, hooks, $results, article_summary.tpl y page_links. La mejora es
   estrictamente visual y progresiva: hero compacto, filtros en tarjeta,
   chips de filtros aplicados y resultados con separacion editorial.
   ========================================================================== */
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page {
  max-width: min(100%, 1240px);
  margin-inline: auto;
  padding: clamp(0.85rem, 2vw, 1.5rem);
  font-family: var(--metabiblioteca-font-01, inherit);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .cmp_breadcrumbs,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .breadcrumbs {
  margin-bottom: clamp(0.8rem, 2vw, 1.15rem);
}

html.metabiblioteca-theme body .metabiblioteca-search-hero-modern {
  position: relative;
  overflow: hidden;
  margin: 0 0 clamp(1rem, 2vw, 1.4rem);
  padding: clamp(1.15rem, 3vw, 2.35rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background:
    radial-gradient(circle at 12% 0%, color-mix(in srgb, var(--metabiblioteca-color-02, #0ea5e9) 18%, transparent), transparent 34%),
    linear-gradient(135deg, color-mix(in srgb, #ffffff 94%, var(--metabiblioteca-color-01, #08166b) 6%), color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 92%, #ffffff 8%));
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.08);
}

html.metabiblioteca-theme body .metabiblioteca-search-hero-modern::after {
  content: "";
  display: none;
  position: absolute;
  right: -8rem;
  bottom: -9rem;
  width: 20rem;
  height: 20rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 8%, transparent);
  pointer-events: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-hero-modern__eyebrow {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  min-height: 1.7rem;
  margin: 0 0 0.6rem;
  padding: 0.25rem 0.7rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 16%, transparent);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #ffffff 78%, var(--metabiblioteca-color-01, #08166b) 7%);
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html.metabiblioteca-theme body .metabiblioteca-search-hero-modern h1 {
  position: relative;
  z-index: 1;
  max-width: 820px;
  margin: 0;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-02, var(--metabiblioteca-font-01, inherit));
  font-size: clamp(1.8rem, 4vw, 3.35rem);
  line-height: 1.05;
  letter-spacing: -0.045em;
}

html.metabiblioteca-theme body .metabiblioteca-search-hero-modern p:not(.metabiblioteca-search-hero-modern__eyebrow) {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 0.8rem 0 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 76%, transparent);
  font-family: var(--metabiblioteca-font-03, var(--metabiblioteca-font-01, inherit));
  font-size: clamp(0.98rem, 1.4vw, 1.08rem);
  line-height: 1.7;
}

html.metabiblioteca-theme body .metabiblioteca-search-modern-form,
html.metabiblioteca-theme body .page_search .cmp_form.metabiblioteca-search-modern-form {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-modern-card {
  display: grid;
  gap: clamp(0.85rem, 1.8vw, 1.15rem);
  margin: 0 0 clamp(1.2rem, 2.5vw, 1.8rem);
  padding: clamp(0.85rem, 2vw, 1.25rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #ffffff 92%, var(--metabiblioteca-bg-light, #f8fafc) 8%);
  box-shadow: 0 22px 58px rgba(15, 23, 42, 0.08);
}

html.metabiblioteca-theme body .metabiblioteca-search-modern-card__primary,
html.metabiblioteca-theme body .page_search .search_input.metabiblioteca-search-modern-card__primary {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-modern-card__primary::before,
html.metabiblioteca-theme body .metabiblioteca-search-modern-card__primary::after,
html.metabiblioteca-theme body .page_search .search_input.metabiblioteca-search-modern-card__primary::before,
html.metabiblioteca-theme body .page_search .search_input.metabiblioteca-search-modern-card__primary::after {
  content: none;
  display: none;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-combobox--page {
  --metabiblioteca-search-action-size: 42px;
  --metabiblioteca-search-action-icon-size: 17px;
  min-height: 54px;
  padding: 0.35rem 0.42rem 0.35rem 1.05rem;
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  background: #ffffff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 14px 34px rgba(15, 23, 42, 0.08);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-combobox--page:focus-within {
  border-color: var(--metabiblioteca-color-01, #08166b);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, transparent), 0 18px 42px rgba(15, 23, 42, 0.12);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-input {
  font-size: clamp(0.96rem, 1.25vw, 1.05rem);
  font-weight: 650;
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters {
  display: grid;
  gap: 0.65rem;
  padding: 0.75rem 0.85rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 72%, #ffffff 28%);
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 0.82rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters__clear {
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 0.82rem;
  font-weight: 850;
  letter-spacing: normal;
  text-decoration: none;
  text-transform: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters__clear:hover,
html.metabiblioteca-theme body .metabiblioteca-search-active-filters__clear:focus-visible {
  color: var(--metabiblioteca-color-02, #0ea5e9);
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.55rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-active-filters__empty {
  margin: 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 62%, transparent);
  font-size: 0.92rem;
  line-height: 1.5;
}

html.metabiblioteca-theme body .metabiblioteca-search-chip {
  display: inline-flex;
  align-items: center;
  max-width: min(100%, 32rem);
  min-height: 2.15rem;
  gap: 0.45rem;
  padding: 0.3rem 0.45rem 0.3rem 0.65rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color-03, #0f172a);
  text-decoration: none;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
  transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
}

html.metabiblioteca-theme body .metabiblioteca-search-chip:hover,
html.metabiblioteca-theme body .metabiblioteca-search-chip:focus-visible {
  border-color: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-01, #08166b);
  transform: translateY(-1px);
  outline: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-chip__label {
  flex: 0 0 auto;
  color: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 82%, transparent);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

html.metabiblioteca-theme body .metabiblioteca-search-chip__value {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.88rem;
  font-weight: 750;
}

html.metabiblioteca-theme body .metabiblioteca-search-chip__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 1.35rem;
  width: 1.35rem;
  height: 1.35rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 9%, transparent);
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel {
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #ffffff 88%, var(--metabiblioteca-bg-light, #f8fafc) 12%);
  overflow: clip;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  min-height: 4.25rem;
  padding: 0.85rem 1rem;
  cursor: pointer;
  list-style: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary::-webkit-details-marker {
  display: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.45rem;
  width: 2.45rem;
  height: 2.45rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, transparent);
  color: var(--metabiblioteca-color-01, #08166b);
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-icon svg {
  width: 1.2rem;
  height: 1.2rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-text {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 1rem;
  font-weight: 900;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-text small {
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 64%, transparent);
  font-size: 0.86rem;
  font-weight: 600;
  line-height: 1.4;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-toggle {
  margin-left: auto;
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 1.3rem;
  font-weight: 900;
  transition: transform 180ms ease;
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel[open] .metabiblioteca-search-filters-panel__summary-toggle {
  transform: rotate(180deg);
}

html.metabiblioteca-theme body .metabiblioteca-search-advanced-modern,
html.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern {
  display: grid;
  gap: 1rem;
  margin: 0;
  padding: 0 1rem 1rem;
  border: 0;
  background: transparent;
  box-shadow: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-advanced-modern__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
  gap: 1rem;
  align-items: stretch;
}

html.metabiblioteca-theme body .metabiblioteca-search-date-grid,
html.metabiblioteca-theme body .page_search .date_range.metabiblioteca-search-date-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  min-width: 0;
}

html.metabiblioteca-theme body .metabiblioteca-search-filter-card,
html.metabiblioteca-theme body .page_search .date_range .metabiblioteca-search-filter-card,
html.metabiblioteca-theme body .page_search .author.metabiblioteca-search-filter-card {
  min-width: 0;
  margin: 0;
  padding: 3px;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-bg-light, #f8fafc) 72%, #ffffff 28%);
}

html.metabiblioteca-theme body .metabiblioteca-search-filter-card--meta {
  display: grid;
  gap: 0.9rem;
}

html.metabiblioteca-theme body .page_search .date_range .metabiblioteca-search-filter-card fieldset,
html.metabiblioteca-theme body .page_search .date_range .metabiblioteca-search-filter-card .from,
html.metabiblioteca-theme body .page_search .date_range .metabiblioteca-search-filter-card .to,
html.metabiblioteca-theme body .page_search .date_range fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

html.metabiblioteca-theme body .page_search .date_range legend,
html.metabiblioteca-theme body .page_search .date_range .metabiblioteca-search-filter-card legend,
html.metabiblioteca-theme body .metabiblioteca-search-field .label,
html.metabiblioteca-theme body .page_search .author.metabiblioteca-search-filter-card .label {
  display: block;
  margin: 0 0 0.55rem;
  padding: 0;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.88rem;
  font-weight: 900;
  line-height: 1.25;
}

html.metabiblioteca-theme body .page_search .date_range ol,
html.metabiblioteca-theme body .page_search .date_range ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.55rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

html.metabiblioteca-theme body .page_search .date_range li {
  display: grid;
  gap: 0.25rem;
  min-width: 0;
  margin: 0;
  padding: 0;
}

html.metabiblioteca-theme body .page_search .date_range label {
  margin: 0;
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 70%, transparent);
  font-size: 0.76rem;
  font-weight: 800;
  line-height: 1.2;
}

html.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern input,
html.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern select,
html.metabiblioteca-theme body .metabiblioteca-search-field input,
html.metabiblioteca-theme body .metabiblioteca-search-field select {
  width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: 0.52rem 0.72rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  color: var(--metabiblioteca-color-03, #0f172a);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.94rem;
  font-weight: 650;
  line-height: 1.3;
  box-shadow: none;
  transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

html.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern input:focus,
html.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern select:focus,
html.metabiblioteca-theme body .metabiblioteca-search-field input:focus,
html.metabiblioteca-theme body .metabiblioteca-search-field select:focus {
  outline: 0;
  border-color: var(--metabiblioteca-color-01, #08166b);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 14%, transparent);
}

html.metabiblioteca-theme body .metabiblioteca-search-advanced-modern> :not(.metabiblioteca-search-advanced-modern__grid):not(legend) {
  margin: 0;
}

html.metabiblioteca-theme body .metabiblioteca-search-actions-modern {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.7rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-reset,
html.metabiblioteca-theme body .metabiblioteca-search-apply {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  gap: 0.5rem;
  border-radius: var(--metabiblioteca-radius-ui);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.95rem;
  font-weight: 900;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

html.metabiblioteca-theme body .metabiblioteca-search-reset {
  padding: 0 1.15rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 18%, #cbd5e1);
  background: #ffffff;
  color: var(--metabiblioteca-color-01, #08166b);
}

html.metabiblioteca-theme body .metabiblioteca-search-apply,
html.metabiblioteca-theme body .page_search button.submit.metabiblioteca-search-apply {
  padding: 0 1.35rem;
  border: 0;
  background: var(--metabiblioteca-color-01, #08166b);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-shadow: 0 14px 32px color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 24%, transparent);
  cursor: pointer;
}

html.metabiblioteca-theme body .metabiblioteca-search-apply svg {
  width: 1rem;
  height: 1rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-reset:hover,
html.metabiblioteca-theme body .metabiblioteca-search-reset:focus-visible,
html.metabiblioteca-theme body .metabiblioteca-search-apply:hover,
html.metabiblioteca-theme body .metabiblioteca-search-apply:focus-visible {
  background: var(--metabiblioteca-color-02, #0ea5e9);
  color: var(--metabiblioteca-color-04, #ffffff);
  border-color: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
  outline: none;
}

html.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin: clamp(1rem, 2vw, 1.5rem) 0 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 12%, #dbe4ef);
}

html.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern p {
  flex: 0 0 100%;
  margin: 0 0 -0.55rem;
  color: var(--metabiblioteca-color-01, #08166b);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

html.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern h2 {
  margin: 0;
  color: var(--metabiblioteca-color-01, #08166b);
  font-family: var(--metabiblioteca-font-02, var(--metabiblioteca-font-01, inherit));
  font-size: clamp(1.35rem, 2.6vw, 2rem);
  line-height: 1.1;
  letter-spacing: -0.035em;
}

html.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern__meta {
  display: inline-flex;
  align-items: center;
  min-height: 2.1rem;
  padding: 0.35rem 0.7rem;
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 8%, transparent);
  color: color-mix(in srgb, var(--metabiblioteca-color-03, #0f172a) 78%, transparent);
  font-size: 0.86rem;
  font-weight: 750;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-results {
  display: grid;
  gap: 1rem;
  margin: 0 0 clamp(1.1rem, 2vw, 1.5rem);
  padding: 0;
  list-style: none;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-results__item {
  margin: 0;
  padding: clamp(0.85rem, 1.8vw, 1.05rem);
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.06);
}

html.metabiblioteca-theme body .metabiblioteca-search-empty {
  display: block;
  margin: 1rem 0;
}

html.metabiblioteca-theme body .metabiblioteca-search-pagination {
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid color-mix(in srgb, var(--metabiblioteca-color-01, #08166b) 10%, #dbe4ef);
  border-radius: var(--metabiblioteca-radius-ui);
  background: color-mix(in srgb, #ffffff 88%, var(--metabiblioteca-bg-light, #f8fafc) 12%);
}

html.dark.metabiblioteca-theme body .metabiblioteca-search-hero-modern,
html.dark.metabiblioteca-theme body .metabiblioteca-search-modern-card,
html.dark.metabiblioteca-theme body .metabiblioteca-search-active-filters,
html.dark.metabiblioteca-theme body .metabiblioteca-search-filters-panel,
html.dark.metabiblioteca-theme body .metabiblioteca-search-filter-card,
html.dark.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-results__item,
html.dark.metabiblioteca-theme body .metabiblioteca-search-pagination {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 86%, #ffffff 8%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #60a5fa) 34%, transparent);
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.28);
}

html.dark.metabiblioteca-theme body .metabiblioteca-search-hero-modern__eyebrow,
html.dark.metabiblioteca-theme body .metabiblioteca-search-chip,
html.dark.metabiblioteca-theme body .metabiblioteca-search-reset,
html.dark.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-combobox--page,
html.dark.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern input,
html.dark.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern select,
html.dark.metabiblioteca-theme body .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme body .metabiblioteca-search-field select {
  background: color-mix(in srgb, var(--metabiblioteca-bg-dark, #020617) 78%, #ffffff 10%);
  border-color: color-mix(in srgb, var(--metabiblioteca-color-01, #60a5fa) 36%, transparent);
}

html.dark.metabiblioteca-theme body .metabiblioteca-search-hero-modern h1,
html.dark.metabiblioteca-theme body .metabiblioteca-search-hero-modern__eyebrow,
html.dark.metabiblioteca-theme body .metabiblioteca-search-active-filters__header,
html.dark.metabiblioteca-theme body .metabiblioteca-search-active-filters__clear,
html.dark.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-text,
html.dark.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-toggle,
html.dark.metabiblioteca-theme body .page_search .date_range legend,
html.dark.metabiblioteca-theme body .metabiblioteca-search-field .label,
html.dark.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern h2,
html.dark.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern p,
html.dark.metabiblioteca-theme body .metabiblioteca-search-chip__label {
  color: var(--metabiblioteca-color-04, #ffffff);
}

html.dark.metabiblioteca-theme body .metabiblioteca-search-hero-modern p:not(.metabiblioteca-search-hero-modern__eyebrow),
html.dark.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-text small,
html.dark.metabiblioteca-theme body .metabiblioteca-search-active-filters__empty,
html.dark.metabiblioteca-theme body .page_search .date_range label,
html.dark.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern__meta {
  color: color-mix(in srgb, var(--metabiblioteca-color-04, #ffffff) 74%, transparent);
}

html.dark.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-input,
html.dark.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern input,
html.dark.metabiblioteca-theme body .page_search .search_advanced.metabiblioteca-search-advanced-modern select,
html.dark.metabiblioteca-theme body .metabiblioteca-search-field input,
html.dark.metabiblioteca-theme body .metabiblioteca-search-field select,
html.dark.metabiblioteca-theme body .metabiblioteca-search-chip__value {
  color: var(--metabiblioteca-color-04, #ffffff);
}

@media (max-width: 1024px) {
  html.metabiblioteca-theme body .metabiblioteca-search-advanced-modern__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page {
    padding-inline: 0.75rem;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-hero-modern {
    border-radius: var(--metabiblioteca-radius-ui);
  }

  html.metabiblioteca-theme body .metabiblioteca-search-modern-card {
    padding: 0.75rem;
    border-radius: var(--metabiblioteca-radius-ui);
  }

  html.metabiblioteca-theme body .metabiblioteca-search-active-filters__list {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 0.2rem;
    scrollbar-width: thin;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-chip {
    flex: 0 0 auto;
    max-width: 84vw;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-date-grid,
  html.metabiblioteca-theme body .page_search .date_range.metabiblioteca-search-date-grid {
    grid-template-columns: 1fr;
  }

  html.metabiblioteca-theme body .page_search .date_range ol,
  html.metabiblioteca-theme body .page_search .date_range ul {
    grid-template-columns: 1fr;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-actions-modern {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-reset,
  html.metabiblioteca-theme body .metabiblioteca-search-apply {
    width: 100%;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-results-heading-modern {
    align-items: start;
  }
}

@media (max-width: 520px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page .metabiblioteca-search-combobox--page {
    --metabiblioteca-search-action-size: 34px;
    --metabiblioteca-search-action-icon-size: 15px;
    min-height: 48px;
    padding-left: 0.8rem;
    gap: 0.25rem;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary {
    align-items: flex-start;
    min-height: 0;
  }

  html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-text small {
    display: none;
  }
}

/* ========================================================================== */
/* Search page stability pass: modern frontend without breaking OJS results    */
/* ========================================================================== */
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern *,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern *::before,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern *::after {
  box-sizing: border-box;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-hero-modern,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-modern-form,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-modern-card,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results-heading-modern,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-pagination,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-empty {
  max-width: 100%;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-hero-modern {
  overflow: hidden;
  margin-bottom: clamp(1rem, 2vw, 1.35rem);
  padding: clamp(1.35rem, 3vw, 2.25rem);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-hero-modern h1 {
  font-size: clamp(1.9rem, 4vw, 3rem);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-modern-card {
  position: relative;
  z-index: 1;
  overflow: visible;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
  padding: clamp(0.85rem, 1.8vw, 1.15rem);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-combobox--page {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.34rem;
  min-width: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-combobox--page .metabiblioteca-search-input {
  flex: 1 1 auto;
  min-width: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-combobox__clear,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-voice-control,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-combobox__submit {
  flex: 0 0 var(--metabiblioteca-search-action-size, 42px);
  width: var(--metabiblioteca-search-action-size, 42px);
  height: var(--metabiblioteca-search-action-size, 42px);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-active-filters {
  overflow: hidden;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-active-filters__header {
  align-items: center;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-chip {
  max-width: 100%;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-chip__value {
  max-width: min(36rem, 58vw);
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filters-panel {
  overflow: hidden;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filters-panel__summary {
  min-height: 0;
  align-items: center;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-advanced-modern__grid {
  grid-template-columns: minmax(0, 1fr);
  gap: 0.9rem;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-date-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.9rem;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .page_search .author.metabiblioteca-search-filter-card {
  width: 100%;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-field {
  min-width: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-field input,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-field select,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .search_advanced.metabiblioteca-search-advanced-modern input,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .search_advanced.metabiblioteca-search-advanced-modern select {
  width: 100%;
  max-width: 100%;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-actions-modern {
  padding-top: 0.15rem;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results {
  display: grid;
  gap: 1rem;
  min-height: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item {
  display: block;
  min-height: 0;
  overflow: visible;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item:empty {
  display: none;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item .metabiblioteca-article-summary {
  display: flex;
  width: 100%;
  min-width: 0;
  visibility: visible;
  opacity: 1;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item .metabiblioteca-article-summary__content {
  min-width: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item .metabiblioteca-article-summary__title,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-results__item .metabiblioteca-article-summary__authors {
  visibility: visible;
  opacity: 1;
}

@media (min-width: 1180px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-advanced-modern__grid {
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  }
}

@media (max-width: 900px) {

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-date-grid,
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta {
    grid-template-columns: 1fr;
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-actions-modern {
    justify-content: stretch;
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-reset,
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-apply {
    flex: 1 1 12rem;
  }
}

@media (max-width: 640px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-hero-modern {
    padding: 1.15rem;
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-hero-modern h1 {
    font-size: clamp(1.75rem, 10vw, 2.35rem);
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-modern-card {
    padding: 0.75rem;
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-chip__value {
    max-width: 62vw;
  }
}

/* Autocomplete: keyword suggestions added from OJS controlled vocabulary metadata. */
html.metabiblioteca-theme body .metabiblioteca-search-autocomplete__item--keyword .metabiblioteca-search-autocomplete__hint {
  background: rgba(15, 76, 129, 0.08);
  color: var(--metabiblioteca-primary, #12005e);
}

html.dark.metabiblioteca-theme body .metabiblioteca-search-autocomplete__item--keyword .metabiblioteca-search-autocomplete__hint,
.dark .metabiblioteca-search-autocomplete__item--keyword .metabiblioteca-search-autocomplete__hint {
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
}

/* Corrección final de iconos en botones de galerada.
   Evita que los iconos dependan de wrappers genéricos o reglas heredadas de OJS/Tailwind. */
html.metabiblioteca-theme body .metabiblioteca-galley-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  white-space: nowrap;
  line-height: 1;
  color: var(--metabiblioteca-action-text, var(--metabiblioteca-color-04, #ffffff));
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon {
  display: inline-flex;
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  align-items: center;
  justify-content: center;
  color: currentColor;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon svg,
html.metabiblioteca-theme body .metabiblioteca-galley-link .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-galley-link svg {
  display: block;
  width: 1rem;
  height: 1rem;
  flex: 0 0 auto;
  color: currentColor;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon svg[fill="none"],
html.metabiblioteca-theme body .metabiblioteca-galley-link__icon svg[fill="none"] * {
  fill: none;
  stroke: currentColor;
  vector-effect: non-scaling-stroke;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon .metabiblioteca-icon-pdf,
html.metabiblioteca-theme body .metabiblioteca-galley-link__icon .metabiblioteca-icon-pdf * {
  fill: currentColor;
  stroke: none;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__label {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

/* Search advanced filters layout refinement: date cards keep natural width; author field takes remaining space */
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-advanced-modern__grid {
  display: grid;
  grid-template-columns: minmax(12rem, 0.55fr) minmax(12rem, 0.55fr) minmax(18rem, 1.35fr);
  gap: 0.9rem;
  align-items: stretch;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-date-grid {
  display: contents;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
  min-width: 0;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta .metabiblioteca-search-field,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta input,
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta select {
  width: 100%;
  max-width: 100%;
}

@media (max-width: 1024px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-advanced-modern__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta {
    grid-column: 1 / -1;
  }
}

@media (max-width: 640px) {
  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-advanced-modern__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .metabiblioteca-search-filter-card--meta {
    grid-column: auto;
  }
}

/* Search advanced filters: remove the extra outer frame around the author filter.
   The author input/select keep their own borders; this card only acts as layout container. */
html.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .author.metabiblioteca-search-filter-card--meta {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

html.dark.metabiblioteca-theme body .page_search.metabiblioteca-search-page--modern .author.metabiblioteca-search-filter-card--meta,
.dark .page_search.metabiblioteca-search-page--modern .author.metabiblioteca-search-filter-card--meta {
  border: 0;
  background: transparent;
  box-shadow: none;
}

/* Metabiblioteca icon system -------------------------------------------------
   Local inline SVG icons using one Lucide-style visual language: 24x24 canvas,
   2px centered stroke, round caps/joins and currentColor for theme-aware color. */
html.metabiblioteca-theme body .metabiblioteca-icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-icon,
.metabiblioteca-backend-icon .metabiblioteca-icon,
.metabiblioteca-inline-icon .metabiblioteca-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  vertical-align: -0.125em;
  color: currentColor;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
}

html.metabiblioteca-theme body .metabiblioteca-icon *,
.metabiblioteca-pdf-viewer-page .metabiblioteca-icon *,
.metabiblioteca-backend-icon .metabiblioteca-icon *,
.metabiblioteca-inline-icon .metabiblioteca-icon * {
  vector-effect: non-scaling-stroke;
}

html.metabiblioteca-theme body .metabiblioteca-icon--xl {
  width: 2rem;
  height: 2rem;
}

html.metabiblioteca-theme body .metabiblioteca-icon--2xl {
  width: 3rem;
  height: 3rem;
}

html.metabiblioteca-theme body .metabiblioteca-icon--brand,
html.metabiblioteca-theme body .metabiblioteca-icon--brand *,
.metabiblioteca-icon--brand,
.metabiblioteca-icon--brand * {
  stroke: none;
}

html.metabiblioteca-theme body .metabiblioteca-icon-orcid,
html.metabiblioteca-theme body .metabiblioteca-icon-ror {
  width: 1.25rem;
  height: 1.25rem;
  vertical-align: middle;
}

html.metabiblioteca-theme body .metabiblioteca-icon-pdf,
html.metabiblioteca-theme body .metabiblioteca-icon-pdf * {
  fill: none;
  stroke: currentColor;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control,
html.metabiblioteca-theme body .metabiblioteca-search-combobox__clear,
html.metabiblioteca-theme body .metabiblioteca-search-chip__remove,
html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-icon,
html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-toggle,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__icon,
.metabiblioteca-backend-icon,
.metabiblioteca-inline-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__clear .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-chip__remove .metabiblioteca-icon {
  width: 0.875rem;
  height: 0.875rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-galley-link__icon .metabiblioteca-icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__icon .metabiblioteca-icon,
.metabiblioteca-backend-icon .metabiblioteca-icon,
.metabiblioteca-inline-icon .metabiblioteca-icon {
  width: 1rem;
  height: 1rem;
}

html.metabiblioteca-theme body .metabiblioteca-theme-selector__button {
  background: transparent;
  box-shadow: none;
  border: none;
  color: var(--metabiblioteca-color-03, #0f172a);
}

html.dark.metabiblioteca-theme body .metabiblioteca-theme-selector__button,
.dark .metabiblioteca-theme-selector__button {
  color: rgba(255, 255, 255, 0.92);
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel[open] .metabiblioteca-search-filters-panel__summary-toggle .metabiblioteca-icon {
  transform: rotate(180deg);
}

html.metabiblioteca-theme body .metabiblioteca-search-filters-panel__summary-toggle .metabiblioteca-icon {
  transition: transform 180ms ease;
}

/* Unified icon system: Lucide-style inline SVG, no icon font dependency.
   All action icons use a 24px viewBox, currentColor, round caps/joins and a 2px stroke. */
.metabiblioteca-icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  min-width: 1em;
  min-height: 1em;
  flex: 0 0 auto;
  color: currentColor;
  vertical-align: -0.125em;
}

.metabiblioteca-icon--line,
.metabiblioteca-icon--line * {
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.metabiblioteca-icon--logo-sm {
  width: 2rem;
  height: 2rem;
}

.metabiblioteca-icon--logo-lg {
  width: 3rem;
  height: 3rem;
}

.metabiblioteca-brand-icon {
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  min-width: 1.25em;
  min-height: 1.25em;
  flex: 0 0 auto;
  vertical-align: -0.2em;
}

.metabiblioteca-inline-icon,
.metabiblioteca-alert-icon,
.metabiblioteca-backend-icon,
.metabiblioteca-pdf-toolbar__icon,
.metabiblioteca-article-summary__meta-badge [aria-hidden="true"],
.metabiblioteca-galley-link__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: currentColor;
}

.metabiblioteca-alert-icon,
.metabiblioteca-backend-icon {
  width: 1.5rem;
  height: 1.5rem;
}

.metabiblioteca-inline-icon {
  width: 1em;
  height: 1em;
  margin-inline-end: 0.35rem;
}

.metabiblioteca-article-summary__meta-badge .metabiblioteca-icon,
.metabiblioteca-galley-link__icon .metabiblioteca-icon,
.metabiblioteca-pdf-toolbar__icon .metabiblioteca-icon {
  width: 1rem;
  height: 1rem;
}

.metabiblioteca-search-combobox__submit .metabiblioteca-icon,
.metabiblioteca-search-apply .metabiblioteca-icon {
  width: var(--metabiblioteca-search-action-icon-size, 1rem);
  height: var(--metabiblioteca-search-action-icon-size, 1rem);
}

.metabiblioteca-galley-link__icon .metabiblioteca-icon-pdf,
.metabiblioteca-galley-link__icon .metabiblioteca-icon-pdf * {
  fill: currentColor;
  stroke: none;
}

.metabiblioteca-pdf-toolbar__button .metabiblioteca-icon,
.metabiblioteca-galley-link .metabiblioteca-icon,
.metabiblioteca-search-combobox__submit .metabiblioteca-icon,
.metabiblioteca-search-apply .metabiblioteca-icon {
  color: currentColor;
}

.metabiblioteca-theme-selector__button {
  position: relative;
  width: 2.125rem;
  height: 2.125rem;
  min-width: 2.125rem;
  min-height: 2.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  overflow: hidden;
  line-height: 1;
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  transition: background-color 0.25s cubic-bezier(0.4, 0, 0.2, 1),
              color 0.25s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

.metabiblioteca-theme-selector__button:hover,
.metabiblioteca-theme-selector__button:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 12%, transparent);
  color: var(--metabiblioteca-color-01, #0284c7);
  -webkit-text-fill-color: currentColor;
}

html.dark.metabiblioteca-theme body .metabiblioteca-theme-selector__button,
.dark .metabiblioteca-theme-selector__button {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: currentColor;
}

html.dark.metabiblioteca-theme body .metabiblioteca-theme-selector__button:hover,
html.dark.metabiblioteca-theme body .metabiblioteca-theme-selector__button:focus-visible,
.dark .metabiblioteca-theme-selector__button:hover,
.dark .metabiblioteca-theme-selector__button:focus-visible {
  background: color-mix(in srgb, var(--metabiblioteca-color-02, #38bdf8) 16%, transparent);
  color: var(--metabiblioteca-color-02, #38bdf8);
  -webkit-text-fill-color: currentColor;
}

.metabiblioteca-theme-selector__button:active {
  transform: scale(0.92);
}

.metabiblioteca-theme-selector__icon-wrapper {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  pointer-events: none;
}

.metabiblioteca-theme-selector .metabiblioteca-icon,
.metabiblioteca-mobile-theme-control .metabiblioteca-icon {
  width: 1.125rem;
  height: 1.125rem;
  font-size: 1.125rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: 0;
  margin: 0;
  color: currentColor;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform-origin: center center;
}

/* Rollover: sutil giro y ampliación elástica del icono */
.metabiblioteca-theme-selector__button:hover .metabiblioteca-icon,
.metabiblioteca-theme-selector__button:focus-visible .metabiblioteca-icon {
  transform: rotate(20deg) scale(1.15);
}

/* Transiciones fluidas entre modos claro / oscuro / sistema */
.metabiblioteca-theme-transition-enter {
  transition: opacity 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
              transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.metabiblioteca-theme-transition-enter-start {
  opacity: 0;
  transform: rotate(-100deg) scale(0.4);
}

.metabiblioteca-theme-transition-enter-end {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.metabiblioteca-theme-transition-leave {
  transition: opacity 0.22s cubic-bezier(0.4, 0, 1, 1),
              transform 0.22s cubic-bezier(0.4, 0, 1, 1);
}

.metabiblioteca-theme-transition-leave-start {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

.metabiblioteca-theme-transition-leave-end {
  opacity: 0;
  transform: rotate(100deg) scale(0.4);
}

.metabiblioteca-search-combobox__clear .metabiblioteca-icon,
.metabiblioteca-primary-desktop-nav__caret .metabiblioteca-icon,
.metabiblioteca-user-desktop-nav__caret .metabiblioteca-icon {
  width: 0.95em;
  height: 0.95em;
}

html.metabiblioteca-theme body .metabiblioteca-icon--logo-sm {
  width: 2rem;
  height: 2rem;
}

html.metabiblioteca-theme body .metabiblioteca-icon--logo-lg {
  width: 3rem;
  height: 3rem;
}

.metabiblioteca-icon--brand,
.metabiblioteca-brand-icon {
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  min-width: 1.25em;
  min-height: 1.25em;
  flex: 0 0 auto;
  vertical-align: -0.2em;
}


/* ===========================================================================
   61. Font Awesome canonical icon system
   ---------------------------------------------------------------------------
   El tema usa Font Awesome Free como fuente central de iconos. Los helpers
   metabiblioteca_icon_*.tpl emiten <i> con clases fa-* y esta capa normaliza
   tamaño, alineacion y herencia de color sin depender de SVG locales.
   =========================================================================== */

html.metabiblioteca-theme body .metabiblioteca-icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-icon,
.metabiblioteca-backend-icon .metabiblioteca-icon,
.metabiblioteca-inline-icon .metabiblioteca-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.15em;
  min-width: 1.15em;
  height: 1em;
  line-height: 1;
  color: currentColor;
  font-size: 1em;
  text-align: center;
  vertical-align: -0.09em;
}

html.metabiblioteca-theme body .metabiblioteca-icon::before,
.metabiblioteca-pdf-viewer-page .metabiblioteca-icon::before,
.metabiblioteca-backend-icon .metabiblioteca-icon::before,
.metabiblioteca-inline-icon .metabiblioteca-icon::before {
  display: inline-block;
  line-height: 1;
}

html.metabiblioteca-theme body .metabiblioteca-icon--logo-sm {
  width: 2rem;
  min-width: 2rem;
  height: 2rem;
  font-size: 1.75rem;
  vertical-align: middle;
}

html.metabiblioteca-theme body .metabiblioteca-icon--logo-lg {
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  font-size: 2.5rem;
  vertical-align: middle;
}

html.metabiblioteca-theme body .metabiblioteca-icon--brand,
html.metabiblioteca-theme body .metabiblioteca-brand-icon {
  width: 1.2em;
  min-width: 1.2em;
  height: 1.2em;
  font-size: 1.1em;
  vertical-align: -0.12em;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__submit .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-apply .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-voice-control .metabiblioteca-icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__button .metabiblioteca-icon,
.metabiblioteca-backend-icon .metabiblioteca-icon {
  width: 1em;
  min-width: 1em;
  height: 1em;
  font-size: 1rem;
  vertical-align: middle;
}

html.metabiblioteca-theme body .metabiblioteca-search-combobox__clear .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-search-chip__remove .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-primary-desktop-nav__caret .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-user-desktop-nav__caret .metabiblioteca-icon {
  width: 1em;
  min-width: 1em;
  height: 1em;
  font-size: 0.9em;
}

html.metabiblioteca-theme body .metabiblioteca-article-carousel__button .metabiblioteca-icon {
  width: 1em;
  min-width: 1em;
  height: 1em;
  font-size: 1rem;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control__fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: currentColor;
  line-height: 1;
}

html.metabiblioteca-theme body .metabiblioteca-search-voice-control:has(> :not(.metabiblioteca-search-voice-control__fallback)) .metabiblioteca-search-voice-control__fallback {
  display: none;
}

html.metabiblioteca-theme body .metabiblioteca-galley-link__icon .metabiblioteca-icon,
html.metabiblioteca-theme body .metabiblioteca-article-summary__meta-badge .metabiblioteca-icon,
.metabiblioteca-pdf-viewer-page .metabiblioteca-pdf-toolbar__icon .metabiblioteca-icon {
  color: currentColor;
}

html.metabiblioteca-theme body .page_search.metabiblioteca-search-native .search_input::before,
html.metabiblioteca-theme body .page_search .search_input::after {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

/* ========================================================================== */
/* Layout lateral unificado: rail izquierdo de articulo y sidebar global       */
/* -------------------------------------------------------------------------- */
/* Mantiene el mismo ancho visual para los bloques laterales de escritorio y   */
/* libera mas espacio para el contenido principal en articulo, busqueda,       */
/* numeros, categorias, archivo y paginas con sidebar global.                  */
:root {
  --metabiblioteca-side-rail-width: 14.5rem;
  --metabiblioteca-side-rail-width-compact: 13rem;
}

@media (min-width: 1280px) {
  body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full {
    max-width: min(100%, 96rem);
    gap: clamp(.75rem, 1.15vw, 1.25rem);
    padding-left: clamp(.5rem, 1vw, 1rem);
    padding-right: clamp(.5rem, 1vw, 1rem);
  }

  body:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main {
    flex: 1 1 0;
    min-width: 0;
    padding-left: clamp(.5rem, 1vw, 1rem);
    padding-right: clamp(.5rem, 1vw, 1rem);
  }

  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar {
    flex: 0 0 var(--metabiblioteca-side-rail-width);
    width: var(--metabiblioteca-side-rail-width);
    min-width: var(--metabiblioteca-side-rail-width);
    max-width: var(--metabiblioteca-side-rail-width);
    padding-left: 0;
    padding-right: 0;
  }

  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar__nav {
    width: 100%;
    max-width: 100%;
  }

  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar .pkp_block,
  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar [class*="block_"],
  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar__nav>ul>li,
  body:not(.pkp_page_login):not(.pkp_page_user) .metabiblioteca-global-sidebar nav>ul>li,
  body:not(.pkp_page_login):not(.pkp_page_user) aside.metabiblioteca-global-sidebar>ul>li {
    width: 100%;
    max-width: 100%;
  }

  .metabiblioteca-article-layout {
    grid-template-columns: var(--metabiblioteca-side-rail-width) minmax(0, 1fr);
    column-gap: clamp(.85rem, 1.2vw, 1.25rem);
  }

  .metabiblioteca-article-aside,
  .metabiblioteca-article-aside--left {
    width: var(--metabiblioteca-side-rail-width);
    max-width: var(--metabiblioteca-side-rail-width);
  }

  .metabiblioteca-article-main {
    min-width: 0;
    width: 100%;
  }
}

@media (min-width: 1101px) and (max-width: 1279px) {
  .metabiblioteca-article-layout {
    grid-template-columns: var(--metabiblioteca-side-rail-width-compact) minmax(0, 1fr);
  }

  .metabiblioteca-article-aside,
  .metabiblioteca-article-aside--left {
    width: var(--metabiblioteca-side-rail-width-compact);
    max-width: var(--metabiblioteca-side-rail-width-compact);
  }
}

@media (max-width: 1100px) {

  .metabiblioteca-article-aside,
  .metabiblioteca-article-aside--left {
    width: auto;
    max-width: none;
  }
}

/* ==========================================================================
   71. Radio visual unificado
   --------------------------------------------------------------------------
   La UI publica usa un mismo radio compacto para tarjetas, widgets, botones,
   chips, formularios, dropdowns y paneles. Se evita mezclar radios grandes o
   pill/circular con los bloques laterales compactos del tema.
   ========================================================================== */
html.metabiblioteca-theme {
  --metabiblioteca-radius-ui: 0.375rem;
  --metabiblioteca-radius: var(--metabiblioteca-radius-ui);
}

html.metabiblioteca-theme body :is(.rounded-sm,
  .rounded,
  .rounded-md,
  .rounded-lg,
  .rounded-xl,
  .rounded-2xl,
  .rounded-3xl,
  .rounded-full,
  .metabiblioteca-widget,
  .metabiblioteca-widget__title,
  .metabiblioteca-widget__body,
  .metabiblioteca-global-sidebar .block,
  .metabiblioteca-article-aside,
  .metabiblioteca-article-aside .block,
  .metabiblioteca-section,
  .metabiblioteca-card,
  .metabiblioteca-home-card,
  .metabiblioteca-search-card,
  .metabiblioteca-search-panel,
  .metabiblioteca-search-filter-card,
  .metabiblioteca-search-combobox,
  .metabiblioteca-search-autocomplete,
  .metabiblioteca-primary-desktop-nav__link,
  .metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-user-desktop-nav__link,
  .metabiblioteca-user-desktop-nav__submenu,
  .metabiblioteca-galley-link,
  .metabiblioteca-article-summary,
  .metabiblioteca-article-summary__meta-badge,
  .metabiblioteca-article-tab,
  .metabiblioteca-article-tab__button,
  .metabiblioteca-article-tab__panel,
  .metabiblioteca-mobile-panel,
  .metabiblioteca-mobile-panel__section,
  button,
  input,
  select,
  textarea,
  summary) {
  border-radius: var(--metabiblioteca-radius-ui);
}

html.metabiblioteca-theme body :is(.before\:rounded-full)::before {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* ==========================================================================
   Correccion final de radio compacto uniforme
   --------------------------------------------------------------------------
   Este bloque se carga al final del CSS del tema y reemplaza de forma visible
   las utilidades rounded-* de Tailwind y radios heredados de componentes OJS.
   ========================================================================== */
html.metabiblioteca-theme {
  --metabiblioteca-radius-ui: 0.375rem;
  --metabiblioteca-radius: var(--metabiblioteca-radius-ui);
}

html.metabiblioteca-theme body :where([class*="rounded"],
  [class*="radius"],
  .pkp_block,
  .block_make_submission,
  .metabiblioteca-widget,
  .metabiblioteca-widget__title,
  .metabiblioteca-widget__body,
  .metabiblioteca-global-sidebar__nav > ul > li,
  .metabiblioteca-global-sidebar nav > ul > li,
  .metabiblioteca-article-aside,
  .metabiblioteca-article-main,
  .metabiblioteca-section,
  .metabiblioteca-card,
  .metabiblioteca-home-card,
  .metabiblioteca-article-summary,
  .metabiblioteca-article-summary__cover,
  .metabiblioteca-article-summary__meta-badge,
  .metabiblioteca-galley-link,
  .metabiblioteca-search-combobox,
  .metabiblioteca-search-autocomplete,
  .metabiblioteca-search-panel,
  .metabiblioteca-search-filter-card,
  .metabiblioteca-search-active-filter,
  .metabiblioteca-primary-desktop-nav__link,
  .metabiblioteca-primary-desktop-nav__submenu,
  .metabiblioteca-user-desktop-nav__link,
  .metabiblioteca-user-desktop-nav__submenu,
  .metabiblioteca-mobile-panel,
  .metabiblioteca-mobile-panel__section,
  .metabiblioteca-theme-selector__button,
  .metabiblioteca-search-control,
  button,
  input,
  select,
  textarea,
  summary) {
  border-radius: var(--metabiblioteca-radius-ui);
}

html.metabiblioteca-theme body :where(.metabiblioteca-widget__title,
  .metabiblioteca-card__title,
  .metabiblioteca-sidebar-block__title) {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

html.metabiblioteca-theme body :where(.metabiblioteca-widget__body,
  .metabiblioteca-card__body,
  .metabiblioteca-sidebar-block__body) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

html.metabiblioteca-theme body :where([class*="rounded"]):before,
html.metabiblioteca-theme body :where([class*="rounded"]):after,
html.metabiblioteca-theme body :where(.metabiblioteca-search-combobox):before,
html.metabiblioteca-theme body :where(.metabiblioteca-search-combobox):after {
  border-radius: var(--metabiblioteca-radius-ui);
}

/* ==========================================================================
   Titulos compactos uniformes de bloques laterales
   --------------------------------------------------------------------------
   Todos los encabezados de widgets y bloques laterales usan una pastilla
   interna, no una franja completa. Esto iguala Descargas, DOI, Informacion,
   Envio, Palabras clave y cualquier bloque OJS/sidebar
   ========================================================================== */
html.metabiblioteca-theme body {
  --metabiblioteca-block-title-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  --metabiblioteca-block-title-margin: 0;
  --metabiblioteca-block-title-padding-y: 0.55rem;
  --metabiblioteca-block-title-padding-x: 0.8rem;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget > .metabiblioteca-widget__title,
  .metabiblioteca-side-card__title,
  .metabiblioteca-article-side-card__title,
  .metabiblioteca-global-sidebar .pkp_block > .title,
  .metabiblioteca-global-sidebar .pkp_block > h2:first-child,
  .metabiblioteca-global-sidebar [class*="block_"] > .title,
  .metabiblioteca-global-sidebar [class*="block_"] > h2:first-child,
  aside .pkp_block > .title,
  aside .pkp_block > h2:first-child,
  aside [class*="block_"] > .title,
  aside [class*="block_"] > h2:first-child,
  .metabiblioteca-global-sidebar__nav > ul > li > a:first-child,
  .metabiblioteca-global-sidebar nav > ul > li > a:first-child,
  aside.metabiblioteca-global-sidebar > ul > li > a:first-child,
  .metabiblioteca-global-sidebar__nav > ul > li > .title:first-child,
  .metabiblioteca-global-sidebar nav > ul > li > .title:first-child) {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 2.05rem;
  margin: 0;
  padding: var(--metabiblioteca-block-title-padding-y) var(--metabiblioteca-block-title-padding-x);
  border: 0;
  border-radius: var(--metabiblioteca-block-title-radius) var(--metabiblioteca-block-title-radius) 0 0;
  background: var(--metabiblioteca-color-01, #100959);
  color: var(--metabiblioteca-color-04, #ffffff);
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: 0.86rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  text-decoration: none;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget > .metabiblioteca-widget__title *,
  .metabiblioteca-side-card__title *,
  .metabiblioteca-article-side-card__title *,
  .metabiblioteca-global-sidebar .pkp_block > .title *,
  .metabiblioteca-global-sidebar .pkp_block > h2:first-child *,
  .metabiblioteca-global-sidebar [class*="block_"] > .title *,
  .metabiblioteca-global-sidebar [class*="block_"] > h2:first-child *,
  aside .pkp_block > .title *,
  aside .pkp_block > h2:first-child *,
  aside [class*="block_"] > .title *,
  aside [class*="block_"] > h2:first-child *,
  .metabiblioteca-global-sidebar__nav > ul > li > a:first-child *,
  .metabiblioteca-global-sidebar nav > ul > li > a:first-child *,
  aside.metabiblioteca-global-sidebar > ul > li > a:first-child *) {
  color: inherit;
  fill: currentColor;
  stroke: currentColor;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget > .metabiblioteca-widget__title + *,
  .metabiblioteca-global-sidebar .pkp_block > .title + *,
  .metabiblioteca-global-sidebar .pkp_block > h2:first-child + *,
  .metabiblioteca-global-sidebar [class*="block_"] > .title + *,
  .metabiblioteca-global-sidebar [class*="block_"] > h2:first-child + *,
  aside .pkp_block > .title + *,
  aside .pkp_block > h2:first-child + *,
  aside [class*="block_"] > .title + *,
  aside [class*="block_"] > h2:first-child + *,
  .metabiblioteca-global-sidebar__nav > ul > li > a:first-child + ul,
  .metabiblioteca-global-sidebar nav > ul > li > a:first-child + ul,
  aside.metabiblioteca-global-sidebar > ul > li > a:first-child + ul) {
  margin-top: 0.65rem;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget,
  .metabiblioteca-global-sidebar .pkp_block,
  .metabiblioteca-global-sidebar [class*="block_"],
  .metabiblioteca-global-sidebar__nav > ul > li,
  .metabiblioteca-global-sidebar nav > ul > li,
  aside.metabiblioteca-global-sidebar > ul > li) {
  padding-top: 0;
}

/* ========================================================================== */
/* Ajuste final: titulos de bloques sin separacion externa                    */
/* -------------------------------------------------------------------------- */
/* Los encabezados de widgets deben pegarse al borde superior del bloque, sin
   margen/padding exterior que genere una franja alrededor del titulo. */
html.metabiblioteca-theme body {
  --metabiblioteca-block-title-margin: 0;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget > .metabiblioteca-widget__title,
  .metabiblioteca-side-card__title,
  .metabiblioteca-article-side-card__title,
  .metabiblioteca-global-sidebar .pkp_block > .title,
  .metabiblioteca-global-sidebar .pkp_block > h2:first-child,
  .metabiblioteca-global-sidebar [class*="block_"] > .title,
  .metabiblioteca-global-sidebar [class*="block_"] > h2:first-child,
  aside .pkp_block > .title,
  aside .pkp_block > h2:first-child,
  aside [class*="block_"] > .title,
  aside [class*="block_"] > h2:first-child,
  .metabiblioteca-global-sidebar__nav > ul > li > a:first-child,
  .metabiblioteca-global-sidebar nav > ul > li > a:first-child,
  aside.metabiblioteca-global-sidebar > ul > li > a:first-child,
  .metabiblioteca-global-sidebar__nav > ul > li > .title:first-child,
  .metabiblioteca-global-sidebar nav > ul > li > .title:first-child) {
  width: 100%;
  margin: 0;
  border-radius: var(--metabiblioteca-radius-ui) var(--metabiblioteca-radius-ui) 0 0;
}

html.metabiblioteca-theme body :is(.metabiblioteca-widget > .metabiblioteca-widget__title + *,
  .metabiblioteca-global-sidebar .pkp_block > .title + *,
  .metabiblioteca-global-sidebar .pkp_block > h2:first-child + *,
  .metabiblioteca-global-sidebar [class*="block_"] > .title + *,
  .metabiblioteca-global-sidebar [class*="block_"] > h2:first-child + *,
  aside .pkp_block > .title + *,
  aside .pkp_block > h2:first-child + *,
  aside [class*="block_"] > .title + *,
  aside [class*="block_"] > h2:first-child + *,
  .metabiblioteca-global-sidebar__nav > ul > li > a:first-child + ul,
  .metabiblioteca-global-sidebar nav > ul > li > a:first-child + ul,
  aside.metabiblioteca-global-sidebar > ul > li > a:first-child + ul) {
  margin-top: 0;
}

/* ==========================================================================
   Header language dropdown
   ========================================================================== */
.metabiblioteca-locale-dropdown {
  position: relative;
  z-index: 266;
  display: inline-flex;
  align-items: center;
  overflow: visible;
}

.metabiblioteca-locale-dropdown__trigger {
  position: relative;
  z-index: 267;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .28rem;
  min-height: 2.125rem;
  height: 2.125rem;
  padding: 0 .625rem;
  border: none;
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  background: transparent;
  color: var(--metabiblioteca-color-03, #0f172a);
  -webkit-text-fill-color: currentColor;
  font: inherit;
  font-family: var(--metabiblioteca-font-01, inherit);
  font-size: var(--metabiblioteca-font-size-01, inherit);
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  box-shadow: none;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), background-color .2s cubic-bezier(0.4, 0, 0.2, 1);
}

.metabiblioteca-locale-dropdown__trigger:hover,
.metabiblioteca-locale-dropdown__trigger:focus {
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #dc2626);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
  outline: none;
}

.metabiblioteca-locale-dropdown__caret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  -webkit-text-fill-color: currentColor;
  line-height: 1;
  transform: none !important;
  transition: color .2s ease;
}

.metabiblioteca-locale-dropdown:hover .metabiblioteca-locale-dropdown__caret,
.metabiblioteca-locale-dropdown:focus-within .metabiblioteca-locale-dropdown__caret,
.metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__caret,
.metabiblioteca-locale-dropdown__trigger:focus .metabiblioteca-locale-dropdown__caret {
  transform: none !important;
}

.metabiblioteca-locale-dropdown__label {
  display: none;
}

.metabiblioteca-locale-dropdown__menu {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  z-index: 268;
  min-width: auto;
  width: max-content;
  margin: 0;
  padding: .35rem;
  list-style: none;
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .25));
  border-radius: var(--metabiblioteca-radius-ui, .45rem);
  background: var(--mb-editorial-surface, #fff);
  box-shadow: 0 10px 25px -4px rgba(15, 23, 42, .12), 0 4px 6px -2px rgba(15, 23, 42, .05);
}

.metabiblioteca-locale-dropdown:hover>.metabiblioteca-locale-dropdown__menu,
.metabiblioteca-locale-dropdown:focus-within>.metabiblioteca-locale-dropdown__menu {
  display: flex;
  flex-direction: column;
  gap: .35rem;
}

.metabiblioteca-locale-dropdown__menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: .4rem;
  background: transparent;
}

.metabiblioteca-locale-dropdown__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0;
  padding: 0;
}

.metabiblioteca-locale-dropdown__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  text-decoration: none;
  background: transparent !important;
  box-shadow: none !important;
}

.metabiblioteca-locale-dropdown__link:hover,
.metabiblioteca-locale-dropdown__link:focus {
  background: transparent !important;
  outline: none;
}

/* Tarjeticas de idioma SOLO dentro del menú desplegable */
.metabiblioteca-locale-dropdown__menu .metabiblioteca-locale-dropdown__code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.35rem;
  height: 1.95rem;
  padding: .15rem .45rem;
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 11%, transparent);
  color: var(--metabiblioteca-color-01, #dc2626);
  -webkit-text-fill-color: var(--metabiblioteca-color-01, #dc2626);
  font-size: .84rem;
  font-weight: 850;
  letter-spacing: .04em;
  line-height: 1;
  text-align: center;
  transition: all .2s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing: border-box;
}

.metabiblioteca-locale-dropdown__link:hover .metabiblioteca-locale-dropdown__code,
.metabiblioteca-locale-dropdown__link:focus .metabiblioteca-locale-dropdown__code {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 24%, transparent);
  transform: scale(1.06);
}

.metabiblioteca-locale-dropdown__item--current .metabiblioteca-locale-dropdown__code {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 19%, transparent);
  box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 42%, transparent);
}

.metabiblioteca-locale-dropdown__item--current .metabiblioteca-locale-dropdown__link {
  background: transparent !important;
}

html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__menu .metabiblioteca-locale-dropdown__code,
.dark .metabiblioteca-locale-dropdown__menu .metabiblioteca-locale-dropdown__code {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 22%, transparent);
  color: #f87171;
  -webkit-text-fill-color: #f87171;
}

html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__item--current .metabiblioteca-locale-dropdown__code,
.dark .metabiblioteca-locale-dropdown__item--current .metabiblioteca-locale-dropdown__code {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 32%, transparent);
  box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 60%, transparent);
  color: #fca5a5;
  -webkit-text-fill-color: #fca5a5;
}

html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__link:hover .metabiblioteca-locale-dropdown__code,
html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__link:focus .metabiblioteca-locale-dropdown__code,
.dark .metabiblioteca-locale-dropdown__link:hover .metabiblioteca-locale-dropdown__code,
.dark .metabiblioteca-locale-dropdown__link:focus .metabiblioteca-locale-dropdown__code {
  background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 40%, transparent);
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  transform: scale(1.06);
}

/* En el botón disparador de la cabecera, el texto del idioma es limpio y hereda el diseño unificado */
.metabiblioteca-locale-dropdown__trigger .metabiblioteca-locale-dropdown__code {
  display: inline-flex;
  align-items: center;
  min-width: 0 !important;
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  letter-spacing: inherit !important;
  line-height: inherit !important;
  box-shadow: none !important;
  transform: none !important;
  transition: none !important;
}

.metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__code,
.metabiblioteca-locale-dropdown__trigger:focus .metabiblioteca-locale-dropdown__code {
  background: transparent !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  transform: none !important;
}

.metabiblioteca-locale-dropdown__name {
  display: none;
}

.metabiblioteca-locale-dropdown__current-dot {
  display: none;
}

html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__trigger,
.dark .metabiblioteca-locale-dropdown__trigger,
html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__menu,
.dark .metabiblioteca-locale-dropdown__menu {
  background: var(--mb-editorial-surface, #0f172a);
  border-color: rgba(148, 163, 184, .25);
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff);
  box-shadow: 0 10px 25px -3px rgba(0, 0, 0, .5);
}

html.dark.metabiblioteca-theme .metabiblioteca-locale-dropdown__link,
.dark .metabiblioteca-locale-dropdown__link {
  color: var(--metabiblioteca-color-04, #fff);
  -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff);
  background: transparent !important;
}

@media (max-width: 1023.98px) {
  .metabiblioteca-locale-dropdown {
    display: none;
  }
}

/* ========================================================================== 
   Mobile language dropdown inside hamburger menu
   ========================================================================== */
.metabiblioteca-mobile-locale-control {
  display: block;
  width: 100%;
}

.metabiblioteca-mobile-locale-control .metabiblioteca-locale-dropdown,
.metabiblioteca-locale-dropdown--mobile {
  display: block;
  width: 100%;
  position: relative;
  z-index: auto;
}

.metabiblioteca-locale-dropdown--mobile>summary.metabiblioteca-locale-dropdown__trigger {
  display: flex;
  width: 100%;
  min-height: 2.45rem;
  justify-content: space-between;
  align-items: center;
  padding: .45rem .8rem;
  list-style: none;
  background: color-mix(in srgb, var(--metabiblioteca-surface, #fff) 94%, var(--metabiblioteca-color-01, #dc2626) 6%);
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  cursor: pointer;
}

.metabiblioteca-locale-dropdown--mobile>summary.metabiblioteca-locale-dropdown__trigger::-webkit-details-marker {
  display: none;
}

.metabiblioteca-locale-dropdown--mobile[open]>.metabiblioteca-locale-dropdown__trigger .metabiblioteca-locale-dropdown__caret {
  transform: none !important;
}

.metabiblioteca-locale-dropdown--mobile .metabiblioteca-locale-dropdown__menu {
  position: static;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: .5rem;
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: .55rem 0 0;
  padding: .5rem;
  box-shadow: none;
  background: color-mix(in srgb, var(--metabiblioteca-surface, #fff) 98%, var(--metabiblioteca-color-01, #dc2626) 2%);
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, .25));
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
}

.metabiblioteca-locale-dropdown--mobile .metabiblioteca-locale-dropdown__menu::before {
  content: none;
}

.metabiblioteca-locale-dropdown--mobile .metabiblioteca-locale-dropdown__item {
  width: auto;
}

.metabiblioteca-locale-dropdown--mobile .metabiblioteca-locale-dropdown__link {
  min-height: auto;
  width: auto;
  padding: 0 !important;
  background: transparent !important;
}

@media (max-width: 1023.98px) {

  .metabiblioteca-mobile-locale-control .metabiblioteca-locale-dropdown,
  .metabiblioteca-locale-dropdown--mobile {
    display: block;
  }
}

/* ==========================================================================
   Header utilities: equal desktop controls
   --------------------------------------------------------------------------
   Keep the color-mode, language and user controls at the same width in the
   desktop header. This avoids uneven controls when labels have different text
   lengths while preserving dropdown behavior.
   ========================================================================== */
@media (min-width: 1024px) {
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-header-utilities {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    margin: 0;
    padding: 0;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-header-utilities>* {
    width: auto;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
    display: inline-flex;
    align-items: center;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown {
    width: auto;
    min-width: 0;
    display: inline-flex;
    align-items: center;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav {
    width: auto;
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: .25rem;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__item {
    width: auto;
    min-width: 0;
    display: inline-flex;
    align-items: center;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button {
    width: 2.125rem;
    height: 2.125rem;
    min-width: 2.125rem;
    min-height: 2.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
    text-align: center;
    background: transparent;
    border: none;
    box-shadow: none;
    line-height: 1;
    color: var(--metabiblioteca-color-03, #0f172a);
    -webkit-text-fill-color: currentColor;
    cursor: pointer;
    position: relative;
    transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button:hover,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button:focus-visible {
    background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
    color: var(--metabiblioteca-color-01, #dc2626);
    -webkit-text-fill-color: currentColor;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button {
    color: var(--metabiblioteca-color-04, #fff);
    -webkit-text-fill-color: currentColor;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button:hover,
  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-theme-selector__button:focus-visible {
    background: color-mix(in srgb, var(--metabiblioteca-color-02, #38bdf8) 16%, transparent);
    color: var(--metabiblioteca-color-02, #38bdf8);
    -webkit-text-fill-color: currentColor;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger {
    width: auto;
    min-width: 0;
    height: 2.125rem;
    min-height: 2.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .28rem;
    padding: 0 .625rem;
    margin: 0;
    border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
    text-align: center;
    background: transparent;
    border: none;
    box-shadow: none;
    font-size: var(--metabiblioteca-font-size-01, inherit);
    font-family: var(--metabiblioteca-font-01, inherit);
    font-weight: 600;
    line-height: 1;
    color: var(--metabiblioteca-color-03, #0f172a);
    -webkit-text-fill-color: currentColor;
    transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
    color: var(--metabiblioteca-color-01, #dc2626);
    -webkit-text-fill-color: currentColor;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger .metabiblioteca-locale-dropdown__code {
    background: transparent !important;
    color: inherit !important;
    -webkit-text-fill-color: currentColor !important;
    padding: 0 !important;
    min-width: 0 !important;
    height: auto !important;
    font-size: inherit !important;
    font-weight: 600 !important;
    letter-spacing: inherit !important;
    line-height: 1 !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__code,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus .metabiblioteca-locale-dropdown__code {
    background: transparent !important;
    color: var(--metabiblioteca-color-01, #dc2626) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-01, #dc2626) !important;
    transform: none !important;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger,
  html.dark body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger,
  html.dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger,
  .dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger,
  .dark .metabiblioteca-locale-dropdown__trigger {
    color: var(--metabiblioteca-color-04, #fff) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff) !important;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover,
  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus,
  html.dark body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover,
  html.dark body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus,
  html.dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover,
  html.dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus,
  .dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover,
  .dark .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus,
  .dark .metabiblioteca-locale-dropdown__trigger:hover,
  .dark .metabiblioteca-locale-dropdown__trigger:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-02, #38bdf8) 16%, transparent) !important;
    color: var(--metabiblioteca-color-02, #38bdf8) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-02, #38bdf8) !important;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__caret,
  .dark .metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__caret {
    color: var(--metabiblioteca-color-02, #38bdf8) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-02, #38bdf8) !important;
  }

  html.dark .metabiblioteca-locale-dropdown__label,
  .dark .metabiblioteca-locale-dropdown__label,
  html.dark .metabiblioteca-locale-dropdown__caret,
  .dark .metabiblioteca-locale-dropdown__caret {
    color: var(--metabiblioteca-color-04, #fff) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff) !important;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__caret,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:hover .metabiblioteca-locale-dropdown__caret,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__trigger:focus .metabiblioteca-locale-dropdown__caret,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown:hover .metabiblioteca-locale-dropdown__caret {
    transform: none !important;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link {
    width: auto;
    min-width: auto;
    height: 2.125rem;
    min-height: 2.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    padding: 0 .625rem;
    margin: 0;
    border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
    text-align: center;
    white-space: nowrap;
    background: transparent;
    border: none;
    box-shadow: none;
    font-size: var(--metabiblioteca-font-size-01, inherit);
    font-family: var(--metabiblioteca-font-01, inherit);
    font-weight: 600;
    line-height: 1;
    color: var(--metabiblioteca-color-03, #0f172a);
    -webkit-text-fill-color: currentColor;
    transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:hover,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
    color: var(--metabiblioteca-color-01, #dc2626);
    -webkit-text-fill-color: currentColor;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link,
  html.dark body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link,
  html.dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link,
  .dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link,
  .dark .metabiblioteca-user-desktop-nav__link {
    color: var(--metabiblioteca-color-04, #fff) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff) !important;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:hover,
  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:focus,
  html.dark body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:hover,
  html.dark body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:focus,
  html.dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:hover,
  html.dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:focus,
  .dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:hover,
  .dark .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-02, #38bdf8) 16%, transparent) !important;
    color: var(--metabiblioteca-color-02, #38bdf8) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-02, #38bdf8) !important;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link {
    width: auto;
    min-width: auto;
    height: 2.125rem;
    min-height: 2.125rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    padding: 0 .75rem;
    margin: 0;
    border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
    text-align: center;
    white-space: nowrap;
    background: transparent;
    border: none;
    box-shadow: none;
    font-size: var(--metabiblioteca-font-size-01, inherit);
    font-family: var(--metabiblioteca-font-01, inherit);
    font-weight: 600;
    line-height: 1;
    color: var(--metabiblioteca-color-03, #0f172a);
    -webkit-text-fill-color: currentColor;
    transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link:hover,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-01, #dc2626) 8%, transparent);
    color: var(--metabiblioteca-color-01, #dc2626);
    -webkit-text-fill-color: currentColor;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link {
    color: var(--metabiblioteca-color-04, #fff) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-04, #fff) !important;
  }

  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link:hover,
  html.dark.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-primary-desktop-nav__link:focus {
    background: color-mix(in srgb, var(--metabiblioteca-color-02, #38bdf8) 16%, transparent) !important;
    color: var(--metabiblioteca-color-02, #38bdf8) !important;
    -webkit-text-fill-color: var(--metabiblioteca-color-02, #38bdf8) !important;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__label,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__link>span:first-child {
    min-width: 0;
    max-width: 100%;
    overflow: visible;
    text-overflow: unset;
    white-space: nowrap;
  }

  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-user-desktop-nav__submenu,
  html.metabiblioteca-theme body .metabiblioteca-site-header .metabiblioteca-locale-dropdown__menu {
    right: 0;
    left: auto;
  }
}

/* Article summary DOI link in TOC/list views */
html.metabiblioteca-theme body .metabiblioteca-article-summary__heading {
  min-width: 0;
}

html.metabiblioteca-theme body .metabiblioteca-article-summary__doi {
  margin-top: 0.35rem;
}

html.metabiblioteca-theme body .metabiblioteca-article-summary__doi-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  max-width: 100%;
  font-size: 0.875rem;
  line-height: 1.35;
  color: var(--metabiblioteca-color-primary, #100959);
  text-decoration: none;
  overflow-wrap: anywhere;
}

html.metabiblioteca-theme body .metabiblioteca-article-summary__doi-link:hover,
html.metabiblioteca-theme body .metabiblioteca-article-summary__doi-link:focus-visible {
  text-decoration: underline;
}

html.metabiblioteca-theme body .metabiblioteca-article-summary__doi-logo {
  display: inline-block;
  width: auto;
  height: 1rem;
  flex: 0 0 auto;
}

html.metabiblioteca-theme body .metabiblioteca-article-summary__doi-value {
  min-width: 0;
}

/* ========================================================================== */
/* UX-01. Barra de progreso de lectura (Reading Progress Bar)                 */
/* -------------------------------------------------------------------------- */
/* Solo visible en la pagina de articulo. Usa animation-timeline: scroll()    */
/* cuando el navegador lo soporta; si no, se mantiene oculta sin JS.         */
.metabiblioteca-reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  z-index: 9999;
  pointer-events: none;
  background: transparent;
}

.metabiblioteca-reading-progress__bar {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--metabiblioteca-color-01, #0284c7), var(--metabiblioteca-color-02, #0ea5e9));
  transform-origin: left;
}

/* CSS scroll-driven animation: GPU-composited, zero JS. */
@supports (animation-timeline: scroll()) {
  .metabiblioteca-reading-progress__bar {
    width: 100%;
    animation: metabibliotecaProgressGrow linear both;
    animation-timeline: scroll();
  }

  @keyframes metabibliotecaProgressGrow {
    from {
      transform: scaleX(0);
    }

    to {
      transform: scaleX(1);
    }
  }
}

/* JS fallback: width is set by main.js when CSS scroll-timeline is unsupported. */
.metabiblioteca-reading-progress__bar.metabiblioteca-reading-progress--js {
  transition: width .12s linear;
}

/* Hide on non-article pages. Shown by body class in header.tpl. */
body:not(.pkp_page_article) .metabiblioteca-reading-progress {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .metabiblioteca-reading-progress {
    display: none;
  }
}

/* ========================================================================== */
/* UX-02. Boton volver arriba (Back-to-Top)                                   */
/* -------------------------------------------------------------------------- */
.metabiblioteca-back-to-top {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  z-index: 900;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border: none;
  border-radius: 50%;
  background: var(--metabiblioteca-surface, #fff);
  color: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 4px 14px rgba(15, 23, 42, .15);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(.5rem);
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease, background .15s ease, color .15s ease, box-shadow .15s ease;
}

.metabiblioteca-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.metabiblioteca-back-to-top:hover,
.metabiblioteca-back-to-top:focus-visible {
  background: var(--metabiblioteca-color-01, #0284c7);
  color: #fff;
  box-shadow: 0 6px 20px rgba(15, 23, 42, .2);
  outline: none;
}

.dark .metabiblioteca-back-to-top {
  background: rgba(15, 23, 42, .85);
  box-shadow: 0 4px 14px rgba(0, 0, 0, .3);
}

.dark .metabiblioteca-back-to-top:hover,
.dark .metabiblioteca-back-to-top:focus-visible {
  background: var(--metabiblioteca-color-01, #0284c7);
  box-shadow: 0 6px 20px rgba(0, 0, 0, .4);
}

.metabiblioteca-back-to-top .metabiblioteca-icon {
  font-size: 1.15rem;
}

@media (max-width: 640px) {
  .metabiblioteca-back-to-top {
    bottom: 1.25rem;
    right: 1.25rem;
    width: 2.5rem;
    height: 2.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .metabiblioteca-back-to-top {
    transition: none;
  }
}

/* ========================================================================== */
/* UX-04. Boton copiar DOI al portapapeles                                    */
/* -------------------------------------------------------------------------- */
.metabiblioteca-doi-copy-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 1px solid var(--metabiblioteca-border, rgba(148, 163, 184, .28));
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  background: var(--metabiblioteca-surface, #fff);
  color: var(--metabiblioteca-color-01, #0284c7);
  cursor: pointer;
  font-size: .85rem;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}

.metabiblioteca-doi-copy-btn:hover,
.metabiblioteca-doi-copy-btn:focus-visible {
  background: var(--metabiblioteca-color-01, #0284c7);
  color: #fff;
  border-color: var(--metabiblioteca-color-01, #0284c7);
  outline: none;
}

.dark .metabiblioteca-doi-copy-btn {
  background: rgba(15, 23, 42, .85);
  border-color: rgba(71, 85, 105, .72);
}

.dark .metabiblioteca-doi-copy-btn:hover,
.dark .metabiblioteca-doi-copy-btn:focus-visible {
  background: var(--metabiblioteca-color-01, #0284c7);
  border-color: var(--metabiblioteca-color-01, #0284c7);
}

/* Toast notification for copy confirmation */
.metabiblioteca-toast {
  position: fixed;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%) translateY(1rem);
  z-index: 10000;
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .65rem 1.15rem;
  border-radius: var(--metabiblioteca-radius-ui, .375rem);
  background: var(--metabiblioteca-color-03, #0f172a);
  color: var(--metabiblioteca-color-04, #fff);
  font-size: .85rem;
  font-weight: 700;
  box-shadow: 0 12px 32px rgba(15, 23, 42, .18);
  opacity: 0;
  visibility: hidden;
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease;
  pointer-events: none;
}

.metabiblioteca-toast.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .metabiblioteca-toast {
    transition: none;
  }
}

/* ========================================================================== */
/* UX-09. Hoja de estilos para impresion                                      */
/* -------------------------------------------------------------------------- */
@media print {

  /* Ocultar elementos de interfaz no esenciales para el papel. */
  .metabiblioteca-site-header,
  .metabiblioteca-header-searchbar,
  .metabiblioteca-reading-progress,
  .metabiblioteca-back-to-top,
  .metabiblioteca-toast,
  .metabiblioteca-global-sidebar,
  .metabiblioteca-article-aside,
  .metabiblioteca-doi-copy-btn,
  .metabiblioteca-article-carousel,
  .metabiblioteca-tabs__input,
  footer,
  nav,
  .pkp_block,
  .metabiblioteca-ojs-sidebar-blocks,
  .metabiblioteca-theme-selector,
  .metabiblioteca-locale-dropdown,
  .metabiblioteca-header-mobile,
  .voice-to-text-container {
    display: none !important;
  }

  /* Expandir contenido principal al ancho completo. */
  body,
  html {
    background: #fff !important;
    color: #000 !important;
  }

  .metabiblioteca-article-layout {
    display: block !important;
  }

  .metabiblioteca-article-main {
    width: 100% !important;
    max-width: none !important;
  }

  main {
    padding: 0 !important;
    margin: 0 !important;
    max-width: none !important;
  }

  /* Mostrar todas las pestanas del articulo para impresion completa. */
  .metabiblioteca-tabs__panel {
    display: block !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 1.5rem !important;
  }

  .metabiblioteca-tabs__label {
    display: none !important;
  }

  /* Tipografia optimizada para papel. */
  body {
    font-size: 12pt !important;
    line-height: 1.5 !important;
  }

  h1 {
    font-size: 18pt !important;
  }

  h2 {
    font-size: 15pt !important;
  }

  h3 {
    font-size: 13pt !important;
  }

  /* Mostrar URLs de enlaces para trazabilidad en papel. */
  a[href^="http"]::after,
  a[href^="https"]::after {
    content: " (" attr(href) ")";
    font-size: 9pt;
    color: #555;
    word-break: break-all;
  }

  /* No duplicar URL en enlaces que ya muestran la URL como texto. */
  a[href^="http"].metabiblioteca-doi-card__link::after,
  a[href^="https"].metabiblioteca-doi-card__link::after {
    content: none;
  }

  /* Evitar cortes de pagina dentro de tarjetas y secciones. */
  .metabiblioteca-section,
  .metabiblioteca-widget,
  .metabiblioteca-author-card,
  .metabiblioteca-article-hero {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}

/* Fix OJS core FontAwesome 4 override for FontAwesome 6 */
.metabiblioteca-icon--fa.fa-solid,
.metabiblioteca-icon--fa.fas {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
}

.metabiblioteca-icon--fa.fa-regular,
.metabiblioteca-icon--fa.far {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 400 !important;
}

.metabiblioteca-icon--fa.fa-brands,
.metabiblioteca-icon--fa.fab {
  font-family: "Font Awesome 6 Brands" !important;
  font-weight: 400 !important;
}

/* Search Filter Enhancements */
.metabiblioteca-modern-date {
  width: 100%;
  padding: 0;
  padding-right: 4.5rem !important;
  border-radius: 0;
  border: none !important;
  background-color: transparent !important;
  color: var(--metabiblioteca-color-text, #334155);
  font-family: inherit;
  font-size: 0.875rem;
  transition: none;
  box-sizing: border-box;
  box-shadow: none !important;
}

.metabiblioteca-modern-date:focus {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

html.metabiblioteca-theme body .page_search .metabiblioteca-search-field-wrapper input {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 2rem !important;
}

html.metabiblioteca-theme body .page_search .metabiblioteca-search-field-wrapper input.metabiblioteca-modern-date {
  padding-right: 3.2rem !important;
  position: relative;
}

html.metabiblioteca-theme body .page_search .metabiblioteca-search-field-wrapper input.metabiblioteca-modern-date::-webkit-calendar-picker-indicator {
  position: absolute;
  right: 1.8rem;
  cursor: pointer;
}

html.metabiblioteca-theme body .page_search .metabiblioteca-search-field-wrapper input:focus {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

.metabiblioteca-search-field-wrapper {
  position: relative;
  display: block;
}

.metabiblioteca-search-field-wrapper .metabiblioteca-search-combobox__clear {
  position: absolute !important;
  right: 0 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: transparent !important;
  border: none !important;
  cursor: pointer;
  color: var(--metabiblioteca-color-text-muted, #94a3b8);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem;
  border-radius: 50%;
  transition: background-color 0.2s, color 0.2s;
  z-index: 2;
}

.metabiblioteca-search-field-wrapper .metabiblioteca-clear-date {
  right: -0.25rem !important;
}

.metabiblioteca-search-field-wrapper .metabiblioteca-search-combobox__clear:hover {
  background-color: color-mix(in srgb, var(--metabiblioteca-color-text-muted, #94a3b8) 20%, transparent);
  color: var(--metabiblioteca-color-text, #334155);
}

.metabiblioteca-search-chip:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

/* Botón de BIO para el autor */
.metabiblioteca-author-bio-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: 0.5rem;
  padding: 0.2rem 0.55rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  background-color: var(--metabiblioteca-color-01, #0284c7);
  border: none;
  border-radius: var(--metabiblioteca-radius-ui, 6px);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  vertical-align: middle;
  line-height: 1;
}

.metabiblioteca-author-bio-btn:hover,
.metabiblioteca-author-bio-btn:focus-visible {
  background-color: var(--metabiblioteca-color-02, #0ea5e9);
  transform: translateY(-1px);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.metabiblioteca-author-bio-btn i {
  margin-right: 0.25rem;
  font-size: 0.9em;
}

/* Modal de Biografía de Autor */
.metabiblioteca-modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(15, 23, 42, 0.6);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}

.metabiblioteca-modal-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.metabiblioteca-modal-content {
  background-color: var(--mb-editorial-surface, #ffffff);
  border: 1px solid var(--mb-border-soft, rgba(148, 163, 184, 0.28));
  border-radius: var(--metabiblioteca-radius-ui, 8px);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  width: 100%;
  max-width: 550px;
  max-height: 85vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  animation: modal-appear 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}

html.dark .metabiblioteca-modal-content {
  background-color: var(--metabiblioteca-bg-dark, #0f172a);
  border-color: rgba(255, 255, 255, 0.1);
}

.metabiblioteca-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.25rem 1.5rem;
  border-bottom: 1px solid var(--mb-border-soft, rgba(148, 163, 184, 0.15));
  background-color: color-mix(in srgb, var(--metabiblioteca-color-01, #0284c7) 5%, transparent);
}

html.dark .metabiblioteca-modal-header {
  border-bottom-color: rgba(255, 255, 255, 0.08);
  background-color: rgba(2, 132, 199, 0.1);
}

.metabiblioteca-modal-title {
  margin: 0;
  font-family: var(--metabiblioteca-font-02, serif);
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--metabiblioteca-color-03, #0f172a);
}

html.dark .metabiblioteca-modal-title {
  color: var(--metabiblioteca-color-04, #ffffff);
}

.metabiblioteca-modal-close {
  background: transparent;
  border: none;
  cursor: pointer;
  color: var(--metabiblioteca-color-03, #64748b);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border-radius: 50%;
  transition: all 0.2s ease;
  width: 32px;
  height: 32px;
}

.metabiblioteca-modal-close:hover {
  background-color: rgba(148, 163, 184, 0.15);
  color: var(--metabiblioteca-color-01, #0284c7);
}

html.dark .metabiblioteca-modal-close {
  color: rgba(255, 255, 255, 0.6);
}

html.dark .metabiblioteca-modal-close:hover {
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--metabiblioteca-color-02, #0ea5e9);
}

.metabiblioteca-modal-body {
  padding: 1.5rem;
  overflow-y: auto;
  font-family: var(--metabiblioteca-font-01, sans-serif);
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--metabiblioteca-color-03, #334155);
}

html.dark .metabiblioteca-modal-body {
  color: rgba(255, 255, 255, 0.85);
}

/* Scrollbar styling for the modal body */
.metabiblioteca-modal-body::-webkit-scrollbar {
  width: 6px;
}

.metabiblioteca-modal-body::-webkit-scrollbar-track {
  background: transparent;
}

.metabiblioteca-modal-body::-webkit-scrollbar-thumb {
  background-color: rgba(148, 163, 184, 0.3);
  border-radius: 3px;
}

html.dark .metabiblioteca-modal-body::-webkit-scrollbar-thumb {
  background-color: rgba(255, 255, 255, 0.2);
}

@keyframes modal-appear {
  from {
    opacity: 0;
    transform: scale(0.95) translateY(10px);
  }

  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.metabiblioteca-stats-metrics-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  margin-bottom: 2rem;
  width: 100%;
}

.metabiblioteca-stats-metric-panel {
  text-align: center;
  width: 100%;
}

.metabiblioteca-stats-metric-header {
  text-align: left;
  color: var(--metabiblioteca-color-01);
  border-bottom: 1px solid var(--metabiblioteca-color-01);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

.metabiblioteca-stats-met.metabiblioteca-stats-graph-title {
  text-align: left;
  color: var(--metabiblioteca-color-01);
  margin-bottom: 1rem;
  font-weight: 850;
  font-size: var(--metabiblioteca-font-size-03, 1.12rem);
}

.metabiblioteca-stats-numbers-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2.5rem;
}

.metabiblioteca-stats-number-panel {
  flex: 1 1 30%;
  min-width: 150px;
  background: var(--metabiblioteca-page-bg, #f8fafc);
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  padding: 1.5rem 1rem;
  text-align: center;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
}

.metabiblioteca-stats-number-header {
  font-size: 0.95rem;
  color: var(--metabiblioteca-text);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-weight: 600;
}

.metabiblioteca-stats-number-value {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--metabiblioteca-color-01);
  line-height: 1;
}

.metabiblioteca-stats-metric-body {
  display: flex;
  justify-content: center;
}

.metabiblioteca-stats-divider {
  border: none;
  border-top: 1px solid var(--metabiblioteca-color-01);
  opacity: 0.2;
  margin: 2rem 0;
}

.metabiblioteca-stats-graph-title {
  text-align: left;
  color: var(--metabiblioteca-color-01);
  margin-bottom: 1rem;
  font-weight: bold;
  font-size: 1.25rem;
}

/* Site wide portal full-width overrides */
/* Portal wrapper — quita max-w-8xl y añade margen lateral elegante */
.metabiblioteca-portal-wrapper {
  max-width: 100% !important;
  padding-left: clamp(1rem, 4vw, 2.1rem) !important;
  padding-right: clamp(1rem, 4vw, 2.1rem) !important;
}

/* Portal main — quita max-w-2xl y mantiene consistencia de márgenes */
.metabiblioteca-portal-main {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Anula restricciones de prose y article dentro del portal */
body.metabiblioteca-portal-site article,
body.metabiblioteca-portal-site .prose,
body.metabiblioteca-portal-site .page_index_site,
body.metabiblioteca-portal-site .metabiblioteca-section {
  max-width: 100% !important;
}

/* Compatibilidad con regla anterior (por si la cache de templates no se limpia) */
body.metabiblioteca-portal-site:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full {
  max-width: 100% !important;
  padding-left: clamp(1rem, 4vw, 2.1rem) !important;
  padding-right: clamp(1rem, 4vw, 2.1rem) !important;
}

body.metabiblioteca-portal-site:not(.pkp_page_login):not(.pkp_page_user)>.relative.mx-auto.flex.w-full>main {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Custom Autoplay Article Carousel Styles */
.metabiblioteca-featured-carousel {
  position: relative;
  width: 100%;
  background-color: var(--metabiblioteca-carousel-bg, #0284c7);
  color: var(--metabiblioteca-carousel-text, #ffffff);
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  margin-bottom: 1.5rem;
}

.metabiblioteca-carousel-track-wrapper {
  position: relative;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
}

.metabiblioteca-carousel-slide {
  grid-column: 1;
  grid-row: 1;
  display: flex;
  flex-direction: row;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(10px) scale(0.99);
  transition: opacity 0.5s cubic-bezier(0.25, 1, 0.5, 1), transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), visibility 0.5s;
}

.metabiblioteca-carousel-slide.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  position: relative;
  transform: translateY(0) scale(1);
}

.metabiblioteca-carousel-cover-col {
  width: 270px;
  min-width: 250px;
  flex-shrink: 0;
  padding: 1rem 1.25rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.1);
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.metabiblioteca-carousel-cover-img {
  max-height: 210px;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 2px;
  box-shadow: 0 8px 12px -2px rgba(0, 0, 0, 0.25), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  transition: transform 0.3s ease;
}

.metabiblioteca-carousel-cover-img:hover {
  transform: scale(1.02);
}

.metabiblioteca-carousel-cover-placeholder {
  width: 140px;
  height: 185px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px dashed rgba(255, 255, 255, 0.3);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.05);
  padding: 0.75rem;
  text-align: center;
}

.metabiblioteca-carousel-cover-placeholder svg {
  width: 32px;
  height: 32px;
  opacity: 0.6;
  margin-bottom: 0.5rem;
  color: inherit;
}

.placeholder-journal-title {
  font-size: 0.65rem;
  opacity: 0.8;
  word-break: break-word;
  line-height: 1.2;
}

.metabiblioteca-carousel-details-col {
  flex-grow: 1;
  padding: 0.25rem 3.5rem 1.25rem 1.75rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-journal-label {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  opacity: 0.85;
  margin-bottom: 0.35rem;
  color: var(--metabiblioteca-carousel-text, #ffffff);
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 0.5rem;
  min-height: 3.375rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: var(--metabiblioteca-carousel-text, #ffffff);
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-title a {
  color: var(--metabiblioteca-carousel-text, #ffffff);
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-title a:hover {
  opacity: 0.9;
  text-decoration: underline;
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-metadata {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-bottom: 0.75rem;
  font-size: 0.8125rem;
  color: var(--metabiblioteca-carousel-text, #ffffff);
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-meta-item {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  opacity: 0.9;
  color: var(--metabiblioteca-carousel-text, #ffffff);
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-meta-item .meta-label {
  font-weight: 600;
  color: var(--metabiblioteca-carousel-text, #ffffff);
}

.metabiblioteca-carousel-meta-doi {
  opacity: 1;
}

.metabiblioteca-featured-carousel .doi-link {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(255, 255, 255, 0.12);
  padding: 0.25rem 0.6rem;
  border-radius: 4px;
  color: inherit;
  text-decoration: none;
  font-weight: 500;
  font-size: 0.75rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: background 0.2s ease, transform 0.2s ease;
}

.metabiblioteca-featured-carousel .doi-link:hover {
  background: rgba(255, 255, 255, 0.22);
  transform: translateY(-1px);
}

.doi-logo-img {
  height: 12px;
  filter: brightness(0) invert(1);
}

.metabiblioteca-carousel-actions {
  margin-top: auto;
  display: flex;
  align-items: center;
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--metabiblioteca-carousel-btn-bg, #0066a1);
  color: var(--metabiblioteca-carousel-btn-text, #ffffff);
  padding: 0.5rem 1.25rem;
  font-size: 0.875rem;
  font-weight: 600;
  border-radius: 4px;
  text-decoration: none;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.15);
  transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.metabiblioteca-featured-carousel .metabiblioteca-carousel-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.2);
  filter: brightness(1.1);
}

/* Nav controls */
.metabiblioteca-carousel-nav-controls {
  position: absolute;
  bottom: 1.25rem;
  right: 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.35rem;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 4px;
  padding: 0.25rem;
  z-index: 20;
}

.metabiblioteca-featured-carousel .nav-control-btn {
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 4px;
  color: var(--metabiblioteca-carousel-text, #ffffff);
  transition: background 0.2s ease, transform 0.2s ease;
}

.metabiblioteca-featured-carousel .nav-control-btn:hover {
  background: rgba(255, 255, 255, 0.2);
}

.metabiblioteca-featured-carousel .nav-control-btn:active {
  transform: scale(0.95);
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay {
  background: transparent;
  color: var(--metabiblioteca-carousel-text, #ffffff);
  box-shadow: none;
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay:hover {
  background: rgba(255, 255, 255, 0.2);
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay .icon-play {
  display: none;
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay .icon-pause {
  display: block;
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay:not(.playing) .icon-play {
  display: block;
}

.metabiblioteca-featured-carousel .btn-toggle-autoplay:not(.playing) .icon-pause {
  display: none;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .metabiblioteca-carousel-slide {
    flex-direction: column;
  }

  .metabiblioteca-carousel-cover-col {
    width: 100%;
    min-width: 0;
    padding: 1.25rem 1rem 0.5rem 1rem;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 0;
  }

  .metabiblioteca-carousel-cover-img {
    max-height: 180px;
  }

  .metabiblioteca-carousel-details-col {
    padding: 1rem 1rem 4.5rem 1rem;
    text-align: center;
    align-items: center;
  }

  .metabiblioteca-carousel-title {
    font-size: 1.15rem;
    min-height: auto;
  }

  .metabiblioteca-carousel-metadata {
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
  }

  .metabiblioteca-carousel-nav-controls {
    bottom: 1rem;
    right: 50%;
    transform: translateX(50%);
  }
}

/* Accessibility and dependency hardening added in 3.5.0.76. */
[x-cloak] { display: none !important; }

.metabiblioteca-theme .cmp_skip_to_content a {
  position: fixed;
  inset-block-start: 0.75rem;
  inset-inline-start: 0.75rem;
  z-index: 10050;
  transform: translateY(-180%);
  padding: 0.65rem 1rem;
  border-radius: var(--metabiblioteca-radius-ui, 0.375rem);
  background: #fff;
  color: #111827;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.22);
}

.metabiblioteca-theme .cmp_skip_to_content a:focus {
  transform: translateY(0);
  outline: 3px solid var(--metabiblioteca-color-02, #38bdf8);
  outline-offset: 2px;
}

.metabiblioteca-theme #pkp_content_main:focus { outline: none; }
.metabiblioteca-theme img { max-width: 100%; }

/* ==========================================================================
   3.1 & 3.2: BEM classes that replace Tailwind inline utilities and
   hardcoded inline styles (audit item 3 corrections).
   ========================================================================== */

/* --- Badge: Acceso Abierto ------------------------------------------------ */
.metabiblioteca-badge-oa {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  margin-bottom: 0.5rem;
  color: #15803d; /* green-700 */
  font-size: 0.875rem;
  font-weight: 500;
}

.dark .metabiblioteca-badge-oa {
  color: #4ade80; /* green-400 */
}

.metabiblioteca-badge-oa__icon {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}

/* --- Hero meta: date/section row ----------------------------------------- */
.metabiblioteca-hero-meta__row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.25rem;
  font-size: 0.875rem;
  color: rgb(71, 85, 105); /* slate-600 */
}

.dark .metabiblioteca-hero-meta__row {
  color: rgb(148, 163, 184); /* slate-400 */
}

.metabiblioteca-hero-meta__date {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}

.metabiblioteca-hero-meta__icon {
  width: 1rem;
  height: 1rem;
  opacity: 0.7;
  flex-shrink: 0;
}

.metabiblioteca-hero-meta__section {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--metabiblioteca-text, #1e293b);
  background: transparent;
}

/* --- Share widget (AddToAny wrapper) ------------------------------------- */
.metabiblioteca-share-widget {
  display: flex;
  justify-content: center;
  margin-top: 1rem;
}

.metabiblioteca-share-widget__buttons {
  display: flex !important;
  justify-content: center;
  width: 100%;
}

/* --- Stats graph title: border replacing the former inline style (3.2) --- */
.metabiblioteca-stats-graph-title {
  border-bottom: 1px solid var(--metabiblioteca-color-01);
  padding-bottom: 0.5rem;
}
/* Issue description toggle button in archive */
.metabiblioteca-issue-desc-btn {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .3rem .75rem;
  font-size: .75rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--metabiblioteca-brand-01, #005EAB);
  background: transparent;
  border: 1px solid var(--metabiblioteca-brand-01, #005EAB);
  border-radius: var(--metabiblioteca-radius-ui);
  cursor: pointer;
  transition: background .2s ease, color .2s ease, border-color .2s ease;
  position: relative;
  z-index: 1;
}

.metabiblioteca-issue-desc-btn:hover,
.metabiblioteca-issue-desc-btn:focus-visible {
  background: var(--metabiblioteca-brand-01, #005EAB);
  color: var(--metabiblioteca-brand-04, #fff);
  outline: none;
}

.dark .metabiblioteca-issue-desc-btn {
  color: var(--metabiblioteca-brand-02, #00A7E1);
  border-color: var(--metabiblioteca-brand-02, #00A7E1);
}

.dark .metabiblioteca-issue-desc-btn:hover,
.dark .metabiblioteca-issue-desc-btn:focus-visible {
  background: var(--metabiblioteca-brand-02, #00A7E1);
  color: var(--metabiblioteca-brand-04, #fff);
}

.metabiblioteca-issue-desc-btn[aria-expanded="true"]::after {
  content: " ▲";
  font-size: 0.65rem;
}

.metabiblioteca-issue-desc-btn[aria-expanded="false"]::after {
  content: " ▼";
  font-size: 0.65rem;
}

/* --- Sticky Footer Layout --- */
html.metabiblioteca-theme,
html.metabiblioteca-theme body {
  min-height: 100vh;
}

html.metabiblioteca-theme body {
  display: flex !important;
  flex-direction: column !important;
}

.metabiblioteca-portal-wrapper {
  flex: 1 0 auto !important;
}

footer.footer {
  margin-top: auto !important;
  width: 100% !important;
}

/* --- Metabiblioteca Footer Credits (myCredits) --- */
.myCredits {
  width: 100%;
  background-color: var(--metabiblioteca-color-01, #df0009);
  color: var(--metabiblioteca-color-04, #ffffff);
  box-sizing: border-box;
  padding: 8px 32px;
  margin-top: auto;
  text-align: center;
}

.myCredits-container {
  width: 100%;
  max-width: 100%;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  margin: 0 auto !important;
  gap: 8px;
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1;
}

.myCredits-link {
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  text-decoration: none !important;
  transition: opacity 0.2s ease, text-decoration 0.2s ease;
  display: inline-flex;
  align-items: center;
}

.myCredits-link:hover {
  opacity: 0.9;
  text-decoration: underline !important;
}

.myCredits-separator {
  color: rgba(255, 255, 255, 0.85);
  user-select: none;
  font-weight: 300;
  display: inline-block;
  margin: 0 2px;
}

.myCredits-logo-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none !important;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.myCredits-logo-link:hover {
  opacity: 0.92;
  transform: translateY(-1px);
}

.myCredits .img-footter-meta {
  height: 24px;
  max-height: 26px;
  width: auto;
  display: inline-block;
  vertical-align: middle;
  object-fit: contain;
}

@media (max-width: 640px) {
  .myCredits {
    padding: 10px 16px;
  }
  .myCredits-container {
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px;
    font-size: 12.5px;
  }
  .myCredits .img-footter-meta {
    height: 20px;
  }
}

/* OpenID & Auth Card Containers Unified Width */
.openid-auth-container,
.openid-auth-container--register,
.openid-auth-container--lost-password,
.openid-auth-container--register-complete,
.openid-auth-container--message {
  max-width: 380px;
}



/* ROR Icon (ror-icon-rgb.svg) */
.metabiblioteca-author-card__affiliation a {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  text-decoration: none;
}

img.metabiblioteca-icon--ror,
.metabiblioteca-icon--ror {
  display: inline-block !important;
  vertical-align: middle !important;
  width: auto !important;
  height: 14px !important;
  max-height: 16px !important;
  margin-left: 0.35rem !important;
}

/* ==========================================================================
   OpenID Harmonized Form Errors Box
   ========================================================================== */
.openid-form-errors-box {
  margin-bottom: 20px;
  padding: 14px 18px;
  border-radius: 12px;
  background-color: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
  font-size: 13.5px;
  box-shadow: 0 1px 3px rgba(220, 38, 38, 0.08);
  box-sizing: border-box;
  text-align: left;
}

.dark .openid-form-errors-box {
  background-color: rgba(127, 29, 29, 0.25);
  border-color: #7f1d1d;
  color: #fca5a5;
}

.openid-form-errors-box .openid-error-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 14px;
  color: #b91c1c;
  margin-bottom: 8px;
}

.dark .openid-form-errors-box .openid-error-header {
  color: #f87171;
}

.openid-form-errors-box .openid-error-icon {
  font-size: 16px;
  color: #dc2626;
  flex-shrink: 0;
}

.dark .openid-form-errors-box .openid-error-icon {
  color: #ef4444;
}

.openid-form-errors-box .openid-error-list {
  margin: 0;
  padding: 0 0 0 4px;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.openid-form-errors-box .openid-error-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.45;
}

.openid-form-errors-box .openid-error-item::before {
  content: "•";
  color: #dc2626;
  font-weight: bold;
  font-size: 16px;
  line-height: 1;
  flex-shrink: 0;
}

.dark .openid-form-errors-box .openid-error-item::before {
  color: #f87171;
}

.openid-form-errors-box .openid-error-link {
  color: #991b1b !important;
  text-decoration: none !important;
  transition: color 0.15s ease, text-decoration 0.15s ease;
}

.openid-form-errors-box .openid-error-link:hover {
  color: #7f1d1d !important;
  text-decoration: underline !important;
}

.dark .openid-form-errors-box .openid-error-link {
  color: #fca5a5 !important;
}

.dark .openid-form-errors-box .openid-error-link:hover {
  color: #ffffff !important;
}

/* ==========================================================================
   OpenID Harmonized Message & Status Cards
   ========================================================================== */
.openid-status-icon-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 16px;
}

.openid-status-icon-circle {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
}

.openid-status-icon-circle--mail {
  background: #eff6ff;
  color: #0284c7;
  box-shadow: 0 0 0 6px #f0f9ff;
}

.dark .openid-status-icon-circle--mail {
  background: rgba(2, 132, 199, 0.2);
  color: #38bdf8;
  box-shadow: 0 0 0 6px rgba(2, 132, 199, 0.15);
}

.openid-status-icon-circle--success {
  background: #ecfdf5;
  color: #059669;
  box-shadow: 0 0 0 6px #f0fdf4;
}

.dark .openid-status-icon-circle--success {
  background: #064e3b;
  color: #34d399;
  box-shadow: 0 0 0 6px rgba(6, 78, 59, 0.4);
}

.openid-status-icon-circle--info {
  background: #f1f5f9;
  color: #475569;
  box-shadow: 0 0 0 6px #f8fafc;
}

.dark .openid-status-icon-circle--info {
  background: #334155;
  color: #94a3b8;
  box-shadow: 0 0 0 6px rgba(51, 65, 85, 0.4);
}

.openid-welcome-box {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  padding: 14px 16px;
  margin-bottom: 24px;
  text-align: left;
}

.dark .openid-welcome-box {
  background: #0f172a;
  border-color: #334155;
}

.openid-welcome-text {
  font-size: 13.5px;
  color: #334155;
  line-height: 1.55;
  margin: 0;
  word-break: break-word;
}

.dark .openid-welcome-text {
  color: #cbd5e1;
}

.openid-complete-actions {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

.openid-complete-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 42px;
  padding: 0 16px;
  font-size: 14px;
  font-weight: 600;
  border-radius: var(--metabiblioteca-radius, 8px);
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing: border-box;
  cursor: pointer;
}

.openid-complete-btn i {
  font-size: 14px;
}

.openid-complete-btn--primary {
  background: var(--metabiblioteca-color-01, #0284c7);
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  border: 1px solid transparent;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

.openid-complete-btn--primary:hover {
  background: var(--metabiblioteca-color-02, #0369a1);
  color: var(--metabiblioteca-color-04, #ffffff) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.openid-complete-btn--secondary {
  background: #f1f5f9;
  color: #1e293b !important;
  border: 1px solid #cbd5e1;
}

.openid-complete-btn--secondary:hover {
  background: #e2e8f0;
  border-color: #94a3b8;
  color: #0f172a !important;
  transform: translateY(-1px);
}

.dark .openid-complete-btn--secondary {
  background: #334155;
  color: #f1f5f9 !important;
  border-color: #475569;
}

.dark .openid-complete-btn--secondary:hover {
  background: #475569;
  color: #ffffff !important;
}

.openid-complete-btn--ghost {
  background: transparent;
  color: #64748b !important;
  border: 1px solid transparent;
}

.openid-complete-btn--ghost:hover {
  background: #f8fafc;
  color: #0f172a !important;
}

.dark .openid-complete-btn--ghost:hover {
  background: #1e293b;
  color: #f8fafc !important;
}




