Rick, because this is for a login page, I have seen a few different approaches in the past where the CSRF tokens are treated differently for them than for the rest of the site. (E.g., if it's written Java, you likely will [or, at least should, to prevent session fixation attacks] replace the pre-authenticated HttpSession with a new HttpSession so whereas you might normally place a CSRF token in a generated hidden form parameter and then compare it to the one stored in the HttpSession object, since the session object is going to be destroyed upon successful login, often times it might be sent in a different manner for login pages. For example, the POST could be done though AJAX and it might be passed via a custom request header that ZAP might not recognize.)
That said, Dharini, you need to provide a lot more detail if you want the ZAP team (or anyone else for that matter) to help. Ideally, if I were debugging this, I would want to see full HTTP request / response pairs as well as a brief overview of how you are providing the CSRF tokens (e.g., OWASP CSRFGuard, OWASP CSRF Protector, Spring, etc.). More details are better than none.
Note that if you show HTTP responses, unless your username/password is just a temporary throwaway account, you should redact that and any other sensitive data from your HTTP requests and responses.
Hope that helps.
-kevin