@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

:root {
  /*--background: #262c35;*/
  --texto-branco: #ffffff;
  --btn-purple: #8000ff;
  --btn-purple-hover: #6600cc;
  --btn-success: #28a745;
  --btn-success-hover: #218838;
}

html,
* {
  font-family: "IBM Plex Mono", monospace;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

/* Transições suaves */
html {
  scroll-behavior: smooth;
}

/* Botões de filtro */
.filter-btn {
  margin: 5px;
  padding: 8px 20px;
  font-size: 1rem;
  transition: all 0.3s ease;
  border-radius: 25px;
  font-weight: 600;
}

.filter-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.filter-btn.active {
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}

/* Estilos específicos para cada botão */
.btn-fullstack {
  border: 1px solid var(--btn-purple) !important;
  color: var(--texto-branco);
}

.btn-fullstack:hover,
.btn-fullstack.active {
  background-color: var(--btn-purple-hover) !important;
  border-color: var(--btn-purple-hover) !important;
}

.btn-outline-success:hover,
.btn-outline-success.active {
  background-color: var(--btn-success) !important;
  border-color: var(--btn-success) !important;
}

/* Cards de projetos */
.project-card {
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.card {
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  height: 100%;
}

.card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 30px rgba(77, 140, 236, 0.3);
}

.card-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Links e botões */
a {
  text-decoration: none;
  transition: all 0.3s ease;
}

a:hover {
  transform: translateY(-2px);
}

.btn {
  transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
}

.btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 5px 15px rgba(0, 123, 255, 0.3);
}

/* Footer */
footer {
  font-size: 1rem;
  transition: background-color 0.3s ease;
}