| Comprehensive Income (Loss) Note [Text Block] |
Accumulated Comprehensive Income (Loss) A summary of the components of Accumulated other comprehensive income (loss) is as follows (in thousands): | | | | | | | | | | | | | | | | | | | | | | Three months ended June 30, 2026 | | Foreign Currency Translation | | Net Unrealized Gain (Loss) on Available-for-Sale Securities | | Total | | Balance as of April 1, 2026 | | $ | (557) | | | $ | (136) | | | $ | (693) | | | Other comprehensive loss | | (979) | | | (946) | | | (1,925) | | | Balance as of June 30, 2026 | | $ | (1,536) | | | $ | (1,082) | | | $ | (2,618) | | | | | | | | | | Three months ended June 30, 2025 | | Foreign Currency Translation | | Net Unrealized Gain on Available-for-Sale Securities | | Total | | Balance as of April 1, 2025 | | $ | (1,761) | | | $ | 1,046 | | | $ | (715) | | | Other comprehensive income | | 3,202 | | | 170 | | | 3,372 | | | Balance as of June 30, 2025 | | $ | 1,441 | | | $ | 1,216 | | | $ | 2,657 | | | | | | | | | | Six Months Ended June 30, 2026 | | Foreign Currency Translation | | Net Unrealized Gain (Loss) on Available-for-Sale Securities | | Total | | Balance as of January 1, 2026 | | $ | 720 | | | $ | 1,377 | | | $ | 2,097 | | | Other comprehensive loss | | (2,256) | | | (2,459) | | | (4,715) | | | Balance as of June 30, 2026 | | $ | (1,536) | | | $ | (1,082) | | | $ | (2,618) | | | | | | | | | | Six Months Ended June 30, 2025 | | Foreign Currency Translation | | Net Unrealized Gain on Available-for-Sale Securities | | Total | | Balance as of January 1, 2025 | | $ | (3,113) | | | $ | 501 | | | $ | (2,612) | | | Other comprehensive income | | 4,554 | | | 715 | | | 5,269 | | | Balance as of June 30, 2025 | | $ | 1,441 | | | $ | 1,216 | | | $ | 2,657 | |
|