CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($) shares in Thousands, $ in Thousands | Total | Class A | Class B Convertible | Additional Paid-in Capital | Treasury Stock | Accumulated Other Comprehensive Income (Loss) | Retained Earnings |
Beginning Balance at Dec. 31, 2018 | $ 529,731 | $ 16 | $ 2 | $ 576,957 | $ (586,161) | $ (10,217) | $ 549,134 |
Beginning Balance (in shares) at Dec. 31, 2018 | | 15,837 | 2,035 | | (7,285) | | |
Net income (loss) | (7,906) | $ 0 | $ 0 | 0 | $ 0 | 0 | (7,906) |
Other comprehensive income (loss) | 253 | 0 | 0 | 0 | 0 | 253 | 0 |
Issuance of class A common stock under stock option plans | 1,507 | $ 0 | $ 0 | 1,507 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 13 | 0 | | 0 | | |
Purchases of treasury stock | (48,244) | $ 0 | $ 0 | 0 | $ (48,244) | 0 | 0 |
Purchases of treasury stock (in shares) | | 0 | 0 | | (363) | | |
Share-based compensation expense | 2,965 | $ 0 | $ 0 | 2,965 | $ 0 | 0 | 0 |
Ending Balance at Mar. 31, 2019 | 478,306 | $ 16 | $ 2 | 581,429 | $ (634,405) | (9,964) | 541,228 |
Ending Balance (in shares) at Mar. 31, 2019 | | 15,850 | 2,035 | | (7,648) | | |
Beginning Balance at Dec. 31, 2018 | 529,731 | $ 16 | $ 2 | 576,957 | $ (586,161) | (10,217) | 549,134 |
Beginning Balance (in shares) at Dec. 31, 2018 | | 15,837 | 2,035 | | (7,285) | | |
Net income (loss) | 22,188 | | | | | | |
Other comprehensive income (loss) | (1,457) | | | | | | |
Ending Balance at Sep. 30, 2019 | 515,419 | $ 16 | $ 2 | 590,158 | $ (634,405) | (11,674) | 571,322 |
Ending Balance (in shares) at Sep. 30, 2019 | | 15,880 | 2,035 | | (7,648) | | |
Beginning Balance at Mar. 31, 2019 | 478,306 | $ 16 | $ 2 | 581,429 | $ (634,405) | (9,964) | 541,228 |
Beginning Balance (in shares) at Mar. 31, 2019 | | 15,850 | 2,035 | | (7,648) | | |
Net income (loss) | 20,394 | $ 0 | $ 0 | 0 | $ 0 | 0 | 20,394 |
Other comprehensive income (loss) | 654 | 0 | 0 | 0 | 0 | 654 | 0 |
Issuance of class A common stock under stock option plans | 329 | $ 0 | $ 0 | 329 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 3 | 0 | | 0 | | |
Share-based compensation expense | 3,006 | $ 0 | $ 0 | 3,006 | $ 0 | 0 | 0 |
Ending Balance at Jun. 30, 2019 | 502,689 | $ 16 | $ 2 | 584,764 | $ (634,405) | (9,310) | 561,622 |
Ending Balance (in shares) at Jun. 30, 2019 | | 15,853 | 2,035 | | (7,648) | | |
Net income (loss) | 9,700 | $ 0 | $ 0 | 0 | $ 0 | 0 | 9,700 |
Other comprehensive income (loss) | (2,364) | 0 | 0 | 0 | 0 | (2,364) | 0 |
Issuance of class A common stock under stock option plans | 3,606 | $ 0 | $ 0 | 3,606 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 27 | 0 | | 0 | | |
Share-based compensation expense | 1,788 | $ 0 | $ 0 | 1,788 | $ 0 | 0 | 0 |
Ending Balance at Sep. 30, 2019 | 515,419 | $ 16 | $ 2 | 590,158 | $ (634,405) | (11,674) | 571,322 |
Ending Balance (in shares) at Sep. 30, 2019 | | 15,880 | 2,035 | | (7,648) | | |
Net income (loss) | 12,167 | $ 0 | $ 0 | 0 | $ 0 | 0 | 12,167 |
Other comprehensive income (loss) | 2,023 | 0 | 0 | 0 | 0 | 2,023 | 0 |
Issuance of class A common stock under stock option plans | 1,127 | $ 0 | $ 0 | 1,127 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 8 | 0 | | 0 | | |
Purchases of treasury stock | (24,475) | $ 0 | $ 0 | 0 | $ (24,475) | 0 | 0 |
Purchases of treasury stock (in shares) | | 0 | 0 | | (159) | | |
Share-based compensation expense | 2,298 | $ 0 | $ 0 | 2,298 | $ 0 | 0 | 0 |
Ending Balance at Dec. 31, 2019 | 508,559 | $ 16 | $ 2 | 593,583 | $ (658,880) | (9,651) | 583,489 |
Ending Balance (in shares) at Dec. 31, 2019 | | 15,888 | 2,035 | | (7,807) | | |
Net income (loss) | 657 | $ 0 | $ 0 | 0 | $ 0 | 0 | 657 |
Other comprehensive income (loss) | (547) | 0 | 0 | 0 | 0 | (547) | 0 |
Issuance of class A common stock under stock option plans | 340 | $ 0 | $ 0 | 340 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 3 | 0 | | 0 | | |
Purchases of treasury stock | (50,747) | $ 0 | $ 0 | 0 | $ (50,747) | 0 | 0 |
Purchases of treasury stock (in shares) | | 0 | 0 | | (355) | | |
Share-based compensation expense | 3,164 | $ 0 | $ 0 | 3,164 | $ 0 | 0 | 0 |
Ending Balance at Mar. 31, 2020 | 461,426 | $ 16 | $ 2 | 597,087 | $ (709,627) | (10,198) | 584,146 |
Ending Balance (in shares) at Mar. 31, 2020 | | 15,891 | 2,035 | | (8,162) | | |
Beginning Balance at Dec. 31, 2019 | 508,559 | $ 16 | $ 2 | 593,583 | $ (658,880) | (9,651) | 583,489 |
Beginning Balance (in shares) at Dec. 31, 2019 | | 15,888 | 2,035 | | (7,807) | | |
Net income (loss) | (10,185) | | | | | | |
Other comprehensive income (loss) | 2,751 | | | | | | |
Ending Balance at Sep. 30, 2020 | 389,292 | $ 16 | $ 2 | 604,974 | $ (782,104) | (6,900) | 573,304 |
Ending Balance (in shares) at Sep. 30, 2020 | | 15,937 | 2,014 | | (8,684) | | |
Beginning Balance at Mar. 31, 2020 | 461,426 | $ 16 | $ 2 | 597,087 | $ (709,627) | (10,198) | 584,146 |
Beginning Balance (in shares) at Mar. 31, 2020 | | 15,891 | 2,035 | | (8,162) | | |
Net income (loss) | 3,387 | $ 0 | $ 0 | 0 | $ 0 | 0 | 3,387 |
Other comprehensive income (loss) | 1,011 | 0 | 0 | 0 | 0 | 1,011 | 0 |
Issuance of class A common stock under stock option plans | 1,562 | $ 0 | $ 0 | 1,562 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 12 | 0 | | 0 | | |
Purchases of treasury stock | (11,128) | $ 0 | $ 0 | 0 | $ (11,128) | 0 | 0 |
Purchases of treasury stock (in shares) | | 0 | 0 | | (90) | | |
Share-based compensation expense | 2,202 | $ 0 | $ 0 | 2,202 | $ 0 | 0 | 0 |
Ending Balance at Jun. 30, 2020 | 458,460 | $ 16 | $ 2 | 600,851 | $ (720,755) | (9,187) | 587,533 |
Ending Balance (in shares) at Jun. 30, 2020 | | 15,903 | 2,035 | | (8,252) | | |
Net income (loss) | (14,229) | $ 0 | $ 0 | 0 | $ 0 | 0 | (14,229) |
Other comprehensive income (loss) | 2,287 | 0 | 0 | 0 | 0 | 2,287 | 0 |
Conversion of class B to class A common stock | 0 | $ 0 | $ 0 | 0 | $ 0 | 0 | 0 |
Conversion of class B to class A common stock (in shares) | | 21 | (21) | | 0 | | |
Issuance of class A common stock under stock option plans | 1,714 | $ 0 | $ 0 | 1,714 | $ 0 | 0 | 0 |
Issuance of class A common stock under stock option plans (in shares) | | 13 | 0 | | 0 | | |
Purchases of treasury stock | (61,349) | $ 0 | $ 0 | 0 | $ (61,349) | 0 | 0 |
Purchases of treasury stock (in shares) | | 0 | 0 | | (432) | | |
Share-based compensation expense | 2,409 | $ 0 | $ 0 | 2,409 | $ 0 | 0 | 0 |
Ending Balance at Sep. 30, 2020 | $ 389,292 | $ 16 | $ 2 | $ 604,974 | $ (782,104) | $ (6,900) | $ 573,304 |
Ending Balance (in shares) at Sep. 30, 2020 | | 15,937 | 2,014 | | (8,684) | | |