v3.26.3
Net (loss) income per share - Antidilutive (Details) - shares
9 Months Ended
Sep. 30, 2026
Sep. 30, 2025
Net income (loss) per share    
Total shares excluded from calculation (in shares) 956,720 3,337,289
Stock options    
Net income (loss) per share    
Total shares excluded from calculation (in shares) 875,727 3,246,389
Unvested restricted stock units    
Net income (loss) per share    
Total shares excluded from calculation (in shares) 5,100 90,900
Unvested performance based restricted stock units    
Net income (loss) per share    
Total shares excluded from calculation (in shares) 75,893