v3.26.1
Revenue Recognition, Contracts with Customers - Remaining Performance Obligations included in Contract Liability (Details) - USD ($)
$ in Millions
Jul. 31, 2026
Apr. 30, 2026
Revenue, Performance Obligation Satisfied over Time [Abstract]    
Remaining performance obligation to be recognized $ 402.2  
Sales return reserve recorded in contract liability 11.9 $ 11.8
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-08-01    
Revenue, Performance Obligation Satisfied over Time [Abstract]    
Remaining performance obligations excluding sales return reserve $ 372.4  
Remaining performance obligation, expected timing of satisfaction 1 year  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-08-01    
Revenue, Performance Obligation Satisfied over Time [Abstract]    
Remaining performance obligations excluding sales return reserve $ 17.9  
Remaining performance obligation, expected timing of satisfaction