/* ==========================================================================
   LETRAS DE CAMBIO — PLANTILLA DE ARTÍCULO
   Lectura larga: una columna de medida controlada, gráficos que pueden
   romperla, y metadatos disciplinados.
   ========================================================================== */

.ldc-article { display: block; }

/* ---- Cabecera del artículo --------------------------------------------- */

.ldc-article__head { padding-block: clamp(2rem, 5vw, 4rem) var(--ldc-space-5); }

.ldc-article__headline {
  font-size: var(--ldc-text-4xl);
  line-height: var(--ldc-leading-tight);
  letter-spacing: var(--ldc-tracking-mega);
  color: var(--ldc-ink-navy);
  margin: 0 0 var(--ldc-space-4);
  text-wrap: balance;
}

.ldc-article__deck {
  font-size: var(--ldc-text-lg);
  line-height: var(--ldc-leading-normal);
  color: var(--ldc-ink-muted);
  margin: 0 0 var(--ldc-space-5);
  max-width: 38em;
  text-wrap: pretty;
}

.ldc-article__meta {
  padding-top: var(--ldc-space-4);
  border-top: 1px solid var(--ldc-rule);
}
.ldc-article__updated { font-style: italic; }

/* ---- Imagen de apertura -------------------------------------------------
   Rompe la columna de lectura a propósito: es el único elemento que lo hace
   antes de empezar el texto.                                               */

.ldc-article__hero { margin: 0 0 var(--ldc-space-7); }
.ldc-article__hero-img { display: block; width: 100%; height: auto; background: var(--ldc-paper-sunken); }
.ldc-article__caption {
  font-family: var(--ldc-font-sans);
  font-size: var(--ldc-text-2xs);
  color: var(--ldc-ink-muted);
  padding-top: var(--ldc-space-2);
  border-top: 1px solid var(--ldc-rule);
  margin-top: var(--ldc-space-2);
}

/* ---- Cuerpo -------------------------------------------------------------- */

.ldc-article__body { padding-bottom: var(--ldc-space-8); }

.ldc-prose {
  font-size: var(--ldc-text-base);
  line-height: var(--ldc-leading-body);
  color: var(--ldc-ink);
}

/* Primer párrafo con entrada ligeramente mayor: señal de arranque de lectura */
.ldc-prose > p:first-of-type { font-size: var(--ldc-text-lg); line-height: var(--ldc-leading-normal); color: var(--ldc-ink); }

.ldc-prose h2 {
  font-size: var(--ldc-text-2xl);
  margin-top: var(--ldc-space-7);
  margin-bottom: var(--ldc-space-4);
  padding-top: var(--ldc-space-4);
  border-top: 1px solid var(--ldc-rule);
}
.ldc-prose h3 { font-size: var(--ldc-text-xl); margin-top: var(--ldc-space-6); margin-bottom: var(--ldc-space-3); }

.ldc-prose ul, .ldc-prose ol { margin: 0 0 var(--ldc-space-5); padding-left: 1.3em; }
.ldc-prose li { margin-bottom: var(--ldc-space-2); }
.ldc-prose li::marker { color: var(--ldc-accent); }

.ldc-prose img,
.ldc-prose figure { margin-block: var(--ldc-space-6); }
.ldc-prose figure img { display: block; width: 100%; height: auto; }
.ldc-prose figcaption {
  font-family: var(--ldc-font-sans);
  font-size: var(--ldc-text-2xs);
  color: var(--ldc-ink-muted);
  padding-top: var(--ldc-space-2);
  border-top: 1px solid var(--ldc-rule);
}

/* Las tablas y los gráficos pueden salirse de la medida de lectura */
.ldc-prose .wp-block-table,
.ldc-prose .alignwide {
  width: min(var(--ldc-w-wide), calc(100vw - 2 * var(--ldc-gutter)));
  margin-inline: calc(50% - min(var(--ldc-w-wide), calc(100vw - 2 * var(--ldc-gutter))) / 2);
  max-width: none;
}
.ldc-prose .wp-block-table { overflow-x: auto; }
.ldc-prose table { width: 100%; border-collapse: collapse; font-family: var(--ldc-font-sans); font-size: var(--ldc-text-sm); }
.ldc-prose th, .ldc-prose td { text-align: left; padding: 0.6em 0.8em; border-bottom: 1px solid var(--ldc-rule); }
.ldc-prose th {
  font-size: var(--ldc-text-2xs);
  letter-spacing: var(--ldc-tracking-meta);
  text-transform: uppercase;
  color: var(--ldc-ink-navy);
  border-bottom: 2px solid var(--ldc-ink-navy);
}
.ldc-prose tbody tr:last-child td { border-bottom: 0; }

/* Los componentes editoriales del sistema también pueden respirar más ancho */
.ldc-prose .ldc-box { margin-inline: 0; }

.ldc-article__pages {
  font-family: var(--ldc-font-sans);
  font-size: var(--ldc-text-sm);
  padding-top: var(--ldc-space-4);
  border-top: 1px solid var(--ldc-rule);
}

/* ---- Pie del artículo ---------------------------------------------------- */

.ldc-article__foot {
  margin-top: var(--ldc-space-7);
  padding-top: var(--ldc-space-4);
  border-top: 2px solid var(--ldc-ink-navy);
  display: flex;
  flex-direction: column;
  gap: var(--ldc-space-3);
}
.ldc-article__taxrow { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--ldc-space-3); }
.ldc-article__terms {
  font-family: var(--ldc-font-sans);
  font-size: var(--ldc-text-sm);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em;
}
.ldc-article__terms a { color: var(--ldc-ink-navy); text-decoration: none; border-bottom: 1px solid var(--ldc-rule-strong); }
.ldc-article__terms a:hover { color: var(--ldc-accent-text); border-bottom-color: var(--ldc-accent-text); }

/* ---- Análisis relacionado ------------------------------------------------ */

.ldc-related { border-top: 1px solid var(--ldc-rule); background: var(--ldc-paper-sunken); }
.ldc-related .ldc-story__title { font-size: var(--ldc-text-lg); }

/* ---- Móvil ---------------------------------------------------------------- */

@media (max-width: 600px) {
  .ldc-article__head { padding-top: var(--ldc-space-5); }
  .ldc-prose .wp-block-table,
  .ldc-prose .alignwide { width: 100%; margin-inline: 0; }
}
