Panathinaikos kept their hopes of reaching the Euroleague's Top 16 alive with an impressive seven-point win over Barcelona.