/* ============================================================================
   WordPress-generated markup, folded into the design language.
   Everything here reacts to classes WP or a plugin emits — never to our own
   templates, which style themselves from base.css tokens.
   ========================================================================= */

/* Admin bar: keep fixed headers clear of it. */
body.admin-bar { --caba-adminbar: 32px; }
@media screen and (max-width: 782px) { body.admin-bar { --caba-adminbar: 46px; } }

/* Editor alignment classes. */
.alignleft  { float: left;  margin: .3em 1.5em 1em 0; }
.alignright { float: right; margin: .3em 0 1em 1.5em; }
.aligncenter { display: block; margin-inline: auto; }
.alignwide, .alignfull { margin-inline: calc(var(--caba-gutter) * -1); }
.alignfull img { width: 100%; }

/* Captions. */
.wp-caption { max-width: 100%; margin-bottom: 1.5em; }
.wp-caption-text, figcaption {
  font-family: var(--caba-font-label);
  font-size: var(--caba-size-micro);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--caba-gris);
  padding-top: 8px;
}

/* Core's accessibility helper, matched to ours. */
.screen-reader-text {
  position: absolute !important;
  width: 1px; height: 1px;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}
.screen-reader-text:focus {
  position: static !important;
  width: auto; height: auto;
  clip-path: none;
  background: var(--caba-paper);
  padding: 12px 20px;
}

/* Editor content inside a single: hairlines and quotes on brand. */
.caba-contenido blockquote {
  margin: 1.5em 0;
  padding-left: var(--caba-gutter);
  border-left: 3px solid var(--caba-naranja);
  font-size: var(--caba-size-md);
}
.caba-contenido hr { border: 0; border-top: var(--caba-rule); margin: 2em 0; }
.caba-contenido th, .caba-contenido td {
  border-bottom: var(--caba-rule);
  padding: 14px 0;
  text-align: left;
}
.caba-contenido th {
  font-family: var(--caba-font-label);
  font-size: var(--caba-size-label);
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--caba-verde);
}

/* Native gallery block — the galeria CPT relies on it. */
.wp-block-gallery { gap: 14px; }

/* Pagination. */
.nav-links { display: flex; flex-wrap: wrap; gap: 10px; }
.page-numbers {
  display: inline-block;
  padding: 8px 14px;
  border: var(--caba-rule);
  text-decoration: none;
  font-variant-numeric: tabular-nums;
}
.page-numbers.current { background: var(--caba-verde); color: var(--caba-paper); border-color: var(--caba-verde); }
