Note 12 - Stock Options and Employee Stock Purchase Plan (Details) - Summary of Stock Options (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2011
Dec. 31, 2013
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exericse price range, lower limit (in Dollars per share)   $ 10.86  
Exercise price (in Dollars per share) $ 5.89   $ 5.48
Exercise price range, upper limit (in Dollars per share)   $ 36.66  
Options outstanding 2,847,097   1,957,069
Weighted average contractual life 8 years 237 days    
Options exercisable 897,294    
Exercise Price Range 1 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exercise price (in Dollars per share) $ 4.20    
Options outstanding 553,434    
Weighted average contractual life 6 years 233 days    
Options exercisable 521,718    
Exercise Price Range 2 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exercise price (in Dollars per share) $ 5.82    
Options outstanding 1,219,689    
Weighted average contractual life 8 years 310 days    
Options exercisable 333,785    
Exercise Price Range 3 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exericse price range, lower limit (in Dollars per share) $ 5.98    
Exercise price range, upper limit (in Dollars per share) $ 6.62    
Options outstanding 869,525    
Weighted average contractual life 9 years 6 months    
Exercise Price Range 4 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exericse price range, lower limit (in Dollars per share) $ 7.32    
Exercise price range, upper limit (in Dollars per share) $ 11.09    
Options outstanding 203,172    
Weighted average contractual life 9 years 36 days    
Options exercisable 40,514    
Exercise Price Range 5 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exericse price range, lower limit (in Dollars per share) $ 35.30    
Exercise price range, upper limit (in Dollars per share) $ 36.66    
Options outstanding 1,271    
Weighted average contractual life 6 years 255 days    
Options exercisable 1,271    
Exercise Price Range 6 [Member]      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Exericse price range, lower limit (in Dollars per share) $ 135.78    
Exercise price range, upper limit (in Dollars per share) $ 4,615.92    
Options outstanding 6    
Weighted average contractual life 302 days    
Options exercisable 6