XML 113 R48.htm IDEA: XBRL DOCUMENT v3.22.0.1
Revenue Recognition - Narrative (Details)
12 Months Ended
Dec. 31, 2021
Dec. 31, 2020
Dec. 31, 2019
Minimum      
Disaggregation of Revenue [Line Items]      
Contract payment term (in days) 30 days    
Maximum      
Disaggregation of Revenue [Line Items]      
Contract payment term (in days) 180 days    
One Customer | Total Revenue | Customer Concentration Risk      
Disaggregation of Revenue [Line Items]      
Concentration risk, percentage 31.00% 26.00% 28.00%
Ten Largest Customers | Total Revenue | Customer Concentration Risk      
Disaggregation of Revenue [Line Items]      
Concentration risk, percentage 69.00% 64.00% 60.00%