Note 10 - Stockholders' Equity and Stock-based Compensation (Details Textual) $ / shares in Units, $ in Thousands | | | | | | | | | | | 1 Months Ended | 12 Months Ended | 24 Months Ended | | | |
Feb. 09, 2023 USD ($) | Oct. 27, 2022 shares | Jun. 08, 2022 shares | Oct. 28, 2021 shares | Jun. 09, 2021 shares | Apr. 27, 2021 shares | Mar. 19, 2021 shares | Dec. 10, 2020 shares | Nov. 02, 2019 shares | Dec. 21, 2018 shares | Feb. 28, 2021 shares | Feb. 29, 2020 shares | Dec. 31, 2022 USD ($) $ / shares shares | Dec. 31, 2021 USD ($) $ / shares shares | Dec. 31, 2020 USD ($) $ / shares shares | Dec. 31, 2022 USD ($) $ / shares shares | Dec. 31, 2018 shares | Feb. 12, 2018 USD ($) | Oct. 03, 2012 $ / shares shares |
Preferred Stock, Shares Authorized (in shares) | | | | | | | | | | | | | | 20,000,000 | 20,000,000 | | 20,000,000 | | | 20,000,000 |
Preferred Stock, Par or Stated Value Per Share (in dollars per share) | $ / shares | | | | | | | | | | | | | | $ 0.001 | $ 0.001 | | $ 0.001 | | | $ 0.001 |
Preferred Stock, Shares Issued (in shares) | | | | | | | | | | | | | | 0 | 0 | | 0 | | | |
Preferred Stock, Shares Outstanding, Ending Balance (in shares) | | | | | | | | | | | | | | 0 | 0 | | 0 | | | |
Share-Based Payment Arrangement, Expense, Tax Benefit | $ | | | | | | | | | | | | | | $ 8,300 | $ 6,200 | $ 5,300 | | | | |
Share-based Payment Arrangement, Accelerated Cost | $ | | | | | | | | | | | | | | | 27,300 | | | | | |
Share-Based Payment Arrangement, Expense | $ | | | | | | | | | | | | | | $ 53,408 | $ 67,579 | $ 40,035 | | | | |
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | $ / shares | | | | | | | | | | | | | | $ 50.32 | $ 41.23 | $ 35.49 | | | | |
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value | $ | | | | | | | | | | | | | | $ 39,800 | $ 42,500 | $ 77,500 | | | | |
Stock Repurchased and Retired During Period, Shares (in shares) | | | | | | | | | | | | | | 2,500,000 | 1,100,000 | 1,300,000 | | | | |
Stock Repurchased and Retired During Period, Value | $ | | | | | | | | | | | | | | $ 317,300 | $ 130,000 | $ 126,700 | | | | |
Stock Repurchase Program, Remaining Authorized Repurchase Amount | $ | | | | | | | | | | | | | | 154,500 | | | $ 154,500 | | | |
Stock Repurchase Program, Authorized Amount | $ | | | | | | | | | | | | | | 900,000 | | | 900,000 | | $ 100,000 | |
Subsequent Event [Member] | | | | | | | | | | | | | | | | | | | | |
Stock Repurchase Program, Additional Authorized Amount | $ | | $ 100,000 | | | | | | | | | | | | | | | | | | |
Stock Repurchase Program, Authorized Amount | $ | | $ 1,000,000 | | | | | | | | | | | | | | | | | | |
Share-Based Payment Arrangement, Option [Member] | | | | | | | | | | | | | | | | | | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total | $ | | | | | | | | | | | | | | $ 24,500 | | | 24,500 | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) | | | | | | | | | | | | | | 2 years 10 months 24 days | | | | | | |
Share-Based Payment Arrangement, Option [Member] | Performance Shares [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, Number of Shares Authorized (in shares) | | | | | | | | | 224,000 | 124,000 | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Accelerated Vesting, Number (in shares) | | | | | | | | 348,000 | | | | | | | | | | | | |
Share-Based Payment Arrangement, Expense | $ | | | | | | | | | | | | | | $ 0 | 13,300 | 200 | | | | |
Restricted Stock Units (RSUs) [Member] | | | | | | | | | | | | | | | | | | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total | $ | | | | | | | | | | | | | | $ 92,200 | | | 92,200 | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) | | | | | | | | | | | | | | 2 years 9 months 18 days | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares) | [1] | | | | | | | | | | | | | 330,000 | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) | [2] | | | | | | | | | | | | | 711,000 | | | | | | |
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value | $ | | | | | | | | | | | | | | $ 43,900 | 59,500 | 46,500 | | | | |
Restricted Stock Units (RSUs) [Member] | Time based Shared Based Compensation [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | | | | | | | | | 69,000 | 49,000 | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares) | | | | | | | | | | | 56,000 | | | | | | | | | |
Share based Compensation Arrangement by Share based Payment Award, Vesting Period, Number Of Quarterly Periods | | | | | | | | | 16 | 16 | 16 | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Accelerated Vesting, Number (in shares) | | | | | | | | 127,000 | | | | | | | | | | | | |
Restricted Stock Units (RSUs) [Member] | Performance Shares [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, Number of Shares Authorized (in shares) | | | | | | | | | | | 33 | | | | | | | 33,000 | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares) | | | | | | | | | | | | 22,000 | 15,000 | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage | | | | | | | | | | | 33.33% | | | | | | | | | |
Share-Based Compensation Arrangement By Share-based Payment Award, Equity Instruments Other Than Options, Target Number Of Shares (in shares) | | | | | | | | | | | 11,000 | | | | | | | | | |
Share-based Compensation Termination Period Trigger (Month) | | | | | | | | | 12 months | | | | | | | | | | | |
Share-Based Compensation, Percentage Of Shares That Will Vest Upon Trigger | | | | | 100% | | | | 100% | | | | | | | | | | | |
Share-Based Compensation Arrangement By Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period As A Percentage Of Target | | | | | | | | | | | | 200% | 135% | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Accelerated Vesting, Number (in shares) | | | | | | | | 44,000 | | | | | | | | | | | | |
Share-Based Payment Arrangement, Expense | $ | | | | | | | | | | | | | | 3,900 | $ 5,300 | $ 2,800 | | | | |
ESPP Shares [Member] | | | | | | | | | | | | | | | | | | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total | $ | | | | | | | | | | | | | | $ 300 | | | $ 300 | | | |
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) | | | | | | | | | | | | | | 1 month 6 days | | | | | | |
Performance-based Restricted Stock Units [Member] | President and Chief Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | | | | | 3 years | | | | | | | | | | | | | |
Share-based Compensation Termination Period Trigger (Month) | | | | | | | 12 months | | | | | | | | | | | | | |
Share-Based Compensation, Percentage Of Shares That Will Vest Upon Trigger | | | | | | | 100% | 100% | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) | | | | | | | 10,000 | | | | | | | | | | | | | |
Performance-based Restricted Stock Units [Member] | Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) | | | 3 years | | 3 years | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares) | | | | | | | | | | | | | | | 49,000 | | | | | |
Share-based Compensation Termination Period Trigger (Month) | | | | | 12 months | | | | | | | | | | | | | | | |
Share-Based Compensation, Percentage Of Shares That Will Vest Upon Trigger | | | | | 100% | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) | | | 86,000 | | 73,000 | | | | | | | | | 58,000 | 68,000 | | 175,000 | | | |
Maximum [Member] | Share-Based Payment Arrangement, Option [Member] | Performance Shares [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | | | 200% | 200% | | | | | | | | | | |
Maximum [Member] | Restricted Stock Units (RSUs) [Member] | President and Chief Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | | | | | 200% | | | | | | | | | |
Maximum [Member] | Restricted Stock Units (RSUs) [Member] | Performance Shares, Tranche Three [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | 200% | | | | | | 200% | | | | | | | | | |
Maximum [Member] | Performance-based Restricted Stock Units [Member] | President and Chief Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | 200% | | | | | | | | | | | | | |
Maximum [Member] | Performance-based Restricted Stock Units [Member] | Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | 200% | | | | | | | | | | | | 200% | | | | | |
Minimum [Member] | Share-Based Payment Arrangement, Option [Member] | Performance Shares [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | | | 0% | 0% | | | | | | | | | | |
Minimum [Member] | Restricted Stock Units (RSUs) [Member] | President and Chief Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | | | | | 0% | | | | | | | | | |
Minimum [Member] | Restricted Stock Units (RSUs) [Member] | Performance Shares, Tranche Three [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | 0% | | | | | | 0% | | | | | | | | | |
Minimum [Member] | Performance-based Restricted Stock Units [Member] | President and Chief Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | | | | | 0% | | | | | | | | | | | | | |
Minimum [Member] | Performance-based Restricted Stock Units [Member] | Executive Officer [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Target Percentage | | | 0% | | | | | | | | | | | | | | | | | |
The 2000 Equity Incentive Plan [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Award Strike Price as a Percentage of Market Value | | | | | | | | | | | | | | 85% | | | 85% | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares) | | | | | | | | | | | | | | 0 | | | 0 | | | |
The 2000 Equity Incentive Plan [Member] | Maximum [Member] | Share-Based Payment Arrangement, Option [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, Expiration Period (Year) | | | | | | | | | | | | | | 10 years | | | | | | |
The 2012 Equity Incentive Plan [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, Number of Shares Available for Grant (in shares) | | | | 9,689,000 | | | | | | | | | | 2,351,000 | | | 2,351,000 | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized, Annual Increase, Shares (in shares) | | | | | | | | | | | | | | | | 3,050,000 | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized, Annual Increase, Percent of Shares Outstanding | | | | | | | | | | | | | | 5% | | | 5% | | | |
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized (in shares) | | | | 3,072,000 | | | | | | | | | | 1,956,000 | | | | | | |
The 2021 Employee Stock Purchase Plan [Member] | | | | | | | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares) | | | | | | | | | | | | | | 555,000 | | | 555,000 | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) | | | | | | 600,000 | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Offering Period (Month) | | | | | | 6 months | | | | | | | | | | | | | | |
Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent | | | | | | 85% | | | | | | | | | | | | | | |
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | $ / shares | | | | | | | | | | | | | | $ 39.14 | | | | | | |
The 2021 Employee Stock Purchase Plan [Member] | Maximum [Member] | | | | | | | | | | | | | | | | | | | | |
Employee Stock Purchase Plan, Percentage of Eligible Compensation Contributable | | | | | | 15% | | | | | | | | | | | | | | |
The 2021 Employee Stock Purchase Plan [Member] | Minimum [Member] | | | | | | | | | | | | | | | | | | | | |
Employee Stock Purchase Plan, Percentage of Eligible Compensation Contributable | | | | | | 1% | | | | | | | | | | | | | | |
| |
[1]Included 58 thousand shares of PSUs granted to certain executive officers in 2022 and 49 thousand shares of PSU granted in 2021 as a result of defining the level of performance goals for performance year 2023.[2]Included 68 thousand shares of PSUs granted to certain executive officers in 2021 for performance year 2022 at 200% vest level. | |