| Standard label: | Class of Treasury Stock [Table] | 
| Name: | us-gaap:ClassOfTreasuryStockTable | 
| Documentation: | Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock. | 
| Object type: | cm:Table | 
| Data type: | Text/String (xbrli:stringItemType) | 
| Period type: | For Period (duration) | 
| Balance type: | (no balance type) | 
| Abstract: | true | 
| Workiva Wdesk Taxonomy Analyzer: | us-gaap:ClassOfTreasuryStockTable | 
| Label | Role | Language | 
| Class of Treasury Stock [Table] | http://www.xbrl.org/2003/role/label | en-US | 
| Reference | Role | Topic | 
| FASB Accounting Standards Codification 505 30 45 1 | http://fasb.org/us-gaap/role/ref/legacyRef | 505 | 
| FASB Accounting Standards Codification 505 30 50 2 | http://fasb.org/us-gaap/role/ref/legacyRef | 505 | 
| FASB Accounting Standards Codification 505 30 50 3 | http://fasb.org/us-gaap/role/ref/legacyRef | 505 | 
| FASB Accounting Standards Codification 505 30 50 4 | http://fasb.org/us-gaap/role/ref/legacyRef | 505 |