CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($) shares in Thousands, $ in Thousands | Total | Common Stock | Additional Paid-in Capital | Treasury Stock | Accumulated Other Comprehensive Income (Loss) | Retained Earnings |
Beginning balance (in shares) at Dec. 31, 2020 | | 116,735 | | | | |
Beginning balance at Dec. 31, 2020 | $ 523,338 | $ 122 | $ 516,140 | $ (75,795) | $ 415 | $ 82,456 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 1,832 | | | | |
Issuance of common stock upon exercise of options | 10,083 | $ 2 | 10,081 | | | |
Purchases of treasury stock (in shares) | | (1,282) | | | | |
Purchases of treasury stock | (33,540) | | | (33,540) | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (808) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (22,520) | | | (22,520) | | |
Stock-based compensation | 10,142 | | 10,142 | | | |
Other comprehensive income (loss), net of tax | (166) | | | | (166) | |
Net income | 23,465 | | | | | 23,465 |
Ending balance (in shares) at Mar. 31, 2021 | | 116,477 | | | | |
Ending balance at Mar. 31, 2021 | 510,802 | $ 124 | 536,363 | (131,855) | 249 | 105,921 |
Beginning balance (in shares) at Dec. 31, 2020 | | 116,735 | | | | |
Beginning balance at Dec. 31, 2020 | 523,338 | $ 122 | 516,140 | (75,795) | 415 | 82,456 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Net income | 80,459 | | | | | |
Ending balance (in shares) at Sep. 30, 2021 | | 115,303 | | | | |
Ending balance at Sep. 30, 2021 | 540,229 | $ 126 | 571,377 | (194,304) | 115 | 162,915 |
Beginning balance (in shares) at Mar. 31, 2021 | | 116,477 | | | | |
Beginning balance at Mar. 31, 2021 | 510,802 | $ 124 | 536,363 | (131,855) | 249 | 105,921 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 855 | | | | |
Issuance of common stock upon exercise of options | 6,661 | $ 1 | 6,660 | | | |
Purchases of treasury stock (in shares) | | (1,365) | | | | |
Purchases of treasury stock | (29,170) | | | (29,170) | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (146) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (3,238) | | | (3,238) | | |
Stock-based compensation | 11,131 | | 11,131 | | | |
Other comprehensive income (loss), net of tax | (34) | | | | (34) | |
Net income | 26,523 | | | | | 26,523 |
Ending balance (in shares) at Jun. 30, 2021 | | 115,821 | | | | |
Ending balance at Jun. 30, 2021 | 522,675 | $ 125 | 554,154 | (164,263) | 215 | 132,444 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 904 | | | | |
Issuance of common stock upon exercise of options | 6,225 | $ 1 | 6,224 | | | |
Purchases of treasury stock (in shares) | | (1,220) | | | | |
Purchases of treasury stock | (25,775) | | | (25,775) | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (202) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (4,266) | | | (4,266) | | |
Stock-based compensation | 10,999 | | 10,999 | | | |
Other comprehensive income (loss), net of tax | (100) | | | | (100) | |
Net income | 30,471 | | | | | 30,471 |
Ending balance (in shares) at Sep. 30, 2021 | | 115,303 | | | | |
Ending balance at Sep. 30, 2021 | 540,229 | $ 126 | 571,377 | (194,304) | 115 | 162,915 |
Beginning balance (in shares) at Dec. 31, 2021 | | 105,940 | | | | |
Beginning balance at Dec. 31, 2021 | 375,806 | $ 127 | 591,349 | (410,411) | (227) | 194,968 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 586 | | | | |
Issuance of common stock upon exercise of options | 6,544 | $ 1 | 6,543 | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (305) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (7,037) | | | (7,037) | | |
Stock-based compensation | 10,825 | | 10,825 | | | |
Other comprehensive income (loss), net of tax | (1,124) | | | | (1,124) | |
Net income | 22,797 | | | | | 22,797 |
Ending balance (in shares) at Mar. 31, 2022 | | 106,221 | | | | |
Ending balance at Mar. 31, 2022 | 407,811 | $ 128 | 608,717 | (417,448) | (1,351) | 217,765 |
Beginning balance (in shares) at Dec. 31, 2021 | | 105,940 | | | | |
Beginning balance at Dec. 31, 2021 | 375,806 | $ 127 | 591,349 | (410,411) | (227) | 194,968 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Net income | 84,817 | | | | | |
Ending balance (in shares) at Sep. 30, 2022 | | 107,611 | | | | |
Ending balance at Sep. 30, 2022 | 473,364 | $ 130 | 648,831 | (453,001) | (2,381) | 279,785 |
Beginning balance (in shares) at Mar. 31, 2022 | | 106,221 | | | | |
Beginning balance at Mar. 31, 2022 | 407,811 | $ 128 | 608,717 | (417,448) | (1,351) | 217,765 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 873 | | | | |
Issuance of common stock upon exercise of options | 6,597 | | 6,597 | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (436) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (9,366) | | | (9,366) | | |
Stock-based compensation | 10,662 | | 10,662 | | | |
Other comprehensive income (loss), net of tax | (790) | | | | (790) | |
Net income | 27,412 | | | | | 27,412 |
Ending balance (in shares) at Jun. 30, 2022 | | 106,658 | | | | |
Ending balance at Jun. 30, 2022 | 442,326 | $ 128 | 625,976 | (426,814) | (2,141) | 245,177 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | | | |
Issuance of common stock upon exercise of options (in shares) | | 1,934 | | | | |
Issuance of common stock upon exercise of options | 12,226 | $ 2 | 12,224 | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises (in shares) | | (981) | | | | |
Shares purchased to satisfy cost and statutory withholding requirements for net settlement of cashless option exercises | (26,187) | | | (26,187) | | |
Stock-based compensation | 10,631 | | 10,631 | | | |
Other comprehensive income (loss), net of tax | (240) | | | | (240) | |
Net income | 34,608 | | | | | 34,608 |
Ending balance (in shares) at Sep. 30, 2022 | | 107,611 | | | | |
Ending balance at Sep. 30, 2022 | $ 473,364 | $ 130 | $ 648,831 | $ (453,001) | $ (2,381) | $ 279,785 |