/* Estilos específicos para os botões de bandeira do sistema de internacionalização */

/* Estilos para desktop */
.language-switcher {
  display: flex;
  align-items: center;
  margin-left: 20px;
  padding: 0 5px;
  z-index: 100;
}

.language-switcher button {
  background-color: #f8f9fa;
  border: 1px solid #ddd;
  border-radius: 50%; /* Formato circular */
  width: 40px;        /* Tamanho quadrado */
  height: 40px;       /* Igual à largura para criar um círculo perfeito */
  padding: 0;         /* Removendo padding para garantir formato circular */
  margin: 0 5px;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.language-flag {
  width: 90%;       /* Ligeiramente menor que o botão para evitar cortes */
  height: 90%;
  object-fit: cover; /* Alterado de 'contain' para 'cover' para manter proporção e preenchimento */
  border-radius: 50%; /* Imagem também com formato circular */
}

.language-switcher button:hover {
  transform: translateY(-2px);
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
}

.language-switcher button.active {
  border: 2px solid #1a73e8;
  box-shadow: 0 0 0 2px rgba(26, 115, 232, 0.2);
  border-radius: 50%; /* Garantir que o botão ativo permaneça circular */
  aspect-ratio: 1 / 1; /* Garantir que a proporção seja sempre 1:1 */
}

/* Ajustes para o cabeçalho com internacionalização */
.header-container.has-language-switcher {
  flex-wrap: nowrap;
}

.header-container.has-language-switcher .logo {
  margin-right: 10px;
}

.header-container.has-language-switcher nav a,
.header-container.has-language-switcher .nav-links a {
  margin: 0 10px;
  text-decoration: none;
  color: #333;
  transition: color 0.3s ease;
}

.header-container.has-language-switcher nav a:hover,
.header-container.has-language-switcher .nav-links a:hover {
  color: #1a73e8;
}

/* Ajustes responsivos */
@media (max-width: 768px) {
  .language-switcher {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    padding: 0;
    display: flex;
    align-items: center;
  }
  
  .language-switcher button {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px;
    min-height: 32px;
    max-width: 32px;
    max-height: 32px;
    padding: 0;
    margin: 0 3px;
    background-color: white;
    border-radius: 50% !important;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    overflow: hidden;
  }
  
  .language-switcher button.active {
    border: 2px solid #1a73e8;
    border-radius: 50% !important;
    box-shadow: 0 0 0 2px rgba(26, 115, 232, 0.2);
    width: 32px !important;
    height: 32px !important;
  }
  
  .language-flag {
    width: 28px;
    height: 28px;
    object-fit: cover;
    border-radius: 50%;
  }
  
  /* Ajustes para o cabeçalho mobile */
  header {
    padding: 10px 0;
  }
  
  .header-container {
    padding: 0 15px;
    position: relative;
    justify-content: flex-start;
    height: 50px;
  }
  
  .menu-hamburguer {
    margin-right: 15px;
    order: -1;
    z-index: 101;
  }
  
  .logo {
    justify-content: flex-start;
    margin-right: auto;
  }
  
  .header-container .logo img {
    max-height: 40px;
  }
}

@media (max-width: 480px) {
  .language-switcher {
    right: 10px;
  }
  
  .language-switcher button {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px;
    min-height: 28px;
    max-width: 28px;
    max-height: 28px;
    padding: 0;
    margin: 0 2px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.1);
    border-radius: 50% !important;
    aspect-ratio: 1/1;
    overflow: hidden;
  }
  
  .language-switcher button.active {
    border-width: 1px;
    border-radius: 50% !important;
    box-shadow: 0 0 0 1px rgba(26, 115, 232, 0.2);
    width: 28px !important;
    height: 28px !important;
  }
  
  .language-flag {
    width: 24px;
    height: 24px;
    object-fit: cover;
    border-radius: 50%;
  }
  
  .header-container .logo img {
    max-height: 35px;
  }
}

/* Ajuste para o seletor de idiomas na versão desktop */
@media (min-width: 769px) {
  .language-switcher {
    margin-left: 20px;
  }
  
  .language-switcher button:first-child {
    margin-left: 0;
  }
  
  .language-switcher button:last-child {
    margin-right: 0;
  }
} 