/* =========================================================
   forobanana · estilos de marca sobre Astra
   Fuente: guía de marca (paso 0.2). Proporción: 60 % crema,
   25 % tinta, 10 % amarillo, 5 % colores de sala.
   Regla de oro: el amarillo nunca es color de texto sobre
   fondo claro; va de fondo, con tinta encima.
   ========================================================= */

:root{
  /* Colores de marca */
  --fb-amarillo:#FFD23F;
  --fb-amarillo-hover:#E8B400;
  --fb-tinta:#1B1F2A;
  --fb-crema:#FFF9E8;
  --fb-blanco:#FFFFFF;
  --fb-linea:#ECE3C8;
  --fb-suave:#FBF1D3;
  --fb-gris:#5F6370;          /* texto secundario */
  --fb-tallo:#7A4E1D;

  /* Salas */
  --fb-sala-finanzas:#2F7D4F;  /* Verde hoja */
  --fb-sala-politica:#D9533B;  /* Coral (puntos, iconos, bordes) */
  --fb-sala-politica-texto:#B83A24;
  --fb-sala-tecnologia:#6A4BC4;/* Violeta */
  --fb-sala-general:#44607A;   /* Azul pizarra */

  /* Estados */
  --fb-ok:#2F7D4F;
  --fb-error:#B83A24;

  /* Niveles de reputación */
  --fb-nivel-verde:#5E9E2F;
  --fb-nivel-amarilla:#E8B400;
  --fb-nivel-madura:#B7761A;
  --fb-nivel-oro:#C99700;

  /* Tipografías */
  --fb-f-titulos:"Bricolage Grotesque","Figtree",system-ui,sans-serif;
  --fb-f-texto:"Figtree",system-ui,-apple-system,"Segoe UI",sans-serif;
  --fb-f-cifras:"JetBrains Mono",ui-monospace,Menlo,monospace;

  /* Formas */
  --fb-radio-boton:8px;
  --fb-radio-tarjeta:12px;
}

