/* === Tema Dark Global === */
body {
    background-color: #1e1e2d !important; /* Garante prioridade */
    color: #e4e6ef;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    overflow-x: hidden; /* Previne scroll horizontal se não estiver usando wrapper */
}

/* Ajustes para o container principal dentro do main-content */
.main-content > .container,
.main-content > .container-fluid {
    background-color: #1e1e2d !important; /* Garante fundo */
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}


/* Estilos gerais para cards */
.card {
    border: none !important; /* Remove borda padrão */
    border-radius: 0.5rem;
    box-shadow: 0 0.15rem 1.75rem 0 rgba(0, 0, 0, 0.25);
    background-color: #1e1e2d !important; /* CARD AGORA COM FUNDO DO BODY */
    margin-bottom: 1.5rem;
    color: #e4e6ef; /* Garante cor de texto */
    /* Garante que não haja borda padrão de card interno */
    border-style: solid;
    border-width: 0px;
}

.card-header {
    background-color: #151521; /* Header um pouco mais escuro */
    border-bottom: 1px solid #323248;
    color: #e4e6ef;
    text-align: center;
    padding: 0.75rem 1.25rem; /* Padding padrão Bootstrap */
    border-top-left-radius: 0.5rem; /* Arredondar cantos superiores */
    border-top-right-radius: 0.5rem;
}

.card-body {
    background-color: #151521 !important; /* CORPO DO CARD PRINCIPAL MAIS ESCURO */
    padding: 1.25rem;
    color: #e4e6ef;
    border-bottom-left-radius: 0.5rem; /* Arredondar cantos inferiores */
    border-bottom-right-radius: 0.5rem;
}

/* Remover estilos específicos de card aninhado que colocavam fundo diferente */
/* .card .card { ... } */
/* .card .card .card-header, .card .card .card-body { ... } */

/* === Adicionar estilo para cards aninhados terem fundo mais escuro === */
.main-content > .card > .card-body .card {
    background-color: #151521 !important; /* Fundo mais escuro para cards internos */
    border: none !important; /* Garantir que não haja borda extra */
    box-shadow: none; /* Remover sombra interna se houver */
}

.main-content > .card > .card-body .card .card-body {
    background-color: #151521 !important; /* Corpo do card interno acompanha */
    padding: 1rem; /* Padding interno pode ser ajustado */
}
/* === Fim do estilo para cards aninhados === */


/* Títulos e textos específicos dentro de cards */
.card-header h6 {
    font-size: 2.0rem; /* << ALTERADO para 2.0rem >> */
    text-align: center;
    width: 100%;
    margin-bottom: 0;
    font-weight: 600;
}

.main-title {
    font-size: 1.8rem !important; /* Mantido !important por especificidade */
    font-weight: 700 !important;
    text-align: center;
}

/* Ajuste fino nas cores para bater com o CSS original */
.text-primary,
h6.text-primary { /* Aplicar também a h6 com a classe */
    color: #3699ff !important; /* Cor original */
}
.text-success,
h6.text-success {
    color: #0bb783 !important; /* Cor original */
}
.text-info,
h5.text-info { /* Usado no título Expectativa */
    /* A borda é amarela, mas o texto h5 original não tinha cor específica, vamos usar a cor da borda */
    color: #ffb822 !important; /* Cor original da borda info */
}
.text-warning,
h5.text-warning { /* Usado em 'TOTAL DE GOLS' etc. */
    color: #ffb822 !important; /* Cor original */
}
.text-muted {
    color: #7e8299 !important; /* Cor original */
}

/* Títulos dos cards internos (Estatísticas, Expectativa) */
.card .card-body h6, /* Títulos das Estatísticas */
.card .card-body h5  /* Título da Expectativa */
{
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 1rem; /* Espaço abaixo do título */
    font-size: 0.8rem; /* Tamanho menor como no print 2 */
    /* A cor será definida pelas classes text-primary/success/info */
}

