v3.26.3
Earnings (Loss) Per Share - Computation Of Diluted Earnings (Loss) Per Share. (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2026
Jun. 30, 2026
Mar. 31, 2026
Sep. 30, 2025
Jun. 30, 2025
Mar. 31, 2025
Sep. 30, 2026
Sep. 30, 2025
Numerator:                
Net income (loss) $ 7 $ (100) $ 264 $ 941 $ 135 $ (1,439) $ 171 $ (363)
Denominator:                
Weighted-average basic shares outstanding 12,029     11,762     11,956 11,761
Weighted-average diluted shares 12,166     11,945     12,063 11,761
Basic earnings per share $ 0     $ 0.08     $ 0.01 $ (0.03)
Diluted earnings per share $ 0     $ 0.08     $ 0.01 $ (0.03)
Options And Unvested Restricted Stock Awards [Member]                
Numerator:                
Net income (loss) $ 7     $ 941     $ 171 $ (363)
Denominator:                
Weighted-average basic shares outstanding 12,029     11,762     11,956 11,761
Effect of dilutive share-based awards 137     183     107 0
Weighted-average diluted shares 12,166     11,945     12,063 11,761
Basic earnings per share $ 0     $ 0.08     $ 0.01 $ (0.03)
Diluted earnings per share $ 0     $ 0.08     $ 0.01 $ (0.03)
Anti-dilutive shares excluded 2,321     2,330     2,497 3,169