XML 37 R25.htm IDEA: XBRL DOCUMENT v3.25.1
Note 6 - Stock-based Compensation (Tables)
12 Months Ended
Dec. 31, 2024
Notes Tables  
Disclosure of Share-Based Compensation Arrangements by Share-Based Payment Award [Table Text Block]
   

Year ended December 31,

 
   

2024

   

2023

 

Stock options

  $ 640     $ 522  

Restricted stock

    58       6  

Total

  $ 698     $ 528  
Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]
   

Year ended December 31,

 
   

2024

   

2023

 

Risk-free interest rate

    4.3 %     4.1 %

Volatility factor

    58 %     57 %

Weighted average expected life (years)

    4.7       4.9  

Forfeiture rate

    10.0 %     10.0 %

Dividends

    0.0 %     0.0 %
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
Year ended December 31, 2024  
   

Number

of shares

   

Weighted

average

exercise

price

per share

   

Weighted

average

remaining

contractual

term

   

Aggregate

intrinsic

value

 

Shares under option – January 1

    1,250,595     $ 7.10                  

Options granted

    261,520       7.85                  

Options exercised

    (298,293 )     7.08                  

Options forfeited or expired

    (107,386 )     8.41                  

Shares under option – December 31

    1,106,436     $ 7.15       4.53     $ 741  

Vested and expected to vest - December 31

    1,003,942     $ 7.17       4.36     $ 674  
                                 

Options exercisable – December 31

    625,826     $ 7.18       3.18     $ 477  
Year ended December 31, 2023  
   

Number

of shares

   

Weighted

average

exercise

price

per share

 

Shares under option – January 1

    1,425,693     $ 6.72  

Options granted

    231,650       6.69  

Options exercised

    (254,393 )     5.83  

Options forfeited or expired

    (152,355 )     5.06  

Shares under option – December 31

    1,250,595     $ 7.10  
                 

Options exercisable – December 31

    789,209     $ 7.56  
Share-Based Payment Arrangement, Option, Exercise Price Range [Table Text Block]
       

Option outstanding

   

Options exercisable

 

Range of

exercise prices

 

Number of

outstanding

options

   

Weighted-

average

remaining

contractual

life

   

Weighted-

average

exercise

price

   

Number of

options

exercisable

   

Weighted-

average

exercise

price

 
$4.07 -

$6.51

    316,702       4.01     $ 5.68       235,589     $ 5.83  
$6.84 -

$6.97

    317,594       5.21       6.88       176,157       6.92  
$7.86 -

$7.86

    258,060       6.95       7.86       0       0  
$8.25 -

$9.85

    214,080       1.37       8.89       214,080       8.89  
                                             
$4.07 -

$9.85

    1,106,436       4.53     $ 7.15       625,826     $ 7.18