/* Reset básico */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Define o fundo para evitar áreas brancas inesperadas */
html, body {
  height: 100%;
  font-family: 'Montserrat', sans-serif;
  background-color: #048042;
  overflow: hidden; /* Adicione esta linha */

}

/* Cabeçalho ocupa 100% da largura */
header {
  width: 100%;
  background-color: #000; /* cor do cabeçalho -> 048042*/
  background: 0.8;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #000000; /* 000 */
  color: #048042; /* 000 */
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2000;
}

/* Área esquerda do cabeçalho */
#header-left {
  display: flex;
  align-items: center;
  gap: 15px;
}

/* Ícone de menu */
#menu-toggle {
  font-size: 24px;
  cursor: pointer;
}

/* Título */
#header-title {
  font-size: 24px;
  font-weight: 600;
  color: white;
}

/* Espaço para o logo da Invest RS */
#invest-logo img {
  height: 25px;
  padding-left: 25px;
}

/* Seletor de idiomas */
#language-selector {
  display: flex;
  align-items: center;
  gap: 10px;
}

#language-selector img {
  width: 24px;
  height: 24px;
  cursor: pointer;
  border: 1px solid transparent;
  border-radius: 3px;
  transition: border 0.2s;
}

#language-selector img:hover {
  border: 1px solid #33b73e;
}

/* Container geral do conteúdo (abaixo do cabeçalho) */
#container {
  position: relative;
  height: calc(100% - 60px); /* subtrai a altura do cabeçalho (60px) */
  margin-top: 60px; /* altura do cabeçalho */
  background-color: #048042; /* garante que o fundo seja consistente */
}

/* Sidebar (menu lateral) */
#sidebar {
  position: fixed;
  font-size: 11.5px;
  font-style: normal;
  top: 60px; /* logo abaixo do cabeçalho */
  left: 0;
  bottom: 0;
  width: 100px;
  background-color: #000; /* verde */
  opacity: 1;
  color: #ffffff;
  transition: transform 0.3s ease;
  z-index: 1000;
  text-align: center;
}

/* Quando colapsado, move a sidebar para fora da tela */
#sidebar.collapsed {
  transform: translateX(-100px);
}

#sidebar img{
  margin: 0 auto;
}

/* Lista de itens do menu */
#menu-items {
  list-style: none;
  padding: 10px 0 0 0;
  /* Removido: transition: background 0.3s ease-in-out; */
}

#menu-items li {
  margin: 10px 0;
  text-align: center;
  padding-bottom: 10px;
}

/* --- INÍCIO DAS ALTERAÇÕES PARA O EFEITO HOVER --- */

/* Estilo base para os links do menu MODIFICADO */
#menu-items li a {
  text-decoration: none;
  color: #ffffff; /* Cor original do texto */
  display: block; 
  padding: 5px; /* Mantenha seu padding */
  /* transition: background-color 0.2s; */ /* Transição antiga removida */
  
  /* Propriedades adicionadas para o efeito */
  position: relative; 
  overflow: hidden;  
  z-index: 1;        
  transition: color 0.5s ease; /* Nova transição para a cor do texto */
}

/* Pseudo-elemento para o fundo animado ADICIONADO */
#menu-items li a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0%; /* Começa com altura 0 */
  background-color: #048042; /* Sua cor de hover desejada! */
  z-index: -1; /* Fica atrás do conteúdo */
  transition: height 0.5s ease; /* Anima a altura */
  /* Opcional: border-radius se quiser bordas arredondadas no efeito */
  /* border-radius: 50% 50% 0 0; */ 
}

/* Efeito hover no link principal (muda cor do texto) ADICIONADO */
#menu-items li a:hover {
  color: #ffffff; /* Cor do texto durante o hover - ajuste se precisar */
  /* A regra antiga de background-color e border-radius foi removida */
}

/* Efeito hover que expande o pseudo-elemento ADICIONADO */
#menu-items li a:hover::before {
  height: 100%; /* Expande a altura para 100% */
}

/* Garante que ícone e texto fiquem na frente ADICIONADO */
#menu-items li a .menu-icon,
#menu-items li a .menu-label {
  position: relative;
  z-index: 2;
}

/* Regra antiga de :after REMOVIDA OU COMENTADA */
/*
#menu-items li a:after {
  background-color: #43A071;
  border-radius: 22px;
  transform: translate(-50%, -50%);
}
*/

/* --- FIM DAS ALTERAÇÕES PARA O EFEITO HOVER --- */

.menu-icon {
  display: block;
  /* font-size: 30px; */ /* Tamanho da fonte pode não ser necessário se usar img */
  margin-bottom: 5px;
  height: 40px;
  margin: 0 auto; /* centraliza o elemento */
  /* border-radius: 50%; */ /* Pode não ser necessário para a imagem */
}

.menu-icon img {
  display: block;
  /* text-align: center; */ /* Desnecessário com margin: auto */
  height: 40px;   /* Define a altura desejada */
  width: auto;    /* Mantém a proporção original */
  margin: 0 auto; /* Garante centralização da imagem */
}

.menu-label { /* Adicionado para garantir que o texto seja exibido */
  display: block; 
}

/************************
 * Conteúdo principal *
 ************************* */
/* Ajuste no content para acomodar as páginas carregadas */
#content {
  transition: margin-left 0.3s ease;
  margin-left: 100px; /* espaço para a sidebar */
  height: 100%; /* Alterado para ocupar altura restante */
  display: flex; /* Alterado para flex */
  flex-direction: column; /* Organiza iframe verticalmente */
  background-color: #ffffff; /* Fundo branco para área de conteúdo */
  color: #000000; /* Cor do texto padrão */
  /* padding: 20px; */ /* Removido padding para iframe ocupar tudo */
  overflow: hidden; /* Para conter o iframe */
}

/* Quando a sidebar está oculta, o conteúdo ocupa toda a largura */
#content.full {
  margin-left: 0;
}

/* Área do iframe */
#iframe-container {
  flex-grow: 1; /* Permite que o container cresça e ocupe espaço */
  width: 100%;
  height: 100%;
  border: none; /* Remove borda do container se houver */
}

#iframe-container iframe {
  width: 100%;
  height: 100%;
  border: none; /* Garante que o iframe não tenha borda */
  display: block; /* Remove espaço extra abaixo do iframe */
}