v3.26.1
Stockholders' Equity (Tables)
6 Months Ended
Jun. 30, 2026
Schedule of share repurchase program

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Three Months Ended

​

​

​

Six Months Ended

​

​

​

June 30,

​

​

​

June 30,

(In thousands, except share and per share data)

​

​

2026

​

​

2025

​

​

​

2026

​

​

2025

Number of shares repurchased

​

​

208,900

​

​

1,507,496

​

​

​

249,150

​

​

2,143,099

Total shares repurchased cost

​

$

5,284

​

$

16,704

​

​

$

6,357

​

$

26,772

Average total cost per repurchased share

​

$

25.29

​

$

11.08

​

​

$

25.51

​

$

12.49

Schedule of allocation of total stock-based compensation expense

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Three Months Ended

​

Six Months Ended

​

​

June 30, 

​

June 30, 

(In thousands)

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

Cost of revenue

​

$

112

​

$

101

​

$

202

​

$

200

Sales and marketing expenses

​

​

430

​

​

465

​

​

877

​

​

968

Research and development expenses

​

​

34

​

​

52

​

​

78

​

​

85

Reimbursement, general and administrative expenses

​

​

1,684

​

​

1,321

​

​

2,883

​

​

2,752

Total stock-based compensation expense

​

$

2,260

​

$

1,939

​

$

4,040

​

$

4,005

Schedule of stock option activity

​

​

​

​

​

​

​

​

​

​

​

​

​

  ​ ​ ​

​

​

Weighted-

​

Weighted-

​

​

​

​

​

​

​

Average

​

Average

​

Aggregate

​

​

Options

​

Exercise Price

​

Remaining

​

Intrinsic

(In thousands except options and per share data)

​

Outstanding

​

Per Share (1)

​

Contractual Life

​

Value (2)

Balance at December 31, 2025

​

225,448

​

$

43.87

​

1.8 years

​

$

316

Exercised

​

(11,884)

​

​

16.55

​

​

​

$

​

Cancelled/Expired

​

(15,003)

​

​

54.95

​

​

​

​

​

Balance at June 30, 2026

​

198,561

​

$

44.67

​

1.4 years

​

$

191

​

​

​

​

​

​

​

​

​

​

​

Options exercisable at June 30, 2026

​

198,561

​

$

44.67

​

1.4 years

​

$

191

​

(1)The exercise price of each option granted during the periods shown was equal to the market price of the underlying stock on the date of grant.
(2)The aggregate intrinsic value of options exercised represents the difference between the exercise price of the option and the closing stock price of our common stock on the date of exercise. The aggregate intrinsic value of options outstanding represents the difference between the exercise price of the option and the closing stock price of our common stock on the last trading day of the period.
Time-Based Restricted Stock Units  
Schedule of stock-settled restricted stock unit activity

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Weighted-

​

​

​

​

  ​ ​ ​

​

  ​ ​ ​

Average Grant

  ​ ​ ​

Aggregate

​

​

Units

​

Date Fair Value

​

Intrinsic

(In thousands except unit and per unit data)

​

Outstanding

​

Per Unit

​

Value (1)

Balance at December 31, 2025

​

718,621

​

$

13.92

​

$

20,840

Granted

​

284,660

​

​

27.50

​

​

​

Vested

​

(350,810)

​

​

13.25

​

​

​

Cancelled

​

(36,581)

​

​

16.37

​

​

​

Balance at June 30, 2026

​

615,890

​

$

20.44

​

$

18,341

​

(1)The aggregate intrinsic value of restricted stock units outstanding was based on our closing stock price on the last trading day of the period.
Performance-based stock-settled restricted stock units  
Schedule of stock-settled restricted stock unit activity

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Weighted-

​

​

​

​

  ​ ​ ​

​

  ​ ​ ​

Average Grant

  ​ ​ ​

Aggregate

​

​

PSUs

​

Date Fair Value

​

Intrinsic

(In thousands except unit and per unit data)

​

Outstanding

​

Per Unit

​

Value (1)

Balance at December 31, 2025

​

310,296

​

$

14.76

​

$

8,999

Granted

​

108,846

​

​

28.25

​

​

​

Adjusted

​

12,705

​

​

​

​

​

​

Vested

​

(95,377)

​

​

14.16

​

​

​

Balance at June 30, 2026

​

336,470

​

$

19.33

​

$

10,020

​

(1)The aggregate intrinsic value of PSUs outstanding was based on our closing stock price on the last trading day of the period.