Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($) shares in Thousands, $ in Thousands | Common Stock Including Additional Paid in Capital [Member] | Treasury Stock, Common [Member] | Key Executive Deferred Compensation [Member] | AOCI Attributable to Parent [Member] | Retained Earnings [Member] | Total |
Balance at December 31, 2022 | $ 139,500 | $ (5,927) | $ 5,927 | $ 45 | $ 8,224 | $ 147,769 |
Balance (in shares) | 27,484 | (822) | | | | |
Balance (in shares) at Jun. 30, 2022 | 27,484 | (822) | | | | |
Balance at Jun. 30, 2022 | $ 139,500 | $ (5,927) | 5,927 | 45 | 8,224 | 147,769 |
Net Income | 0 | 0 | 0 | 0 | 6,261 | 6,261 |
Other comprehensive gain (loss) | $ 0 | $ 0 | 0 | 7 | 0 | 7 |
Board stock compensation (in shares) | 12 | 0 | | | | |
Board stock compensation | $ 75 | $ 0 | 0 | 0 | 0 | 75 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 201 | 0 | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ (66) | $ 0 | 0 | 0 | 0 | (66) |
Shares issued for deferred compensation (in shares) | 80 | 0 | | | | |
Shares issued for deferred compensation | $ 539 | $ 0 | 0 | 0 | 0 | 539 |
Activity of treasury shares, net (in shares) | 0 | (77) | | | | |
Activity of treasury shares, net | $ 0 | $ (512) | 0 | 0 | 0 | (512) |
Deferred stock compensation | 0 | 0 | 512 | 0 | 0 | 512 |
Stock-based compensation expense | $ 551 | $ 0 | 0 | 0 | 0 | |
Stock options exercised, net (in shares) | 0 | 0 | | | | |
Stock options exercised, net | $ 0 | $ 0 | 0 | 0 | 0 | 0 |
Dividends | $ 0 | $ 0 | 0 | 0 | (1,408) | (1,408) |
Balance (in shares) at Sep. 30, 2022 | 27,777 | (899) | | | | |
Balance at Sep. 30, 2022 | $ 140,599 | $ (6,439) | 6,439 | 52 | 13,077 | 153,728 |
Balance (in shares) at Jun. 30, 2022 | 27,484 | (822) | | | | |
Balance at Jun. 30, 2022 | $ 139,500 | $ (5,927) | 5,927 | 45 | 8,224 | 147,769 |
Net Income | | | | | | 17,347 |
Balance (in shares) at Mar. 31, 2023 | 28,349 | (891) | | | | |
Balance at Mar. 31, 2023 | $ 146,000 | $ (6,736) | 6,736 | 237 | 21,506 | 167,743 |
Balance at December 31, 2022 | $ 140,599 | $ (6,439) | 6,439 | 52 | 13,077 | 153,728 |
Balance (in shares) | 27,777 | (899) | | | | |
Balance (in shares) at Sep. 30, 2022 | 27,777 | (899) | | | | |
Balance at Sep. 30, 2022 | $ 140,599 | $ (6,439) | 6,439 | 52 | 13,077 | 153,728 |
Net Income | | | | | 6,417 | 6,417 |
Other comprehensive gain (loss) | | | | 68 | | 68 |
Board stock compensation (in shares) | 23 | | | | | |
Board stock compensation | $ 98 | | | | | 98 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 71 | | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ (399) | | | | | (399) |
Shares issued for deferred compensation (in shares) | 57 | | | | | |
Shares issued for deferred compensation | $ 548 | | | | | 548 |
Activity of treasury shares, net (in shares) | | (58) | | | | |
Activity of treasury shares, net | | $ (549) | | | | (549) |
Deferred stock compensation | | | 549 | | | 549 |
Stock-based compensation expense | $ 864 | | | | | 864 |
Stock options exercised, net (in shares) | 192 | | | | | |
Stock options exercised, net | $ 1,278 | | | | | 1,278 |
Dividends | | | | | (1,286) | (1,286) |
Balance (in shares) at Dec. 31, 2022 | 28,120 | (957) | | | | |
Balance at Dec. 31, 2022 | $ 142,988 | $ (6,988) | 6,988 | 120 | 18,208 | 161,316 |
Balance at December 31, 2022 | $ 142,988 | $ (6,988) | 6,988 | 120 | 18,208 | 161,316 |
Balance (in shares) | 28,120 | (957) | | | | |
Net Income | $ 0 | $ 0 | 0 | 0 | 4,669 | 4,669 |
Other comprehensive gain (loss) | $ 0 | $ 0 | 0 | 117 | 0 | 117 |
Board stock compensation (in shares) | 2 | 0 | | | | |
Board stock compensation | $ 97 | $ 0 | 0 | 0 | 0 | 97 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 29 | 0 | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ (379) | $ 0 | 0 | 0 | 0 | (379) |
Shares issued for deferred compensation (in shares) | 31 | 0 | | | | |
Shares issued for deferred compensation | $ 443 | $ 0 | 0 | 0 | 0 | 443 |
Activity of treasury shares, net (in shares) | 0 | 66 | | | | |
Activity of treasury shares, net | $ 0 | $ 252 | 0 | 0 | 0 | 252 |
Deferred stock compensation | 0 | 0 | (252) | 0 | 0 | (252) |
Stock-based compensation expense | $ 893 | $ 0 | 0 | 0 | 0 | 893 |
Stock options exercised, net (in shares) | 157 | 0 | | | | |
Stock options exercised, net | $ 1,861 | $ 0 | 0 | 0 | 0 | 1,861 |
Dividends | $ 0 | $ 0 | 0 | 0 | (1,371) | (1,371) |
ESPP stock Awards (in shares) | 10 | 0 | | | | |
ESPP stock Awards | $ 97 | $ 0 | 0 | 0 | 0 | 97 |
Balance (in shares) at Mar. 31, 2023 | 28,349 | (891) | | | | |
Balance at Mar. 31, 2023 | $ 146,000 | $ (6,736) | 6,736 | 237 | 21,506 | 167,743 |
Balance at December 31, 2022 | $ 146,000 | $ (6,736) | 6,736 | 237 | 21,506 | 167,743 |
Balance (in shares) | 28,349 | (891) | | | | |
Balance at December 31, 2022 | $ 148,691 | $ (7,166) | 7,166 | 339 | 28,548 | 177,578 |
Balance (in shares) | 28,488 | (922) | | | | |
Balance (in shares) at Jun. 30, 2023 | 28,488 | (922) | | | | |
Balance at Jun. 30, 2023 | $ 148,691 | $ (7,166) | 7,166 | 339 | 28,548 | 177,578 |
Net Income | 0 | 0 | 0 | 0 | 8,028 | 8,028 |
Other comprehensive gain (loss) | $ 0 | $ 0 | 0 | (56) | 0 | (56) |
Board stock compensation (in shares) | 9 | 0 | | | | |
Board stock compensation | $ 113 | $ 0 | 0 | 0 | 0 | 113 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 276 | 0 | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ 0 | $ 0 | 0 | 0 | 0 | 0 |
Shares issued for deferred compensation (in shares) | 32 | 0 | | | | |
Shares issued for deferred compensation | $ 437 | $ 0 | 0 | 0 | 0 | 437 |
Activity of treasury shares, net (in shares) | 0 | (30) | | | | |
Activity of treasury shares, net | $ 0 | $ (417) | 0 | 0 | 0 | (417) |
Deferred stock compensation | 0 | 0 | 417 | 0 | 0 | 417 |
Stock-based compensation expense | $ 1,220 | $ 0 | 0 | 0 | 0 | |
Stock options exercised, net (in shares) | 70 | 0 | | | | |
Stock options exercised, net | $ 549 | $ 0 | 0 | 0 | 0 | 549 |
Dividends | $ 0 | $ 0 | 0 | 0 | (1,380) | (1,380) |
ESPP stock Awards (in shares) | 3 | 0 | | | | |
ESPP stock Awards | $ 57 | $ 0 | 0 | 0 | 0 | 57 |
Balance (in shares) at Sep. 30, 2023 | 28,878 | (952) | | | | |
Balance at Sep. 30, 2023 | $ 151,067 | $ (7,583) | 7,583 | 283 | 35,196 | 186,546 |
Balance (in shares) at Jun. 30, 2023 | 28,488 | (922) | | | | |
Balance at Jun. 30, 2023 | $ 148,691 | $ (7,166) | 7,166 | 339 | 28,548 | 177,578 |
Net Income | | | | | | 19,309 |
Balance (in shares) at Mar. 31, 2024 | 29,113 | (1,019) | | | | |
Balance at Mar. 31, 2024 | $ 154,475 | $ (8,520) | 8,520 | 385 | 43,577 | 198,437 |
Balance at December 31, 2022 | $ 151,067 | $ (7,583) | 7,583 | 283 | 35,196 | 186,546 |
Balance (in shares) | 28,878 | (952) | | | | |
Balance (in shares) at Sep. 30, 2023 | 28,878 | (952) | | | | |
Balance at Sep. 30, 2023 | $ 151,067 | $ (7,583) | 7,583 | 283 | 35,196 | 186,546 |
Net Income | | | | | 5,906 | 5,906 |
Other comprehensive gain (loss) | | | | 71 | | 71 |
Board stock compensation (in shares) | 7 | | | | | |
Board stock compensation | $ 112 | | | | | 112 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 28 | | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ (244) | | | | | (244) |
Shares issued for deferred compensation (in shares) | 36 | | | | | |
Shares issued for deferred compensation | $ 506 | | | | | 506 |
Activity of treasury shares, net (in shares) | | (36) | | | | |
Activity of treasury shares, net | | $ (505) | | | | (505) |
Deferred stock compensation | | | 505 | | | 505 |
Stock-based compensation expense | $ 814 | | | | | 814 |
Stock options exercised, net (in shares) | 107 | | | | | |
Stock options exercised, net | $ 628 | | | | | 628 |
Dividends | | | | | (1,446) | (1,446) |
ESPP stock Awards (in shares) | 4 | | | | | |
ESPP stock Awards | $ 41 | | | | | 41 |
Balance (in shares) at Dec. 31, 2023 | 29,060 | (988) | | | | |
Balance at Dec. 31, 2023 | $ 152,924 | $ (8,088) | 8,088 | 354 | 39,656 | 192,934 |
Balance at December 31, 2022 | $ 152,924 | $ (8,088) | 8,088 | 354 | 39,656 | 192,934 |
Balance (in shares) | 29,060 | (988) | | | | |
Net Income | $ 0 | $ 0 | 0 | 0 | 5,375 | 5,375 |
Other comprehensive gain (loss) | $ 0 | $ 0 | 0 | 31 | 0 | 31 |
Board stock compensation (in shares) | 8 | 0 | | | | |
Board stock compensation | $ 113 | $ 0 | 0 | 0 | 0 | 113 |
Restricted stock units issued, net of shares withheld for tax withholdings (in shares) | 0 | 0 | | | | |
Restricted stock units issued, net of shares withheld for tax withholdings | $ (60) | $ 0 | 0 | 0 | 0 | (60) |
Shares issued for deferred compensation (in shares) | 29 | 0 | | | | |
Shares issued for deferred compensation | $ 431 | $ 0 | 0 | 0 | 0 | 431 |
Activity of treasury shares, net (in shares) | 0 | (31) | | | | |
Activity of treasury shares, net | $ 0 | $ (432) | 0 | 0 | 0 | (432) |
Deferred stock compensation | 0 | 0 | 432 | 0 | 0 | 432 |
Stock-based compensation expense | $ 927 | $ 0 | 0 | 0 | 0 | 927 |
Stock options exercised, net (in shares) | 12 | 0 | | | | |
Stock options exercised, net | $ 93 | $ 0 | 0 | 0 | 0 | 93 |
Dividends | $ 0 | $ 0 | 0 | 0 | (1,454) | (1,454) |
ESPP stock Awards (in shares) | 4 | 0 | | | | |
ESPP stock Awards | $ 47 | $ 0 | 0 | 0 | 0 | 47 |
Balance (in shares) at Mar. 31, 2024 | 29,113 | (1,019) | | | | |
Balance at Mar. 31, 2024 | $ 154,475 | $ (8,520) | 8,520 | 385 | 43,577 | 198,437 |
Balance at December 31, 2022 | $ 154,475 | $ (8,520) | $ 8,520 | $ 385 | $ 43,577 | $ 198,437 |
Balance (in shares) | 29,113 | (1,019) | | | | |