I find the apparently unnecessary cast in the partial-index predicate to be suspicious --- maybe that's blocking matching to the WHERE clause?
pgsql-performance by date:
Соглашаюсь с условиями обработки персональных данных