/* CMP Noticias 2.4.0: piel de la ficha; el CSS legado conserva anchos y puntos de corte. */
.ecmp.cmpnp-single {
  text-align: start;
  color: var(--ecmp-text);
  font-family: var(--ecmp-font-sans);
}

.ecmp.cmpnp-single .cmp-single-news-card {
  background: var(--ecmp-surface);
  border-color: var(--ecmp-line);
  box-shadow: var(--ecmp-shadow-lg);
}

.ecmp.cmpnp-single .cmp-single-title,
.ecmp.cmpnp-single .cmp-single-authorline,
.ecmp.cmpnp-single .cmp-single-content :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--ecmp-font-sans);
  font-weight: var(--ecmp-weight-bold);
  color: var(--ecmp-title);
}

.ecmp.cmpnp-single .cmp-single-title {
  text-align: start;
  overflow-wrap: anywhere;
}

.ecmp.cmpnp-single .cmp-single-kicker,
.ecmp.cmpnp-single .cmp-single-meta,
.ecmp.cmpnp-single .cmp-single-credit {
  color: var(--ecmp-text-muted);
  font-family: var(--ecmp-font-sans);
}

.ecmp.cmpnp-single .cmp-single-kicker {
  font-weight: var(--ecmp-weight-semibold);
}

/* El ancho de lectura es el existente (1213 / 352 px), sin una columna interior más estrecha. */
.ecmp.cmpnp-single .cmp-single-content {
  font-family: var(--ecmp-font-sans);
  color: var(--ecmp-text);
  text-align: start;
  overflow-wrap: anywhere;
}

.ecmp.cmpnp-single .cmp-single-content :is(p, li) {
  font-size: inherit;
  text-align: start;
}

.ecmp.cmpnp-single .cmp-single-content li::marker {
  color: var(--ecmp-brand);
}

.ecmp.cmpnp-single .cmp-single-content blockquote {
  color: var(--ecmp-text);
  border-color: var(--ecmp-signal);
  background: var(--ecmp-signal-soft);
}

.ecmp.cmpnp-single .cmp-single-content hr {
  border-color: var(--ecmp-line-strong);
}

.ecmp.cmpnp-single .cmp-single-content a,
.ecmp.cmpnp-single .cmp-single-credit a {
  color: var(--ecmp-brand);
  text-decoration: underline;
}

.ecmp.cmpnp-single .cmp-single-content a:hover,
.ecmp.cmpnp-single .cmp-single-credit a:hover {
  color: var(--ecmp-brand-hover);
}

.ecmp.cmpnp-single .cmp-single-content figure {
  max-width: 100%;
  margin: 0 0 1.5em;
}

.ecmp.cmpnp-single .cmp-single-content :is(img, figure) {
  height: auto;
}

.ecmp.cmpnp-single .cmp-single-content figcaption {
  color: var(--ecmp-text-muted);
  font-size: var(--ecmp-text-sm);
  line-height: var(--ecmp-leading-normal);
  margin-top: var(--ecmp-space-2);
}

/* Les tables enregistrées gardent leur texte; elles défilent dans leur propre cadre. */
.ecmp.cmpnp-single .cmp-single-content table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  margin-bottom: 1.5em;
  color: var(--ecmp-text);
}

.ecmp.cmpnp-single .cmp-single-content :is(th, td) {
  padding: var(--ecmp-space-3);
  border: 1px solid var(--ecmp-line-strong);
  text-align: start;
}

.ecmp.cmpnp-single .cmp-single-content th {
  background: var(--ecmp-brand-soft);
  color: var(--ecmp-brand);
  font-weight: var(--ecmp-weight-semibold);
}

.ecmp.cmpnp-single .cmp-single-divider {
  background: var(--ecmp-line-strong);
}

.ecmp.cmpnp-single .cmp-single-carousel-viewport {
  background: var(--ecmp-surface-sunken);
}

.ecmp.cmpnp-single .cmp-single-video {
  background: var(--ecmp-surface-sunken);
}

.ecmp.cmpnp-single .cmp-single-news-card--document .cmp-single-carousel-viewport {
  background: transparent;
}

.ecmp.cmpnp-single .cmp-single-news-card--document .cmp-single-slide img {
  background: var(--ecmp-surface);
}

.ecmp.cmpnp-single .cmp-single-carousel-btn {
  width: 52px;
  height: 52px;
  background: var(--ecmp-primary);
  border-color: var(--ecmp-primary);
  color: var(--ecmp-on-primary);
}

.ecmp.cmpnp-single .cmp-single-carousel-btn:hover,
.ecmp.cmpnp-single .cmp-single-pdf .ecmp-btn:hover {
  background: var(--ecmp-primary-hover);
  color: var(--ecmp-on-primary);
}

.ecmp.cmpnp-single .cmp-single-pdf .ecmp-btn {
  background: var(--ecmp-primary);
  color: var(--ecmp-on-primary);
  padding: 14px 18px;
  white-space: normal;
  max-width: 100%;
}

.ecmp.cmpnp-single .cmp-single-mainbtn,
.ecmp.cmpnp-single .cmp-single-share-btn {
  background: var(--ecmp-surface);
  color: var(--ecmp-brand);
  border-color: var(--ecmp-line-strong);
  font-weight: var(--ecmp-weight-semibold);
  margin: 0;
}

.ecmp.cmpnp-single .cmp-single-mainbtn {
  padding: 12px 16px;
  min-height: 44px;
  max-width: 100%;
  white-space: normal;
  line-height: 1.6;
}

.ecmp.cmpnp-single .cmp-single-share-btn {
  display: inline-flex;
  width: 44px;
  height: 44px;
}

.ecmp.cmpnp-single .cmp-single-mainbtn:hover,
.ecmp.cmpnp-single .cmp-single-share-btn:hover {
  background: var(--ecmp-brand-soft);
  color: var(--ecmp-brand);
  box-shadow: var(--ecmp-shadow-sm);
}

.ecmp.cmpnp-single .cmp-like-btn.is-liked,
.ecmp.cmpnp-single .cmp-like-btn.is-liked:hover {
  background: var(--ecmp-primary);
  color: var(--ecmp-on-primary);
  border-color: var(--ecmp-primary);
}

.ecmp.cmpnp-single .cmp-like-btn.is-liked :is(.cmp-like-text, .cmp-like-count, .cmp-like-icon) {
  color: var(--ecmp-on-primary);
}

.ecmp.cmpnp-single .cmp-single-tag {
  padding: 9px 12px;
  min-height: 44px;
  font-size: 13px;
  background: var(--ecmp-brand-soft);
  color: var(--ecmp-brand);
  white-space: normal;
  overflow-wrap: anywhere;
}

.ecmp.cmpnp-single .cmp-single-tag:hover {
  background: var(--ecmp-brand-soft);
  color: var(--ecmp-brand-hover);
  text-decoration: underline;
}

.ecmp.cmpnp-single .cmp-ad-slot.has-ad {
  background: var(--ecmp-surface);
  border-color: var(--ecmp-line);
  box-shadow: var(--ecmp-shadow-sm);
}

.ecmp.cmpnp-single :is(a, button):focus-visible {
  outline: 2px solid var(--ecmp-signal);
  outline-offset: 2px;
  box-shadow: var(--ecmp-focus);
}

@media (prefers-reduced-motion: reduce) {
  .ecmp.cmpnp-single .cmp-single-carousel-track {
    transition: none;
  }
  .ecmp.cmpnp-single :is(.cmp-single-mainbtn, .cmp-single-share-btn):hover {
    transform: none;
  }
}
