Leaders Cardiff lost at home to Brighton to allow the chasing pack to close the gap, while Barnsley pushed Wolves into the drop zone.