/* Atualizar o estilo para melhor contraste */
body {
    background-color: #121212; /* Fundo preto */
    color: #e0e0e0; /* Texto principal claro */
    font-family: Arial, sans-serif;
}

/* Títulos de seção */
.news h3 {
    color: #ffffff; /* Branco puro para destaque */
    font-size: 20px;
    margin-bottom: 15px;
}

/* Artigos */
.news article {
    background: #1e1e1e; /* Fundo escuro, mas diferente do fundo geral */
    border: 1px solid #333; /* Bordas sutis */
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 10px;
    overflow: hidden;
}

.news article h4 a {
    color: #4caf50; /* Verde brilhante para links */
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
}

.news article h4 a:hover {
    text-decoration: underline; /* Indicação visual no hover */
}

.news article p {
    color: #bdbdbd; /* Cinza claro para descrição */
    font-size: 14px;
}

.news .date {
    color: #888888; /* Cinza escuro para data */
    font-size: 12px;
    display: block;
    margin-top: 8px;
}

/* Barra de busca */
.top-bar input {
    background: #1e1e1e; /* Fundo do input */
    color: #ffffff; /* Texto branco */
    border: 1px solid #333; /* Bordas sutis */
    padding: 10px;
    border-radius: 5px;
    width: calc(100% - 40px);
    margin-right: 10px;
}

.top-bar i {
    color: #ffffff; /* Ícone branco */
}

/* Estilizando a barra superior */
.top-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #1B1B1B;
    padding: 15px 20px;
    color: white;
}

/* Contêiner do logo + texto */
.logo-container {
    display: flex;
    align-items: center;
}

/* Logo responsiva */
.logo {
    width: 40px; /* Ajuste conforme necessário */
    height: auto;
    margin-right: 10px;
}

/* Ajustando o título */
h1 {
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

/* Caixa de pesquisa */
.search-container {
    display: flex;
    align-items: center;
    position: relative;
}

#search {
    padding: 8px;
    border: none;
    border-radius: 4px;
    font-size: 14px;
    width: 200px;
}

.fa-search {
    position: absolute;
    right: 10px;
    color: gray;
    cursor: pointer;
}

/* Ajuste para vídeos responsivos (elementos de embed) */
.embed-responsive {
    position: relative;
    display: block;
    width: 100%;
    padding-bottom: 56.25%; /* Proporção 16:9 */
    overflow: hidden;
}

.embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.embed-responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

#sentinel {
  height: 1px;
}

/* Imagens das notícias */
.news img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Links */
a {
  color: #ee5252;
}

/* Estilização para a Central_Vasco_TV (mobile e padrões) */
/* Para mobile, o contêiner preenche a largura total e o vídeo se adapta, sem ultrapassar 200px de altura */
#tvContainer {
    width: 100%;
    margin: 20px auto;
    max-height: 200px;
}
#tvContainer video {
    width: 100%;
    max-height: 200px;
    display: block;
    border-radius: 8px;
    object-fit: contain;
}

/* Responsividade para mobile (até 1023px) */
@media (max-width: 1023px) {
  /* Header fixo para mobile */
  header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
  }
  /* Adiciona margem ao main para não ficar escondido sob o header */
  main {
    margin-top: 70px;
  }
}

/* Responsividade para telas maiores (Desktop, a partir de 1024px) */
@media (min-width: 1024px) {
  header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
  }
  
  #tvContainer {
    position: fixed;
    top: 70px;
    left: 20px;
    width: 600px;
    max-width: 600px;
    z-index: 1100;
    max-height: 300px;
  }
  
  #tvContainer video {
    width: 100%;
    max-height: 300px;
    display: block;
    border-radius: 8px;
    object-fit: contain;
  }
  
  .columns-container {
    margin-top: 70px;
    padding: 20px;
  }
  
  .news-wrapper {
    margin-left: 640px;
    width: calc(100% - 640px);
    padding: 20px;
    box-sizing: border-box;
  }
  
  main {
    margin-top: 70px;
  }
  
  #app {
    margin-left: 640px;
  }
  
  #compartilhar {
    margin-left: 860px;
  }
  
  #tabela-brasileirao {
      margin-right: 111px;
  }
}

