NEW YORK (CBSNewYork/AP) — The national fight between the far left-wing and more moderate parts of the Democratic Party played out again Tuesday in Queens, where primary voters selected a new district attorney.

Tiffany Caban, a 31-year-old public defender who says the criminal justice system is rigged against the poor, is reportedly ahead by a razor-thin margin over Queens Borough President Melinda Katz in a race that was still too close to call hours later.

With nearly all precincts reporting, the New York City Board of Elections projected that Caban was leading with 39.57 percent of the vote Wednesday morning. Katz was at 38.3 percent.

Board Of Elections In The City Of New York 2019 Primary
(Unofficial Election Night Results as of 2019-06-26 00:37 ET)

  • 33,814 votes (39.57%) … Tiffany Caban
  • 32,724 votes (38.30%) … Melinda Katz
  • 12,377 (14.49%) … Gregory L. Lasak
  • 3,310 (3.87%) … Mina Quinto Malik
  • 1,168 (1.37%) … Rory I. Lancman
  • 1,075 (1.26%) … Jose L. Nieves
  • 921 (1.08%) … Betty Lugo
  • 58 (0.07%) … Write-In

Caban repeatedly declared victory during a late-night speech at her campaign headquarters, while Katz told her supporters she was already looking ahead to a re-count in the tight election.

“We won the Queens district attorney’s office!” Caban told supporters Tuesday night. “They said we could not win, but we did it, y’all.”

“There’s a lot of thank yous to be made and there’s a lot more days probably for a recount,” Katz said.

If the lead holds and Caban is officially named the winner, it would be the latest shocking upset in New York politics, coming just months after the sudden rise of controversial progressive Alexandria Ocasio-Cortez.

Tiffany Caban (Credit: CBS2)

Caban has been endorsed by two presidential contenders, Sens. Elizabeth Warren of Massachusetts and Bernie Sanders of Vermont, as well as Ocasio-Cortez, herself. She doesn’t have any prior political experience but has spent her career working as a public defender in Queens, where she was born and raised.

“As a public defender, I saw every single day in court that if you were black, if you were brown, if you were low-income, if you were an immigrant, if you were a member of the LGBTQIA+ community, the system wasn’t on your side,” she said.

“I don’t take anything for granted,” Caban added. “We are going to work very hard to make sure we win the election in November as well.”

Caban, who gained national attention for her progressive policies toward criminal justice reform, laid out some of her agenda.

“When we start getting cases out of the system that never belong there in the first place, when we stop criminalizing poverty, mental health issues, substance abuse disorder, then we can reallocate resources to combat the very serious crimes that should have had more resources to begin with,” she said.

Melinda Katz (Credit: CBS2)

Katz has the backing of state and county party leaders like New York Gov. Andrew Cuomo as well as a host of unions. Katz, a veteran politician, also served in the state Assembly from 1994-99 and on the New York City Council from 2002-09.

“With such an important office at stake, every voice throughout the borough needs to be heard and every vote needs to be counted,” Katz said in a statement Wednesday. “I want to thank every volunteer, voter, and organization who supported my campaign over the past several months. Thousands of people came together to fight hard to bring change to the Borough of Queens, and their dedication should be recognized. With thousands of ballots left to count, every voter deserves to be heard.”

Absentee ballots may still be coming in and have to be counted, which election officials won’t start doing until next week, CBS2’s Jenna DeAngelis reported. If successful, Caban or Katz would become the first woman to serve as Queens district attorney.

As CBS2’s Marcia Kramer reported, it’s clear that many factors contributed to Caban’s shocking showing. Low turnout was one.

“If you have elections where very few people turn out, then by definition the motivated minority wins,” Gov. Cuomo said.

Katz was also hurt by the fact that there were several candidates in the primary, and one, former Judge Greg Lasak, who ran third, got more than 12,000 votes, siphoning off Katz’s support.

There was also the fact that Katz flip-flopped on the issue of cash bail. From the start, Caban supported ending cash bail in all cases, a position she stressed on the CBSN New York special.

“Most folks agree with ending cash bail, expanding alternatives to incarceration. We talk about a real commitment to de-carcerating,” Caban said.

Before she changed her mind, Katz only wanted to end cash bail for misdemeanors and non-violent felonies. Caban pushed her to the left.

“I do support no cash bail,” Katz said, adding, “We need to make sure we are following the laws we have in the state of New York.”

The winner moves on to the November general election against the Republican challenger and the final race to succeed longtime District Attorney Richard Brown, who died last month at age 86.

MORE: Will Alexandria Ocasio-Cortez Play Kingmaker In Queens’ District Attorney Race?

Other candidates who are polling further down on the ballot include former District of Columbia Deputy Attorney General Mina Malik, former Nassau County Assistant District Attorney Betty Lugo, and former New York Deputy Attorney General Jose Nieves.

The candidates had largely all embraced criminal justice reforms like reducing marijuana prosecutions.

(© Copyright 2019 CBS Broadcasting Inc. All Rights Reserved. The Associated Press contributed to this report.)