/* ============================================================================
   Factor Partido v3 — Decision App
   Fondo casi negro, cards gris oscuro, texto blanco, acento verde lima,
   rojo solo para pérdida, ámbar para riesgo/espera. Sin gradientes
   genéricos ni glassmorphism. Border radius moderado. Mobile-first.
   ========================================================================== */

:root {
  /* --- v3.2 — design tokens del mockup premium aprobado (FASE B) --------- */
  /* Fondo casi negro, superficies carbón en capas, bordes sutiles. Verde
     Factor reservado para acciones/estados importantes — no verde neón por
     toda la página. Ámbar para ESPERAR, rojo sobrio para NO JUGAR. */
  --fp-bg:           #071012;
  --fp-surface:      #0D1619;
  --fp-surface-2:    #111C20;
  --fp-surface-3:    #152126;
  --fp-border:       #213036;

  --fp-text:         #F4F7F6;
  --fp-muted:        #8D999D;
  --fp-muted-2:      #647176;

  /* v3.2.2: verde ligeramente menos neón que la FASE B original (#59E56A),
     para un acabado más premium/fintech — mismo uso restringido (acción
     principal, mejor cuota, ganancias, nav activo, Factor Score alto). */
  --fp-accent:       #58DF6A;
  --fp-accent-soft:  rgba(88, 223, 106, .12);
  --fp-accent-dim:   #3D9E49;

  --fp-warning:      #D9B13B;
  --fp-warning-soft: rgba(217, 177, 59, .12);

  --fp-danger:       #EA5B5B;
  --fp-danger-soft:  rgba(234, 91, 91, .12);

  /* --- alias de compatibilidad: mismos valores, nombres anteriores ------- */
  /* Todo el HTML/CSS existente sigue funcionando sin tocarse; el color
     real que se ve en pantalla es el de arriba en los dos casos. */
  --fp-bg-elev:      var(--fp-surface);
  --fp-card:         var(--fp-surface-2);
  --fp-card-2:       var(--fp-surface-3);
  --fp-border-soft:  var(--fp-border);
  --fp-text-dim:     var(--fp-muted);
  --fp-text-mute:    var(--fp-muted-2);
  --fp-acid:         var(--fp-accent);
  --fp-acid-dim:     var(--fp-accent-dim);
  --fp-acid-bg:      var(--fp-accent-soft);
  --fp-amber:        var(--fp-warning);
  --fp-amber-bg:     var(--fp-warning-soft);
  --fp-red:          var(--fp-danger);
  --fp-red-bg:       var(--fp-danger-soft);
  --fp-blue:         #4da6ff;

  --fp-radius-sm: 8px;
  --fp-radius:    14px;
  --fp-radius-lg: 20px;

  --fp-space-1: 4px;
  --fp-space-2: 8px;
  --fp-space-3: 12px;
  --fp-space-4: 16px;
  --fp-space-5: 24px;
  --fp-space-6: 32px;

  --fp-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fp-nav-h: 64px;
  --fp-topbar-h: 56px;
  --fp-container-max: 1180px;
}

* { box-sizing: border-box; }

html, body {
  margin: 0; padding: 0;
  background: var(--fp-bg);
  color: var(--fp-text);
  font-family: var(--fp-font);
  -webkit-font-smoothing: antialiased;
}

body.fp3-app {
  padding-bottom: calc(var(--fp-nav-h) + env(safe-area-inset-bottom, 0px));
  min-height: 100vh;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button { font-family: inherit; }

/* --- Accesibilidad: foco visible y objetivo táctil mínimo (~44px) -------- */
a:focus-visible, button:focus-visible, [tabindex]:focus-visible, input:focus-visible, summary:focus-visible {
  outline: 2px solid var(--fp-accent);
  outline-offset: 2px;
  border-radius: 4px;
}

.fp3-shell {
  max-width: 560px;
  margin: 0 auto;
  padding: 0 var(--fp-space-4);
}

/* --- Barra superior --------------------------------------------------- */
.fp3-topbar {
  position: sticky; top: 0; z-index: 20;
  background: rgba(10, 11, 13, 0.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--fp-border-soft);
}
.fp3-topbar__inner {
  max-width: 560px; margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between;
  height: var(--fp-topbar-h);
  padding: 0 var(--fp-space-4);
}
.fp3-logo {
  font-weight: 800; font-size: 15px; letter-spacing: 0.02em;
  display: flex; align-items: center; gap: 8px;
}
.fp3-logo__mark {
  width: 28px; height: 28px; border-radius: 8px; flex: 0 0 auto;
  background: var(--fp-acid); color: #06210a;
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 800; letter-spacing: 0;
}
.fp3-logo__text { display: flex; flex-direction: column; line-height: 1.2; }
.fp3-logo__name { font-size: 13px; font-weight: 800; }
.fp3-logo__tag { font-size: 10px; font-weight: 600; color: var(--fp-text-dim); text-transform: none; letter-spacing: 0; }
.fp3-topbar__date {
  font-size: 12px; color: var(--fp-text-dim);
}
.fp3-topbar__icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; min-height: 36px; border-radius: 50%;
  color: var(--fp-text-dim); flex: 0 0 auto;
}

/* --- Subheader (volver + título, pantallas de detalle) ------------------- */
.fp3-subheader {
  display: flex; align-items: center; gap: var(--fp-space-2);
  padding: var(--fp-space-2) 0;
}
.fp3-subheader__back {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; min-height: 32px; border-radius: 50%;
  color: var(--fp-text); flex: 0 0 auto;
}
.fp3-subheader__title {
  flex: 1; text-align: center; font-size: 14px; font-weight: 700;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.fp3-subheader__spacer { width: 32px; flex: 0 0 auto; }

/* --- Bottom nav --------------------------------------------------------- */
.fp3-nav {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 30;
  height: calc(var(--fp-nav-h) + env(safe-area-inset-bottom, 0px));
  padding-bottom: env(safe-area-inset-bottom, 0px);
  background: var(--fp-bg-elev);
  border-top: 1px solid var(--fp-border-soft);
  display: flex;
}
.fp3-nav__item {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 3px; color: var(--fp-text-mute); font-size: 11px; font-weight: 600;
  transition: color .18s ease;
}
.fp3-nav__item svg { width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.8; }
.fp3-nav__item.is-active { color: var(--fp-acid); }
.fp3-nav__item.is-active svg { stroke: var(--fp-acid); }

/* --- Cards ---------------------------------------------------------------*/
.fp3-card {
  background: var(--fp-card);
  border: 1px solid var(--fp-border-soft);
  border-radius: var(--fp-radius);
  padding: var(--fp-space-4);
  margin-bottom: var(--fp-space-4);
  transition: border-color .18s ease, transform .18s ease;
}
/* Elevación mínima solo en cards que son enlaces enteros (oportunidad,
   partido en lista) — sección "microinteracciones": discreto, sin glow. */
a > .fp3-card, a.fp3-card {
  transition: border-color .18s ease, transform .15s ease;
}
a:hover > .fp3-card, a.fp3-card:hover {
  border-color: var(--fp-border);
  transform: translateY(-1px);
}
a:active > .fp3-card, a.fp3-card:active {
  transform: translateY(0);
}
.fp3-card--flat { background: transparent; border: none; padding: 0; }
.fp3-card--tight { padding: var(--fp-space-3); }

.fp3-section-title {
  font-size: 13px; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.06em; color: var(--fp-text-dim);
  margin: var(--fp-space-5) 0 var(--fp-space-2);
}

/* --- Tipografía numérica grande ------------------------------------------*/
.fp3-num {
  font-variant-numeric: tabular-nums;
  font-weight: 800;
}
.fp3-num--xl { font-size: 34px; line-height: 1.1; }
.fp3-num--lg { font-size: 22px; }

.fp3-muted { color: var(--fp-text-dim); }
.fp3-mute2 { color: var(--fp-text-mute); }
.fp3-small { font-size: 12px; }
.fp3-center { text-align: center; }

/* --- Badges / estados ------------------------------------------------- */
.fp3-badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 10px; border-radius: 999px;
  font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em;
  border: 1px solid transparent;
}
.fp3-badge--acid  { background: var(--fp-acid-bg); color: var(--fp-acid); border-color: rgba(182,255,26,0.3); }
.fp3-badge--amber { background: var(--fp-amber-bg); color: var(--fp-amber); border-color: rgba(255,176,32,0.3); }
.fp3-badge--red   { background: var(--fp-red-bg); color: var(--fp-red); border-color: rgba(255,77,79,0.3); }
.fp3-badge--muted { background: var(--fp-card-2); color: var(--fp-text-dim); border-color: var(--fp-border); }

/* --- Botones ------------------------------------------------------------ */
.fp3-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; border-radius: var(--fp-radius-sm);
  min-height: 44px; padding: 12px 18px; font-weight: 700; font-size: 14px;
  border: 1px solid var(--fp-border); background: var(--fp-card-2); color: var(--fp-text);
  cursor: pointer; width: 100%;
  transition: background-color .18s ease, border-color .18s ease, transform .12s ease;
}
.fp3-btn:active { transform: scale(.98); }
.fp3-btn--acid { background: var(--fp-acid); color: #06210a; border-color: var(--fp-acid); }
.fp3-btn--ghost { background: transparent; }
.fp3-btn--sm { padding: 8px 12px; font-size: 13px; width: auto; }
.fp3-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.fp3-btn-row { display: flex; gap: var(--fp-space-2); }
.fp3-btn-row .fp3-btn { flex: 1; }

/* --- Selector horizontal de ligas ---------------------------------------*/
.fp3-leagues {
  display: flex; gap: var(--fp-space-2); overflow-x: auto;
  padding: var(--fp-space-1) 0 var(--fp-space-2);
  scrollbar-width: none;
}
.fp3-leagues::-webkit-scrollbar { display: none; }
.fp3-leagues__chip {
  flex: 0 0 auto; padding: 8px 14px; border-radius: 999px;
  background: var(--fp-card-2); border: 1px solid var(--fp-border);
  font-size: 12px; font-weight: 600; color: var(--fp-text-dim); white-space: nowrap;
  display: inline-flex; align-items: center; gap: 6px;
}
.fp3-leagues__chip.is-active { background: var(--fp-acid-bg); color: var(--fp-acid); border-color: rgba(182,255,26,0.3); }

/* --- Logos reales (escudos/competiciones), sección E del contrato v3.2 -- */
/* Tamaño consistente vía atributos width/height inline (fp3_crest_html() /
   fp3_league_logo_html()); estas reglas solo fijan el recorte/alineación. */
.fp3-league-logo {
  border-radius: 4px; object-fit: contain; flex: 0 0 auto; vertical-align: middle;
  background: var(--fp-card-2);
}
.fp3-crest img {
  width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: block;
}

/* --- Tarjeta de partido / oportunidad ------------------------------------*/
.fp3-match-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: var(--fp-space-3) 0; border-bottom: 1px solid var(--fp-border-soft);
}
.fp3-match-row:last-child { border-bottom: none; }
.fp3-teams { display: flex; flex-direction: column; gap: 2px; }
.fp3-team-name { font-size: 14px; font-weight: 600; }
.fp3-crest {
  width: 28px; height: 28px; border-radius: 50%; background: var(--fp-card-2);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 800; color: var(--fp-text-dim); flex: 0 0 auto;
}
.fp3-vs-crests { display: flex; align-items: center; gap: -8px; }

.fp3-opportunity-card .fp3-hero-crests { display: flex; align-items: center; justify-content: center; gap: var(--fp-space-4); margin-bottom: var(--fp-space-3); }
.fp3-opportunity-card .fp3-vs { color: var(--fp-text-mute); font-weight: 700; font-size: 13px; }

.fp3-kv { display: flex; align-items: baseline; justify-content: space-between; padding: 7px 0; border-bottom: 1px dashed var(--fp-border-soft); }
.fp3-kv:last-child { border-bottom: none; }
.fp3-kv__k { font-size: 13px; color: var(--fp-text-dim); }
.fp3-kv__v { font-size: 14px; font-weight: 700; }

/* --- Rango de probabilidad (barra) --------------------------------------*/
.fp3-range { position: relative; height: 6px; background: var(--fp-card-2); border-radius: 999px; margin: 10px 0; }
.fp3-range__fill { position: absolute; top: 0; bottom: 0; background: var(--fp-acid-dim); border-radius: 999px; }
.fp3-range__point { position: absolute; top: -3px; width: 12px; height: 12px; border-radius: 50%; background: var(--fp-acid); border: 2px solid var(--fp-bg); transform: translateX(-50%); }

/* --- Factor Score dial (legacy, alias visual del ring nuevo) --------------*/
.fp3-score-badge {
  display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
  width: 76px; height: 76px; border-radius: 50%;
  border: 3px solid var(--fp-acid); background: var(--fp-acid-bg);
}
.fp3-score-badge .fp3-num { font-size: 26px; }
.fp3-score-badge.band-descartar { border-color: var(--fp-text-mute); background: var(--fp-card-2); }
.fp3-score-badge.band-observar  { border-color: var(--fp-amber); background: var(--fp-amber-bg); }
.fp3-score-badge.band-jugable   { border-color: var(--fp-acid); background: var(--fp-acid-bg); }
.fp3-score-badge.band-alta_conviccion { border-color: var(--fp-acid); background: var(--fp-acid-bg); }

/* --- Factor Score Ring (componente FactorScoreRing, sección FASE B) -------
   Ring real (conic-gradient), no un simple borde. --ring-pct (0-100) se fija
   inline por instancia (fp3_score_ring_html()). No confundir con
   probabilidad: esto es el Factor Score, una banda de 0 a 100. */
.fp3-ring {
  --ring-size: 76px;
  --ring-color: var(--fp-accent);
  --ring-track: var(--fp-surface-3);
  position: relative;
  width: var(--ring-size); height: var(--ring-size);
  flex: 0 0 auto;
  border-radius: 50%;
  background: conic-gradient(var(--ring-color) calc(var(--ring-pct, 0) * 1%), var(--ring-track) 0);
  display: inline-flex; align-items: center; justify-content: center;
}
.fp3-ring::before {
  content: ""; position: absolute; inset: 6px; border-radius: 50%; background: var(--fp-surface-2);
}
.fp3-ring__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.fp3-ring__value { font-variant-numeric: tabular-nums; font-weight: 800; line-height: 1; font-size: 24px; color: var(--fp-text); }
.fp3-ring__label { font-size: 9px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--fp-muted-2); margin-top: 3px; }

.fp3-ring.band-descartar        { --ring-color: var(--fp-muted-2); }
.fp3-ring.band-observar         { --ring-color: var(--fp-warning); }
.fp3-ring.band-jugable          { --ring-color: var(--fp-accent); }
.fp3-ring.band-alta_conviccion  { --ring-color: var(--fp-accent); }

.fp3-ring--sm { --ring-size: 40px; }
.fp3-ring--sm::before { inset: 4px; }
.fp3-ring--sm .fp3-ring__value { font-size: 13px; }
.fp3-ring--sm .fp3-ring__label { display: none; }

.fp3-ring--lg { --ring-size: 96px; }
.fp3-ring--lg .fp3-ring__value { font-size: 32px; }

/* --- Tabs ------------------------------------------------------------- */
.fp3-tabs { display: flex; gap: var(--fp-space-1); border-bottom: 1px solid var(--fp-border-soft); margin-bottom: var(--fp-space-4); overflow-x: auto; }
.fp3-tab {
  min-height: 44px; padding: 10px 4px; margin-right: var(--fp-space-4);
  font-size: 13px; font-weight: 700; color: var(--fp-text-mute);
  border-bottom: 2px solid transparent; white-space: nowrap;
  background: none; border-top: none; border-left: none; border-right: none; cursor: pointer;
  transition: color .18s ease, border-color .18s ease;
}
.fp3-tab.is-active { color: var(--fp-text); border-bottom-color: var(--fp-acid); }
.fp3-tabpanel { display: none; }
.fp3-tabpanel.is-active { display: block; }

