XML 38 R28.htm IDEA: XBRL DOCUMENT
v3.26.1

Note 7 - Earnings Per Share (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2026
Notes Tables |
Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] |
|  | Three Months Ended |  |  | Six Months Ended |
|  | June 30, |  |  | June 30, |
|  | 2026 |  |  | 2025 |  |  | 2026 |  |  | 2025 |
Basic weighted-average shares |  |  | 31,181,000 |  |  |  | 30,868,000 |  |  |  | 31,137,000 |  |  |  | 30,796,000 |
Unexercised options and unvested RSUs |  |  | — |  |  |  | — |  |  |  | — |  |  |  | — |
Diluted weighted-average shares |  |  | 31,181,000 |  |  |  | 30,868,000 |  |  |  | 31,137,000 |  |  |  | 30,796,000 |

X
- Definition Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 + Details
Name: | us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_TableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration