/*
Theme Name:   Fabula Child – MercaFichajes
Theme URI:    https://mercafichajes.es/
Description:  Tema hijo de Fabula para MercaFichajes. CSS y PHP persistentes de la adaptación (no editar el tema padre).
Author:       MercaFichajes
Template:     fabula
Version: 1.2.2
Requires PHP: 8.1
Text Domain:  fabula-child-mf
*/

/* ===== 1. Paleta MercaFichajes (sobrescribe las variables de Fabula) ===== */
:root{
  --mf-verde:#89C400; --mf-verde-osc:#4F7A00; --mf-texto:#202522; --mf-fondo:#EEF1EC; --mf-blanco:#FFFFFF;
  --mf-futbol:#3E8E1E; --mf-baloncesto:#D9661F; --mf-motor:#D32F2F; --mf-padel:#1565C0;
}
body:not(.jkd-dark){ --jkd-bg-col-sec:var(--mf-fondo); --jkd-h-col:var(--mf-texto); --jkd-txt-col:#3a3f3b; }
body{ background-color:var(--mf-fondo); }
/* El verde lima no tiene contraste suficiente con texto blanco: en botones y etiquetas usamos texto oscuro. */
.jkd-btn.primary, .bg-col-pr, .cat-lbl, .post-cat a{ color:var(--mf-texto) !important; }
a:focus-visible, button:focus-visible, .jkd-btn:focus-visible{ outline:3px solid var(--mf-verde-osc); outline-offset:2px; }

/* ===== 2. Portada: secciones, módulos condicionales y apagados ===== */
.mf-sec{ scroll-margin-top:90px; }
.mf-off{ display:none !important; }                                   /* módulos preparados pero desactivados */
.mf-cond:not(:has(article)){ display:none !important; }               /* se oculta solo si no hay entradas reales */
.mf-more .elementor-button{ background:var(--mf-verde); color:var(--mf-texto); border-radius:8px; font-weight:700; }

/* Chips de ligas / competiciones (enlaces rastreables) */
.mf-chips ul{ display:flex; flex-wrap:wrap; gap:8px; list-style:none; margin:0; padding:0; }
.mf-chips a{ display:inline-flex; align-items:center; min-height:40px; padding:6px 14px; border-radius:999px;
  background:var(--mf-blanco); color:var(--mf-texto); border:1px solid rgba(32,37,34,.15); font-weight:600; font-size:14px; text-decoration:none; }
.mf-chips a:hover{ border-color:var(--mf-verde-osc); color:var(--mf-verde-osc); }

/* Acento por vertical (barra fina junto al título de sección) */
.mf-v-futbol .sect-ttl, .mf-v-baloncesto .sect-ttl, .mf-v-motor .sect-ttl, .mf-v-padel .sect-ttl{ border-left:5px solid currentColor; padding-left:10px; }
.mf-v-futbol .sect-ttl{ color:var(--mf-futbol); } .mf-v-baloncesto .sect-ttl{ color:var(--mf-baloncesto); }
.mf-v-motor .sect-ttl{ color:var(--mf-motor); } .mf-v-padel .sect-ttl{ color:var(--mf-padel); }

/* "Sin categoría" no aporta al explorador del archivo */
.mf-explorar a[href$="/category/sin-categoria/"]{ display:none !important; }
.mf-explorar li:has(> a[href$="/category/sin-categoria/"]), .mf-explorar .cat-list-item:has(a[href$="/category/sin-categoria/"]){ display:none !important; }

/* ===== 3. Espacios publicitarios (A1–A5): apagados por defecto, sin huecos ===== */
.mf-ad-off{ display:none !important; }
.mf-ad-wrap:not(:has(.mf-ad-on)){ display:none !important; }     /* sin código activo = sin hueco */
.mf-ad-on{ display:block; margin:16px auto; text-align:center; }
.mf-ad-on::before{ content:"Publicidad"; display:block; font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:#6b716d; margin-bottom:4px; }
.mf-ad-on.mf-ad-a1, .mf-ad-on.mf-ad-a3{ min-height:280px; }          /* espacio reservado → sin CLS */
@media (min-width:768px){ .mf-ad-on.mf-ad-a1, .mf-ad-on.mf-ad-a3{ min-height:250px; } }
.mf-ad-slot{ min-height:280px; margin:24px 0; }                          /* A4/A5 dentro del artículo */

/* ===== 4. Bloques editoriales reutilizables (estilos de bloque del editor) ===== */
.is-style-mf-aviso{ border-left:5px solid var(--mf-verde-osc); background:#F4F8EC; padding:14px 18px; border-radius:8px; }
.is-style-mf-fuente{ font-size:14px; border-top:1px solid rgba(32,37,34,.15); padding-top:10px; color:#4a504c; }
.is-style-mf-pros-contras{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:640px){ .is-style-mf-pros-contras{ grid-template-columns:1fr; } }
.is-style-mf-pros-contras > *:first-child{ border-top:4px solid #3E8E1E; background:#F3F8EE; padding:12px; border-radius:8px; }
.is-style-mf-pros-contras > *:last-child{ border-top:4px solid #C0392B; background:#FBF1F0; padding:12px; border-radius:8px; }
.is-style-mf-caja-afiliado{ border:2px solid var(--mf-verde); border-radius:12px; padding:16px 18px; background:#fff; }
.is-style-mf-caja-afiliado .mf-aff-aviso, .mf-aff-aviso{ font-size:12px; color:#5b615d; }
.wp-block-button.is-style-mf-afiliado .wp-block-button__link{ background:var(--mf-verde); color:var(--mf-texto); font-weight:700; border-radius:8px; }
.wp-block-button.is-style-mf-afiliado .wp-block-button__link::after{ content:" ↗"; }
.is-style-mf-comparativa table{ border-collapse:collapse; width:100%; }
.is-style-mf-comparativa th, .is-style-mf-comparativa td{ border:1px solid rgba(32,37,34,.15); padding:8px 10px; }
.is-style-mf-comparativa thead th{ background:var(--mf-fondo); }
.is-style-mf-cita{ border-left:4px solid var(--mf-verde); padding-left:16px; font-style:italic; }
.mf-etiqueta{ display:inline-block; font-size:12px; font-weight:700; padding:2px 8px; border-radius:4px; text-transform:uppercase; }
.mf-etiqueta-oficial{ background:#3E8E1E; color:#fff; } .mf-etiqueta-rumor{ background:#E89041; color:#202522; } .mf-etiqueta-analisis{ background:#1F5FA8; color:#fff; }

/* ===== 5. Accesibilidad táctil en móvil ===== */
@media (max-width:767px){ .jkd-pag a, .jkd-pag span{ min-width:44px; min-height:44px; } }

/* ===== 6. Páginas a ancho completo de Elementor: dejar sitio a la cabecera fija de Fabula ===== */
.page-template-elementor_header_footer [data-elementor-type="wp-page"]{ padding-top:calc(var(--jkd-nav-h, 60px) + 36px); }

/* ===== 7. Anuncios del tema en artículos: sin cajas vacías ===== */
.jkd-ban:not(:has(*)){ display:none !important; }
.mf-ad-on.mf-ad-a2{ min-height:250px; }

/* ===== 8. Portada: Páginas de interés (enlaces y banner preexistentes de Sahifa) ===== */
.mf-interes{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:start; }
@media (max-width:900px){ .mf-interes{ grid-template-columns:1fr 1fr; } }
@media (max-width:600px){ .mf-interes{ grid-template-columns:1fr; } }
.mf-int-col{ background:#fff; border-radius:12px; padding:16px; display:flex; flex-direction:column; gap:10px; align-items:center; text-align:center; }
.mf-int-col img{ max-width:100%; height:auto; display:block; border-radius:8px; }
.mf-int-col > a:first-child{ font-weight:700; color:var(--mf-texto); }
.mf-pub-lbl{ font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:#6b716d; }
.mf-int-links ul{ list-style:none; margin:0; padding:0; text-align:left; width:100%; }
.mf-int-links li{ padding:10px 0; border-bottom:1px solid rgba(32,37,34,.1); }
.mf-int-links li:last-child{ border-bottom:0; }
.mf-int-links a{ font-weight:700; color:var(--mf-verde-osc); }

/* Títulos de páginas estáticas y caja de autor heredada de Sahifa */
.mf-page-title{font-size:clamp(1.75rem,3.6vw,2.5rem);line-height:1.15;margin:0 0 1.25rem;color:var(--mf-texto)}
.mf-author-box{display:flex;gap:18px;align-items:flex-start;background:var(--mf-fondo);border-radius:10px;padding:18px;margin:0 0 1.5rem}
.mf-author-img{width:90px;height:90px;border-radius:50%;object-fit:cover;flex:0 0 90px}
.mf-author-txt>:last-child{margin-bottom:0}
@media(max-width:480px){.mf-author-box{flex-direction:column}}
/* Pie: el widget heredado «Páginas de interés» ocupa el ancho disponible */
/* Páginas de interés en 2 columnas (banner + enlaces) y lista del pie */
.mf-interes.mf-interes-2{grid-template-columns:minmax(0,340px) minmax(0,1fr)}
.mf-interes-2 .mf-int-links{align-self:stretch;justify-content:center}
@media (max-width:600px){.mf-interes.mf-interes-2{grid-template-columns:1fr}}
/* Pie: «Páginas de interés» en una franja horizontal con píldoras (mismo estilo que los chips) */
#jkd-ft .sb-wrp{padding-top:28px;padding-bottom:28px}
#jkd-ft .ft-widgets{flex:1 1 auto;width:100%}
#jkd-ft .ft-widgets .sb-wd-wrp{max-width:none!important;width:100%!important;flex:1 1 100%!important}
#jkd-ft #custom_html-2{display:flex!important;flex-direction:row!important;max-width:none!important;width:100%!important;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 18px;background:#fff;border-radius:12px;padding:14px 18px}
#jkd-ft #custom_html-2 .widget-title{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6b716d;white-space:nowrap}
#jkd-ft .mf-int-foot{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;margin:0;padding:0}
#jkd-ft .mf-int-foot li{margin:0;padding:6px 14px;border-radius:999px;background:var(--mf-fondo);font-size:13px;line-height:1.3;color:var(--mf-texto);transition:background .15s}
#jkd-ft .mf-int-foot li:hover{background:#e2e8dc}
#jkd-ft .mf-int-foot a{color:var(--mf-verde-osc);font-weight:700}
@media (max-width:600px){#jkd-ft #custom_html-2{flex-direction:column!important}}

/* Colores por categoría en las etiquetas (texto blanco con contraste suficiente) */
a.cat-lb{background:var(--mf-verde-osc)!important;color:#fff!important}
a.cat-lb[href*="/category/futbol/"]{background:#2E7D32!important}
a.cat-lb[href*="/category/motor/"]{background:#D32F2F!important}
a.cat-lb[href*="/category/baloncesto/"]{background:#C24E00!important}
a.cat-lb[href*="/category/padel/"]{background:#1565C0!important}
a.cat-lb[href*="/category/otros-deportes/"]{background:#6A3AB2!important}
a.cat-lb[href*="/category/mas-deporte/"]{background:#00796B!important}
a.cat-lb[href*="/category/fitness/"]{background:#AD1457!important}
a.cat-lb[href*="/category/equipamiento/"]{background:#5D4037!important}
a.cat-lb[href*="/category/ocio/"]{background:#F9A825!important;color:#202522!important}
a.cat-lb[href*="/category/breves/"],a.cat-lb[href*="/category/varios/"],a.cat-lb[href*="/category/opinion/"],a.cat-lb[href*="/category/multimedia/"]{background:#455A64!important}
a.cat-lb[href*="/category/apuestas-deportivas/"]{background:#546E7A!important}
/* Banner de repuestos: barra lateral de la entrada y franja del pie */
.mf-side-ban{display:block;margin-top:20px;text-align:center}
.mf-side-ban img{max-width:100%;height:auto;border-radius:8px;display:inline-block}
#jkd-ft .mf-rep-ban{display:block;flex:0 0 auto}
#jkd-ft .mf-rep-ban img{width:180px;height:auto;border-radius:8px;display:block}
#jkd-ft #custom_html-2 .textwidget{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 18px}
/* Franja del pie: título arriba; banner a la izquierda y enlaces a la derecha (en móvil, apilado) */
#jkd-ft #custom_html-2{flex-direction:column!important;align-items:stretch!important}
#jkd-ft #custom_html-2 .widget-title{text-align:left}
#jkd-ft #custom_html-2 .textwidget{flex-direction:row!important;flex-wrap:nowrap;justify-content:flex-start;align-items:center}
#jkd-ft #custom_html-2 .mf-int-foot{flex:1 1 auto;justify-content:flex-start}
@media (max-width:700px){#jkd-ft #custom_html-2 .textwidget{flex-direction:column!important;align-items:center}#jkd-ft #custom_html-2 .mf-int-foot{justify-content:center}#jkd-ft #custom_html-2 .widget-title{text-align:center}}
