Rising for the second straight session, the rupee surged 21 paise to close at 87.87 (provisional) against the US dollar on Thursday, buoyed by a softer American currency against major currencies and renewed risk-on sentiment among investors.