 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOtherIncreasesDecreasesInPeriod | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPeriodIncreaseDecrease | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber | parent-child | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensation |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |
 | us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOtherIncreasesDecreasesInPeriod | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |
 | us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingPeriodIncreaseDecrease | domain-member | http://fasb.org/us-gaap/role/disclosure/CompensationRelatedCostsStockCompensationScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable |