XML 96 R82.htm IDEA: XBRL DOCUMENT v2.4.1.9
Schedule II - Valuation and Qualifying Accounts (Details) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Allowance for Bad Debts [Member]      
Movement in Valuation Allowances and Reserves [Roll Forward]      
Balance at beginning of period $ 1,384us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
$ 1,203us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
$ 1,183us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Charged to costs and expenses 517us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
421us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
530us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Charged to other accounts 0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Deductions (662)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
(240)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
(510)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Balance at end of period 1,239us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
1,384us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
1,203us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForDoubtfulAccountsMember
Sales Returns and Allowance [Member]      
Movement in Valuation Allowances and Reserves [Roll Forward]      
Balance at beginning of period 3,098us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
3,609us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
4,097us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
Charged to costs and expenses 252us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
398us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
317us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
Charged to other accounts 0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
Deductions (269)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
(909)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
(805)us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
Balance at end of period 3,081us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
3,098us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
3,609us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_AllowanceForSalesReturnsMember
Deferred Tax Asset Valuation Allowance [Member]      
Movement in Valuation Allowances and Reserves [Roll Forward]      
Balance at beginning of period 0us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Charged to costs and expenses 293us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesChargedToCostAndExpense
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Charged to other accounts 0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesChargedToOtherAccounts
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Deductions 0us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
0us-gaap_ValuationAllowancesAndReservesDeductions
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
Balance at end of period $ 293us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
$ 0us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember
$ 0us-gaap_ValuationAllowancesAndReservesBalance
/ us-gaap_ValuationAllowancesAndReservesTypeAxis
= us-gaap_ValuationAllowanceOfDeferredTaxAssetsMember