v3.26.1
Condensed Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)
$ in Thousands
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
AOCI Attributable to Parent [Member]
Common Stock Outstanding [Member]
Total
Balance at Jan. 31, 2025 $ 80 $ 60,151 $ 20,104 $ (8,197)   $ 72,138
Net income attributable to common stock 0 0 4,952 0   4,952
Stock-based compensation expense 0 224 0 0   224
Amount attributable to non-controlling interest 0 (369) 0 0   (369)
Foreign currency translation adjustment 0 0 0 922   922
Balance at Apr. 30, 2025 80 60,006 25,056 (7,275)   77,867
Balances (in shares) at Jan. 31, 2025         7,982,568  
Balance at Jan. 31, 2025 80 60,151 20,104 (8,197)   72,138
Net income attributable to common stock           5,803
Foreign currency translation adjustment           811
Balance at Jul. 31, 2025 80 61,603 25,907 (7,386)   80,204
Balances (in shares) at Jan. 31, 2025         7,982,568  
Shares issued, net of shares used for tax withholding (in shares)         61,115  
Balances (in shares) at Jul. 31, 2025         8,043,683  
Balance at Apr. 30, 2025 80 60,006 25,056 (7,275)   77,867
Net income attributable to common stock 0 0 851 0   851
Stock-based compensation expense 0 1,468 0 0   1,468
Amount attributable to non-controlling interest 0 424 0 0   424
Foreign currency translation adjustment 0 0 0 (111)   (111)
Common stock withheld related to net share settlement of equity award 0 (295) 0 0   (295)
Balance at Jul. 31, 2025 80 61,603 25,907 (7,386)   80,204
Balances (in shares) at Jul. 31, 2025         8,043,683  
Balance at Jan. 31, 2026 81 61,097 37,139 (7,679)   90,638
Net income attributable to common stock 0 0 1,801 0   1,801
Stock-based compensation expense 0 180 0 0   180
Amount attributable to non-controlling interest 0 (42) 0 0   (42)
Foreign currency translation adjustment 0 0 0 (336)   (336)
Balance at Apr. 30, 2026 81 61,235 38,940 (8,015)   92,241
Balances (in shares) at Jan. 31, 2026         8,121,549  
Balance at Jan. 31, 2026 81 61,097 37,139 (7,679)   90,638
Net income attributable to common stock           4,349
Foreign currency translation adjustment           (1,117)
Balance at Jul. 31, 2026 82 60,717 41,487 (8,796)   93,490
Balances (in shares) at Jan. 31, 2026         8,121,549  
Shares issued, net of shares used for tax withholding (in shares)         73,628  
Balances (in shares) at Jul. 31, 2026         8,195,177  
Balance at Apr. 30, 2026 81 61,235 38,940 (8,015)   92,241
Net income attributable to common stock 0 0 2,547 0   2,547
Stock-based compensation expense 0 232 0 0   232
Amount attributable to non-controlling interest 0 (303) 0 0   (303)
Foreign currency translation adjustment 0 0 0 (781)   (781)
Common stock withheld related to net share settlement of equity award 1 (447) 0 0   (446)
Balance at Jul. 31, 2026 $ 82 $ 60,717 $ 41,487 $ (8,796)   $ 93,490
Balances (in shares) at Jul. 31, 2026         8,195,177