v3.26.1
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY (DEFICIT) - USD ($)
$ in Thousands
Total
Common stock
Additional paid-in capital
Treasury stock
Accumulated deficit/Retained earnings
Accumulated other comprehensive loss
Common stock, beginning balance (in shares) at Dec. 31, 2024   20,609,725        
Beginning balance at Dec. 31, 2024 $ (79,463) $ 206 $ 59,373 $ (32,313) $ (83,678) $ (23,051)
Treasury stock, beginning balance (in shares) at Dec. 31, 2024       (1,085,725)    
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income 41,933          
Foreign currency translation adjustment 14,227         14,227
Vested restricted stock (in shares)   137,466        
Vested restricted stock   $ 1 (1)      
Share-based payment arrangement, shares withheld for tax withholding obligation (in shares)   (51,045)        
Shares withheld related to net share settlement $ (1,174)   (1,174)      
Repurchase of common stock (in shares) (553,344)     (553,344)    
Repurchase of common stock $ (12,574)     $ (12,574)    
Share-based compensation 9,878   9,878      
Issuance of shares under employee stock purchase plan (in shares)   34,957        
Issuance of shares under ESPP 694   694      
Common stock, ending balance (in shares) at Jun. 30, 2025   20,731,103        
Ending balance at Jun. 30, 2025 (26,479) $ 207 68,770 $ (44,887) (41,745) (8,824)
Treasury stock, ending balance (in shares) at Jun. 30, 2025       (1,639,069)    
Common stock, beginning balance (in shares) at Mar. 31, 2025   20,628,133        
Beginning balance at Mar. 31, 2025 (49,358) $ 206 63,992 $ (32,347) (62,526) (18,683)
Treasury stock, beginning balance (in shares) at Mar. 31, 2025       (1,087,196)    
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income 20,781       20,781  
Foreign currency translation adjustment 9,859         9,859
Vested restricted stock (in shares)   105,581        
Vested restricted stock   $ 1 (1)      
Share-based payment arrangement, shares withheld for tax withholding obligation (in shares)   (37,568)        
Shares withheld related to net share settlement $ (835)   (835)      
Repurchase of common stock (in shares) (551,873)     (551,873)    
Repurchase of common stock $ (12,540)     $ (12,540)    
Share-based compensation 4,920   4,920      
Issuance of shares under employee stock purchase plan (in shares)   34,957        
Issuance of shares under ESPP 694   694      
Common stock, ending balance (in shares) at Jun. 30, 2025   20,731,103        
Ending balance at Jun. 30, 2025 $ (26,479) $ 207 68,770 $ (44,887) (41,745) (8,824)
Treasury stock, ending balance (in shares) at Jun. 30, 2025       (1,639,069)    
Common stock, beginning balance (in shares) at Dec. 31, 2025 18,958,448 21,057,258        
Beginning balance at Dec. 31, 2025 $ 13,773 $ 211 76,984 $ (55,476) 849 (8,795)
Treasury stock, beginning balance (in shares) at Dec. 31, 2025 (2,098,810)     (2,098,810)    
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income $ 52,059       52,059  
Foreign currency translation adjustment (4,775)         (4,775)
Vested restricted stock (in shares)   397,169        
Vested restricted stock 0 $ 4 (4)      
Share-based payment arrangement, shares withheld for tax withholding obligation (in shares)   (146,527)        
Shares withheld related to net share settlement $ (4,917) $ (2) (4,915)      
Repurchase of common stock (in shares) (901,365)     (901,365)    
Repurchase of common stock $ (26,832)     $ (26,832)    
Share-based compensation 11,551   11,551      
Issuance of shares under employee stock purchase plan (in shares)   37,197        
Issuance of shares under ESPP $ 707   707      
Common stock, ending balance (in shares) at Jun. 30, 2026 18,344,922 21,345,097        
Ending balance at Jun. 30, 2026 $ 41,566 $ 213 84,323 $ (82,308) 52,908 (13,570)
Treasury stock, ending balance (in shares) at Jun. 30, 2026 (3,000,175)     (3,000,175)    
Common stock, beginning balance (in shares) at Mar. 31, 2026   21,097,257        
Beginning balance at Mar. 31, 2026 $ 22,003 $ 211 81,254 $ (72,646) 25,534 (12,350)
Treasury stock, beginning balance (in shares) at Mar. 31, 2026       (2,699,307)    
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Net income 27,374       27,374  
Foreign currency translation adjustment (1,220)         (1,220)
Vested restricted stock (in shares)   332,411        
Vested restricted stock 0 $ 4 (4)      
Share-based payment arrangement, shares withheld for tax withholding obligation (in shares)   (121,768)        
Shares withheld related to net share settlement $ (4,183) $ (2) (4,181)      
Repurchase of common stock (in shares) (300,868)     (300,868)    
Repurchase of common stock $ (9,662)     $ (9,662)    
Share-based compensation 6,547   6,547      
Issuance of shares under employee stock purchase plan (in shares)   37,197        
Issuance of shares under ESPP $ 707   707      
Common stock, ending balance (in shares) at Jun. 30, 2026 18,344,922 21,345,097        
Ending balance at Jun. 30, 2026 $ 41,566 $ 213 $ 84,323 $ (82,308) $ 52,908 $ (13,570)
Treasury stock, ending balance (in shares) at Jun. 30, 2026 (3,000,175)     (3,000,175)