/* --- Acordeón ------------------------------------------------------------*/
.fp3-accordion summary { cursor: pointer; font-weight: 700; padding: var(--fp-space-3) 0; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.fp3-accordion summary::-webkit-details-marker { display: none; }
.fp3-accordion[open] summary { color: var(--fp-acid); }

/* --- Factor list (variables del análisis profundo) -----------------------*/
.fp3-factor {
  padding: var(--fp-space-3) 0; border-bottom: 1px solid var(--fp-border-soft);
}
.fp3-factor:last-child { border-bottom: none; }
.fp3-factor__head { display: flex; justify-content: space-between; font-size: 13px; font-weight: 700; margin-bottom: 3px; }
.fp3-factor__meta { font-size: 11px; color: var(--fp-text-mute); }

/* --- Cancha / lineup ------------------------------------------------------*/
.fp3-pitch {
  background: #10190f; border: 1px solid #1c2b1a; border-radius: var(--fp-radius);
  padding: var(--fp-space-4) var(--fp-space-2); position: relative;
  background-image: repeating-linear-gradient(0deg, #10190f 0 40px, #122010 40px 80px);
}
.fp3-pitch__row { display: flex; justify-content: space-around; margin-bottom: var(--fp-space-4); }
.fp3-player {
  display: flex; flex-direction: column; align-items: center; gap: 4px; width: 58px;
}
.fp3-player__avatar {
  width: 38px; height: 38px; border-radius: 50%; background: var(--fp-card-2);
  border: 2px solid var(--fp-border); display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 800; overflow: hidden;
}
.fp3-player__avatar img { width: 100%; height: 100%; object-fit: cover; }
.fp3-player__avatar.unavailable { border-color: var(--fp-red); opacity: 0.55; }
.fp3-player__name { font-size: 9px; text-align: center; color: var(--fp-text-dim); line-height: 1.2; }

/* --- Bookmaker comparator ---------------------------------------------- */
.fp3-book-row { display: flex; align-items: center; justify-content: space-between; padding: var(--fp-space-2) 0; border-bottom: 1px solid var(--fp-border-soft); }
.fp3-book-row.is-best { background: var(--fp-acid-bg); margin: 0 calc(-1 * var(--fp-space-3)); padding: var(--fp-space-2) var(--fp-space-3); border-radius: var(--fp-radius-sm); }
.fp3-book-row__name { font-size: 13px; font-weight: 600; }
.fp3-book-row__odds { font-size: 16px; font-weight: 800; }
.fp3-book-row__move { font-size: 11px; }
.fp3-book-row__move.up { color: var(--fp-acid); }
.fp3-book-row__move.down { color: var(--fp-red); }

/* --- Stake selector ------------------------------------------------------*/
.fp3-stakes { display: flex; gap: var(--fp-space-2); flex-wrap: wrap; }
.fp3-stake-chip {
  flex: 1 1 60px; min-height: 44px; display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 10px 8px; border-radius: var(--fp-radius-sm);
  background: var(--fp-card-2); border: 1px solid var(--fp-border); font-weight: 700; cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease;
}
.fp3-stake-chip.is-active { background: var(--fp-acid); color: #06210a; border-color: var(--fp-acid); }
.fp3-stake-custom { width: 100%; margin-top: var(--fp-space-2); padding: 10px; border-radius: var(--fp-radius-sm); background: var(--fp-card-2); border: 1px solid var(--fp-border); color: var(--fp-text); font-size: 14px; }

/* --- Empty / disclaimer -------------------------------------------------- */
.fp3-empty { text-align: center; padding: var(--fp-space-6) var(--fp-space-4); color: var(--fp-text-dim); }
.fp3-disclaimer {
  font-size: 11px; color: var(--fp-text-mute); border: 1px dashed var(--fp-border);
  border-radius: var(--fp-radius-sm); padding: var(--fp-space-3); margin-top: var(--fp-space-3);
}
.fp3-sim-tag {
  display: inline-block; background: var(--fp-amber-bg); color: var(--fp-amber);
  font-size: 10px; font-weight: 800; letter-spacing: 0.05em; padding: 2px 8px; border-radius: 4px;
}

/* --- Skeleton loading ------------------------------------------------- */
.fp3-skeleton { background: linear-gradient(90deg, var(--fp-card) 25%, var(--fp-card-2) 37%, var(--fp-card) 63%); background-size: 400% 100%; animation: fp3-shimmer 1.4s ease infinite; border-radius: var(--fp-radius-sm); }
@keyframes fp3-shimmer { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }

/* --- Curva de banca (sparkline simple) ---------------------------------- */
.fp3-curve { width: 100%; height: 90px; }
.fp3-curve__line { stroke: var(--fp-accent); }

/* --- StatGrid (grilla de estadísticas compactas) -------------------------*/
.fp3-stat-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--fp-space-2); }
.fp3-stat {
  background: var(--fp-card-2); border: 1px solid var(--fp-border); border-radius: var(--fp-radius-sm);
  padding: var(--fp-space-2) 4px; text-align: center;
}
.fp3-stat__value { font-variant-numeric: tabular-nums; font-weight: 800; font-size: 17px; margin: 0; }
.fp3-stat__label { font-size: 10px; color: var(--fp-text-dim); margin: 2px 0 0; text-transform: uppercase; letter-spacing: 0.03em; }
@media (max-width: 360px) {
  .fp3-stat-grid { grid-template-columns: repeat(2, 1fr); }
}

/* --- Dos columnas (bajas confirmadas local/visitante, sección 8) --------- */
.fp3-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: var(--fp-space-3); }
.fp3-two-col__head { font-size: 12px; font-weight: 700; color: var(--fp-text-dim); margin: 0 0 6px; }
@media (max-width: 380px) {
  .fp3-two-col { grid-template-columns: 1fr; }
}

/* --- Utilidades ----------------------------------------------------------*/
.fp3-flex { display: flex; align-items: center; }
.fp3-flex-between { display: flex; align-items: center; justify-content: space-between; }
.fp3-gap-2 { gap: var(--fp-space-2); }
.fp3-gap-3 { gap: var(--fp-space-3); }
.fp3-mt-2 { margin-top: var(--fp-space-2); }
.fp3-mt-3 { margin-top: var(--fp-space-3); }
.fp3-mt-4 { margin-top: var(--fp-space-4); }
.fp3-mb-0 { margin-bottom: 0; }
.text-acid { color: var(--fp-acid); }
.text-red { color: var(--fp-red); }
.text-amber { color: var(--fp-amber); }

@media (min-width: 600px) {
  .fp3-nav { max-width: 560px; left: 50%; transform: translateX(-50%); border-left: 1px solid var(--fp-border-soft); border-right: 1px solid var(--fp-border-soft); }
}

/* ============================================================================
   Desktop/tablet (FASE B — responsive). Móvil sigue siendo una sola columna
   (.fp3-layout es un simple contenedor de bloque hasta el breakpoint): NO se
   estira una tarjeta móvil a pantalla completa, se abre un container más
   ancho con columna principal + panel secundario donde el contenido lo
   permite (Home, Partido). ============================================== */
@media (min-width: 900px) {
  .fp3-shell, .fp3-topbar__inner {
    max-width: var(--fp-container-max);
  }
  .fp3-nav {
    max-width: var(--fp-container-max);
  }

  .fp3-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: var(--fp-space-5);
    align-items: start;
  }
  .fp3-layout__aside {
    position: sticky;
    top: calc(var(--fp-topbar-h) + var(--fp-space-4));
  }
}

/* --- Toast in-app (sección 16 v3.3) --------------------------------------- */
.fp3-toast-container {
  position: fixed; left: 50%; bottom: calc(var(--fp-bottomnav-h, 64px) + 16px);
  transform: translateX(-50%); z-index: 200; display: flex; flex-direction: column; gap: 8px;
  width: min(92vw, 380px); pointer-events: none;
}
.fp3-toast {
  background: var(--fp-surface-2); border: 1px solid var(--fp-border); color: var(--fp-text);
  border-left: 3px solid var(--fp-accent); border-radius: 10px; padding: 10px 14px;
  font-size: 13px; box-shadow: 0 8px 24px rgba(0,0,0,.35);
  opacity: 0; transform: translateY(8px); transition: opacity .2s ease, transform .2s ease;
}
.fp3-toast.is-visible { opacity: 1; transform: translateY(0); }

/* --- v3.4.1 Match Story / Player detail -------------------------------- */
.fp3-player--link { text-decoration: none; color: inherit; border-radius: 10px; }
.fp3-player--link:hover .fp3-player__avatar { border-color: var(--fp-acid); }
.fp3-player--link:hover .fp3-player__name { color: var(--fp-text); }
.fp3-performer {
  display:flex; align-items:center; gap:10px; padding:10px 0;
  border-bottom:1px solid var(--fp-border-soft); text-decoration:none; color:inherit;
}
.fp3-performer:last-child { border-bottom:0; }
.fp3-performer:hover strong { color:var(--fp-acid); }
.fp3-rating {
  min-width:42px; height:34px; padding:0 8px; border-radius:10px;
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--fp-acid-bg); border:1px solid var(--fp-acid);
  color:var(--fp-acid); font-weight:800; font-variant-numeric:tabular-nums;
}
.fp3-rating--lg { min-width:58px; height:48px; font-size:20px; border-radius:14px; }
.fp3-squad-strip { display:flex; gap:8px; flex-wrap:wrap; }
.fp3-squad-chip {
  display:inline-flex; align-items:center; gap:6px; max-width:180px;
  padding:6px 8px; border:1px solid var(--fp-border-soft); border-radius:999px;
  background:var(--fp-card-2); color:var(--fp-text-dim); text-decoration:none; font-size:10px;
}
a.fp3-squad-chip:hover { border-color:var(--fp-acid); color:var(--fp-text); }

/* ========================================================================
   v3.5 · Bet-style intelligence, sin copiar identidad visual de terceros
   ======================================================================== */
.fp3-picks-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:12px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x proximity}.fp3-pick-card{scroll-snap-align:start;display:block;min-width:0;padding:14px;border:1px solid var(--fp-border-soft);border-radius:18px;background:linear-gradient(180deg,var(--fp-card),var(--fp-card-2));color:inherit;text-decoration:none}.fp3-pick-card:hover{border-color:var(--fp-acid)}.fp3-pick-teams{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;margin-top:14px;text-align:center}.fp3-pick-teams strong{font-size:13px;line-height:1.25}.fp3-pick-teams strong span{color:var(--fp-text-dim);font-weight:500}.fp3-pick-market{font-weight:800;font-size:15px;margin-top:14px}.fp3-pick-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}.fp3-pick-metrics span{padding:8px;border-radius:12px;background:var(--fp-surface-2);text-align:center}.fp3-pick-metrics small{display:block;color:var(--fp-text-dim);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.fp3-pick-metrics strong{display:block;margin-top:3px;font-size:14px}.fp3-pick-card>p{font-size:11px;color:var(--fp-text-dim);margin:10px 0 0}

.fp3-statboard{padding-top:12px!important}.fp3-statrow{padding:9px 0}.fp3-statrow+.fp3-statrow{border-top:1px solid var(--fp-border-soft)}.fp3-statrow__values{display:grid;grid-template-columns:64px 1fr 64px;align-items:center;gap:8px;font-size:11px}.fp3-statrow__values strong:first-child{text-align:left}.fp3-statrow__values strong:last-child{text-align:right}.fp3-statrow__values span{text-align:center;color:var(--fp-text-dim)}.fp3-statrow__bars{display:grid;grid-template-columns:1fr 1fr;gap:5px;height:8px;margin-top:7px}.fp3-statrow__bars:before,.fp3-statrow__bars:after{content:"";grid-row:1;background:var(--fp-border);border-radius:99px}.fp3-statrow__bars i{grid-row:1;z-index:1;border-radius:99px}.fp3-statrow__bars .home{grid-column:1;justify-self:end;background:#263648}.fp3-statrow__bars .away{grid-column:2;justify-self:start;background:#0f766e}.fp3-pulse-card{overflow:hidden}.fp3-pulse{display:block;width:100%;height:auto;color:var(--fp-text)}

.fp3-story-highlight{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;background:var(--fp-surface-2);margin-top:8px}.fp3-story-highlight small{color:var(--fp-text-dim);text-transform:uppercase;letter-spacing:.06em}.fp3-story-highlight strong{margin-left:auto}.fp3-story-highlight span{width:100%;font-size:10px;color:var(--fp-text-dim)}

.fp3-timeline{position:relative;padding:4px 14px!important}.fp3-timeline:before{content:"";position:absolute;top:10px;bottom:10px;left:50%;width:1px;background:var(--fp-border-soft)}.fp3-timeline-event{position:relative;display:grid;grid-template-columns:1fr 52px 1fr;min-height:68px;align-items:center;border-bottom:1px solid var(--fp-border-soft)}.fp3-timeline-event:last-child{border-bottom:0}.fp3-timeline-event__minute{grid-column:2;grid-row:1;text-align:center;color:var(--fp-text-dim);font-weight:800;z-index:2}.fp3-timeline-event__team{display:none}.fp3-timeline-event__content{display:flex;align-items:center;gap:8px;min-width:0}.fp3-timeline-event__content strong{font-size:12px}.fp3-timeline-event__content small{display:block;color:var(--fp-text-dim);font-size:10px}.fp3-timeline-event.is-home .fp3-timeline-event__content{grid-column:1;grid-row:1;justify-content:flex-end;text-align:right}.fp3-timeline-event.is-away .fp3-timeline-event__content{grid-column:3;grid-row:1;justify-content:flex-start;text-align:left}.fp3-timeline-event__icon{display:inline-flex;flex:0 0 auto}.fp3-timeline-event.is-home .fp3-timeline-event__icon{order:2}

.fp3-market-forecast details{border:1px solid var(--fp-border-soft);border-radius:14px;background:var(--fp-card);overflow:hidden;margin:8px 0}.fp3-market-forecast summary{cursor:pointer;padding:13px 14px;font-weight:800;list-style:none}.fp3-market-forecast summary::-webkit-details-marker{display:none}.fp3-market-forecast summary:after{content:"+";float:right;color:var(--fp-text-dim)}.fp3-market-forecast details[open] summary:after{content:"–"}.fp3-forecast-table{padding:0 14px 10px}.fp3-forecast-table>div{display:grid;grid-template-columns:60px 1fr 1fr 90px;gap:6px;align-items:center;padding:9px 0;border-top:1px solid var(--fp-border-soft);font-size:11px;text-align:center}.fp3-forecast-table .head{color:var(--fp-text-dim);font-size:9px}.fp3-forecast-table .pill{display:inline-flex;justify-self:center;padding:4px 9px;border-radius:999px;background:var(--fp-acid-bg);color:var(--fp-acid);font-weight:800}.fp3-forecast-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 14px 14px}.fp3-forecast-cards>div{padding:12px 8px;border-radius:12px;background:var(--fp-surface-2);text-align:center}.fp3-forecast-cards small{display:block;color:var(--fp-text-dim);font-size:9px}.fp3-forecast-cards strong{display:block;font-size:18px;margin-top:4px}.fp3-forecast-cards .accent{border:1px solid var(--fp-acid);background:var(--fp-acid-bg)}

.fp3-table-wrap{overflow-x:auto}.fp3-standings{border-collapse:collapse;width:100%;min-width:620px;font-size:11px}.fp3-standings th,.fp3-standings td{padding:10px 8px;border-bottom:1px solid var(--fp-border-soft);text-align:center}.fp3-standings th:nth-child(2),.fp3-standings td:nth-child(2){text-align:left}.fp3-standing-team{display:flex;align-items:center;gap:8px;font-weight:700}.fp3-standing-team img{width:24px;height:24px;object-fit:contain}.fp3-standings td small{display:block;margin:3px 0 0 32px;color:var(--fp-text-dim)}

.fp3-editorial-hero h1,.fp3-article-head h1{font-size:clamp(26px,6vw,46px);line-height:1.03;letter-spacing:-.035em;margin:14px 0 10px}.fp3-editorial-hero p,.fp3-article-deck{color:var(--fp-text-dim);font-size:14px;line-height:1.55}.fp3-editorial-grid{display:grid;gap:12px}.fp3-editorial-card{padding:16px;border:1px solid var(--fp-border-soft);border-radius:18px;background:var(--fp-card);color:inherit;text-decoration:none}.fp3-editorial-card:hover{border-color:var(--fp-acid)}.fp3-editorial-match{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:10px;margin-top:16px;text-align:center}.fp3-editorial-match strong{font-size:14px}.fp3-editorial-match strong span{color:var(--fp-text-dim);font-weight:400}.fp3-editorial-card>p{font-size:11px;color:var(--fp-text-dim)}.fp3-editorial-link{color:var(--fp-acid);font-weight:800;font-size:11px}.fp3-article{max-width:900px;margin:0 auto}.fp3-article-head{padding:6px 0 10px}.fp3-article-byline{font-size:10px;color:var(--fp-text-dim);border-top:1px solid var(--fp-border-soft);padding-top:10px}.fp3-article-section{padding:22px 0;border-bottom:1px solid var(--fp-border-soft)}.fp3-article-section h2{font-size:22px;letter-spacing:-.02em;margin:0 0 12px}.fp3-article-section>p{font-size:14px;line-height:1.7;color:var(--fp-text-dim)}.fp3-compare-grid,.fp3-forecast-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.fp3-compare-grid>div,.fp3-forecast-chip{padding:12px;border:1px solid var(--fp-border-soft);border-radius:14px;background:var(--fp-card)}.fp3-compare-grid span,.fp3-forecast-chip small{display:block;font-size:9px;color:var(--fp-text-dim)}.fp3-compare-grid strong,.fp3-forecast-chip strong{display:block;font-size:22px;margin-top:5px}.fp3-compare-grid small,.fp3-forecast-chip span{display:block;font-size:9px;color:var(--fp-text-dim);margin-top:3px}.fp3-story-list{display:grid;gap:9px}.fp3-story-item{padding:13px;border-left:3px solid var(--fp-acid);background:var(--fp-card);border-radius:0 12px 12px 0}.fp3-story-item p{margin:5px 0;color:var(--fp-text-dim);font-size:12px;line-height:1.55}.fp3-story-item small{color:var(--fp-text-mute)}.fp3-source-grid{display:grid;gap:9px}.fp3-source-grid>a{display:block;padding:12px;border:1px solid var(--fp-border-soft);border-radius:12px;color:inherit;text-decoration:none}.fp3-source-grid>a:hover{border-color:var(--fp-acid)}.fp3-source-grid p{font-size:11px;color:var(--fp-text-dim);line-height:1.45}.fp3-source-grid small{color:var(--fp-text-mute)}.fp3-pick-feature{display:flex;gap:14px;align-items:center;justify-content:space-between}.fp3-pick-feature h3{font-size:20px;margin:10px 0 5px}.fp3-pick-feature p{font-size:11px;color:var(--fp-text-dim);margin:0}.fp3-article-footer{padding:18px 0 40px;color:var(--fp-text-dim);font-size:10px}

@media(min-width:760px){.fp3-picks-strip{grid-auto-flow:initial;grid-template-columns:repeat(3,1fr);overflow:visible}.fp3-editorial-grid{grid-template-columns:repeat(2,1fr)}.fp3-compare-grid,.fp3-forecast-grid{grid-template-columns:repeat(4,1fr)}.fp3-source-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fp3-timeline-event{grid-template-columns:1fr 42px 1fr}.fp3-timeline-event__content strong{font-size:11px}.fp3-forecast-table>div{grid-template-columns:48px 1fr 1fr 72px}.fp3-pick-feature{align-items:flex-start;flex-direction:column}}

/* ========================================================================
   v3.6 · Football Central + Match UX
   Objetivo: fichas legibles tipo centro de partido, sin perder identidad FP.
   ======================================================================== */

/* La columna principal nunca debe desbordarse ni comprimirse por contenido. */
.fp3-layout__main{min-width:0}

/* --- Estadísticas comparadas ------------------------------------------------ */
.fp3-statboard{padding:8px 16px 12px!important;overflow:hidden}
.fp3-statrow{padding:12px 0!important}
.fp3-statrow+.fp3-statrow{border-top:1px solid rgba(255,255,255,.055)}
.fp3-statrow__values{
  display:grid!important;
  grid-template-columns:minmax(58px,84px) minmax(120px,1fr) minmax(58px,84px)!important;
  align-items:center;gap:12px!important;line-height:1.2
}
.fp3-statrow__values strong{font-size:15px!important;font-weight:850;font-variant-numeric:tabular-nums;color:var(--fp-text)}
.fp3-statrow__values strong:first-child{text-align:left!important}
.fp3-statrow__values strong:last-child{text-align:right!important}
.fp3-statrow__values span{text-align:center!important;color:#c2cbce!important;font-size:12px!important;font-weight:650}
.fp3-statrow__bars{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;
  height:7px!important;margin-top:9px!important;position:relative
}
.fp3-statrow__bars:before,.fp3-statrow__bars:after{
  content:"";display:block!important;grid-row:1;height:7px;background:#243238!important;border-radius:999px
}
.fp3-statrow__bars:before{grid-column:1}.fp3-statrow__bars:after{grid-column:2}
.fp3-statrow__bars i{display:block!important;grid-row:1;height:7px;z-index:2;border-radius:999px;max-width:100%}
.fp3-statrow__bars .home{grid-column:1;justify-self:end;background:#506577!important}
.fp3-statrow__bars .away{grid-column:2;justify-self:start;background:#148b83!important}

/* --- Resumen post-partido --------------------------------------------------- */
.fp3-postmatch-read{position:relative;overflow:hidden;padding:20px}
.fp3-postmatch-read:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--fp-acid)}
.fp3-postmatch-read h2{font-size:clamp(20px,4.4vw,28px);line-height:1.15;letter-spacing:-.025em;margin:14px 0 8px}
.fp3-postmatch-read>p{font-size:13px;line-height:1.65;color:#bdc6c9;margin:0}
.fp3-postmatch-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}
.fp3-postmatch-facts>div{padding:11px 12px;background:#0b1518;border:1px solid var(--fp-border-soft);border-radius:12px}
.fp3-postmatch-facts small{display:block;color:var(--fp-text-dim);font-size:9px;text-transform:uppercase;letter-spacing:.065em}
.fp3-postmatch-facts strong{display:block;margin-top:4px;font-size:14px;line-height:1.3}

/* --- Figuras: evita la columna estrecha con un bloque vacío gigante -------- */
.fp3-performers-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:10px!important}
.fp3-performers-grid .fp3-performer{
  display:grid!important;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;
  min-width:0;padding:10px!important;border:1px solid var(--fp-border-soft)!important;border-radius:13px;background:#0b1518
}
.fp3-performers-grid .fp3-performer:last-child{border-bottom:1px solid var(--fp-border-soft)!important}
.fp3-performers-grid .fp3-performer:hover{border-color:rgba(88,223,106,.45)!important;background:#0e191c}
.fp3-performers-grid .fp3-performer strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.fp3-performers-grid .fp3-rating{min-width:40px;height:32px;font-size:12px}

/* --- Timeline editorial: minuto centrado, cada equipo a su lado ------------ */
.fp3-timeline{position:relative;padding:8px 14px!important;overflow:hidden}
.fp3-timeline:before{content:"";position:absolute;top:18px;bottom:18px;left:50%;width:1px;background:#304046;transform:translateX(-.5px)}
.fp3-timeline-event{
  position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr)!important;
  min-height:72px;align-items:center;border-bottom:1px solid rgba(255,255,255,.045)!important
}
.fp3-timeline-event:last-child{border-bottom:0!important}
.fp3-timeline-event__minute{
  grid-column:2!important;grid-row:1!important;justify-self:center;min-width:42px;padding:5px 5px;
  border-radius:999px;background:var(--fp-card);border:1px solid #304046;text-align:center;color:#aab5b8!important;
  font-size:11px;font-weight:800;z-index:3
}
.fp3-timeline-event__content{
  display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:9px;row-gap:2px;min-width:0
}
.fp3-timeline-event__content strong{font-size:12px!important;line-height:1.3;min-width:0}
.fp3-timeline-event__content small{grid-column:2;color:var(--fp-text-dim)!important;font-size:10px!important;line-height:1.35}
.fp3-timeline-event__icon{grid-row:1 / span 2;display:inline-flex!important;width:23px;height:23px;align-items:center;justify-content:center}
.fp3-timeline-event__icon svg{width:17px;height:17px}
.fp3-timeline-event.is-home .fp3-timeline-event__content{grid-column:1!important;grid-row:1!important;text-align:right;grid-template-columns:minmax(0,1fr) auto}
.fp3-timeline-event.is-home .fp3-timeline-event__content strong{grid-column:1}
.fp3-timeline-event.is-home .fp3-timeline-event__content small{grid-column:1}
.fp3-timeline-event.is-home .fp3-timeline-event__icon{grid-column:2;order:initial!important}
.fp3-timeline-event.is-away .fp3-timeline-event__content{grid-column:3!important;grid-row:1!important;text-align:left}
.fp3-timeline-event__team{display:none!important}

/* --- Recovery de alineaciones --------------------------------------------- */
.fp3-lineup-recovery{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border-color:rgba(217,177,59,.35)}
.fp3-lineup-recovery strong{display:block;margin:8px 0 4px;font-size:14px}
.fp3-lineup-recovery p{margin:0;color:var(--fp-text-dim);font-size:11px;line-height:1.5}
.fp3-lineup-recovery .fp3-btn{width:auto;white-space:nowrap}

/* --- Central de fútbol ----------------------------------------------------- */
.fp3-football-central-hero{
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding:22px;
  border:1px solid var(--fp-border-soft);border-radius:20px;background:#0a1417
}
.fp3-football-central-hero h1{font-size:clamp(25px,5vw,42px);line-height:1.02;letter-spacing:-.04em;margin:10px 0 8px}
.fp3-football-central-hero p{max-width:720px;margin:0;color:var(--fp-text-dim);font-size:12px;line-height:1.55}
.fp3-football-central-hero .fp3-btn{width:auto}

.fp3-competition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.fp3-competition-card{
  min-width:0;min-height:126px;padding:14px;border:1px solid var(--fp-border-soft);border-radius:16px;background:var(--fp-card);
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;transition:border-color .18s ease,transform .16s ease,background .18s ease
}
.fp3-competition-card:hover{transform:translateY(-1px);border-color:#405258;background:#101c20}
.fp3-competition-card.is-active{border-color:rgba(88,223,106,.55);background:linear-gradient(180deg,rgba(88,223,106,.07),#101a1d)}
.fp3-competition-logo{height:48px;display:flex;align-items:center;margin-bottom:auto}
.fp3-competition-logo img{width:42px!important;height:42px!important;object-fit:contain}
.fp3-competition-card strong{font-size:12px;line-height:1.3;margin-top:10px}
.fp3-competition-card small{font-size:9px;color:var(--fp-text-dim);margin-top:4px;line-height:1.3}

.fp3-league-hero{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--fp-border-soft);border-radius:18px;background:#0b1518}
.fp3-league-hero__logo{width:70px;height:70px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:#101c20;border:1px solid var(--fp-border-soft);flex:0 0 70px}
.fp3-league-hero__logo img{max-width:54px;max-height:54px;object-fit:contain}
.fp3-league-hero h2{font-size:24px;line-height:1.1;margin:3px 0 5px;letter-spacing:-.025em}
.fp3-league-hero p{margin:0;color:var(--fp-text-dim);font-size:11px}

.fp3-section-tabs{display:flex;gap:6px;overflow:auto;padding-bottom:4px;scrollbar-width:none}
.fp3-section-tabs::-webkit-scrollbar{display:none}
.fp3-section-tabs a{flex:0 0 auto;padding:9px 12px;border:1px solid var(--fp-border-soft);border-radius:999px;color:var(--fp-text-dim);font-size:10px;font-weight:750;white-space:nowrap}
.fp3-section-tabs a.is-active{background:var(--fp-acid-bg);border-color:rgba(88,223,106,.45);color:var(--fp-acid)}

.fp3-central-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.fp3-central-kpis>a{padding:14px;border:1px solid var(--fp-border-soft);border-radius:15px;background:var(--fp-card);min-width:0}
.fp3-central-kpis small,.fp3-central-kpis span{display:block;color:var(--fp-text-dim);font-size:9px}
.fp3-central-kpis strong{display:block;margin:7px 0 5px;font-size:14px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp3-central-kpis span{color:var(--fp-acid)}

.fp3-leaderboard{display:grid;gap:8px}
.fp3-leader-row{display:grid;grid-template-columns:34px 44px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--fp-border-soft);border-radius:14px;background:var(--fp-card)}
.fp3-leader-rank{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:10px;background:#0a1316;color:var(--fp-text-dim);font-size:11px;font-weight:850}
.fp3-leader-row:nth-child(-n+3) .fp3-leader-rank{background:var(--fp-acid-bg);color:var(--fp-acid)}
.fp3-leader-main{min-width:0}.fp3-leader-main>strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp3-leader-main small{display:flex;align-items:center;gap:5px;color:var(--fp-text-dim);font-size:9px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp3-leader-main small img{width:16px;height:16px;object-fit:contain;flex:0 0 16px}
.fp3-leader-value{text-align:right}.fp3-leader-value strong{display:block;font-size:20px;font-variant-numeric:tabular-nums}.fp3-leader-value small{display:block;color:var(--fp-text-dim);font-size:8px;text-transform:uppercase}

.fp3-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fp3-match-tile{padding:13px;border:1px solid var(--fp-border-soft);border-radius:15px;background:var(--fp-card);min-width:0}
.fp3-match-tile:hover{border-color:#405258}
.fp3-match-tile>.fp3-flex-between small{color:var(--fp-text-dim);font-size:9px}
.fp3-match-tile__teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:9px;margin-top:13px}
.fp3-match-tile__teams>span{display:flex;align-items:center;gap:6px;min-width:0;font-size:10px;font-weight:700}
.fp3-match-tile__teams>span:last-child{justify-content:flex-end;text-align:right}
.fp3-match-tile__teams strong{font-size:15px;white-space:nowrap}

.fp3-article-stars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.fp3-article-stars>div{padding:12px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card)}
.fp3-article-stars strong{display:block;font-size:12px}.fp3-article-stars small{display:block;margin-top:4px;color:var(--fp-text-dim);font-size:9px}

/* Deep analysis: feedback visual durante búsqueda multifuente. */
[data-deep-analysis-box]{transition:opacity .2s ease,border-color .2s ease}
[data-deep-analysis-box].is-loading{opacity:.64;border-color:rgba(88,223,106,.38)}
[data-deep-analysis-refresh]:disabled{min-width:min(100%,210px)}

@media (min-width:900px){
  .fp3-layout{grid-template-columns:minmax(0,1fr) 300px;gap:28px}
  .fp3-statboard{padding-left:20px!important;padding-right:20px!important}
  .fp3-performers-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fp3-competition-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}

@media (max-width:720px){
  .fp3-football-central-hero{grid-template-columns:1fr}.fp3-football-central-hero .fp3-btn{width:100%}
  .fp3-competition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fp3-central-kpis{grid-template-columns:1fr}
  .fp3-match-grid{grid-template-columns:1fr}
  .fp3-lineup-recovery{grid-template-columns:1fr}.fp3-lineup-recovery .fp3-btn{width:100%}
}

@media (max-width:520px){
  .fp3-statboard{padding-left:12px!important;padding-right:12px!important}
  .fp3-statrow__values{grid-template-columns:56px minmax(0,1fr) 56px!important;gap:7px!important}
  .fp3-statrow__values strong{font-size:13px!important}.fp3-statrow__values span{font-size:10px!important}
  .fp3-performers-grid{grid-template-columns:1fr}
  .fp3-timeline-event{grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr)!important;min-height:68px}
  .fp3-timeline-event__content strong{font-size:10.5px!important}.fp3-timeline-event__content small{font-size:9px!important}
  .fp3-postmatch-facts{grid-template-columns:1fr 1fr}
  .fp3-competition-card{min-height:112px}
  .fp3-article-stars{grid-template-columns:1fr}
}
.fp3-article-stars>a{display:grid;grid-template-columns:42px minmax(0,1fr);gap:9px;align-items:center;padding:11px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card);color:inherit;text-decoration:none;min-width:0}.fp3-article-stars>a:hover{border-color:rgba(88,223,106,.45)}.fp3-article-stars>a>img{width:42px;height:42px;border-radius:50%;object-fit:cover}.fp3-article-stars>a span{min-width:0}.fp3-article-stars>a strong{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp3-article-stars>a small{display:block;margin-top:3px;color:var(--fp-text-dim);font-size:9px}

/* ========================================================================
   v3.7 — Factor eSports / FC Pro Central
   ======================================================================== */
.fp3-esports-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:24px;border:1px solid var(--fp-border);border-radius:24px;background:linear-gradient(135deg,var(--fp-card),rgba(182,255,26,.055));overflow:hidden}.fp3-esports-hero h1{margin:10px 0 6px;font-size:clamp(26px,5vw,42px);line-height:1.03}.fp3-esports-hero p{margin:0;max-width:650px;color:var(--fp-text-dim)}.fp3-esports-hero__game{min-width:118px;height:118px;border-radius:28px;border:1px solid rgba(182,255,26,.25);background:var(--fp-acid-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:25px;font-weight:800}.fp3-esports-hero__game strong{font-size:48px;line-height:.9;color:var(--fp-acid)}.fp3-esports-hero__game small{margin-top:8px;font-size:10px;color:var(--fp-text-mute);text-transform:uppercase;letter-spacing:.08em}.fp3-esports-kpis,.fp3-esports-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.fp3-esports-kpis>a,.fp3-esports-home-grid>div{padding:16px;border:1px solid var(--fp-border-soft);background:var(--fp-card);border-radius:16px;display:flex;flex-direction:column;gap:5px}.fp3-esports-kpis small,.fp3-esports-home-grid small{font-size:10px;letter-spacing:.07em;color:var(--fp-text-mute)}.fp3-esports-kpis strong,.fp3-esports-home-grid strong{font-size:16px}.fp3-esports-kpis span,.fp3-esports-home-grid span{font-size:12px;color:var(--fp-acid)}.fp3-esports-table{width:100%;border-collapse:collapse;min-width:680px}.fp3-esports-table th,.fp3-esports-table td{padding:12px 10px;border-bottom:1px solid var(--fp-border-soft);text-align:left;font-size:12px}.fp3-esports-table th{color:var(--fp-text-mute);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.fp3-esports-player{display:flex;align-items:center;gap:9px}.fp3-esports-player .fp3-player__avatar{width:34px;height:34px}.fp3-esports-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fp3-esports-team-card{margin:0;display:grid;grid-template-columns:42px 1fr 58px;gap:12px;align-items:center}.fp3-esports-team-card small{display:block;color:var(--fp-text-mute);margin-top:3px}.fp3-esports-team-rank{font-size:20px;font-weight:800;color:var(--fp-text-mute)}.fp3-esports-power{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--fp-acid);background:var(--fp-acid-bg);font-size:19px;font-weight:800;color:var(--fp-acid)}.fp3-esports-power--lg{width:82px;height:82px;font-size:30px}.fp3-esports-event-feature h3,.fp3-esports-event h3{margin:8px 0 5px}.fp3-esports-event-feature p,.fp3-esports-event p{color:var(--fp-text-dim)}.fp3-esports-event{display:grid;grid-template-columns:70px 1fr;gap:16px;align-items:center}.fp3-esports-date{width:58px;height:66px;border:1px solid var(--fp-border);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--fp-card-2)}.fp3-esports-date strong{font-size:22px}.fp3-esports-date span{font-size:10px;color:var(--fp-acid)}.fp3-esports-profile,.fp3-esports-team-profile{display:flex;align-items:center;gap:18px}.fp3-esports-profile__avatar{width:86px;height:86px;border-radius:22px;background:var(--fp-card-2);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:800;overflow:hidden}.fp3-esports-profile__avatar img{width:100%;height:100%;object-fit:cover}.fp3-esports-profile h1,.fp3-esports-team-profile h1{margin:6px 0}.fp3-esports-profile__points{margin-left:auto;text-align:center}.fp3-esports-profile__points strong{display:block;font-size:30px}.fp3-esports-profile__points small{color:var(--fp-text-mute)}.fp3-esports-team-profile{justify-content:space-between}.fp3-esports-roster-row,.fp3-esports-match-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--fp-border-soft)}.fp3-esports-roster-row:last-child,.fp3-esports-match-row:last-child{border-bottom:none}.fp3-esports-roster-row>span{width:38px;color:var(--fp-acid);font-weight:800}.fp3-esports-roster-row>strong{flex:1}.fp3-esports-roster-row>small{color:var(--fp-text-mute)}.fp3-esports-match-row{justify-content:space-between}.fp3-esports-match-row>div{display:flex;flex-direction:column;gap:5px}.fp3-esports-match-row strong span{font-size:18px;color:var(--fp-acid)}.fp3-esports-home-card{padding:18px;border-radius:20px;border:1px solid rgba(182,255,26,.2);background:linear-gradient(135deg,var(--fp-card),rgba(182,255,26,.045))}.fp3-esports-home-card p{margin:12px 0 0;color:var(--fp-text-dim);font-size:12px}.fp3-esports-home-grid{grid-template-columns:1fr 1fr}.fp3-nav__item{font-size:10px}.fp3-nav__item svg{width:20px;height:20px}
@media(max-width:700px){.fp3-esports-hero{align-items:flex-start}.fp3-esports-hero__game{min-width:86px;height:86px;border-radius:22px}.fp3-esports-hero__game strong{font-size:36px}.fp3-esports-kpis{grid-template-columns:1fr}.fp3-esports-team-grid{grid-template-columns:1fr}.fp3-esports-profile{align-items:flex-start;flex-wrap:wrap}.fp3-esports-profile__points{margin-left:0}.fp3-esports-home-grid{grid-template-columns:1fr 1fr}.fp3-nav__item{font-size:9px;gap:2px}.fp3-nav__item svg{width:18px;height:18px}}

/* ============================================================
   Factor Partido v3.7.2 — Sports Hub + FC Pro Player Profiles
   ============================================================ */
.fp3-sports-hub{padding:20px;border:1px solid var(--fp-border);border-radius:24px;background:linear-gradient(135deg,var(--fp-card),rgba(182,255,26,.035));overflow:hidden}
.fp3-sports-hub__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.fp3-sports-hub__head h1{margin:9px 0 0;font-size:clamp(24px,4vw,38px);line-height:1.04;max-width:620px}
.fp3-sports-hub__head>p{max-width:390px;margin:0;color:var(--fp-text-dim);font-size:12px;line-height:1.55}
.fp3-sports-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.fp3-sport-card{min-height:88px;padding:13px 14px;border:1px solid var(--fp-border-soft);border-radius:17px;background:var(--fp-card-2);display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center;transition:.18s ease}
.fp3-sport-card:hover{transform:translateY(-2px);border-color:var(--fp-border)}
.fp3-sport-card.is-active{border-color:rgba(182,255,26,.34);background:linear-gradient(135deg,rgba(182,255,26,.09),var(--fp-card-2))}
.fp3-sport-card.is-coming{opacity:.68;cursor:default}
.fp3-sport-card__icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:rgba(255,255,255,.035);font-size:22px}
.fp3-sport-card strong{display:block;font-size:15px}.fp3-sport-card small{display:block;color:var(--fp-text-mute);font-size:10px;margin-top:4px}.fp3-sport-card>b{font-size:9px;color:var(--fp-acid);letter-spacing:.08em}.fp3-sport-card.is-coming>b{color:var(--fp-text-mute)}

.fp3-esports-watch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fp3-esports-watch-card{min-height:210px;border:1px solid var(--fp-border-soft);border-radius:20px;background:var(--fp-card);overflow:hidden;display:flex;flex-direction:column}
.fp3-esports-watch-card__photo{height:128px;background:radial-gradient(circle at 50% 35%,rgba(182,255,26,.12),transparent 55%),var(--fp-card-2);position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.fp3-esports-watch-card__photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}.fp3-esports-watch-card__photo>span{font-size:28px;font-weight:800;margin:auto}.fp3-esports-watch-card__photo>b{position:absolute;left:10px;top:10px;padding:5px 8px;border-radius:9px;background:var(--fp-acid);color:#071006;font-size:11px}
.fp3-esports-watch-card>div:last-child{padding:12px}.fp3-esports-watch-card strong{display:block;font-size:15px}.fp3-esports-watch-card small{display:block;color:var(--fp-acid);font-size:10px;margin-top:3px}.fp3-esports-watch-card p{color:var(--fp-text-dim);font-size:10px;line-height:1.45;margin:8px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.fp3-esports-player-hero{position:relative;display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:24px;align-items:center;padding:22px;border:1px solid var(--fp-border);border-radius:26px;background:linear-gradient(135deg,var(--fp-card),rgba(182,255,26,.045));overflow:hidden}
.fp3-esports-player-hero__media{height:250px;border-radius:22px;background:radial-gradient(circle at 50% 30%,rgba(182,255,26,.14),transparent 52%),#090f11;position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.fp3-esports-player-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 18%}.fp3-esports-player-hero__media>span{font-size:56px;font-weight:900;margin:auto}.fp3-esports-player-hero__rank{position:absolute;left:12px;top:12px;background:var(--fp-acid);color:#061006;font-weight:900;font-size:18px;padding:8px 11px;border-radius:12px}
.fp3-esports-player-hero__body h1{font-size:clamp(31px,5vw,54px);line-height:.95;margin:12px 0 8px}.fp3-esports-player-realname{font-size:17px;margin:0 0 4px;color:var(--fp-text-dim)}.fp3-esports-player-meta{margin:0;color:var(--fp-text-mute);font-size:13px}.fp3-esports-player-meta strong{color:var(--fp-text)}.fp3-esports-player-tagline{max-width:680px;margin:14px 0 0;font-size:14px;line-height:1.55;color:var(--fp-text-dim)}
.fp3-profile-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.fp3-profile-tags span{padding:6px 9px;border-radius:999px;border:1px solid rgba(182,255,26,.18);background:rgba(182,255,26,.055);font-size:10px;color:var(--fp-acid)}
.fp3-esports-player-hero__points{text-align:right;align-self:flex-start;margin-top:10px;min-width:128px}.fp3-esports-player-hero__points strong{display:block;font-size:32px;color:var(--fp-acid)}.fp3-esports-player-hero__points small{font-size:10px;color:var(--fp-text-mute);letter-spacing:.08em}
.fp3-esports-bio p{font-size:14px;line-height:1.7;color:var(--fp-text-dim);margin:0}.fp3-esports-source-note{margin-top:14px;padding:12px;border-radius:13px;background:var(--fp-card-2);border:1px solid var(--fp-border-soft);font-size:10px;color:var(--fp-text-mute);line-height:1.5}.fp3-esports-source-note strong{color:var(--fp-text)}
.fp3-esports-achievements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fp3-esports-achievements .fp3-card{display:flex;align-items:center;gap:10px;padding:14px}.fp3-esports-achievements span{font-size:18px}.fp3-esports-achievements strong{font-size:12px;line-height:1.4}.fp3-esports-future h3{margin:9px 0 7px}

@media(max-width:900px){.fp3-sports-hub__head{align-items:flex-start;flex-direction:column;gap:9px}.fp3-sports-switcher{grid-template-columns:1fr}.fp3-esports-watch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fp3-esports-player-hero{grid-template-columns:160px 1fr}.fp3-esports-player-hero__media{height:205px}.fp3-esports-player-hero__points{grid-column:2;text-align:left;margin:0}.fp3-esports-player-hero__points strong{font-size:25px}}
@media(max-width:600px){.fp3-sports-hub{padding:15px;border-radius:20px}.fp3-sport-card{min-height:72px;grid-template-columns:38px 1fr auto}.fp3-sport-card__icon{width:38px;height:38px}.fp3-esports-watch-grid{grid-template-columns:1fr 1fr;gap:8px}.fp3-esports-watch-card__photo{height:112px}.fp3-esports-watch-card>div:last-child{padding:10px}.fp3-esports-player-hero{grid-template-columns:1fr;padding:14px;gap:14px}.fp3-esports-player-hero__media{height:330px}.fp3-esports-player-hero__body h1{font-size:38px}.fp3-esports-player-hero__points{grid-column:1}.fp3-esports-achievements{grid-template-columns:1fr}}

/* ========================================================================
   v3.8 — Football Intelligence / ecosystem split
   ======================================================================== */
.fp3-football-home-hero{padding:22px;border:1px solid var(--fp-border);border-radius:22px;background:linear-gradient(135deg,var(--fp-card),rgba(88,223,106,.045));display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.fp3-football-home-hero h1{font-size:clamp(26px,4.5vw,42px);line-height:1.02;margin:10px 0 8px;max-width:720px}.fp3-football-home-hero p{margin:0;color:var(--fp-text-dim)}
.fp3-live-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fp3-live-tile{padding:14px;border:1px solid rgba(88,223,106,.28);border-radius:17px;background:linear-gradient(135deg,var(--fp-card),rgba(88,223,106,.05))}.fp3-live-tile small{color:var(--fp-acid)}.fp3-live-tile__score{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin-top:12px}.fp3-live-tile__score>span{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:750}.fp3-live-tile__score>span:last-child{justify-content:flex-end;text-align:right}.fp3-live-tile__score>strong{font-size:24px;color:var(--fp-acid);font-variant-numeric:tabular-nums}
.fp3-match-league-block{border-top:1px solid var(--fp-border-soft);padding-top:13px}.fp3-match-league-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.fp3-match-league-head>span{display:flex;align-items:center;gap:8px}.fp3-match-league-head strong{font-size:14px}.fp3-match-league-head>a{font-size:10px;color:var(--fp-acid)}
.fp3-intel-match-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.fp3-intel-match-card{border:1px solid var(--fp-border-soft);border-radius:18px;background:var(--fp-card);overflow:hidden}.fp3-intel-match-card.is-live{border-color:rgba(88,223,106,.42);box-shadow:inset 0 0 0 1px rgba(88,223,106,.05)}.fp3-intel-match-card__top{display:block;padding:13px 13px 10px;border-bottom:1px solid var(--fp-border-soft)}.fp3-intel-match-card__top small{font-size:9px;color:var(--fp-text-mute)}.fp3-intel-match-card__top .fp3-flex-between>span{font-size:8px;color:var(--fp-text-mute);text-transform:uppercase;letter-spacing:.05em}
.fp3-intel-teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin-top:11px}.fp3-intel-teams>div{display:flex;align-items:center;gap:6px;min-width:0}.fp3-intel-teams>div:last-child{justify-content:flex-end;text-align:right}.fp3-intel-teams strong{font-size:11px;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.fp3-intel-teams>b{font-size:18px;font-variant-numeric:tabular-nums}
.fp3-intel-form-compare{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;gap:7px;padding:11px 13px;border-bottom:1px solid var(--fp-border-soft)}.fp3-intel-form-compare>div:last-child{text-align:right}.fp3-intel-form-compare>div>span{display:block;font-size:9px;font-weight:750}.fp3-intel-form-compare>div>div{display:flex;gap:3px;margin-top:6px}.fp3-intel-form-compare>div:last-child>div{justify-content:flex-end}.fp3-intel-form-compare small{display:block;color:var(--fp-text-mute);font-size:8px;margin-top:5px}.fp3-intel-form-compare em{text-align:center;font-size:8px;color:var(--fp-text-mute);font-style:normal;text-transform:uppercase;letter-spacing:.05em}
.fp3-form-dots{display:flex;gap:4px;flex-wrap:wrap}.fp3-form-dot{width:21px;height:21px;border-radius:7px;display:inline-grid;place-items:center;font-size:8px;font-style:normal;font-weight:900;color:#071006}.fp3-form-dot.win{background:#58df6a}.fp3-form-dot.draw{background:#e8bd54}.fp3-form-dot.loss{background:#e26e72}.fp3-form-empty{font-size:9px;color:var(--fp-text-mute)}
.fp3-intel-h2h{padding:10px 13px;border-bottom:1px solid var(--fp-border-soft);display:grid;grid-template-columns:auto 1fr;gap:3px 9px;align-items:center}.fp3-intel-h2h>span{grid-row:1/3;font-size:8px;color:var(--fp-acid);font-weight:900;letter-spacing:.08em}.fp3-intel-h2h strong{font-size:10px}.fp3-intel-h2h small{font-size:8px;color:var(--fp-text-mute)}.fp3-intel-summary{padding:12px 13px;margin:0;color:var(--fp-text-dim);font-size:10.5px;line-height:1.55}.fp3-intel-candidate{margin:0 13px 11px;padding:10px;border:1px solid rgba(88,223,106,.2);border-radius:12px;background:rgba(88,223,106,.04);display:grid;grid-template-columns:auto 1fr;gap:3px 8px}.fp3-intel-candidate span{grid-row:1/3;font-size:8px;color:var(--fp-acid);font-weight:900}.fp3-intel-candidate strong{font-size:10px}.fp3-intel-candidate small{font-size:8px;color:var(--fp-text-mute)}.fp3-intel-actions{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--fp-border-soft)}.fp3-intel-actions a{padding:10px;text-align:center;font-size:9px;font-weight:800;color:var(--fp-text-dim)}.fp3-intel-actions a+ a{border-left:1px solid var(--fp-border-soft)}.fp3-intel-actions a:last-child{color:var(--fp-acid)}
.fp3-match-intelligence-overview h2{margin:12px 0 7px;font-size:20px}.fp3-match-intelligence-overview>p{margin:0;color:var(--fp-text-dim);line-height:1.6}.fp3-match-read-forms{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.fp3-match-read-forms>div{padding:11px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card-2)}.fp3-match-read-forms strong,.fp3-match-read-forms span,.fp3-match-read-forms small{display:block}.fp3-match-read-forms strong{font-size:11px}.fp3-match-read-forms span{font-size:10px;margin-top:5px}.fp3-match-read-forms small{font-size:8px;color:var(--fp-text-mute);margin-top:6px}.fp3-match-read-forms .fp3-form-dots{margin-top:7px}.fp3-match-read-h2h{margin-top:9px;padding:11px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card-2);display:grid;gap:3px}.fp3-match-read-h2h>span{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--fp-acid)}.fp3-match-read-h2h>strong{font-size:11px}.fp3-match-read-h2h>small{font-size:9px;color:var(--fp-text-mute)}
.fp3-article-radar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.fp3-article-radar>div{padding:13px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card-2)}.fp3-article-radar small,.fp3-article-radar strong,.fp3-article-radar span{display:block}.fp3-article-radar small{font-size:8px;color:var(--fp-text-mute)}.fp3-article-radar strong{font-size:12px;margin:6px 0}.fp3-article-radar span{font-size:8px;color:var(--fp-text-mute)}.fp3-last-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fp3-last-results-grid>div{border:1px solid var(--fp-border-soft);border-radius:14px;padding:12px;background:var(--fp-card-2)}.fp3-last-results-grid h3{font-size:11px;margin:0 0 8px}.fp3-result-line{display:grid;grid-template-columns:24px minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:7px 0;border-top:1px solid var(--fp-border-soft)}.fp3-result-line:first-of-type{border-top:0}.fp3-result-line strong{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp3-result-line>span:not(.fp3-result-badge){font-size:9px;font-weight:850}.fp3-result-line small{font-size:8px;color:var(--fp-text-mute)}.fp3-result-badge{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-size:8px;font-weight:900;color:#071006}.fp3-result-badge.win{background:#58df6a}.fp3-result-badge.draw{background:#e8bd54}.fp3-result-badge.loss{background:#e26e72}.fp3-standings-context{padding:12px;border:1px solid var(--fp-border-soft);border-radius:13px;background:var(--fp-card-2)}.fp3-standings-context small,.fp3-standings-context strong{display:block}.fp3-standings-context small{font-size:8px;color:var(--fp-text-mute);margin-bottom:5px}.fp3-standings-context strong{font-size:10px;margin-top:3px}.fp3-factor-conclusion{border-left:3px solid var(--fp-acid);padding-left:18px!important}
@media(max-width:760px){.fp3-football-home-hero{align-items:flex-start;flex-direction:column}.fp3-football-home-hero .fp3-btn-row{width:100%}.fp3-football-home-hero .fp3-btn{flex:1}.fp3-live-strip,.fp3-intel-match-grid{grid-template-columns:1fr}.fp3-article-radar{grid-template-columns:1fr}.fp3-last-results-grid{grid-template-columns:1fr}}
@media(max-width:520px){.fp3-match-read-forms{grid-template-columns:1fr}.fp3-intel-form-compare{grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr)}.fp3-intel-summary{font-size:10px}.fp3-nav__item{font-size:8px}.fp3-nav__item svg{width:17px;height:17px}}

/* ===== FACTOR v3.9.2 VISUAL START ===== */


/* ==========================================================
   FACTOR SPORTS GATEWAY /app/
========================================================== */

.fp3-gateway{
    padding:28px 0 48px;
}

.fp3-gateway__intro{
    max-width:850px;
    margin-bottom:24px;
}

.fp3-gateway__intro h1{
    margin:14px 0 10px;
    font-size:clamp(32px,5vw,54px);
    line-height:1;
    letter-spacing:-.045em;
}

.fp3-gateway__intro p{
    max-width:760px;
    margin:0;
    color:var(--fp-text-dim);
    font-size:14px;
    line-height:1.65;
}


.fp3-gateway__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}


.fp3-gateway-card{
    position:relative;
    min-height:285px;
    padding:20px;
    border:1px solid var(--fp-border-soft);
    border-radius:22px;
    background:var(--fp-card);
    color:inherit;
    text-decoration:none;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    transition:
        transform .2s ease,
        border-color .2s ease,
        background .2s ease;
}

.fp3-gateway-card:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        radial-gradient(
            circle at 80% 10%,
            rgba(88,223,106,.08),
            transparent 36%
        );
}

.fp3-gateway-card:hover{
    transform:translateY(-4px);
    border-color:rgba(88,223,106,.38);
}


.fp3-gateway-card--football{
    border-color:rgba(88,223,106,.32);
    background:
        linear-gradient(
            145deg,
            rgba(88,223,106,.075),
            var(--fp-card) 46%
        );
}


.fp3-gateway-card--tennis{
    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.025),
            var(--fp-card)
        );
}


.fp3-gateway-card--esports{
    background:
        linear-gradient(
            145deg,
            var(--fp-card),
            rgba(88,223,106,.035)
        );
}


.fp3-gateway-card__top{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
}


.fp3-gateway-card__icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:16px;
    border:1px solid var(--fp-border-soft);
    background:var(--fp-card-2);
    font-size:25px;
}


.fp3-gateway-card__status{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:0 10px;
    border-radius:999px;
    background:var(--fp-acid-bg);
    color:var(--fp-acid);
    font-size:8px;
    font-weight:900;
    letter-spacing:.09em;
}


.fp3-gateway-card__status--soon{
    color:var(--fp-text-mute);
    background:var(--fp-card-2);
}


.fp3-gateway-card__body{
    position:relative;
    z-index:1;
    margin-top:28px;
}

.fp3-gateway-card__body small{
    display:block;
    color:var(--fp-acid);
    font-size:9px;
    font-weight:900;
    letter-spacing:.09em;
}

.fp3-gateway-card__body h2{
    margin:7px 0 9px;
    font-size:30px;
    line-height:1;
    letter-spacing:-.035em;
}

.fp3-gateway-card__body p{
    margin:0;
    color:var(--fp-text-dim);
    font-size:12px;
    line-height:1.6;
}


.fp3-gateway-card__foot{
    position:relative;
    z-index:1;
    margin-top:auto;
    padding-top:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    border-top:1px solid var(--fp-border-soft);
}

.fp3-gateway-card__foot strong{
    font-size:11px;
}

.fp3-gateway-card__foot span{
    color:var(--fp-acid);
    font-size:10px;
    font-weight:850;
}


.fp3-gateway__note{
    margin:18px 0 0;
    color:var(--fp-text-mute);
    font-size:10px;
}


/* ==========================================================
   PREVIA PREMIUM
   Solo elementos dentro de .fp3-article
========================================================== */

.fp3-article{
    max-width:980px;
}


/* HEADER EDITORIAL */

.fp3-article .fp3-article-head{
    position:relative;
    margin-top:14px;
    padding:24px;
    border:1px solid var(--fp-border-soft);
    border-radius:22px;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 88% 0%,
            rgba(88,223,106,.095),
            transparent 32%
        ),
        var(--fp-card);
}

.fp3-article .fp3-article-head:after{
    content:"";
    position:absolute;
    left:24px;
    right:24px;
    bottom:0;
    height:2px;
    background:
        linear-gradient(
            90deg,
            var(--fp-acid),
            transparent 70%
        );
    opacity:.7;
}

.fp3-article .fp3-article-head h1{
    max-width:800px;
}

.fp3-article .fp3-article-deck{
    max-width:800px;
}


/* TARJETA DEL PARTIDO */

.fp3-article > .fp3-card.fp3-mt-3{
    padding:18px 22px;
    border-radius:20px;
    border-color:rgba(88,223,106,.18);
    background:
        linear-gradient(
            145deg,
            rgba(88,223,106,.045),
            var(--fp-card)
        );
}


/* SECCIONES */

.fp3-article .fp3-article-section{
    margin:13px 0;
    padding:21px;
    border:1px solid var(--fp-border-soft);
    border-radius:18px;
    background:var(--fp-card);
}

.fp3-article .fp3-article-section h2{
    position:relative;
    padding-left:13px;
}

.fp3-article .fp3-article-section h2:before{
    content:"";
    position:absolute;
    left:0;
    top:.15em;
    bottom:.15em;
    width:3px;
    border-radius:999px;
    background:var(--fp-acid);
}


/* RADIOGRAFÍA */

.fp3-article .fp3-article-section--lead{
    background:
        linear-gradient(
            145deg,
            rgba(88,223,106,.045),
            var(--fp-card)
        );
}


/* TARJETAS DE DATOS */

.fp3-article .fp3-article-radar>div,
.fp3-article .fp3-compare-grid>div,
.fp3-article .fp3-forecast-chip{
    position:relative;
    overflow:hidden;
    background:var(--fp-card-2);
}

.fp3-article .fp3-article-radar>div:before,
.fp3-article .fp3-compare-grid>div:before,
.fp3-article .fp3-forecast-chip:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:2px;
    background:var(--fp-acid);
    opacity:.38;
}


/* ÚLTIMOS PARTIDOS */

.fp3-article .fp3-last-results-grid>div{
    background:var(--fp-card-2);
}

.fp3-article .fp3-last-results-grid h3{
    font-size:12px;
    margin-bottom:11px;
}


/* LAS CLAVES */

.fp3-article .fp3-story-list{
    gap:10px;
}

.fp3-article .fp3-story-item{
    position:relative;
    padding:15px 16px 15px 18px;
    border:1px solid var(--fp-border-soft);
    border-left:3px solid var(--fp-acid);
    border-radius:13px;
    background:
        linear-gradient(
            90deg,
            rgba(88,223,106,.045),
            var(--fp-card-2) 30%
        );
}

.fp3-article .fp3-story-item strong{
    font-size:12px;
}

.fp3-article .fp3-story-item p{
    font-size:11px;
}


/* PRONÓSTICO */

.fp3-article .fp3-pick-feature{
    position:relative;
    overflow:hidden;
    padding:18px;
    border-color:rgba(88,223,106,.35);
    background:
        linear-gradient(
            135deg,
            rgba(88,223,106,.10),
            var(--fp-card) 55%
        );
}

.fp3-article .fp3-pick-feature:before{
    content:"FACTOR";
    position:absolute;
    right:14px;
    bottom:-11px;
    font-size:55px;
    line-height:1;
    font-weight:900;
    color:rgba(88,223,106,.035);
    pointer-events:none;
}

.fp3-article .fp3-pick-feature h3{
    font-size:24px;
}


/* CONCLUSIÓN */

.fp3-article .fp3-factor-conclusion{
    border-left:0;
    padding:22px!important;
    background:
        linear-gradient(
            135deg,
            rgba(88,223,106,.075),
            var(--fp-card)
        );
}

.fp3-article .fp3-factor-conclusion h2:before{
    width:4px;
}


/* RESEARCH - CONSERVAMOS SU ESTRUCTURA */

.fp3-article .fp3-source-grid>a{
    background:var(--fp-card-2);
    transition:
        transform .18s ease,
        border-color .18s ease;
}

.fp3-article .fp3-source-grid>a:hover{
    transform:translateY(-2px);
}


/* ==========================================================
   NUEVO: FACTOR INTELLIGENCE
========================================================== */

.fp3-factor-intelligence{
    position:relative;
    margin:15px 0;
    padding:22px;
    border:1px solid rgba(88,223,106,.30);
    border-radius:22px;
    overflow:hidden;
    background:
        radial-gradient(
            circle at 92% 5%,
            rgba(88,223,106,.13),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(88,223,106,.055),
            var(--fp-card)
        );
}

.fp3-factor-intelligence:before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    right:0;
    height:3px;
    background:
        linear-gradient(
            90deg,
            var(--fp-acid),
            rgba(88,223,106,.12),
            transparent
        );
}


.fp3-factor-intelligence__top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
}

.fp3-factor-intelligence__grid{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
    gap:18px;
    margin-top:18px;
}

.fp3-factor-intelligence__story>small{
    display:block;
    color:var(--fp-acid);
    font-size:8px;
    font-weight:900;
    letter-spacing:.1em;
}

.fp3-factor-intelligence__story h2{
    margin:8px 0 9px;
    font-size:clamp(24px,4vw,34px);
    line-height:1;
    letter-spacing:-.04em;
}

.fp3-factor-intelligence__story p{
    margin:0;
    max-width:600px;
    color:var(--fp-text-dim);
    font-size:13px;
    line-height:1.65;
}


.fp3-factor-intelligence__metrics{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}

.fp3-factor-intelligence__metric{
    padding:12px;
    border:1px solid var(--fp-border-soft);
    border-radius:13px;
    background:rgba(0,0,0,.08);
}

.fp3-factor-intelligence__metric small,
.fp3-factor-intelligence__metric strong,
.fp3-factor-intelligence__metric span{
    display:block;
}

.fp3-factor-intelligence__metric small{
    color:var(--fp-text-mute);
    font-size:7px;
    letter-spacing:.04em;
}

.fp3-factor-intelligence__metric strong{
    margin-top:5px;
    font-size:20px;
    line-height:1;
}

.fp3-factor-intelligence__metric span{
    margin-top:4px;
    color:var(--fp-text-dim);
    font-size:8px;
}


.fp3-factor-intelligence__read{
    margin-top:14px;
    padding:14px 16px;
    border-left:3px solid var(--fp-acid);
    border-radius:0 13px 13px 0;
    background:var(--fp-card-2);
}

.fp3-factor-intelligence__read small{
    display:block;
    margin-bottom:5px;
    color:var(--fp-acid);
    font-size:8px;
    font-weight:900;
    letter-spacing:.08em;
}

.fp3-factor-intelligence__read p{
    margin:0;
    color:var(--fp-text-dim);
    font-size:11px;
    line-height:1.6;
}

.fp3-factor-intelligence__foot{
    margin:11px 0 0;
    color:var(--fp-text-mute);
    font-size:8px;
    line-height:1.5;
}


/* ==========================================================
   RESPONSIVE
========================================================== */

@media(max-width:900px){

    .fp3-gateway__grid{
        grid-template-columns:1fr;
    }

    .fp3-gateway-card{
        min-height:220px;
    }

    .fp3-factor-intelligence__grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:600px){

    .fp3-gateway{
        padding-top:18px;
    }

    .fp3-gateway__intro h1{
        font-size:36px;
    }

    .fp3-gateway-card{
        padding:17px;
        min-height:210px;
    }

    .fp3-gateway-card__body{
        margin-top:20px;
    }

    .fp3-article .fp3-article-head{
        padding:17px;
        border-radius:18px;
    }

    .fp3-article .fp3-article-section{
        padding:16px;
        border-radius:16px;
    }

    .fp3-factor-intelligence{
        padding:17px;
        border-radius:18px;
    }

    .fp3-factor-intelligence__metrics{
        grid-template-columns:1fr 1fr;
    }

}


/* ===== FACTOR v3.9.2 VISUAL END ===== */


/* ============================================================
   v3.10.1 · MATCH CENTER PRO
   Solo /app/partidos.php
   ============================================================ */

.fp3-live-now{
    margin:10px 0 18px;
    padding:16px;
    border:1px solid rgba(88,223,106,.24);
    border-radius:20px;
    background:
        linear-gradient(
            135deg,
            rgba(88,223,106,.055),
            rgba(8,18,21,.96) 42%
        );
}

.fp3-live-now__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:13px;
}

.fp3-live-now__head>div{
    display:flex;
    align-items:center;
    gap:8px;
}

.fp3-live-now__head strong{
    font-size:12px;
    letter-spacing:.07em;
}

.fp3-live-now__count{
    font-size:9px;
    color:var(--fp-text-dim);
}

.fp3-live-now__pulse{
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--fp-acid);
    box-shadow:0 0 0 0 rgba(88,223,106,.45);
    animation:fp3LivePulse 1.7s infinite;
}

@keyframes fp3LivePulse{
    0%{
        box-shadow:0 0 0 0 rgba(88,223,106,.42);
    }
    70%{
        box-shadow:0 0 0 8px rgba(88,223,106,0);
    }
    100%{
        box-shadow:0 0 0 0 rgba(88,223,106,0);
    }
}

.fp3-live-now__all{
    font-size:10px;
    font-weight:800;
    color:var(--fp-acid);
    text-decoration:none;
}

.fp3-live-now__grid{
    display:grid;
    grid-template-columns:
        repeat(auto-fit,minmax(270px,1fr));
    gap:10px;
}

.fp3-live-now__card{
    display:block;
    min-width:0;
    padding:13px;
    border:1px solid var(--fp-border-soft);
    border-radius:15px;
    background:rgba(7,17,20,.78);
    color:inherit;
    text-decoration:none;
    transition:
        border-color .18s ease,
        transform .18s ease,
        background .18s ease;
}

.fp3-live-now__card:hover{
    border-color:rgba(88,223,106,.52);
    background:#0c191c;
    transform:translateY(-1px);
}

.fp3-live-now__meta{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:9px;
    font-size:8px;
    color:var(--fp-text-mute);
}

.fp3-live-now__meta>span{
    display:flex;
    align-items:center;
    gap:5px;
}

.fp3-live-now__meta strong{
    display:flex;
    align-items:center;
    gap:4px;
    color:var(--fp-acid);
    font-size:8px;
    letter-spacing:.045em;
}

.fp3-live-now__meta strong i{
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--fp-acid);
}

.fp3-live-now__teams{
    display:grid;
    grid-template-columns:
        minmax(0,1fr)
        auto
        minmax(0,1fr);
    align-items:center;
    gap:9px;
    margin-top:14px;
}

.fp3-live-now__teams>div{
    display:grid;
    justify-items:center;
    gap:6px;
    min-width:0;
    text-align:center;
}

.fp3-live-now__teams>div span{
    width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:10px;
    font-weight:750;
}

.fp3-live-now__score{
    display:flex;
    align-items:center;
    gap:7px;
    padding:7px 10px;
    border-radius:11px;
    background:var(--fp-surface-2);
    font-size:22px;
    line-height:1;
}

