Note 9 - Commitments and Contingencies - Schedule of Lease Maturity (Details) - USD ($) |
6 Months Ended | ||
|---|---|---|---|
Jun. 30, 2026 |
Jun. 30, 2025 |
Dec. 31, 2025 |
|
| 2026 (remaining) | $ 691,599 | ||
| 2027 | 1,281,435 | ||
| 2028 | 680,015 | ||
| 2029 | 492,410 | ||
| 2030 | 554,920 | ||
| Total future minimum lease payments, undiscounted | 3,700,379 | ||
| Less: Amount representing interest | (408,977) | ||
| Operating Lease, Liability | 3,291,402 | ||
| Present value of future minimum lease payments – current | 1,129,492 | $ 849,599 | |
| Present value of future minimum lease payments – long-term | $ 2,161,910 | $ 1,024,878 | |
| Weighted-average remaining lease terms (in years) (Year) | 3 years 4 months 24 days | 3 years | |
| Weighted-average discount rate | 6.20% | 6.10% | |
| Cash paid for amounts included in the measurement of liabilities: Operating cash flows for operating leases | $ 646,790 | $ 541,531 | |
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year. Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef
|
| X | ||||||||||
- Definition Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Present value of lessee's discounted obligation for lease payments from operating lease. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Present value of lessee's discounted obligation for lease payments from operating lease, classified as current. Reference 1: http://www.xbrl.org/2003/role/exampleRef
|
| X | ||||||||||
- Definition Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use. Reference 1: http://www.xbrl.org/2003/role/disclosureRef
|
| X | ||||||||||
- Definition Weighted average discount rate for operating lease calculated at point in time. Reference 1: http://www.xbrl.org/2003/role/exampleRef
|
| X | ||||||||||
- Definition Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Reference 1: http://www.xbrl.org/2003/role/exampleRef
|