/* ===================================================
 * CECA Noticias Mix — Widget Styles
 * BEM: .ceca-nmix
 * Depende de: contenidos.css (estilos de cards)
 * =================================================== */

/* ── Wrapper ── */
.ceca-nmix {
  font-family: var(--ceca-font-family, "Encode Sans Expanded", sans-serif);
  max-width: 1600px;
  margin: 0 auto;
}

/* ── Cabecera con botón "Ver más" ── */
.ceca-nmix__header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 20px;
}

/* ── Botón "Ver más" ── */
.ceca-nmix__more-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 22px;
  border: 1px solid var(--ceca-primary, #002a4f);
  border-radius: var(--ceca-radius-sm, 2px);
  background: transparent;
  color: var(--ceca-primary, #002a4f);
  font-family: var(--ceca-font-family, "Encode Sans Expanded", sans-serif);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color var(--ceca-transition, 0.25s ease),
    color var(--ceca-transition, 0.25s ease),
    border-color var(--ceca-transition, 0.25s ease);
  white-space: nowrap;
}

.ceca-nmix__more-btn:hover,
.ceca-nmix__more-btn:focus {
  background-color: var(--ceca-primary, #002a4f);
  color: var(--ceca-white, #fff);
  text-decoration: none;
}

.ceca-nmix__more-btn:focus-visible {
  outline: var(--ceca-focus-outline, 2px solid #002a4f);
  outline-offset: 2px;
}

.ceca-nmix__more-arrow {
  flex-shrink: 0;
  transition: transform var(--ceca-transition, 0.25s ease);
}

.ceca-nmix__more-btn:hover .ceca-nmix__more-arrow {
  transform: translateX(3px);
}

/* ── Grid: extiende .ceca-cont__grid ── */
.ceca-nmix__grid {
  /* Hereda todos los estilos de .ceca-cont__grid */
}

/* ── Colores de etiqueta según tipo de contenido ── */
.ceca-nmix__card--post .ceca-cont__card-category {
  color: #0099c1;
}

.ceca-nmix__card--nota .ceca-cont__card-category {
  color: var(--ceca-secondary, #aa004f);
}

.ceca-nmix__card--medio .ceca-cont__card-category {
  color: #2a9d8f;
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .ceca-nmix__header {
    margin-bottom: 16px;
  }

  .ceca-nmix__more-btn {
    font-size: 13px;
    padding: 9px 18px;
  }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  .ceca-nmix__more-btn {
    transition: none;
  }

  .ceca-nmix__more-arrow {
    transition: none;
  }

  .ceca-nmix__more-btn:hover .ceca-nmix__more-arrow {
    transform: none;
  }
}
