This will work
<%= link_to '+', {:controller => 'shop', :action => 'add', :id => product, :remote => true}, :style=>'color: red;' %>
But is there any reason that you're not using the paths generated by the routes?
You can run rake routes
in your terminal to see paths available to you. Or if you know the controller you're looking for, something like rake routes | grep shop
will narrow down results for you.
Then you could do something like:
<%= link_to '+', add_shop_path(product), :style=>'color: red;' %>