Annual report [Section 13 and 15(d), not S-K Item 405]

Note 13 - Stockholders' Equity (Details Textual)

v3.25.1
Note 13 - Stockholders' Equity (Details Textual)
1 Months Ended 3 Months Ended 12 Months Ended 72 Months Ended
Dec. 19, 2024
shares
Dec. 18, 2024
Nov. 05, 2024
Oct. 03, 2024
USD ($)
Dec. 31, 2024
USD ($)
$ / shares
shares
May 31, 2024
USD ($)
$ / shares
shares
Aug. 31, 2023
USD ($)
$ / shares
shares
Jul. 31, 2023
USD ($)
$ / shares
shares
Mar. 31, 2025
shares
Dec. 31, 2024
USD ($)
$ / shares
shares
Sep. 30, 2024
USD ($)
shares
Jun. 30, 2024
USD ($)
shares
Mar. 31, 2024
USD ($)
shares
Dec. 31, 2023
USD ($)
$ / shares
shares
Sep. 30, 2023
USD ($)
shares
Jun. 30, 2023
USD ($)
shares
Mar. 31, 2023
USD ($)
shares
Dec. 31, 2024
USD ($)
$ / shares
shares
Dec. 31, 2023
USD ($)
$ / shares
shares
Dec. 31, 2019
shares
Dec. 31, 2024
USD ($)
$ / shares
shares
Aug. 01, 2023
Dec. 31, 2022
shares
Common Stock, Shares Authorized (in shares)         300,000,000         300,000,000       300,000,000       300,000,000 300,000,000   300,000,000    
Common Stock, Par or Stated Value Per Share (in dollars per share) | $ / shares         $ 0.001         $ 0.001       $ 0.001       $ 0.001 $ 0.001   $ 0.001    
Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares)                                   52,252          
Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation | $                                   $ 552,000 $ 1,092,000        
Stock Issued During Period, Shares, Issued for Services (in shares)                                   20,111          
Proceeds from Issuance of Common Stock | $                                   $ 5,014,000 $ 3,786,000        
Stock Issued During Period, Shares, Employee Stock Purchase Plans (in shares)                                   10,635 9,635        
Stock Issued During Period, Shares, Issued for Class Action Settlement (in shares)                                     23,468        
Proceeds from Issuance Or Sale Of Equity, Net | $                                   $ 7,306,000 $ 22,947,000        
Number of Accredited Investors   8                                          
Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period (in shares)                                   987,488 255,542        
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period (in shares)                                   (0) (0)        
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number (in shares)         0         0       0       0 0   0   49,713
The 2019 Stock Incentive Plan [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized (in shares)                                       1,400,000      
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                                       3 years      
Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period (in shares)                                         1,133,687    
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant (in shares)         821,837         821,837               821,837     821,837    
Supplemental Retention Program [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)       6 months                                      
Minimum [Member] | Supplemental Retention Program [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Settlement Value | $       $ 0                                      
Maximum [Member] | The 2019 Stock Incentive Plan [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period (Year)                                       10 years      
Maximum [Member] | Supplemental Retention Program [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Settlement Value | $       $ 925,014                                      
May 2024 Public Offering Warrants [Member]                                              
Stock Issued During Period, Shares, New Issues (in shares)           1,006,250                                  
Shares Issued, Price Per Share (in dollars per share) | $ / shares           $ 7.8                                  
Class of Warrant or Right, Number of Securities Called by Each Warrant or Right (in shares)           1                                  
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares           $ 0.2                                  
Warrants and Rights Outstanding | $           $ 3,081,000                                  
Public Offering Warrant [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares               $ 27.5                              
Warrants and Rights Outstanding | $               $ 388,000                              
Class of Warrant or Right, Number of Securities Called by Warrants or Rights (in shares)               18,193                              
Sale of Stock, Warrants, Commission Percent               2.00%                              
Warrants and Rights Outstanding, Term (Year)               5 years                              
Public Offering Warrant [Member] | Measurement Input, Share Price [Member]                                              
Warrants and Rights Outstanding, Measurement Input               30.8                              
Public Offering Warrant [Member] | Measurement Input, Price Volatility [Member]                                              
Warrants and Rights Outstanding, Measurement Input               0.819                              
Public Offering Warrant [Member] | Measurement Input, Discount Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input               0.0381                              
Public Offering Warrant [Member] | Measurement Input, Expected Dividend Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input               0                              
Yulho SPA Underwriter Warrant [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares             $ 25                                
Warrants and Rights Outstanding | $             $ 181,000                                
Class of Warrant or Right, Number of Securities Called by Warrants or Rights (in shares)             10,288                                
Warrants and Rights Outstanding, Term (Year)             5 years                                
Yulho SPA Underwriter Warrant [Member] | Measurement Input, Share Price [Member]                                              
Warrants and Rights Outstanding, Measurement Input             25.4                                
Yulho SPA Underwriter Warrant [Member] | Measurement Input, Price Volatility [Member]                                              
Warrants and Rights Outstanding, Measurement Input             0.823                                
Yulho SPA Underwriter Warrant [Member] | Measurement Input, Discount Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input             0.0381                                
Yulho SPA Underwriter Warrant [Member] | Measurement Input, Expected Dividend Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input                                           0  
May 2024 Warrants [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares           $ 7.8                                  
Warrants and Rights Outstanding | $           $ 6,666,000                                  
Class of Warrant or Right, Number of Securities Called by Warrants or Rights (in shares)           1,006,250                                  
Warrants and Rights Outstanding, Term (Year)           5 years                                  
May 2024 Warrants [Member] | Underwriter [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares           $ 9.75                                  
Warrants and Rights Outstanding | $           $ 245,000                                  
Class of Warrant or Right, Number of Securities Called by Warrants or Rights (in shares)           39,125                                  
Sale of Stock, Warrants, Commission Percent           2.00%                                  
Warrants and Rights Outstanding, Term (Year)           5 years                                  
May 2024 Warrants [Member] | Measurement Input, Share Price [Member]                                              
Warrants and Rights Outstanding, Measurement Input           9.42                                  
May 2024 Warrants [Member] | Measurement Input, Share Price [Member] | Underwriter [Member]                                              
Warrants and Rights Outstanding, Measurement Input           9.42                                  
May 2024 Warrants [Member] | Measurement Input, Price Volatility [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0.803                                  
May 2024 Warrants [Member] | Measurement Input, Price Volatility [Member] | Underwriter [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0.803                                  
May 2024 Warrants [Member] | Measurement Input, Discount Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0.0446                                  
May 2024 Warrants [Member] | Measurement Input, Discount Rate [Member] | Underwriter [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0.0446                                  
May 2024 Warrants [Member] | Measurement Input, Expected Dividend Rate [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0                                  
May 2024 Warrants [Member] | Measurement Input, Expected Dividend Rate [Member] | Underwriter [Member]                                              
Warrants and Rights Outstanding, Measurement Input           0                                  
May 2024 Warrants [Member] | Measurement Input, Expected Term [Member]                                              
Warrants and Rights Outstanding, Term (Year)           5 years                                  
May 2024 Warrants [Member] | Measurement Input, Expected Term [Member] | Underwriter [Member]                                              
Warrants and Rights Outstanding, Measurement Input           5                                  
Private Placement Warrants [Member]                                              
Class of Warrant or Right, Number of Securities Called by Warrants or Rights (in shares)         750,000         750,000               750,000     750,000    
Warrants and Rights Outstanding, Term (Year)         5 years         5 years               5 years     5 years    
Number of Accredited Investors         8                                    
Private Placement Warrants [Member] | Minimum [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares         $ 1.92         $ 1.92               $ 1.92     $ 1.92    
Private Placement Warrants [Member] | Maximum [Member]                                              
Class of Warrant or Right, Exercise Price of Warrants or Rights (in dollars per share) | $ / shares         $ 1.93         $ 1.93               $ 1.93     $ 1.93    
ATM [Member]                                              
Stock Issued During Period, Shares, New Issues (in shares)                                   1,195,034 162,215        
Proceeds from Issuance of Common Stock | $                                   $ 5,014,000 $ 3,786,000        
July 2023 Public Offering [Member]                                              
Stock Issued During Period, Shares, New Issues (in shares)               909,650                              
Proceeds from Issuance of Common Stock | $               $ 18,318,000                              
Yulho Offering [Member]                                              
Stock Issued During Period, Shares, New Issues (in shares)             227,273                                
Proceeds from Issuance of Common Stock | $             $ 4,629,000                                
May 2024 Public Offering [Member]                                              
Proceeds from Issuance or Sale of Equity | $           $ 7,306,000                                  
Proceeds from Issuance Or Sale Of Equity, Net | $           $ 4,225,000                                  
Restricted Stock Units (RSUs) [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                       3 years 3 years 3 years 3 years 12 months 3 years            
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                     20,111 6,248 5,574 200,398 6,812 10,227 3,207 828,671 231,778        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                     $ 150,000 $ 40,000 $ 60,000 $ 3,422,275 $ 155,000 $ 225,000 $ 70,000            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period, Number of Installments                       3 3 6 3 4 3            
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Vested | $                                   $ 1,462,000          
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding | $         $ 3,830,000         $ 3,830,000               $ 3,830,000     $ 3,830,000    
Restricted Stock Units (RSUs) [Member] | Additional RSU's Vesting in Three Years [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                           3 years                  
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                           2,631                  
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                           $ 41,513                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period, Number of Installments                           3                  
Restricted Stock Units (RSUs) [Member] | RSU's Vesting in Six Months [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                           3,289                  
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                           $ 51,891                  
Restricted Stock Units (RSUs) [Member] | The 2019 Stock Incentive Plan [Member]                                              
Shares Reclassified to Liabilities (in shares)         311,850         311,850               311,850     311,850    
Restricted Stock Units (RSUs) [Member] | Long-term Incentive Plan [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized (in shares) 474,454                                            
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year) 6 months                                            
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Requisite Service Period (Year) 3 years                                            
Stock Options and Restricted Stock Units [Member]                                              
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount | $         $ 3,830,000         $ 3,830,000               $ 3,830,000     $ 3,830,000    
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)                                   2 years 2 months 12 days          
Stock Price Hurdle RSU's [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period (Year)                           3 years                  
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                           3 years                  
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number (in shares)         100,772         100,772       23,764       100,772 23,764   100,772    
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                           23,764                  
Performance Shares [Member] | Long-term Incentive Plan [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized (in shares) 158,817                                            
Performance Shares [Member] | Long-term Incentive Plan [Member] | Share-Based Payment Arrangement, Tranche One [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year) 1 year                                            
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage 50.00%                                            
Performance Shares [Member] | Long-term Incentive Plan [Member] | Share-Based Payment Arrangement, Tranche Two [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Expiration Period (Year) 3 years                                            
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage 50.00%                                            
Performance Shares [Member] | Long-term Incentive Plan [Member] | Peer Group 25th Percentile Tranche [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage 50.00%                                            
Performance Shares [Member] | Long-term Incentive Plan [Member] | Peer Group 50th Percentile Tranche [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage 100.00%                                            
Performance Shares [Member] | Long-term Incentive Plan [Member] | Peer Group 75th Percentile Tranche [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Rights, Percentage 200.00%                                            
Management and Employees [Member]                                              
Stock Issued During Period, Shares, Restricted Stock Award, Gross (in shares)                                   78,564 73,141        
Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares)                                     46,960        
Management and Employees [Member] | Reissued Treasury Stock [Member]                                              
Stock Issued During Period, Shares, Restricted Stock Award, Gross (in shares)                                   44,261 25,532        
Board Members [Member]                                              
Stock Issued During Period, Shares, Restricted Stock Award, Gross (in shares)                                   10,680 8,534        
Board Members [Member] | Restricted Stock Units (RSUs) [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                     9 months                        
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                     18,579                        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                     $ 83,000                        
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period, Number of Installments                     4                        
Director [Member]                                              
Stock Issued During Period, Shares, Issued for Services (in shares)                                   9,428 5,212        
Former Board Member [Member]                                              
Stock Issued During Period, Shares, Issued for Services (in shares)                                     789        
Former Employee [Member]                                              
Stock Issued During Period, Shares, New Issues (in shares)                                   6,607          
Employee [Member] | Restricted Stock Units (RSUs) [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                     6,607                        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                     $ 28,000                        
Employee One [Member] | Restricted Stock Units (RSUs) [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                   3 years                          
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                   3,968                          
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                   $ 10,000                          
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period, Number of Installments                   3                          
Employee Two [Member] | Restricted Stock Units (RSUs) [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Year)                   3 years                          
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                   177,763                          
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Fair Value | $                   $ 311,000                          
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period, Number of Installments                   6                          
Qualified Employees [Member] | Restricted Stock Units (RSUs) [Member] | Supplemental Retention Program [Member] | Subsequent Event [Member]                                              
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                 118,469                            
Reverse Stock Split [Member]                                              
Stockholders' Equity Note, Stock Split, Conversion Ratio     20