.text-xs { /* Usado em 'GOLS MANDANTE/VISITANTE/TOTAL' */
    font-size: 0.9rem !important; /* Tamanho original */
    font-weight: bold; /* Mantém negrito */
    text-transform: uppercase;
    color: #7e8299 !important; /* Cor original muted */
    margin-bottom: 8px !important; /* Espaçamento original */
}
/* Cores específicas para 'GOLS ...' */
.text-xs.text-primary { color: #3699ff !important; }
.text-xs.text-success { color: #0bb783 !important; }
.text-xs.text-warning { color: #ffb822 !important; }


/* Valor H4 na expectativa de gols */
.h4, h4 {
    font-size: 1.5rem; /* Tamanho do valor */
    font-weight: bold;
    color: #e4e6ef; /* Cor padrão do texto */
    margin-top: 0.5rem !important; /* Ajuste de margem */
}

/* Bordas laterais coloridas */
.border-left-primary {
    border-left: 4px solid #3699ff !important; /* Cor e espessura originais */
}
.border-left-success {
    border-left: 4px solid #0bb783 !important; /* Cor e espessura originais */
}
.border-left-info {
    border-left: 4px solid #ffb822 !important; /* Cor e espessura originais */
}

/* Bordas Verticais (para Expectativa de Gols) */
.border-right {
    border-right: 1px solid #323248 !important; /* Adiciona borda visível no tema dark */
}

/* Estilos específicos para os itens de estatísticas (substituindo tabela) */
.stat-item {
    margin-bottom: 0.5rem; /* Reduz espaço entre itens */
    display: flex; /* Usa Flexbox */
    justify-content: space-between; /* Separa label e value */
    align-items: baseline; /* Alinha texto na base */
    font-size: 0.9rem; /* Tamanho base do texto */
}

.stat-label { /* O rótulo */
    color: #e4e6ef !important; /* Branco/Padrão */
    font-weight: bold; /* Negrito */
    white-space: nowrap; /* Evita quebra de linha */
    margin-right: 0.5em; /* Pequeno espaço após o rótulo */
}

.stat-spacer {
    flex-grow: 1; /* Ocupa todo o espaço restante */
    border-bottom: 1px dashed #323248; /* Linha tracejada (ou solid) */
    margin: 0 0.5em; /* Espaço antes e depois da linha */
    /* Ajuste vertical fino da linha */
    position: relative;
    bottom: 0.3em; /* Desce a linha um pouco */
}

.stat-value { /* O valor */
    color: #e4e6ef; /* Branco/Padrão */
    font-weight: bold;
    white-space: nowrap; /* Evita quebra de linha */
    margin-left: 0.5em; /* Pequeno espaço antes do valor */
}

/* Estilo para o HR dentro dos cards de estatísticas - NÃO MAIS USADO */
/* .card-body hr { ... } */

/* Estilo para ícones GERAIS dentro dos cards de expectativa */
.card.border-left-info .fa-futbol {
     color: #ffb822 !important; /* Amarelo original para ícones */
     margin-right: 5px; /* Espaçamento original */
     font-size: 1em; /* Tamanho normal */
}


/* Remover estilos de tabela específicos para cards de estatística */
/* Assegura que nenhuma regra de .card .table afete os novos .stat-item */
.card .table-responsive { /* Container dos stat-items */
    margin-top: 0.5rem !important; /* Ajusta espaço superior */
}
.card .card-body .table-sm,
.card .card-body .table-borderless {
    display: none; /* Garante que tabelas antigas não apareçam */
}


/* ===== Estilos para tabelas de análise (Placares, Overs, etc.) mantidos e ajustados ===== */

/* Estilos gerais para tabelas FORA dos cards de estatísticas */
.table {
    color: #e4e6ef;
    border-color: #323248; /* Cor da borda geral */
    margin-bottom: 1rem; /* Margem padrão */
    width: 100%;
    border-collapse: collapse; /* Garante que bordas funcionem bem */
}

/* Aplica a tabelas PRINCIPAIS da análise (Placares, Overs, etc.) */
#tabela-placares,
#tabela-overs,
#tabela-btts,
#tabela-match-odds,
#tabela-placares-ht,
#tabela-overs-ht,
#tabela-btts-ht,
#tabela-match-odds-ht {
    background-color: #151521 !important; /* Fundo escuro específico */
    box-shadow: 0 0.15rem 1.75rem 0 rgba(0, 0, 0, 0.25);
    border-radius: 0.35rem;
    overflow: hidden; /* Para border-radius funcionar */
    border-collapse: separate; /* Necessário para border-radius em tabelas */
    border-spacing: 0; /* Remove espaço entre células */
    table-layout: fixed;
}

#tabela-placares thead th,
#tabela-overs thead th,
#tabela-btts thead th,
#tabela-match-odds thead th,
#tabela-placares-ht thead th,
#tabela-overs-ht thead th,
#tabela-btts-ht thead th,
#tabela-match-odds-ht thead th {
    background-color: #2e4ede !important; /* Azul escuro header */
    color: white !important;
    border: 1px solid #3d59cf !important; /* Borda do header */
    padding: 10px 14px; /* Padding */
    text-align: center;
    font-weight: 600;
    font-size: 1rem; /* << REVERTIDO para 1rem >> */
    cursor: pointer;
    position: relative; /* Para setas de ordenação */
}

/* Hover nos cabeçalhos */
#tabela-placares thead th:hover,
#tabela-overs thead th:hover,
#tabela-btts thead th:hover,
#tabela-match-odds thead th:hover,
#tabela-placares-ht thead th:hover,
#tabela-overs-ht thead th:hover,
#tabela-btts-ht thead th:hover,
#tabela-match-odds-ht thead th:hover {
    background-color: #375bcc !important; /* Azul mais claro no hover */
}


#tabela-placares tbody td,
#tabela-overs tbody td,
#tabela-btts tbody td,
#tabela-match-odds tbody td,
#tabela-placares-ht tbody td,
#tabela-overs-ht tbody td,
#tabela-btts-ht tbody td,
#tabela-match-odds-ht tbody td {
    padding: 8px 14px; /* Padding células */
    text-align: center;
    vertical-align: middle;
    border: 1px solid #323248 !important; /* Borda das células */
    color: #e4e6ef !important; /* Cor do texto */
    background-color: #151521; /* Fundo padrão célula */
}

/* Linhas alternadas (se usar table-striped nessas tabelas) */
#tabela-placares.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-overs.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-btts.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-match-odds.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-placares-ht.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-overs-ht.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-btts-ht.table-striped > tbody > tr:nth-of-type(odd) > *,
#tabela-match-odds-ht.table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: #1e1e2d !important; /* Fundo alternado */
}

/* Hover nas linhas (se usar table-hover nessas tabelas) */
#tabela-placares.table-hover > tbody > tr:hover > *,
#tabela-overs.table-hover > tbody > tr:hover > *,
#tabela-btts.table-hover > tbody > tr:hover > *,
#tabela-match-odds.table-hover > tbody > tr:hover > *,
#tabela-placares-ht.table-hover > tbody > tr:hover > *,
#tabela-overs-ht.table-hover > tbody > tr:hover > *,
#tabela-btts-ht.table-hover > tbody > tr:hover > *,
#tabela-match-odds-ht.table-hover > tbody > tr:hover > * {
    background-color: rgba(46, 78, 222, 0.15) !important; /* Fundo hover */
}


/* Inputs dentro das tabelas de análise */
.over-odd-input,
.match-odd-input,
.btts-odd-input {
    width: 100%;
    height: 32px;
    border: 1px solid #323248;
    border-radius: 0.25rem;
    color: #e4e6ef;
    padding: 0.25rem 0.5rem;
    text-align: center;
    font-weight: 600;
    font-size: 0.95rem;
    background-color: #1e1e2d;
    box-sizing: border-box;
    display: block; /* Garante ocupar 100% */
    margin-bottom: 0;
}

