/* Estilos para o formulário de contato */

/* Mensagens de feedback */
.form-message {
  margin-top: 20px;
  padding: 15px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.form-message.fade-out {
  animation: fadeOut 0.5s ease-in-out forwards;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-10px);
  }
}

.success-message {
  background-color: rgba(76, 175, 80, 0.15);
  border-left: 4px solid #4caf50;
  color: #2e7d32;
}

.error-message {
  background-color: rgba(244, 67, 54, 0.15);
  border-left: 4px solid #f44336;
  color: #c62828;
}

.message-icon {
  margin-right: 15px;
  font-size: 24px;
}

.success-message .message-icon {
  color: #4caf50;
}

.error-message .message-icon {
  color: #f44336;
}

.message-text {
  font-size: 14px;
  line-height: 1.5;
}

/* Estilo para botão com spinner */
.submit-btn:disabled {
  opacity: 0.8;
  cursor: wait;
}

/* Animação dos campos do formulário */
.form-group input:focus + .focus-indicator,
.form-group textarea:focus + .focus-indicator {
  width: 100%;
}

/* Link para área administrativa */
.admin-link {
  display: inline-flex;
  align-items: center;
  opacity: 0.6;
  transition: opacity 0.3s;
  margin-left: 15px;
  font-size: 0.9em;
}

.admin-link i {
  margin-right: 5px;
}

.admin-link:hover {
  opacity: 1;
}
