Note 2 - Revenue Recognition |
3 Months Ended | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Mar. 31, 2026 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Notes to Financial Statements | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Revenue from Contract with Customer [Text Block] |
Revenues are recognized when control of the promised goods or services are transferred to the customer, in an amount that reflects the consideration that the Company expects to be entitled to in exchange for those goods or services. The Company generates all of its revenue from contracts with customers. Additionally, contract amounts represent the full amount of the transaction price as agreed upon with the customer at the time of order, resulting in a single performance obligation in most cases. In the case of a single order containing multiple upfits, the transaction price may represent multiple performance obligations.
Disaggregation of Revenue The following table provides information about disaggregated revenue by customer type and timing of revenue recognition, and includes a reconciliation of the disaggregated revenue with reportable segments. Revenue by customer type was as follows:
Revenue by timing of revenue recognition was as follows:
Contract Balances The following table shows the changes in the Company’s contract liabilities during the three months ended March 31, 2026 and 2025, respectively:
The Company receives payments from customers based upon contractual billing schedules. Contract assets include amounts related to the contractual right to consideration for completed performance obligations not yet invoiced. There were no contract assets as of March 31, 2026 or 2025. Contract liabilities include payments received in advance of performance under the contract, variable freight allowances which are refunded to the customer, and rebates paid to distributors under the Company's municipal rebate program, and are realized with the associated revenue recognized under the contract. Contract liabilities related to payments received in advance of performance under the contract are included in Accounts Payable on the Condensed Consolidated Balance Sheets. The Company recognized revenue of $645 and $581 during the three months ended March 31, 2026 and 2025, respectively, which was included in contract liabilities at the beginning of each period. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||