/* ---------- Base ---------- */
html body{
  background-color:var(--fb-crema);
  color:var(--fb-tinta);
  font-family:var(--fb-f-texto);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
body,button,input,select,textarea,
.ast-button,.ast-custom-button{
  font-family:var(--fb-f-texto);
}
::selection{background:var(--fb-amarillo);color:var(--fb-tinta)}

/* ---------- Titulares: Bricolage Grotesque ---------- */
h1,h2,h3,h4,h5,h6,
.entry-title,.page-title,.site-title,
.wp-block-heading{
  font-family:var(--fb-f-titulos);
  color:var(--fb-tinta);
  letter-spacing:-.01em;
  text-wrap:balance;
}
h1,.entry-title{font-weight:800}
h2,h3,h4,h5,h6{font-weight:700}

/* ---------- Enlaces: tinta, subrayado amarillo ---------- */
.entry-content a,
.ast-single-post .entry-content a,
.comment-content a,
.widget a,
.site-footer a,
.ast-footer-copyright a{
  color:var(--fb-tinta);
  text-decoration:underline;
  text-decoration-color:var(--fb-amarillo-hover);
  text-decoration-thickness:2px;
  text-underline-offset:3px;
}
.entry-content a:hover,
.comment-content a:hover,
.widget a:hover,
.site-footer a:hover{
  color:var(--fb-tinta);
  text-decoration-color:var(--fb-tinta);
}

/* Menú: tinta; el activo con barra amarilla debajo */
.main-header-menu .menu-link,
.ast-header-break-point .main-header-menu .menu-link{
  color:var(--fb-tinta);
  font-weight:600;
}
.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link{
  color:var(--fb-tinta);
  box-shadow:inset 0 -3px 0 var(--fb-amarillo);
}

/* ---------- Botones: fondo amarillo, texto tinta, radio 8 px ---------- */
.wp-block-button__link,
.wp-element-button,
.ast-button,
.ast-custom-button,
.button,
button:not(.menu-toggle):not(.ast-search-menu-icon):not([class*="ast-builder"]),
input[type="submit"],
input[type="button"],
input[type="reset"]{
  background-color:var(--fb-amarillo);
  color:var(--fb-tinta);
  border:0;
  border-radius:var(--fb-radio-boton);
  font-family:var(--fb-f-texto);
  font-weight:600;
  padding:10px 18px;
  line-height:1.3;
  cursor:pointer;
  transition:background-color .15s ease;
}
.wp-block-button__link:hover,
.wp-element-button:hover,
.ast-button:hover,
.ast-custom-button:hover,
.button:hover,
button:not(.menu-toggle):not(.ast-search-menu-icon):not([class*="ast-builder"]):hover,
input[type="submit"]:hover,
input[type="button"]:hover{
  background-color:var(--fb-amarillo-hover);
  color:var(--fb-tinta);
}
/* Botón secundario (estilo «contorno» de los bloques) */
.wp-block-button.is-style-outline > .wp-block-button__link{
  background:transparent;
  color:var(--fb-tinta);
  box-shadow:inset 0 0 0 1px var(--fb-linea);
}

/* ---------- Foco visible para teclado ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.wp-block-button__link:focus-visible{
  outline:2px solid var(--fb-tinta);
  outline-offset:2px;
}

/* ---------- Formularios: 16 px mínimo (evita el zoom en iPhone) ---------- */
input[type="text"],input[type="email"],input[type="url"],input[type="password"],
input[type="search"],input[type="number"],input[type="tel"],input[type="date"],
select,textarea{
  font-size:16px;
  color:var(--fb-tinta);
  background:var(--fb-blanco);
  border:1px solid var(--fb-linea);
  border-radius:var(--fb-radio-boton);
  padding:10px 12px;
}

/* ---------- Superficies: tarjetas blancas, borde línea, radio 12 px ---------- */
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single,
.ast-separate-container .comments-area,
.ast-separate-container .ast-author-box,
.ast-separate-container .ast-archive-description,
.fb-tarjeta{
  background:var(--fb-blanco);
  border:1px solid var(--fb-linea);
  border-radius:var(--fb-radio-tarjeta);
}

/* Cabecera y pie sobre crema, separados por una línea */
.site-header .ast-primary-header-bar,
.site-header .main-header-bar{
  background-color:var(--fb-crema);
  border-bottom:1px solid var(--fb-linea);
}
.site-footer,
.site-footer .site-primary-footer-wrap,
.site-footer .site-below-footer-wrap{
  background-color:var(--fb-crema);
  border-top:1px solid var(--fb-linea);
}

/* Texto secundario */
.entry-meta,.entry-meta *,.posted-on,.byline,
.ast-footer-copyright,.wp-block-post-date{
  color:var(--fb-gris);
}

/* ---------- Utilidades para las próximas fases ---------- */

/* Cifras: consenso, ranking, fechas de vencimiento, contadores */
.fb-cifra{
  font-family:var(--fb-f-cifras);
  font-weight:500;
  font-variant-numeric:tabular-nums;
}

/* Etiquetas de sala */
.fb-sala{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;
  color:var(--fb-c,var(--fb-sala-general));
  background:color-mix(in srgb,var(--fb-c,var(--fb-sala-general)) 12%,transparent);
  padding:2px 8px;border-radius:4px;
}
.fb-sala--finanzas{--fb-c:var(--fb-sala-finanzas)}
.fb-sala--politica{--fb-c:var(--fb-sala-politica-texto)}
.fb-sala--tecnologia{--fb-c:var(--fb-sala-tecnologia)}
.fb-sala--general{--fb-c:var(--fb-sala-general)}

/* Niveles de reputación: siempre con el nombre escrito */
.fb-nivel{
  display:inline-flex;align-items:center;gap:4px;
  font-size:.75rem;font-weight:700;color:var(--fb-tinta);
  padding:1px 8px;border-radius:999px;
  background:color-mix(in srgb,var(--fb-n) 18%,transparent);
  border:1px solid color-mix(in srgb,var(--fb-n) 55%,transparent);
}
.fb-nivel--verde{--fb-n:var(--fb-nivel-verde)}
.fb-nivel--amarilla{--fb-n:var(--fb-nivel-amarilla)}
.fb-nivel--madura{--fb-n:var(--fb-nivel-madura)}
.fb-nivel--oro{--fb-n:var(--fb-nivel-oro)}

/* Lema */
.fb-lema{
  font-family:var(--fb-f-titulos);
  font-weight:800;
  color:var(--fb-tinta);
}

@media (prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}


/* ---------- Banner de cookies (Complianz) con la marca ---------- */
.cmplz-cookiebanner{
  background:var(--fb-crema)!important;
  border:1px solid var(--fb-linea)!important;
  border-radius:var(--fb-radio-tarjeta)!important;
  color:var(--fb-tinta)!important;
  font-family:var(--fb-f-texto)!important;
  box-shadow:0 10px 30px rgba(27,31,42,.18)!important;
}
.cmplz-cookiebanner .cmplz-title{font-family:var(--fb-f-titulos)!important;font-weight:700!important;color:var(--fb-tinta)!important}
.cmplz-cookiebanner .cmplz-message,.cmplz-cookiebanner .cmplz-message p{font-size:14px!important;color:var(--fb-tinta)!important}
.cmplz-cookiebanner a{color:var(--fb-tinta)!important;text-decoration-color:var(--fb-amarillo-hover)!important}
.cmplz-cookiebanner .cmplz-btn{border-radius:var(--fb-radio-boton)!important;font-weight:600!important;font-family:var(--fb-f-texto)!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-accept{background:var(--fb-amarillo)!important;border-color:var(--fb-amarillo)!important;color:var(--fb-tinta)!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-deny{background:var(--fb-tinta)!important;border-color:var(--fb-tinta)!important;color:var(--fb-crema)!important}
.cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,.cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences{background:var(--fb-blanco)!important;border:1px solid var(--fb-linea)!important;color:var(--fb-tinta)!important}
.cmplz-cookiebanner input:checked + .cmplz-label:before,.cmplz-cookiebanner .cmplz-category .cmplz-banner-checkbox input:checked + .cmplz-label:before{background:var(--fb-tinta)!important}
#cmplz-manage-consent .cmplz-manage-consent{background:var(--fb-tinta)!important;color:var(--fb-crema)!important;border-radius:8px 8px 0 0!important}
