| Standard label: | Movement in Standard Product Warranty Accrual [Roll Forward] | 
| Name: | us-gaap:MovementInStandardProductWarrantyAccrualRollForward | 
| Documentation: | A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period. | 
| Object type: | cm:Abstract | 
| Data type: | Text/String (xbrli:stringItemType) | 
| Period type: | For Period (duration) | 
| Balance type: | (no balance type) | 
| Abstract: | true | 
| Workiva Wdesk Taxonomy Analyzer: | us-gaap:MovementInStandardProductWarrantyAccrualRollForward | 
| Label | Role | Language | 
| Movement in Standard Product Warranty Accrual [Roll Forward] | http://www.xbrl.org/2003/role/label | en-US | 
| Reference | Role | Topic |