XML 63 R50.htm IDEA: XBRL DOCUMENT
v3.22.0.1

Employee Benefits And Stock-Based Compensation Employee Benefits and Stock-Based Compensation (Classification of Share-based Compensation (Details) - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2021 | Dec. 31, 2020 | Dec. 31, 2019
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |
Share-based Payment Arrangement, Noncash Expense | $ 53,439 | $ 48,243 | $ 50,626
Share-based Payment Arrangement, Amount Capitalized | 1,622 | 1,783 | 1,690
Share-based Payment Arrangement, Expense | 55,061 | 50,026 | 52,316
Cost of Sales [Member] |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |
Share-based Payment Arrangement, Noncash Expense | 6,525 | 6,321 | 6,739
Selling and Marketing Expense [Member] |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |
Share-based Payment Arrangement, Noncash Expense | 4,312 | 3,453 | 3,755
Research and Development Expense [Member] |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |
Share-based Payment Arrangement, Noncash Expense | 8,283 | 7,137 | 6,370
General and Administrative Expense [Member] |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |
Share-based Payment Arrangement, Noncash Expense | $ 34,319 | $ 31,332 | $ 33,762

X
- Definition Amount of cost capitalized for award under share-based payment arrangement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1)(ii) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
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_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of noncash expense for share-based payment arrangement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585 + Details
Name: | us-gaap_ShareBasedCompensation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of cost expensed and capitalized for award under share-based payment arrangement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1) -URI http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |