/* Partido: cabecera con escudos enormes a los bordes + resumen de eventos */
.mpage-top { position: relative; overflow: hidden; border-radius: 22px; padding: 18px 16px 20px; background: linear-gradient(180deg, #1b222c, #141a22); min-height: 210px; }
[data-theme="light"] .mpage-top { background: linear-gradient(180deg, #f6f7f8, #eceff1); }
.mpage-top > * { position: relative; z-index: 1; }
.mpage-bgcrest { position: absolute !important; z-index: 0 !important; top: 50%; width: min(190px, 42vw); height: auto; max-height: 120%; object-fit: contain; transform: translateY(-50%); opacity: .95; pointer-events: none; }
.mpage-bgcrest.left { left: calc(min(190px, 42vw) / -2); }
.mpage-bgcrest.right { right: calc(min(190px, 42vw) / -2); }
.mpage-topline { justify-content: center; }
.mpage-teams { margin: 22px 0 6px; padding: 0 clamp(20px, 9vw, 100px); }
.mpage-score { font-size: 2.7rem; white-space: nowrap; }
/* Dos campos: línea de separación para distinguir un equipo del otro */
.al-pair { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
.al-sep { height: 5px; margin: 14px 4%; border-radius: 5px; background: linear-gradient(90deg, transparent, #16a34a 15%, #16a34a 85%, transparent); }
@media (min-width: 760px) { .al-pair { grid-template-columns: minmax(0, 1fr) 5px minmax(0, 1fr); gap: 22px; align-items: stretch; } .al-sep { width: 5px; height: auto; margin: 0; background: linear-gradient(180deg, transparent, #16a34a 10%, #16a34a 90%, transparent); } }
/* Mejor fichaje de la jornada: 5 columnas, 2 filas, sin deslizar */
.merc-bestrow { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; overflow: visible !important; }
.merc-bestrow .mbc { width: auto; padding: 14px 8px; border-radius: 16px; gap: 4px; }
.merc-bestrow .mbc-photo, .merc-bestrow .mbc-img { width: 74px; height: 74px; }
.merc-bestrow .mbc-name { font-size: .95rem; }
.merc-bestrow .mbc-team { font-size: .78rem; }
.merc-bestrow .mbc-crest { width: 17px; height: 17px; }
.merc-bestrow .mbc-exp { font-size: .95rem; }
.merc-bestrow .mbc-val { font-size: .9rem; }
.merc-bestrow .mbc-rival { font-size: .76rem; }
.merc-bestrow .mbc-role { font-size: .66rem; }
.merc-bestrow .mbc-last5 .ficha-chip { font-size: .7rem; padding: 2px 6px; }
@media (max-width: 760px) { .merc-bestrow { grid-template-columns: repeat(2, minmax(0, 1fr)); } .merc-bestrow .mbc-photo, .merc-bestrow .mbc-img { width: 82px; height: 82px; } }
/* Buscador: con el teclado abierto se esconden los filtros y sube arriba */
@media (max-width: 760px) { body.mj-searching #tab-mercado .merc-select, body.mj-searching #tab-mercado .merc-range, body.mj-searching #tab-mercado .merc-seg, body.mj-searching #tab-mercado > .panel > p, body.mj-searching #tab-mercado #rachasOut, body.mj-searching #tab-mercado .panel-head { display: none !important; } }
.mj-suggest { display: flex; flex-direction: column; margin: 6px 0 10px; border: 1px solid var(--border); border-radius: 14px; overflow: hidden; background: var(--card-solid, #fff); box-shadow: 0 8px 22px rgba(0,0,0,.14); }
.mj-suggest[hidden] { display: none; }
.mj-sug-row { display: flex; align-items: center; gap: 12px; padding: 9px 12px; border: 0; border-top: 1px solid var(--border); background: transparent; color: var(--text); text-align: left; font: inherit; cursor: pointer; }
.mj-sug-row:first-child { border-top: 0; }
.mj-sug-row img { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; background: var(--bg-surface); }
.mj-sug-tx { display: flex; flex-direction: column; min-width: 0; }
.mj-sug-tx b { font-size: 1rem; }
.mj-sug-tx small { color: var(--muted); font-size: .8rem; }
.mj-sug-empty { padding: 12px; color: var(--muted); font-size: .9rem; }

.mpage-bgcrest { width: min(230px, 50vw) !important; }
.mpage-bgcrest.left { left: calc(min(230px, 50vw) / -2.6) !important; -webkit-mask-image: linear-gradient(to right, #000 45%, transparent 92%); mask-image: linear-gradient(to right, #000 45%, transparent 92%); }
.mpage-bgcrest.right { right: calc(min(230px, 50vw) / -2.6) !important; -webkit-mask-image: linear-gradient(to left, #000 45%, transparent 92%); mask-image: linear-gradient(to left, #000 45%, transparent 92%); }
.mpage-teams { padding: 0 !important; grid-template-columns: 1fr auto 1fr; margin: 26px 0 10px; }
.mpage-team { font-size: 1.15rem; font-weight: 900; text-shadow: 0 1px 6px rgba(255,255,255,.9); }
.mpage-team.home { align-items: flex-end; text-align: right; padding-right: 4px; }
.mpage-team.away { align-items: flex-start; text-align: left; padding-left: 4px; }
.pl-evs { position: absolute; left: -3px; top: -5px; display: inline-flex; font-size: .84rem; line-height: 1; filter: drop-shadow(0 1px 2px rgba(0,0,0,.45)); letter-spacing: -2px; }

/* Lo más destacado: línea de tiempo con cada acción separada */
.mpage-ev-sum { position: relative; display: flex; flex-direction: column; gap: 8px; margin: 14px 2px 6px; padding: 14px 10px 12px; border-radius: 18px; background: var(--card-solid, rgba(0,0,0,.04)); border: 1px solid var(--border); }
.mpage-ev-sum::before { content: ""; position: absolute; top: 46px; bottom: 14px; left: 50%; width: 2px; margin-left: -1px; background: linear-gradient(180deg, transparent, rgba(34,197,94,.45) 12%, rgba(34,197,94,.45) 88%, transparent); }
.mpage-ev-title { text-align: center; font: 800 .9rem 'Bricolage Grotesque', sans-serif; letter-spacing: .04em; margin-bottom: 4px; }
.mpage-ev-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr); align-items: center; gap: 0; }
.mpage-ev-cell { min-width: 0; display: flex; }
.mpage-ev-cell.l { justify-content: flex-end; padding-right: 6px; }
.mpage-ev-cell.r { justify-content: flex-start; padding-left: 6px; }
.mpage-ev-min { justify-self: center; z-index: 1; background: #16a34a; color: #fff; font: 800 .72rem 'Bricolage Grotesque', sans-serif; padding: 3px 0; width: 38px; text-align: center; border-radius: 999px; box-shadow: 0 0 0 3px var(--card-solid, #fff); }
.mpage-ev-pill { display: flex; align-items: center; gap: 8px; max-width: 100%; padding: 6px 12px 6px 8px; border-radius: 14px; background: rgba(34,197,94,.10); border: 1px solid rgba(34,197,94,.28); }
.mpage-ev-row.away .mpage-ev-pill { flex-direction: row-reverse; text-align: right; padding: 6px 8px 6px 12px; }
.mpage-ev-ico { font-size: 1.35rem; line-height: 1; flex: 0 0 auto; }
.mpage-ev-tx { display: flex; flex-direction: column; min-width: 0; line-height: 1.15; }
.mpage-ev-txt { font-weight: 800; font-size: .86rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mpage-ev-kind { font-size: .62rem; font-weight: 700; color: var(--muted); text-transform: uppercase; letter-spacing: .05em; }
@media (max-width: 560px) { .mpage-ev-pill { padding: 5px 8px 5px 6px; gap: 5px; } .mpage-ev-txt { font-size: .76rem; } .mpage-ev-ico { font-size: 1.1rem; } .mpage-ev-row { grid-template-columns: minmax(0,1fr) 40px minmax(0,1fr); } .mpage-ev-min { width: 34px; font-size: .66rem; } }

.pl-red { position: absolute; left: 2px; bottom: 2px; width: 13px; height: 18px; border-radius: 3px; background: #dc2626; border: 1.5px solid #fff; box-shadow: 0 1px 3px rgba(0,0,0,.5); }
.mpage-ev-pill.sub { padding: 5px 10px; background: rgba(120,120,120,.08); border-color: rgba(120,120,120,.25); }
.mpage-ev-in, .mpage-ev-out { font-weight: 700; font-size: .74rem; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mpage-ev-in i { color: #16a34a; font-style: normal; } .mpage-ev-out i { color: #dc2626; font-style: normal; }
.mpage-back { margin-bottom: 10px; }

/* Estado largo ("ALINEACIONES CONFIRMADAS") en dos líneas: el centro queda estrecho y los nombres pegados al VS */
.mpage-mid { max-width: 108px; }
.mpage-state { white-space: normal !important; text-align: center; line-height: 1.15; font-size: .64rem !important; }
.mpage-team.home { padding-right: 0 !important; }
.mpage-team.away { padding-left: 0 !important; }

/* Nombres a la altura del VS y aún más pegados a él */
.mpage-teams { align-items: center !important; }
.mpage-team { justify-content: center; }
.mpage-team.home { margin-right: -16px; }
.mpage-team.away { margin-left: -16px; }
.mpage-team { transform: translateY(15px); }

/* Con marcador: estado siempre de altura fija (marcador y nombres siempre al mismo nivel) y sin tapar el resultado */
.mpage-mid { max-width: none; }
.mpage-state { max-width: 112px; min-height: 30px; display: flex; align-items: center; justify-content: center; margin: 0 auto; }
.mpage-hasscore .mpage-team.home { margin-right: 0; padding-right: 6px !important; }
.mpage-hasscore .mpage-team.away { margin-left: 0; padding-left: 6px !important; }
.mpage-hasscore .mpage-team { font-size: 1rem; }
.mpage-score { font-size: clamp(1.8rem, 9vw, 2.7rem); }
.al.al-live .al-title b { color: #fecaca; }
.cx-conf-alert { background: transparent; }

.pl-pts.prov { outline: 1.5px dashed rgba(255,255,255,.9); outline-offset: -2px; }
.mpage-live-note { text-align: center; margin: 2px 0 10px; }

/* Resto de partidos de la jornada */
.mpage-others { margin-top: 22px; padding: 14px; border-radius: 20px; background: var(--card-solid, rgba(127,127,127,.08)); border: 1px solid var(--border); }
.mpage-others-h { font-family: 'Bricolage Grotesque', sans-serif; font-size: 1rem; margin: 0 0 12px; text-align: center; }
.mpage-others-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (min-width: 760px) { .mpage-others-grid { grid-template-columns: repeat(3, 1fr); } }
.mo-card { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 9px 6px; border-radius: 14px; text-decoration: none; color: inherit; background: var(--card-solid, #fff); border: 1.5px solid var(--border); transition: transform .14s ease; }
@media (hover: hover) and (pointer: fine) { .mo-card:hover { transform: translateY(-2px); } }
.mo-card.cur { border-color: #16a34a; box-shadow: 0 0 0 1px rgba(34,197,94,.5); }
.mo-card.fin { border-color: rgba(129,140,248,.7); }
.mo-card.live { border-color: #ef4444; animation: cxJnLive 1.3s ease-in-out infinite; }
.mo-st { font-size: .66rem; font-weight: 800; color: var(--muted); text-transform: uppercase; letter-spacing: .03em; }
.mo-card.live .mo-st { color: #ef4444; } .mo-card.fin .mo-st { color: #6366f1; }
.mo-row { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; }
.mo-row img { width: 34px; height: 34px; object-fit: contain; }
.mo-sc { font: 800 1.3rem 'Bricolage Grotesque', sans-serif; white-space: nowrap; }
@media (prefers-reduced-motion: reduce) { .mo-card.live { animation: none; } }

/* Lo más destacado más compacto + gol con su asistencia en la misma tarjeta */
.mpage-ev-sum { gap: 5px; padding: 12px 8px 10px; }
.mpage-ev-pill { padding: 4px 10px 4px 7px; gap: 7px; }
.mpage-ev-row.away .mpage-ev-pill { padding: 4px 7px 4px 10px; }
.mpage-ev-ico { font-size: 1.15rem; }
.mpage-ev-by { font-size: .68rem; color: var(--muted); font-weight: 600; margin-top: 1px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mpage-ev-by b { color: inherit; font-weight: 800; }
.mpage-ev-pill.sub { padding: 3px 9px; }
.mpage-ev-sum::before { top: 42px; }

/* cambios: plegados por defecto, agrupados por minuto */
.mpage-ev-sum .mpage-ev-row.is-sub{display:none}
.mpage-ev-sum.show-subs .mpage-ev-row.is-sub{display:grid}
.mpage-ev-swap{display:flex;gap:8px;line-height:1.25}
.mpage-ev-swap+.mpage-ev-swap{margin-top:3px}
.mpage-ev-toggle{display:block;margin:2px auto 8px;padding:5px 14px;border-radius:999px;border:1px solid var(--line,#d8dce6);background:transparent;color:inherit;font:600 12px/1.2 inherit;cursor:pointer}
/* minutos con descuento (90+10') */
.mpage-ev-row{grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)}
.mpage-ev-min{width:auto;min-width:40px;padding:0 6px;white-space:nowrap;font-size:.68rem;letter-spacing:-.02em}
@media (max-width:560px){.mpage-ev-row{grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr)}.mpage-ev-min{font-size:.64rem;min-width:36px;padding:0 4px}}

/* MVP del partido */
.mpage-mvp{margin:14px 0;padding:14px;border-radius:18px;border:1px solid rgba(234,179,8,.5);background:linear-gradient(135deg,rgba(250,204,21,.18),rgba(250,204,21,.04));text-align:center}
.mvp-k{font:800 .8rem/1 'Bricolage Grotesque',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#a16207;margin-bottom:10px}
.mvp-list{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.mvp-it{display:flex;align-items:center;gap:12px;border:0;background:var(--cx-surface,#fff);color:inherit;font:inherit;padding:8px 14px 8px 8px;border-radius:999px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.12)}
.mvp-it > img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid #facc15}
.mvp-tx{display:flex;flex-direction:column;text-align:left;line-height:1.2}
.mvp-tx b{font-size:1.02rem}
.mvp-tx small{display:flex;align-items:center;gap:4px;color:var(--muted)}
.mvp-tx small img{width:14px;height:14px;object-fit:contain}
.mvp-pts{font:800 1.3rem/1 'Bricolage Grotesque',sans-serif;background:#16a34a;color:#fff;border-radius:12px;padding:8px 10px;margin-left:4px}
.mvp-sub{margin-top:8px;font-size:.7rem;color:var(--muted)}

/* ---- Páginas de club (/equipos) ---- */
.eq-page{padding-bottom:28px}
.eq-back{display:inline-block;margin:2px 0 10px;font-size:.85rem;font-weight:700;color:var(--muted);text-decoration:none}
.eq-h1{margin:0;font:800 1.45rem/1.1 'Bricolage Grotesque',sans-serif}
.eq-head{display:flex;align-items:center;gap:14px;padding:14px;border-radius:20px;background:var(--card-solid,rgba(127,127,127,.08));border:1px solid var(--border)}
.eq-crest{width:64px;height:64px;object-fit:contain;flex:none}
.eq-hsub{margin-top:6px;font-size:.82rem;color:var(--muted);font-weight:600}
.eq-sec{margin-top:16px;padding:14px 12px;border-radius:20px;background:var(--card-solid,rgba(127,127,127,.08));border:1px solid var(--border)}
.eq-sech{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.eq-sech h3{margin:0;font:800 1rem/1.2 'Bricolage Grotesque',sans-serif}
.eq-more{font-size:.8rem;font-weight:700;color:var(--primary);text-decoration:none;white-space:nowrap}
.eq-pitch{display:block}
.eq-cal{display:flex;flex-direction:column;gap:6px}
.eq-calrow{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:14px;border:1.5px solid var(--border);text-decoration:none;color:inherit;background:var(--card-solid,#fff)}
.eq-calrow.fin{opacity:.85}
.eq-calrow.live{border-color:#16a34a}
.eq-calj{font:800 .72rem 'Bricolage Grotesque',sans-serif;color:var(--muted);width:28px}
.eq-calrow img{width:24px;height:24px;object-fit:contain}
.eq-calrival{flex:1;font-weight:700;font-size:.9rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eq-calres{font:800 .82rem 'Bricolage Grotesque',sans-serif;white-space:nowrap}
.eq-grp{margin:14px 2px 6px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.eq-pl{display:flex;align-items:center;gap:10px;padding:8px;margin-bottom:6px;border-radius:14px;border:1.5px solid var(--border);text-decoration:none;color:inherit;background:var(--card-solid,#fff)}
.eq-pimg{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:top;flex:none;background:rgba(127,127,127,.15)}
.eq-pmid{flex:1;min-width:0}
.eq-pname{font-weight:700;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eq-pval{font-size:.72rem;color:var(--muted)}
.eq-pl .racha-scores{display:flex;gap:3px;flex:none}
.eq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}
.eq-tile{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;border:1.5px solid var(--border);text-decoration:none;color:inherit;background:var(--card-solid,#fff);font-weight:700;font-size:.88rem}
.eq-tile img{width:34px;height:34px;object-fit:contain;flex:none}
@media(min-width:700px){.eq-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:420px){.eq-pl .racha-chip{min-width:23px}.eq-pl .racha-chip b{padding:2px 3px}}
.club-link{cursor:pointer}
@media (hover: hover) and (pointer: fine) { .club-link:hover{text-decoration:underline} }
.eq-inicio{margin-top:12px}
.eq-inicio:empty{display:none}
.eq-inicio-h{display:flex;align-items:center;justify-content:space-between;font:800 1rem 'Bricolage Grotesque',sans-serif;margin-bottom:6px}
.eq-inicio-row .merc-club{text-decoration:none}
.eq-calrow svg.ffx-ha{width:20px;height:20px;flex:none;margin:0}
.eq-head{align-items:flex-start}
.eq-htxt{flex:1;min-width:0}
.eq-next{margin-top:10px;padding:10px 12px;border-radius:14px;background:rgba(127,127,127,.1);border:1px solid var(--border)}
.eq-next-k{font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.eq-next-row{display:flex;align-items:center;gap:8px;min-width:0}
.eq-next-j{background:#0f172a;color:#fff;font:800 .72rem 'Bricolage Grotesque',sans-serif;border-radius:6px;padding:3px 7px;flex:none}
.eq-next-crest{width:26px;height:26px;object-fit:contain;flex:none}
.eq-next-rival{font:800 1.02rem/1.1 'Bricolage Grotesque',sans-serif;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.eq-next svg.ffx-ha{width:20px;height:20px;flex:none;margin:0}
.eq-next-when{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.eq-chip{font-size:.74rem;font-weight:700;padding:4px 9px;border-radius:999px;background:var(--card-solid,#fff);border:1px solid var(--border)}

/* ===== Clubes: rediseño ===== */
.eqi-hero{padding:18px 16px 16px;border-radius:22px;border:1px solid var(--border);background:linear-gradient(135deg,rgba(34,197,94,.16),rgba(34,197,94,.03) 60%),var(--card-solid,#fff);margin-bottom:14px}
.eqi-hero .eq-h1{font-size:1.9rem}
.eqi-sub{margin:6px 0 12px;font-size:.88rem;color:var(--muted);line-height:1.4}
.eqi-search{margin:0}
.eq-grid{gap:12px;margin-top:0}
.eq-tile{position:relative;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;border-radius:20px;min-height:128px;overflow:hidden;transition:transform .12s,box-shadow .15s,border-color .15s;box-shadow:0 2px 10px rgba(0,0,0,.05)}
.eq-tile:active{transform:scale(.97)}
@media (hover: hover) and (pointer: fine) { .eq-tile:hover{border-color:#22c55e;box-shadow:0 6px 18px rgba(34,197,94,.18)} }
.eq-tile[hidden]{display:none}
.eq-tile-cw{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:16px;background:rgba(127,127,127,.1)}
.eq-tile .eq-tile-cw img{width:42px;height:42px}
.eq-tile-tx{display:flex;flex-direction:column;gap:2px;min-width:0;width:100%}
.eq-tile-tx b{font:800 .95rem/1.15 'Bricolage Grotesque',sans-serif}
.eq-tile-tx small{font-size:.72rem;font-weight:600;color:var(--muted)}
.eq-tile-tx small.eq-tile-bad{color:#c0261b}
.eq-tile-go{position:absolute;top:12px;right:14px;font-size:1.3rem;color:var(--muted);opacity:.6}
.eq-empty{padding:14px 4px}
.eq-hero{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;padding:18px 16px;border-radius:24px;border:1px solid var(--border);background:linear-gradient(135deg,rgba(34,197,94,.14),rgba(34,197,94,.02) 65%),var(--card-solid,#fff)}
.eq-hero-bg{position:absolute;right:-30px;top:-30px;width:190px;height:190px;object-fit:contain;opacity:.09;pointer-events:none;filter:grayscale(.2)}
.eq-hero .eq-crest{position:relative;width:78px;height:78px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.18))}
.eq-hero .eq-htxt{position:relative}
.eq-hero .eq-h1{font-size:1.6rem}
.eq-hero .eq-hsub{margin-top:4px}
.eq-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.eq-stat{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;border-radius:16px;border:1px solid var(--border);background:var(--card-solid,#fff);text-align:center}
.eq-stat b{font:800 1rem/1 'Bricolage Grotesque',sans-serif}
.eq-stat small{font-size:.62rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.eq-stat.up b{color:#16a34a}.eq-stat.down b{color:#c0261b}.eq-stat.mid b{color:#d97706}
.eq-sec{border-radius:22px}
.eq-sech h3{font-size:1.05rem}
.eq-grp{display:flex;align-items:center;gap:8px}
.eq-grp::after{content:"";flex:1;height:1px;background:var(--border)}
.eq-pl{border-radius:16px;transition:transform .12s,border-color .15s}
.eq-pl:active{transform:scale(.985)}
.eq-calrow{border-radius:16px}
@media(max-width:420px){.eq-hero .eq-crest{width:64px;height:64px}.eq-hero .eq-h1{font-size:1.35rem}.eq-stat b{font-size:.88rem}}
/* Partido en juego en el calendario del club: rojo */
.eq-calrow.live{border-color:#ef4444;background:rgba(239,68,68,.07);box-shadow:0 0 0 1px rgba(239,68,68,.35)}
.eq-calrow.live .eq-calres{color:#ef4444;margin-left:10px}
.eq-livetag{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#fff;background:#ef4444;border-radius:999px;padding:3px 9px 3px 7px}
.eq-livetag i{width:6px;height:6px;border-radius:50%;background:#fff;animation:eqLive 1.3s ease-in-out infinite}
@keyframes eqLive{50%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.eq-livetag i{animation:none}}

.eq-calcap{font:800 .68rem 'Bricolage Grotesque',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#6b7280);margin:10px 2px 2px}
.eq-cal>.eq-calcap:first-child{margin-top:2px}
.eq-calrow.fin{opacity:1;border-left-width:5px}
.eq-calrow.fin.win{border-left-color:#16a34a;background:rgba(22,163,74,.06)}
.eq-calrow.fin.draw{border-left-color:#9ca3af}
.eq-calrow.fin.loss{border-left-color:#ef4444;background:rgba(239,68,68,.05)}
.eq-calscore{margin-left:auto;font-weight:800;padding:3px 10px;border-radius:999px;background:rgba(0,0,0,.07);white-space:nowrap}
.eq-calrow.fin.win .eq-calscore{background:#16a34a;color:#fff}
.eq-calrow.fin.loss .eq-calscore{background:#ef4444;color:#fff}
.eq-calrow.fin.draw .eq-calscore{background:#9ca3af;color:#fff}
.eq-pitch .al-foot{display:none}
.eq-pitch .al .pitch{padding-bottom:14px}

/* Fecha del partido más grande */
.mpage-state{font-size:1rem !important;font-weight:900 !important;max-width:170px !important;min-height:0 !important;line-height:1.2 !important;letter-spacing:.03em}

/* Marcador rediseñado: etiqueta de estado, placa con el resultado y la parte debajo */
.mpage-mid { display: flex; flex-direction: column; align-items: center; gap: 9px; }
.mpage-chip { display: inline-flex; align-items: center; gap: 7px; padding: 5px 13px; border-radius: 999px; font: 800 .82rem/1 'Bricolage Grotesque', sans-serif; letter-spacing: .03em; white-space: nowrap; }
.mpage-chip.mc-live { background: #ef4444; color: #fff; box-shadow: 0 4px 12px rgba(239,68,68,.35); }
.mpage-chip.mc-ht { background: #f59e0b; color: #231600; }
.mpage-chip.mc-final { background: rgba(127,127,127,.22); color: var(--text); text-transform: uppercase; letter-spacing: .08em; font-size: .72rem; }
.mpage-chip.mc-date { background: none; padding: 0; color: #16a34a; font-size: .78rem; white-space: normal; text-align: center; max-width: 118px; line-height: 1.2; }
.mc-dot { width: 7px; height: 7px; border-radius: 50%; background: #fff; animation: mlbPulse 1.5s ease-out infinite; }
.mpage-plate { padding: 6px 18px 7px; border-radius: 18px; background: rgba(127,127,127,.14); border: 1px solid rgba(127,127,127,.28); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.mpage-plate.vs { background: none; border-color: transparent; padding: 0; }
.mpage-plate .mpage-score { font-variant-numeric: tabular-nums; line-height: 1; letter-spacing: .02em; }
.mpage-period { font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }

/* Cabecera del partido recolocada: Liga/jornada arriba del todo, marcador centrado con los equipos a los lados */
.mpage-top { display: flex !important; flex-direction: column; justify-content: flex-start; padding: 14px 12px 18px !important; min-height: 0 !important; }
.mpage-top > .pp-refresh { position: absolute !important; top: 8px; right: 8px; width: 32px; height: 32px; z-index: 3; }
.mpage-topline { margin: 0 !important; padding: 0 40px; }
.mpage-comp { font-size: .8rem; }
.mpage-teams { margin: auto 0 0 !important; padding: 46px 0 22px !important; grid-template-columns: 1fr auto 1fr !important; align-items: center !important; column-gap: 8px; }
.mpage-team { transform: none !important; margin: 0 !important; justify-content: center; text-align: center !important; align-items: center !important; padding: 0 4px !important; font-size: 1.05rem !important; }
.mpage-hasscore .mpage-team { font-size: 1.05rem !important; padding: 0 4px !important; }
/* la etiqueta (minuto/estado) y la parte salen del hueco del marcador, así los equipos quedan a la altura del resultado */
.mpage-mid { position: relative; display: block !important; }
.mpage-mid .mpage-chip { position: absolute; left: 50%; bottom: calc(100% + 9px); transform: translateX(-50%); font-size: 1rem; padding: 7px 17px; }
.mpage-mid .mpage-chip.mc-date { position: static; transform: none; margin: 0 auto 6px; }
.mpage-mid .mpage-period { position: absolute; left: 50%; top: calc(100% + 7px); transform: translateX(-50%); white-space: nowrap; }
.mpage-top-live .mpage-teams { margin: auto 0 0 !important; }

/* Nombres de los clubes pegados al marcador */
.mpage-teams { column-gap: 4px !important; }
.mpage-team.home { justify-content: flex-end !important; align-items: flex-end !important; text-align: right !important; padding: 0 2px 0 0 !important; }
.mpage-team.away { justify-content: flex-start !important; align-items: flex-start !important; text-align: left !important; padding: 0 0 0 2px !important; }
.mpage-hasscore .mpage-team.home { padding: 0 2px 0 0 !important; }
.mpage-hasscore .mpage-team.away { padding: 0 0 0 2px !important; }

/* ===== Cabecera del partido con el estadio del local de fondo ===== */
.mpage-top.has-stadium { isolation: isolate; background: #0b1a12 !important; color: #fff; border: 0; }
.mpage-top.has-stadium::before { content: ""; position: absolute; inset: 0; z-index: -2; background: var(--mp-stadium) center/cover no-repeat; transform: scale(1.05); animation: mpKen 24s ease-in-out infinite alternate; }
.mpage-top.has-stadium::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(4,10,8,.55) 0%, rgba(4,10,8,.38) 40%, rgba(4,10,8,.78) 100%); }
@keyframes mpKen { from { transform: scale(1.05) translateX(0); } to { transform: scale(1.12) translateX(-1.5%); } }
@media (prefers-reduced-motion: reduce) { .mpage-top.has-stadium::before { animation: none; } }
.mpage-top.has-stadium .mpage-comp { color: #86efac; text-shadow: 0 1px 8px rgba(0,0,0,.6); }
.mpage-top.has-stadium .mpage-team { color: #fff; text-shadow: 0 2px 10px rgba(0,0,0,.75); }
.mpage-top.has-stadium .mpage-score { color: #fff; text-shadow: 0 2px 14px rgba(0,0,0,.6); }
.mpage-top.has-stadium .mpage-plate { background: rgba(8,14,12,.46); border-color: rgba(255,255,255,.22); }
.mpage-top.has-stadium .mpage-period { color: rgba(255,255,255,.82); }
.mpage-top.has-stadium .mpage-bgcrest { opacity: .38; mix-blend-mode: luminosity; filter: saturate(1.2) drop-shadow(0 6px 18px rgba(0,0,0,.5)); }
.mpage-top.has-stadium .pp-refresh { background: rgba(8,14,12,.5); color: #fff; border-color: rgba(255,255,255,.25); }
.mpage-top.has-stadium .mpage-chip { box-shadow: 0 2px 10px rgba(0,0,0,.35); }

/* ===== Dos accesos rápidos bajo la cabecera ===== */
.mpage-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 12px 8px; }
.mpa { position: relative; display: flex; align-items: center; gap: 10px; min-width: 0; padding: 12px 12px; border-radius: 16px; border: 1px solid rgba(127,127,127,.28); background: var(--card, #fff); color: inherit; font: inherit; text-align: left; text-decoration: none; cursor: pointer; -webkit-tap-highlight-color: transparent; transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease; }
.mpa:active { transform: scale(.97); }
.mpa-ico { flex: none; width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center; }
.mpa-ico svg { width: 20px; height: 20px; }
.mpa-tx { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mpa-tx b { font-size: .88rem; font-weight: 800; line-height: 1.15; white-space: normal; overflow-wrap: break-word; }
.mpa-tx small { font-size: .66rem; font-weight: 600; opacity: .72; line-height: 1.15; white-space: normal; overflow-wrap: break-word; }
.mpa-data { background: linear-gradient(135deg, #16a34a, #0f7a37); color: #fff; border-color: transparent; box-shadow: 0 8px 20px -10px rgba(22,163,74,.7); }
.mpa-data .mpa-ico { background: rgba(255,255,255,.18); }
.mpa-pts .mpa-ico { background: rgba(245,158,11,.16); color: #f59e0b; }
.mpa-pts { background: var(--card, #fff); }
.mpa-live { position: absolute; top: -7px; right: 10px; padding: 2px 8px; border-radius: 999px; background: #ef4444; color: #fff; font-size: .58rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 2px 8px rgba(239,68,68,.5); }

/* ===== Deslizamiento lateral entre pestañas de los datos ===== */
@keyframes lvSl { from { opacity: 0; transform: translateX(26px); } to { opacity: 1; transform: none; } }
@keyframes lvSr { from { opacity: 0; transform: translateX(-26px); } to { opacity: 1; transform: none; } }
.lv-sl { animation: lvSl .26s cubic-bezier(.2,.8,.2,1); }
.lv-sr { animation: lvSr .26s cubic-bezier(.2,.8,.2,1); }
.livepage { touch-action: pan-y pinch-zoom; }
.lv-tabs { overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.lv-tabs::-webkit-scrollbar { display: none; }
@media (prefers-reduced-motion: reduce) { .lv-sl, .lv-sr { animation: none; } }

/* Cabecera siempre oscura (sin parpadeo); la foto del estadio aparece con un fundido */
.mpage-top.has-stadium { background: linear-gradient(180deg, #0f1f17, #08110c) !important; }
.mpage-top.has-stadium::before { opacity: 0; transition: opacity .6s ease; animation: none; }
.mpage-top.has-stadium.stadium-on::before { opacity: 1; animation: mpKen 24s ease-in-out infinite alternate; }
.mpage-top .mpage-tcrest { width: 54px; height: 54px; object-fit: contain; filter: drop-shadow(0 4px 10px rgba(0,0,0,.55)); }
.mpage-top .mpage-team { flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; gap: 6px; }
.mpage-top .mpage-bgcrest { display: none !important; }

/* Sin desplazamientos raros al cambiar de pestaña en los datos */
.livepage { overflow-x: clip; overscroll-behavior-x: none; }
html, body { overflow-anchor: auto; }
.lv-sl, .lv-sr { will-change: transform, opacity; }

/* Partido sin empezar: hora en la placa y estado de las alineaciones debajo, centrado */
.mpage-plate.pre { background: rgba(8,14,12,.5); border-color: rgba(255,255,255,.24); padding: 7px 20px 8px; display: flex; flex-direction: column; align-items: center; gap: 2px; min-width: 96px; }
.mpage-pre-d { font-size: .66rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: rgba(255,255,255,.78); white-space: nowrap; }
.mpage-plate.pre .mpage-pre-t { font-size: clamp(1.6rem, 8vw, 2.1rem); letter-spacing: .01em; }
.mpage-top:not(.has-stadium) .mpage-pre-d { color: var(--muted); }
.mpage-mid .mpage-period.mpage-prenote { display: inline-flex; align-items: center; gap: 5px; padding: 4px 11px; border-radius: 999px; background: rgba(34,197,94,.2); border: 1px solid rgba(34,197,94,.55); color: #86efac; font-size: .66rem; font-weight: 800; letter-spacing: .04em; white-space: nowrap; text-shadow: none; }
.eq-calmore{align-self:center;margin:4px 0 2px;padding:8px 18px;border-radius:999px;border:1.5px solid var(--border);background:var(--card-solid,#fff);color:inherit;font:800 .78rem 'Bricolage Grotesque',sans-serif;cursor:pointer}
.eq-calrow.hidden{display:none !important}

/* Calendario del club: filas más bajas y badge casa/fuera más cuidado */
.eq-cal{gap:5px}
.eq-calrow{padding:7px 10px}
.eq-calrow svg.ffx-ha,.eq-next svg.ffx-ha{width:24px;height:24px;padding:5px;margin:0;flex:none;color:#fff}
.eq-calrow svg.ffx-ha.h,.eq-next svg.ffx-ha.h{background:#16a34a}
.eq-calrow svg.ffx-ha.a,.eq-next svg.ffx-ha.a{background:#6366f1}
/* Casa / fuera: mismo badge en la ficha del jugador (próximos partidos) */
.ffx-top svg.ffx-ha,.ffx-r svg.ffx-ha{color:#fff;box-sizing:border-box}
.ffx-top svg.ffx-ha{width:20px;height:20px;padding:4px}
.ffx-top svg.ffx-ha.h,.ffx-r svg.ffx-ha.h{background:#16a34a}
.ffx-top svg.ffx-ha.a,.ffx-r svg.ffx-ha.a{background:#6366f1}
.pl-ast { position: absolute; right: -3px; bottom: -4px; display: inline-flex; align-items: center; font-size: .78rem; line-height: 1; filter: drop-shadow(0 1px 2px rgba(0,0,0,.45)); }
.pl-ast i { font-style: normal; font-size: .58rem; font-weight: 900; line-height: 1; background: #0f172a; color: #fff; border-radius: 6px; padding: 1px 4px; margin-left: -2px; align-self: flex-end; }

/* Equipos: cabecera sencilla como "Analiza tu equipo" (sin degradado ni buscador) */
.eqi-hero{padding:0 2px;border:0;border-radius:0;background:none;margin-bottom:12px}
.eqi-hero .eq-h1{font-size:1.5rem;letter-spacing:-.02em;margin:0 0 4px}
.eqi-hero .eqi-sub{margin:0;font-size:.84rem;color:var(--muted)}

/* Cabecera con estadio: "FINAL" y logo de la tele legibles sobre la foto (Edu 02/11) */
.mpage-top.has-stadium .mpage-chip.mc-final { background: rgba(8,14,12,.78); color: #fff; border: 1px solid rgba(255,255,255,.35); font-size: .9rem; letter-spacing: .1em; padding: 7px 18px; text-shadow: none; }
.mpage-top.has-stadium .mpage-tv { background: #fff; padding: 4px 9px; border-radius: 9px; box-shadow: 0 2px 10px rgba(0,0,0,.35); }
.mpage-top.has-stadium .mpage-tv img { height: 20px; max-width: 70px; }

/* Sin el título verde "Partido finalizado" sobre el campo (Edu 02/11) */
.mpage-xi-done > .mpage-xi-h:empty { display: none; }
