/*
 * As páginas novas de esportes (reformulação aprovada pelo dono em 28/09/2026): barra de
 * esportes, cabeçalho e abas, a linha de jogo, os cartões e as telas (destaques, ao vivo,
 * agenda, competições, favoritos). Classes .ne-*; as odds, o bilhete, o jogo do dia e as
 * apostas em andamento são os do esportes.css.
 *
 * A linha de jogo se ajusta à LARGURA DO BLOCO onde está (container query), não à da tela:
 * a mesma linha serve à lista larga, aos dois blocos lado a lado e ao celular.
 */

.ne-pagina { max-width: 1560px; padding: 0 0 120px; --ne-linha: var(--nv-linha, #2a3037); --ne-cartao: var(--nv-cartao, #1b1f24); --ne-fundo-2: #15181c; --ne-texto-2: #b9bec5; --ne-texto-3: #737a83; }
.ne-principal { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; align-content: start; min-width: 0; }
.ne-principal > [hidden] { display: none; }
.ne-ponto { display: inline-block; flex: none; width: 7px; height: 7px; border-radius: 50%; background: #ff4d5e; box-shadow: 0 0 0 3px rgba(255, 77, 94, .22); }
.ne-pagina a { color: inherit; text-decoration: none; }
.ne-pagina button { font: inherit; color: inherit; }
.ne-pagina :is(a, button):focus-visible { outline: 2px solid #00ff88; outline-offset: 2px; border-radius: 6px; }

/* No site novo o topo do esportes.js traz só o jogo do dia e as apostas em andamento. */
.ne-topo.sp-vitrine { margin: 0; gap: 14px; }
.ne-topo #spVitBlocos { display: none; }
.ne-andamento[hidden] { display: none; }

/* ------------------------------------------------------------------ barra de esportes */
.ne-barra { display: flex; gap: 8px; padding-top: 7px; min-width: 0; }
.ne-barra.aberta { flex-wrap: wrap; row-gap: 14px; }
.ne-esp { position: relative; flex: 1 1 0; min-width: max-content; max-width: 132px; height: 94px; padding: 0 8px 9px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 5px; border-radius: 12px; background: var(--ne-fundo-2); border: 1px solid var(--ne-linha); color: #d5d9de; font-size: 11.5px; font-weight: 700; cursor: pointer; }
.ne-barra.aberta .ne-esp { flex: 0 0 96px; }
.ne-esp:hover { border-color: #3a424b; color: #fff; }
.ne-esp.ativo { background: rgba(0, 255, 136, .11); border-color: rgba(0, 255, 136, .5); color: #fff; font-weight: 800; }
.ne-esp.ativo .ne-esp-icone { color: #00ff88; }
/* Proposta A ("Azulejos de app", 01/10/2026): o ícone grande logo acima do nome, as contagens nos cantos.
   O nome sai inteiro (regra do dono: nada cortado com reticências); o botão cresce para caber. */
.ne-esp-icone { display: flex; position: absolute; top: 25px; }
.ne-esp-mais .ne-esp-icone { top: 30px; }
.ne-esp-nome { min-width: 66px; text-align: center; white-space: nowrap; }
.ne-esp-total { position: absolute; top: 6px; right: 7px; font-size: 10px; font-weight: 700; color: var(--ne-texto-3); }
/* Na visão "Ao vivo" o número do esporte é o contador ao vivo (opção B): cinza com o ponto vermelho. */
.ne-esp-total.vivo { display: inline-flex; flex-wrap: wrap; align-content: center; align-items: baseline; gap: 4px; top: 5px; right: 6px; height: 17px; min-width: max-content; padding: 0 6px; border-radius: 999px; background: #2a3037; color: #fff; font-weight: 800; }
/* O ponto preso à linha dos números, como no contador do menu (estrutura.css). */
.ne-esp-total.vivo::before { content: ""; position: relative; top: calc(2.5px - .36em); width: 5px; height: 5px; border-radius: 50%; background: #ff5a5a; }
.ne-esp-vivo { position: absolute; top: 5px; left: 6px; }
.ne-esp-mais { border-style: dashed; border-color: #3a424b; color: var(--ne-texto-2); }
/* O "Mais N" é um botão: ".ne-pagina button" (font: inherit) pesa mais que .ne-esp e levaria a letra de 14px. */
.ne-barra .ne-esp-mais { font-size: 11.5px; font-weight: 700; }
.ne-titulo-icone img, .ne-bloco-icone img, .ne-dir-icone img { display: block; }

/* ------------------------------------------------------------------ cabeçalho da página e abas */
.ne-cabeca { display: grid; gap: 6px; min-width: 0; }
.ne-cabeca-linha { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; min-width: 0; }
.ne-titulo { display: flex; align-items: center; gap: 12px; min-width: 0; flex: 1 1 auto; }
.ne-titulo h1 { margin: 0; display: flex; align-items: center; gap: 12px; font-size: 26px; font-weight: 900; letter-spacing: -.02em; line-height: 1.15; min-width: 0; overflow-wrap: anywhere; }
.ne-titulo-icone { display: flex; color: #00ff88; flex: none; }
.ne-resumo { font-size: 13px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-cabeca-direita { display: flex; align-items: center; gap: 10px; min-width: 0; }
.ne-migalha { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; color: var(--ne-texto-3); }
.ne-migalha a:hover { color: #fff; }
.ne-migalha b { color: var(--ne-texto-2); font-weight: 700; }

.ne-abas { display: flex; align-items: stretch; gap: 22px; border-bottom: 1px solid var(--ne-linha); min-width: 0; overflow-x: auto; scrollbar-width: none; }
.ne-abas::-webkit-scrollbar { display: none; }
.ne-aba { flex: none; display: flex; align-items: center; gap: 7px; height: 44px; font-size: 14px; font-weight: 600; color: var(--ne-texto-2); white-space: nowrap; }
.ne-aba:hover { color: #fff; }
.ne-aba.ativa { color: #fff; font-weight: 800; box-shadow: inset 0 -3px 0 #00ff88; }
.ne-conta { display: inline-flex; align-items: center; height: 18px; padding: 0 6px; border-radius: 5px; background: #232930; color: var(--ne-texto-2); font-size: 10px; font-weight: 800; }

/* ------------------------------------------------------------------ seletor de mercado, pílulas */
.ne-seletor { display: flex; align-items: center; gap: 8px; min-width: 0; }
.ne-meu { display: inline-flex; align-items: center; gap: 5px; height: 36px; padding: 0 8px; border: 0; border-radius: 8px; background: transparent; color: var(--ne-texto-3); font-size: 12px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.ne-meu:hover, .ne-meu.ligado { color: #ffd43b; }
.ne-seg { display: inline-flex; padding: 3px; background: var(--ne-fundo-2); border: 1px solid var(--ne-linha); border-radius: 10px; min-width: 0; overflow-x: auto; scrollbar-width: none; }
.ne-seg::-webkit-scrollbar { display: none; }
.ne-seg button { flex: none; height: 30px; padding: 0 13px; border: 0; border-radius: 7px; background: transparent; color: var(--ne-texto-2); font-size: 13px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.ne-seg button:hover { color: #fff; }
.ne-seg button.ativo { background: #2a3037; color: #fff; }
.ne-ferramentas { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px 14px; min-width: 0; }
.ne-ferramentas .ne-seletor { margin-left: auto; }
.ne-filtros { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-width: 0; }
.ne-filtros:empty { display: none; }
.ne-filtros-rotulo { font-size: 12px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-seg-modo { margin-left: auto; }
.ne-pilula { display: inline-flex; align-items: center; gap: 6px; flex: none; height: 34px; padding: 0 13px; border-radius: 999px; border: 1px solid var(--ne-linha); background: var(--ne-fundo-2); color: var(--ne-texto-2); font-size: 13px; font-weight: 700; white-space: nowrap; cursor: pointer; }
.ne-pilula b { color: var(--ne-texto-3); font-weight: 700; }
.ne-pilula svg { color: #00ff88; }
.ne-pilula:hover { border-color: #3a424b; color: #fff; }
.ne-pilula.ligada { background: #232930; border-color: #3a424b; color: #fff; }
.ne-pilula.ligada svg, .ne-pilula svg[fill="currentColor"] { color: #ffd43b; }
.ne-botao { display: inline-flex; align-items: center; justify-content: center; height: 40px; padding: 0 18px; border: 0; border-radius: 10px; background: #00ff88; color: #0e1013 !important; font-size: 14px; font-weight: 800; cursor: pointer; }

/* ------------------------------------------------------------------ blocos e seções */
.ne-conteudo { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; align-content: start; min-width: 0; }
.ne-conteudo:empty { display: none; }
.ne-banner-meio[hidden] { display: none; }
.ne-dupla { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
.ne-bloco { background: var(--ne-cartao); border: 1px solid var(--ne-linha); border-radius: 14px; overflow: hidden; min-width: 0; }
.ne-bloco-cab { display: flex; align-items: center; gap: 10px; min-height: 54px; padding: 0 14px; }
.ne-bloco-cab h2 { margin: 0; font-size: 17px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ne-bloco-icone { display: flex; color: #00ff88; }
.ne-bloco-resumo { font-size: 12px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-bloco-direita { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.ne-bloco-pe { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; margin: 12px 14px 14px; padding: 0 16px; border-radius: 10px; background: #262c33; font-size: 14px; font-weight: 800; color: #fff !important; text-decoration: none; }
.ne-bloco-pe:hover { background: #2f363e; }
.ne-bloco-pe.ne-nota { margin: 0; border-radius: 0; border-top: 1px solid var(--ne-linha); background: none; color: var(--ne-texto-3) !important; font-weight: 600; }
.ne-sem-cab > .ne-lista > :first-child { border-top: 0; }
.ne-bloco-fechado { display: flex; align-items: center; gap: 10px; min-height: 54px; padding: 0 14px; }
.ne-bloco-fechado b { font-size: 16px; }
.ne-bloco-fechado:hover { border-color: #00ff88; }
.ne-secao { display: grid; gap: 12px; min-width: 0; }
.ne-secao-titulo { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 10px; min-width: 0; }
.ne-secao-titulo h2 { margin: 0; display: flex; align-items: center; gap: 9px; font-size: 18px; font-weight: 800; letter-spacing: -.01em; }
.ne-secao-titulo > span { font-size: 12px; font-weight: 700; color: var(--ne-texto-3); }
.ne-ver { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 700; color: #00ff88 !important; white-space: nowrap; }
.ne-vazio { display: grid; justify-items: center; gap: 10px; padding: 46px 16px; border-radius: 14px; border: 1px dashed var(--ne-linha); color: var(--ne-texto-3); font-size: 14px; text-align: center; }
.ne-vazio b { font-size: 17px; color: #fff; }

/* ------------------------------------------------------------------ a linha de jogo */
.ne-lista { container-type: inline-size; container-name: lista; min-width: 0; }
.ne-linha, .ne-liga { display: grid; grid-template-columns: 30px 72px minmax(0, 1fr) 46px 176px 152px 52px; column-gap: 10px; align-items: center; padding: 0 14px 0 8px; border-top: 1px solid var(--ne-linha); }
.ne-linha { min-height: 64px; padding-top: 6px; padding-bottom: 6px; cursor: pointer; }
.ne-linha:hover { background: rgba(255, 255, 255, .025); }
.ne-fav { display: flex; align-items: center; justify-content: center; width: 30px; height: 36px; padding: 0; border: 0; background: transparent; color: #5d646d; cursor: pointer; }
.ne-fav:hover { color: #b9bec5; }
.ne-fav.ligada { color: #ffd43b; }
.ne-quando { min-width: 0; font-size: 11.5px; font-weight: 800; line-height: 1.25; }
.ne-tempo { display: inline-flex; align-items: center; gap: 5px; color: var(--ne-texto-2); }
.ne-tempo.vivo { color: #ff4d5e; }
.ne-tempo.breve { color: #00ff88; }
/* O relógio do jogo ao vivo (opção B): na linha o tempo um pouco maior; nos cartões, à direita. */
.ne-quando .rv-t { font-size: 13px; }
.ne-cartao-topo .rv, .ne-mt-topo .rv, .ne-dq-topo .rv { align-items: flex-end; flex: none; }
.ne-quente-meta .rv { flex: none; }
.ne-times { min-width: 0; display: grid; gap: 3px; }
.ne-times > div { display: flex; align-items: center; gap: 6px; min-width: 0; font-size: 14px; font-weight: 700; }
.ne-times > div > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* A marca do time na frente do nome (escudo, bandeira ou iniciais): 20 px; 18 px no bloco estreito. */
.ne-times .sp-marca, .ne-cartao-times .sp-marca { flex: none; overflow: visible; --marca: 20px; }
.ne-placar { flex: none; min-width: 20px; color: #ffd43b; font-weight: 800; font-variant-numeric: tabular-nums; }
.ne-linha-liga { display: flex; align-items: center; gap: 5px; min-width: 0; font-size: 10.5px; font-weight: 700; color: var(--ne-texto-3); }
.ne-linha-liga > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-linha-liga svg, .ne-linha-liga img { flex: none; }
.ne-sinais { display: flex; align-items: center; justify-content: flex-end; gap: 6px; color: #8b929b; }
.ne-sinal { display: inline-flex; align-items: center; }
.ne-sinal.video { color: #00ff88; }
.ne-sinal.ca { padding: 1px 4px; border-radius: 4px; border: 1px solid #5d646d; font-size: 9px; font-weight: 800; color: var(--ne-texto-2); }
.ne-sem-mercado { display: flex; align-items: center; justify-content: center; height: 40px; color: #5d646d; }
.ne-mais { display: flex; align-items: center; justify-content: center; height: 40px; border-radius: 8px; background: #14171b; border: 1px solid var(--ne-linha); font-size: 12px; font-weight: 800; color: var(--ne-texto-2) !important; }
.ne-mais:hover { border-color: #00ff88; color: #fff !important; }

/* As odds dentro da linha: o rótulo em cima, pequeno, e o preço embaixo. */
.ne-odds { display: grid; gap: 4px; min-width: 0; }
.ne-odds-1 { grid-template-columns: minmax(0, 1fr); }
.ne-odds-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ne-odds-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ne-odds .sp-odd { flex-direction: column; justify-content: center; gap: 0; min-height: 40px; height: 40px; padding: 0 3px; border-radius: 8px; background: #14171b; line-height: 1.15; min-width: 0; }
.ne-odds .sp-odd-label { max-width: 100%; font-size: 9.5px; font-weight: 700; color: var(--ne-texto-3); text-align: center; letter-spacing: -.01em; }
.ne-odds .sp-odd-price { font-size: 13px; }
.ne-odds .sp-odd.picked .sp-odd-label { color: #8fe3bd; }
.ne-odds .sp-odd-vazia { align-items: center; }

/* Cabeçalho da competição: as mesmas colunas da linha. */
.ne-liga { min-height: 42px; background: #171b20; }
.ne-liga-nome { grid-column: 2 / span 3; display: flex; align-items: center; gap: 9px; min-width: 0; font-size: 13px; font-weight: 700; }
.ne-liga-nome > a, .ne-liga-nome > span:not(.nv-selo) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-liga-nome > a:hover { color: #00ff88; }
.ne-liga-nome > .nv-selo { flex: none; white-space: nowrap; }
.ne-liga-nome small { font-size: 11px; font-weight: 600; color: var(--ne-texto-3); }
.ne-liga-col { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 4px; text-align: center; font-size: 10px; font-weight: 800; letter-spacing: .04em; color: var(--ne-texto-3); text-transform: uppercase; }
.ne-liga-col .unico { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-bandeira { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 17px; border-radius: 3px; background: hsl(var(--cor, 150) 55% 30%); color: #fff; font-size: 8.5px; font-weight: 800; font-style: normal; letter-spacing: .02em; }
.ne-bandeira.grande { width: 38px; height: 26px; border-radius: 5px; font-size: 11px; }

/* Horário (agenda) e dia (competição) dentro da lista. */
.ne-hora { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 14px; background: #171b20; border-top: 1px solid var(--ne-linha); }
.ne-hora b { font-size: 15px; }
.ne-hora > span { font-size: 12px; font-weight: 700; color: var(--ne-texto-3); }
.ne-hora-breve { padding: 2px 7px; border-radius: 5px; background: rgba(0, 255, 136, .12); color: #00ff88 !important; font-size: 10.5px !important; font-weight: 800 !important; }
.ne-dia-titulo b { font-size: 12px; letter-spacing: .06em; color: var(--ne-texto-2); }

/* Bloco médio: some a segunda coluna de odds. */
@container lista (max-width: 820px) {
    .ne-linha, .ne-liga { grid-template-columns: 30px 66px minmax(0, 1fr) 40px 176px 48px; }
    .ne-m2 { display: none; }
}
/* Bloco estreito (dois blocos lado a lado, celular): a hora sobe e as odds ficam ao lado dos times. */
@container lista (max-width: 560px) {
    .ne-linha { grid-template-columns: 24px minmax(0, 1fr) 172px; grid-template-rows: auto auto; row-gap: 4px; column-gap: 8px; padding: 9px 12px 9px 6px; min-height: 0; }
    .ne-linha .ne-fav { grid-area: 1 / 1 / 3 / 2; width: 24px; align-self: center; }
    .ne-linha .ne-quando { grid-area: 1 / 2 / 2 / 3; font-size: 10.5px; }
    .ne-linha .ne-sinais { grid-area: 1 / 3 / 2 / 4; justify-self: start; }
    .ne-linha .ne-mais { grid-area: 1 / 3 / 2 / 4; justify-self: end; height: auto; padding: 0; border: 0; background: transparent; font-size: 10.5px; color: var(--ne-texto-3) !important; }
    .ne-linha .ne-mais::after { content: " ›"; white-space: pre; }
    .ne-linha .ne-mais svg { display: none; }
    .ne-linha .ne-times { grid-area: 2 / 2 / 3 / 3; }
    .ne-linha .ne-m1 { grid-area: 2 / 3 / 3 / 4; }
    .ne-times > div { font-size: 13.5px; }
    .ne-times .sp-marca { --marca: 18px; }
    .ne-liga { grid-template-columns: 24px minmax(0, 1fr) 172px; column-gap: 8px; padding: 0 12px 0 6px; min-height: 36px; }
    .ne-liga .ne-fav { width: 24px; }
    .ne-liga-nome { grid-column: 2 / 3; font-size: 12px; }
    .ne-liga .ne-mais-vazio { display: none; }
    .ne-hora { padding: 0 12px; min-height: 36px; }
}
@container lista (max-width: 380px) {
    .ne-linha, .ne-liga { grid-template-columns: 24px minmax(0, 1fr) 150px; }
}

/* ------------------------------------------------------------------ cartões */
.ne-cartoes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.ne-cartao { display: grid; gap: 9px; align-content: start; padding: 12px; border-radius: 14px; background: var(--ne-cartao); border: 1px solid var(--ne-linha); min-width: 0; cursor: pointer; }
.ne-cartao:hover { border-color: #3a424b; }
.ne-cartao-topo { display: flex; align-items: center; gap: 6px; min-width: 0; font-size: 11px; font-weight: 700; }
.ne-cartao-liga { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ne-texto-3); }
.ne-cartao-times { display: grid; gap: 4px; }
.ne-cartao-times > div { display: flex; align-items: center; gap: 8px; min-width: 0; font-size: 14px; font-weight: 700; }
.ne-cartao-times span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-cartao-times b { color: #ffd43b; font-size: 16px; font-variant-numeric: tabular-nums; }

.ne-comps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.ne-comp { display: grid; gap: 6px; align-content: start; padding: 12px; border-radius: 12px; background: var(--ne-cartao); border: 1px solid var(--ne-linha); min-width: 0; }
.ne-comp:hover { border-color: #00ff88; }
.ne-comp-topo { display: flex; align-items: center; gap: 9px; min-width: 0; }
.ne-comp-topo b { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.ne-comp-fav { display: flex; color: #ffd43b; }
.ne-comp-meta { font-size: 11.5px; font-weight: 700; color: var(--ne-texto-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-comp-prox { font-size: 12.5px; font-weight: 600; color: var(--ne-texto-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.ne-diretorio { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.ne-dir { display: flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 12px; border-radius: 10px; background: var(--ne-fundo-2); border: 1px solid var(--ne-linha); min-width: 0; font-size: 13px; font-weight: 700; }
.ne-dir:hover { border-color: #00ff88; }
.ne-dir-icone { display: flex; color: #00ff88; flex: none; }
.ne-dir-nome { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-dir b { font-size: 12px; color: var(--ne-texto-3); }

/* ------------------------------------------------------------------ países e competições */
.ne-paises { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; align-items: start; }
.ne-pais { border-radius: 10px; background: var(--ne-cartao); border: 1px solid var(--ne-linha); overflow: hidden; min-width: 0; }
.ne-pais.aberto { border-color: #3a424b; }
.ne-pais-cab { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; padding: 0 12px; border: 0; background: transparent; font-size: 13.5px; font-weight: 700; text-align: left; cursor: pointer; }
.ne-pais-cab > span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-pais-cab b { font-size: 12px; color: var(--ne-texto-3); }
.ne-pais-cab svg { color: var(--ne-texto-3); flex: none; }
.ne-pais.aberto .ne-pais-cab svg { transform: rotate(180deg); }
.ne-pais-liga { display: flex; align-items: center; gap: 8px; min-height: 38px; padding: 0 12px 0 48px; border-top: 1px solid var(--ne-linha); font-size: 13px; color: #d5d9de; }
.ne-pais-liga:hover { color: #00ff88; }
.ne-pais-liga span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-pais-liga b { font-size: 12px; color: var(--ne-texto-3); }
.ne-ligas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ne-liga-item { display: flex; align-items: center; min-height: 46px; padding: 0 12px 0 4px; border-top: 1px solid var(--ne-linha); min-width: 0; }
.ne-liga-item a { flex: 1; display: flex; align-items: center; gap: 9px; min-width: 0; min-height: 46px; font-size: 13.5px; font-weight: 700; }
.ne-liga-item a > span:first-child { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-liga-item a b { font-size: 12px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-liga-item a svg { color: var(--ne-texto-3); flex: none; }
.ne-liga-item a:hover { color: #00ff88; }

/* ------------------------------------------------------------------ agenda */
.ne-dias { display: flex; gap: 8px; min-width: 0; }
.ne-dia { flex: 1 1 0; min-width: 0; min-height: 58px; padding: 0 4px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border-radius: 12px; background: var(--ne-fundo-2); border: 1px solid var(--ne-linha); text-align: center; }
.ne-dia b { font-size: 14px; color: #d5d9de; white-space: nowrap; }
.ne-dia span { font-size: 11px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-dia:hover { border-color: #3a424b; }
.ne-dia.ativo { background: rgba(0, 255, 136, .11); border-color: rgba(0, 255, 136, .5); }
.ne-dia.ativo b { color: #fff; }

/* ------------------------------------------------------------------ telas menores */
@media (max-width: 1100px) {
    .ne-cartoes, .ne-comps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ne-diretorio { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .ne-paises { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .ne-dupla { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 768px) {
    .ne-pagina { padding-bottom: 40px; }
    .ne-principal { gap: 14px; }
    /* As fileiras rolam para o lado e vão até a borda da tela. */
    .ne-barra, .ne-dias, .ne-cartoes, .ne-filtros { margin-right: -12px; padding-right: 12px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; }
    .ne-barra::-webkit-scrollbar, .ne-dias::-webkit-scrollbar, .ne-cartoes::-webkit-scrollbar, .ne-filtros::-webkit-scrollbar { display: none; }
    .ne-barra { gap: 7px; }
    /* No celular o ícone é de 40px, ainda abaixo dos contadores, e o botão cresce até caber o nome. */
    .ne-esp { flex: 0 0 auto; min-width: max-content; height: 90px; padding: 0 9px 8px; font-size: 11px; scroll-snap-align: start; }
    .ne-esp-icone { top: 25px; }
    .ne-esp-icone img { width: 40px; height: 40px; }
    .ne-esp-nome { min-width: 56px; }
    .ne-esp-mais { display: none; }
    .ne-titulo h1 { font-size: 21px; }
    .ne-titulo-icone svg { width: 24px; height: 24px; }
    .ne-titulo-icone img { width: 34px; height: 34px; }
    /* Em coluna e SEM quebra: com quebra, a fileira de filtros cresce até caber inteira e estoura a tela. */
    .ne-ferramentas { flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 10px; }
    .ne-ferramentas .ne-seletor { margin-left: 0; }
    .ne-seletor { width: 100%; }
    .ne-meu span { display: none; }
    .ne-seg { flex: 1; }
    .ne-abas { gap: 18px; margin-right: -12px; padding-right: 12px; }
    .ne-aba { height: 42px; font-size: 13.5px; }
    .ne-filtros { flex-wrap: nowrap; }
    .ne-seg-modo { margin-left: 0; flex: none; }
    .ne-cartoes { display: flex; gap: 10px; }
    .ne-cartao { flex: 0 0 232px; scroll-snap-align: start; }
    .ne-dia { flex: 0 0 78px; min-height: 54px; scroll-snap-align: start; }
    .ne-dia b { font-size: 13px; }
    .ne-comps { grid-template-columns: minmax(0, 1fr); gap: 8px; }
    .ne-diretorio { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ne-paises, .ne-ligas { grid-template-columns: minmax(0, 1fr); }
    .ne-bloco { border-radius: 12px; }
    .ne-bloco-cab { min-height: 46px; padding: 0 12px; }
    .ne-bloco-cab h2 { font-size: 15.5px; }
    .ne-secao-titulo h2 { font-size: 16px; }
    .ne-resumo { white-space: normal; flex: 1 1 100%; }
    /* O título não quebra no meio ("FIFA 24h"): o resumo desce para a linha de baixo. */
    .ne-titulo { flex-wrap: wrap; row-gap: 3px; }
    .ne-titulo h1 { flex: 1 1 0; }
}

/* ------------------------------------------------------------------ FIFA 24h e eBasket (etapa 3) */
/* Quem joga, ao lado do time: "Besiktas  Linox". */
.ne-jogador { margin-left: 5px; font-size: 11px; font-weight: 700; color: var(--ne-texto-3); letter-spacing: .01em; }
/* A duração do jogo (2x4 min): etiqueta pequena ao lado do nome da liga. */
.ne-duracao { display: inline-block; margin-left: 5px; padding: 1px 6px; border-radius: 999px; background: rgba(0, 255, 136, .1); border: 1px solid rgba(0, 255, 136, .28);
    color: #7dffc0; font-size: 10px; font-weight: 800; font-style: normal; white-space: nowrap; vertical-align: 1px; }
.ne-liga-nome .ne-duracao { font-size: 10.5px; }
.ne-bloco-socket > .ne-bloco-cab h2 { color: #fff; }
.ne-bloco-socket { border-color: rgba(0, 255, 136, .22); }

/*
 * O início do FIFA 24h e do eBasket (pedido do dono, 28/09): as partidas e as ligas em primeiro
 * lugar. No computador as ligas ficam ao lado das partidas; no celular, numa fileira acima delas.
 */
.ne-sk { display: grid; grid-template-columns: minmax(0, 1fr) 312px; gap: 12px; align-items: start; min-width: 0; }
.ne-sk-listas { grid-column: 1; grid-row: 1; display: grid; gap: 12px; min-width: 0; }
.ne-fl { grid-column: 2; grid-row: 1; position: sticky; top: calc(var(--nv-topo, 60px) + 12px); max-height: calc(100vh - var(--nv-topo, 60px) - 24px); display: flex; flex-direction: column; }
.ne-fl-lista { display: grid; min-height: 0; overflow-y: auto; scrollbar-width: thin; border-top: 1px solid var(--ne-linha); }
.ne-fl-liga { display: flex; align-items: center; gap: 10px; min-height: 50px; padding: 7px 14px; border-bottom: 1px solid var(--ne-linha); min-width: 0; }
.ne-fl-liga:last-child { border-bottom: 0; }
.ne-fl-liga:hover { background: rgba(0, 255, 136, .06); }
.ne-fl-nome { flex: 1; display: grid; gap: 2px; min-width: 0; }
.ne-fl-nome b { font-size: 13.5px; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-fl-nome small { display: flex; align-items: center; gap: 6px; font-size: 11.5px; font-weight: 700; color: var(--ne-texto-3); white-space: nowrap; }
.ne-fl-nome .ne-duracao { margin-left: 0; }
.ne-fl-liga .nv-selo { flex: none; }
/* O botão da cabeça de um bloco ("Assistir ao vivo", "Fechar vídeo"). */
.ne-bloco-acao { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 9px; border: 1px solid rgba(0, 255, 136, .4); background: transparent; color: #00ff88 !important;
    font-size: 12.5px; font-weight: 800; white-space: nowrap; cursor: pointer; }
.ne-bloco-acao:hover { background: rgba(0, 255, 136, .1); }
@media (max-width: 1100px) {
    .ne-sk { grid-template-columns: minmax(0, 1fr); }
    .ne-sk-listas { grid-column: 1; grid-row: 2; }
    .ne-fl { grid-column: 1; grid-row: 1; position: static; max-height: none; background: transparent; border: 0; border-radius: 0; overflow: visible; }
    .ne-fl .ne-bloco-cab { min-height: 0; padding: 0 0 8px; }
    .ne-fl .ne-bloco-cab h2 { font-size: 15px; }
    .ne-fl .ne-bloco-pe { display: none; }
    .ne-fl-lista { display: flex; gap: 8px; border-top: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; scroll-snap-type: x proximity; margin-right: -12px; padding-right: 12px; }
    .ne-fl-lista::-webkit-scrollbar { display: none; }
    .ne-fl-liga { flex: 0 0 auto; max-width: 236px; min-height: 48px; padding: 6px 12px; border: 1px solid var(--ne-linha); border-radius: 12px; background: var(--ne-cartao); scroll-snap-align: start; }
    .ne-fl-liga:last-child { border-bottom: 1px solid var(--ne-linha); }
}
@media (max-width: 768px) {
    .ne-bloco-acao { height: 30px; padding: 0 10px; font-size: 12px; }
}

/* O jogo em destaque do FIFA/eBasket: a tela (vídeo) e o placar de um lado, os mercados do outro. */
.ne-destaque { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px 18px; padding: 16px 18px 18px; margin: 0 0 12px; border-radius: 16px;
    background: radial-gradient(120% 140% at 0% 0%, rgba(0, 255, 136, .13), transparent 55%), var(--ne-cartao); border: 1px solid rgba(0, 255, 136, .25); }
.ne-destaque.com-tela { grid-template-columns: minmax(0, 1.25fr) minmax(280px, 1fr); align-items: start; }
.ne-destaque { scroll-margin-top: calc(var(--nv-topo, 60px) + 12px); }
.ne-dq-cab { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; }
.ne-dq-cab > b { font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: #7dffc0; }
.ne-dq-lado { display: grid; gap: 12px; min-width: 0; }
.ne-dq-video { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: #000; border: 1px solid var(--ne-linha); }
.ne-dq-capa { display: grid; place-content: center; justify-items: center; gap: 6px; cursor: pointer; color: #fff; text-align: center; padding: 12px;
    background: radial-gradient(90% 90% at 50% 30%, rgba(0, 255, 136, .22), rgba(0, 0, 0, .0) 60%), linear-gradient(160deg, #10241b, #07090b); }
.ne-dq-capa:hover .ne-dq-tocar { transform: scale(1.06); background: #00ff88; color: #07110c; }
.ne-dq-tocar { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: rgba(0, 255, 136, .18); border: 1px solid rgba(0, 255, 136, .55); color: #00ff88; transition: transform .15s, background .15s, color .15s; }
.ne-dq-capa b { font-size: 16px; font-weight: 900; }
.ne-dq-capa small { font-size: 12px; font-weight: 600; color: var(--ne-texto-2); }
.ne-dq-topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; }
.ne-dq-liga { display: inline-flex; align-items: center; gap: 7px; min-width: 0; font-size: 12.5px; font-weight: 800; color: var(--ne-texto-2); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.ne-dq-liga svg { flex: none; color: #00ff88; }
.ne-dq-meio { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 14px; }
.ne-dq-time { display: grid; justify-items: center; gap: 3px; min-width: 0; text-align: center; }
.ne-dq-time b { max-width: 100%; font-size: 17px; font-weight: 900; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-dq-time span { display: inline-flex; align-items: center; gap: 4px; font-size: 12px; font-weight: 700; color: var(--ne-texto-3); }
.ne-dq-time strong { font-size: 34px; line-height: 1.05; font-weight: 900; font-variant-numeric: tabular-nums; color: #fff; }
.ne-dq-x { font-size: 18px; font-weight: 800; color: var(--ne-texto-3); }
.ne-dq-apostas { display: grid; gap: 12px; align-content: start; min-width: 0; }
.ne-dq-chamada { font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; color: #7dffc0; }
.ne-dq-mercados { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.ne-destaque:not(.com-tela) .ne-dq-mercados { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.ne-dq-mercado { display: grid; gap: 6px; min-width: 0; }
.ne-dq-mercado > span { font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--ne-texto-3); }
.ne-botao-2 { gap: 6px; background: transparent; border: 1px solid rgba(0, 255, 136, .45); color: #00ff88 !important; }
.ne-botao-2:hover { background: rgba(0, 255, 136, .1); }
.ne-dq-trocar { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; min-width: 0; overflow-x: auto; scrollbar-width: none; padding-top: 12px; border-top: 1px solid var(--ne-linha); }
.ne-dq-trocar::-webkit-scrollbar { display: none; }
.ne-dq-trocar > span { flex: none; font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--ne-texto-3); }
.ne-dq-trocar button { flex: none; display: inline-flex; align-items: center; gap: 7px; height: 36px; padding: 0 12px; border-radius: 10px; border: 1px solid var(--ne-linha); background: var(--ne-fundo-2); cursor: pointer; white-space: nowrap; }
.ne-dq-trocar button:hover { border-color: rgba(0, 255, 136, .5); }
.ne-dq-trocar button b { font-size: 12.5px; font-weight: 800; }
.ne-dq-trocar button .rv-t { font-size: 11.5px; }
.ne-dq-trocar button svg { color: #00ff88; }

/* Multitela do FIFA 24h e do eBasket (etapa 7): duas ou quatro telas, cada uma com o vídeo, o placar e as odds. */
.ne-multitela { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 12px; }
.ne-mt-nota { font-size: 12px; font-weight: 600; color: var(--ne-texto-3); }
.ne-mt-tela { position: relative; display: grid; gap: 9px; align-content: start; min-width: 0; padding: 10px; border-radius: 14px; background: var(--ne-cartao); border: 1px solid var(--ne-linha); }
.ne-mt-video { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 10px; overflow: hidden; background: #000; }
.ne-mt-topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; }
.ne-mt-placar { display: grid; gap: 4px; }
.ne-mt-time { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
.ne-mt-time b { min-width: 0; font-size: 14.5px; font-weight: 900; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-mt-time span { flex: 1; min-width: 0; font-size: 11.5px; font-weight: 700; color: var(--ne-texto-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-mt-time strong { flex: none; margin-left: auto; font-size: 20px; line-height: 1; font-weight: 900; font-variant-numeric: tabular-nums; color: #fff; }
.ne-mt-mercado { display: grid; gap: 6px; min-width: 0; }
.ne-mt-mercado > span { font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--ne-texto-3); }
.ne-mt-pe { display: flex; align-items: center; gap: 6px; min-width: 0; }
.ne-mt-botao { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 34px; padding: 0 12px; border-radius: 9px; border: 1px solid var(--ne-linha); background: var(--ne-fundo-2);
    color: #fff !important; font: inherit; font-size: 12.5px; font-weight: 800; text-decoration: none; white-space: nowrap; cursor: pointer; }
.ne-mt-botao:hover, .ne-mt-botao[aria-expanded="true"] { border-color: rgba(0, 255, 136, .5); }
.ne-mt-botao:focus-visible, .ne-mt-lista button:focus-visible { outline: 2px solid #00ff88; outline-offset: 2px; }
.ne-mt-tirar { margin-left: auto; width: 34px; padding: 0; color: var(--ne-texto-3) !important; }
.ne-mt-lista { display: grid; gap: 4px; max-height: 232px; overflow-y: auto; padding-top: 8px; border-top: 1px solid var(--ne-linha); }
.ne-mt-lista button { display: flex; align-items: center; gap: 7px; min-height: 36px; padding: 4px 10px; border-radius: 9px; border: 1px solid transparent; background: var(--ne-fundo-2); color: #fff; font: inherit; text-align: left; cursor: pointer; }
.ne-mt-lista button:hover { border-color: rgba(0, 255, 136, .5); }
.ne-mt-lista button b { min-width: 0; font-size: 12.5px; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-mt-lista button i { flex: none; font-style: normal; font-size: 11.5px; font-weight: 700; color: #ff7d8a; }
.ne-mt-lista button small { flex: none; margin-left: auto; font-size: 10.5px; font-weight: 700; color: var(--ne-texto-3); }
.ne-mt-lista button svg { flex: none; color: #00ff88; }
.ne-mt-tela.vazia { align-content: center; min-height: 220px; border-style: dashed; }
.ne-mt-vazia { display: grid; justify-items: center; gap: 8px; padding: 18px 10px; text-align: center; color: var(--ne-texto-3); }
.ne-mt-vazia b { font-size: 14px; color: var(--ne-texto-2); }
.ne-mt-vazia small { font-size: 12px; }
@media (max-width: 900px) {
    .ne-multitela { grid-template-columns: minmax(0, 1fr); }
    .ne-mt-nota { display: none; }
}

/* A peça do vídeo (public/js/novo/video.js). */
.nv-video iframe, .nv-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: #000; object-fit: contain; }
.nv-video-aviso { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 8px; padding: 14px; text-align: center; color: var(--ne-texto-2, #b9bec5); font-size: 13px; }
.nv-video-aviso b { color: #fff; font-size: 15px; }
.nv-video-botao { height: 38px; padding: 0 18px; border: 0; border-radius: 10px; background: #00ff88; color: #0e1013; font: inherit; font-weight: 800; cursor: pointer; }
.nv-video-gira { width: 26px; height: 26px; border-radius: 50%; border: 3px solid rgba(255, 255, 255, .18); border-top-color: #00ff88; animation: nv-video-gira .9s linear infinite; }
@keyframes nv-video-gira { to { transform: rotate(360deg); } }

@media (max-width: 1100px) {
    .ne-destaque.com-tela { grid-template-columns: minmax(0, 1fr); }
    .ne-destaque.com-tela .ne-dq-mercados { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
}
@media (max-width: 768px) {
    .ne-destaque { padding: 14px 12px 16px; gap: 12px; border-radius: 14px; }
    .ne-dq-time b { font-size: 14.5px; }
    .ne-dq-time strong { font-size: 28px; }
    .ne-dq-meio { gap: 8px; }
    .ne-destaque .ne-dq-mercados, .ne-destaque.com-tela .ne-dq-mercados { grid-template-columns: minmax(0, 1fr); }
    .ne-dq-apostas .ne-botao { width: 100%; }
    .ne-jogador { font-size: 10.5px; }
}

/* FIFA | eBasket no cabeçalho, o banner deles e os cartões de "como funciona". */
.ne-seg-socket a { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 14px; border-radius: 8px; font-size: 13px; font-weight: 800; color: var(--ne-texto-2); white-space: nowrap; }
.ne-seg-socket a.ativo { background: rgba(0, 255, 136, .14); color: #fff; }
.ne-banner-fifa[hidden] { display: none; }
.ne-como { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.ne-como-cartao { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; align-items: center; padding: 14px; border-radius: 14px; background: var(--ne-fundo-2); border: 1px solid var(--ne-linha); }
.ne-como-cartao > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: rgba(0, 255, 136, .12); color: #00ff88; }
.ne-como-cartao b { font-size: 14px; font-weight: 800; }
.ne-como-cartao p { margin: 2px 0 0; font-size: 12px; line-height: 1.4; color: var(--ne-texto-3); }
@media (max-width: 900px) { .ne-como { grid-template-columns: minmax(0, 1fr); } }

/* ------------------------------------------------------------------ os mais apostados: faixa e selo
 * A faixa "Em alta agora" (#4 ao #8, logo depois do bloco ao vivo) e o selo "Em alta" nas
 * linhas do Top 8. Posição e chamas no lugar de número (pedido do dono, 29/09).
 */
.ne-em-alta .ne-secao-titulo h2 { display: inline-flex; align-items: center; gap: 8px; }
.ne-alta-chama { display: inline-flex; color: #ff9d3b; }
.ne-alta-chama .sp-chama { width: 18px; height: 18px; }
.ne-faixa-quente { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(210px, 1fr); gap: 10px; overflow-x: auto; scrollbar-width: none; overscroll-behavior-x: contain; padding-bottom: 2px; }
.ne-faixa-quente::-webkit-scrollbar { display: none; }
.ne-quente { position: relative; display: grid; gap: 8px; align-content: start; min-width: 0; padding: 12px; border-radius: 14px; overflow: hidden; isolation: isolate; cursor: pointer;
    background: linear-gradient(160deg, #13251d, #101417 70%); border: 1px solid var(--ne-linha); }
.ne-quente::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .07; background-size: 44px 44px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cg fill='none' stroke='%2300ff88' stroke-width='1.6'%3E%3Cpath d='M0 26A26 26 0 0 0 26 0M74 0A26 26 0 0 0 100 26M100 74A26 26 0 0 0 74 100M26 100A26 26 0 0 0 0 74'/%3E%3Crect x='31' y='31' width='38' height='38'/%3E%3Crect x='31' y='31' width='38' height='38' transform='rotate(45 50 50)'/%3E%3Ccircle cx='50' cy='50' r='9'/%3E%3C/g%3E%3C/svg%3E"); }
.ne-quente:hover { border-color: rgba(255, 157, 59, .45); }
.ne-quente-topo { display: flex; align-items: center; justify-content: space-between; }
.ne-quente-rank { font-family: "Barlow Condensed", "Arial Narrow", system-ui, sans-serif; font-style: italic; font-weight: 800; font-size: 30px; line-height: .8; color: #ffd43b; }
.ne-quente-rank small { font-size: 15px; color: #7d8a82; margin-right: 1px; }
.ne-quente-chamas { display: inline-flex; gap: 1px; color: #ff9d3b; }
.ne-quente-chamas .sp-chama { width: 14px; height: 14px; }
.ne-quente-chamas .apagada { opacity: .22; }
.ne-quente-chamas .apagada .sp-chama path { animation: none; }
.ne-quente-times { display: grid; gap: 5px; font-size: 13.5px; font-weight: 700; color: #fff; }
.ne-quente-times > div { display: flex; align-items: center; gap: 7px; min-width: 0; }
.ne-quente-times .sp-marca { --marca: 18px; }
.ne-quente-times > div > span:not(.ne-quente-bandeira):not(.sp-vit-escudo):not(.sp-marca) { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-quente-times b { color: #ffd43b; font-variant-numeric: tabular-nums; }
.ne-quente-bandeira { width: 18px; height: 18px; flex: none; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .55); background: #333 center / cover no-repeat; }
.ne-quente .sp-vit-escudo { width: 18px; height: 18px; font-size: 7px; box-shadow: none; }
.ne-quente-meta { display: flex; gap: 6px; min-width: 0; font-size: 11.5px; color: var(--ne-texto-3); white-space: nowrap; overflow: hidden; }
.ne-quente-meta .ne-quente-liga { overflow: hidden; text-overflow: ellipsis; }
.ne-quente-meta .ne-quente-liga::before { content: "· "; }
.ne-alta-selo { display: inline-flex; align-items: center; gap: 4px; flex: none; height: 18px; margin-left: 8px; padding: 0 7px; border-radius: 999px;
    background: rgba(255, 157, 59, .14); border: 1px solid rgba(255, 157, 59, .4); color: #ffb86b; font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; vertical-align: 1px; }
.ne-alta-selo .sp-chama { width: 11px; height: 11px; color: #ff9d3b; }
@media (max-width: 768px) {
    .ne-faixa-quente { grid-auto-columns: 196px; }
}
.ne-quente-meta > svg { flex: none; color: var(--ne-texto-3); }
.ne-quente-meta > img { flex: none; align-self: center; }

/* ------------------------------------------------------------------ Monte sua múltipla (29/09/2026)
 * A aba /esportes/futebol/multipla (multipla.js): a lista com 1 / X / 2 por jogo e a barra fixa
 * embaixo. O bilhete fica escondido nesta aba até "Apostar" (body.ne-mt-bilhete). */
.ne-aba-novo { font-style: normal; font-size: 10px; font-weight: 800; padding: 2px 6px; border-radius: 999px; background: #00ff88; color: #0e1013; letter-spacing: .04em; text-transform: uppercase; }
.ne-mt { display: grid; gap: 12px; padding-bottom: 130px; min-width: 0; }
.ne-mt-topo { display: grid; gap: 10px; }
.ne-mt-guia { margin: 0; font-size: 13.5px; color: var(--ne-texto-2); }
.ne-mt-atalhos { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; font-size: 12.5px; font-weight: 600; color: var(--ne-texto-3); }
.ne-mt-atalho { height: 30px; padding: 0 12px; border-radius: 999px; border: 1px dashed rgba(0, 255, 136, .45); background: transparent; color: #7ff2bd !important; font-size: 12.5px; font-weight: 800; cursor: pointer; }
.ne-mt-atalho:hover { background: rgba(0, 255, 136, .08); }
.ne-mt-hora { display: flex; align-items: baseline; gap: 8px; margin-top: 6px; font-size: 12px; font-weight: 700; color: var(--ne-texto-3); }
.ne-mt-hora b { font-size: 14px; font-weight: 800; color: #fff; font-variant-numeric: tabular-nums; }
.ne-mt-hora::after { content: ""; flex: 1; height: 1px; background: var(--ne-linha); align-self: center; }
.ne-mt-jogos { display: grid; gap: 6px; }
.ne-mt-jogo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 240px) 40px; gap: 8px 10px; align-items: center; padding: 8px 8px 8px 14px; border-radius: 12px; background: var(--ne-cartao); border: 1px solid var(--ne-linha); }
.ne-mt-jogo.tem { border-color: rgba(0, 255, 136, .5); background: linear-gradient(90deg, #15241d, var(--ne-cartao) 70%); }
.ne-mt-nome { display: grid; gap: 2px; min-width: 0; }
.ne-mt-nome small { display: flex; align-items: center; gap: 6px; min-width: 0; font-size: 11.5px; font-weight: 600; color: var(--ne-texto-3); }
.ne-mt-nome small span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-mt-nome b { display: flex; align-items: center; gap: 6px; min-width: 0; font-size: 14.5px; font-weight: 700; color: #fff; --marca: 18px; }
.ne-mt-nome b > span:not(.sp-marca) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ne-mt-nome b i { font-style: normal; font-weight: 600; color: var(--ne-texto-3); }
.ne-mt-nome:hover b { text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .3); }
.ne-mt-jogo .ne-odds .sp-odd { height: 44px; min-height: 44px; }
.ne-mt-jogo .ne-odds .sp-odd-label { font-size: 10.5px; }
.ne-mt-jogo .ne-odds .sp-odd-price { font-size: 14px; }
.ne-mt-mais { width: 40px; height: 44px; border-radius: 10px; border: 1px solid var(--ne-linha); background: transparent; color: var(--ne-texto-2); font-size: 19px !important; font-weight: 600; line-height: 1; cursor: pointer; }
.ne-mt-mais:hover { border-color: #3a424b; color: #fff; }
.ne-mt-mais.aberto { background: #fff; border-color: #fff; color: #0e1013; }
.ne-mt-extra { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; padding-top: 8px; border-top: 1px dashed var(--ne-linha); }
.ne-mt-mercado { display: grid; gap: 5px; min-width: 0; }
.ne-mt-mercado small { font-size: 11.5px; font-weight: 700; color: var(--ne-texto-3); }

.ne-mt-barra { position: fixed; z-index: 1100; left: calc(50% + var(--nv-trilho, 0px) / 2); bottom: calc(var(--nv-baixo, 0px) + 12px); transform: translateX(-50%);
    width: min(860px, calc(100vw - var(--nv-trilho, 0px) - 24px)); box-sizing: border-box; display: grid; gap: 10px; padding: 12px 14px;
    border-radius: 16px; background: #15241d; border: 1px solid rgba(0, 255, 136, .35); box-shadow: 0 14px 40px rgba(0, 0, 0, .55); color: #fff; animation: ne-mt-entrar .25s ease-out; }
.ne-mt-barra[hidden], body.ne-mt-bilhete .ne-mt-barra { display: none; }
body.ne-mt-ligada:not(.ne-mt-bilhete) #spSlip { display: none !important; }
.ne-mt-barra button { font: inherit; }
.ne-mt-linha { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 18px; }
.ne-mt-seq { display: flex; gap: 4px; flex: 1 1 150px; min-width: 120px; }
.ne-mt-seq i { flex: 1; max-width: 40px; height: 6px; border-radius: 3px; background: #2c3a33; }
.ne-mt-seq i.ok { background: #00ff88; }
.ne-mt-num { display: grid; gap: 1px; }
.ne-mt-num small { font-size: 10.5px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #8fb3a1; white-space: nowrap; }
.ne-mt-num b { font-size: 19px; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ne-mt-num b.verde { color: #00ff88; }
.ne-mt-vazia { margin: 0; flex: 1 1 220px; font-size: 13.5px; color: #b6cfc2; }
.ne-mt-botoes { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.ne-mt-botoes .ne-botao { height: 40px; border-radius: 999px; }
.ne-mt-botao { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid #2f4a3d; background: #1d2f27; color: #fff; font-size: 13.5px; font-weight: 800; white-space: nowrap; cursor: pointer; }
.ne-mt-botao:hover:not([disabled]) { border-color: #00ff88; }
.ne-mt-barra [disabled] { opacity: .45; cursor: not-allowed; }
.ne-mt-limpar { border: 0; background: none; color: #8fb3a1; font-size: 12.5px; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ne-mt-aviso { margin: 0; font-size: 12.5px; font-weight: 700; color: #ffd43b; }
.ne-mt-painel { display: grid; gap: 10px; padding-bottom: 12px; border-bottom: 1px solid rgba(0, 255, 136, .2); }
.ne-mt-painel-topo { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ne-mt-painel-topo b { font-size: 15px; }
.ne-mt-x { width: 30px; height: 30px; border: 0; border-radius: 50%; background: transparent; color: #9aa3ab; font-size: 19px; cursor: pointer; }
.ne-mt-x:hover { background: rgba(255, 255, 255, .08); color: #fff; }
.ne-mt-msg { margin: 0; max-height: 180px; overflow: auto; padding: 10px 12px; border-radius: 10px; background: #0e1013; border: 1px solid var(--nv-linha, #2a3037); font: 500 13px/1.5 Inter, system-ui, sans-serif; color: #e9edef; white-space: pre-wrap; overflow-wrap: anywhere; }
.ne-mt-painel-botoes { display: flex; flex-wrap: wrap; gap: 8px; }
.ne-mt-painel-botoes .ne-botao { border-radius: 999px; }
.ne-mt-painel small { font-size: 12px; color: #8fb3a1; }
@keyframes ne-mt-entrar { from { opacity: 0; transform: translate(-50%, 8px); } to { opacity: 1; transform: translateX(-50%); } }
@media (max-width: 768px) {
    .ne-mt-jogo { grid-template-columns: minmax(0, 1fr) 40px; padding: 10px; }
    .ne-mt-nome { grid-column: 1 / -1; }
    .ne-mt-barra { padding: 10px 12px; gap: 8px; bottom: calc(var(--nv-baixo, 0px) + 8px); }
    .ne-mt-linha { gap: 8px 12px; }
    .ne-mt-seq { flex-basis: 100%; }
    .ne-mt-num { flex: 1; }
    .ne-mt-num b { font-size: 17px; }
    .ne-mt-botoes { margin-left: 0; width: 100%; }
    .ne-mt-botoes .ne-botao, .ne-mt-botao { flex: 1; }
    /* Vazia no celular: só a sequência e o convite, sem os botões apagados. */
    .ne-mt-barra.vazia .ne-mt-botoes { display: none; }
    .ne-mt-vazia { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) { .ne-mt-barra { animation: none; } }

/* ------------------------------------------------------------------ o atalho das Previsões (01/10/2026)
 * Só na página de todos os esportes: as modalidades que só existem nas Previsões. */
.ne-previsoes { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: 0 0 14px; padding: 12px 16px; border-radius: 14px;
    background: linear-gradient(90deg, rgba(14, 116, 144, .22), rgba(14, 116, 144, .06) 60%), #15181c; border: 1px solid rgba(255, 212, 59, .3); color: #fff !important; text-decoration: none; }
.ne-previsoes:hover { border-color: rgba(255, 212, 59, .6); }
.ne-previsoes:focus-visible { outline: 2px solid #ffd43b; outline-offset: 2px; }
.ne-previsoes-icone { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(145deg, #138199, #0e5f72); color: #fff; }
.ne-previsoes-texto { display: grid; gap: 2px; min-width: 0; }
.ne-previsoes-texto b { font-size: 14.5px; font-weight: 800; line-height: 1.3; }
.ne-previsoes-texto span { font-size: 12.5px; line-height: 1.4; color: var(--nv-texto-2, #b9bec5); }
.ne-previsoes-ver { font-size: 13.5px; font-weight: 800; color: #00ff88; white-space: nowrap; }
@media (max-width: 640px) {
    .ne-previsoes { grid-template-columns: auto minmax(0, 1fr); padding: 12px; }
    .ne-previsoes-ver { grid-column: 2; }
}

/* ------------------------------------------------------------------ ligas do FIFA (proposta A, 01/10/2026)
   A cor marca a liga (nunca o verde das ações nem o vermelho do ao vivo); o tempo vai numa plaquinha
   neutra, colada no nome; nada é cortado com reticências. */
.ne-familia { flex: none; display: inline-block; width: 10px; height: 10px; border-radius: 2px; background: var(--cor, #737a83); }
.ne-tempo-liga { flex: none; display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 8px; border-radius: 6px; background: #262c33; color: #fff; font-size: 13px; font-weight: 800; font-style: normal; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ne-tempo-liga svg { flex: none; color: var(--ne-texto-2); }
.ne-tempo-liga small { font-size: 10.5px; font-weight: 600; color: var(--ne-texto-2); }
.ne-liga.ne-liga-familia { min-height: 54px; background: var(--ne-cartao); }
.ne-fav-vazio { display: block; }
.ne-liga-nome.ne-familia-nome { gap: 10px; flex-wrap: wrap; row-gap: 4px; }
.ne-familia-nome b { font-family: "Barlow Condensed", "Arial Narrow", system-ui, sans-serif; font-style: italic; font-weight: 800; font-size: 21px; line-height: 1; letter-spacing: .01em; text-transform: uppercase; white-space: nowrap; }
.ne-liga-nome > span.ne-familia-vivos { margin-left: 2px; font-size: 12px; font-weight: 600; color: var(--ne-texto-3); overflow: visible; }
.ne-linha-camp { display: block; margin-bottom: 3px; font-size: 11px; font-weight: 600; color: var(--ne-texto-3); overflow-wrap: anywhere; }
.ne-lista .ne-familia-mais { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-height: 48px; padding: 0 16px 0 48px; border: 0; border-top: 1px solid var(--ne-linha); background: transparent; color: var(--ne-texto-2); font: inherit; font-size: 13px; font-weight: 700; text-align: left; cursor: pointer; }
.ne-lista .ne-familia-mais:hover { background: rgba(255, 255, 255, .03); color: #fff; }
.ne-pilula-liga { gap: 7px; }
.ne-pilula .ne-pilula-min { color: var(--ne-texto-3); font-weight: 600; }
/* O campeonato na linha (Começam em breve) e na coluna das ligas: a marca, o nome inteiro e o tempo. */
.ne-linha-liga > span:has(.ne-familia) { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 6px; overflow: visible; white-space: normal; }
.ne-linha-liga .ne-tempo-liga { height: 20px; padding: 0 6px; font-size: 11.5px; }
.ne-fl-nome b { white-space: normal; }
.ne-fl-nome small .ne-tempo-liga, .ne-ligas .ne-tempo-liga { height: 20px; padding: 0 6px; font-size: 11.5px; }
.ne-liga-nome > .ne-tempo-liga { overflow: visible; }
@media (max-width: 768px) {
    /* No celular a cabeça da liga ocupa a linha inteira (os botões já dizem "Mais 5.5" e "Menos 5.5"). */
    .ne-liga.ne-liga-familia .ne-liga-nome { grid-column: 2 / -1; }
    .ne-liga.ne-liga-familia .ne-liga-col { display: none; }
    .ne-familia-nome b { font-size: 19px; }
    .ne-lista .ne-familia-mais { padding-left: 38px; }
    .ne-bloco-pe { margin: 10px 12px 12px; }
}
