| Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] |
| | | Three Months Ended September 30, | | | Nine Months Ended September 30, | |
| | | 2026 | | | 2025 | | | 2026 | | | 2025 | |
| | | (in thousands, except per share amounts) | |
| Net income per share available to common stockholders | | | | | | | | | | | | | | | | |
| Numerator: | | | | | | | | | | | | | | | | |
| Net income | | $ | 17,936 | | | $ | 13,017 | | | $ | 60,756 | | | $ | 19,476 | |
| Net income attributable to noncontrolling interest | | | — | | | | — | | | | — | | | | (321 | ) |
| Total net income available to common stockholders | | $ | 17,936 | | | $ | 13,017 | | | $ | 60,756 | | | $ | 19,155 | |
| Denominator: | | | | | | | | | | | | | | | | |
| Weighted average common shares outstanding | | | 210,510 | | | | 212,001 | | | | 211,317 | | | | 205,049 | |
| Effect of dilutive securities | | | | | | | | | | | | | | | | |
| Stock options | | | 8,400 | | | | 15,985 | | | | 9,406 | | | | 16,430 | |
| RSUs | | | 3,071 | | | | 4,874 | | | | 2,762 | | | | 5,659 | |
| Warrants | | | — | | | | 37 | | | | — | | | | 1,847 | |
| ESPP | | | 12 | | | | — | | | | — | | | | — | |
| Weighted average diluted shares | | | 221,993 | | | | 232,897 | | | | 223,485 | | | | 228,985 | |
| | | | | | | | | | | | | | | | | |
| Basic net income per share available to common stockholders | | $ | 0.09 | | | $ | 0.06 | | | $ | 0.29 | | | $ | 0.09 | |
| Diluted net income per share available to common stockholders | | $ | 0.08 | | | $ | 0.06 | | | $ | 0.27 | | | $ | 0.08 | |
|