/* Artículo público — tipografía legible y contraste garantizado */

.mobibc-articulo-publica {
  --art-ink: #12141a;
  --art-muted: rgba(18, 20, 26, 0.78);
  --art-line: rgba(18, 20, 26, 0.16);
  --art-accent: #1a5fd4;
  --art-paper: #fbfaf7;
  max-width: 42rem;
  margin: 0 auto;
  padding: 4px 2px 20px;
  color: var(--art-ink);
  font-family: "Source Serif 4", "Georgia", "Times New Roman", serif;
  font-size: 1.05rem;
  line-height: 1.7;
  text-align: left;
}

/* Panel legible dentro del modal (fondo claro + texto oscuro) */
.mobibc-modulo-modal__body:has(.mobibc-articulo-publica) {
  background: var(--art-paper, #fbfaf7) !important;
  color: #12141a !important;
}

.mobibc-modulo-modal__body .mobibc-articulo-publica {
  --art-ink: #12141a;
  --art-muted: rgba(18, 20, 26, 0.8);
  --art-line: rgba(18, 20, 26, 0.18);
  --art-accent: #1a5fd4;
  color: var(--art-ink);
  padding: 8px 4px 12px;
}

.mobibc-articulo__vacio {
  text-align: center;
  color: var(--art-muted);
  font-family: system-ui, sans-serif;
  padding: 28px 12px;
}

.mobibc-articulo__titulo {
  font-family: "Fraunces", "Georgia", serif;
  font-weight: 700;
  font-size: clamp(1.65rem, 4.5vw, 2.15rem);
  line-height: 1.2;
  letter-spacing: -0.02em;
  margin: 0 0 1rem;
  color: var(--art-ink) !important;
}

.mobibc-articulo__subtitulo {
  font-family: "Fraunces", "Georgia", serif;
  font-weight: 600;
  font-size: clamp(1.2rem, 3vw, 1.45rem);
  line-height: 1.3;
  margin: 1.5rem 0 0.65rem;
  color: var(--art-ink) !important;
}

.mobibc-articulo__p {
  margin: 0 0 1rem;
  color: var(--art-ink) !important;
}

.mobibc-articulo__p + .mobibc-articulo__p {
  text-indent: 1.35em;
}

.mobibc-articulo__cita {
  margin: 1.35rem 0;
  padding: 0.35rem 0 0.35rem 1rem;
  border-left: 4px solid var(--art-accent);
  font-size: 1.12rem;
  font-style: italic;
  color: var(--art-muted) !important;
}

.mobibc-articulo__cita p {
  margin: 0;
  color: inherit !important;
}

.mobibc-articulo__hr {
  border: 0;
  height: 1px;
  margin: 1.75rem auto;
  max-width: 40%;
  background: var(--art-line);
}

.mobibc-articulo__fig {
  margin: 1.25rem 0;
  padding: 0;
}

.mobibc-articulo__fig img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  object-fit: cover;
}

.mobibc-articulo__fig figcaption {
  margin-top: 0.45rem;
  font-family: system-ui, sans-serif;
  font-size: 0.85rem;
  line-height: 1.4;
  color: var(--art-muted) !important;
  text-align: center;
}

.mobibc-articulo__fig--wide {
  width: 100%;
  clear: both;
}

.mobibc-articulo__fig--center {
  width: 78%;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

.mobibc-articulo__fig--left {
  float: left;
  width: 46%;
  margin: 0.25rem 1rem 0.75rem 0;
  clear: left;
}

.mobibc-articulo__fig--right {
  float: right;
  width: 46%;
  margin: 0.25rem 0 0.75rem 1rem;
  clear: right;
}

.mobibc-articulo__fig--s.mobibc-articulo__fig--center { width: 52%; }
.mobibc-articulo__fig--l.mobibc-articulo__fig--center { width: 92%; }
.mobibc-articulo__fig--s.mobibc-articulo__fig--left,
.mobibc-articulo__fig--s.mobibc-articulo__fig--right { width: 36%; }
.mobibc-articulo__fig--l.mobibc-articulo__fig--left,
.mobibc-articulo__fig--l.mobibc-articulo__fig--right { width: 54%; }

.mobibc-articulo__fig--b-soft img {
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

.mobibc-articulo__fig--b-frame img {
  border-radius: 4px;
  border: 3px solid #fff;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
}

.mobibc-articulo__subtitulo,
.mobibc-articulo__hr,
.mobibc-articulo__cita,
.mobibc-articulo__fig--wide,
.mobibc-articulo__fig--center {
  clear: both;
}

@media (max-width: 560px) {
  .mobibc-articulo__fig--left,
  .mobibc-articulo__fig--right {
    float: none;
    width: 100% !important;
    margin: 1rem 0;
  }

  .mobibc-articulo__fig--center {
    width: 100%;
  }

  .mobibc-articulo__p + .mobibc-articulo__p {
    text-indent: 1em;
  }
}

/* Página /{slug}/articulo — mismo shell que /galeria */
.mobibc-mp-shell .mp-articulo-page {
  max-width: 880px;
  margin: 0 auto;
}

.mobibc-mp-shell .mobibc-articulo-publica {
  padding: 8px 16px 36px;
  max-width: 42rem;
}
