CONSOLIDATED STATEMENTS OF CHANGES IN STOCKHOLDERS' EQUITY (USD $) In Thousands, except Share data, unless otherwise specified
|
Total
|
Common Stock [Member]
|
Additional Paid-in Capital [Member]
|
Accumulated Other Comprehensive Income [Member]
|
Retained Earnings (Accumulated Deficit)
|
Balance at Dec. 31, 2011 |
$ 250,855us-gaap_StockholdersEquity |
$ 41us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
$ 297,104us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
$ 984us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
$ (47,274)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance (in shares) at Dec. 31, 2011 |
|
40,968,957us-gaap_CommonStockSharesOutstanding / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
Exercise of stock options (in shares) |
|
486,766us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Exercise of stock options |
3,517us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised |
1us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
3,516us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuances of restricted stock, net of shares withheld for taxes (in shares) |
|
340,216us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuances of restricted stock, net of shares withheld for taxes |
(3,189)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
(3,189)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Stock compensation |
9,915us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
9,915us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Repurchase and retirement of common stock (in shares) |
|
(1,006,303)us-gaap_StockRepurchasedAndRetiredDuringPeriodShares / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Repurchase and retirement of common stock |
(20,916)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue |
(1)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
(20,915)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuance of common shares under ESPP (in shares) |
|
35,296us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuance of common shares under ESPP |
504us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
504us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Net income |
12,407us-gaap_NetIncomeLoss |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
12,407us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Tax benefits associated with options |
6,457us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
6,457us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Foreign currency translation adjustments |
144us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
144us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Other |
(27)us-gaap_StockholdersEquityOther |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
(27)us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance at Dec. 31, 2012 |
259,667us-gaap_StockholdersEquity |
41us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
293,392us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
1,101us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
(34,867)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance (in shares) at Dec. 31, 2012 |
|
40,824,932us-gaap_CommonStockSharesOutstanding / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
Exercise of stock options (in shares) |
|
834,581us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Exercise of stock options |
7,562us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised |
1us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
7,561us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuances of restricted stock, net of shares withheld for taxes (in shares) |
|
264,555us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuances of restricted stock, net of shares withheld for taxes |
(2,352)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
(2,352)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Stock compensation |
9,214us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
9,214us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Repurchase and retirement of common stock (in shares) |
|
(852,483)us-gaap_StockRepurchasedAndRetiredDuringPeriodShares / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Repurchase and retirement of common stock |
(14,556)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue |
(1)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
(14,555)us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockRepurchasedAndRetiredDuringPeriodValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuance of common shares under ESPP (in shares) |
|
71,226us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuance of common shares under ESPP |
1,102us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
1,102us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Net income |
7,096us-gaap_NetIncomeLoss |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
7,096us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Tax benefits associated with options |
2,569us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
2,569us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Foreign currency translation adjustments |
(681)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
(681)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Other (in shares) |
|
(9,158)us-gaap_StockholdersEquityOtherShares / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Other |
(1)us-gaap_StockholdersEquityOther |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
(1)us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance at Dec. 31, 2013 |
269,620us-gaap_StockholdersEquity |
41us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
296,931us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
419us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
(27,771)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance (in shares) at Dec. 31, 2013 |
41,133,653us-gaap_CommonStockSharesOutstanding |
41,133,653us-gaap_CommonStockSharesOutstanding / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Increase (Decrease) in Stockholders' Equity [Roll Forward] |
|
|
|
|
|
Exercise of stock options (in shares) |
|
346,053us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Exercise of stock options |
3,646us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised |
1us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
3,645us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuances of restricted stock, net of shares withheld for taxes (in shares) |
|
251,377us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuances of restricted stock, net of shares withheld for taxes |
(2,093)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
(2,093)us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Stock compensation |
9,544us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
9,544us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Issuance of common shares under ESPP (in shares) |
|
74,879us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Issuance of common shares under ESPP |
1,110us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
1,110us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Net income |
39,043us-gaap_NetIncomeLoss |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
39,043us-gaap_NetIncomeLoss / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Tax benefits associated with options |
287us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
287us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Foreign currency translation adjustments |
(1,146)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
(1,146)us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Other (in shares) |
|
0us-gaap_StockholdersEquityOtherShares / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|
Other |
(17)us-gaap_StockholdersEquityOther |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
(17)us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
0us-gaap_StockholdersEquityOther / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance at Dec. 31, 2014 |
$ 319,994us-gaap_StockholdersEquity |
$ 42us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
$ 309,424us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AdditionalPaidInCapitalMember |
$ (744)us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_AccumulatedOtherComprehensiveIncomeMember |
$ 11,272us-gaap_StockholdersEquity / us-gaap_StatementEquityComponentsAxis = us-gaap_RetainedEarningsMember |
Balance (in shares) at Dec. 31, 2014 |
41,805,962us-gaap_CommonStockSharesOutstanding |
41,805,962us-gaap_CommonStockSharesOutstanding / us-gaap_StatementEquityComponentsAxis = us-gaap_CommonStockMember |
|
|
|