v3.21.2
Revenue Recognition - Remaining Performance Obligations (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Performance obligation $ 658,000   $ 658,000  
Revenue recognized $ 90,000 $ 106,000 $ 247,000 $ 232,000
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-07-01        
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Performance obligation, percentage 45.30%   45.30%  
Timing of satisfaction of remaining performance obligation 6 months   6 months  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01        
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Performance obligation, percentage 38.10%   38.10%  
Timing of satisfaction of remaining performance obligation 1 year   1 year  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01        
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]        
Performance obligation, percentage 16.60%   16.60%  
Timing of satisfaction of remaining performance obligation 1 year   1 year