|
Summary of Changes in Restructuring-Related Liabilities (Detail) (USD $) In Thousands, unless otherwise specified
|
12 Months Ended |
|
Dec. 31, 2014
|
Dec. 31, 2013
|
Dec. 31, 2012
|
| Restructuring Cost and Reserve [Line Items] |
|
|
|
| Costs Incurred |
$ 14,732us-gaap_RestructuringCharges |
$ 0us-gaap_RestructuringCharges |
$ 0us-gaap_RestructuringCharges |
| Accrued restructuring costs | Current accrued restructuring costs |
|
|
|
| Restructuring Cost and Reserve [Line Items] |
|
|
|
| Beginning Balance |
0us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Costs Incurred |
14,732us-gaap_RestructuringCharges / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Cash Payments |
(12,008)us-gaap_PaymentsForRestructuring / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Non-cash Settlements |
(441)us-gaap_RestructuringReserveSettledWithoutCash1 / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Adjustments and Other |
1us-gaap_RestructuringReserveAccrualAdjustment / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Ending Balance |
2,284us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember |
|
|
| Accrued restructuring costs | Current accrued restructuring costs | Severance and related employee benefits |
|
|
|
| Restructuring Cost and Reserve [Line Items] |
|
|
|
| Beginning Balance |
0us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Costs Incurred |
13,162us-gaap_RestructuringCharges / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Cash Payments |
(10,746)us-gaap_PaymentsForRestructuring / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Non-cash Settlements |
0us-gaap_RestructuringReserveSettledWithoutCash1 / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Adjustments and Other |
(201)us-gaap_RestructuringReserveAccrualAdjustment / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Ending Balance |
2,215us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_EmployeeSeveranceMember |
|
|
| Accrued restructuring costs | Current accrued restructuring costs | Contract termination costs |
|
|
|
| Restructuring Cost and Reserve [Line Items] |
|
|
|
| Beginning Balance |
0us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Costs Incurred |
1,159us-gaap_RestructuringCharges / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Cash Payments |
(960)us-gaap_PaymentsForRestructuring / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Non-cash Settlements |
(441)us-gaap_RestructuringReserveSettledWithoutCash1 / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Adjustments and Other |
242us-gaap_RestructuringReserveAccrualAdjustment / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Ending Balance |
0us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_ContractTerminationMember |
|
|
| Accrued restructuring costs | Current accrued restructuring costs | Other costs |
|
|
|
| Restructuring Cost and Reserve [Line Items] |
|
|
|
| Beginning Balance |
0us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|
| Costs Incurred |
411us-gaap_RestructuringCharges / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|
| Cash Payments |
(302)us-gaap_PaymentsForRestructuring / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|
| Non-cash Settlements |
0us-gaap_RestructuringReserveSettledWithoutCash1 / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|
| Adjustments and Other |
(40)us-gaap_RestructuringReserveAccrualAdjustment / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|
| Ending Balance |
$ 69us-gaap_RestructuringReserve / us-gaap_BalanceSheetLocationAxis = us-gaap_OtherCurrentLiabilitiesMember / us-gaap_InformationByFinancialStatementLineItemAxis = us-gaap_AccruedLiabilitiesMember / us-gaap_RestructuringCostAndReserveAxis = us-gaap_OtherRestructuringMember |
|
|