XML 96 R5.htm IDEA: XBRL DOCUMENT v2.4.1.9
CONSOLIDATED STATEMENTS OF CASH FLOWS
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
USD ($)
Dec. 31, 2014
CNY
Dec. 31, 2013
USD ($)
Dec. 31, 2013
CNY
Dec. 31, 2012
USD ($)
Dec. 31, 2012
CNY
Dec. 31, 2014
ZHEJIANG TIANLAN
CNY
Dec. 31, 2013
ZHEJIANG TIANLAN
CNY
Dec. 31, 2012
ZHEJIANG TIANLAN
CNY
Dec. 31, 2014
ZHEJIANG JIAHUAN
CNY
Dec. 31, 2013
ZHEJIANG JIAHUAN
CNY
Dec. 31, 2012
ZHEJIANG JIAHUAN
CNY
Cash flows from operating activities:                        
Net income/(loss) $ 164CLWT_NetIncomelossCashFlow   $ (18)CLWT_NetIncomelossCashFlow   $ (429)CLWT_NetIncomelossCashFlow   22,879CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,298CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,501)CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,710CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,308CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,535CLWT_NetIncomelossCashFlow
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(Used in)/ adjustments to reconcile net income to net cash provided by operating activities:                        
Depreciation of property, plant and equipment 88us-gaap_DepreciationAndAmortization   108us-gaap_DepreciationAndAmortization   130us-gaap_DepreciationAndAmortization   2,985us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,956us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
3,017us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,408us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,461us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
2,028us-gaap_DepreciationAndAmortization
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Amortisation of intangible asset             239us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
395us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
164us-gaap_AmortizationOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Amortisation of land use right             149us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
141us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
177us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
163us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
163us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
163us-gaap_AmortizationOfLeasedAsset
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(Gain)/loss on disposal of property, plant and equipment 0us-gaap_GainLossOnSaleOfPropertyPlantEquipment   1us-gaap_GainLossOnSaleOfPropertyPlantEquipment   22us-gaap_GainLossOnSaleOfPropertyPlantEquipment   225us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(40)us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,186us-gaap_GainLossOnSaleOfPropertyPlantEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Stock-based compensation expenses 2us-gaap_ShareBasedCompensation   0us-gaap_ShareBasedCompensation   0us-gaap_ShareBasedCompensation              
Non-controlling interest in (loss)/profits of subsidiaries (169)CLWT_NoncontrollingInterestInProfitslossOfSubsidiaries   113CLWT_NoncontrollingInterestInProfitslossOfSubsidiaries   309CLWT_NoncontrollingInterestInProfitslossOfSubsidiaries              
Equity in profit/loss of affiliates (892)us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss   (325)us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss   (9)us-gaap_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLoss              
(Gain)/loss on disposal of intangible asset             (150)us-gaap_GainLossOnDispositionOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(23)us-gaap_GainLossOnDispositionOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
92us-gaap_GainLossOnDispositionOfIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Deferred tax assets 9us-gaap_IncreaseDecreaseInDeferredIncomeTaxes   26us-gaap_IncreaseDecreaseInDeferredIncomeTaxes   25us-gaap_IncreaseDecreaseInDeferredIncomeTaxes   (1,391)us-gaap_IncreaseDecreaseInDeferredIncomeTaxes
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(446)us-gaap_IncreaseDecreaseInDeferredIncomeTaxes
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
784us-gaap_IncreaseDecreaseInDeferredIncomeTaxes
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Decrease/(increase) in current assets:                        
Accounts receivable, net (186)us-gaap_IncreaseDecreaseInAccountsReceivable   (993)us-gaap_IncreaseDecreaseInAccountsReceivable   655us-gaap_IncreaseDecreaseInAccountsReceivable   (9,491)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
79,243us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(38,607)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(6,448)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(4,115)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,349)us-gaap_IncreaseDecreaseInAccountsReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Restricted cash                   0us-gaap_IncreaseDecreaseInRestrictedCash
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(10)us-gaap_IncreaseDecreaseInRestrictedCash
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,459)us-gaap_IncreaseDecreaseInRestrictedCash
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Note receivables                   (322)us-gaap_IncreaseDecreaseInNotesReceivableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(2,942)us-gaap_IncreaseDecreaseInNotesReceivableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
6,285us-gaap_IncreaseDecreaseInNotesReceivableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Other receivables                   (6,074)us-gaap_IncreaseDecreaseInOtherReceivables
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,094)us-gaap_IncreaseDecreaseInOtherReceivables
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,127us-gaap_IncreaseDecreaseInOtherReceivables
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Dividend received                   0us-gaap_ProceedsFromInterestAndDividendsReceived
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_ProceedsFromInterestAndDividendsReceived
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
210us-gaap_ProceedsFromInterestAndDividendsReceived
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Amounts due from owners             0CLWT_IncreaseDecreaseAmountsDueFromOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_IncreaseDecreaseAmountsDueFromOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2CLWT_IncreaseDecreaseAmountsDueFromOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Prepayments and other current assets 695us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets   (436)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets   925us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets   (33,249)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(52,792)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(27,508)us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Inventories (49)us-gaap_IncreaseDecreaseInInventories   159us-gaap_IncreaseDecreaseInInventories   (70)us-gaap_IncreaseDecreaseInInventories   (1,078)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(5,822)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(542)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
5,909us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(6,520)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(9,725)us-gaap_IncreaseDecreaseInInventories
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Increase/(decrease) in current liabilities:                        
Accounts payable 446us-gaap_IncreaseDecreaseInAccountsPayable   (598)us-gaap_IncreaseDecreaseInAccountsPayable   838us-gaap_IncreaseDecreaseInAccountsPayable   77,861us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(76,615)us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
43,737us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
1,767us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
5,457us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
4,570us-gaap_IncreaseDecreaseInAccountsPayable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Amount due to owner             0CLWT_IncreaseDecreaseAmountDueToOwner
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
9CLWT_IncreaseDecreaseAmountDueToOwner
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_IncreaseDecreaseAmountDueToOwner
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Note payable                   0us-gaap_IncreaseDecreaseInNotesPayableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_IncreaseDecreaseInNotesPayableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,183)us-gaap_IncreaseDecreaseInNotesPayableCurrent
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Other payables and accrued expenses (585)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities   (299)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities   327us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities   (27,160)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
48,898us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,501)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,131us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(920)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(8,251)us-gaap_IncreaseDecreaseInOtherAccountsPayableAndAccruedLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Other taxes payable             2,813us-gaap_IncreaseDecreaseInOtherAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
6,040us-gaap_IncreaseDecreaseInOtherAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(11,579)us-gaap_IncreaseDecreaseInOtherAccountsPayable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Income tax payable             296us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(5,175)us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,203)us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
405us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
805us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
211us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Taxation payable 7us-gaap_IncreaseDecreaseInAccruedTaxesPayable   (293)us-gaap_IncreaseDecreaseInAccruedTaxesPayable   71us-gaap_IncreaseDecreaseInAccruedTaxesPayable              
Other long-term liability                   (73)us-gaap_IncreaseDecreaseInOtherOperatingLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(87)us-gaap_IncreaseDecreaseInOtherOperatingLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
102us-gaap_IncreaseDecreaseInOtherOperatingLiabilities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Net cash (used in)/provided by operating activities (470)us-gaap_NetCashProvidedByUsedInOperatingActivities   (2,555)us-gaap_NetCashProvidedByUsedInOperatingActivities   2,794us-gaap_NetCashProvidedByUsedInOperatingActivities   34,928us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
2,067us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(31,282)us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,576us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(4,494)us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(5,736)us-gaap_NetCashProvidedByUsedInOperatingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Cash flows from investing activities:                        
Purchase of intangible asset             0us-gaap_PaymentsToAcquireIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(39)us-gaap_PaymentsToAcquireIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(126)us-gaap_PaymentsToAcquireIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Purchase of short term investments                   0us-gaap_PaymentsForProceedsFromShortTermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_PaymentsForProceedsFromShortTermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_PaymentsForProceedsFromShortTermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Purchase of property, plant and equipment (10)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment   (51)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment   (41)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment   (52,566)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,983)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(3,358)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(664)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,404)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(3,540)us-gaap_PaymentsToAcquirePropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Sales proceeds from intangible assets             420CLWT_SalesProceedsFromIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
110CLWT_SalesProceedsFromIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_SalesProceedsFromIntangibleAssets
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Proceeds on disposal of property, plant and equipment 0us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment   1us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment   2us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment   923us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
69us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Proceeds from sales of long term investments                   0us-gaap_ProceedsFromSaleOfLongtermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_ProceedsFromSaleOfLongtermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(556)us-gaap_ProceedsFromSaleOfLongtermInvestments
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Dividend received from affiliates 302us-gaap_CashDividendsPaidToParentCompany   246us-gaap_CashDividendsPaidToParentCompany   0us-gaap_CashDividendsPaidToParentCompany              
Restricted cash for issuance of bank guarantees (314)us-gaap_IncreaseDecreaseInRestrictedCashAndInvestments   274us-gaap_IncreaseDecreaseInRestrictedCashAndInvestments   (593)us-gaap_IncreaseDecreaseInRestrictedCashAndInvestments              
Dividend paid to non-controlling interest (42)us-gaap_PaymentsOfDividends   (134)us-gaap_PaymentsOfDividends   0us-gaap_PaymentsOfDividends              
Net cash (used in)/provided by investing activities (64)us-gaap_NetCashProvidedByUsedInInvestingActivities   336us-gaap_NetCashProvidedByUsedInInvestingActivities   (632)us-gaap_NetCashProvidedByUsedInInvestingActivities   (51,223)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,843)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(3,484)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(664)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,404)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(4,096)us-gaap_NetCashProvidedByUsedInInvestingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Cash flows from financing activities:                        
Repayment of bank borrowings             (104,690)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(88,100)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(41,000)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(50,300)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(18,200)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(300)us-gaap_RepaymentsOfBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Advance of bank borrowings             137,900us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
92,790us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
60,000us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
50,100us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
26,800us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_ProceedsFromBankDebt
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Capital injection             0CLWT_CapitalInjection
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_CapitalInjection
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_CapitalInjection
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
     
