XML 46 R34.htm IDEA: XBRL DOCUMENT v3.21.1
Accounts Receivable - Additional Information (Detail) - USD ($)
3 Months Ended
Mar. 31, 2021
Mar. 31, 2020
Dec. 31, 2020
Receivables [Abstract]      
Amount billed but not received under retainage provisions in contracts $ 1,500,000   $ 1,500,000
Retainage receivables on contracts period 1 year    
Bad debt (recoveries) expense $ (41,000) $ 46,000