I think it's Ran because every time Ran's in danger Shinichi always felt uneasy and he can't calm himself. Ran plays a great role in Shinichi's life especially in his heart. It's the moral support that matters. Well, as for Shiho, she can be a great help to Shinichi BUT it doesn't mean that She is needed. Shinichi can survive without Shiho I guess, more than surviving without Ran which I think he couldn't do.