We’ve had a persistent leak where water would stream through the ceiling on the passenger side. It would exit the ceiling upholstery just perfectly to douse the legs and lap of the person in the front passenger seat.
The long roof gasket on the passenger side had not been returned to the vehicle during a prior windshield replacement (how careless is that?). Fitting a new gasket made no difference to the issue – disappointing, after about a combined $75 in parts and shipping for the unusually shaped package.
After scanning these forums, I decided to check the drain holes for the sun roof. I used tweazers to tease out debris on the passenger side. The driver side was not visibly occluded, but no water would pass. On this side, I removed the plastic tube from inside a disused shampoo bottle, filled the tube with water, and blasted it into the drain point by putting my lips on the other end. Instant success! – as seen by the soapy water draining from just behind the front driver side wheel well….. ditto for the passenger side.
Waiting now for some heavy rain to see if I have in fact stopped the leak. By the way, if you decide to push water down the drain point as I did, you’ll need to put a finger over the other side of the drain hole (it’s a double-header) so as to develop the fluid pressure in the drain hose.