/* Células que contêm inputs (para padding) */
#tabela-overs td:nth-child(4), /* Coluna Odd */
#tabela-btts td.btts-input-cell, /* Célula Odd BTTS */
#tabela-match-odds td:nth-child(n+2) /* Colunas Odd M/E/V */
{
    padding: 6px !important; /* Padding menor na célula do input */
}

.odd-justa {
    font-weight: bold !important;
    color: #56aeff !important; /* Azul claro */
}

.legend {
    margin-top: 15px;
    padding: 10px;
    background-color: #151521 !important;
    border-radius: 4px;
    border: 1px solid #323248 !important;
    color: #e4e6ef !important;
    font-size: 0.85rem;
}

.legend p {
    margin-bottom: 5px;
}

.badge {
    padding: 0.4em 0.6em !important;
    font-size: 85% !important;
    font-weight: 600 !important;
    border-radius: 0.25rem;
}

.valor-positivo-alto.badge {
    background-color: rgba(25, 135, 84, 0.85) !important; /* Verde mais forte */
    color: white !important;
}
.valor-positivo-baixo.badge {
    background-color: rgba(255, 193, 7, 0.85) !important; /* Amarelo */
    color: #212529 !important;
}
.valor-negativo.badge {
    background-color: rgba(220, 53, 69, 0.75) !important; /* Vermelho */
    color: white !important;
}

