XML 66 R50.htm IDEA: XBRL DOCUMENT v3.22.4
REVENUE RECOGNITION - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2022
Dec. 31, 2021
Dec. 31, 2020
Disaggregation of Revenue [Line Items]      
Contract with customer, liability, revenue recognized $ 5,200,000 $ 4,300,000 $ 5,300,000
Revenue, remaining performance obligation, amount $ 82,200,000    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01      
Disaggregation of Revenue [Line Items]      
Revenue, remaining performance obligation, percentage 93.00%    
Revenue, remaining performance obligation, expected timing of satisfaction, period 1 year    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01      
Disaggregation of Revenue [Line Items]      
Revenue, remaining performance obligation, percentage 4.00%    
Revenue, remaining performance obligation, expected timing of satisfaction, period 2 years    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-01-01      
Disaggregation of Revenue [Line Items]      
Revenue, remaining performance obligation, expected timing of satisfaction, period    
Accounting Standards Update 2014-09      
Disaggregation of Revenue [Line Items]      
Contract with customer, asset, cumulative catch-up adjustment to revenue, modification of contract $ 0 $ 200,000  
Revenue from Contract with Customer, Product and Service Benchmark | Revenue Timing of Transfer of Goods or Service | Transferred over Time      
Disaggregation of Revenue [Line Items]      
Concentration risk, percentage 89.00% 91.00% 90.00%
Revenue from Contract with Customer, Product and Service Benchmark | Revenue Timing of Transfer of Goods or Service | Transferred at Point in Time      
Disaggregation of Revenue [Line Items]      
Concentration risk, percentage 11.00% 9.00% 10.00%