Stock Options and Restricted Stock - Summary of Activity for Stock Option Programs (Detail) - $ / shares |
12 Months Ended | |||||||
|---|---|---|---|---|---|---|---|---|
Dec. 31, 2025 |
Dec. 31, 2024 |
Dec. 31, 2023 |
||||||
| Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||||||
| Number of options beginning balance | 913,909 | 959,522 | 1,061,849 | |||||
| Granted | 0 | 0 | 0 | |||||
| Cancelled | (33,770) | (4,748) | (33,382) | |||||
| Exercised | [1] | (82,081) | (40,865) | (68,945) | ||||
| Number of options ending balance | 798,058 | [2] | 913,909 | 959,522 | ||||
| Options exercisable | 798,058 | 829,286 | 697,647 | |||||
| Exercise price per share, lower range limit beginning balance | $ 2.14 | $ 2.14 | $ 2.14 | |||||
| Exercise price per share, upper range limit beginning balance | 9.38 | 9.38 | 9.38 | |||||
| Exercise price per share, granted | 0 | 0 | 0 | |||||
| Exercise price per share, lower range limit ending balance | 2.14 | [2] | 2.14 | 2.14 | ||||
| Exercise price per share, upper range limit ending balance | 9.38 | [2] | 9.38 | 9.38 | ||||
| Exercise price per share, option exercisable lower range limit | 2.14 | 2.14 | 2.14 | |||||
| Exercise price per share, option exercisable upper range limit | 9.38 | 9.38 | 9.38 | |||||
| Weighted average exercise price, beginning balance | 6.52 | 6.51 | 6.51 | |||||
| Weighted average exercise price, granted | 0 | 0 | 0 | |||||
| Weighted average exercise price, cancelled | 7.37 | 6.15 | 6.8 | |||||
| Weighted average exercise price, exercised | [1] | 6.29 | 6.35 | 6.44 | ||||
| Weighted average exercise price, ending balance | 6.5 | [2] | 6.52 | 6.51 | ||||
| Weighted average exercise price, options exercisable | 6.5 | 6.53 | 6.51 | |||||
| Minimum [Member] | ||||||||
| Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||||||
| Exercise price per share, cancelled | 4.89 | 4.89 | 4.89 | |||||
| Exercise price per share, exercised | [1] | 4.89 | 4.89 | 4.89 | ||||
| Maximum [Member] | ||||||||
| Share-based Compensation Arrangement by Share-based Payment Award [Line Items] | ||||||||
| Exercise price per share, cancelled | 9.38 | 7.25 | 9.38 | |||||
| Exercise price per share, exercised | [1] | $ 7.25 | $ 7.25 | $ 7.25 | ||||
| ||||||||
| X | ||||||||||
- Definition Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Exercise Price Range Lower Range Limit No definition available.
|
| X | ||||||||||
- Definition Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Exercise Price Range Upper Range Limit No definition available.
|
| X | ||||||||||
- Definition Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Exercise Price Range Lower Range Limit No definition available.
|
| X | ||||||||||
- Definition Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Exercise Price Range Upper Range Limit No definition available.
|
| X | ||||||||||
- Definition Share based compensation arrangements by share based payment award options exercises in period exercise price. No definition available.
|
| X | ||||||||||
- Definition Share based compensation arrangements by share based payment award options expirations in period exercise price. No definition available.
|
| X | ||||||||||
- Definition Share based compensation arrangements by share based payment award options grants in period exercise price. No definition available.
|
| X | ||||||||||
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Gross number of share options (or share units) granted during the period. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Number of options outstanding, including both vested and non-vested options. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Weighted average price at which option holders acquired shares when converting their stock options into shares. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Weighted average price at which grantees could have acquired the underlying shares with respect to stock options of the plan that expired. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Number of share options (or share units) exercised during the current period. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef
|
| X | ||||||||||
- Details
|
| X | ||||||||||
- Details
|