Note 7 - Shareholders' Equity (Details Textual) - USD ($) $ / shares in Units, $ in Thousands | Nov. 23, 2020 | Jul. 25, 2018 | Dec. 30, 2010 | Oct. 31, 2020 | Apr. 30, 2019 | Jan. 31, 2018 | Jun. 30, 2014 | Dec. 31, 2020 | Dec. 31, 2019 | Dec. 31, 2018 | Jun. 30, 2004 |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares) | | | | | | | | 1,217,163 | 1,541,792 | 1,576,087 | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | | | | | | | | 256,000 | 282,500 | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | | | | | | | | $ 6.51 | $ 8.27 | | |
Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount | | | | | | | | $ 566 | | | |
Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) | | | | | | | | 1 year 1 month 6 days | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | | | | | | | | $ 2.78 | $ 3.77 | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value | | | | | | | | $ 427 | $ 931 | | |
Proceeds from Stock Options Exercised | | | | | | | | $ 238 | $ 930 | | |
Common Stock, Capital Shares Reserved for Future Issuance (in shares) | | | | | | | | 249,604 | | | |
Restricted Stock [Member] | | | | | | | | | | | |
Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) | | | | | | | | 1 year 10 months 24 days | | | |
Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount | | | | | | | | $ 70 | | | |
The 2004 Long-term Incentive Plan [Member] | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | | | | | | | | 2,900,000 | | | 750,000 |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares) | | | | | | | | 73,995 | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | 37,171 | | | | | | | | | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | $ 7.33 | | | | | | | | | | |
The 2004 Long-term Incentive Plan [Member] | President [Member] | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year) | | | 5 years | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares) | 26,929 | | | | | | | | | | |
Option Accelerated Vesting, Stock Price Trigger (in dollars per share) | | $ 10 | | | | | | | | | |
Option Accelerated Vesting, Threshold Trading Days (Day) | | 15 days | | | | | | | | | |
The 2004 Long-term Incentive Plan [Member] | Options I [Member] | President [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) | | | 50,000 | | | | | | | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | | | $ 6.42 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Incremental Vesting Shares (in shares) | | | 12,500 | | | | | | | | |
The 2004 Long-term Incentive Plan [Member] | Options II [Member] | President [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) | | | 250,000 | | | | | | | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | | | $ 6.42 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Incremental Vesting Shares (in shares) | | | 62,500 | | | | | | | | |
The 2004 Long-term Incentive Plan [Member] | Options III [Member] | President [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) | | | 200,000 | | | | | | | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | | | $ 10 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Incremental Vesting Shares (in shares) | | | 50,000 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Minimum Closing Share Price (in dollars per share) | | | $ 10 | | | | | | | | |
The 2004 Long-term Incentive Plan [Member] | Options IV [Member] | President [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) | | | 200,000 | | | | | | | | |
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share) | | | $ 15 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Incremental Vesting Shares (in shares) | | | 50,000 | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Minimum Closing Share Price (in dollars per share) | | | $ 15 | | | | | | | | |
The 2014 Long-term Incentive Plan [Member] | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | | | | | | | 1,750,000 | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number, Ending Balance (in shares) | | | | | | | | 1,143,168 | | | |
The 2014 Long-term Incentive Plan [Member] | Awards Other than Stock Options and SARs [Member] | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | | | | | | | 800,000 | | | | |
The 2014 Long-term Incentive Plan [Member] | Restricted Stock [Member] | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | | | 3 years | | | | | |
Stock Issued During Period, Shares, Restricted Stock Award, Gross (in shares) | | | | 5,000 | 20,000 | 17,500 | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | | | | $ 6.08 | $ 11.12 | $ 7.16 | | | | | |
Incentive Stock Options [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, Expiration Period (Year) | | | | | | | 7 years | | | | |