/*
 * NextPing Forum Mobile Style v0.1.6
 * FASE 1: portada móvil. Cambios visuales suaves, sin remaquetar wpForo.
 */

@media (max-width: 767px) {
  body.npfm-mobile-index #wpforo-wrap {
    --npfm-radius: 12px;
    color: var(--npfm-navy) !important;
  }

  body.npfm-mobile-index #wpforo-wrap *,
  body.npfm-mobile-index #wpforo-wrap *::before,
  body.npfm-mobile-index #wpforo-wrap *::after {
    box-sizing: border-box;
  }

  /* Título principal y enlaces utilitarios: más jerarquía, sin tocar el menú. */
  body.npfm-mobile-index #wpforo-wrap .wpforo-title,
  body.npfm-mobile-index #wpforo-wrap h1,
  body.npfm-mobile-index #wpforo-wrap .wpf-page-title {
    color: var(--npfm-navy) !important;
    letter-spacing: -0.02em !important;
  }

  /* Botón principal: mismo tamaño, acabado más NextPing. */
  body.npfm-mobile-index #wpforo-wrap .wpf-button,
  body.npfm-mobile-index #wpforo-wrap a.wpf-button,
  body.npfm-mobile-index #wpforo-wrap button.wpf-button {
    border-radius: 10px !important;
    font-weight: 700 !important;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease !important;
  }

  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-title a {
    color: var(--npfm-navy) !important;
    font-weight: 800 !important;
    line-height: 1.22 !important;
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }

  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-description,
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-description p {
    color: #31415d !important;
    line-height: 1.48 !important;
    margin-top: 6px !important;
    margin-bottom: 8px !important;
  }

  /* Topics / Posts quedan como información secundaria, no protagonista. */
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-stat-topics,
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-stat-posts,
  body.npfm-mobile-index #wpforo-wrap .cat-stat-topics,
  body.npfm-mobile-index #wpforo-wrap .cat-stat-posts {
    color: var(--npfm-muted) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
  }

  /* Subforos: chips pequeños. Sin flex forzado ni reordenación del DOM. */
  body.npfm-mobile-index #wpforo-wrap .wpforo-subforum a,
  body.npfm-mobile-index #wpforo-wrap .wpforo-subforum li a,
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum-info .wpforo-subforum a {
    display: inline-block !important;
    margin: 3px 4px 3px 0 !important;
    padding: 4px 8px !important;
    max-width: 100% !important;
    border: 1px solid var(--npfm-border) !important;
    border-radius: 999px !important;
    background: #f8fbff !important;
    color: var(--npfm-navy) !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  /* Bloques de categoría/foro: limpieza visual. */
  body.npfm-mobile-index #wpforo-wrap .wpforo-category,
  body.npfm-mobile-index #wpforo-wrap .wpf-category,
  body.npfm-mobile-index #wpforo-wrap .wpforo-forum,
  body.npfm-mobile-index #wpforo-wrap .wpf-forum {
    border-color: var(--npfm-border) !important;
  }
}

/* ================================================================
 * v0.1.6 · HERO NATIVO WPFORO · OPCIÓN A REFINADA
 * - La imagen nativa de wpForo se mantiene arriba.
 * - Debajo, un bloque blanco compacto.
 * - En vertical: menos altura y menos espacio en blanco.
 * - En horizontal móvil: título a la izquierda y botón a la derecha.
 * - Solo presentación: no cambia URLs, acciones ni funcionamiento.
 * ================================================================ */

@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background-image: none !important;
    background-color: #ffffff !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 6px 18px rgba(18, 51, 92, .07) !important;
    isolation: isolate !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover::before {
    content: '' !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 3 / 1 !important;
    background-image: var(--npfm-cover-image) !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    pointer-events: none !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover::after {
    content: none !important;
    display: none !important;
  }

  /* Bloque inferior más compacto en vertical. */
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px 14px 12px !important;
    background: #ffffff !important;
    border: 0 !important;
    border-top: 1px solid #e7eef8 !important;
    box-shadow: none !important;
    color: var(--npfm-navy) !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content *:not(.npfm-cover-button):not(i):not(svg):not(path) {
    color: var(--npfm-navy) !important;
    text-shadow: none !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(.npfm-cover-button) {
    margin: 0 !important;
    max-width: 100% !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    color: var(--npfm-navy) !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.015em !important;
    text-decoration: none !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 8px 14px !important;
    border: 1px solid var(--npfm-blue) !important;
    border-radius: 10px !important;
    background: var(--npfm-blue) !important;
    color: #ffffff !important;
    box-shadow: 0 6px 14px rgba(22, 102, 229, .16) !important;
    text-decoration: none !important;
    text-shadow: none !important;
    font-size: 14px !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button i,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button svg {
    color: #ffffff !important;
    fill: currentColor !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button:active {
    transform: translateY(1px) !important;
    box-shadow: 0 3px 9px rgba(22, 102, 229, .14) !important;
  }
}

/* Teléfono horizontal: misma proporción de imagen y bloque inferior compacto en una sola línea. */
@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 10px 14px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    min-height: 36px !important;
    padding: 7px 13px !important;
    font-size: 13px !important;
  }
}

/* ================================================================
 * v0.1.7 · HERO COMPACTO EN UNA SOLA LÍNEA
 * Ajuste exclusivamente visual. No modifica estructura ni acciones de wpForo.
 * ================================================================ */

@media (max-width: 767px) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    padding: 8px 10px 9px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(.npfm-cover-button) {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    margin: 0 !important;
    font-size: 13.5px !important;
    font-weight: 750 !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    flex: 0 0 auto !important;
    min-height: 32px !important;
    padding: 6px 10px !important;
    border-radius: 9px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
    margin: 0 !important;
  }

  /* wpForo puede envolver el texto del botón en spans; todos deben quedar blancos. */
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button *,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button i,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button svg,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button path {
    color: #ffffff !important;
    fill: currentColor !important;
    text-shadow: none !important;
  }
}

/* Móvil horizontal: mismo layout en línea, con zona de seguridad para la flecha de subir. */
@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    padding: 8px 68px 8px 14px !important;
    gap: 12px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    font-size: 13px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    min-height: 32px !important;
    padding: 6px 11px !important;
    font-size: 12.5px !important;
  }
}

/* ================================================================
 * v0.1.9 · HERO EN UNA SOLA LÍNEA + MICROAJUSTE HORIZONTAL
 * Ajuste exclusivamente visual. No modifica acciones ni HTML de wpForo.
 * ================================================================ */

/* Teléfono vertical: franja realmente compacta. El botón se coloca a la
 * derecha dentro del mismo bloque aunque wpForo lo envuelva en otro nodo. */
@media (max-width: 767px) and (orientation: portrait) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    position: relative !important;
    display: block !important;
    min-height: 46px !important;
    padding: 8px 124px 8px 12px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(.npfm-cover-button) {
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 30px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button {
    position: absolute !important;
    top: 50% !important;
    right: 10px !important;
    left: auto !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

/* Blanco real en el botón, incluso si wpForo aplica color al texto interno. */
body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button,
body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button *,
body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button::before,
body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button::after {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button svg,
body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button path {
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Teléfono horizontal: botón cerca del borde derecho, dejando únicamente
 * una pequeña zona de seguridad para la flecha flotante de subir. */
@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    position: relative !important;
    display: block !important;
    min-height: 46px !important;
    padding: 8px 148px 8px 14px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 30px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .npfm-cover-button {
    position: absolute !important;
    top: 50% !important;
    right: 28px !important;
    left: auto !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    z-index: 3 !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 6px 11px !important;
    font-size: 12.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}


/* ================================================================
 * v0.1.11 · FLECHA SUBIR UNIFICADA SIN ALTERAR SU APARICIÓN
 * Mantiene la lógica nativa que decide cuándo mostrarla.
 * Solo unifica forma/tamaño cuando ya está visible.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index .wpforo-go-top,
  body.npfm-mobile-index .wpforo-scroll-top,
  body.npfm-mobile-index .wpf-go-top,
  body.npfm-mobile-index .wpf-scroll-top,
  body.npfm-mobile-index .wpf-scrolltotop,
  body.npfm-mobile-index .scroll-to-top,
  body.npfm-mobile-index .scroll-top,
  body.npfm-mobile-index .go-to-top,
  body.npfm-mobile-index .to-top,
  body.npfm-mobile-index .scrollup,
  body.npfm-mobile-index #scrollUp,
  body.npfm-mobile-index #back_to_top,
  body.npfm-mobile-index #ast-scroll-top,
  body.npfm-mobile-index [class*="scroll-top"],
  body.npfm-mobile-index [class*="go-top"] {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    background: var(--npfm-blue) !important;
    box-shadow: 0 8px 18px rgba(20, 99, 229, .24) !important;
    overflow: hidden !important;
  }

  body.npfm-mobile-index .wpforo-go-top:hover,
  body.npfm-mobile-index .wpforo-scroll-top:hover,
  body.npfm-mobile-index .wpf-go-top:hover,
  body.npfm-mobile-index .wpf-scroll-top:hover,
  body.npfm-mobile-index .wpf-scrolltotop:hover,
  body.npfm-mobile-index .scroll-to-top:hover,
  body.npfm-mobile-index .scroll-top:hover,
  body.npfm-mobile-index .go-to-top:hover,
  body.npfm-mobile-index .to-top:hover,
  body.npfm-mobile-index .scrollup:hover,
  body.npfm-mobile-index #scrollUp:hover,
  body.npfm-mobile-index #back_to_top:hover,
  body.npfm-mobile-index #ast-scroll-top:hover,
  body.npfm-mobile-index [class*="scroll-top"]:hover,
  body.npfm-mobile-index [class*="go-top"]:hover {
    border-radius: 999px !important;
    background: var(--npfm-blue) !important;
  }
}


/* ================================================================
 * v0.1.12 · HERO TEXTUAL DEL FORO
 * Reutiliza, cuando existe, el bloque vacío situado justo encima de wpForo.
 * Sin imagen: título + mensaje de comunidad, coherente con el resto de la web.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index .npfm-forum-page-hero {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid var(--npfm-border) !important;
    border-radius: 18px !important;
    box-shadow: 0 8px 24px rgba(18, 51, 92, .06) !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero > :not(.npfm-forum-page-hero-inner) {
    display: none !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-inner {
    position: relative !important;
    display: block !important;
    padding: 16px 18px 17px 20px !important;
    border-left: 3px solid var(--npfm-blue) !important;
    background: linear-gradient(90deg, rgba(20,99,229,.035), rgba(255,255,255,0) 72%) !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-eyebrow {
    margin: 0 0 4px !important;
    color: var(--npfm-blue) !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: .13em !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-title {
    margin: 0 !important;
    color: var(--npfm-navy) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.16 !important;
    letter-spacing: -.025em !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-text {
    margin: 7px 0 0 !important;
    max-width: 620px !important;
    color: #42516b !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index .npfm-forum-page-hero {
    margin-bottom: 14px !important;
    border-radius: 14px !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-inner {
    padding: 11px 18px 12px 18px !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-eyebrow {
    display: none !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-title {
    font-size: 18px !important;
  }

  body.npfm-mobile-index .npfm-forum-page-hero-text {
    margin-top: 4px !important;
    font-size: 12.5px !important;
    line-height: 1.32 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* ================================================================
 * v0.1.13 · BLOQUE COMUNIDAD
 * Segunda fase visual suave: jerarquía, estadísticas, subforos y
 * transición a temas destacados. No cambia enlaces ni acciones wpForo.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block {
    position: relative !important;
    margin-top: 14px !important;
    padding-top: 0 !important;
    padding-bottom: 12px !important;
    color: var(--npfm-navy) !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpf-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpf-forum-title a {
    margin: 0 0 7px !important;
    color: var(--npfm-navy) !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: -.02em !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-description,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-description p {
    margin: 0 0 8px !important;
    color: #3f506d !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-description p + p {
    margin-top: 4px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-stats {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 28px !important;
    margin: 3px 0 7px !important;
    padding: 5px 9px !important;
    border: 1px solid #e3ebf6 !important;
    border-radius: 999px !important;
    background: #f7faff !important;
    color: #66758f !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-subforum,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block [class*="subforum"] {
    margin-top: 3px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-subforum a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-subforum li a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-info .wpforo-subforum a {
    margin: 3px 5px 3px 0 !important;
    padding: 5px 9px !important;
    min-height: 29px !important;
    border-color: #dce7f5 !important;
    background: #f9fbff !important;
    color: var(--npfm-navy) !important;
    font-size: 11.8px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    vertical-align: middle !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-featured-heading {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 4px 0 8px !important;
    color: var(--npfm-navy) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .01em !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-featured-heading::before {
    content: '' !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--npfm-blue) !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-featured-heading::after {
    content: '' !important;
    flex: 1 1 auto !important;
    height: 1px !important;
    background: #e3ebf5 !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block {
    margin-top: 10px !important;
    padding-bottom: 8px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-title a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpf-forum-title,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpf-forum-title a {
    font-size: 16px !important;
    margin-bottom: 4px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-description,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-description p {
    font-size: 12px !important;
    line-height: 1.32 !important;
    margin-bottom: 5px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-stats {
    min-height: 24px !important;
    margin: 2px 0 5px !important;
    padding: 4px 8px !important;
    font-size: 10.5px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-subforum a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-subforum li a,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-block .wpforo-forum-info .wpforo-subforum a {
    min-height: 26px !important;
    margin: 2px 4px 2px 0 !important;
    padding: 4px 8px !important;
    font-size: 10.8px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-featured-heading {
    margin: 3px 0 6px !important;
    font-size: 11px !important;
  }
}


/* ================================================================
 * v0.1.16 · ESTADÍSTICAS Y ESPACIADO UNIFICADOS POR CATEGORÍA
 * Misma presentación visual para Comunidad, Nivel Inicial,
 * Nivel Intermedio y Nivel Avanzado. Solo estética; wpForo conserva
 * estructura, datos, colores propios de cada nivel y comportamiento.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .npfm-category-stats {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 28px !important;
    margin: 3px 0 7px !important;
    padding: 5px 9px !important;
    border: 1px solid #e3ebf6 !important;
    border-radius: 999px !important;
    background: #f7faff !important;
    color: #66758f !important;
    font-size: 11.5px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  /* Los subforos de todas las categorías mantienen la misma cadencia visual. */
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-subforum,
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row [class*="subforum"] {
    margin-top: 3px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-subforum a,
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-subforum li a,
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-forum-info .wpforo-subforum a {
    margin: 3px 5px 3px 0 !important;
    padding: 5px 9px !important;
    min-height: 29px !important;
    vertical-align: middle !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .npfm-category-stats {
    min-height: 24px !important;
    margin: 2px 0 5px !important;
    padding: 4px 8px !important;
    font-size: 10.5px !important;
  }

  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-subforum a,
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-subforum li a,
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .wpforo-forum-info .wpforo-subforum a {
    min-height: 26px !important;
    margin: 2px 4px 2px 0 !important;
    padding: 4px 8px !important;
  }
}

/* ================================================================
 * v0.1.17 · MENÚ MÓVIL WPFORO
 * Rediseño exclusivamente visual del menú nativo de wpForo.
 * No modifica enlaces, etiquetas, permisos ni comportamiento.
 * La traducción de los textos sigue perteneciendo al menú de wpForo.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu {
    width: min(286px, calc(100vw - 42px)) !important;
    max-width: min(286px, calc(100vw - 42px)) !important;
    margin: 0 !important;
    padding: 6px !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.985) !important;
    box-shadow: 0 14px 34px rgba(16,33,63,.16) !important;
    overflow: hidden !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: 43px !important;
    margin: 0 !important;
    padding: 9px 12px 9px 37px !important;
    border: 0 !important;
    border-radius: 9px !important;
    background: transparent !important;
    color: var(--npfm-navy) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    box-shadow: none !important;
    transition: background-color .15s ease, color .15s ease !important;
  }

  /* Icono neutro de navegación: decorativo y sin tocar el HTML o la acción. */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a::before {
    content: '' !important;
    position: absolute !important;
    left: 13px !important;
    top: 50% !important;
    width: 8px !important;
    height: 8px !important;
    margin-top: -4px !important;
    border: 2px solid #9fb1cb !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li + li,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li + li,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li + li {
    margin-top: 2px !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a:hover,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a:hover,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a:hover,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a:focus,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a:focus,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a:focus {
    background: #f2f7ff !important;
    color: var(--npfm-blue) !important;
    outline: 0 !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current-menu-item > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current_page_item > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current-menu-item > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current_page_item > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.wpf-active > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.wpf-active > a {
    background: #edf5ff !important;
    color: var(--npfm-blue) !important;
    font-weight: 800 !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current-menu-item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current_page_item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current-menu-item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current_page_item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.wpf-active > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.wpf-active > a::before {
    border-color: var(--npfm-blue) !important;
    background: var(--npfm-blue) !important;
    box-shadow: 0 0 0 3px rgba(20,99,229,.10) !important;
  }

  /* Última opción separada visualmente; normalmente corresponde a salir. */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:last-child,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:last-child,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:last-child {
    margin-top: 7px !important;
    padding-top: 7px !important;
    border-top: 1px solid #e7edf6 !important;
  }

  /* Mantener el botón hamburguesa nativo, solo afinando su respuesta visual. */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-res-menu,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu [class*="res-menu"] {
    border-radius: 9px !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu {
    width: 252px !important;
    max-width: 252px !important;
    padding: 5px !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a {
    min-height: 38px !important;
    padding: 7px 10px 7px 34px !important;
    font-size: 12.5px !important;
  }
}

/* ================================================================
 * v0.1.18 · MENÚ MÓVIL MÁS COMPACTO + ICONOS
 * Solo presentación. No traduce, no cambia etiquetas, enlaces,
 * permisos ni comportamiento del menú nativo de wpForo.
 * ================================================================ */
@media (max-width: 767px), (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu {
    width: min(248px, calc(100vw - 72px)) !important;
    max-width: min(248px, calc(100vw - 72px)) !important;
    padding: 6px !important;
    border-radius: 14px !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a {
    min-height: 42px !important;
    padding: 8px 10px 8px 43px !important;
    font-size: 13px !important;
  }

  /* Sustituye el punto decorativo por iconos lineales distintos.
   * Se aplican por posición visual del menú, sin alterar su HTML. */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a::before {
    content: '' !important;
    position: absolute !important;
    left: 13px !important;
    top: 50% !important;
    width: 20px !important;
    height: 20px !important;
    margin-top: -10px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background-color: #6d7e99 !important;
    background-image: none !important;
    box-shadow: none !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-position: center !important;
    mask-position: center !important;
    -webkit-mask-size: contain !important;
    mask-size: contain !important;
    box-sizing: border-box !important;
  }

  /* 1 · Foros */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(1) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(1) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(1) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 15a4 4 0 0 1-4 4H8l-5 3v-7a7 7 0 1 1 18 0Z'/%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' d='M8 11h8M8 15h5'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M21 15a4 4 0 0 1-4 4H8l-5 3v-7a7 7 0 1 1 18 0Z'/%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' d='M8 11h8M8 15h5'/%3E%3C/svg%3E") !important;
  }

  /* 2 · Novedades */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(2) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(2) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(2) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M18 8a6 6 0 1 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M18 8a6 6 0 1 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E") !important;
  }

  /* 3 · Publicaciones recientes */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(3) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(3) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(3) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M6 2h9l5 5v15H6zM14 2v6h6M9 13h6M9 17h4'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M6 2h9l5 5v15H6zM14 2v6h6M9 13h6M9 17h4'/%3E%3C/svg%3E") !important;
  }

  /* 4 · Miembros */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(4) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(4) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(4) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E") !important;
  }

  /* 5 · Mi perfil */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(5) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(5) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(5) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20 21a8 8 0 0 0-16 0M12 13a5 5 0 1 0 0-10 5 5 0 0 0 0 10'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M20 21a8 8 0 0 0-16 0M12 13a5 5 0 1 0 0-10 5 5 0 0 0 0 10'/%3E%3C/svg%3E") !important;
  }

  /* 6 · Cerrar sesión */
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li:nth-child(6) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li:nth-child(6) > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li:nth-child(6) > a::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E") !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9'/%3E%3C/svg%3E") !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a:hover::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a:hover::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a:hover::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a:focus::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a:focus::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a:focus::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current-menu-item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current_page_item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current-menu-item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.current_page_item > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li.wpf-active > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li.wpf-active > a::before {
    background-color: var(--npfm-blue) !important;
    border: 0 !important;
    box-shadow: none !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu {
    width: 226px !important;
    max-width: 226px !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a {
    min-height: 37px !important;
    padding: 7px 9px 7px 39px !important;
    font-size: 12px !important;
  }

  body.npfm-mobile-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpf-menu > li > a::before,
  body.npfm-mobile-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a::before {
    left: 11px !important;
    width: 18px !important;
    height: 18px !important;
    margin-top: -9px !important;
  }
}



/* ================================================================
 * v0.1.19 · TABLET + ESCRITORIO
 * Activa la misma identidad visual de la portada del foro fuera del móvil.
 * Solo presentación: wpForo conserva estructura, enlaces, permisos y acciones.
 * ================================================================ */
@media (min-width: 768px) {
  body.npfm-forum-index #wpforo-wrap {
    --npfm-radius-wide: 16px;
    color: var(--npfm-navy) !important;
  }

  body.npfm-forum-index #wpforo-wrap *,
  body.npfm-forum-index #wpforo-wrap *::before,
  body.npfm-forum-index #wpforo-wrap *::after {
    box-sizing: border-box;
  }

  /* Hero NextPing: mismo lenguaje visual, con escala para pantallas grandes. */
  body.npfm-forum-index .npfm-forum-page-hero {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #ffffff !important;
    border: 1px solid var(--npfm-border) !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 30px rgba(18, 51, 92, .065) !important;
  }

  body.npfm-forum-index .npfm-forum-page-hero > :not(.npfm-forum-page-hero-inner) {
    display: none !important;
  }

  body.npfm-forum-index .npfm-forum-page-hero-inner {
    position: relative !important;
    display: block !important;
    padding: 24px 30px 26px 34px !important;
    border-left: 4px solid var(--npfm-blue) !important;
    background: linear-gradient(90deg, rgba(20,99,229,.038), rgba(255,255,255,0) 76%) !important;
  }

  body.npfm-forum-index .npfm-forum-page-hero-eyebrow {
    margin: 0 0 6px !important;
    color: var(--npfm-blue) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: .14em !important;
  }

  body.npfm-forum-index .npfm-forum-page-hero-title {
    margin: 0 !important;
    color: var(--npfm-navy) !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    letter-spacing: -.028em !important;
  }

  body.npfm-forum-index .npfm-forum-page-hero-text {
    margin: 9px 0 0 !important;
    max-width: 760px !important;
    color: #42516b !important;
    font-size: 15.5px !important;
    font-weight: 500 !important;
    line-height: 1.48 !important;
  }

  /* Cover nativo de wpForo: misma imagen configurada en wpForo. */
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background-image: none !important;
    background-color: #ffffff !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 24px rgba(18, 51, 92, .065) !important;
    isolation: isolate !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover::before {
    content: '' !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 3.35 / 1 !important;
    background-image: var(--npfm-cover-image) !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    pointer-events: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover::after {
    content: none !important;
    display: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    min-height: 58px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 18px !important;
    background: #ffffff !important;
    border-top: 1px solid #e7eef8 !important;
    color: var(--npfm-navy) !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(.npfm-cover-button) {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin: 0 !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    margin: 0 !important;
    color: var(--npfm-navy) !important;
    font-size: 17px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-button,
  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-button * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-shadow: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 8px 15px !important;
    border: 1px solid var(--npfm-blue) !important;
    border-radius: 10px !important;
    background: var(--npfm-blue) !important;
    box-shadow: 0 6px 14px rgba(22,102,229,.15) !important;
    font-size: 13.5px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }

  /* Categorías: jerarquía y estadísticas coherentes con móvil. */
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row {
    color: var(--npfm-navy) !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-forum-title,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-forum-title a,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpf-forum-title,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpf-forum-title a {
    color: var(--npfm-navy) !important;
    font-weight: 800 !important;
    text-decoration: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-community-block {
    margin-top: 18px !important;
    padding-bottom: 16px !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-community-block .wpforo-forum-title,
  body.npfm-forum-index #wpforo-wrap .npfm-community-block .wpforo-forum-title a,
  body.npfm-forum-index #wpforo-wrap .npfm-community-block .wpf-forum-title,
  body.npfm-forum-index #wpforo-wrap .npfm-community-block .wpf-forum-title a {
    margin: 0 0 8px !important;
    font-size: 23px !important;
    line-height: 1.15 !important;
    letter-spacing: -.02em !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-forum-description,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-forum-description p {
    color: #3f506d !important;
    line-height: 1.5 !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .npfm-category-stats {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    margin: 5px 0 9px !important;
    padding: 6px 10px !important;
    border: 1px solid #e3ebf6 !important;
    border-radius: 999px !important;
    background: #f7faff !important;
    color: #66758f !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-subforum a,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-subforum li a,
  body.npfm-forum-index #wpforo-wrap .npfm-forum-row .wpforo-forum-info .wpforo-subforum a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 32px !important;
    margin: 4px 6px 4px 0 !important;
    padding: 6px 11px !important;
    border: 1px solid #dce7f5 !important;
    border-radius: 999px !important;
    background: #f9fbff !important;
    color: var(--npfm-navy) !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
    box-shadow: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-featured-heading {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 7px 0 10px !important;
    color: var(--npfm-navy) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-featured-heading::before {
    content: '' !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: var(--npfm-blue) !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-featured-heading::after {
    content: '' !important;
    flex: 1 1 auto !important;
    height: 1px !important;
    background: #e3ebf5 !important;
  }

  /* Flecha: solo forma y tamaño; no se fuerza visible. */
  body.npfm-forum-index .wpforo-go-top,
  body.npfm-forum-index .wpforo-scroll-top,
  body.npfm-forum-index .wpf-go-top,
  body.npfm-forum-index .wpf-scroll-top,
  body.npfm-forum-index .wpf-scrolltotop,
  body.npfm-forum-index #scrollUp,
  body.npfm-forum-index #back_to_top,
  body.npfm-forum-index #ast-scroll-top {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    border-radius: 999px !important;
    background: var(--npfm-blue) !important;
    box-shadow: 0 8px 18px rgba(20,99,229,.22) !important;
    overflow: hidden !important;
  }

  /* Menú wpForo en tablet/escritorio: mismo activo, tipografía y iconos,
   * sin imponer ancho ni cambiar el modo nativo (horizontal o desplegable). */
  body.npfm-forum-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a,
  body.npfm-forum-index #wpforo-wrap #wpf-menu > li > a,
  body.npfm-forum-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a {
    position: relative !important;
    border-radius: 9px !important;
    color: var(--npfm-navy) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: background-color .15s ease, color .15s ease !important;
  }

  body.npfm-forum-index #wpforo-wrap #wpforo-menu .wpf-menu > li > a:hover,
  body.npfm-forum-index #wpforo-wrap #wpf-menu > li > a:hover,
  body.npfm-forum-index #wpforo-wrap #wpforo-menu ul.wpf-menu > li > a:hover,
  body.npfm-forum-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current-menu-item > a,
  body.npfm-forum-index #wpforo-wrap #wpforo-menu .wpf-menu > li.current_page_item > a,
  body.npfm-forum-index #wpforo-wrap #wpf-menu > li.current-menu-item > a,
  body.npfm-forum-index #wpforo-wrap #wpf-menu > li.current_page_item > a,
  body.npfm-forum-index #wpforo-wrap #wpforo-menu .wpf-menu > li.wpf-active > a,
  body.npfm-forum-index #wpforo-wrap #wpf-menu > li.wpf-active > a {
    background: #edf5ff !important;
    color: var(--npfm-blue) !important;
  }
}

/* Tablet: mantiene densidad y proporciones intermedias. */
@media (min-width: 768px) and (max-width: 1180px) {
  body.npfm-tablet-index .npfm-forum-page-hero {
    margin-bottom: 20px !important;
    border-radius: 18px !important;
  }

  body.npfm-tablet-index .npfm-forum-page-hero-inner {
    padding: 20px 24px 22px 28px !important;
  }

  body.npfm-tablet-index .npfm-forum-page-hero-title {
    font-size: 26px !important;
  }

  body.npfm-tablet-index .npfm-forum-page-hero-text {
    font-size: 14.5px !important;
  }

  body.npfm-tablet-index #wpforo-wrap .npfm-category-cover::before {
    aspect-ratio: 3.15 / 1 !important;
  }

  body.npfm-tablet-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    min-height: 54px !important;
    padding: 9px 15px !important;
  }

  body.npfm-tablet-index #wpforo-wrap .npfm-community-block .wpforo-forum-title,
  body.npfm-tablet-index #wpforo-wrap .npfm-community-block .wpforo-forum-title a,
  body.npfm-tablet-index #wpforo-wrap .npfm-community-block .wpf-forum-title,
  body.npfm-tablet-index #wpforo-wrap .npfm-community-block .wpf-forum-title a {
    font-size: 21px !important;
  }
}

/* Escritorio: un poco más de aire, sin convertir la portada en una maqueta distinta. */
@media (min-width: 1181px) {
  body.npfm-desktop-index .npfm-forum-page-hero-inner {
    padding: 28px 38px 30px 42px !important;
  }

  body.npfm-desktop-index .npfm-forum-page-hero-title {
    font-size: 32px !important;
  }

  body.npfm-desktop-index .npfm-forum-page-hero-text {
    font-size: 16px !important;
  }

  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover::before {
    aspect-ratio: 3.7 / 1 !important;
  }

  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    min-height: 60px !important;
    padding: 11px 20px !important;
  }

  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-desktop-index #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    font-size: 18px !important;
  }
}

/* ================================================================
 * v0.1.20 · SEPARACIÓN ESTRICTA NEXTPING / WPFORO
 * - Hero: propiedad de NextPing y editable desde este plugin.
 * - Contenido del foro: propiedad de wpForo.
 * - El plugin NO sustituye títulos, descripciones ni textos de categorías.
 * - Las estadísticas se presentan en español sin reescribir el DOM nativo.
 * ================================================================ */
#wpforo-wrap .npfm-category-stats[data-npfm-topics][data-npfm-posts] {
  font-size: 0 !important;
}

#wpforo-wrap .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before {
  content: attr(data-npfm-topics) " temas · " attr(data-npfm-posts) " publicaciones" !important;
  font-size: 11.5px !important;
  line-height: 1 !important;
  color: inherit !important;
  font-weight: inherit !important;
  white-space: nowrap !important;
}

@media (min-width: 768px) {
  #wpforo-wrap .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before {
    font-size: 12px !important;
  }
}

/* ================================================================
 * v0.1.21 · FIX ESTADÍSTICAS DUPLICADAS
 * wpForo mantiene intactos sus datos y su HTML.
 * Se ocultan únicamente los nodos visuales internos del contador nativo
 * ya marcado por el plugin, dejando una sola representación en español.
 * ================================================================ */
#wpforo-wrap .npfm-category-stats[data-npfm-topics][data-npfm-posts] > * {
  display: none !important;
}

#wpforo-wrap .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before {
  display: inline-block !important;
}


/* ================================================================
 * v0.1.22 · FIX DEFINITIVO ESTADÍSTICAS DUPLICADAS
 * Fuerza a cero el tamaño del texto nativo directo con la misma/mayor
 * especificidad que los estilos responsive previos. El dato de wpForo
 * permanece intacto en el DOM; solo se muestra la versión visual española.
 * ================================================================ */
body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts],
body.npfm-forum-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts],
body.npfm-tablet-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts],
body.npfm-desktop-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts],
body.npfm-mobile-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts],
body.npfm-forum-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts],
body.npfm-tablet-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts],
body.npfm-desktop-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts] {
  font-size: 0 !important;
  line-height: 0 !important;
}

body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-forum-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-tablet-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-desktop-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-mobile-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-forum-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-tablet-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts]::before,
body.npfm-desktop-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts]::before {
  display: inline-block !important;
  font-size: 12px !important;
  line-height: 1 !important;
}

@media (max-width: 767px) {
  body.npfm-mobile-index #wpforo-wrap .npfm-forum-row .npfm-category-stats[data-npfm-topics][data-npfm-posts]::before,
  body.npfm-mobile-index #wpforo-wrap .npfm-community-stats[data-npfm-topics][data-npfm-posts]::before {
    font-size: 11.5px !important;
  }
}

/* ================================================================
 * v0.1.23 · FILAS DE TEMAS NEXTPING · TABLET Y ESCRITORIO
 * - Convierte visualmente cada fila nativa de tema en una tarjeta ligera.
 * - Conserva intactos enlaces, datos, avatar, autor, fecha, estado y acciones.
 * - No altera el DOM ni el comportamiento de wpForo.
 * - Móvil permanece sin cambios en esta fase.
 * ================================================================ */
@media (min-width: 768px) {
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row {
    position: relative !important;
    margin: 12px 0 16px !important;
    padding: 11px 14px !important;
    min-height: 68px !important;
    background: #ffffff !important;
    border: 1px solid #e3ebf5 !important;
    border-radius: 13px !important;
    box-shadow: 0 5px 15px rgba(16, 33, 63, .055) !important;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-topic-row:hover,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row:hover,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row:hover {
    border-color: #cedcf0 !important;
    box-shadow: 0 8px 20px rgba(16, 33, 63, .08) !important;
  }

  /* Elimina únicamente los separadores visuales nativos de la fila. */
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row::before,
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row::after,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row::before,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row::after,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row::before,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row::after {
    box-shadow: none !important;
  }

  /* Título del tema: protagonista, sin tocar el enlace. */
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info {
    min-width: 0 !important;
    padding-top: 1px !important;
    padding-bottom: 1px !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a {
    color: var(--npfm-blue) !important;
    font-weight: 650 !important;
    line-height: 1.28 !important;
    text-decoration: none !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a:hover,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a:hover,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info a:hover {
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  /* Metadatos secundarios (respuestas, fecha, etc.) más discretos. */
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info :is(span, small, p),
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info :is(span, small, p),
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row .wpforo-topic-info :is(span, small, p) {
    color: #66758f !important;
  }

  /* Estado/icono inicial (chincheta, leído/no leído): caja suave en vez de marco punteado. */
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row > :first-child,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row > :first-child,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row > :first-child {
    border-color: transparent !important;
    border-style: solid !important;
    border-radius: 10px !important;
    background: #fff5f5 !important;
    box-shadow: none !important;
  }

  /* Avatar y bloque del último autor: más compacto pero sigue siendo wpForo. */
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row img.avatar,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row img.avatar,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row img.avatar,
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row [class*="avatar"] img,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row [class*="avatar"] img,
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row [class*="avatar"] img {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-radius: 999px !important;
    border: 1px solid #dce7f5 !important;
    object-fit: cover !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-topic-row [class*="last"],
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row [class*="last"],
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row [class*="last"] {
    line-height: 1.28 !important;
  }

  body.npfm-forum-index #wpforo-wrap .npfm-topic-row [class*="last"] :is(span, small),
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row [class*="last"] :is(span, small),
  body.npfm-desktop-index #wpforo-wrap .npfm-topic-row [class*="last"] :is(span, small) {
    color: #66758f !important;
    font-size: 12px !important;
  }
}

/* Tablet: un poco más compacto para no ocupar demasiado ancho/alto. */
@media (min-width: 768px) and (max-width: 1180px) {
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row,
  body.npfm-forum-index #wpforo-wrap .npfm-topic-row {
    margin: 10px 0 13px !important;
    padding: 9px 11px !important;
    min-height: 62px !important;
    border-radius: 12px !important;
  }

  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row img.avatar,
  body.npfm-tablet-index #wpforo-wrap .npfm-topic-row [class*="avatar"] img {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
  }
}


/* ================================================================
 * v0.1.26 · HERO GLOBAL · PARIDAD VISUAL PORTADA / VISTAS INTERNAS
 * Se retiran las reglas visuales internas heredadas de v0.1.24 para
 * que subforos, temas y demás vistas usen EXACTAMENTE el mismo Hero
 * profesional definido en v0.1.25. La inserción global permanece intacta.
 * Solo CSS: no modifica DOM, navegación, breadcrumbs ni lógica de wpForo.
 * ================================================================ */

/* ========================================================================== 
 * v0.1.25 · HERO NEXTPING · REDISEÑO PROFESIONAL
 * Solo presentación visual. No modifica estructura, navegación ni lógica wpForo.
 * ========================================================================== */

body.npfm-forum-page .npfm-forum-page-hero {
  position: relative !important;
  overflow: hidden !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 1px solid rgba(16, 33, 63, .075) !important;
  border-radius: 20px !important;
  background:
    radial-gradient(circle at 86% 30%, rgba(20, 99, 229, .095), transparent 27%),
    linear-gradient(118deg, #ffffff 0%, #f8fbff 54%, #eef5ff 100%) !important;
  box-shadow: 0 14px 38px rgba(16, 33, 63, .075) !important;
}

body.npfm-forum-page .npfm-forum-page-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 4px !important;
  height: 100% !important;
  background: linear-gradient(180deg, #1463E5 0%, #2B7CFF 55%, #73A8FF 100%) !important;
  z-index: 2 !important;
}

body.npfm-forum-page .npfm-forum-page-hero > :not(.npfm-forum-page-hero-inner) {
  display: none !important;
}

body.npfm-forum-page .npfm-forum-page-hero-inner {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 29px 330px 31px 38px !important;
  border: 0 !important;
  background: transparent !important;
}

/* Decoración técnica: red/pulso muy sutil, solo CSS. */
body.npfm-forum-page .npfm-forum-page-hero-inner::before {
  content: "" !important;
  position: absolute !important;
  right: 38px !important;
  top: 50% !important;
  width: 238px !important;
  height: 104px !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
  opacity: .78 !important;
  background:
    radial-gradient(circle at 8% 60%, rgba(20,99,229,.95) 0 4px, rgba(255,255,255,.92) 4.5px 8px, transparent 8.5px),
    radial-gradient(circle at 32% 37%, rgba(20,99,229,.72) 0 3px, rgba(255,255,255,.9) 3.5px 7px, transparent 7.5px),
    radial-gradient(circle at 55% 66%, rgba(16,33,63,.78) 0 3px, rgba(255,255,255,.9) 3.5px 7px, transparent 7.5px),
    radial-gradient(circle at 78% 31%, rgba(20,99,229,.88) 0 3px, rgba(255,255,255,.9) 3.5px 7px, transparent 7.5px),
    radial-gradient(circle at 96% 55%, rgba(20,99,229,.92) 0 4px, rgba(255,255,255,.92) 4.5px 8px, transparent 8.5px),
    linear-gradient(157deg, transparent 0 17%, rgba(20,99,229,.20) 17.4% 18.1%, transparent 18.5% 39%, rgba(20,99,229,.18) 39.4% 40.1%, transparent 40.5% 63%, rgba(20,99,229,.18) 63.4% 64.1%, transparent 64.5% 100%) !important;
  filter: drop-shadow(0 6px 12px rgba(20,99,229,.08)) !important;
}

body.npfm-forum-page .npfm-forum-page-hero-inner::after {
  content: "" !important;
  position: absolute !important;
  right: 60px !important;
  top: 50% !important;
  width: 194px !important;
  height: 38px !important;
  transform: translateY(-48%) !important;
  pointer-events: none !important;
  opacity: .62 !important;
  background:
    linear-gradient(90deg,
      transparent 0 8%,
      rgba(20,99,229,.24) 8% 23%,
      transparent 23% 28%,
      rgba(20,99,229,.30) 28% 38%,
      transparent 38% 42%,
      rgba(20,99,229,.52) 42% 45%,
      transparent 45% 50%,
      rgba(20,99,229,.32) 50% 69%,
      transparent 69% 74%,
      rgba(20,99,229,.26) 74% 92%,
      transparent 92% 100%) center / 100% 2px no-repeat !important;
}

body.npfm-forum-page .npfm-forum-page-hero-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 27px !important;
  margin: 0 0 10px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(20,99,229,.16) !important;
  border-radius: 999px !important;
  background: rgba(20,99,229,.07) !important;
  color: var(--npfm-blue) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}

body.npfm-forum-page .npfm-forum-page-hero-eyebrow::before {
  content: "" !important;
  width: 6px !important;
  height: 6px !important;
  margin-right: 8px !important;
  border-radius: 50% !important;
  background: var(--npfm-blue) !important;
  box-shadow: 0 0 0 4px rgba(20,99,229,.10) !important;
}

body.npfm-forum-page .npfm-forum-page-hero-title {
  margin: 0 !important;
  max-width: 760px !important;
  color: var(--npfm-navy) !important;
  font-size: clamp(30px, 3vw, 42px) !important;
  font-weight: 820 !important;
  line-height: 1.06 !important;
  letter-spacing: -.035em !important;
}

body.npfm-forum-page .npfm-forum-page-hero-text {
  margin: 11px 0 0 !important;
  max-width: 720px !important;
  color: #46566f !important;
  font-size: 15.5px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1180px) {
  body.npfm-forum-page .npfm-forum-page-hero {
    border-radius: 18px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 25px 245px 27px 32px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner::before {
    right: 24px !important;
    width: 188px !important;
    height: 88px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner::after {
    right: 42px !important;
    width: 150px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 32px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    font-size: 14.5px !important;
  }
}

/* Teléfono vertical/horizontal: compacto, sin decoración lateral. */
@media (max-width: 767px) {
  body.npfm-forum-page .npfm-forum-page-hero {
    margin-bottom: 15px !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 94% 8%, rgba(20,99,229,.08), transparent 34%),
      linear-gradient(135deg, #ffffff 0%, #f6f9fe 100%) !important;
    box-shadow: 0 9px 24px rgba(16,33,63,.06) !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 18px 18px 19px 22px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner::before,
  body.npfm-forum-page .npfm-forum-page-hero-inner::after {
    display: none !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow {
    min-height: 23px !important;
    margin-bottom: 8px !important;
    padding: 0 9px !important;
    font-size: 9.5px !important;
    letter-spacing: .12em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow::before {
    width: 5px !important;
    height: 5px !important;
    margin-right: 7px !important;
    box-shadow: 0 0 0 3px rgba(20,99,229,.10) !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 25px !important;
    line-height: 1.09 !important;
    letter-spacing: -.025em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    margin-top: 8px !important;
    font-size: 13.5px !important;
    line-height: 1.42 !important;
  }
}

@media (orientation: landscape) and (max-height: 600px) and (pointer: coarse) {
  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 13px 18px 14px 22px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow {
    display: none !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 21px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    margin-top: 5px !important;
    font-size: 12.5px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}


/* ================================================================
 * v0.1.27 · COVERS UNIFICADOS SOLO EN DOS NIVELES
 * - /forum/                  -> Comunidad NextPing
 * - /forum/comunidad/        -> NextPing Academy
 * - No se aplica a Inicial, Intermedio, Avanzado ni otros subforos.
 * - Presentación visual únicamente; imagen, URL y acciones siguen siendo wpForo.
 * ================================================================ */
body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover,
body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background-image: none !important;
  background-color: #ffffff !important;
  border: 1px solid #dce7f5 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 24px rgba(18, 51, 92, .065) !important;
  isolation: isolate !important;
}

body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover::before,
body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover::before {
  content: '' !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4.65 / 1 !important;
  background-image: var(--npfm-cover-image) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  pointer-events: none !important;
}

body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover::after,
body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover::after {
  content: none !important;
  display: none !important;
}

body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content,
body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  min-height: 58px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  background: #ffffff !important;
  border-top: 1px solid #e7eef8 !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover::before,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover::before {
    aspect-ratio: 4.10 / 1 !important;
  }
}

@media (max-width: 767px) {
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover::before,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover::before {
    aspect-ratio: 2.90 / 1 !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    min-height: 50px !important;
    padding: 8px 12px !important;
  }
}


/* ==========================================================================
 * v0.1.28 · PARIDAD VISUAL /forum/ ↔ /forum/comunidad/
 * Solo presentación del nivel Comunidad. No cambia DOM funcional, enlaces,
 * permisos, consultas, temas ni comportamiento nativo de wpForo.
 * ========================================================================== */
body.npfm-community-index-page #wpforo-wrap .npfm-forum-row {
  color: var(--npfm-navy) !important;
}

body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpforo-forum-title,
body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpforo-forum-title a,
body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpf-forum-title,
body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpf-forum-title a {
  color: var(--npfm-navy) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpforo-forum-description,
body.npfm-community-index-page #wpforo-wrap .npfm-forum-row .wpforo-forum-description p {
  color: #3f506d !important;
  line-height: 1.5 !important;
}

/* El contador nativo sigue presente; solo cambia su representación visual. */
body.npfm-community-index-page #wpforo-wrap .npfm-community-page-stats[data-npfm-topics][data-npfm-posts] {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  margin: 5px 0 9px !important;
  padding: 6px 10px !important;
  border: 1px solid #e3ebf6 !important;
  border-radius: 999px !important;
  background: #f7faff !important;
  color: #66758f !important;
  font-size: 0 !important;
  line-height: 0 !important;
  font-weight: 650 !important;
  white-space: nowrap !important;
}

body.npfm-community-index-page #wpforo-wrap .npfm-community-page-stats[data-npfm-topics][data-npfm-posts] > * {
  display: none !important;
}

body.npfm-community-index-page #wpforo-wrap .npfm-community-page-stats[data-npfm-topics][data-npfm-posts]::before {
  content: attr(data-npfm-topics) " temas · " attr(data-npfm-posts) " publicaciones" !important;
  display: inline-block !important;
  color: #66758f !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 650 !important;
}

/* Misma lectura de chips que en la portada, sobre los enlaces nativos. */
body.npfm-community-index-page #wpforo-wrap .npfm-community-subforums-line {
  color: var(--npfm-navy) !important;
  line-height: 1.45 !important;
}

