cm:Level3TextBlock: us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock
| Costs in Excess of Billings and Billings in Excess of Costs [Table Text Block] |
| us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock |
| Tabular disclosure for billings on uncompleted contracts in excess of costs and costs of uncompleted contracts in excess of billings. |
| cm:Level3TextBlock |
| Text Block (HTML) (nonnum:textBlockItemType) |
| For Period (duration) |
| (no balance type) |
| false |
| us-gaap:CostsInExcessOfBillingsAndBillingsInExcessOfCostsTableTextBlock |
| BillingsInExcessOfCostRollUp |