/* Responsividade para tamanhos menores */
@media (max-width: 768px) {
    .news article h4 a {
        font-size: 16px;
    }
    .news article p {
        font-size: 13px;
    }
    .news .date {
        font-size: 11px;
    }
}

@media (max-width: 480px) {
    .news h3 {
        font-size: 18px;
    }
    .news article {
        padding: 10px;
    }
    .news article h4 a {
        font-size: 14px;
    }
    .news article p {
        font-size: 12px;
    }
    .news .date {
        font-size: 10px;
    }
    
    #search {
        width: 120px;
    }
}

/* ===== Estilos do Menu ===== */
#menu {
  display: none;
  position: fixed; /* Alterado de absolute para fixed */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.95);
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 2000;
}

#menu ul {
  list-style: none;
  padding: 0;
  text-align: center;
}

#menu ul li {
  margin: 20px 0;
}

#menu ul li a {
  color: white;
  font-size: 24px;
  text-decoration: none;
}

/* Botão de fechar o menu */
.close-menu {
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 24px;
  cursor: pointer;
  color: white;
  z-index: 2100;
}

@media (max-width: 1023px) {
  /* Link que cobre todo o anúncio */
  .mobile-ad-link {
    display: block;
    text-decoration: none; /* Remove sublinhado padrão */
    color: inherit;        /* Herda a cor do pai */
  }

  .mobile-ad {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10vh; /* Ajuste conforme desejar (entre 10% e 15% da tela) */
    background-color: #285e87;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 0 10px;
    box-sizing: border-box;
    z-index: 1500;
  }

  .ad-image {
    max-height: 80%; /* Mantém a imagem proporcional dentro do anúncio */
    width: auto;
    margin-right: 10px;
  }

  .ad-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    font-size: 12px;
  }

  .ad-title {
    font-weight: bold;
    margin: 0;
  }

  .ad-discount {
    margin: 2px 0;
    font-size: 13px;
  }

  .ad-details {
    margin: 2px 0;
    font-size: 11px;
  }

  /* Evita que o anúncio sobreponha o conteúdo principal */
  main {
    margin-bottom: 12vh;
  }
}

@media (min-width:1024px) {
  /* Oculta o anúncio mobile em telas maiores */
  .mobile-ad-link {
    display: none;
  }
  
  /* Exibe o anúncio desktop */
  .desktop-ad-link {
    display: block;
    text-decoration: none; /* Remove sublinhado padrão */
    color: inherit;
  }

  /* Posicionamento do anúncio desktop abaixo da CentralVascoTV */
  .desktop-ad {
    position: fixed;
    top: calc(70px + 310px + 20px); /* 70px do header, 300px da CentralVascoTV e 20px de margem */
    left: 20px;
    width: 600px; /* Pode ser ajustado conforme sua necessidade */
    background-color: #285e87;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    z-index: 1100;
    border-radius: 8px;
  }
  
  /* Posicionamento do anúncio desktop abaixo da CentralVascoTV */
  .desktop-ad-1 {
    position: fixed;
    top: calc(70px + 420px + 20px); /* 70px do header, 300px da CentralVascoTV e 20px de margem */
    left: 20px;
    width: 600px; /* Pode ser ajustado conforme sua necessidade */
    background-color: #fff;
    color: #000;
    display: flex;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    z-index: 1100;
    border-radius: 8px;
  }
  
  /* Posicionamento do anúncio desktop abaixo da CentralVascoTV */
  .desktop-ad-2 {
    position: fixed;
    top: calc(70px + 520px + 20px); /* 70px do header, 300px da CentralVascoTV e 20px de margem */
    left: 20px;
    width: 600px; /* Pode ser ajustado conforme sua necessidade */
    height: 75px;
    background-color: #FFCC00;
    color: #000;
    display: flex;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    z-index: 1100;
    border-radius: 8px;
  }
  
  /* Imagem do anúncio desktop */
  .ad-image-desktop {
    max-height: 100px; /* Ajuste conforme o design desejado */
    width: auto;
    margin-right: 10px;
  }
  
  /* Área de texto do anúncio desktop */
  .ad-text-desktop {
    display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 14px;
  }
  
  .ad-text-desktop p {
    margin: 2px 0;
  }
}