body.npfm-community-index-page #wpforo-wrap a.npfm-community-subforum-chip {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 32px !important;
  margin: 4px 6px 4px 0 !important;
  padding: 6px 11px !important;
  border: 1px solid #dce7f5 !important;
  border-radius: 999px !important;
  background: #f9fbff !important;
  color: var(--npfm-navy) !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: border-color .15s ease, background-color .15s ease, color .15s ease !important;
}

body.npfm-community-index-page #wpforo-wrap a.npfm-community-subforum-chip:hover {
  border-color: #bfd4f3 !important;
  background: #edf5ff !important;
  color: var(--npfm-blue) !important;
}

/* v0.1.31: no añadimos padding/margen propio a las filas de Comunidad.
 * Así conservan exactamente el espaciado nativo que ya utiliza /forum/. */

@media (max-width: 767px) {
  body.npfm-community-index-page #wpforo-wrap .npfm-community-page-stats[data-npfm-topics][data-npfm-posts]::before {
    font-size: 11.5px !important;
  }

  body.npfm-community-index-page #wpforo-wrap a.npfm-community-subforum-chip {
    min-height: 29px !important;
    padding: 5px 9px !important;
    font-size: 12px !important;
  }
}


/* ==========================================================================
 * v0.1.31 · AJUSTE FINO DE ESPACIADO EN /forum/comunidad/
 * Retira únicamente aire añadido por la capa NextPing. No altera el DOM,
 * enlaces, contadores, estructura ni comportamiento nativo de wpForo.
 * ========================================================================== */
