<p>Irgendein Text.</p>
<p class="classy">Irgendein anderer Text.</p>
<span>Noch mehr Text<span>
Ответ 1
Второй p не :not(.classy) поэтому он неcolor: red. Это означает, что он по-прежнему имеет свой цвет по умолчанию, который является color: inherit.
Элемент body:not(p) поэтому он color: green.
Второй p поэтому наследует зеленый цвет от элемента body.
Инструменты разработчика в вашем браузере сказали бы вам следующее:
Ответ 2
В дополнение к ответу @Quentin, для вашего понимания попробуйте добавить свои элементы под одним родителем и применить CSS с родительской селекторной ссылкой. Теперь вы получите именно то, что ожидали. Посмотрите ниже фрагмент.