Consolidated Statements of Shareholders' Equity - USD ($) $ in Thousands | Total | COMMON STOCK | RETAINED EARNINGS | ACCUMULATED OTHER COMPREHENSIVE LOSS |
Balance at beginning of period (shares) at Apr. 30, 2022 | | 16,570,619 | | |
Balance at beginning of period at Apr. 30, 2022 | $ 772,883 | $ 363,224 | $ 399,434 | $ 10,225 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 20,070 | | 20,070 | |
Other comprehensive loss, net of tax | (1,278) | | | (1,278) |
Stock-based compensation | 1,635 | $ 1,635 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 25,908 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (772) | $ (772) | | |
Balance at end of period (shares) at Jul. 31, 2022 | | 16,596,527 | | |
Balance at end of period at Jul. 31, 2022 | 792,538 | $ 364,087 | 419,504 | 8,947 |
Balance at beginning of period (shares) at Apr. 30, 2022 | | 16,570,619 | | |
Balance at beginning of period at Apr. 30, 2022 | 772,883 | $ 363,224 | 399,434 | 10,225 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 63,582 | | | |
Balance at end of period (shares) at Jan. 31, 2023 | | 16,621,827 | | |
Balance at end of period at Jan. 31, 2023 | 843,140 | $ 368,539 | 463,016 | 11,585 |
Balance at beginning of period (shares) at Jul. 31, 2022 | | 16,596,527 | | |
Balance at beginning of period at Jul. 31, 2022 | 792,538 | $ 364,087 | 419,504 | 8,947 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 28,784 | | 28,784 | |
Other comprehensive loss, net of tax | 5,265 | | | 5,265 |
Stock-based compensation | 1,754 | $ 1,754 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 8,200 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | 0 | $ 0 | | |
Employee benefit plan contributions (shares) | | 17,100 | | |
Employee benefit plan contributions | 838 | $ 838 | | |
Balance at end of period (shares) at Oct. 31, 2022 | | 16,621,827 | | |
Balance at end of period at Oct. 31, 2022 | 829,179 | $ 366,679 | 448,288 | 14,212 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 14,728 | | 14,728 | |
Other comprehensive loss, net of tax | (2,627) | | | (2,627) |
Stock-based compensation | 1,860 | $ 1,860 | | |
Balance at end of period (shares) at Jan. 31, 2023 | | 16,621,827 | | |
Balance at end of period at Jan. 31, 2023 | $ 843,140 | $ 368,539 | 463,016 | 11,585 |
Balance at beginning of period (shares) at Apr. 30, 2023 | 16,635,295 | 16,635,295 | | |
Balance at beginning of period at Apr. 30, 2023 | $ 873,788 | $ 370,259 | 493,157 | 10,372 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 37,850 | | 37,850 | |
Other comprehensive loss, net of tax | 914 | | | 914 |
Stock-based compensation | 2,247 | $ 2,247 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 55,092 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (1,830) | $ (1,830) | | |
Stock repurchases (shares) | | (328,295) | | |
Stock repurchases | (22,280) | $ (6,565) | (15,715) | |
Employee benefit plan contributions (shares) | | 50,786 | | |
Employee benefit plan contributions | 3,676 | $ 3,676 | | |
Balance at end of period (shares) at Jul. 31, 2023 | | 16,412,878 | | |
Balance at end of period at Jul. 31, 2023 | $ 894,365 | $ 367,787 | 515,292 | 11,286 |
Balance at beginning of period (shares) at Apr. 30, 2023 | 16,635,295 | 16,635,295 | | |
Balance at beginning of period at Apr. 30, 2023 | $ 873,788 | $ 370,259 | 493,157 | 10,372 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | $ 89,418 | | | |
Balance at end of period (shares) at Jan. 31, 2024 | 15,812,027 | 15,812,027 | | |
Balance at end of period at Jan. 31, 2024 | $ 896,910 | $ 360,354 | 529,063 | 7,493 |
Balance at beginning of period (shares) at Jul. 31, 2023 | | 16,412,878 | | |
Balance at beginning of period at Jul. 31, 2023 | 894,365 | $ 367,787 | 515,292 | 11,286 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 30,341 | | 30,341 | |
Other comprehensive loss, net of tax | (986) | | | (986) |
Stock-based compensation | 2,155 | $ 2,155 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 7,740 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | 0 | $ 0 | | |
Stock repurchases (shares) | | (394,220) | | |
Stock repurchases | (30,295) | $ (7,885) | (22,410) | |
Balance at end of period (shares) at Oct. 31, 2023 | | 16,026,398 | | |
Balance at end of period at Oct. 31, 2023 | 895,580 | $ 362,057 | 523,223 | 10,300 |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 21,227 | | 21,227 | |
Other comprehensive loss, net of tax | (2,807) | | | (2,807) |
Stock-based compensation | 2,784 | $ 2,784 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 1,258 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (46) | $ (46) | | |
Stock repurchases (shares) | | (215,629) | | |
Stock repurchases | $ (19,828) | $ (4,441) | (15,387) | |
Balance at end of period (shares) at Jan. 31, 2024 | 15,812,027 | 15,812,027 | | |
Balance at end of period at Jan. 31, 2024 | $ 896,910 | $ 360,354 | $ 529,063 | $ 7,493 |