html {
  position: relative;
  min-height: 100%;
}

body {
  /* Margin bottom by footer height */
  margin-bottom: 60px;
}

.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  /* Set the fixed height of the footer here */
  height: 60px;
  line-height: 60px; /* Vertically center the text there */
}


.w-30 {
	width: 30% !important;
}

.icon-list li::before {
  display: block;
  flex-shrink: 0;
  width: 1.5em;
  height: 1.5em;
  margin-right: .5rem;
  content: "";
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23212529' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0zM4.5 7.5a.5.5 0 0 0 0 1h5.793l-2.147 2.146a.5.5 0 0 0 .708.708l3-3a.5.5 0 0 0 0-.708l-3-3a.5.5 0 1 0-.708.708L10.293 7.5H4.5z'/%3E%3C/svg%3E") no-repeat center center / 100% auto;
}

img.jms-icon {
	margin: 6px;
	max-height: 48px;
	max-width: 50%;
}

span.entity {
	padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
	position: relative;
	display: inline-block;
}

span.entity-type {
	display: inline-block;
	padding-top: 16px;
	padding-left: 20px;
}

span.entity-subtype {
	display: inline-block;
	padding-top: 10px;
	padding-left: 20px;
}

div.entity {
	padding: 6px;
}

div.entity-type {
	padding: 6px;
	margin-top: 6px;
	margin: 12 24 12 24px;
}

div.entity-subtype {
	padding: 6px;
	margin-top: 6px;
	margin: 12 24 12 24px;
}

ul.tree-view,
ul.tree-view ul {
	list-style: none;
	padding-left: 1.5rem;
	margin-bottom: 0;
}

ul.tree-view {
	padding-left: 0;
}

ul.tree-view summary {
	cursor: pointer;
	display: flex;
	align-items: center;
}

ul.tree-view summary::-webkit-details-marker {
	display: none;
}

ul.tree-view summary::before {
	content: "\25B8";
	display: inline-block;
	width: 1.5rem;
	font-size: 1.75rem;
	line-height: 1;
	text-align: center;
	transition: transform 0.15s ease-in-out;
}

ul.tree-view details[open] > summary::before {
	transform: rotate(90deg);
}

ul.tree-view .tree-leaf {
	display: flex;
	align-items: center;
}

ul.tree-view .tree-leaf.has-spacer::before {
	content: "";
	display: inline-block;
	width: 1.5rem;
	flex-shrink: 0;
}