Net Income Per Share - Antidilutive Securities Excluded from Earnings Per Share (Details) - shares shares in Thousands |
12 Months Ended | ||
|---|---|---|---|
Dec. 31, 2024 |
Dec. 31, 2023 |
Dec. 31, 2022 |
|
| Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] | |||
| Antidilutive securities excluded from earnings per share (in shares) | 268 | 991 | 2,009 |
| Stock options and RSUs | |||
| Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] | |||
| Antidilutive securities excluded from earnings per share (in shares) | 242 | 579 | 1,209 |
| Employee stock purchase plan | |||
| Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] | |||
| Antidilutive securities excluded from earnings per share (in shares) | 26 | 412 | 800 |