Note 11 - Segment Information - Schedule of Segment Reporting Information, by Segment (Details) - USD ($) $ in Thousands |
3 Months Ended | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
Jun. 30, 2026 |
Jun. 30, 2025 |
|||||||||||
| Revenue (a): | $ 60,138 | $ 59,543 | ||||||||||
| Depreciation in cost of revenue | 745 | 810 | ||||||||||
| Total segment cost of revenue | 21,126 | 22,604 | ||||||||||
| Gross Profit (c) | 39,012 | 36,939 | ||||||||||
| Operating expense | 31,981 | 33,875 | ||||||||||
| Operating income | 7,031 | 3,064 | ||||||||||
| Non-operating expense, net | 2,678 | (3,948) | ||||||||||
| Operating Segments [Member] | Sterilization and Disinfection Control [Member] | ||||||||||||
| Revenue (a): | [1],[2],[3] | 24,505 | 25,410 | |||||||||
| Depreciation in cost of revenue | 437 | 450 | ||||||||||
| Amortization in cost of revenue | 121 | 139 | ||||||||||
| Other cost of revenue (b) | [4] | 6,788 | 6,655 | |||||||||
| Total segment cost of revenue | 7,346 | 7,244 | ||||||||||
| Gross Profit (c) | [5] | 17,159 | 18,166 | |||||||||
| Operating Segments [Member] | Biopharmaceutical Development [Member] | ||||||||||||
| Revenue (a): | [1],[2] | 12,059 | 11,486 | |||||||||
| Depreciation in cost of revenue | 78 | 89 | ||||||||||
| Amortization in cost of revenue | 379 | 372 | ||||||||||
| Other cost of revenue (b) | [4] | 4,020 | 4,719 | |||||||||
| Total segment cost of revenue | 4,477 | 5,180 | ||||||||||
| Gross Profit (c) | [5] | 7,582 | 6,306 | |||||||||
| Operating Segments [Member] | Calibration Solutions [Member] | ||||||||||||
| Revenue (a): | [1],[2] | 13,285 | 12,350 | |||||||||
| Depreciation in cost of revenue | 111 | 105 | ||||||||||
| Amortization in cost of revenue | 0 | 0 | ||||||||||
| Other cost of revenue (b) | [4] | 5,143 | 5,203 | |||||||||
| Total segment cost of revenue | 5,254 | 5,308 | ||||||||||
| Gross Profit (c) | [5] | 8,031 | 7,042 | |||||||||
| Operating Segments [Member] | Clinical Genomics [Member] | ||||||||||||
| Revenue (a): | [1],[2] | 10,289 | 10,297 | |||||||||
| Depreciation in cost of revenue | 119 | 166 | ||||||||||
| Amortization in cost of revenue | 191 | 191 | ||||||||||
| Other cost of revenue (b) | [4] | 3,739 | 4,515 | |||||||||
| Total segment cost of revenue | 4,049 | 4,872 | ||||||||||
| Gross Profit (c) | [5] | 6,240 | 5,425 | |||||||||
| Segment Reporting, Reconciling Item, Corporate Nonsegment [Member] | ||||||||||||
| Revenue (a): | [1],[2] | 60,138 | 59,543 | |||||||||
| Depreciation in cost of revenue | 745 | 810 | ||||||||||
| Amortization in cost of revenue | 691 | 702 | ||||||||||
| Other cost of revenue (b) | [4] | 19,690 | 21,092 | |||||||||
| Total segment cost of revenue | 21,126 | 22,604 | ||||||||||
| Gross Profit (c) | [5] | 39,012 | 36,939 | |||||||||
| Operating expense | 31,981 | 33,875 | ||||||||||
| Operating income | 7,031 | 3,064 | ||||||||||
| Non-operating expense, net | 2,678 | (3,948) | ||||||||||
| Earnings before income taxes | $ 4,353 | $ 7,012 | ||||||||||
| ||||||||||||
| X | ||||||||||
- Definition The amount of cost of revenue classified as "other". No definition available.
|
| X | ||||||||||
- Definition Amount of expense for allocation of cost of intangible asset over its useful life directly used in production of good and rendering of service. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of expense for allocation of cost of tangible asset over its useful life directly used in production of good and rendering of service. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition The aggregate cost of goods produced and sold and services rendered during the reporting period. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount after tax of income (loss) from continuing operations attributable to the parent. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business). Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition The net result for the period of deducting operating expenses from operating revenues. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|