/* MP Inicio 0.2.1 — estilos de dominio sobre el sistema visual de MP Core */
.mpi-home{width:100%;padding:8px 0 50px;box-sizing:border-box;background:transparent}
.mpi-feed{display:flex;flex-direction:column;gap:var(--mp-card-gap,24px);align-items:center;width:100%;background:transparent}
.mpi-feed-item{width:min(100%,var(--mp-reading-width,820px));box-sizing:border-box;background:var(--mp-color-surface,#fff);border:1px solid var(--mp-color-border-soft,#e5e7eb);border-radius:var(--mp-feature-card-radius,18px);box-shadow:var(--mp-shadow-glow,0 0 20px #007bff);overflow:hidden}
.mpi-feed-item--fragments,.mpi-feed-item--authors,.mpi-feed-item--books,.mpi-manual-card{width:min(100%,var(--mp-reading-width,820px))}
.mpi-source-header{display:block;padding:10px 16px;background:var(--mp-color-surface,#fff);border-bottom:1px solid var(--mp-color-border-soft,#e5e7eb);color:var(--mp-color-primary,#000fff)!important;text-decoration:none!important;font-weight:900;text-transform:uppercase;letter-spacing:.02em;text-align:center}
.mpi-source-header:hover,.mpi-source-header:focus-visible{text-decoration:underline!important}
.mpi-source-header--static{color:#111!important;text-decoration:none!important}
.mpi-card-body,.mpi-manual-body{display:block;color:#151515!important;text-decoration:none!important}
.mpi-card-body:hover,.mpi-card-body:focus-visible,.mpi-manual-body:hover,.mpi-manual-body:focus-visible{text-decoration:none!important}
.mpi-card-image{display:block;width:100%;height:auto;background:#f4f6fa}
.mpi-publication-card{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.mpi-publication-image{max-height:520px;object-fit:cover}
.mpi-card-copy{padding:18px 20px 22px}
.mpi-card-title{margin:0 0 10px;font-size:clamp(1.08rem,2.2vw,1.36rem);line-height:1.2;color:var(--mp-color-primary,#000fff);font-weight:900}
.mpi-card-copy p,.mpi-book-copy p{margin:0;line-height:1.55;text-align:justify}

/* La imagen de MP Fragmentos es la versión social 1080x1350. En Inicio solo
   mostramos el área visual superior (aprox. 1080x1088), ocultando la leyenda
   y el título incorporados en la franja inferior de la imagen social. */
.mpi-fragment-card{padding:0}
.mpi-fragment-image{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1080/1088;object-fit:cover!important;object-position:top center!important}
.mpi-fragment-text{margin:0;padding:30px 28px;font-size:1.12rem;line-height:1.6;text-align:center;border:0}
.mpi-fragment-origin{display:none!important}
.mpi-fragment-publication-title{padding:16px 18px 18px;text-align:center!important;color:var(--mp-color-primary,#000fff);font-size:clamp(1.05rem,2.2vw,1.28rem);line-height:1.25;font-weight:900}

.mpi-observatory-card{padding:0!important}
.mpi-observatory-presentation{width:100%;box-sizing:border-box;border:0;background:linear-gradient(145deg,#111827 0%,#0a1221 58%,#08101d 100%);color:#f8fafc;border-radius:14px;padding:clamp(20px,3vw,28px);line-height:1.58;text-align:justify;box-shadow:inset 0 0 20px rgba(255,255,255,.84),0 10px 26px rgba(8,16,29,.24)}
.mpi-observatory-presentation p{margin:0!important;color:#f8fafc!important;font-size:clamp(17px,2vw,19px)!important;line-height:1.58!important;font-weight:650!important;text-align:justify!important;text-justify:inter-word!important}
.mpi-observatory-presentation p:last-child{margin-bottom:0!important}
.mpi-observatory-source{padding:16px 10px 6px;text-align:center}
.mpi-observatory-source span{display:none}
.mpi-observatory-source strong{display:block;color:var(--mp-color-primary,#000fff);font-size:1.04rem}

.mpi-author-card{display:flex;gap:18px;align-items:center;padding:20px 24px}
body.mp-theme .mpi-author-avatar,.mpi-author-avatar{display:block!important;width:112px!important;height:112px!important;min-width:112px!important;min-height:112px!important;max-width:112px!important;max-height:112px!important;aspect-ratio:1/1!important;border-radius:50%!important;object-fit:cover!important;object-position:center!important;flex:0 0 112px!important;border:1px solid rgba(0,15,255,.16);box-shadow:0 4px 12px rgba(0,0,0,.12)}
.mpi-author-card .mpi-card-title{margin-bottom:7px}
.mpi-author-count{margin:0;color:#555;line-height:1.45}

.mpi-book-card{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:22px;align-items:center;padding:20px}
.mpi-book-cover{width:100%;height:auto;max-height:340px;object-fit:contain;border-radius:12px;background:#f5f7fb}
.mpi-book-copy{min-width:0}
.mpi-book-author{margin-top:12px!important;font-weight:700!important;color:#555}

/* Los textos editoriales son tarjetas de altura natural. No heredamos alturas,
   flex-grow ni márgenes verticales de otros componentes de la web. */
.mpi-feed-item--manual.mp-card{min-height:0!important;height:auto!important;padding:0!important}
.mpi-manual-body--text{display:block!important;width:100%!important;min-height:0!important;height:auto!important;padding:22px 26px!important;margin:0!important;box-sizing:border-box!important}
.mpi-manual-text{display:block!important;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;box-sizing:border-box!important;line-height:1.65;font-size:var(--mpi-manual-font-size,18px)}
.mpi-manual-text-content{display:block!important;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;box-sizing:border-box!important;text-align:left}
/* El formato se decide en el propio editor del Contenido de inicio. Las clases
   estándar de WordPress y los estilos de alineación guardados deben prevalecer. */
.mpi-manual-text-content .has-text-align-left{text-align:left!important}
.mpi-manual-text-content .has-text-align-center{text-align:center!important}
.mpi-manual-text-content .has-text-align-right{text-align:right!important}
/* El editor clásico de WordPress guarda la alineación como style="text-align:...".
   Reforzamos esos estilos porque algunos estilos globales del tema usan !important. */
.mpi-manual-text-content [style*="text-align: left"],.mpi-manual-text-content [style*="text-align:left"]{text-align:left!important}
.mpi-manual-text-content [style*="text-align: center"],.mpi-manual-text-content [style*="text-align:center"]{text-align:center!important}
.mpi-manual-text-content [style*="text-align: right"],.mpi-manual-text-content [style*="text-align:right"]{text-align:right!important}
.mpi-manual-text-content [style*="text-align: justify"],.mpi-manual-text-content [style*="text-align:justify"]{text-align:justify!important}
.mpi-manual-text-content p,.mpi-manual-text-content div,.mpi-manual-text-content h1,.mpi-manual-text-content h2,.mpi-manual-text-content h3,.mpi-manual-text-content h4,.mpi-manual-text-content h5,.mpi-manual-text-content h6{max-width:100%;box-sizing:border-box}
/* Los bloques de texto ocupan siempre todo el ancho disponible. Así text-align
   alinea su contenido respecto a la tarjeta completa y no a un bloque encogido. */
.mpi-manual-text-content>p,.mpi-manual-text-content>div,.mpi-manual-text-content>h1,.mpi-manual-text-content>h2,.mpi-manual-text-content>h3,.mpi-manual-text-content>h4,.mpi-manual-text-content>h5,.mpi-manual-text-content>h6{display:block!important;width:100%!important;float:none!important;margin-left:0!important;margin-right:0!important}
.mpi-manual-text-content p{margin-top:0;margin-bottom:1em}
.mpi-manual-text-content ul,.mpi-manual-text-content ol{margin-top:.75em;margin-bottom:1em;padding-left:1.6em}
.mpi-manual-text-content blockquote{margin:1em 0;padding-left:1em;border-left:3px solid rgba(0,15,255,.24)}
.mpi-manual-text-content p:empty,.mpi-manual-text-content div:empty{display:none!important}
.mpi-manual-text-content a{font-size:inherit}
.mpi-manual-text-content>:first-child{margin-top:0!important}.mpi-manual-text-content>:last-child{margin-bottom:0!important}

/* Acceso compacto a Composición de las publicaciones. En Inicio se presenta
   como carrusel horizontal para no anteponer doce tarjetas grandes al flujo. */
.mpi-composition-body{padding:18px 18px 16px!important}
.mpi-composition-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,24%);gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;padding:2px 2px 12px;scrollbar-width:thin}
.mpi-composition-tile{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;border-radius:14px;border:1px solid rgba(0,15,255,.14);box-shadow:0 5px 16px rgba(0,0,0,.10);scroll-snap-align:start;color:#fff!important;text-decoration:none!important;background:#eef1f7}
.mpi-composition-image,.mpi-composition-image img{display:block;width:100%;height:100%}
.mpi-composition-image img{object-fit:cover}
.mpi-composition-tile:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(to top,rgba(5,10,24,.82),rgba(5,10,24,0))}
.mpi-composition-label{position:absolute;z-index:2;left:10px;right:10px;bottom:10px;text-align:center;font-size:.92rem;line-height:1.15;font-weight:900;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.65)}
.mpi-composition-more{text-align:center;padding:4px 8px 0;font-weight:800}
.mpi-manual-image{display:block;width:100%;height:auto}
.mpi-manual-video{display:block;width:100%;height:auto;background:#000;max-height:70vh}
.mpi-manual-link{display:block;padding:14px 18px;text-align:center;font-weight:800}

/* Presentación editable antes del flujo. */
.mpi-intro{width:min(100%,var(--mp-reading-width,820px));margin:0 auto 36px;padding:8px 18px 4px;color:#fff;text-align:center;background:transparent}
.mpi-intro-logo{display:block;width:auto;max-width:min(220px,58vw);max-height:210px;margin:0 auto 14px;object-fit:contain}
.mpi-intro-title{margin:0;color:#fff;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.15;text-shadow:0 0 .6em #fff}
.mpi-intro-text{margin:14px auto 0;font-size:clamp(1.25rem,3vw,1.85rem);font-weight:700;line-height:1.35;text-shadow:0 0 .5em #fff}
.mpi-intro-text,.mpi-intro-text *{text-align:center!important}
.mpi-intro-text p{display:block;width:100%;margin:.2em auto!important;text-align:center!important}

/* Una página que contiene [mp_inicio] se comporta visualmente como una app:
   eliminamos el panel blanco/azul de las páginas normales para que el fondo
   gris del tema quede visible entre las tarjetas. */
.mpi-home-page .mp-theme-standard-panel{padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important}
.mpi-home-page .mp-theme-page-heading{display:none!important}
.mpi-home-page .mp-theme-page-body{padding:0!important;background:transparent!important;border-radius:0!important;text-align:initial!important}
.mpi-home-page .mp-theme-shell--reading{padding-top:24px}

.mpi-sentinel{height:2px;width:100%}
.mpi-loading{margin:16px auto;text-align:center;color:#fff}
.mpi-load-more{display:block;margin:16px auto 0;min-width:180px}
.mpi-empty{max-width:var(--mp-reading-width,820px);margin:0 auto;color:#fff;text-align:center}

@media (max-width:700px){
  .mpi-feed{gap:var(--mp-card-gap,24px)}
  .mpi-feed-item{border-radius:var(--mp-card-radius,14px)}
  .mpi-source-header{padding:9px 12px;font-size:.9rem}
  .mpi-card-copy{padding:15px 16px 18px}
  .mpi-author-card{padding:16px;gap:14px}
  body.mp-theme .mpi-author-avatar,.mpi-author-avatar{width:82px!important;height:82px!important;min-width:82px!important;min-height:82px!important;max-width:82px!important;max-height:82px!important;flex-basis:82px!important}
  .mpi-book-card{grid-template-columns:110px minmax(0,1fr);gap:15px;padding:15px}
  .mpi-book-cover{max-height:230px}
  .mpi-observatory-card{padding:10px}
  .mpi-observatory-presentation{padding:18px 17px}
  .mpi-manual-body--text{padding:18px 17px}
  .mpi-composition-body{padding:14px 12px 12px!important}
  .mpi-composition-rail{grid-auto-columns:minmax(138px,44%);gap:11px}
  .mpi-intro{margin-bottom:28px;padding-inline:8px}
  .mpi-intro-logo{max-width:min(180px,55vw);max-height:170px}
}
@media (max-width:440px){
  .mpi-book-card{grid-template-columns:1fr}
  .mpi-book-cover{max-width:210px;margin:0 auto}
  .mpi-book-copy{text-align:center}.mpi-book-copy p{text-align:left}
}
