/* ============================
   Gutenberg - Front-end Skin
   (usa vars existentes de cm.css)
   ============================ */

/* Contenido base */

/* generic rules */
article:is(.type-page,.type-post){
  padding-block: 4rem;
  max-width: 100ch;
  margin-inline: auto;
}
.gutenberg-styles :is(ul,li,p, blockquote){
  color: var(--dark-grey);
}
:is(.post,.page) .wp-block-embed iframe{
  width: 100%;
}

.gutenberg-styles :is(h1,h2,h3,h4,h5,h6){
  margin-block: 1rem 1.5rem;
}


/* Listas */
.gutenberg-styles ul,
.gutenberg-styles ol { margin: 0 0 1rem 1.25em; }
.gutenberg-styles li { margin: .25rem 0; }

/* Separadores */
.gutenberg-styles hr,
.gutenberg-styles .wp-block-separator {
  border: 0;
  border-top: 1px solid var(--brand-lightgrey-color);
  margin: 2rem 0;
}

/* Citas */
.gutenberg-styles blockquote,
.gutenberg-styles .wp-block-quote {
  border-left: 4px solid var(--light-grey-blue-tone);
  padding: .75rem 1rem;
  color: var(--dark-grey);
  font-style: italic;
  margin: 1.5rem 0;
}



/* Imágenes */
.gutenberg-styles .wp-block-image img,
.gutenberg-styles :where(img[class*="wp-image-"]) {
  max-width: 100%;
  height: auto;
  border-radius: var(--bs-border-radius-xl);
  display: block;
}
.gutenberg-styles .wp-block-image figcaption {
  color: var(--dark-grey);
  font-size: .9rem;
  margin-top: .5rem;
  text-align: center;
}

/* Galería */
.gutenberg-styles .wp-block-gallery { gap: .75rem; }
.gutenberg-styles .wp-block-gallery .blocks-gallery-item img { border-radius: var(--bs-border-radius-xl); }

/* Alineaciones WP */
.gutenberg-styles .alignleft   { float: left; margin: .25rem 1rem .75rem 0; }
.gutenberg-styles .alignright  { float: right; margin: .25rem 0 .75rem 1rem; }
.gutenberg-styles .aligncenter { display: block; margin-left: auto; margin-right: auto; text-align: center; }
.gutenberg-styles .alignwide   { width: min(1100px, 100%); margin-left: auto; margin-right: auto; }
.gutenberg-styles .alignfull   { width: 100vw; margin-left: 50%; transform: translateX(-50%); }

/* Botones */
.gutenberg-styles .wp-block-button__link {
  display: inline-block;
  padding: var(--btn-padding);
  border-radius: var(--btn-border-radius);
  background-color: var(--btn-primary-bg-color);
  color: var(--btn-primary-color);
  text-decoration: none;
  font-weight: 600;
}
.gutenberg-styles .wp-block-button__link:hover,
.gutenberg-styles .wp-block-button__link:focus {
  background-color: var(--btn-primary-bg-hover);
  color: #fff;
}
.gutenberg-styles .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--brand-blue-color);
  border: 1px solid var(--brand-blue-color);
}
.gutenberg-styles .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: var(--brand-blue-color);
  color: #fff;
}

/* Tablas */
.gutenberg-styles .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  color: var(--body-text-color);
  font-size: .95rem;
}
.gutenberg-styles .wp-block-table td,
.gutenberg-styles .wp-block-table th {
  border: 1px solid var(--light-grey-blue-tone);
  padding: .6rem .75rem;
}
.gutenberg-styles .wp-block-table thead th {
  font-weight: 700;
  background: var(--card-light-grey-bg-color);
}

/* Embeds / Video responsivo */
.gutenberg-styles .wp-block-embed,
.gutenberg-styles .wp-block-video,
.gutenberg-styles .wp-block-embed__wrapper {
  max-width: 100%;
}
.gutenberg-styles .wp-block-embed.is-type-video iframe,
.gutenberg-styles .wp-block-video video {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
  border-radius: var(--bs-border-radius-xl);
  overflow: hidden;
}

/* Cover / Media & Text / Columns */
.gutenberg-styles .wp-block-cover {
  border-radius: var(--bs-border-radius-xl);
  overflow: hidden;
}
.gutenberg-styles .wp-block-media-text {
  gap: 1rem;
}
.gutenberg-styles .wp-block-columns { gap: 1.25rem; }
@media (max-width: 781px) {
  .gutenberg-styles .wp-block-columns { gap: .75rem; }
}

/* Pullquote */
.gutenberg-styles .wp-block-pullquote {
  border-top: 2px solid var(--light-grey-blue-tone);
  border-bottom: 2px solid var(--light-grey-blue-tone);
  padding: 1rem 0;
  color: var(--bs-heading-color);
}

/* Fichero (descarga) */
.gutenberg-styles .wp-block-file {
  display: flex;
  align-items: center;
  gap: .75rem;
}
.gutenberg-styles .wp-block-file__button {
  padding: var(--btn-padding);
  border-radius: var(--btn-border-radius);
  background: var(--btn-primary-bg-color);
  color: var(--btn-primary-color);
}
.gutenberg-styles .wp-block-file__button:hover {
  background: var(--btn-primary-bg-hover);
  color: #fff;
}

/* Listas de posts, categorías, archivos (bloques core) */
.gutenberg-styles .wp-block-latest-posts__list li,
.gutenberg-styles .wp-block-archives li,
.gutenberg-styles .wp-block-categories li { margin: .4rem 0; }
.gutenberg-styles .wp-block-latest-posts__post-date { color: var(--dark-grey); }

/* Citas, imágenes, tablas — márgenes verticales coherentes */
.gutenberg-styles :where(.wp-block-image,.wp-block-gallery,.wp-block-quote,.wp-block-table,
  .wp-block-video,.wp-block-embed,.wp-block-cover,.wp-block-columns,.wp-block-media-text,
  .wp-block-pullquote,.wp-block-file) {
  margin: 1.25rem 0;
}

/* Paginación de página (page-links dentro de post) */
.gutenberg-styles .page-links {
  display: flex; gap: .5rem; flex-wrap: wrap; align-items: center;
}
.gutenberg-styles .page-links a,
.gutenberg-styles .page-links > span {
  display: inline-block;
  padding: .35rem .6rem;
  border-radius: var(--bs-border-radius);
  border: 1px solid var(--light-grey-blue-tone);
}
.gutenberg-styles .page-links > span { 
  background: var(--brand-blue-color); 
  color: #fff; 
  border-color: var(--brand-blue-color);
}

/* Figcaption genérico */
.gutenberg-styles figcaption { color: var(--dark-grey); font-size: .9rem; margin-top: .5rem; }

/* Limpieza de floats al final del contenido */
.gutenberg-styles::after { content: ""; display: block; clear: both; }

/* Compatibilidad con bloques que usen .is-style-rounded, etc. */
.gutenberg-styles .is-style-rounded img { border-radius: 999px; }
