
/* ---------- Utilitários de cor personalizados ---------- */
.text-primary-700 { color: #7B2CBF !important; }
.bg-primary-700   { background-color: #7B2CBF !important; }
.btn-primary-700  { background-color: #7B2CBF; border-color: #7B2CBF; color: #fff; }
.btn-primary-700:hover { background-color: #9333EA; border-color: #9333EA; }

.text-yellow-500 { color: #FACC15 !important; }
.btn-yellow { background-color: #FACC15; border-color: #FACC15; color: #1F2937; }
.btn-yellow:hover { filter: brightness(0.95); }

.btn-soft-secondary {
  background-color: #F3F4F6;
  border: 1px solid #E5E7EB;
  color: #1F2937;
}
.btn-soft-secondary:hover { background-color: #e9eaee; }


/* Navbar brand com leve destaque */
.navbar-brand { letter-spacing: .2px; }

/* Ajustes finos */
.card-title { color: #1F2937; }
.card-text  { color: #4B5563; }
footer { font-size: 0.95rem; }


/* Estilo base dos links */
.navbar .nav-link {
  position: relative;
  font-weight: 500;
  color: #444; /* cor neutra */
  transition: color 0.3s ease;
  margin-right: 5px;
  margin-left: 5px;
}

/* Cor no hover */
.navbar .nav-link:hover {
  color: var(--bs-primary); /* cor principal no hover */
}

/* Underline para links NÃO ativados (aparece no hover) */
.navbar .nav-link::after {
  content: "";
  position: absolute;
  bottom: -5px; /* espaço abaixo do texto */
  left: 0;
  width: 0;
  height: 3px;
  background: rgba(0, 0, 0, 0.2); /* cinza translúcido */
  border-radius: 4px;
  transition: all 0.3s ease-in-out;
}

/* Expande o underline no hover */
.navbar .nav-link:hover::after {
  width: 100%;
}

/* Underline para link ativado */
.navbar .nav-link.ativado::after {
  width: 100%;
  background: linear-gradient(90deg, var(--bs-primary), #f472b6); /* degradê moderno */
}

/* Cor no link ativado */
.navbar .nav-link.ativado {
  color: var(--bs-primary);
}
