v3.26.1
Net Income per Common Share - Schedule of Anti-Dilutive Potential Shares (Details) - shares
shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total antidilutive shares (in shares) 56 1,056 220 1,022
RSUs        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total antidilutive shares (in shares) 43 1,030 212 1,009
ESPP        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total antidilutive shares (in shares) 13 26 8 13