Из-за чего не назначается стили для двух элементов?
В этом примере не работает с последним, а на моем примере почему-то первый. https://jsfiddle.net/vandxr4k/
Для правильного вопроса надо знать половину ответа
Это песочница. Она добавляет скрипты после вашего HTML-кода. В результате последним элементом становится не p, а script и селектор p:nth-last-child(1) ничему не соответствует.
Используйте p:nth-last-of-type(1).