Note 10 - Equity Incentive Plans and Equity (Details Textual) - USD ($) $ / shares in Units, Pure in Thousands, $ in Millions | 1 Months Ended | 3 Months Ended | 12 Months Ended | | | |
Sep. 30, 2020 | Sep. 30, 2016 | Mar. 31, 2020 | Dec. 31, 2020 | Dec. 31, 2019 | Dec. 31, 2018 | Dec. 31, 2016 | Nov. 30, 2014 | Dec. 31, 2012 | Dec. 31, 2010 |
Share-based Payment Arrangement, Expense | | | | $ 10.9 | $ 7.8 | $ 6.8 | | | | |
Share-based Payment Arrangement, Expensed and Capitalized, Amount, Total | | | | $ 0.2 | $ 0.2 | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | | | | $ 68.93 | $ 24.24 | $ 14.27 | | | | |
Executive Vice President [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 3 years | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | | | 15,000 | | | | | | | |
Service Period Stock Options [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number (in shares) | | | | 874,153 | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | | | | 382,910 | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value | | | | $ 48.8 | $ 18.4 | $ 7.3 | | | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | $ 24.7 | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | | | | $ 64.75 | | | | | | |
Service Period Stock Options [Member] | Share-based Payment Arrangement, Tranche One [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | $ 5.9 | | | | | | |
Service Period Stock Options [Member] | Share-based Payment Arrangement, Tranche Two [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | 5.7 | | | | | | |
Service Period Stock Options [Member] | Share-based Payment Arrangement, Tranche Three [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | 4.9 | | | | | | |
Service Period Stock Options [Member] | Share-based Payment Arrangement, Tranche Four [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | $ 8.2 | | | | | | |
Service Period Stock Options [Member] | Chief Executive Officer [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 4 years | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | | | | | | | 500,000 | | | |
Share-based Payment Arrangement, Option [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate | | | | 0.00% | 0.00% | 0.00% | | | | |
Restricted Stock Units (RSUs) [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 4 | | | | | | |
Restricted Stock Units (RSUs) [Member] | Share-based Payment Arrangement, Tranche One [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 2.6 | | | | | | |
Restricted Stock Units (RSUs) [Member] | Share-based Payment Arrangement, Tranche Two [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 1.2 | | | | | | |
Restricted Stock Units (RSUs) [Member] | Share-based Payment Arrangement, Tranche Three [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 0.2 | | | | | | |
Performance Stock Options [Member] | Chief Executive Officer [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | | | | | | | 500,000 | | | |
Performance Stock Options With Probable Vesting Criteria [Member] | | | | | | | | | | |
Unrecognized Compensation Costs, Performance Based Awards (in shares) | | | | 861,047 | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 44.2 | | | | | | |
Performance Stock Options With Probable Vesting Criteria [Member] | Share-based Payment Arrangement, Tranche One [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 12.5 | | | | | | |
Performance Stock Options With Probable Vesting Criteria [Member] | Share-based Payment Arrangement, Tranche Two [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 11.8 | | | | | | |
Performance Stock Options With Probable Vesting Criteria [Member] | Share-based Payment Arrangement, Tranche Three [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 10.3 | | | | | | |
Performance Stock Options With Probable Vesting Criteria [Member] | Share-based Payment Arrangement, Tranche Four [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 9.6 | | | | | | |
Performance Stock Options Deemed Not Probable To Vest [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Exercises in Period (in shares) | | | | 248,999 | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value | | | | $ 18.2 | | | | | | |
Performance Based Restricted Stock Units [Member] | | | | | | | | | | |
Unrecognized Compensation Costs, Performance Based Awards (in shares) | | | | 22,894 | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 2.4 | | | | | | |
Performance Based Restricted Stock Units [Member] | Share-based Payment Arrangement, Tranche One [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 0.8 | | | | | | |
Performance Based Restricted Stock Units [Member] | Share-based Payment Arrangement, Tranche Two [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | 0.8 | | | | | | |
Performance Based Restricted Stock Units [Member] | Share-based Payment Arrangement, Tranche Three [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | $ 0.8 | | | | | | |
The 2010 Stock Plan [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares) | | | | | | | | | 2,220,280 | 2,146,320 |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number (in shares) | | | | 26,130 | | | | | | |
The 2010 Stock Plan [Member] | Share-based Payment Arrangement, Option [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year) | | | | 10 years | | | | | | |
Stock Plan 2010 [Member] | Service Period Stock Options [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 4 years | | | | | | |
Omnibus Incentive Plan 2014 [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares) | | 3,979,200 | | 2,610,490 | | | | 1,479,200 | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized (in shares) | 700,000 | 2,500,000 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | 4,679,200 | | | | | | | | | |
Common Stock, Capital Shares Reserved for Future Issuance (in shares) | | | | 908,433 | | | | | | |
Omnibus Incentive Plan 2014 [Member] | Service Period Stock Options [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 3 years | | | | | | |
Omnibus Incentive Plan 2014 [Member] | Service Period Stock Options [Member] | Share-based Payment Arrangement, Employee [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 3 years | | | | | | |
Omnibus Incentive Plan 2014 [Member] | Restricted Stock Units (RSUs) [Member] | Share-based Payment Arrangement, Employee [Member] | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | 1 year | | | | | | |
Cost of Sales [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Expense | | | | $ 2.1 | $ 0.9 | $ 0.9 | | | | |
Selling, General and Administrative Expenses [Member] | | | | | | | | | | |
Share-based Payment Arrangement, Expense | | | | $ 8.8 | $ 6.9 | $ 5.9 | | | | |