XML 45 R33.htm IDEA: XBRL DOCUMENT v3.25.3
Note 2 - Income Per Share - Calculation of Net Income Per Share (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2025
Jun. 30, 2025
Mar. 31, 2025
Sep. 30, 2024
Jun. 30, 2024
Mar. 31, 2024
Sep. 30, 2025
Sep. 30, 2024
Numerators:                
Income from continuing operations $ 6,264     $ 12,883     $ 22,667 $ 28,752
Income from discontinued operations 2,829     150     2,829 450
Net income (loss) $ 9,093 $ 9,840 $ 6,563 $ 13,033 $ 12,194 $ 3,974 $ 25,496 $ 29,202
Denominator:                
Denominator for basic income per share – weighted-average shares (in shares) 25,030     26,354     25,872 26,274
Effect of dilutive securities:                
Diluted weighted average shares outstanding (in shares) 26,301     27,802     27,156 27,654
Basic income per share: (1)                
Income from continuing operations (in dollars per share) $ 0.25     $ 0.49     $ 0.88 $ 1.09
Income from discontinued operations (in dollars per share) 0.11     0.01     0.11 0.02
Net income per share (in dollars per share) [1] 0.36     0.49     0.99 1.11
Diluted income per share: (1)                
Income from continuing operations (in dollars per share) 0.24     0.46     0.83 1.04
Income from discontinued operations (in dollars per share) 0.11     0.01     0.1 0.02
Net income per share (in dollars per share) [1] $ 0.35     $ 0.47     $ 0.94 $ 1.06
Restricted Stock [Member]                
Effect of dilutive securities:                
Equivalent shares issuable upon conversion of unvested restricted shares (in shares) 120     150     137 142
Share-Based Payment Arrangement, Option [Member]                
Effect of dilutive securities:                
Equivalent shares issuable upon conversion of unvested restricted shares (in shares) 1,151     1,298     1,147 1,238
[1] Total may not sum due to rounding.