| The amount of an entity’s obligation to transfer goods or services to a customer for which the entity has received consideration (or the amount is due) from the customer. | en | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |
| Contract liabilities | en | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Contract liabilities at beginning of period | en | http://www.xbrl.org/2003/role/periodStartLabel | http://www.xbrl.org/2003/role/link |
| Contract liabilities at end of period | en | http://www.xbrl.org/2003/role/periodEndLabel | http://www.xbrl.org/2003/role/link |
| Total contract liabilities | en | http://www.xbrl.org/2003/role/totalLabel | http://www.xbrl.org/2003/role/link |