v3.26.3
Fair Value Measurements - Schedule of Assets Carried at Fair Value and Measured on a Recurring Basis (Details) - USD ($)
$ in Thousands
Sep. 30, 2026
Dec. 31, 2025
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost $ 114,301 $ 155,421
Gross Unrealized Gains 0 256
Gross Unrealized Losses (572) (13)
Fair Value 113,729 155,664
Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 76,109 91,018
Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 27,767 52,739
Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 9,853 11,907
Level 1    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 87,395 91,594
Gross Unrealized Gains 0 208
Gross Unrealized Losses (453) 0
Fair Value 86,942 91,802
Level 1 | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 62,205 49,489
Level 1 | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 23,814 40,785
Level 1 | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 923 1,528
Level 1 | Mutual funds    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 923 1,528
Gross Unrealized Gains 0 0
Gross Unrealized Losses 0 0
Fair Value 923 1,528
Level 1 | Mutual funds | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 0 0
Level 1 | Mutual funds | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 0 0
Level 1 | Mutual funds | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 923 1,528
Level 1 | U.S. treasury securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 86,472 90,066
Gross Unrealized Gains 0 208
Gross Unrealized Losses (453) 0
Fair Value 86,019 90,274
Level 1 | U.S. treasury securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 62,205 49,489
Level 1 | U.S. treasury securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 23,814 40,785
Level 1 | U.S. treasury securities | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 0 0
Level 2    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 26,906 63,827
Gross Unrealized Gains 0 48
Gross Unrealized Losses (119) (13)
Fair Value 26,787 63,862
Level 2 | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 13,904 41,529
Level 2 | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 3,953 11,954
Level 2 | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 8,930 10,379
Level 2 | Commercial paper    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 10,932 15,321
Gross Unrealized Gains 0 1
Gross Unrealized Losses (2) (1)
Fair Value 10,930 15,321
Level 2 | Commercial paper | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 2,000 4,942
Level 2 | Commercial paper | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 0 0
Level 2 | Commercial paper | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 8,930 10,379
Level 2 | Corporate debt securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost   1,668
Gross Unrealized Gains   1
Gross Unrealized Losses   0
Fair Value   1,669
Level 2 | Corporate debt securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value   1,669
Level 2 | Corporate debt securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value   0
Level 2 | Corporate debt securities | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value   0
Level 2 | Agency securities    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Amortized Cost 15,974 46,838
Gross Unrealized Gains 0 46
Gross Unrealized Losses (117) (12)
Fair Value 15,857 46,872
Level 2 | Agency securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 11,904 34,918
Level 2 | Agency securities | Balance Sheet Location [Axis]: us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value 3,953 11,954
Level 2 | Agency securities | Balance Sheet Location [Axis]: us-gaap:CashAndCashEquivalentsAtCarryingValue    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Fair Value $ 0 $ 0