| Fair Value Measures (Assets and Liabilities Measured at Fair Value on a Recurring Basis) (Details) (USD $)In Thousands, unless otherwise specified
 | Dec. 31, 2014 | Dec. 31, 2013 | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | $ 232,634us-gaap_AssetsFairValueDisclosure | $ 367,420us-gaap_AssetsFairValueDisclosure | 
      
        | Liabilities, Fair Value Disclosure | 924us-gaap_LiabilitiesFairValueDisclosure | 1,247us-gaap_LiabilitiesFairValueDisclosure | 
      
        | Fair Value, Inputs, Level 1 [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 145,823us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 220,930us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Liabilities, Fair Value Disclosure | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Fair Value, Inputs, Level 2 [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 86,811us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 146,490us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Liabilities, Fair Value Disclosure | 924us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 1,247us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Fair Value, Inputs, Level 3 [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Liabilities, Fair Value Disclosure | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Money Market Funds [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 94,112us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 175,624us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 
      
        | Money Market Funds [Member] | Fair Value, Inputs, Level 1 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 94,112us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 175,624us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Money Market Funds [Member] | Fair Value, Inputs, Level 2 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Money Market Funds [Member] | Fair Value, Inputs, Level 3 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_MoneyMarketFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Bank Time Deposits [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 45,187us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 34,637us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 
      
        | Bank Time Deposits [Member] | Fair Value, Inputs, Level 1 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 45,187us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 25,111us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Bank Time Deposits [Member] | Fair Value, Inputs, Level 2 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 9,526us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Bank Time Deposits [Member] | Fair Value, Inputs, Level 3 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_BankTimeDepositsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Certificates of Deposit [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 1,470us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 735us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 
      
        | Certificates of Deposit [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 3,184us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 9,546us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 1 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 1 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 2 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 1,470us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 735us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 2 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 3,184us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 9,546us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 3 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Certificates of Deposit [Member] | Fair Value, Inputs, Level 3 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_CertificatesOfDepositMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Repurchase Agreements [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 40,000us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 45,000us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 
      
        | Repurchase Agreements [Member] | Fair Value, Inputs, Level 1 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Repurchase Agreements [Member] | Fair Value, Inputs, Level 2 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 40,000us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 45,000us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Repurchase Agreements [Member] | Fair Value, Inputs, Level 3 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_RepurchaseAgreementsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 5,812us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 9,898us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 23,598us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 14,764us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 1 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 1 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 2 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 5,812us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 9,898us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 2 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 23,598us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 14,764us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 3 [Member] | Cash Equivalents [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_CashEquivalentsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | U.S. Government-Backed Municipal Bonds [Member] | Fair Value, Inputs, Level 3 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_USTreasurySecuritiesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Short-term municipal bond fund [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 15,004us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_FixedIncomeFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 
      
        | Short-term municipal bond fund [Member] | Fair Value, Inputs, Level 1 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 15,004us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_FixedIncomeFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Short-term municipal bond fund [Member] | Fair Value, Inputs, Level 2 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_FixedIncomeFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Short-term municipal bond fund [Member] | Fair Value, Inputs, Level 3 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_FixedIncomeFundsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Variable Rate Demand Obligation [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 52,105us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_VariableRateDemandObligationMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 | 
      
        | Variable Rate Demand Obligation [Member] | Fair Value, Inputs, Level 1 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_VariableRateDemandObligationMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Variable Rate Demand Obligation [Member] | Fair Value, Inputs, Level 2 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 52,105us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_VariableRateDemandObligationMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Variable Rate Demand Obligation [Member] | Fair Value, Inputs, Level 3 [Member] | Available-for-sale Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_VariableRateDemandObligationMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_AvailableforsaleSecuritiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Other Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 12,747us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 | 4,892us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 24us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 1 [Member] | Other Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 1 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 2 [Member] | Other Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 12,747us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 4,892us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 2 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 24us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 3 [Member] | Other Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_OtherCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Derivative Financial Instruments, Assets [Member] | Fair Value, Inputs, Level 3 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure |  | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsAssetsMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Mutual Fund Shares [Member] | Trading Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 485us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 | 336us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 | 
      
        | Mutual Fund Shares [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 6,039us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 | 4,855us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 1 [Member] | Trading Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 485us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 336us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 1 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 6,039us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 4,855us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 2 [Member] | Trading Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 2 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 3 [Member] | Trading Securities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = us-gaap_TradingAccountAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Mutual Fund Shares [Member] | Fair Value, Inputs, Level 3 [Member] | Non Current Assets [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Assets, Fair Value Disclosure | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 0us-gaap_AssetsFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = colm_MutualFundSharesMember
 / us-gaap_FairValueByAssetClassAxis
 = colm_NonCurrentAssetsMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Accrued Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure | 924us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 1,152us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Other Long Term Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure |  | 95us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByLiabilityClassAxis
 = colm_OtherLongTermLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 1 [Member] | Accrued Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 1 [Member] | Other Long Term Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure |  | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel1Member
 / us-gaap_FairValueByLiabilityClassAxis
 = colm_OtherLongTermLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 2 [Member] | Accrued Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure | 924us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 1,152us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 2 [Member] | Other Long Term Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure |  | 95us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel2Member
 / us-gaap_FairValueByLiabilityClassAxis
 = colm_OtherLongTermLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 3 [Member] | Accrued Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 / us-gaap_FairValueByLiabilityClassAxis
 = us-gaap_AccruedLiabilitiesMember
 | 
      
        | Derivative Financial Instruments, Liabilities [Member] | Fair Value, Inputs, Level 3 [Member] | Other Long Term Liabilities [Member] |  |  | 
      
        | Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] |  |  | 
      
        | Liabilities, Fair Value Disclosure |  | $ 0us-gaap_LiabilitiesFairValueDisclosure / us-gaap_EligibleItemOrGroupForFairValueOptionAxis
 = us-gaap_DerivativeFinancialInstrumentsLiabilitiesMember
 / us-gaap_FairValueByFairValueHierarchyLevelAxis
 = us-gaap_FairValueInputsLevel3Member
 / us-gaap_FairValueByLiabilityClassAxis
 = colm_OtherLongTermLiabilitiesMember
 |