non e' la soluzione migliore ma potresti anche fare cosi'
codice:
 $('.OS').click(function(e){
           if(!$(e.target).parents('.details').length){
                        if($(".details").is(":visible"))
                        {
                            $(".details").not(":hidden").hide("slow");
                            return true;
                        }
                        else
                        {
                            $(".OS").not(this).each(function(i) {
                                $(".details").hide("slow");
                            });
                            $(".details").show("slow");
                            return false;
                        }
          }
});
non ho provato ma dovrebbe funzionare: applica l' effetto solo se l' elemento da cui parte l' evento non e' discendente di "details"

ciao