.mai-toc {
	margin-bottom: var(--spacing-lg, 24px);
	color: var(--mai-toc-color, inherit);
	font-size: 90%;
	font-family: var(--heading-font-family, inherit);
	--list-padding: 0;
	--list-margin: 0;
	--list-item-margin: 0;
}

.mai-toc__summary::-webkit-details-marker,
.mai-toc__showhide:not([open]) .mai-toc__toggle:not(.mai-toc--nested).mai-toc--close,
.mai-toc__showhide[open] .mai-toc__toggle:not(.mai-toc--nested).mai-toc--open,
.mai-toc__details:not([open]) .mai-toc__icon.mai-toc--close,
.mai-toc__details[open] .mai-toc__icon.mai-toc--open {
	display: none;
}

.mai-toc .mai-toc__summary,
.mai-toc .mai-toc__link,
.mai-toc .mai-toc__icon {
	transition: var(--transition, all 0.2s ease-in-out);
}

.mai-toc__row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}

.mai-toc__row .mai-toc__col:first-child {
	margin-right: var(--spacing-sm, 12px);
}

.mai-toc__row .mai-toc__col:not(:first-child) {
	margin-left: auto;
}

.mai-toc__showhide > .mai-toc__summary {
	padding: var(--spacing-xs, 6px) 0;
	font-size: 0.9em;
	letter-spacing: 1px;
	text-transform: uppercase;
	border: solid transparent;
	border-width: 1px 0;
}

.mai-toc__showhide > .mai-toc__summary::after {
	display: none;
}

.mai-toc__toggle {
	margin-top: 2px;
	margin-left: auto;
	font-weight: normal;
	font-size: var(--font-size-xs, 12px);
	text-transform: uppercase;
	opacity: 0.8;
}

.mai-toc__list,
.mai-toc__listitem,
.entry-content .mai-toc__list,
.entry-content .mai-toc__listitem,
.editor-styles-wrapper .mai-toc__list,
.editor-styles-wrapper .mai-toc__listitem {
	margin: 0;
	list-style: none;
}

.mai-toc__listitem,
.entry-content .mai-toc__listitem {
	padding: 0;
}

.mai-toc__listitem:last-child {
	border: none;
}

.mai-toc--child .mai-toc__link::before {
	margin-right: var(--spacing-xs, 8px);
	content: "-";
}

.mai-toc__summary {
	display: block; /* removes marker arrow in Firefox */
	margin: 0;
	padding: 0;
}

.mai-toc__details .mai-toc__summary .mai-toc__icon {
	display: inline-flex;
	flex: 0 0 42px;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 42px;
	height: auto;
	content: "\002B";
}

.mai-toc__showhide[open] > .mai-toc__summary ~ *,
.mai-toc__details[open] > .mai-toc__summary ~ * {
	-webkit-animation: mai-tocfade 0.3s ease-in-out;
	animation: mai-tocfade 0.3s ease-in-out;
}

.mai-toc__link,
.entry-content .mai-toc__link {
	display: block;
	flex: 1 1 auto;
	max-width: 100%;
	padding: var(--spacing-xs, 6px) 0;
	color: var(--color-heading, #323232);
	text-decoration: none;
	border: none;
}

.mai-toc__showhide > .mai-toc__summary:hover,
.mai-toc__showhide > .mai-toc__summary:focus,
.mai-toc__link:hover,
.mai-toc__link:focus,
.entry-content .mai-toc__link:hover,
.entry-content .mai-toc__link:focus,
.mai-toc__icon:hover,
.mai-toc__icon:focus {
	color: var(--color-primary, #000);
	cursor: pointer;
}

.mai-toc-default {
	border: var(--mai-toc-border, var(--border, 1px solid var(--mai-toc-border-color, #ebe9eb)));
}

.mai-toc-default .mai-toc__showhide > .mai-toc__summary {
	padding: var(--spacing-xs, 6px) var(--spacing-md, 16px);
}

.mai-toc-default .mai-toc__showhide[open] > .mai-toc__summary {
	border-bottom: var(--mai-toc-border, var(--border, 1px solid var(--mai-toc-border-color, #ebe9eb)));
}

.mai-toc-default .mai-toc__listitem,
.entry-content .mai-toc-default .mai-toc__listitem {
	padding: 0;
	border-bottom: var(--mai-toc-border, var(--border, 1px solid var(--mai-toc-border-color, #ebe9eb)));
}

.mai-toc-default .mai-toc__summary,
.mai-toc-default .mai-toc--parent > .mai-toc__listitem,
.mai-toc-default .mai-toc--parent > .mai-toc__listitem .mai-toc__details,
.mai-toc-default .mai-toc--parent > .mai-toc__listitem .mai-toc__summary {
	background: var(--mai-toc-background-color, var(--color-alt, #f7f7f7));
}

.mai-toc-default .mai-toc--child .mai-toc__listitem,
.mai-toc-default .mai-toc--child .mai-toc__details,
.mai-toc-default .mai-toc--child .mai-toc__summary {
	background: var(--color-white, #fff);
}

.mai-toc-default .mai-toc__link,
.mai-toc-default .entry-content .mai-toc__link {
	padding: var(--spacing-xs, 6px) var(--spacing-md, 16px);
}

.mai-toc-default .mai-toc__details .mai-toc__summary .mai-toc__icon {
	border-left: var(--mai-toc-border, var(--border, 1px solid var(--mai-toc-border-color, #ebe9eb)));
}

.mai-toc-default .mai-toc__details[open] .mai-toc__row {
	border-bottom: var(--mai-toc-border, var(--border, 1px solid var(--mai-toc-border-color, #ebe9eb)));
}

@-webkit-keyframes mai-tocfade {
	0% { opacity: 0.5; }
	100% { opacity: 1; }
}

@keyframes mai-tocfade {
	0% { opacity: 0.5; }
	100% { opacity: 1; }
}

/* for non-Chromium Edge only */
@supports (-ms-ime-align: auto) {

	.mai-toc__showhide,
	.mai-toc__details,
	.mai-toc__summary {
		display: block;
	}

	.mai-toc__toggle,
	.mai-toc__icon {
		display: none !important;
	}
}
