Summary of Significant Accounting Policies - Schedule of Allowance for Sales Returns (Details) - Allowance for Sales Returns - USD ($) $ in Thousands |
3 Months Ended | 6 Months Ended | ||
|---|---|---|---|---|
Jun. 30, 2021 |
Jun. 30, 2020 |
Jun. 30, 2021 |
Jun. 30, 2020 |
|
| Movement in Valuation Allowances and Reserves [Roll Forward] | ||||
| Beginning balance | $ (3,768) | $ (4,668) | $ (5,912) | $ (6,550) |
| Charged to revenue | (4,524) | (3,959) | (7,050) | (6,686) |
| Utilization of sales return reserve | 3,777 | 3,215 | 8,447 | 7,824 |
| Ending balance | $ (4,515) | $ (5,412) | $ (4,515) | $ (5,412) |