| Disaggregation of Revenue [Table Text Block] |
| | | Three Months Ended June 30, 2026 | |
| | | Sterilization and Disinfection Control | | | Biopharmaceutical Development | | | Calibration Solutions | | | Clinical Genomics | | | Total | |
| | | | | | | | | | | | | | | | | | | | | |
| Consumables | | $ | 21,925 | | | $ | 4,303 | | | $ | 810 | | | $ | 7,739 | | | $ | 34,777 | |
| Hardware and software | | | 96 | | | | 4,898 | | | | 7,681 | | | | 1,450 | | | | 14,125 | |
| Services | | | 2,484 | | | | 2,858 | | | | 4,794 | | | | 1,100 | | | | 11,236 | |
| Total revenue | | $ | 24,505 | | | $ | 12,059 | | | $ | 13,285 | | | $ | 10,289 | | | $ | 60,138 | |
| | | Three Months Ended June 30, 2025 | |
| | | Sterilization and Disinfection Control | | | Biopharmaceutical Development | | | Calibration Solutions | | | Clinical Genomics | | | Total | |
| | | | | | | | | | | | | | | | | | | | | |
| Consumables | | $ | 23,011 | | | $ | 3,836 | | | $ | 841 | | | $ | 8,085 | | | $ | 35,773 | |
| Hardware and software | | | 89 | | | | 4,288 | | | | 6,975 | | | | 1,217 | | | | 12,569 | |
| Services | | | 2,310 | | | | 3,362 | | | | 4,534 | | | | 995 | | | | 11,201 | |
| Total revenue | | $ | 25,410 | | | $ | 11,486 | | | $ | 12,350 | | | $ | 10,297 | | | $ | 59,543 | |
|
| Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] |
| Contract liabilities as of March 31, 2026 | | $ | 14,723 | |
| Prior year liabilities recognized in revenue during the three months ended June 30, 2026 | | | (3,917 | ) |
| Contract liabilities added during the three months ended June 30, 2026, net of revenue recognized | | | 3,717 | |
| Contract liabilities as of June 30, 2026 | | $ | 14,523 | |
|