| Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] |
| | | As of | |
| | | June 30, | |
| | | 2026 | | | 2025 | |
| Unvested restricted stock | | | 11,220,893 | | | | 11,270,068 | |
| Options | | | 4,060,156 | | | | 4,362,316 | |
| Warrants | | | 165,214 | | | | 165,214 | |
| Shares issuable upon note conversion | | | 23,679 | | | | 21,973 | |
| Stock Tracking Units | | | 41,625 | | | | — | |
| Total | | | 15,511,567 | | | | 15,819,571 | |
|
| Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] |
| | | Three months ended | | | Six months ended | |
| | | June 30, | | | June 30, | |
| (in thousands, except share and per share data) | | 2026 | | | 2025 | | | 2026 | | | 2025 | |
| Net income | | | 7,781 | | | | 28,187 | | | | 27,558 | | | | 33,247 | |
| Weighted-average common shares outstanding | | | 141,770,283 | | | | 146,739,833 | | | | 143,097,453 | | | | 146,708,980 | |
| Dilutive effect of potential common shares | | | 15,511,567 | | | | 15,819,571 | | | | 15,566,954 | | | | 15,819,571 | |
| Weighted-average common shares outstanding assuming dilution | | | 157,281,850 | | | | 162,559,404 | | | | 158,664,407 | | | | 162,528,551 | |
| | | | | | | |
| Net income per share - basic | | | 0.05 | | | | 0.19 | | | | 0.19 | | | | 0.23 | |
| Net income per share - diluted | | | 0.05 | | | | 0.17 | | | | 0.17 | | | | 0.20 | |
|