XML 15 R48.htm IDEA: XBRL DOCUMENT v2.4.1.9
Fair Value Measures - Assets and Liabilities Measured at Fair Value on Recurring Basis (Detail) (Fair Value, Measurements, Recurring, USD $)
In Thousands, unless otherwise specified
Jan. 31, 2015
Oct. 31, 2014
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Total assets $ 678,096us-gaap_AssetsFairValueDisclosure $ 563,872us-gaap_AssetsFairValueDisclosure
Total liabilities 25,224us-gaap_LiabilitiesFairValueDisclosure 11,755us-gaap_LiabilitiesFairValueDisclosure
Foreign currency derivative contracts
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Prepaid and other current assets 18,330us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,300us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Accounts payable and accrued liabilities 25,224us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
11,755us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Deferred compensation plan assets
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Other long-term assets 151,061us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
145,508us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
Quoted Prices in Active Markets for Identical Assets (Level 1)
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Total assets 528,431us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
554,572us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Quoted Prices in Active Markets for Identical Assets (Level 1) | Foreign currency derivative contracts
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Prepaid and other current assets 0us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Accounts payable and accrued liabilities 0us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Quoted Prices in Active Markets for Identical Assets (Level 1) | Deferred compensation plan assets
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Other long-term assets 151,061us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
145,508us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
Significant Other Observable Inputs (Level 2)
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Total assets 149,665us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,300us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities 25,224us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
11,755us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Foreign currency derivative contracts
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Prepaid and other current assets 18,330us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
9,300us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Accounts payable and accrued liabilities 25,224us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
11,755us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Other Observable Inputs (Level 2) | Deferred compensation plan assets
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Other long-term assets 0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
Significant Unobservable Inputs (Level 3)
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Total assets 0us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_AssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Total liabilities 0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_LiabilitiesFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Unobservable Inputs (Level 3) | Foreign currency derivative contracts
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Prepaid and other current assets 0us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_ForeignCurrencyContractAssetFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Accounts payable and accrued liabilities 0us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
0us-gaap_AccountsPayableAndAccruedLiabilitiesFairValueDisclosure
/ us-gaap_DerivativeByNatureAxis
= us-gaap_ForwardContractsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
Significant Unobservable Inputs (Level 3) | Deferred compensation plan assets
   
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Other long-term assets 0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
0us-gaap_OtherAssetsFairValueDisclosure
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ invest_InvestmentAxis
= snps_DeferredCompensationPlanAssetsMember
Cash equivalents | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 2,400us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Money market funds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 377,370us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
409,064us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
Cash equivalents | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 8,697us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Quoted Prices in Active Markets for Identical Assets (Level 1) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Quoted Prices in Active Markets for Identical Assets (Level 1) | Money market funds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 377,370us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
409,064us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
Cash equivalents | Quoted Prices in Active Markets for Identical Assets (Level 1) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Significant Other Observable Inputs (Level 2) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 2,400us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Significant Other Observable Inputs (Level 2) | Money market funds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
Cash equivalents | Significant Other Observable Inputs (Level 2) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 8,697us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Significant Unobservable Inputs (Level 3) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Cash equivalents | Significant Unobservable Inputs (Level 3) | Money market funds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MoneyMarketFundsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
Cash equivalents | Significant Unobservable Inputs (Level 3) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Cash equivalents 0us-gaap_CashAndCashEquivalentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_CashEquivalentsMember
 
Short-term investments | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 3,400us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 7,090us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | U.S. government agency securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 17,936us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Municipal bonds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 1,403us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Corporate debt securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 67,168us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Asset-backed securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 23,241us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | U.S. government agency securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | Municipal bonds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | Corporate debt securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Quoted Prices in Active Markets for Identical Assets (Level 1) | Asset-backed securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel1Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 3,400us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 7,090us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | U.S. government agency securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 17,936us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | Municipal bonds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 1,403us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | Corporate debt securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 67,168us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Other Observable Inputs (Level 2) | Asset-backed securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 23,241us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | Certificates of deposit    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CertificatesOfDepositMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | Commercial paper    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CommercialPaperMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | U.S. government agency securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | Municipal bonds    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_MunicipalBondsMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | Corporate debt securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_CorporateDebtSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember
 
Short-term investments | Significant Unobservable Inputs (Level 3) | Asset-backed securities    
Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]    
Short-term investments $ 0us-gaap_InvestmentsFairValueDisclosure
/ us-gaap_CashAndCashEquivalentsAxis
= us-gaap_AssetBackedSecuritiesMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel3Member
/ us-gaap_FairValueByMeasurementFrequencyAxis
= us-gaap_FairValueMeasurementsRecurringMember
/ us-gaap_InvestmentTypeAxis
= us-gaap_ShortTermInvestmentsMember