body.npfm-community-index-page #wpforo-wrap .npfm-community-page-stats,
body.npfm-community-index-page #wpforo-wrap .npfm-community-subforums-line {
  padding-left: 0 !important;
  padding-right: 0 !important;
}



/* ==========================================================================
 * v0.1.32 · MÓVIL VERTICAL · COVER PANORÁMICO Y FRANJA COMPACTA
 * Solo presentación en teléfono vertical para los dos covers ya definidos:
 * /forum/ y /forum/comunidad/. No altera imagen, URL, botón ni lógica wpForo.
 * ========================================================================== */
@media (max-width: 767px) and (orientation: portrait) {
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover::before,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover::before {
    aspect-ratio: 4 / 1 !important;
    background-size: cover !important;
    background-position: center center !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 7px !important;
    min-height: 42px !important;
    padding: 6px 8px 6px 10px !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > *,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > * {
    min-width: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(:has(.npfm-cover-button)),
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > :not(:has(.npfm-cover-button)) {
    flex: 1 1 auto !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > :has(.npfm-cover-button),
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content > :has(.npfm-cover-button) {
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h3,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content .wpforo-forum-title a,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h1,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h2,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-content h3 {
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 30px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.npfm-cover-root-level #wpforo-wrap .npfm-category-cover .npfm-cover-button,
  body.npfm-cover-community-level #wpforo-wrap .npfm-category-cover .npfm-cover-button {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    min-height: 30px !important;
    margin: 0 0 0 auto !important;
    padding: 6px 9px !important;
    border-radius: 8px !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

/* ================================================================
 * v0.1.33 · HERO MÓVIL MÁS COMPACTO
 * Solo presentación en teléfonos. No altera tablet/escritorio ni wpForo.
 * ================================================================ */
@media (max-width: 767px) {
  body.npfm-forum-page .npfm-forum-page-hero {
    margin-bottom: 10px !important;
    border-radius: 14px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 13px 14px 14px 17px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow {
    min-height: 21px !important;
    margin-bottom: 6px !important;
    padding: 0 8px !important;
    font-size: 8.8px !important;
    letter-spacing: .11em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow::before {
    width: 4px !important;
    height: 4px !important;
    margin-right: 6px !important;
    box-shadow: 0 0 0 3px rgba(20,99,229,.09) !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 22px !important;
    line-height: 1.06 !important;
    letter-spacing: -.022em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    margin-top: 5px !important;
    font-size: 12.5px !important;
    line-height: 1.34 !important;
  }
}

@media (max-width: 390px) {
  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 12px 12px 13px 16px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 21px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    font-size: 12px !important;
  }
}

/* ================================================================
 * v0.1.34 · HERO MÓVIL COMPACTO + ASSET PATH NUEVO
 * Solo teléfonos. Misma identidad, menos altura y padding.
 * ================================================================ */
@media (max-width: 767px) {
  body.npfm-forum-page .npfm-forum-page-hero {
    margin-bottom: 8px !important;
    border-radius: 13px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 10px 12px 11px 15px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow {
    min-height: 19px !important;
    margin: 0 0 5px !important;
    padding: 0 7px !important;
    font-size: 8.3px !important;
    letter-spacing: .10em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-eyebrow::before {
    width: 4px !important;
    height: 4px !important;
    margin-right: 5px !important;
    box-shadow: 0 0 0 2px rgba(20,99,229,.09) !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 20px !important;
    line-height: 1.04 !important;
    letter-spacing: -.02em !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    margin-top: 4px !important;
    font-size: 11.8px !important;
    line-height: 1.28 !important;
  }
}

@media (max-width: 390px) {
  body.npfm-forum-page .npfm-forum-page-hero-inner {
    padding: 9px 10px 10px 14px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-title {
    font-size: 19px !important;
  }

  body.npfm-forum-page .npfm-forum-page-hero-text {
    font-size: 11.4px !important;
  }
}
