Net (Loss) Income per Share - Schedule of Reconciliation of Weighted Average Shares Outstanding Calculation (Details) - shares |
3 Months Ended | 6 Months Ended | ||
|---|---|---|---|---|
Jun. 30, 2026 |
Jun. 30, 2025 |
Jun. 30, 2026 |
Jun. 30, 2025 |
|
| Earnings Per Share [Abstract] | ||||
| Weighted average shares issued (in shares) | 34,550,540 | 34,445,438 | 34,614,830 | 33,876,512 |
| Weighted average pre-funded warrants (in shares) | 1,341,375 | 1,341,375 | 1,341,375 | 1,341,375 |
| Weighted average shares outstanding, basic (in shares) | 35,891,915 | 35,786,813 | 35,956,205 | 35,217,887 |
| Additional dilutive shares (in shares) | 3,869,565 | 4,475,951 | 3,628,124 | 4,672,215 |
| Weighted average shares outstanding, diluted (in shares) | 39,761,480 | 40,262,764 | 39,584,329 | 39,890,102 |