Olá, Kelly, como vai?
A sua resolução atende perfeitamente aos requisitos propostos pelo exercício. A estratégia de agrupar as entradas em uma lista e utilizar a função any para verificar a existência de valores negativos foi muito bem aplicada, tornando a leitura do código fluida e evitando a repetição excessiva de comparadores lógicos que seria comum com o uso apenas de or.
Aproveitando que você já estruturou os dados em uma lista para fazer a validação, deixo uma dica que pode tornar seu código ainda mais conciso. É possível utilizar a função nativa sum() passando a sua lista atividades como argumento para obter o resultado final, sem a necessidade de somar variável por variável manualmente no bloco else.
Agradeço por compartilhar sua solução conosco e parabéns pela implementação criativa. O fórum continua à disposição para futuras dúvidas e compartilhamentos.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!