XML 90 R51.htm IDEA: XBRL DOCUMENT
v3.22.4

Significant Accounting Policies - Intangible Asset Depreciation and Amortization Estimated Useful Lives (Details) | 12 Months Ended
--- | ---
Dec. 31, 2022
Patents |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 12 years
Patents | Minimum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 5 years
Patents | Maximum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 20 years
Trade names |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 15 years
Trade names | Minimum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 5 years
Trade names | Maximum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 20 years
Customer relationships |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 13 years
Customer relationships | Minimum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 5 years
Customer relationships | Maximum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 20 years
Unpatented technology |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 12 years
Unpatented technology | Minimum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 7 years
Unpatented technology | Maximum |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 20 years
Software |
Finite-Lived Intangible Assets [Line Items] |
Estimated useful life | 5 years

X
- Definition Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_PatentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TradeNamesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerRelationshipsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_UnpatentedTechnologyMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareAndSoftwareDevelopmentCostsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |