/* HeroStats V6.9 · inteligencia visual, portada clicable, rankings con barra e identidades locales */
:root{
  --signal-positive-strong:#28df80;
  --signal-positive-soft:#82d99a;
  --signal-neutral:#8b98a2;
  --signal-negative-soft:#df8b82;
  --signal-negative-strong:#ff6661;
}
.signal-positive-strong{--signal-color:var(--signal-positive-strong);--signal-bg:rgba(40,223,128,.13);--signal-border:rgba(40,223,128,.55)}
.signal-positive-soft{--signal-color:var(--signal-positive-soft);--signal-bg:rgba(130,217,154,.09);--signal-border:rgba(130,217,154,.38)}
.signal-neutral{--signal-color:var(--signal-neutral);--signal-bg:rgba(139,152,162,.07);--signal-border:rgba(139,152,162,.24)}
.signal-negative-soft{--signal-color:var(--signal-negative-soft);--signal-bg:rgba(223,139,130,.09);--signal-border:rgba(223,139,130,.35)}
.signal-negative-strong{--signal-color:var(--signal-negative-strong);--signal-bg:rgba(255,102,97,.12);--signal-border:rgba(255,102,97,.52)}

/* Identidad visual determinista de equipos: no pretende ser un escudo oficial. */
.hs-team-badge{position:relative;isolation:isolate;flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.19);border-radius:10px;background:hsl(var(--team-hue) 62% 38%);color:#fff;box-shadow:inset 0 0 0 1px rgba(0,0,0,.13),0 5px 14px rgba(0,0,0,.2);overflow:hidden}
.hs-team-badge:before{position:absolute;z-index:-1;inset:0;content:"";opacity:.95}
.hs-team-pattern-diagonal:before{background:linear-gradient(135deg,transparent 0 43%,hsl(var(--team-hue-2) 70% 45%) 44% 66%,transparent 67%)}
.hs-team-pattern-split:before{background:linear-gradient(90deg,hsl(var(--team-hue) 63% 39%) 0 50%,hsl(var(--team-hue-2) 65% 42%) 50%)}
.hs-team-pattern-stripe:before{background:repeating-linear-gradient(90deg,hsl(var(--team-hue) 63% 39%) 0 28%,hsl(var(--team-hue-2) 65% 43%) 28% 48%)}
.hs-team-pattern-solid:before{background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.22),transparent 34%),hsl(var(--team-hue) 62% 38%)}
.hs-team-badge b{position:relative;z-index:2;font-size:12px;font-weight:950;letter-spacing:.25px;text-shadow:0 1px 2px rgba(0,0,0,.65)}
.legacy-team-badge{width:36px;height:36px;border-radius:11px}
.legacy-team-badge b{font-size:12px}

.hs-country-flag{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;border:1px solid #2d414e;border-radius:11px;background:#0b1720;font-size:20px;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.country-flag{width:42px;height:42px;border-radius:12px;font-size:23px}
.league-row-flag{width:34px;height:34px;border-radius:10px;font-size:18px}
.ranking-country-flag{display:inline-grid;width:21px;height:21px;margin-right:6px;border-radius:6px;font-size:12px;vertical-align:middle}
.catalog-league{grid-template-columns:38px minmax(0,1fr) auto!important;gap:12px!important}
.catalog-league>span:nth-child(2){min-width:0}

/* Portada de partidos */
.dashboard-match-link{position:relative;border-left:4px solid var(--signal-color);background:linear-gradient(90deg,var(--signal-bg),transparent 22%);cursor:pointer;transition:background .16s,border-color .16s,transform .16s}
.dashboard-match-link:hover,.dashboard-match-link:focus-visible{background:linear-gradient(90deg,var(--signal-bg),rgba(255,255,255,.025) 55%);outline:none;transform:translateY(-1px)}
.dashboard-match-link:focus-visible{box-shadow:inset 0 0 0 2px var(--signal-border)}
.dashboard-clubs>div{grid-template-columns:36px minmax(0,1fr) 22px!important;gap:9px}
.dashboard-team-badge{width:30px;height:30px;border-radius:9px}
.dashboard-team-name{min-width:0;overflow:hidden;color:#dce4e7;font-size:13px;font-weight:820;text-overflow:ellipsis;white-space:nowrap}
.dashboard-clubs .entity-favorite{justify-self:end;opacity:.45}
.dashboard-match-link:hover .entity-favorite,.dashboard-clubs .entity-favorite.active{opacity:1}
.dashboard-next{display:grid;place-items:center;width:34px;height:34px;justify-self:center;border:1px solid #2a3c47;border-radius:9px;color:var(--signal-color);font-size:22px}
.quick-stat{display:grid!important;align-content:center;min-height:46px;padding:7px 9px!important;border-color:var(--signal-border)!important;background:linear-gradient(145deg,var(--signal-bg),rgba(11,24,33,.82))!important;text-align:left!important;transition:transform .14s,border-color .14s}
.quick-stat:hover{transform:translateY(-1px);border-color:var(--signal-color)!important}
.quick-stat small{color:#82909a!important;font-size:12px!important}
.quick-stat b{color:var(--signal-color)!important;font-size:12px!important}
.dashboard-match-link>.match-open{color:#7f8e96}
.dashboard-match-link:hover>.match-open{color:var(--signal-color)}
.competition-block-head .competition-flag{width:38px;height:38px}

/* Celdas coloreadas: el valor mostrado manda, también tras cambiar a UNDER. */
.signal-cell{position:relative;background:var(--signal-bg)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)}
.signal-cell b,.signal-cell strong,.signal-cell span{color:var(--signal-color)!important;font-weight:900}
.deep-table td.signal-cell.scope-active{background:linear-gradient(var(--signal-bg),var(--signal-bg)),rgba(85,209,44,.055)!important}

/* Tarjetas superiores del resumen de goles */
.analysis-combined-card{position:relative;border-color:var(--signal-border)!important;background:linear-gradient(145deg,var(--signal-bg),#0b151e 58%)!important;box-shadow:inset 0 3px 0 var(--signal-color),0 12px 30px rgba(0,0,0,.19)!important}
.analysis-combined-card>strong{color:var(--signal-color)!important}
.analysis-league-benchmark{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;margin-top:13px!important;padding-top:11px;border-top:1px solid rgba(255,255,255,.08)}
.analysis-league-benchmark>b{color:#bcc7cc;font-size:12px}
.analysis-league-benchmark>span{grid-column:1;color:#75858e!important;font-size:12px!important;text-transform:none!important}
.analysis-league-benchmark>strong{grid-column:2;grid-row:1/3;align-self:center;margin:0!important;color:var(--signal-color)!important;font-size:16px!important}
.analysis-league-benchmark>small{grid-column:1;color:#63737c!important;font-size:12px!important;text-transform:none!important}

.analysis-general-market-summary>div.signal-positive-strong,.analysis-general-market-summary>div.signal-positive-soft,.analysis-general-market-summary>div.signal-neutral,.analysis-general-market-summary>div.signal-negative-soft,.analysis-general-market-summary>div.signal-negative-strong{border-color:var(--signal-border)!important;background:var(--signal-bg)!important}
.analysis-general-market-summary>div[class*="signal-"] strong{color:var(--signal-color)!important}

/* Perfil y encabezados de equipo */
.analysis-team-mark{width:58px!important;height:58px!important;border-radius:17px!important;background:hsl(var(--team-hue) 62% 38%)!important}
.analysis-team-mark b{font-size:12px}

/* Rankings próximos en la portada */
.home-ranking-item{position:relative;border-left:4px solid var(--signal-color)!important;background:linear-gradient(90deg,var(--signal-bg),#0b1720 24%)!important}
.home-ranking-value strong{color:var(--signal-color)!important}
.ranking-strength-track,.market-ranking-strength{display:block;height:7px;margin-top:7px;border-radius:999px;background:#1c2a34;overflow:hidden}
.ranking-strength-track i,.market-ranking-strength i{display:block;height:100%;border-radius:inherit;background:var(--signal-color);box-shadow:0 0 12px color-mix(in srgb,var(--signal-color) 45%,transparent)}
.home-ranking-match>b{display:flex!important;align-items:center;gap:7px;white-space:normal!important}
.home-ranking-match>b>span{display:flex;align-items:center;gap:6px;min-width:0;margin:0!important;color:#e1e7ea}
.ranking-team-badge{width:25px;height:25px;border-radius:7px}
.ranking-team-badge b{font-size:12px}

/* Rankings de Stats en lista visual */
.market-ranking-section{overflow:hidden}
.market-ranking-list{display:grid;margin:0;padding:0;list-style:none;background:#1b2c36}
.market-ranking-item{position:relative;display:grid;grid-template-columns:58px minmax(230px,1.25fr) minmax(155px,.65fr) minmax(330px,1.25fr) 120px 132px;align-items:center;gap:15px;min-height:92px;padding:13px 18px;border-top:1px solid #1b2d37;border-left:4px solid var(--signal-color);background:linear-gradient(90deg,var(--signal-bg),#0b1720 24%)}
.market-ranking-item:first-child{border-top:0}
.market-ranking-item:hover{background:linear-gradient(90deg,var(--signal-bg),#10202a 42%)}
.market-rank-number{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--signal-border);border-radius:13px;background:var(--signal-bg);color:var(--signal-color);font-size:18px;font-weight:950}
.market-ranked-team>a{display:flex;align-items:center;gap:11px;min-width:0}
.market-ranked-team>a>span{min-width:0}
.market-ranked-team b,.market-ranked-team small{display:block}
.market-ranked-team b{overflow:hidden;color:#e0e7e9;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.market-ranked-team small{margin-top:5px;color:#74838c;font-size:12px}
.market-team-badge{width:42px;height:42px;border-radius:12px}
.market-team-badge b{font-size:12px}
.market-ranked-primary small,.market-ranked-details small{display:block;color:#6f7f88;font-size:12px;font-weight:850;text-transform:uppercase}
.market-ranked-primary strong{display:block;margin-top:3px;color:var(--signal-color);font-size:25px;line-height:1}
.market-ranked-details{display:grid;grid-template-columns:repeat(5,minmax(55px,1fr));gap:10px}
.market-ranked-details>span{min-width:0}
.market-ranked-details b{display:block;margin-top:5px;color:#cbd4d8;font-size:12px}
.market-ranked-details .market-trend{margin-top:4px}
.market-ranking-item>.sample-state{justify-self:start}
.market-ranking-item>.market-row-actions{justify-self:end;flex-wrap:wrap}
.market-ranking-list-secondary .market-ranking-item{opacity:.82}

/* Ajustes móviles */
@media(max-width:1180px){
  .market-ranking-item{grid-template-columns:52px minmax(210px,1fr) 140px minmax(250px,1fr) 110px}
  .market-ranking-item>.market-row-actions{grid-column:2/6;justify-self:start}
}
@media(max-width:900px){
  .dashboard-match{grid-template-columns:60px minmax(0,1fr) 52px 32px!important;grid-template-areas:"state clubs score favorite" "stats stats stats stats"!important}
  .dashboard-clubs>div{grid-template-columns:31px minmax(0,1fr) 20px!important}
  .dashboard-team-badge{width:27px;height:27px}
  .market-ranking-item{grid-template-columns:44px minmax(0,1fr) 110px;gap:10px;min-height:0;padding:13px}
  .market-ranked-details{grid-column:2/4;grid-template-columns:repeat(5,minmax(0,1fr));padding-top:10px;border-top:1px solid #1d3039}
  .market-ranking-item>.sample-state{grid-column:2}
  .market-ranking-item>.market-row-actions{grid-column:3;grid-row:3;justify-self:end}
}
@media(max-width:640px){
  .hs-country-flag{width:32px;height:32px;font-size:17px}
  .catalog-league{grid-template-columns:34px minmax(0,1fr) auto!important;gap:8px!important}
  .dashboard-team-name{font-size:12px}
  .quick-stats{grid-template-columns:1fr 1fr 1fr}
  .quick-stat{min-height:43px;padding:6px!important}
  .quick-stat small{font-size:12px!important}
  .quick-stat b{font-size:12px!important}
  .analysis-league-benchmark{grid-template-columns:1fr}
  .analysis-league-benchmark>strong{grid-column:1;grid-row:auto;margin-top:4px!important}
  .market-ranking-item{grid-template-columns:38px minmax(0,1fr) 86px}
  .market-rank-number{width:34px;height:34px;border-radius:10px;font-size:14px}
  .market-team-badge{width:34px;height:34px}
  .market-ranked-team b{font-size:12px}
  .market-ranked-team small{font-size:12px}
  .market-ranked-primary strong{font-size:19px}
  .market-ranked-details{grid-column:1/4;grid-template-columns:repeat(3,minmax(0,1fr))}
  .market-ranked-details>span:nth-child(n+4){margin-top:4px}
  .market-ranking-item>.sample-state{grid-column:1/3}
  .market-ranking-item>.market-row-actions{grid-column:3;grid-row:4}
  .home-ranking-match>b{align-items:flex-start;flex-direction:column;gap:3px}
  .home-ranking-match>b>i{display:none}
}
.dataset-country-flag{width:48px;height:48px;border-radius:14px;font-size:26px}
.pending-hero .pending-icon{display:grid;place-items:center;overflow:hidden}

/* V6.9.1 · selector de ámbito integrado en las columnas */
.analysis-controls-without-context{grid-template-columns:repeat(2,minmax(180px,260px));justify-content:start}
.deep-table[data-scope-side] [data-scope-column]{cursor:pointer;transition:background .14s ease,box-shadow .14s ease,color .14s ease}
.deep-table[data-scope-side] th.scope-selectable-head{position:relative;user-select:none}
.deep-table[data-scope-side] th.scope-selectable-head:after{position:absolute;right:8px;bottom:5px;left:8px;height:2px;border-radius:99px;background:transparent;content:""}
.deep-table[data-scope-side] th.scope-selectable-head:hover:after,.deep-table[data-scope-side] th.scope-selectable-head:focus-visible:after{background:#62d153}
.deep-table[data-scope-side] [data-scope-column].scope-column-hover{background:rgba(85,209,44,.105)!important;box-shadow:inset 1px 0 rgba(85,209,44,.18),inset -1px 0 rgba(85,209,44,.18)}
.deep-table[data-scope-side] th.scope-column-hover{color:#c7efbf!important}
.deep-table[data-scope-side] [data-scope-column].scope-active{background:rgba(85,209,44,.115)!important;box-shadow:inset 1px 0 rgba(85,209,44,.22),inset -1px 0 rgba(85,209,44,.22)}
.deep-table[data-scope-side] td.scope-active.signal-cell{background:linear-gradient(var(--signal-bg),var(--signal-bg)),rgba(85,209,44,.115)!important}

/* Banderas SVG locales: visibles igual en Windows, macOS y móvil. */
.hs-country-flag{padding:3px;overflow:hidden}
.hs-country-flag img{display:block;width:100%;height:100%;border-radius:7px;object-fit:cover}
.country-flag img{border-radius:9px}
.league-row-flag img,.ranking-country-flag img{border-radius:5px}
.competition-hero-flag{width:96px;height:96px;padding:6px;border-radius:25px;background:#101d29;box-shadow:0 18px 35px rgba(0,0,0,.32)}
.competition-hero-flag img{border-radius:18px}
.pending-country-flag{width:80px;height:80px;padding:6px;border-radius:22px;background:#101d29}
.pending-country-flag img{border-radius:15px}
.data-pill-with-flag{display:inline-flex;align-items:center;gap:8px}
.page-head-country-flag{width:25px;height:25px;padding:2px;border-radius:7px;font-size:0}
.page-head-country-flag img{border-radius:4px}
@media(max-width:900px){.analysis-controls-without-context{grid-template-columns:1fr 1fr}.competition-hero-flag{width:78px;height:78px;border-radius:21px}.pending-country-flag{width:60px;height:60px;border-radius:17px}}
@media(max-width:560px){.analysis-controls-without-context{grid-template-columns:1fr}.data-pill-with-flag{max-width:190px}.competition-hero-flag{width:70px;height:70px}}
