 | us-gaap:ProductLiabilityContingencyDescription | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyManagementAssessmentProcess | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyAccrualAssumptions | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyCircumstancesImpactingPrecisionOfEstimate | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyFactorsChangingEstimate | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyLossInestimableStatement | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:LossContingencyAccrualProductLiabilityNetAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:LossContingencyAccrualProductLiabilityDueInRemainderOfFiscalYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:LossContingencyAccrualProductLiabilityNetRollingMaturityAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:LossContingencyAccrualProductLiabilityNetExplanationOfMaterialChangeInAccrual | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:LossContingencyAccrualProductLiabilityMaterialComponentsAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyAccrualDiscountRate | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyAccrualPresentValue | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyIndicationAccrualMayChange | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyLossExposureNotAccruedDescription | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyLossExposureNotAccruedThirdPartyRecoveryCommentary | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyLossExposureInExcessOfAccrualBestEstimate | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyUnassertedClaims | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyUncertaintiesFromJointAndSeveralLiability | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyUncertaintiesFromInsurance | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyTimeFrameOfDisbursements | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyThirdPartyRecovery | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyThirdPartyRecoveryPercentage | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:ProductLiabilityContingencyTable | all | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyDescription | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyManagementAssessmentProcess | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyAccrualAssumptions | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyCircumstancesImpactingPrecisionOfEstimate | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyFactorsChangingEstimate | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyLossInestimableStatement | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:LossContingencyAccrualProductLiabilityNetAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:LossContingencyAccrualProductLiabilityDueInRemainderOfFiscalYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:LossContingencyAccrualProductLiabilityNetRollingMaturityAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:LossContingencyAccrualProductLiabilityNetExplanationOfMaterialChangeInAccrual | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:LossContingencyAccrualProductLiabilityMaterialComponentsAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyAccrualDiscountRate | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyAccrualPresentValue | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyIndicationAccrualMayChange | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyLossExposureNotAccruedDescription | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyLossExposureNotAccruedThirdPartyRecoveryCommentary | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyLossExposureInExcessOfAccrualBestEstimate | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyUnassertedClaims | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyUncertaintiesFromJointAndSeveralLiability | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyUncertaintiesFromInsurance | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyTimeFrameOfDisbursements | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyThirdPartyRecovery | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |
 | us-gaap:ProductLiabilityContingencyThirdPartyRecoveryPercentage | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesProductLiabilityContingencyTable |