Annual report pursuant to Section 13 and 15(d)

Equity Incentive Plans and Stock Based Compensation - Stock Option Activity Under Equity Incentive Plan (Detail)

v2.4.1.9
Equity Incentive Plans and Stock Based Compensation - Stock Option Activity Under Equity Incentive Plan (Detail) (USD $)
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Shares Available for Grant, Beginning Balance 175,236us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant 498,411us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant 1,077,784us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
Shares Available for Grant, Additional shares reserved 7,250,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized 1,250,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized 1,250,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
Shares Available for Grant, Options granted (1,895,250)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod (1,663,500)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod (1,844,000)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod
Shares Available for Grant, Options canceled 179,532us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited 90,325us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited 14,627us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationForfeited
Shares Available for Grant, Ending Balance 4,423,493us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant 175,236us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant 498,411us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
Shares Available for Grant, Shares expired (1,286,025)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod    
Number of Shares, Beginning Balance 6,526,506us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 5,098,972us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 3,672,179us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
Number of Shares, Granted 1,895,250us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross 1,663,500us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross 1,844,000us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross
Number of Shares, Exercised (73,282)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised (145,641)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised (402,580)us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised
Number of shares, Canceled (179,532)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod (90,325)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod (14,627)us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
Number of Shares, Ending Balance 8,168,942us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 6,526,506us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber 5,098,972us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
Weighted Average Exercise Price, Beginning Balance $ 3.66us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice $ 3.18us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice $ 1.45us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
Weighted Average Exercise Price, Granted $ 3.78us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice $ 5.10us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice $ 6.24us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
Weighted Average Exercise Price, Exercised $ 1.43us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice $ 1.56us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice $ 1.39us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
Weighted Average Exercise Price, Canceled $ 4.63us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice $ 6.49us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice $ 4.25us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
Weighted Average Exercise Price, Ending Balance $ 3.69us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice $ 3.66us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice $ 3.18us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
Minimum      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Weighted Average Exercise Price, Beginning Balance   $ 0.42us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
$ 0.42us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
Weighted Average Exercise Price, Granted   $ 4.45us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
$ 1.38us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
Weighted Average Exercise Price, Exercised   $ 0.79us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
$ 0.79us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
Weighted Average Exercise Price, Canceled   $ 1.44us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
$ 0.79us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
Weighted Average Exercise Price, Ending Balance   $ 0.42us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
$ 0.42us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MinimumMember
Maximum      
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items]      
Weighted Average Exercise Price, Beginning Balance   $ 7.75us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
$ 3.18us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
Weighted Average Exercise Price, Granted   $ 5.58us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
$ 7.75us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
Weighted Average Exercise Price, Exercised   $ 3.46us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
$ 3.08us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
Weighted Average Exercise Price, Canceled   $ 7.75us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
$ 6.18us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
Weighted Average Exercise Price, Ending Balance   $ 7.75us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember
$ 7.75us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
/ us-gaap_RangeAxis
= us-gaap_MaximumMember