XML 86 R72.htm IDEA: XBRL DOCUMENT
v3.22.0.1

Note 14 - Revenue 1 (Details Textual) $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2021 USD ($) | Dec. 31, 2020 USD ($) | Dec. 31, 2019 USD ($)
Increase (Decrease) in Revenue from Contract with Customers, Including Assessed Tax | $ 2.0 | $ 2.2 | $ (1.2)
Contract with Customer, Liability, Revenue Recognized | 6.2 | $ 12.3 | $ 3.7
Revenue, Remaining Performance Obligation, Amount | $ 183.0 |  |
Revenue Benchmark [Member] | Customer Concentration Risk [Member] |  |  |
Number of Major Customers | 0 | 0 | 0
Revenue Benchmark [Member] | Customer Concentration Risk [Member] | One SPP Customer [Member] |  |  |
Concentration Risk, Percentage | 12.00% | 16.00% | 23.00%

X
- Definition The increase (decrease) during the period of the amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. + References No definition available. + Details
Name: | nwpx_IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax
Namespace Prefix: | nwpx_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Represents the number of major customers accounting for 10% or more of the specified concentration risk benchmark, which includes, but not limited to, sales revenue, accounts receivable, etc. + References No definition available. + Details
Name: | nwpx_NumberOfMajorCustomers
Namespace Prefix: | nwpx_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 42 -URI http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611 Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -URI http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 8 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130549-203045 + Details
Name: | us-gaap_ContractWithCustomerLiabilityRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of transaction price allocated to performance obligation that has not been recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=123351226&loc=SL49130556-203045 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=nwpx_OneSppCustomerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |