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, 2019 | | 16,849,026 | | |
Balance at beginning of period at Apr. 30, 2019 | $ 620,353 | $ 352,424 | $ 317,420 | $ (49,491) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 26,881 | | 26,881 | |
Other comprehensive loss, net of tax | 315 | | | 315 |
Stock-based compensation | 897 | $ 897 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 20,923 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (1,050) | $ (1,050) | | |
Employee benefit plan contributions (shares) | | 45,721 | | |
Employee benefit plan contributions | 3,772 | $ 3,772 | | |
Balance at end of period (shares) at Jul. 31, 2019 | | 16,915,670 | | |
Balance at end of period at Jul. 31, 2019 | 651,168 | $ 356,043 | 344,301 | (49,176) |
Balance at beginning of period (shares) at Apr. 30, 2019 | | 16,849,026 | | |
Balance at beginning of period at Apr. 30, 2019 | 620,353 | $ 352,424 | 317,420 | (49,491) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 61,848 | | | |
Balance at end of period (shares) at Jan. 31, 2020 | | 16,925,247 | | |
Balance at end of period at Jan. 31, 2020 | 689,285 | $ 358,562 | 379,268 | (48,545) |
Balance at beginning of period (shares) at Jul. 31, 2019 | | 16,915,670 | | |
Balance at beginning of period at Jul. 31, 2019 | 651,168 | $ 356,043 | 344,301 | (49,176) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 22,163 | | 22,163 | |
Other comprehensive loss, net of tax | 316 | | | 316 |
Stock-based compensation | 1,178 | $ 1,178 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 5,877 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | 83 | $ 83 | | |
Stock repurchases | 0 | | | |
Balance at end of period (shares) at Oct. 31, 2019 | | 16,921,547 | | |
Balance at end of period at Oct. 31, 2019 | 674,908 | $ 357,304 | 366,464 | (48,860) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 12,804 | | 12,804 | |
Other comprehensive loss, net of tax | 315 | | | 315 |
Stock-based compensation | 1,047 | $ 1,047 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 3,700 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | 211 | $ 211 | | |
Balance at end of period (shares) at Jan. 31, 2020 | | 16,925,247 | | |
Balance at end of period at Jan. 31, 2020 | $ 689,285 | $ 358,562 | 379,268 | (48,545) |
Balance at beginning of period (shares) at Apr. 30, 2020 | 16,926,537 | 16,926,537 | | |
Balance at beginning of period at Apr. 30, 2020 | $ 700,538 | $ 359,430 | 392,281 | (51,173) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 16,485 | | 16,485 | |
Other comprehensive loss, net of tax | 327 | | | 327 |
Stock-based compensation | 961 | $ 961 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 16,212 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (534) | $ (534) | | |
Employee benefit plan contributions (shares) | | 45,591 | | |
Employee benefit plan contributions | 3,743 | $ 3,743 | | |
Balance at end of period (shares) at Jul. 31, 2020 | | 16,988,340 | | |
Balance at end of period at Jul. 31, 2020 | $ 721,520 | $ 363,600 | 408,766 | (50,846) |
Balance at beginning of period (shares) at Apr. 30, 2020 | 16,926,537 | 16,926,537 | | |
Balance at beginning of period at Apr. 30, 2020 | $ 700,538 | $ 359,430 | 392,281 | (51,173) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | $ 55,936 | | | |
Balance at end of period (shares) at Jan. 31, 2021 | 17,001,147 | 17,001,147 | | |
Balance at end of period at Jan. 31, 2021 | $ 763,391 | $ 365,363 | 448,217 | (50,189) |
Balance at beginning of period (shares) at Jul. 31, 2020 | | 16,988,340 | | |
Balance at beginning of period at Jul. 31, 2020 | 721,520 | $ 363,600 | 408,766 | (50,846) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 22,256 | | 22,256 | |
Other comprehensive loss, net of tax | 329 | | | 329 |
Stock-based compensation | 1,266 | $ 1,266 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 4,920 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | (177) | $ (177) | | |
Balance at end of period (shares) at Oct. 31, 2020 | | 16,993,260 | | |
Balance at end of period at Oct. 31, 2020 | 745,194 | $ 364,689 | 431,022 | (50,517) |
Increase (Decrease) in Stockholders' Equity [Roll Forward] | | | | |
Net income | 17,195 | | 17,195 | |
Other comprehensive loss, net of tax | 328 | | | 328 |
Stock-based compensation | 1,316 | $ 1,316 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes (shares) | | 7,887 | | |
Exercise of stock-based compensation awards, net of amounts withheld for taxes | $ (642) | $ (642) | | |
Balance at end of period (shares) at Jan. 31, 2021 | 17,001,147 | 17,001,147 | | |
Balance at end of period at Jan. 31, 2021 | $ 763,391 | $ 365,363 | $ 448,217 | $ (50,189) |