Summary of Significant Accounting Policies - Schedule of Allowance for Sales Returns (Details) - USD ($) $ in Thousands |
3 Months Ended | |
|---|---|---|
Mar. 31, 2021 |
Mar. 31, 2020 |
|
| Movement in Valuation Allowances and Reserves [Roll Forward] | ||
| Beginning balance | $ (41,236) | |
| Ending balance | (28,256) | |
| Allowance for Sales Returns | ||
| Movement in Valuation Allowances and Reserves [Roll Forward] | ||
| Beginning balance | (5,912) | $ (6,550) |
| Charged to revenue | (2,526) | (2,727) |
| Utilization of sales return reserve | 4,670 | 4,609 |
| Ending balance | $ (3,768) | $ (4,668) |