/* Cores de fundo para Probabilidade na Tabela de Placares */
.prob-muito-alta   { background-color: #198754 !important; color: white !important; }
.prob-alta         { background-color: #1faa5f !important; color: white !important; }
.prob-media-alta   { background-color: #6fbf2a !important; color: white !important; }
.prob-media        { background-color: #ffc107 !important; color: #212529 !important; }
.prob-media-baixa  { background-color: #fd7e14 !important; color: white !important; }
.prob-baixa        { background-color: #dc3545 !important; color: white !important; }
.prob-muito-baixa  { background-color: #b02a37 !important; color: white !important; }

/* Cores de fundo para Valor Esperado nas Tabelas */
.valor-esperado-base { /* Classe para reset se necessário */
    background-color: #151521 !important; /* Fundo padrão da célula */
    color: #e4e6ef !important;
    font-weight: normal !important;
}
.valor-positivo-alto { background-color: #1faa5f !important; color: white !important; font-weight: bold !important; }
.valor-positivo-baixo { background-color: #ffc107 !important; color: #212529 !important; font-weight: bold !important; }
.valor-negativo { background-color: #dc3545 !important; color: white !important; font-weight: bold !important; }

/* Aplica formatação VE para Overs, BTTS e Match Odds */
#tabela-overs td.valor-esperado,
#tabela-btts td.valor-esperado-generic,
#tabela-match-odds td.valor-esperado-match {
     /* Herda a formatação das classes .valor-positivo-alto/baixo/negativo */
     /* Garante reset se não tiver valor */
}
/* Garante reset explícito se o valor for '-' */
#tabela-overs td.valor-esperado:is(:empty, :has(span:empty), :contains('-')),
#tabela-btts td.valor-esperado-generic:is(:empty, :has(span:empty), :contains('-')),
#tabela-match-odds td.valor-esperado-match:is(:empty, :has(span:empty), :contains('-')) {
    background-color: #151521 !important;
    color: #e4e6ef !important;
    font-weight: normal !important;
}


/* Larguras das Colunas - Tabela de Placares */
.table-placares .col-placar { width: 30%; text-align: center !important; }
.table-placares .col-prob { width: 35%; }
.table-placares .col-odd { width: 35%; }

/* Larguras das Colunas - Tabela de Overs */
#tabela-overs th:nth-child(1) { width: 15%; } /* Over's */
#tabela-overs th:nth-child(2) { width: 15%; } /* Prob. (%) */
#tabela-overs th:nth-child(3) { width: 15%; } /* Odd Justa */
#tabela-overs th:nth-child(4) { width: 25%; } /* Odd */
#tabela-overs th:nth-child(5) { width: 30%; } /* Valor Esperado */

/* Larguras das Colunas - Tabela BTTS */
#tabela-btts th, #tabela-btts td { width: 50%; }

/* Larguras das Colunas - Tabela Match Odds */
#tabela-match-odds th:nth-child(1), #tabela-match-odds td:nth-child(1) { width: 34%; text-align: left !important; padding-left: 1rem !important;} /* Alinha rótulo à esquerda */
#tabela-match-odds th:nth-child(n+2), #tabela-match-odds td:nth-child(n+2) { width: 22%; text-align: center !important; } /* Centraliza M/E/V */


/* Estilos gerais formulários */
.form-control,
.form-select {
    background-color: #1e1e2d;
    border: 1px solid #323248;
    color: #e4e6ef;
    padding: 0.75rem 1rem;
    border-radius: 5px;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-control:focus,
.form-select:focus {
    background-color: #1e1e2d;
    border-color: #3699ff;
    color: #e4e6ef;
    box-shadow: 0 0 0 0.25rem rgba(54, 153, 255, 0.25);
}


/* Botões */
.btn {
    padding: 0.5rem 1rem;
    font-size: 0.9rem;
    border-radius: 0.3rem;
    font-weight: 600;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}

.btn-primary {
    background-color: #4e73df; /* Cor SB Admin 2 */
    border-color: #4e73df;
    color: white;
}

.btn-primary:hover {
    background-color: #2e59d9; /* Cor hover SB Admin 2 */
    border-color: #2653d4;
    color: white;
}

/* Alertas */
.alert {
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.35rem;
}
.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}
.alert-danger .alert-heading { color: inherit; }
.alert-danger hr { border-top-color: #f1b0b7; }


/* Rodapé */
.footer-text {
    margin-top: 2rem;
    padding-bottom: 1rem;
    font-size: 0.8rem;
    color: #858796; /* Cor muted */
    text-align: center;
}


/* --- Sidebar, Navbar e Layout Base (Geralmente não precisa mexer para esta página) --- */
/* Mantém estilos existentes para .wrapper, .sidebar, .main-content, etc. */

.wrapper {
    display: flex;
}

.sidebar {
    width: 250px;
    min-height: 100vh;
    background-color: #151521; /* Sidebar mais escura */
    color: #a1a5b7;
    transition: margin-left 0.3s;
    position: fixed; /* Fixa a sidebar */
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1000; /* Garante que fique acima */
    padding-top: 1rem; /* Espaço no topo */
    overflow-y: auto; /* Scroll se necessário */
}

.sidebar-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 15px 10px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.sidebar-brand img {
    max-height: 140px;
    width: auto;
    margin-bottom: 8px;
}

.sidebar-brand .sidebar-brand-text {
    color: #fff;
    font-size: 1.1rem;
    font-weight: bold;
}

.sidebar hr {
    border-top: 1px solid #323248;
    margin: 1rem 1rem;
}

.sidebar .nav-link {
    padding: 0.75rem 1.5rem;
    color: #a1a5b7; /* Cor padrão link */
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: background-color 0.15s ease-in-out, color 0.15s ease-in-out;
    white-space: nowrap; /* Impede quebra de linha */
}

.sidebar .nav-link .fa-fw {
    width: 1.25em; /* Largura fixa para ícones */
    margin-right: 0.5rem;
    text-align: center; /* Centraliza ícone */
}

.sidebar .nav-link span {
    flex-grow: 1;
}

.sidebar .nav-link:hover,
.sidebar .nav-link.active {
    background-color: #1e1e2d; /* Fundo no hover/ativo */
    color: #e4e6ef; /* Texto mais claro no hover/ativo */
}

.main-content {
    margin-left: 250px; /* << DESCOMENTADO: Espaço para a sidebar aberta */
    width: calc(100% - 250px); /* << DESCOMENTADO: Largura correta com sidebar */
    transition: margin-left 0.3s ease, width 0.3s ease; /* Adicionada transição de width */
    /* Adiciona padding para evitar sobreposição do header fixo se houver */
    /* padding-top: 70px; */ /* Ajustar conforme altura do header */
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

body.sidebar-toggled .main-content {
    margin-left: 0;
    width: 100%;
}

/* <<< ADICIONADO: Regra para esconder a sidebar quando toggled >>> */
body.sidebar-toggled .sidebar {
    margin-left: -250px; /* Move a sidebar para fora da tela */
}

/* Ajustes para telas menores */
@media (max-width: 768px) {
    .sidebar {
        margin-left: -250px; /* Sidebar fechada por padrão */
        position: fixed; /* Garante que fique fixa */
        z-index: 1030; /* Acima do conteúdo */
    }
    .main-content {
        padding-left: 0; /* Sem espaço inicial */
    }
    body.sidebar-toggled .sidebar {
        margin-left: 0; /* Mostra a sidebar quando toggled */
    }
    .card-body .row > div[class*="col-md-"] {
        margin-bottom: 1rem; /* Adiciona espaço entre colunas empilhadas */
    }
    .border-right {
        border-right: none !important; /* Remove borda vertical em telas pequenas */
        border-bottom: 1px solid #323248 !important; /* Adiciona borda horizontal */
        padding-bottom: 1rem; /* Espaço abaixo */
        margin-bottom: 1rem; /* Espaço abaixo */
    }
     .col-md-4:last-child { /* Remove borda inferior do último item */
        border-bottom: none !important;
        margin-bottom: 0;
        padding-bottom: 0;
    }
}

/* Botão Toggle Sidebar */
#sidebarToggle {
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 1031; /* Acima da sidebar */
    background-color: #2e4ede;
    color: white;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    transition: background-color 0.2s;
}
#sidebarToggle:hover {
    background-color: #375bcc;
}
#sidebarToggle i {
    font-size: 1.2rem;
}

/* Ajusta posição do botão toggle quando sidebar está visível em telas pequenas */
@media (max-width: 768px) {
     body.sidebar-toggled #sidebarToggle {
        left: 260px; /* Move o botão para fora da sidebar */
        transition: left 0.3s;
    }
    #sidebarToggle {
         transition: left 0.3s;
    }
}

/* Garante que tabelas específicas tenham fundo correto */
#tabela-placares, #tabela-overs, #tabela-btts, #tabela-match-odds {
    background-color: #151521 !important;
}
#tabela-placares td, #tabela-overs td, #tabela-btts td, #tabela-match-odds td {
    background-color: inherit; /* Herda da tabela */
}

/* Tipologia (Badge no Header do Card Principal) */
.tipologia {
    font-size: 0.9rem; /* Tamanho menor */
    font-weight: bold;
    color: #ffb822; /* Amarelo para destaque */
    margin-left: 15px;
    vertical-align: middle;
    display: inline-block;
    background-color: rgba(255, 184, 34, 0.15); /* Fundo levemente amarelado */
    padding: 0.2em 0.5em;
    border-radius: 0.25rem;
}

/* Ajuste final no espaçamento dos cards internos */
.main-content > .card > .card-body > .row > .col-md-6 > .card,
.main-content > .card > .card-body > .row > .col-12 > .card {
    margin-bottom: 1.5rem; /* Garante margem inferior padrão */
}

.main-content > .card > .card-body > .row > .col-md-6 > .card > .card-body,
.main-content > .card > .card-body > .row > .col-12 > .card > .card-body {
     padding: 1rem; /* Padding interno um pouco menor */
}


/* Garante que texto dentro de h6/h5 coloridos não seja sobrescrito */
.card-body h6[style*="color"],
.card-body h5[style*="color"] {
    /* Estilos já aplicados inline ou via classes .text-* */
}

/* Sobrescreve cor padrão de h6/h5 se não tiver classe de cor */
.card .card-body h6:not([class*='text-']),
.card .card-body h5:not([class*='text-']) {
    color: #e4e6ef !important; /* Garante cor padrão se não houver cor específica */
}

/* === Estilo para Logos no Título Principal === */
.main-title .title-logo {
    height: 40px; /* Ajustado para 40px */
    width: auto;
    vertical-align: middle; /* Alinha verticalmente com o texto */
    margin: 0 8px; /* Espaço antes e depois do logo */
    position: relative; /* Permite ajuste fino vertical */
    bottom: 2px; /* Ajuste vertical (pode precisar de ajuste) */
}
/* === Fim Estilo Logos === */

/* Garante que a cor da probabilidade sobrescreva o striping */
#tabela-placares.table-striped > tbody > tr:nth-of-type(odd) > td.col-prob[class*="prob-"] {
    background-color: inherit !important; /* Força herdar a cor da classe prob-* */
}

/* Sobrescreve cor padrão de h6/h5 se não tiver classe de cor */
.card .card-body h6:not([class*='text-']),
.card .card-body h5:not([class*='text-']) {
    color: #e4e6ef !important; /* Garante cor padrão se não houver cor específica */
}

/* Aumenta a fonte dos inputs na tabela Match Odds */
#tabela-match-odds input.form-control-sm {
    font-size: 0.9rem; /* Ajuste conforme necessário - um pouco maior que o padrão sm */
    text-align: center; /* Garante centralização do texto no input */
}

/* === Novos Estilos para Game Card (buscar_campeonato.html) === */
.game-card .card-body {
    padding: 0.5rem !important; /* Reduz padding interno */
}

.game-badge {
    font-size: 0.75rem;
    padding: 0.3em 0.6em;
    font-weight: bold;
}

.team-logo {
    max-height: 45px; /* Tamanho do logo */
    margin-bottom: 0.25rem;
}

.team-name {
    color: #e4e6ef; /* Cor clara */
    font-weight: 500;
    display: block; /* Garante que ocupe a linha */
    font-size: 0.85rem;
}

.odd-badge {
    background-color: #323248; /* Fundo cinza escuro */
    color: #e4e6ef;
    font-size: 0.9rem;
    padding: 0.3em 0.7em;
    border-radius: 0.25rem;
    min-width: 40px; /* Largura mínima */
    display: inline-block;
}

.vs-separator {
    font-weight: bold;
    color: #e4e6ef; /* << ALTERADO para branco/claro padrão >> */
    font-size: 0.9rem;
    align-self: center; /* Centraliza verticalmente com os times */
}

.analyze-button {
    padding: 0.3rem 1rem; /* Botão menor */
    font-size: 0.85rem;
}
/* === Fim Novos Estilos === */

/* --- Estilos Área Admin --- */

/* Abas Admin */
.nav-tabs#adminTabs {
    border-bottom-color: #444; /* Linha abaixo das abas mais escura */
}

.nav-tabs#adminTabs .nav-link {
    color: #adb5bd; /* cinza claro para texto da aba inativa */
    background-color: transparent;
    border: 1px solid transparent;
    border-bottom: 1px solid #444; /* Garante que a linha base exista */
}

.nav-tabs#adminTabs .nav-link:hover,
.nav-tabs#adminTabs .nav-link:focus {
    border-color: #444 #444 #333;
    isolation: isolate; /* Necessário para hover em Bootstrap 5.3+ */
    color: #f8f9fa; /* Texto mais claro no hover */
}

.nav-tabs#adminTabs .nav-link.active {
    color: #fff; /* Texto branco para aba ativa */
    background-color: #212529; /* Fundo da aba ativa (cor da sidebar) */
    border-color: #444 #444 #212529; /* Bordas combinando */
    border-bottom-color: #212529; /* Remove borda inferior sob a aba ativa */
}

/* Modal Adicionar Usuário (Dark Theme) */
#addUserModal .modal-content {
    background-color: #2b2f32; /* Fundo escuro para o modal */
    color: #f8f9fa; /* Texto claro */
    border: 1px solid #444;
}

#addUserModal .modal-header {
    border-bottom: 1px solid #444;
}

#addUserModal .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%); /* Botão de fechar branco */
}

#addUserModal .modal-footer {
    border-top: 1px solid #444;
}

#addUserModal .form-control {
    background-color: #3a3f44; /* Fundo campo de input */
    color: #f8f9fa;
    border: 1px solid #555;
}

#addUserModal .form-control:focus {
    background-color: #4a4f54;
    color: #f8f9fa;
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}

#addUserModal .form-label,
#addUserModal .form-text {
    color: #adb5bd; /* Cor para labels e texto de ajuda */
}

#addUserModal .modal-title {
    color: #f8f9fa;
}

/* --- Fim Estilos Área Admin --- */

/* --- Estilos Tabela Dark (Admin) --- */
.table-dark {
    color: #e4e6ef; /* Cor de texto clara padrão */
    background-color: #2a2b3a; /* Fundo um pouco mais claro que o body */
    border-color: #454656; /* Cor de borda sutil */
}

.table-dark th,
.table-dark td,
.table-dark thead th {
    border-color: #454656; /* Garante borda interna escura */
    vertical-align: middle; /* Centraliza verticalmente */
}

.table-dark tbody tr:hover {
    background-color: #3a3b4a; /* Cor de hover um pouco mais clara */
    color: #ffffff;
}

/* Ajuste específico para o select dentro da tabela dark */
.table-dark .form-select {
    background-color: #3a3b4a; /* Fundo do select */
    color: #e4e6ef; /* Texto do select */
    border-color: #454656; /* Borda do select */
}

