XML 61 R47.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Note 2 - Summary of Significant Accounting Policies (Details Textual) shares in Thousands, $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2023 USD ($) shares | Dec. 31, 2022 USD ($) shares | Dec. 31, 2021 USD ($) shares
Book Overdrafts | $ 1.8 | $ 0.6 |
Workers' Compensation Liability | 2.2 | 1.6 |
Accrued Bonuses, Current | 5.2 | 8.0 |
Sales and Excise Tax Payable, Current | 5.3 | 4.4 |
Realized Gain (Loss), Foreign Currency Transaction, before Tax | $ 0.4 | $ 0.5 | $ (0.5)
Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares) | shares | 0 | 0 | 0
Number of Customers with Receivable Balance in Excess of Ten Percent of Receivables | 1 | 1 |
Accrued Liability [Member] |  |  |
Workers' Compensation Liability, Current | $ 1.3 | $ 0.5 |
Other Long-term Liabilities [Member] |  |  |
Workers' Compensation Liability, Noncurrent | $ 0.9 | $ 1.1 |
Minimum [Member] |  |  |
Finite-Lived Intangible Asset, Useful Life (Year) | 10 years |  |
Maximum [Member] |  |  |
Finite-Lived Intangible Asset, Useful Life (Year) | 21 years |  |
Land Improvements [Member] | Minimum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 15 years |  |
Land Improvements [Member] | Maximum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 30 years |  |
Building [Member] | Minimum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 20 years |  |
Building [Member] | Maximum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 40 years |  |
Leasehold Improvements [Member] | Minimum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 5 years |  |
Leasehold Improvements [Member] | Maximum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 30 years |  |
Machinery and Equipment [Member] | Minimum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 3 years |  |
Machinery and Equipment [Member] | Maximum [Member] |  |  |
Property, Plant and Equipment, Useful Life (Year) | 30 years |  |

X
- Definition Outstanding checks in excess of funds on deposit that are shown in account payable. + References No definition available. + Details
Name: | nwpx_BookOverdrafts
Namespace Prefix: | nwpx_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Number of customers with balances in excess of 10% of total accounts receivable. + References No definition available. + Details
Name: | nwpx_NumberOfCustomersWithReceivableBalanceInExcessOfTenPercentOfReceivables
Namespace Prefix: | nwpx_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Carrying value as of the balance sheet date of obligations incurred and payable for incentive compensation awarded to employees and directors or earned by them based on the terms of one or more relevant arrangements. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.20) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_AccruedBonusesCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 260 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1 + Details
Name: | us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | duration

X
- Definition Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount, before tax, of realized gain (loss) from foreign currency transaction. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Topic 946 -SubTopic 830 -Name Accounting Standards Codification -Section 55 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 946 -SubTopic 220 -Name Accounting Standards Codification -Section 45 -Paragraph 6 -Subparagraph (a)(2) -Publisher FASB -URI https://asc.fasb.org//1943274/2147483581/946-220-45-6 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 946 -SubTopic 220 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.6-07(7)(a)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1 Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 20 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147481956/830-20-45-1 Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147481926/830-20-50-1 + Details
Name: | us-gaap_ForeignCurrencyTransactionGainLossRealized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment. + References No definition available. + Details
Name: | us-gaap_PropertyPlantAndEquipmentUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition Carrying value as of the balance sheet date of liabilities incurred through that date and payable for statutory sales and use taxes, including value added tax. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(a)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_SalesAndExciseTaxPayableCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.20) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_WorkersCompensationLiabilityCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(20)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(24)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 942 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(15)(5)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1 + Details
Name: | us-gaap_WorkersCompensationLiabilityCurrentAndNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Carrying value as of the balance sheet date of obligations and payables pertaining to claims incurred of a workers compensation nature. Used to reflect the noncurrent portion of the liabilities (due beyond one year; or beyond one operating cycle if longer). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.24) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_WorkersCompensationLiabilityNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=nwpx_AccruedLiabilityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=nwpx_OtherLongtermLiabilitiesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LandImprovementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_LeaseholdImprovementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |