cm:Level3TextBlock: us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
| Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] |
| us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock |
| Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations. |
| cm:Level3TextBlock |
| Text Block (HTML) (nonnum:textBlockItemType) |
| For Period (duration) |
| (no balance type) |
| false |
| us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock |