Can you explain what an NP statement is when they refer to it in Zero knowledge proofs?
Intuitively, an NP problem is one
 that if you have a solution it is computationally easy to verify it, but it is not known if it is also computationally easy to find. Of course there exist formal definitions, based on deterministic and non deterministic Turing machines. Any standard complexity textbook will have these definitions.

Their connection with zero knowledge proofs comes from the 1987, Goldreich, Micali and Wigderson paper that proves that all NP problems have zero knowledge proofs (assuming secure bit commitment).
An excellent tutorial on how this is done can be found in Matthew Green's blog.
All this were written for classical zero knowledge systems, but they apply to zkSnarks as well.