.fp3-live-now__score b{
    color:var(--fp-text-mute);
    font-weight:400;
}

.fp3-live-now__cta{
    display:block;
    margin-top:11px;
    padding-top:9px;
    border-top:1px solid var(--fp-border-soft);
    color:var(--fp-acid);
    font-size:9px;
    font-weight:800;
    text-align:right;
}

@media(max-width:620px){

    .fp3-live-now{
        padding:12px;
    }

    .fp3-live-now__grid{
        grid-template-columns:1fr;
    }

    .fp3-live-now__head{
        align-items:flex-start;
    }
}



/* ============================================================
   v3.10.5 · FACTOR INTELLIGENCE PRO
   ============================================================ */

.fp3-fi-pro{
    position:relative;
    overflow:hidden;
}

.fp3-fi-pro__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.fp3-fi-pro__brand{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:10px;
    letter-spacing:.09em;
}

.fp3-fi-pro__pulse{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--fp-acid);
    box-shadow:0 0 0 5px rgba(88,223,106,.08);
}

.fp3-fi-pro__head-meta{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    font-size:9px;
    color:var(--fp-text-mute);
}

.fp3-fi-pro__head-meta b{
    padding:6px 8px;
    border:1px solid var(--fp-border-soft);
    border-radius:999px;
    color:var(--fp-text);
    font-size:8px;
    letter-spacing:.04em;
}

.fp3-fi-pro__hero{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);
    gap:14px;
}

.fp3-fi-pro__story{
    min-width:0;
}

.fp3-fi-pro__story>small{
    display:block;
    margin-bottom:8px;
    color:var(--fp-acid);
    font-size:8px;
    font-weight:900;
    letter-spacing:.1em;
}

.fp3-fi-pro__story h2{
    margin:0;
    font-size:clamp(22px,4vw,34px);
    line-height:1.05;
    letter-spacing:-.035em;
}

.fp3-fi-pro__story>p{
    max-width:620px;
    margin:11px 0 0;
    color:var(--fp-text-dim);
    font-size:12px;
    line-height:1.6;
}

.fp3-fi-pro__tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:13px;
}

.fp3-fi-pro__tags span{
    padding:7px 9px;
    border:1px solid var(--fp-border-soft);
    border-radius:9px;
    color:var(--fp-text-mute);
    font-size:8px;
}

.fp3-fi-pro__tags strong{
    margin-left:4px;
    color:var(--fp-text);
}

.fp3-fi-pro__decision{
    display:flex;
    min-height:150px;
    flex-direction:column;
    justify-content:center;
    padding:18px;
    border:1px solid var(--fp-border-soft);
    border-radius:17px;
    background:var(--fp-card-2);
}

.fp3-fi-pro__decision small{
    font-size:8px;
    color:var(--fp-text-mute);
    letter-spacing:.08em;
}

.fp3-fi-pro__decision>strong{
    display:block;
    margin-top:8px;
    font-size:21px;
    line-height:1.05;
}

.fp3-fi-pro__decision p{
    margin:10px 0 0;
    color:var(--fp-text-dim);
    font-size:10px;
    line-height:1.55;
}

.fp3-fi-pro__decision.is-play{
    border-color:var(--fp-acid);
}

.fp3-fi-pro__decision.is-price,
.fp3-fi-pro__decision.is-conflict{
    border-style:dashed;
}

.fp3-fi-pro__metrics,
.fp3-fi-pro__empty-metrics{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-top:15px;
}

.fp3-fi-pro__metrics>div,
.fp3-fi-pro__empty-metrics>div{
    padding:13px;
    border:1px solid var(--fp-border-soft);
    border-radius:13px;
    background:var(--fp-card-2);
}

.fp3-fi-pro__metrics small,
.fp3-fi-pro__metrics strong,
.fp3-fi-pro__metrics span,
.fp3-fi-pro__empty-metrics small,
.fp3-fi-pro__empty-metrics strong{
    display:block;
}

.fp3-fi-pro__metrics small,
.fp3-fi-pro__empty-metrics small{
    color:var(--fp-text-mute);
    font-size:7px;
    letter-spacing:.06em;
}

.fp3-fi-pro__metrics strong,
.fp3-fi-pro__empty-metrics strong{
    margin-top:7px;
    font-size:20px;
}

.fp3-fi-pro__metrics span{
    margin-top:4px;
    color:var(--fp-text-mute);
    font-size:8px;
}

.fp3-fi-pro__quality{
    margin-top:12px;
    padding:12px 14px;
    border:1px solid var(--fp-border-soft);
    border-radius:13px;
}

.fp3-fi-pro__quality-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:8px;
}

.fp3-fi-pro__quality-head span{
    color:var(--fp-text-mute);
}

.fp3-fi-pro__quality-track{
    height:5px;
    margin-top:10px;
    overflow:hidden;
    border-radius:99px;
    background:var(--fp-card-2);
}

.fp3-fi-pro__quality-track i{
    display:block;
    height:100%;
    border-radius:inherit;
    background:var(--fp-acid);
}

.fp3-fi-pro__quality>small{
    display:block;
    margin-top:8px;
    color:var(--fp-text-mute);
    font-size:7px;
}

.fp3-fi-pro__price{
    margin-top:14px;
    padding:15px;
    border:1px solid var(--fp-border-soft);
    border-radius:16px;
    background:var(--fp-card-2);
}

.fp3-fi-pro__price.is-anomaly{
    border-style:dashed;
}

.fp3-fi-pro__section-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.fp3-fi-pro__section-head small,
.fp3-fi-pro__section-head strong{
    display:block;
}

.fp3-fi-pro__section-head small{
    color:var(--fp-text-mute);
    font-size:7px;
    letter-spacing:.08em;
}

.fp3-fi-pro__section-head strong{
    margin-top:4px;
    font-size:13px;
}

.fp3-fi-pro__section-head>span{
    padding:6px 8px;
    border:1px solid var(--fp-border-soft);
    border-radius:999px;
    font-size:7px;
    font-weight:900;
}

.fp3-fi-pro__price-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:13px;
}

.fp3-fi-pro__price-grid>div{
    min-width:0;
    padding:11px;
    border:1px solid var(--fp-border-soft);
    border-radius:11px;
    background:var(--fp-card);
}

.fp3-fi-pro__price-grid small,
.fp3-fi-pro__price-grid strong,
.fp3-fi-pro__price-grid span{
    display:block;
}

.fp3-fi-pro__price-grid small{
    color:var(--fp-text-mute);
    font-size:7px;
}

.fp3-fi-pro__price-grid strong{
    margin-top:5px;
    font-size:17px;
}

.fp3-fi-pro__price-grid span{
    margin-top:4px;
    overflow:hidden;
    color:var(--fp-text-mute);
    font-size:7px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.fp3-fi-pro__guard{
    margin-top:11px;
    padding:11px 12px;
    border-left:3px solid var(--fp-acid);
    background:var(--fp-card);
}

.fp3-fi-pro__guard strong{
    font-size:9px;
}

.fp3-fi-pro__guard p{
    margin:5px 0 0;
    color:var(--fp-text-dim);
    font-size:9px;
    line-height:1.5;
}

.fp3-fi-pro__evidence{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
}

.fp3-fi-pro__evidence>div{
    padding:14px;
    border:1px solid var(--fp-border-soft);
    border-radius:15px;
    background:var(--fp-card-2);
}

.fp3-fi-pro__factor-list{
    display:grid;
    gap:7px;
    margin-top:11px;
}

.fp3-fi-pro__factor-list>div{
    display:grid;
    grid-template-columns:22px minmax(0,1fr);
    gap:8px;
    align-items:flex-start;
    padding-top:7px;
    border-top:1px solid var(--fp-border-soft);
}

.fp3-fi-pro__factor-list>div:first-child{
    padding-top:0;
    border-top:0;
}

.fp3-fi-pro__factor-list i{
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    border:1px solid var(--fp-border-soft);
    border-radius:7px;
    font-size:9px;
    font-style:normal;
    font-weight:900;
}

.fp3-fi-pro__factor-list p{
    margin:0;
}

.fp3-fi-pro__factor-list strong,
.fp3-fi-pro__factor-list span{
    display:block;
}

.fp3-fi-pro__factor-list strong{
    font-size:9px;
}

.fp3-fi-pro__factor-list span{
    margin-top:3px;
    color:var(--fp-text-mute);
    font-size:8px;
    line-height:1.4;
}

.fp3-fi-pro__factor-list .is-positive i{
    color:var(--fp-acid);
}

.fp3-fi-pro__unlock{
    margin-top:14px;
    padding:14px;
    border:1px solid var(--fp-border-soft);
    border-radius:15px;
}

.fp3-fi-pro__unlock>small{
    color:var(--fp-acid);
    font-size:7px;
    font-weight:900;
    letter-spacing:.09em;
}

.fp3-fi-pro__unlock>div{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:10px;
}

.fp3-fi-pro__unlock span{
    padding:8px 10px;
    border:1px solid var(--fp-border-soft);
    border-radius:10px;
    color:var(--fp-text-dim);
    font-size:8px;
    line-height:1.4;
}

.fp3-fi-pro__foot{
    margin-top:15px;
    padding-top:12px;
    border-top:1px solid var(--fp-border-soft);
}

.fp3-fi-pro__foot span{
    display:block;
    color:var(--fp-acid);
    font-size:7px;
    font-weight:900;
    letter-spacing:.08em;
}

.fp3-fi-pro__foot p{
    max-width:650px;
    margin:6px 0 0;
    color:var(--fp-text-mute);
    font-size:8px;
    line-height:1.45;
}

@media(max-width:760px){

    .fp3-fi-pro__hero{
        grid-template-columns:1fr;
    }

    .fp3-fi-pro__metrics,
    .fp3-fi-pro__empty-metrics{
        grid-template-columns:1fr 1fr;
    }

    .fp3-fi-pro__price-grid{
        grid-template-columns:1fr 1fr;
    }

    .fp3-fi-pro__evidence{
        grid-template-columns:1fr;
    }

}

@media(max-width:480px){

    .fp3-fi-pro__head{
        align-items:flex-start;
        flex-direction:column;
    }

    .fp3-fi-pro__head-meta{
        justify-content:flex-start;
        flex-wrap:wrap;
    }

    .fp3-fi-pro__metrics,
    .fp3-fi-pro__empty-metrics,
    .fp3-fi-pro__price-grid{
        grid-template-columns:1fr 1fr;
    }

    .fp3-fi-pro__decision{
        min-height:0;
    }

}



/* ============================================================
   v3.10.6 · DOSSIER INTELLIGENCE
   ============================================================ */

.fp3-dossier-intelligence{
    margin-top:14px;
}

.fp3-dossier-intelligence__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.fp3-dossier-decision{
    padding:6px 9px;
    border:1px solid var(--fp-border-soft);
    border-radius:999px;
    font-size:8px;
    font-weight:900;
    letter-spacing:.05em;
}

.fp3-dossier-decision.is-play{
    border-color:var(--fp-acid);
    color:var(--fp-acid);
}

.fp3-dossier-decision.is-price,
.fp3-dossier-decision.is-conflict{
    border-style:dashed;
}

.fp3-dossier-intelligence__hero{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-top:17px;
}

.fp3-dossier-intelligence__hero>div>small{
    display:block;
    color:var(--fp-text-mute);
    font-size:7px;
    letter-spacing:.08em;
}

.fp3-dossier-intelligence__hero h2{
    margin:6px 0 0;
    font-size:22px;
    line-height:1.05;
}

.fp3-dossier-intelligence__hero>strong{
    flex:0 0 auto;
    font-size:30px;
    text-align:right;
}

.fp3-dossier-intelligence__hero>strong small{
    display:block;
    margin-top:3px;
    color:var(--fp-text-mute);
    font-size:7px;
    font-weight:500;
}

.fp3-dossier-intelligence__metrics{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
}

.fp3-dossier-intelligence__metrics>div{
    padding:10px;
    border:1px solid var(--fp-border-soft);
    border-radius:11px;
    background:var(--fp-card-2);
}

.fp3-dossier-intelligence__metrics small,
.fp3-dossier-intelligence__metrics strong{
    display:block;
}

.fp3-dossier-intelligence__metrics small{
    color:var(--fp-text-mute);
    font-size:7px;
}

.fp3-dossier-intelligence__metrics strong{
    margin-top:5px;
    font-size:15px;
}

.fp3-dossier-intelligence__warning{
    margin-top:12px;
    padding:11px 12px;
    border-left:3px solid var(--fp-acid);
    background:var(--fp-card-2);
}

.fp3-dossier-intelligence__warning strong{
    font-size:9px;
}

.fp3-dossier-intelligence__warning p{
    margin:5px 0 0;
    color:var(--fp-text-dim);
    font-size:9px;
    line-height:1.5;
}

.fp3-dossier-intelligence__actions{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:13px;
}

@media(max-width:560px){

    .fp3-dossier-intelligence__hero{
        align-items:flex-start;
        flex-direction:column;
    }

    .fp3-dossier-intelligence__hero>strong{
        text-align:left;
    }

    .fp3-dossier-intelligence__metrics{
        grid-template-columns:1fr 1fr;
    }

}



/* ============================================================
   v3.10.6.1 · DECISION UX
   ============================================================ */

.fp3-fi-pro__decision-cause{
    display:inline-flex;
    width:max-content;
    max-width:100%;
    margin-top:10px;
    padding:6px 8px;
    border:1px solid var(--fp-border-soft);
    border-radius:999px;
    color:var(--fp-text-dim);
    font-size:7px;
    font-weight:850;
    letter-spacing:.045em;
}

.fp3-fi-pro__blockers{
    display:grid;
    gap:6px;
    margin-top:14px;
    padding-top:12px;
    border-top:1px solid var(--fp-border-soft);
}

.fp3-fi-pro__blockers>small{
    color:var(--fp-text-mute);
    font-size:7px;
    letter-spacing:.08em;
}

.fp3-fi-pro__blockers>span{
    position:relative;
    padding-left:12px;
    color:var(--fp-text-dim);
    font-size:8px;
    line-height:1.45;
}

.fp3-fi-pro__blockers>span:before{
    content:"•";
    position:absolute;
    left:0;
    color:var(--fp-acid);
}

.fp3-fi-pro__next-action{
    margin-top:13px;
    padding:10px 11px;
    border:1px solid var(--fp-border-soft);
    border-radius:10px;
    background:var(--fp-card);
}

.fp3-fi-pro__next-action small,
.fp3-fi-pro__next-action strong{
    display:block;
}

.fp3-fi-pro__next-action small{
    color:var(--fp-acid);
    font-size:7px;
    letter-spacing:.08em;
}

.fp3-fi-pro__next-action strong{
    margin-top:5px;
    font-size:9px;
    line-height:1.45;
}



/* ============================================================
   v3.11.5 · PROFILE PRO
   ============================================================ */

.fp3-profile-pro{
    max-width:960px;
    margin:0 auto;
}

.fp3-profile-hero{
    margin-top:18px;
    padding:28px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:26px;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(190,255,70,.16),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            rgba(17,31,27,.98),
            rgba(8,15,14,.98)
        );
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:end;
    overflow:hidden;
}

.fp3-profile-hero__eyebrow{
    display:inline-flex;
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
    color:#c6ff58;
    margin-bottom:10px;
}

.fp3-profile-hero h1{
    margin:0;
    font-size:clamp(28px,5vw,48px);
    line-height:.98;
    letter-spacing:-.045em;
    max-width:600px;
}

.fp3-profile-hero p{
    margin:14px 0 0;
    max-width:560px;
    color:rgba(255,255,255,.63);
    line-height:1.55;
}

.fp3-profile-bank{
    min-width:180px;
    padding:19px;
    background:rgba(255,255,255,.055);
    border:1px solid rgba(255,255,255,.08);
    border-radius:20px;
}

.fp3-profile-bank small,
.fp3-profile-kpi small,
.fp3-profile-bet__market small,
.fp3-profile-bet__details small{
    display:block;
    font-size:10px;
    font-weight:800;
    letter-spacing:.11em;
    color:rgba(255,255,255,.45);
}

.fp3-profile-bank > strong{
    display:block;
    margin:5px 0;
    font-size:34px;
    letter-spacing:-.05em;
}

.fp3-profile-bank > span{
    font-size:12px;
    font-weight:700;
}

.fp3-profile-kpis{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
}

.fp3-profile-kpi{
    padding:18px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.035);
}

.fp3-profile-kpi strong{
    display:block;
    font-size:26px;
    margin:5px 0 1px;
    letter-spacing:-.035em;
}

.fp3-profile-kpi span{
    font-size:11px;
    color:rgba(255,255,255,.45);
}

.fp3-profile-section-head{
    margin:30px 0 12px;
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:end;
}

.fp3-profile-section-head small{
    color:#c6ff58;
    font-size:10px;
    letter-spacing:.14em;
    font-weight:800;
}