Increase in amount due from shareholders                   (3,200)CLWT_IncreaseInAmountDueFromShareholders
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
850CLWT_IncreaseInAmountDueFromShareholders
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
8,140CLWT_IncreaseInAmountDueFromShareholders
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Dividend paid to owners             (9,180)CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(6,120)CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
0CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,250)CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(2,250)CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0CLWT_DividendPaidToOwners
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Purchase of treasury stock 0us-gaap_PaymentsForRepurchaseOfCommonStock   0us-gaap_PaymentsForRepurchaseOfCommonStock   (33)us-gaap_PaymentsForRepurchaseOfCommonStock              
Net cash (used in)/provided by financing activities 0us-gaap_NetCashProvidedByUsedInFinancingActivities   0us-gaap_NetCashProvidedByUsedInFinancingActivities   (33)us-gaap_NetCashProvidedByUsedInFinancingActivities   24,030us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,430)us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
19,000us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(5,650)us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
7,200us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
7,840us-gaap_NetCashProvidedByUsedInFinancingActivities
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Effect of exchange rate changes on cash and cash equivalents (15)us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents   157us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents   0us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents              
Net (decrease)/increase in cash and cash equivalents (549)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease   (2,062)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease   2,129us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease   7,735us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,206)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(15,766)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(1,738)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
1,302us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,992)us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Cash and cash equivalents, beginning of year 5,406us-gaap_CashAndCashEquivalentsAtCarryingValue   7,468us-gaap_CashAndCashEquivalentsAtCarryingValue   5,339us-gaap_CashAndCashEquivalentsAtCarryingValue   21,462us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
22,668us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
38,434us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,867us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
3,565us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
5,557us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Cash and cash equivalents, end of year 4,857us-gaap_CashAndCashEquivalentsAtCarryingValue   5,406us-gaap_CashAndCashEquivalentsAtCarryingValue   7,468us-gaap_CashAndCashEquivalentsAtCarryingValue   29,197us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
21,462us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
22,668us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
3,129us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
4,867us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
3,565us-gaap_CashAndCashEquivalentsAtCarryingValue
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Supplementary information                        
Interest received 27us-gaap_InterestAndOtherIncome   45us-gaap_InterestAndOtherIncome   46us-gaap_InterestAndOtherIncome   148us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
194us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
149us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
17us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
32us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
68us-gaap_InterestAndOtherIncome
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Interest paid             6,279us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
4,695us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
3,920us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
(2,209)us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,702)us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
(1,574)us-gaap_InterestPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Income taxes paid   3us-gaap_IncomeTaxesPaid   340us-gaap_IncomeTaxesPaid   8us-gaap_IncomeTaxesPaid 2,263us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
396us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
6,348us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= us-gaap_SubsidiaryIssuerMember
79us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
0us-gaap_IncomeTaxesPaid
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
Income tax refund                   0us-gaap_ProceedsFromIncomeTaxRefunds
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
786us-gaap_ProceedsFromIncomeTaxRefunds
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member
211us-gaap_ProceedsFromIncomeTaxRefunds
/ us-gaap_StatementScenarioAxis
= CLWT_Subsidiary2Member