v3.26.1
CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS’ EQUITY - USD ($)
$ in Thousands
Total
Common Stock
Additional Paid-in Capital
Treasury Stock
Accumulated Other Comprehensive Income
Stock Subscription Notes Receivable
Accumulated Deficit
Beginning balance (in shares) at Dec. 31, 2024   21,281,247          
Beginning balance at Dec. 31, 2024 $ 246,115 $ 213 $ 329,073 $ (60,901) $ 1,146 $ (30) $ (23,386)
Beginning balance (in shares) at Dec. 31, 2024       (3,899,109)      
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Issuance of new common shares (in shares)   48,267          
Issuance of new common shares 1,194   1,194        
Purchase of treasury stock (in shares)       (156,152)      
Purchase of treasury stock (3,894)     $ (3,894)      
Issuance of new common shares under stock compensation plan (in shares)   317,120          
Issuance of new common shares under stock compensation plan 0 $ 3 (3)        
Cancellation of common shares under stock compensation plan (in shares)   (15,830)          
Issuance of new common shares under employee stock purchase plan (in shares)   44,993          
Issuance of new common shares under employee stock purchase plan 912 $ 1 911        
Stock based compensation 10,119   10,119        
Collection on stock subscription notes receivable 21         21  
Exercises of conversion feature of convertible note (in shares)   31,007          
Exercises of conversion feature of convertible note 433   433        
Other comprehensive loss, net of tax (64)       (64)    
Repurchases of common stock (in shares)       (410,563)      
Repurchase of common stock (9,458)     $ (9,458)      
Net income (loss) 4,265           4,265
Ending balance (in shares) at Jun. 30, 2025   21,706,804          
Ending balance at Jun. 30, 2025 249,643 $ 217 341,727 $ (74,253) 1,082 (9) (19,121)
Ending balance (in shares) at Jun. 30, 2025       (4,465,824)      
Beginning balance (in shares) at Mar. 31, 2025   21,502,214          
Beginning balance at Mar. 31, 2025 244,115 $ 215 335,514 $ (67,579) 1,114 (19) (25,130)
Beginning balance (in shares) at Mar. 31, 2025       (4,165,124)      
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Issuance of new common shares (in shares)   8,920          
Issuance of new common shares 225   225        
Purchase of treasury stock (in shares)       (53,066)      
Purchase of treasury stock (1,319)     $ (1,319)      
Issuance of new common shares under stock compensation plan (in shares)   185,532          
Issuance of new common shares under stock compensation plan 0 $ 2 (2)        
Cancellation of common shares under stock compensation plan (in shares)   (8,832)          
Issuance of new common shares under employee stock purchase plan (in shares)   18,970          
Issuance of new common shares under employee stock purchase plan 428   428        
Stock based compensation 5,562   5,562        
Collection on stock subscription notes receivable 10         10  
Other comprehensive loss, net of tax (32)       (32)    
Repurchases of common stock (in shares)       (247,634)      
Repurchase of common stock (5,355)     $ (5,355)      
Net income (loss) 6,009           6,009
Ending balance (in shares) at Jun. 30, 2025   21,706,804          
Ending balance at Jun. 30, 2025 $ 249,643 $ 217 341,727 $ (74,253) 1,082 (9) (19,121)
Ending balance (in shares) at Jun. 30, 2025       (4,465,824)      
Beginning balance (in shares) at Dec. 31, 2025 17,194,091 21,972,432          
Beginning balance at Dec. 31, 2025 $ 261,105 $ 220 355,458 $ (84,931) 895 0 (10,537)
Beginning balance (in shares) at Dec. 31, 2025 (4,778,341)     (4,778,341)      
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Issuance of new common shares (in shares)   7,130          
Issuance of new common shares $ 300   300        
Purchase of treasury stock (in shares)       (69,720)      
Purchase of treasury stock (2,315)     $ (2,315)      
Issuance of new common shares under stock compensation plan (in shares)   454,320          
Issuance of new common shares under stock compensation plan $ 0 $ 5 (5)        
Cancellation of common shares under stock compensation plan (in shares)   (8,993)          
Issuance of new common shares under employee stock purchase plan (in shares) 37,734 37,734          
Issuance of new common shares under employee stock purchase plan $ 986   986        
Stock based compensation 9,905   9,905        
Other comprehensive loss, net of tax (53)       (53)    
Repurchases of common stock (in shares)       (381,936)      
Repurchase of common stock (12,229)     $ (12,229)      
Net income (loss) $ (1,207)           (1,207)
Ending balance (in shares) at Jun. 30, 2026 17,232,626 22,462,623          
Ending balance at Jun. 30, 2026 $ 256,492 $ 225 366,644 $ (99,475) 842 0 (11,744)
Ending balance (in shares) at Jun. 30, 2026 (5,229,997)     (5,229,997)      
Beginning balance (in shares) at Mar. 31, 2026   22,273,373          
Beginning balance at Mar. 31, 2026 $ 250,901 $ 223 360,007 $ (95,959) 869 0 (14,239)
Beginning balance (in shares) at Mar. 31, 2026       (5,119,949)      
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Purchase of treasury stock (in shares)       (16,210)      
Purchase of treasury stock (514)     $ (514)      
Issuance of new common shares under stock compensation plan (in shares)   175,440          
Issuance of new common shares under stock compensation plan 0 $ 2 (2)        
Cancellation of common shares under stock compensation plan (in shares)   (5,366)          
Issuance of new common shares under employee stock purchase plan (in shares)   19,176          
Issuance of new common shares under employee stock purchase plan 510   510        
Stock based compensation 6,129   6,129        
Other comprehensive loss, net of tax (27)       (27)    
Repurchases of common stock (in shares)       (93,838)      
Repurchase of common stock (3,002)     $ (3,002)      
Net income (loss) $ 2,495           2,495
Ending balance (in shares) at Jun. 30, 2026 17,232,626 22,462,623          
Ending balance at Jun. 30, 2026 $ 256,492 $ 225 $ 366,644 $ (99,475) $ 842 $ 0 $ (11,744)
Ending balance (in shares) at Jun. 30, 2026 (5,229,997)     (5,229,997)