body {
  margin: 0;
  padding: 0;
  background-color: rgb(3, 3, 3); /* editável */
  font-family: Arial, sans-serif;
  color: rgb(249, 249, 249); /* editável */
}

/* Título */
h1 {
  text-align: center;
  margin: 20px 0;
}

/* Logo */
.logo {
  width: 50px;
  height: 50px;
  display: block;
  margin: 10px auto; /* centraliza abaixo do título */
}

.top-bar {
  background: #1b3a00;
  color: #ffffff;
  padding: 10px 20px;
  display: flex;
  justify-content: space-between; /* separa o filtro e o texto */
  align-items: center;            /* centraliza verticalmente */
}

/* Agrupa label + select e centraliza */
.centro {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px; /* espaço entre texto e botão */
  margin: 0 auto; /* mantém no centro */
}


.top-bar label {
  margin-right: 10px;
  font-weight: bold;
}

.top-bar select {
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #fff0ac;
  background: #000;
  color: #c7dcdc;
  cursor: pointer;
}

.texto-direita {
  font-weight: bold;
  font-size: 16px;
  color: #f2ff00;
}

/* Cards */
.cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  padding: 20px;
}

.card {
  background-color: rgba(0,0,0,0.05); /* quadrado meio transparente */
  border-radius: 8px;
  width: 300px; /* tamanho fixo para manter 2 por linha */
  padding: 15px;
  text-align: center;
  box-sizing: border-box;
  box-shadow: 0 0 20px rgba(39, 255, 1, 0.3);
}

.card img {
  width: 100%;
  height: 180px; /* altura fixa para padronizar */
  object-fit: cover;
  display: block;
  margin: 0 auto 10px auto;
  border-radius: 5px;
}

.card p {
  margin: 10px 0;
}

.card button {
  background-color: #298a3d;
  color: white;
  border: none;
  padding: 10px 15px;
  border-radius: 5px;
  cursor: pointer;
}

.card button:hover {
  background-color: #839877;
}

/* Barra final */
.barra-final {
  background: #1b3a00;
  color: rgb(255, 253, 253);
  text-align: center;
  padding: 10px;
  margin-top: 10px;
}

.barra-final .imagens {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 10px;
}

.barra-final img {
  width: 60px;
  height: 60px;
  object-fit: cover;
  cursor: pointer;
}

/* Texto explicativo */
.descricao {
  padding: 20px;
  max-width: 800px;
  margin: 0 auto;
}

.descricao ul {
  list-style-type: disc;
  padding-left: 20px;
}

/* Responsividade */
@media (max-width: 700px) {
  .card {
    width: 100%; /* em celular, um por linha */
  }
}