.fp3-profile-section-head h2{
    margin:3px 0 0;
    font-size:21px;
    letter-spacing:-.025em;
}

.fp3-profile-section-head > a{
    color:#c6ff58;
    font-size:12px;
    text-decoration:none;
    font-weight:700;
}

.fp3-profile-bets{
    display:grid;
    gap:10px;
}

.fp3-profile-bet{
    position:relative;
    padding:20px;
    border-radius:21px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.035);
    overflow:hidden;
}

.fp3-profile-bet::before{
    content:"";
    position:absolute;
    left:0;
    top:16px;
    bottom:16px;
    width:3px;
    border-radius:10px;
    background:rgba(255,255,255,.18);
}

.fp3-profile-bet.is-win::before{
    background:#c6ff58;
}

.fp3-profile-bet.is-loss::before{
    background:#ff6565;
}

.fp3-profile-bet.is-push::before{
    background:#b9c1bd;
}

.fp3-profile-bet__top{
    display:flex;
    justify-content:space-between;
    gap:18px;
    align-items:start;
}

.fp3-profile-bet__league{
    font-size:11px;
    color:rgba(255,255,255,.42);
}

.fp3-profile-bet h3{
    margin:4px 0 0;
    font-size:17px;
}

.fp3-profile-bet h3 span{
    color:rgba(255,255,255,.3);
    font-weight:400;
    padding:0 3px;
}

.fp3-profile-status{
    padding:7px 10px;
    border-radius:999px;
    font-size:10px;
    letter-spacing:.08em;
    background:rgba(255,255,255,.07);
}

.is-win .fp3-profile-status{
    color:#c6ff58;
    background:rgba(198,255,88,.10);
}

.is-loss .fp3-profile-status{
    color:#ff7777;
    background:rgba(255,101,101,.10);
}

.fp3-profile-bet__market{
    margin-top:18px;
}

.fp3-profile-bet__market strong{
    display:block;
    margin-top:3px;
    font-size:20px;
    letter-spacing:-.025em;
}

.fp3-profile-bet__details{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-top:14px;
}

.fp3-profile-bet__details > div{
    padding:12px;
    background:rgba(0,0,0,.18);
    border-radius:13px;
}

.fp3-profile-bet__details strong{
    display:block;
    margin-top:4px;
}

.fp3-profile-bet__explain{
    margin:14px 0 0;
    color:rgba(255,255,255,.55);
    font-size:12px;
}

.fp3-profile-bet__explain strong{
    color:rgba(255,255,255,.9);
}

.fp3-profile-bet__link{
    display:inline-block;
    margin-top:13px;
    color:#c6ff58;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

.fp3-profile-links{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}

.fp3-profile-links > a{
    padding:17px;
    border-radius:18px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.035);
    color:inherit;
    text-decoration:none;
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:12px;
    align-items:center;
}

.fp3-profile-links > a > span{
    width:36px;
    height:36px;
    border-radius:12px;
    background:rgba(198,255,88,.10);
    color:#c6ff58;
    display:grid;
    place-items:center;
    font-weight:800;
}

.fp3-profile-links strong,
.fp3-profile-links small{
    display:block;
}

.fp3-profile-links small{
    margin-top:3px;
    color:rgba(255,255,255,.42);
    font-size:10px;
}

.fp3-profile-links b{
    color:#c6ff58;
}

.fp3-profile-note{
    margin-top:24px;
    padding:17px 19px;
    border-radius:17px;
    border:1px solid rgba(255,255,255,.06);
    color:rgba(255,255,255,.48);
    font-size:11px;
}

.fp3-profile-note strong{
    display:block;
    margin-bottom:5px;
    color:rgba(255,255,255,.7);
    font-size:10px;
    letter-spacing:.1em;
}

.fp3-profile-note p{
    margin:0;
    line-height:1.5;
}

.fp3-profile-pro .is-positive{
    color:#c6ff58;
}

.fp3-profile-pro .is-negative{
    color:#ff7777;
}


@media(max-width:700px){

    .fp3-profile-hero{
        grid-template-columns:1fr;
        padding:22px;
    }

    .fp3-profile-bank{
        min-width:0;
    }

    .fp3-profile-kpis{
        grid-template-columns:repeat(2,1fr);
    }

    .fp3-profile-bet__details{
        grid-template-columns:repeat(2,1fr);
    }

    .fp3-profile-links{
        grid-template-columns:1fr;
    }
}



/* ============================================================
   v3.11.7 · INSTALL EXPERIENCE
   ============================================================ */

.fp3-install-card{
    position:fixed;
    left:16px;
    right:16px;
    bottom:calc(84px + env(safe-area-inset-bottom));
    z-index:9990;

    max-width:520px;
    margin:0 auto;

    padding:13px 13px 13px 14px;

    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    align-items:center;

    border:1px solid rgba(255,255,255,.11);
    border-radius:21px;

    background:
      radial-gradient(
        circle at 100% 0%,
        rgba(198,255,88,.16),
        transparent 38%
      ),
      rgba(10,18,16,.96);

    box-shadow:
      0 20px 70px rgba(0,0,0,.42),
      inset 0 1px 0 rgba(255,255,255,.04);

    -webkit-backdrop-filter:blur(20px);
    backdrop-filter:blur(20px);

    opacity:0;
    transform:translateY(22px) scale(.98);

    transition:
      opacity .32s ease,
      transform .38s cubic-bezier(.2,.8,.2,1);
}

.fp3-install-card.is-visible{
    opacity:1;
    transform:translateY(0) scale(1);
}

.fp3-install-card__icon{
    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    border-radius:15px;

    background:#c6ff58;
    color:#07100c;

    font-size:23px;
    font-weight:900;
    letter-spacing:-.06em;

    box-shadow:
      0 7px 22px rgba(198,255,88,.16);
}

.fp3-install-card__content{
    min-width:0;
}

.fp3-install-card__content small{
    display:block;

    margin-bottom:2px;

    color:#c6ff58;

    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}

.fp3-install-card__content strong{
    display:block;

    color:#fff;

    font-size:13px;
    line-height:1.2;
}

.fp3-install-card__content span{
    display:block;

    margin-top:3px;

    color:rgba(255,255,255,.52);

    font-size:10px;
    line-height:1.3;
}

.fp3-install-card__action{
    border:0;
    border-radius:12px;

    padding:10px 12px;

    background:#c6ff58;
    color:#07100c;

    font-size:11px;
    font-weight:900;

    white-space:nowrap;
    cursor:pointer;
}

.fp3-install-card__close{
    position:absolute;

    top:-9px;
    right:-6px;

    width:25px;
    height:25px;

    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;

    background:#121b18;
    color:rgba(255,255,255,.65);

    display:grid;
    place-items:center;

    padding:0;

    font-size:17px;
    line-height:1;

    cursor:pointer;
}


/* Bottom sheet ------------------------------------------------ */

.fp3-install-sheet{
    position:fixed;
    inset:0;
    z-index:10000;

    display:flex;
    align-items:flex-end;
    justify-content:center;

    padding:18px;

    background:rgba(2,6,5,.68);

    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);

    animation:
      fp3InstallFade .22s ease both;
}

.fp3-install-sheet__panel{
    position:relative;

    width:min(100%,520px);

    padding:
      10px 20px
      calc(22px + env(safe-area-inset-bottom));

    border:1px solid rgba(255,255,255,.1);
    border-radius:28px;

    background:
      radial-gradient(
        circle at 90% 0%,
        rgba(198,255,88,.13),
        transparent 30%
      ),
      #0b1411;

    box-shadow:
      0 -10px 60px rgba(0,0,0,.5);

    animation:
      fp3InstallRise .34s
      cubic-bezier(.2,.8,.2,1)
      both;
}

.fp3-install-sheet__handle{
    width:38px;
    height:4px;

    margin:0 auto 18px;

    border-radius:999px;

    background:rgba(255,255,255,.16);
}

.fp3-install-sheet__close{
    position:absolute;

    right:16px;
    top:15px;

    width:34px;
    height:34px;

    display:grid;
    place-items:center;

    padding:0;

    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;

    background:rgba(255,255,255,.05);
    color:rgba(255,255,255,.7);

    font-size:22px;
}

.fp3-install-sheet__brand{
    display:flex;
    gap:13px;
    align-items:center;

    padding-right:40px;
}

.fp3-install-sheet__icon{
    flex:0 0 auto;

    width:54px;
    height:54px;

    display:grid;
    place-items:center;

    border-radius:17px;

    background:#c6ff58;
    color:#07100c;

    font-size:27px;
    font-weight:900;
}

.fp3-install-sheet__brand small{
    display:block;

    color:#c6ff58;

    font-size:9px;
    font-weight:900;
    letter-spacing:.14em;
}

.fp3-install-sheet__brand h2{
    margin:3px 0 0;

    font-size:23px;
    letter-spacing:-.035em;
}

.fp3-install-sheet__intro{
    margin:17px 0 19px;

    color:rgba(255,255,255,.62);

    font-size:13px;
    line-height:1.55;
}

.fp3-install-steps{
    display:grid;
    gap:8px;
}

.fp3-install-step{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:12px;
    align-items:center;

    padding:13px;

    border:1px solid rgba(255,255,255,.07);
    border-radius:15px;

    background:rgba(255,255,255,.025);
}

.fp3-install-step > b{
    width:31px;
    height:31px;

    display:grid;
    place-items:center;

    border-radius:10px;

    background:rgba(198,255,88,.10);
    color:#c6ff58;

    font-size:12px;
}

.fp3-install-step strong{
    display:block;

    font-size:12px;
}

.fp3-install-step span{
    display:block;

    margin-top:2px;

    color:rgba(255,255,255,.45);

    font-size:10px;
    line-height:1.4;
}

.fp3-install-step em{
    color:#fff;
    font-style:normal;
}

.fp3-install-sheet__benefit{
    display:flex;
    flex-wrap:wrap;
    gap:6px;

    margin-top:16px;
}

.fp3-install-sheet__benefit span{
    padding:7px 9px;

    border-radius:999px;

    background:rgba(198,255,88,.07);
    color:rgba(255,255,255,.68);

    font-size:9px;
    font-weight:700;
}

.fp3-install-sheet__done{
    width:100%;
    margin-top:17px;
}


@keyframes fp3InstallRise{
    from{
        opacity:0;
        transform:translateY(35px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

@keyframes fp3InstallFade{
    from{opacity:0}
    to{opacity:1}
}


@media(min-width:821px){

    .fp3-install-card{
        display:none;
    }
}

@media(max-width:430px){

    .fp3-install-card{
        left:10px;
        right:10px;

        gap:9px;

        padding:
          11px 11px 11px 12px;
    }

    .fp3-install-card__icon{
        width:42px;
        height:42px;

        border-radius:13px;
    }

    .fp3-install-card__content span{
        display:none;
    }

    .fp3-install-card__action{
        padding:9px 10px;
    }
}


/* ============================================================
   v3.11.11.3b · GLOBAL ALERT CARD
   ============================================================ */

.fp3-global-alert-card{
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  border:1px solid var(--fp-border-soft);
  border-radius:18px;
  background:var(--fp-card);
}

.fp3-global-alert-card__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:var(--fp-surface-2);
  font-size:21px;
}

.fp3-global-alert-card__body{
  min-width:0;
}

.fp3-global-alert-card__body strong{
  display:block;
  font-size:14px;
}

.fp3-global-alert-card__body p{
  margin:4px 0 0;
  max-width:680px;
  color:var(--fp-text-dim);
  font-size:11px;
  line-height:1.45;
}

.fp3-global-alert-card__button{
  width:auto;
  min-width:165px;
  white-space:nowrap;
}

@media (max-width:720px){

  .fp3-global-alert-card{
    grid-template-columns:42px minmax(0,1fr);
    padding:14px;
  }

  .fp3-global-alert-card__icon{
    width:42px;
    height:42px;
  }

  .fp3-global-alert-card__button{
    grid-column:1 / -1;
    width:100%;
    min-width:0;
    margin-top:2px;
  }
}


/* ============================================================
   v3.11.11.3c · MOBILE UI CLEAN
   ============================================================ */

.fp3-global-alert-card{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px 18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(13,28,33,.92);
  overflow:hidden;
}

.fp3-global-alert-card__icon{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  font-size:22px;
}

.fp3-global-alert-card__body{
  min-width:0;
}

.fp3-global-alert-card__body strong{
  display:block;
  font-size:14px;
  line-height:1.2;
}

.fp3-global-alert-card__body p{
  margin:5px 0 0;
  font-size:12px;
  line-height:1.45;
  color:rgba(255,255,255,.68);
}

.fp3-global-alert-card__button{
  min-width:170px;
  white-space:nowrap;
}

@media (max-width: 760px){

  .fp3-global-alert-card{
    grid-template-columns:42px minmax(0,1fr);
    padding:14px;
  }

  .fp3-global-alert-card__icon{
    width:42px;
    height:42px;
    font-size:20px;
  }

  .fp3-global-alert-card__button{
    grid-column:1 / -1;
    width:100%;
    min-width:0;
    margin-top:4px;
  }
}

/* defensa adicional por si el hero arrastra overflow horizontal */
@media (max-width: 760px){
  .fp3-hero,
  .fp3-home-hero,
  .fp3-home-hero__inner,
  .fp3-home-hero__content{
    overflow-x:hidden;
  }
}


/* ============================================================
   v4.0A · FACTOR INTELLIGENCE UI
   ============================================================ */

.fp4-intelligence{
  display:grid;
  gap:12px;
}

.fp4-pulse{
  position:relative;
  overflow:hidden;
  padding:20px;
  border:1px solid rgba(178,255,46,.2);
  border-radius:20px;
  background:
    radial-gradient(
      circle at 95% 0%,
      rgba(178,255,46,.10),
      transparent 34%
    ),
    rgba(12,25,30,.96);
}

.fp4-pulse::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:4px;
  height:100%;
  background:#b2ff2e;
}

.fp4-pulse__top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.fp4-pulse__eyebrow{
  display:block;
  margin-bottom:7px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  color:#b2ff2e;
}

.fp4-pulse h2{
  margin:0;
  max-width:720px;
  font-size:clamp(19px,3vw,27px);
  line-height:1.12;
}

.fp4-pulse__confidence{
  flex:0 0 auto;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  font-size:8px;
  font-weight:800;
  letter-spacing:.08em;
  color:rgba(255,255,255,.62);
}

.fp4-pulse__text{
  max-width:840px;
  margin:12px 0 0;
  font-size:13px;
  line-height:1.65;
  color:rgba(255,255,255,.82);
}

.fp4-evidence{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}

.fp4-evidence__item{
  min-width:82px;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:12px;
  background:rgba(255,255,255,.025);
}

.fp4-evidence__item small{
  display:block;
  margin-bottom:3px;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:rgba(255,255,255,.48);
}

.fp4-evidence__item strong{
  font-size:12px;
}

.fp4-pulse__source{
  margin:13px 0 0;
  font-size:9px;
  color:rgba(255,255,255,.38);
}


.fp4-catchup{
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(13,26,31,.82);
  overflow:hidden;
}

.fp4-catchup summary{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:15px 17px;
  cursor:pointer;
  list-style:none;
}

.fp4-catchup summary::-webkit-details-marker{
  display:none;
}

.fp4-catchup__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:13px;
  background:rgba(178,255,46,.08);
  font-size:18px;
}

.fp4-catchup__summary{
  min-width:0;
}

.fp4-catchup__summary strong{
  display:block;
  font-size:13px;
}

.fp4-catchup__summary small{
  display:block;
  margin-top:3px;
  font-size:10px;
  color:rgba(255,255,255,.55);
}

.fp4-catchup__action{
  padding:7px 11px;
  border-radius:999px;
  background:rgba(178,255,46,.10);
  font-size:9px;
  font-weight:700;
  color:#b2ff2e;
}

.fp4-catchup[open] .fp4-catchup__action{
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.52);
}

.fp4-catchup__content{
  padding:0 18px 18px 72px;
}

.fp4-catchup__content > p{
  margin:0;
  max-width:820px;
  font-size:12px;
  line-height:1.65;
  color:rgba(255,255,255,.78);
}

.fp4-turning{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.07);
}

.fp4-turning__title{
  margin:0 0 9px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
}

.fp4-turning__row{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:10px;
  padding:8px 0;
}

.fp4-turning__minute{
  font-size:11px;
  font-weight:800;
  color:#b2ff2e;
}

.fp4-turning__event strong,
.fp4-turning__event small{
  display:block;
}

.fp4-turning__event strong{
  font-size:11px;
}

.fp4-turning__event small{
  margin-top:2px;
  font-size:9px;
  color:rgba(255,255,255,.48);
}


