XML 23 R12.htm IDEA: XBRL DOCUMENT
v3.25.2

Net Income Per Common Share | 6 Months Ended
--- | ---
Jun. 30, 2025
Net Income Per Common Share |
Net Income Per Common Share | 4. Net Income Per Common Share Basic earnings per common share is calculated by dividing net income available to common stockholders by the weighted average number of common shares outstanding for the period. Diluted earnings per common share reflects the assumed conversion of all potentially dilutive securities, consisting of restricted stock awards, for which the estimated fair value exceeds the exercise price, less shares which could have been purchased with the related proceeds, unless anti-dilutive. For employee equity awards, repurchased shares are also included for any unearned compensation adjusted for tax. The table below reflects the calculation of the weighted average number of common shares outstanding, on an as if converted basis, used in computing basic and diluted earnings per common share. ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended | ​ | Six Months Ended
​ | ​ | June 30, | ​ | June 30,
​ |  | 2025 |  | 2024 |  | 2025 |  | 2024
Denominator: |  |  |  |  |  |  |  |
Basic weighted average shares outstanding |  | 27,996 |  | 29,285 |  | 28,136 |  | 29,372
Effect of dilutive stock options and restricted stock |  | 138 |  | 130 |  | 165 |  | 155
Diluted weighted average shares outstanding |  | 28,134 |  | 29,415 |  | 28,301 |  | 29,527
​ Diluted weighted average shares outstanding excludes the incremental effect of unvested restricted stock in accordance with the treasury stock method. For both of the three-month periods ended June 30, 2025 and 2024, approximately nil, and for the six-month periods ended June 30, 2025 and 2024, approximately 30 and 39, respectively, of the Company’s restricted stock awards outstanding were excluded from the calculation of diluted earnings per share as their inclusion would have been anti-dilutive. These restricted stock awards could be dilutive in the future.

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

X
- Definition The entire disclosure for earnings per share. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/260/tableOfContent Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-2 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482662/260-10-50-3 + Details
Name: | us-gaap_EarningsPerShareTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration