/* ====================================================================
   ZG: cookies / documentos legales de Complianz.
   --------------------------------------------------------------------
   Viste el documento que genera Complianz (política de cookies,
   privacidad, etc.) con la estética del sitio, SIN tocar su contenido
   — así el plugin sigue auto-sincronizando con cookiedatabase.org y
   nosotros solo ponemos la piel.

   ⚠️ OJO CON EL SCOPE (esto ya rompió la web una vez):
   `cmplz-document` es una clase que Complianz pone en el <body>, NO en
   un wrapper del documento. Por eso NO se puede usar `.cmplz-document`
   a secas como contenedor: eso aplica a la página entera (header y
   footer incluidos).

   Scope correcto → `.cmplz-document main`
   El header y el footer son HERMANOS de <main> dentro de
   .wp-site-blocks, así que acotando a `main` tocamos solo el contenido.

   Cargado por gaman-core.php (enqueue global; sin coste si no hay
   documento de Complianz en la página).
   ==================================================================== */

/* ============================================================
   1. Contenedor del contenido — anchura, aire y clear del header
   ============================================================ */
.cmplz-document main {
  box-sizing: border-box;
  max-width: 760px;
  margin-inline: auto;
  /* padding-top generoso: el header del sitio es overlay y el CSS del
     header anula el padding del <main>. */
  padding-block: clamp(140px, 16vw, 200px) clamp(80px, 10vw, 168px) !important;
  padding-inline: clamp(20px, 5vw, 80px);
  font-family: var(--zg-fuente-texto, 'Lexend', sans-serif);
  font-size: clamp(0.95rem, 0.9rem + 0.2vw, 1.05rem);
  line-height: 1.75;
  color: var(--zg-texto, #1C1C1A);
  text-align: left;
}
.cmplz-document main *,
.cmplz-document main *::before,
.cmplz-document main *::after { box-sizing: border-box; }

@media (max-width: 899px) {
  .cmplz-document main {
    padding-block: clamp(90px, 24vw, 130px) clamp(50px, 8vw, 90px) !important;
    line-height: 1.7;
  }
}

/* El tema constriñe el contenido a su `contentSize`. Como el ancho ya
   lo marca <main>, liberamos los wrappers internos. */
.cmplz-document main .wp-block-post-content,
.cmplz-document main .entry-content,
.cmplz-document main > .wp-block-group,
.cmplz-document main > .wp-block-group.is-layout-constrained {
  max-width: none !important;
  padding-inline: 0 !important;
}

/* ---- Título de la página ----
   gaman-core oculta el título de TODAS las páginas
   (`body.page .wp-block-post-title { display:none }`). El documento de
   Complianz no trae <h1> propio, así que la página quedaría sin título.
   Lo recuperamos y lo estilamos como el de las otras legales. */
.cmplz-document main .wp-block-post-title,
.cmplz-document main .entry-title {
  display: block !important;
  margin: 0 0 clamp(28px, 3.5vw, 44px);
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 500;
  font-size: clamp(1.85rem, 4.5vw, 3rem);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: var(--zg-texto, #1C1C1A);
  text-align: center;
}
@media (max-width: 899px) {
  .cmplz-document main .wp-block-post-title,
  .cmplz-document main .entry-title {
    font-size: clamp(1.6rem, 7vw, 2.2rem);
  }
}

/* ============================================================
   2. Títulos del documento
   ============================================================ */
.cmplz-document main h2 {
  margin: clamp(52px, 6vw, 80px) 0 clamp(18px, 2vw, 24px);
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 600;
  font-size: clamp(1.35rem, 2.4vw, 1.7rem);
  line-height: 1.25;
  letter-spacing: -0.005em;
  color: var(--zg-texto, #1C1C1A);
}
.cmplz-document main h3 {
  margin: clamp(32px, 3.8vw, 48px) 0 clamp(10px, 1.2vw, 14px);
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 500;
  font-size: clamp(1.05rem, 1.5vw, 1.15rem);
  line-height: 1.35;
  color: var(--zg-oro-rosa-osc, #8E4F58);
}
.cmplz-document main h4,
.cmplz-document main h5 {
  margin: clamp(22px, 2.6vw, 30px) 0 8px;
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 500;
  font-size: 1rem;
  color: var(--zg-texto, #1C1C1A);
}

/* ============================================================
   3. Texto, listas y enlaces
   ============================================================ */
.cmplz-document main p {
  margin: 0 0 clamp(16px, 1.8vw, 22px);
}
.cmplz-document main ul,
.cmplz-document main ol {
  margin: 0 0 clamp(20px, 2.2vw, 28px);
  padding-left: 1.4em;
}
.cmplz-document main li {
  margin-bottom: clamp(8px, 1vw, 12px);
}
.cmplz-document main li::marker {
  color: var(--zg-oro-rosa, #B76E79);
}
.cmplz-document main strong,
.cmplz-document main b {
  font-weight: 600;
  color: var(--zg-texto, #1C1C1A);
}
.cmplz-document main a {
  color: var(--zg-oro-rosa, #B76E79);
  text-decoration: underline;
  text-decoration-color: rgba(183, 110, 121, 0.4);
  text-underline-offset: 3px;
  word-break: break-word;
  transition: color 160ms ease, text-decoration-color 160ms ease;
}
.cmplz-document main a:hover,
.cmplz-document main a:focus-visible {
  color: var(--zg-oro-rosa-osc, #8E4F58);
  text-decoration-color: var(--zg-oro-rosa-osc, #8E4F58);
}

/* ============================================================
   4. Tablas de cookies
   ============================================================ */
.cmplz-document main table {
  display: block;          /* permite el overflow-x en móvil */
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-collapse: collapse;
  margin: 0 0 clamp(28px, 3.4vw, 44px);
  font-size: 0.86rem;
  line-height: 1.5;
  text-align: left;
}
@media (min-width: 700px) {
  .cmplz-document main table { display: table; }
}
.cmplz-document main th {
  padding: 10px 12px;
  border-bottom: 1.5px solid var(--zg-oro-rosa, #B76E79);
  font-family: var(--zg-fuente-texto, 'Lexend', sans-serif);
  font-weight: 600;
  font-size: 0.7rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--zg-texto-suave, #5F5F5A);
  white-space: nowrap;
  text-align: left;
  background: transparent;
}
.cmplz-document main td {
  padding: 10px 12px;
  border-bottom: 1px solid rgba(28, 28, 26, 0.08);
  vertical-align: top;
  background: transparent;
}
.cmplz-document main tbody tr:last-child td { border-bottom: 0; }

/* Nombre de la cookie (1ª columna) en monoespaciada oro rosa. */
.cmplz-document main td:first-child {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.8rem;
  color: var(--zg-oro-rosa-osc, #8E4F58);
  white-space: nowrap;
}

/* ============================================================
   5. Bloques de servicio / categorías de Complianz
   ============================================================ */
.cmplz-document main .cmplz-service-header,
.cmplz-document main .cmplz-service-name {
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 500;
  color: var(--zg-oro-rosa-osc, #8E4F58);
}
.cmplz-document main .cmplz-service-header {
  padding-top: clamp(20px, 2.4vw, 28px);
  border-top: 1px solid rgba(28, 28, 26, 0.08);
}

/* Etiqueta de propósito (Funcional / Estadísticas / …) → píldora. */
.cmplz-document main .cmplz-purpose,
.cmplz-document main .cmplz-service-purpose {
  display: inline-block;
  padding: 2px 10px;
  margin-left: 8px;
  border-radius: 999px;
  background: rgba(183, 110, 121, 0.15);
  color: var(--zg-oro-rosa-osc, #8E4F58);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  line-height: 1.6;
  white-space: nowrap;
}

/* Nota de sincronización con cookiedatabase.org (al final). */
.cmplz-document main .cmplz-sync-notice,
.cmplz-document main .cmplz-cookiedatabase-info {
  font-size: 0.8rem;
  font-style: italic;
  color: var(--zg-texto-tenue, #9A9A94);
}

/* ============================================================
   6. Botón "Gestionar consentimiento" ([cmplz-manage-consent])
      Patrón CTA de la marca. Puede vivir fuera de main (p. ej. en el
      footer), así que este bloque NO se acota a main a propósito.
   ============================================================ */
.cmplz-manage-consent-container button,
button.cmplz-manage-consent,
a.cmplz-manage-consent {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 26px;
  border: 2px solid var(--zg-oro-rosa, #B76E79) !important;
  border-radius: 0 !important;
  background: var(--zg-fondo-suave, #F2EFE6) !important;
  color: var(--zg-texto, #1C1C1A) !important;
  font-family: var(--zg-fuente-display, 'Bodoni Moda', serif) !important;
  font-weight: 700;
  font-size: 0.92rem;
  letter-spacing: 0.02em;
  text-decoration: none;
  cursor: pointer;
  box-shadow: none !important;
  transition: border-color 160ms ease, background-color 160ms ease, transform 160ms ease;
}
.cmplz-manage-consent-container button:hover,
button.cmplz-manage-consent:hover,
a.cmplz-manage-consent:hover {
  border-color: var(--zg-oro-rosa-osc, #8E4F58) !important;
  background: var(--zg-fondo-suave, #F2EFE6) !important;
  color: var(--zg-oro-rosa-osc, #8E4F58) !important;
}
.cmplz-manage-consent-container button:active,
button.cmplz-manage-consent:active {
  transform: translateY(1px);
}

/* ============================================================
   7. Banner de cookies de Complianz — toques de marca.
      Vive fuera de main (se inyecta al final del body), así que va
      acotado por su propio ID.
      (Solo color/tipografía: NO tocamos la paridad Aceptar/Rechazar,
      que es requisito de la AEPD.)
   ============================================================ */
#cmplz-cookiebanner-container .cmplz-cookiebanner {
  font-family: var(--zg-fuente-texto, 'Lexend', sans-serif);
  border-radius: 0;
  border: 1.5px solid var(--zg-oro-rosa, #B76E79);
  background: var(--zg-fondo, #F7F7F4);
  color: var(--zg-texto, #1C1C1A);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title {
  font-family: var(--zg-fuente-titulo, 'Lexend', sans-serif);
  font-weight: 500;
  color: var(--zg-texto, #1C1C1A);
}
/* Botones del banner: mismo peso visual para Aceptar y Rechazar
   (requisito AEPD — NO hacer uno más llamativo que el otro). */
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny {
  border-radius: 0;
  font-family: var(--zg-fuente-display, 'Bodoni Moda', serif);
  font-weight: 700;
  letter-spacing: 0.02em;
  border: 2px solid var(--zg-oro-rosa, #B76E79);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
  background: var(--zg-oro-rosa, #B76E79);
  color: var(--zg-fondo, #F7F7F4);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny {
  background: var(--zg-fondo-suave, #F2EFE6);
  color: var(--zg-texto, #1C1C1A);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover {
  background: var(--zg-oro-rosa-osc, #8E4F58);
  border-color: var(--zg-oro-rosa-osc, #8E4F58);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-btn.cmplz-deny:hover {
  border-color: var(--zg-oro-rosa-osc, #8E4F58);
  color: var(--zg-oro-rosa-osc, #8E4F58);
}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link,
#cmplz-cookiebanner-container .cmplz-cookiebanner a {
  color: var(--zg-oro-rosa, #B76E79);
  text-underline-offset: 3px;
}
