:root {
	--transition-collapse: height 0.35s ease;
	--transition-collapse-width: width 0.35s ease;
}

.collapse,
.collapse-panel {
	display: block;
	margin: 0;
	overflow: hidden;
	will-change: height;
}

.collapse:not(.show):not(.collapsing),
.collapse-panel:not(.show):not(.collapsing) {
	display: none;
}

.collapse-panel[hidden] {
	display: none !important;
}

.collapse.show,
.collapse-panel.show,
.collapse-panel.is-open {
	display: block;
	overflow: visible;
}

.collapsing,
.collapse-panel.collapsing,
.collapse-panel.is-collapsing {
	height: 0;
	overflow: hidden;
	transition: var(--transition-collapse);
}

.collapsing.collapse-horizontal,
.collapse-panel.collapsing.collapse-horizontal {
	width: 0;
	height: auto;
	transition: var(--transition-collapse-width);
}
