| Standard label: | Capitalized Contract Cost, Amortization Period |
| Name: | us-gaap:CapitalizedContractCostAmortizationPeriod |
| Documentation: | Amortization period of cost capitalized in obtaining or fulfilling contract with customer, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. |
| Object type: | cm:Concept |
| Data type: | xbrli:durationItemType |
| Period type: | As Of (instant) |
| Balance type: | (no balance type) |
| Abstract: | false |
| Workiva Wdesk Taxonomy Analyzer: | us-gaap:CapitalizedContractCostAmortizationPeriod |
| Label | Role | Language |
| Capitalized Contract Cost, Amortization Period | http://www.xbrl.org/2003/role/label | en-US |
| Reference | Role | Topic |
| FASB Accounting Standards Codification 340 40 50 2 (b) | http://www.xbrl.org/2009/role/commonPracticeRef | 340 |