| Name | ContractReceivableDueInRollingYearFour |
|---|---|
| Namespace | http://fasb.org/us-gaap/2022 |
| Prefix | us-gaap |
| Data type | xbrli:monetaryItemType |
| Period type | instant |
| Substitution Group | xbrli:item |
| Balance | debit |
| Nillable | True |
| Abstract | False |
| Text | Lang | Role | Container role |
|---|---|---|---|
| Contract Receivable, Due in Rolling Year Four (Deprecated 2020) | en-US | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Amount billed to customers under long-term contracts or programs to be collected in the fourth rolling twelve months following the latest balance sheet. Excludes amounts due that have been withheld because of retainage provisions in a contract. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date. | en-US | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |
| Name | Value | Role |
|---|---|---|
| elementCreationTaxonomyVersion | 2012 | http://fasb.org/us-gaap/role/tin/taxonomyImplementationNote |
| SourceName | Revenue:Taxonomy Technical Improvement | http://fasb.org/srt/role/changeNote/changeNote |
| TaxonomyVersion | 2020 | http://fasb.org/srt/role/changeNote/changeNote |
| ElementDeprecated | true | http://fasb.org/srt/role/changeNote/changeNote |
| Source_ASU_Number | 2014-09 | http://fasb.org/srt/role/changeNote/changeNote |
| TaxonomyVersion | 2020 | http://fasb.org/srt/role/deprecationNote/deprecationNote |
| DeprecatedLabel | Element was deprecated because of low usage. | http://fasb.org/srt/role/deprecationNote/deprecationNote |
| Name | Relation Type | Role | |
|---|---|---|---|
us-gaap:DeprecatedItems | parent-child | http://fasb.org/us-gaap/role/deprecated/deprecated |