/* =====================================================================
   PARTIDOS (resultados y box scores de esta noche y de anoche)

   Shortcode [mb_nba_partidos]. Prefijo .mbpa.
   ===================================================================== */

.mbpa {
	--mbpa-tinta: #353535;
	--mbpa-suave: #6a6a6a;
	--mbpa-acento: #A03843;
	--mbpa-linea: rgba(53, 53, 53, 0.1);
	--mbpa-fondo: #f6f4f2;
	box-sizing: border-box;
	width: 100%;
	max-width: var(--mbw-ancho-bloque, 100%);
	margin: 0 auto;
	padding: clamp(1.2rem, 3vw, 2.4rem) 0 clamp(2.5rem, 5vw, 4rem);
	font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
	color: var(--mbpa-tinta);
}

.mbpa *, .mbpa *::before, .mbpa *::after { box-sizing: border-box; }

/* --- Cabecera ------------------------------------------------------- */
.mbpa__cabecera {
	margin-bottom: 1.8rem;
	padding: clamp(1.3rem, 3vw, 2.2rem);
	border-radius: 18px;
	background: linear-gradient(135deg, #353535, #4a2a2f 55%, #A03843);
	color: #fff;
}

.mbpa .mbpa__antetitulo { display: flex; align-items: center; gap: 0.5rem; margin: 0 0 0.4rem; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: rgba(255, 255, 255, 0.8); }
.mbpa__vivo { width: 8px; height: 8px; border-radius: 50%; background: #ff8a96; box-shadow: 0 0 0 0 rgba(255, 138, 150, 0.7); animation: mbpa-latido 2s infinite; }
@keyframes mbpa-latido { 70% { box-shadow: 0 0 0 8px rgba(255, 138, 150, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 138, 150, 0); } }
.mbpa .mbpa__titulo { margin: 0 0 0.5rem; font-family: "Anton", "Poppins", sans-serif; font-size: clamp(2.2rem, 5vw, 3.4rem); font-weight: 400; line-height: 1; text-transform: uppercase; color: #fff; }
.mbpa .mbpa__entradilla { max-width: 70ch; margin: 0; color: rgba(255, 255, 255, 0.85); font-size: 0.95rem; line-height: 1.55; }

/* --- Cada noche ----------------------------------------------------- */
.mbpa__noche + .mbpa__noche { margin-top: clamp(2rem, 4vw, 3rem); }
.mbpa h2.mbpa__dia { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.3rem 0.9rem; margin: 0 0 1rem; padding-bottom: 0.6rem; border-bottom: 2px solid var(--mbpa-acento); }
.mbpa__dia b { font-family: "Anton", "Poppins", sans-serif; font-size: clamp(1.6rem, 3vw, 2.1rem); font-weight: 400; line-height: 1; text-transform: uppercase; }
.mbpa__dia span { color: var(--mbpa-suave); font-size: 0.9rem; font-weight: 500; }
.mbpa .mbpa__vacio { margin: 0; padding: 1.4rem; border: 1px dashed var(--mbpa-linea); border-radius: 12px; color: var(--mbpa-suave); text-align: center; }

/* Dos partidos por fila; el que se abre ocupa las dos columnas */
.mbpa__rejilla { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(0.8rem, 1.6vw, 1.2rem); align-items: start; }

.mbpa__partido {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--mbpa-linea);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 16px 34px -30px rgba(0, 0, 0, 0.6);
}

/* Los colores de los dos equipos, en una franja arriba */
.mbpa__partido::before { content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: linear-gradient(90deg, var(--mbpa-a) 50%, var(--mbpa-b) 50%); }

details.mbpa__partido[open] { grid-column: 1 / -1; }

.mbpa__resumen { display: grid; gap: 0.7rem; padding: 1.1rem 1.2rem 1rem; list-style: none; }
summary.mbpa__resumen { cursor: pointer; }
summary.mbpa__resumen::-webkit-details-marker { display: none; }
summary.mbpa__resumen:hover { background: #fcf8f8; }
summary.mbpa__resumen:focus-visible { outline: 2px solid var(--mbpa-acento); outline-offset: -2px; }

.mbpa__estado { display: flex; justify-content: center; align-items: center; gap: 0.5rem; font-size: 0.8rem; font-weight: 700; color: var(--mbpa-suave); }
.mbpa__estado b { padding: 0.15rem 0.6rem; border-radius: 999px; font-size: 0.7rem; letter-spacing: 0.08em; text-transform: uppercase; }
.mbpa__estado-final { background: rgba(53, 53, 53, 0.08); color: var(--mbpa-tinta); }
.mbpa__estado-vivo { background: var(--mbpa-acento); color: #fff; }
.mbpa__estado em { font-style: normal; font-weight: 600; color: var(--mbpa-acento); }

.mbpa__marcador { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto minmax(0, 1fr); align-items: center; gap: clamp(0.4rem, 1.2vw, 1rem); }
.mbpa__equipo { display: flex; align-items: center; gap: 0.6rem; min-width: 0; }
.mbpa__equipo--local { flex-direction: row-reverse; text-align: right; }
.mbpa__equipo--pierde { opacity: 0.6; }
.mbpa__siglas { display: inline-grid; place-items: center; flex: 0 0 auto; min-width: 3rem; height: 3rem; padding: 0 0.3rem; border-radius: 12px; font-family: "Anton", "Poppins", sans-serif; font-size: 1rem; letter-spacing: 0.02em; }
.mbpa__nombre { display: grid; min-width: 0; }
.mbpa__nombre b { font-size: 0.95rem; line-height: 1.2; }
.mbpa__nombre em { color: var(--mbpa-suave); font-size: 0.75rem; font-style: normal; font-weight: 600; }
.mbpa__puntos { min-width: 2.6ch; font-family: "Anton", "Poppins", sans-serif; font-size: clamp(1.8rem, 3vw, 2.4rem); line-height: 1; text-align: center; color: var(--mbpa-suave); font-variant-numeric: tabular-nums; }
.mbpa__puntos--gana { color: var(--mbpa-tinta); }
.mbpa__partido--vivo .mbpa__puntos { color: var(--mbpa-acento); }
.mbpa__guion { color: var(--mbpa-suave); font-weight: 700; }

.mbpa__lideres { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.2rem 0.5rem; color: var(--mbpa-suave); font-size: 0.8rem; text-align: center; }
.mbpa__lideres i { font-style: normal; }
.mbpa__abrir, .mbpa__pronto { justify-self: center; font-size: 0.78rem; font-weight: 700; }
.mbpa__abrir { padding: 0.4rem 1rem; border-radius: 999px; background: #fbf3f4; color: var(--mbpa-acento); }
.mbpa__abrir::after { content: " ▾"; }
details[open] .mbpa__abrir::after { content: " ▴"; }
.mbpa__pronto { color: var(--mbpa-suave); font-weight: 500; font-style: italic; }

/* --- Box score ------------------------------------------------------ */
.mbpa__box { display: grid; gap: 1.6rem; padding: 0.4rem 1.2rem 1.4rem; border-top: 1px solid var(--mbpa-linea); }
.mbpa h3.mbpa__box-titulo { display: flex; align-items: center; gap: 0.7rem; margin: 1rem 0 0.7rem; font-size: 1.05rem; }
.mbpa__box-titulo .mbpa__siglas { min-width: 2.4rem; height: 2.4rem; border-radius: 10px; font-size: 0.85rem; }
.mbpa__box-titulo b { margin-left: auto; font-family: "Anton", "Poppins", sans-serif; font-size: 1.6rem; font-weight: 400; }

.mbpa__scroll { overflow-x: auto; border: 1px solid var(--mbpa-linea); border-radius: 12px; }
.mbpa table.mbpa__tabla { width: 100%; min-width: 980px; margin: 0; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.mbpa__tabla th, .mbpa__tabla td { padding: 0.5rem 0.55rem; border-bottom: 1px solid rgba(53, 53, 53, 0.07); font-size: 0.86rem; text-align: center; white-space: nowrap; }
.mbpa__tabla th { background: #fbf3f4; color: var(--mbpa-acento); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.06em; }
.mbpa__tabla .mbpa__jugador { position: sticky; left: 0; z-index: 1; min-width: 12rem; background: #fff; border-left: 4px solid var(--mbpa-equipo, #999); text-align: left; font-weight: 600; }
.mbpa__tabla th.mbpa__jugador { background: #fbf3f4; }
.mbpa__jugador em { margin-left: 0.35rem; color: var(--mbpa-suave); font-size: 0.7rem; font-style: normal; font-weight: 700; }
.mbpa__tabla tbody tr:nth-child(even) td, .mbpa__tabla tbody tr:nth-child(even) .mbpa__jugador { background: #fcfbfa; }
.mbpa__tabla tbody tr:hover td, .mbpa__tabla tbody tr:hover .mbpa__jugador { background: #f7eef0; }
.mbpa__tabla td.mbpa__pts { font-weight: 700; }
.mbpa__tabla td.mbpa__pts--top { color: var(--mbpa-acento); }
.mbpa__tabla th.mbpa__pts { background: #A03843; color: #fff; }
.mbpa__pct { color: var(--mbpa-suave); }
.mbpa__mas { color: #1f7a4a; }
.mbpa__menos { color: #b23a48; }
.mbpa__tabla tr.mbpa__separador td { padding: 0.35rem 0.7rem; background: var(--mbpa-fondo); color: var(--mbpa-suave); font-size: 0.68rem; font-weight: 700; letter-spacing: 0.1em; text-align: left; text-transform: uppercase; }
.mbpa__tabla tfoot td { border-top: 2px solid rgba(53, 53, 53, 0.15); border-bottom: 0; background: var(--mbpa-fondo); font-weight: 700; }
.mbpa__tabla tfoot .mbpa__jugador { background: var(--mbpa-fondo); }
.mbpa .mbpa__no-jugaron { margin: 0.6rem 0 0; color: var(--mbpa-suave); font-size: 0.8rem; }

@media (max-width: 900px) {
	.mbpa__rejilla { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 520px) {
	.mbpa__resumen { padding: 1rem 0.8rem 0.9rem; }
	.mbpa__nombre b { display: none; }
	.mbpa__siglas { min-width: 2.6rem; height: 2.6rem; }
	.mbpa__equipo--local { flex-direction: row-reverse; }
	.mbpa__box { padding: 0.2rem 0.6rem 1rem; }
	.mbpa__tabla .mbpa__jugador { min-width: 9rem; }
}

@media (prefers-reduced-motion: reduce) {
	.mbpa__vivo { animation: none; }
}

/* La tabla ancha no debe ensanchar la caja (si no, «No jugaron» se corta) */
.mbpa__box > * { min-width: 0; }

@media (max-width: 520px) {
	.mbpa__tabla th, .mbpa__tabla td { padding: 0.45rem 0.45rem; font-size: 0.8rem; }
	.mbpa__tabla .mbpa__jugador { min-width: 0; max-width: 8.5rem; white-space: normal; line-height: 1.25; }
}