@media(max-width:720px){

  .fp4-pulse{
    padding:17px 15px 16px 18px;
  }

  .fp4-pulse__top{
    display:block;
  }

  .fp4-pulse__confidence{
    display:inline-block;
    margin-top:10px;
  }

  .fp4-evidence{
    display:grid;
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .fp4-evidence__item{
    min-width:0;
  }

  .fp4-catchup summary{
    grid-template-columns:38px minmax(0,1fr);
    padding:14px;
  }

  .fp4-catchup__icon{
    width:38px;
    height:38px;
  }

  .fp4-catchup__action{
    grid-column:1 / -1;
    width:100%;
    text-align:center;
  }

  .fp4-catchup__content{
    padding:0 14px 15px;
  }
}


/* ============================================================
   v4.0B · CRÓNICA VIVA UI
   ============================================================ */

.fp4-chronicle{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:rgba(10,21,26,.94);
}

.fp4-chronicle__head{
  padding:20px 20px 17px;
  border-bottom:1px solid rgba(255,255,255,.06);
}

.fp4-chronicle__label{
  display:block;
  margin-bottom:7px;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  color:#b2ff2e;
}

.fp4-chronicle__head h2{
  margin:0;
  max-width:800px;
  font-size:clamp(20px,3vw,29px);
  line-height:1.12;
}

.fp4-chronicle__head p{
  max-width:800px;
  margin:9px 0 0;
  font-size:12px;
  line-height:1.6;
  color:rgba(255,255,255,.62);
}

.fp4-chronicle__story{
  position:relative;
  padding:8px 20px;
}

.fp4-chronicle__story::before{
  content:"";
  position:absolute;
  top:24px;
  bottom:24px;
  left:45px;
  width:1px;
  background:rgba(178,255,46,.16);
}

.fp4-story-beat{
  position:relative;
  display:grid;
  grid-template-columns:50px minmax(0,1fr);
  gap:13px;
  padding:12px 0;
}

.fp4-story-beat__minute{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  width:50px;
  min-height:32px;
  border-radius:999px;
  background:#13252b;
  font-size:10px;
  font-weight:800;
  color:#b2ff2e;
}

.fp4-story-beat.is-alert .fp4-story-beat__minute{
  color:#fff;
}

.fp4-story-beat__content{
  padding:3px 0 0;
}

.fp4-story-beat__content strong{
  display:block;
  font-size:12px;
}

.fp4-story-beat__content p{
  margin:4px 0 0;
  font-size:11px;
  line-height:1.55;
  color:rgba(255,255,255,.60);
}

.fp4-chronicle__closing{
  padding:16px 20px 18px;
  border-top:1px solid rgba(255,255,255,.06);
  background:rgba(178,255,46,.025);
}

.fp4-chronicle__closing small{
  display:block;
  margin-bottom:5px;
  font-size:8px;
  font-weight:800;
  letter-spacing:.1em;
  color:rgba(255,255,255,.42);
}

.fp4-chronicle__closing p{
  max-width:830px;
  margin:0;
  font-size:12px;
  line-height:1.6;
  color:rgba(255,255,255,.76);
}

@media(max-width:720px){

  .fp4-chronicle__head{
    padding:17px 15px 15px;
  }

  .fp4-chronicle__story{
    padding:7px 14px;
  }

  .fp4-chronicle__story::before{
    left:36px;
  }

  .fp4-story-beat{
    grid-template-columns:44px minmax(0,1fr);
    gap:10px;
  }

  .fp4-story-beat__minute{
    width:44px;
  }

  .fp4-chronicle__closing{
    padding:15px;
  }
}


/* ============================================================
   v4.0C.1 · QUÉ SIGNIFICA UI
   ============================================================ */

.fp4-meaning{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:20px;
  background:rgba(12,24,29,.90);
}

.fp4-meaning__head{
  padding:18px 20px 15px;
  border-bottom:1px solid rgba(255,255,255,.06);
}

.fp4-meaning__head>span{
  display:block;
  margin-bottom:6px;
  color:#b2ff2e;
  font-size:9px;
  font-weight:800;
  letter-spacing:.11em;
}

.fp4-meaning__head h2{
  margin:0;
  font-size:clamp(18px,3vw,25px);
}

.fp4-meaning__head p{
  max-width:820px;
  margin:8px 0 0;
  color:rgba(255,255,255,.59);
  font-size:11px;
  line-height:1.55;
}

.fp4-meaning__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px;
  background:rgba(255,255,255,.055);
}

.fp4-meaning-team{
  min-width:0;
  padding:18px;
  background:#0c181d;
}

.fp4-meaning-team__name{
  display:block;
  margin-bottom:12px;
  font-size:14px;
}

.fp4-meaning-team__standing{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}

.fp4-meaning-team__standing>div{
  padding:9px 7px;
  border-radius:11px;
  background:rgba(255,255,255,.035);
  text-align:center;
}

.fp4-meaning-team__standing small,
.fp4-meaning-team__standing strong{
  display:block;
}

.fp4-meaning-team__standing small{
  font-size:7px;
  color:rgba(255,255,255,.40);
}

.fp4-meaning-team__standing strong{
  margin-top:3px;
  font-size:13px;
}

.fp4-meaning-team__stale{
  padding:10px;
  border:1px solid rgba(232,189,84,.16);
  border-radius:11px;
  background:rgba(232,189,84,.04);
  color:rgba(255,255,255,.54);
  font-size:9px;
}

.fp4-next-match{
  display:block;
  margin-top:10px;
  padding:11px 12px;
  border:1px solid rgba(178,255,46,.12);
  border-radius:12px;
  background:rgba(178,255,46,.035);
}

.fp4-next-match small,
.fp4-next-match strong,
.fp4-next-match span{
  display:block;
}

.fp4-next-match small{
  font-size:7px;
  letter-spacing:.08em;
  color:#b2ff2e;
}

.fp4-next-match strong{
  margin-top:4px;
  font-size:11px;
}

.fp4-next-match span{
  margin-top:3px;
  font-size:9px;
  color:rgba(255,255,255,.47);
}

.fp4-meaning-team__text{
  margin:12px 0 0;
  font-size:10px;
  line-height:1.55;
  color:rgba(255,255,255,.60);
}

.fp4-meaning__source{
  padding:11px 18px;
  border-top:1px solid rgba(255,255,255,.06);
  color:rgba(255,255,255,.36);
  font-size:8px;
}

@media(max-width:720px){

  .fp4-meaning__head{
    padding:16px 15px 14px;
  }

  .fp4-meaning__grid{
    grid-template-columns:1fr;
  }

  .fp4-meaning-team{
    padding:15px;
  }

  .fp4-meaning__source{
    padding:10px 15px;
  }
}


/* ============================================================
   v4.0C.4A · RESULTADOS EDITORIAL
   ============================================================ */

.fp4-results-hero{
  padding:22px;
  border:1px solid rgba(178,255,46,.14);
  border-radius:22px;
  background:
    radial-gradient(
      circle at 90% 0,
      rgba(178,255,46,.08),
      transparent 38%
    ),
    var(--fp-card);
}

.fp4-results-hero>span{
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
  color:var(--fp-acid);
}

.fp4-results-hero h1{
  max-width:680px;
  margin:8px 0;
  font-size:clamp(24px,4vw,38px);
  line-height:1.05;
}

.fp4-results-hero p{
  max-width:720px;
  margin:0;
  color:var(--fp-text-dim);
  line-height:1.6;
}


.fp4-match-nav{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:7px;
}

.fp4-match-nav a{
  padding:11px;
  border:1px solid var(--fp-border-soft);
  border-radius:12px;
  background:var(--fp-card);
  text-align:center;
  font-size:11px;
  font-weight:750;
}

.fp4-match-nav a.is-active{
  border-color:rgba(178,255,46,.28);
  background:var(--fp-acid-bg);
  color:var(--fp-acid);
}


.fp4-results{
  display:grid;
  gap:28px;
}

.fp4-results-day__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px;
}

.fp4-results-day__head strong{
  font-size:16px;
}

.fp4-results-day__head span{
  font-size:9px;
  color:var(--fp-text-mute);
}


.fp4-results-league{
  overflow:hidden;
  margin-top:10px;
  border:1px solid var(--fp-border-soft);
  border-radius:18px;
  background:var(--fp-card);
}

.fp4-results-league__head{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-bottom:1px solid var(--fp-border-soft);
  font-size:10px;
  color:var(--fp-text-dim);
}

.fp4-results-list{
  display:grid;
}


.fp4-result-card{
  display:grid;
  grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);
  align-items:center;
  gap:20px;
  padding:16px;
  border-bottom:1px solid var(--fp-border-soft);
  transition:
    background .16s ease,
    transform .16s ease;
}

.fp4-result-card:last-child{
  border-bottom:0;
}

.fp4-result-card:hover{
  background:rgba(255,255,255,.025);
}


.fp4-result-card__match{
  display:grid;
  grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);
  align-items:center;
  gap:10px;
}

.fp4-result-team{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}

.fp4-result-team.is-away{
  flex-direction:row-reverse;
  text-align:right;
}

.fp4-result-team span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:11px;
  font-weight:700;
}

.fp4-result-score{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:7px;
  font-size:23px;
  font-weight:900;
}

.fp4-result-score i{
  font-style:normal;
  color:var(--fp-text-mute);
}


.fp4-result-card__story{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
}

.fp4-result-card__story>div{
  min-width:0;
}

.fp4-result-card__story small,
.fp4-result-card__story strong,
.fp4-result-card__story p{
  display:block;
}

.fp4-result-card__story small{
  margin-bottom:4px;
  font-size:8px;
  letter-spacing:.06em;
  color:var(--fp-text-mute);
}

.fp4-result-card__story strong{
  font-size:12px;
}

.fp4-result-card__story p{
  margin:5px 0 0;
  font-size:9px;
  line-height:1.5;
  color:var(--fp-text-dim);
}

.fp4-result-card__story>span{
  flex:0 0 auto;
  font-size:9px;
  font-weight:700;
  color:var(--fp-acid);
}


@media(max-width:720px){

  .fp4-results-hero{
    padding:18px 15px;
  }

  .fp4-result-card{
    grid-template-columns:1fr;
    gap:11px;
    padding:14px;
  }

  .fp4-result-card__match{
    grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);
  }

  .fp4-result-score{
    font-size:20px;
  }

  .fp4-result-card__story{
    padding-top:10px;
    border-top:1px solid var(--fp-border-soft);
  }

}


/* ============================================================
   v4.0C.4B · HISTORIAS FACTOR
   ============================================================ */

.fp4-stories-hero{
  position:relative;
  overflow:hidden;
  padding:24px;
  border:1px solid rgba(178,255,46,.14);
  border-radius:24px;
  background:
    radial-gradient(
      circle at 90% 0,
      rgba(178,255,46,.10),
      transparent 38%
    ),
    var(--fp-card);
}

.fp4-stories-hero>span{
  display:block;
  color:var(--fp-acid);
  font-size:9px;
  font-weight:850;
  letter-spacing:.12em;
}

.fp4-stories-hero h1{
  max-width:720px;
  margin:9px 0;
  font-size:clamp(27px,5vw,44px);
  line-height:1.02;
}

.fp4-stories-hero>p{
  max-width:760px;
  margin:0;
  font-size:12px;
  line-height:1.65;
  color:var(--fp-text-dim);
}

.fp4-stories-flow{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  flex-wrap:wrap;
}

.fp4-stories-flow span{
  padding:8px 10px;
  border:1px solid var(--fp-border-soft);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  font-size:9px;
  color:var(--fp-text-dim);
}

.fp4-stories-flow span b{
  margin-right:4px;
  color:var(--fp-text);
  font-size:8px;
}

.fp4-stories-flow i{
  font-style:normal;
  color:var(--fp-text-mute);
}


.fp4-story-card{
  display:flex;
  flex-direction:column;
}

.fp4-story-card__copy{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid var(--fp-border-soft);
}

.fp4-story-card__copy small{
  display:block;
  margin-bottom:5px;
  font-size:8px;
  color:var(--fp-text-mute);
}

.fp4-story-card__copy h3{
  margin:0;
  font-size:15px;
  line-height:1.22;
}

.fp4-story-card__copy p{
  margin:7px 0 0;
  font-size:10px;
  line-height:1.55;
  color:var(--fp-text-dim);
}

.fp4-story-card .fp3-editorial-link{
  margin-top:auto;
  padding-top:13px;
}


@media(max-width:600px){

  .fp4-stories-hero{
    padding:19px 16px;
  }

  .fp4-stories-flow{
    display:grid;
    grid-template-columns:1fr;
  }

  .fp4-stories-flow i{
    display:none;
  }

}


/* ============================================================
   v4.0C.4C · CLEAN MATCH EXPERIENCE
   ============================================================ */

.fp4-markets-entry{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:8px;
  padding:11px 14px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:12px;
  background:rgba(255,255,255,.018);
}

.fp4-markets-entry span{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.fp4-markets-entry strong{
  font-size:9px;
  color:var(--fp-text-dim);
}

.fp4-markets-entry small{
  font-size:8px;
  color:var(--fp-text-mute);
}

.fp4-markets-entry b{
  flex:0 0 auto;
  font-size:8px;
  color:var(--fp-text-mute);
}

.fp4-markets-entry:hover{
  border-color:rgba(178,255,46,.16);
}


.fp4-markets-banner{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:12px;
  padding:13px 15px;
  border:1px solid rgba(178,255,46,.18);
  border-radius:14px;
  background:rgba(178,255,46,.035);
}

.fp4-markets-banner span{
  color:var(--fp-acid);
  font-size:8px;
  font-weight:850;
  letter-spacing:.1em;
}

.fp4-markets-banner strong{
  font-size:10px;
}

.fp4-markets-banner a{
  margin-left:auto;
  font-size:8px;
  color:var(--fp-text-dim);
}


@media(max-width:600px){

  .fp4-markets-entry{
    align-items:flex-start;
  }

  .fp4-markets-entry small{
    max-width:210px;
  }

  .fp4-markets-banner{
    flex-wrap:wrap;
  }

  .fp4-markets-banner a{
    width:100%;
    margin-left:0;
  }

}


/* ============================================================
   v4.0C.4D.1 · EDITORIAL NOTE
   ============================================================ */

.fp4-note-lead{
  margin-top:18px;
  padding:22px;
  border:1px solid rgba(178,255,46,.13);
  border-radius:20px;
  background:
    radial-gradient(
      circle at 90% 0,
      rgba(178,255,46,.07),
      transparent 40%
    ),
    var(--fp-card);
}

.fp4-note-lead>span{
  display:block;
  margin-bottom:7px;
  color:var(--fp-acid);
  font-size:8px;
  font-weight:850;
  letter-spacing:.11em;
}

.fp4-note-lead h2{
  max-width:760px;
  margin:0;
  font-size:clamp(21px,3.5vw,31px);
  line-height:1.08;
}

.fp4-note-lead>p{
  max-width:780px;
  margin:11px 0 0;
  line-height:1.7;
  color:var(--fp-text-dim);
}

.fp4-note-context{
  margin-top:14px;
  padding:11px 13px;
  border-left:2px solid var(--fp-acid);
  border-radius:0 10px 10px 0;
  background:rgba(178,255,46,.035);
  font-size:10px;
  line-height:1.6;
  color:var(--fp-text-dim);
}


.fp4-note-keylist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
  margin-top:15px;
}

.fp4-note-keylist article{
  padding:13px;
  border:1px solid var(--fp-border-soft);
  border-radius:13px;
  background:rgba(255,255,255,.02);
}

.fp4-note-keylist strong{
  display:block;
  font-size:11px;
}

.fp4-note-keylist p{
  margin:5px 0 0;
  font-size:9px;
  line-height:1.55;
  color:var(--fp-text-dim);
}


.fp4-markets-teaser{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin-top:28px;
  padding:18px;
  border:1px solid var(--fp-border-soft);
  border-radius:18px;
  background:rgba(255,255,255,.018);
}

.fp4-markets-teaser>div{
  max-width:720px;
}

.fp4-markets-teaser small{
  color:var(--fp-text-mute);
  font-size:8px;
  font-weight:850;
  letter-spacing:.1em;
}

.fp4-markets-teaser h2{
  margin:5px 0;
  font-size:16px;
}

.fp4-markets-teaser p{
  margin:0;
  font-size:10px;
  line-height:1.55;
  color:var(--fp-text-dim);
}

.fp4-markets-teaser.is-signal{
  border-color:rgba(178,255,46,.18);
}

.fp4-markets-teaser.is-wait{
  border-color:rgba(245,158,11,.16);
}


@media(max-width:640px){

  .fp4-note-lead{
    padding:18px 15px;
  }

  .fp4-note-keylist{
    grid-template-columns:1fr;
  }

  .fp4-markets-teaser{
    align-items:flex-start;
    flex-direction:column;
  }

}