.table-dark .form-select:focus {
    border-color: #86b7fe; /* Cor da borda em foco (padrão bootstrap) */
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); /* Sombra em foco */
    background-color: #3a3b4a;
    color: #e4e6ef;
}

/* Ajuste para badges na tabela dark (já fizemos inline, mas bom ter regra geral) */
.table-dark .badge {
     /* As cores bg-* já devem funcionar, mas podemos ajustar contraste se necessário */
     color: #ffffff !important; /* Força texto branco para melhor leitura em fundos coloridos */
}


/* --- Outros Estilos --- */
/* ... (Restante dos estilos) ... */

/* === Correção Autofill Login Input === */
/* Tenta sobrescrever o estilo de autofill padrão do navegador */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px #1e1e2d inset !important; /* Fundo desejado */
    -webkit-text-fill-color: #e4e6ef !important; /* Cor do texto desejada */
    caret-color: #e4e6ef !important; /* Cor do cursor */
    transition: background-color 5000s ease-in-out 0s; /* Truque para atrasar mudança */
}

/* Novas Classes para Vagas Europeias (Holanda) */
.europa-league-qualifiers-badge {
  background-color: #1B65A9; /* Azul Escuro */
  color: white;
}

.conference-league-playoffs-badge {
  background-color: #87CEEB; /* Azul Claro */
  color: #333; /* Texto escuro para melhor contraste */
}

/* Nova Classe para Play-off Possível (Holanda Eerste Divisie) */
.possible-promotion-playoff-badge {
  background-color: #87CEEB; /* Azul Claro */
  color: #333; /* Texto escuro para melhor contraste */
}

/* === FIM AJUSTE FOOTER === */

/* Formatação Condicional Valor Esperado */
.valor-esperado.ve-positivo {
    background-color: #198754 !important; /* Verde */
    color: white !important;
    font-weight: bold;
}

.valor-esperado.ve-neutro {
    /* Cor neutra - pode ser a padrão da tabela ou uma específica */
    /* Exemplo: Amarelo suave */
     background-color: #ffc107 !important; 
     color: #343a40 !important; /* Texto escuro para amarelo */
     font-weight: normal; /* Pode ser normal ou bold */
 }

.valor-esperado.ve-negativo {
    background-color: #dc3545 !important; /* Vermelho */
    color: white !important;
    font-weight: bold;
}

/* Reset básico para garantir que não herde formatação indesejada */
.valor-esperado {
    /* font-weight: normal; */ /* Descomente se necessário */
}