
.wp-block-ht-block-toc .ht_toc_placeholder {
	font-size: 18px;
}

.wp-block-ht-block-toc[data-htoc-state=expanded] .htoc__itemswrap {
	margin-top: 1em;
	max-height: 9999px;
	opacity: 1;
}

.wp-block-ht-block-toc[data-htoc-state=closed] .htoc__itemswrap {
	display: none;
	max-height: 0;
	opacity: 0;
}

.wp-block-ht-block-toc.is-style-contrasted, .wp-block-ht-block-toc.is-style-gray, .wp-block-ht-block-toc.is-style-outline, .wp-block-ht-block-toc.is-style-rounded {
	transition: all 1s ease-in-out;
}

.wp-block-ht-block-toc.is-style-outline {
	border: 1px solid #ccc;
	padding: 2em;
}

.wp-block-ht-block-toc.is-style-outline .htoc__toggle {
	border: 1px solid #ccc;
}

.wp-block-ht-block-toc.is-style-gray {
	background: #dde2eb;
	padding: 2em;
}

.wp-block-ht-block-toc.is-style-rounded {
	background-color: #fafafa;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: 1.5em;
}

.wp-block-ht-block-toc.is-style-contrasted {
	background-color: #fafafa;
	border: 1px solid #eee;
	border-radius: 4px;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: 1.5em;
}

.wp-block-ht-block-toc.is-style-contrasted li {
	margin-bottom: 0;
	padding: .5em;
}

.wp-block-ht-block-toc.is-style-contrasted li:nth-child(odd) {
	background-color: rgba(0, 0, 0, .03);
	border-radius: 4px;
}

.wp-block-ht-block-toc.is-style-contrasted li ul {
	margin-bottom: 0;
}

.wp-block-ht-block-toc.htoc--position-left, .wp-block-ht-block-toc.htoc--position-right {
	max-width: 260px;
}

.wp-block-ht-block-toc.htoc--position-center {
	text-align: center;
}

.wp-block-ht-block-toc.htoc--position-left {
	float: left;
	margin-right: 2em;
}

.wp-block-ht-block-toc.htoc--position-right {
	float: right;
	margin-left: 2em;
}

.wp-block-ht-block-toc .htoc__title {
	align-items: center;
	display: flex;
	font-size: 1em;
	font-weight: 600;
}

.wp-block-ht-block-toc .htoc__toggle {
	background: #fff;
	border-radius: 2px;
	cursor: pointer;
	line-height: 1em;
	margin-left: 15px;
	padding: 8px;
	position: relative;
}

.wp-block-ht-block-toc .htoc__toggle svg {
	display: inline-flex;
}

.wp-block-ht-block-toc .ht_toc_list ol, .wp-block-ht-block-toc .ht_toc_list ul, .wp-block-ht-block-toc .htoc__itemswrap ol, .wp-block-ht-block-toc .htoc__itemswrap ul {
	list-style-position: inside !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wp-block-ht-block-toc .ht_toc_list ol ol, .wp-block-ht-block-toc .ht_toc_list ol ul, .wp-block-ht-block-toc .ht_toc_list ul ol, .wp-block-ht-block-toc .ht_toc_list ul ul, .wp-block-ht-block-toc .htoc__itemswrap ol ol, .wp-block-ht-block-toc .htoc__itemswrap ol ul, .wp-block-ht-block-toc .htoc__itemswrap ul ol, .wp-block-ht-block-toc .htoc__itemswrap ul ul {
	margin: .5em 0 .5em 1em !important;
	padding: 0 !important;
}

.wp-block-ht-block-toc .ht_toc_list ol li, .wp-block-ht-block-toc .ht_toc_list ul li, .wp-block-ht-block-toc .htoc__itemswrap ol li, .wp-block-ht-block-toc .htoc__itemswrap ul li {
	margin-bottom: .5em !important;
}

.wp-block-ht-block-toc .ht_toc_list ol li:last-child, .wp-block-ht-block-toc .ht_toc_list ul li:last-child, .wp-block-ht-block-toc .htoc__itemswrap ol li:last-child, .wp-block-ht-block-toc .htoc__itemswrap ul li:last-child {
	margin-bottom: 0 !important;
}

.wp-block-ht-block-toc .ht_toc_list ul, .wp-block-ht-block-toc .htoc__itemswrap ul {
	list-style-type: disc !important;
}

.wp-block-ht-block-toc .ht_toc_list ol, .wp-block-ht-block-toc .htoc__itemswrap ol {
	list-style-type: decimal !important;
}

.wp-block-ht-block-toc.toc-list-style-plain .ht_toc_list ol, .wp-block-ht-block-toc.toc-list-style-plain .ht_toc_list ul, .wp-block-ht-block-toc.toc-list-style-plain .htoc__itemswrap ol, .wp-block-ht-block-toc.toc-list-style-plain .htoc__itemswrap ul {
	list-style-type: none !important;
}

.wp-block-ht-block-toc .ht_toc_list_sub {
	margin: 5px 0;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] {
	margin-bottom: 20px;
	margin-top: 20px;
	max-height: calc(100vh - 40px);
	overflow-y: auto;
	position: sticky;
	scroll-behavior: smooth;
	top: var(--htoc-sticky-top, 20px);
	z-index: var(--htoc-z-index, 100);
}

@media (max-width:768px) {
	.wp-block-ht-block-toc[data-htoc-scrollspy=true] {
		position: relative;
		top: auto;
	}
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li a {
	border-radius: 4px;
	color: inherit;
	display: block;
	padding: .5rem;
	text-decoration: none;
	transition: background-color .15s ease-in-out, color .15s ease-in-out, opacity .15s ease-in-out;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li a:focus {
	outline: 2px solid var(--wp--preset--color--primary, #0073aa);
	outline-offset: 2px;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li a:hover {
	background: var(--kb-toc-background-hover, var(--wp--preset--color--primary, var(--wp--preset--color--contrast, rgba(0, 0, 0, .05))));
	color: var(--kb-toc-text-hover, var(--wp--preset--color--base, currentColor));
	text-decoration: none;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li.active>a {
	background: var(--kb-toc-primary, var(--wp--preset--color--primary, var(--wp--preset--color--contrast, currentColor)));
	color: var(--kb-toc-text, var(--wp--preset--color--base, #fff));
	font-weight: 600;
	text-decoration: none;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li.active>a:hover {
	background: var(--kb-toc-primary-hover, var(--kb-toc-primary, var(--wp--preset--color--primary, var(--wp--preset--color--contrast, currentColor))));
	color: var(--kb-toc-text-hover, var(--kb-toc-text, var(--wp--preset--color--base, #fff)));
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li.active>ol, .wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li.active>ul {
	display: block;
	opacity: 1;
	visibility: visible;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li ol li.active>a, .wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li ul li.active>a {
	background: var(--kb-toc-primary, var(--wp--preset--color--primary, var(--wp--preset--color--contrast, currentColor)));
	color: var(--kb-toc-text, var(--wp--preset--color--base, #fff));
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li ol li.active>a:hover, .wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li ul li.active>a:hover {
	background: var(--kb-toc-primary-hover, var(--kb-toc-primary, var(--wp--preset--color--primary, var(--wp--preset--color--contrast, currentColor))));
	color: var(--kb-toc-text-hover, var(--kb-toc-text, var(--wp--preset--color--base, #fff)));
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true][data-htoc-auto-collapse=true] .ht_toc_list li ol, .wp-block-ht-block-toc[data-htoc-scrollspy=true][data-htoc-auto-collapse=true] .ht_toc_list li ul {
	display: none !important;
	margin: .5em 0 .5em 1em !important;
	opacity: 0 !important;
	padding: 0 !important;
	transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
	visibility: hidden !important;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true][data-htoc-auto-collapse=true] .ht_toc_list li.active>ol, .wp-block-ht-block-toc[data-htoc-scrollspy=true][data-htoc-auto-collapse=true] .ht_toc_list li.active>ul {
	display: block !important;
	margin: .5em 0 .5em 1em !important;
	opacity: 1 !important;
	padding: 0 !important;
	transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
	visibility: visible !important;
}

.wp-block-ht-block-toc[data-htoc-auto-collapse=true]:not([data-htoc-scrollspy=true]) .ht_toc_list li ol, .wp-block-ht-block-toc[data-htoc-auto-collapse=true]:not([data-htoc-scrollspy=true]) .ht_toc_list li ul {
	display: none !important;
	margin: .5em 0 .5em 1em !important;
	opacity: 0 !important;
	padding: 0 !important;
	transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
	visibility: hidden !important;
}

.wp-block-ht-block-toc[data-htoc-auto-collapse=true]:not([data-htoc-scrollspy=true]) .ht_toc_list li.active>ol, .wp-block-ht-block-toc[data-htoc-auto-collapse=true]:not([data-htoc-scrollspy=true]) .ht_toc_list li.active>ul {
	display: block !important;
	margin: .5em 0 .5em 1em !important;
	opacity: 1 !important;
	padding: 0 !important;
	transition: opacity .3s ease-in-out, visibility .3s ease-in-out;
	visibility: visible !important;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .htoc__title {
	color: var(--kb-toc-title-color, inherit) !important;
	font-size: var(--kb-toc-title-font-size, inherit) !important;
}

.wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_link, .wp-block-ht-block-toc[data-htoc-scrollspy=true] .ht_toc_list li a, .wp-block-ht-block-toc[data-htoc-scrollspy=true] .htoc__itemswrap a, .wp-block-ht-block-toc[data-htoc-scrollspy=true] ol li a, .wp-block-ht-block-toc[data-htoc-scrollspy=true] ul li a {
	font-size: var(--kb-toc-font-size, inherit) !important;
}

.wp-block-ht-block-toc.is-style-outline[data-htoc-scrollspy=true] {
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 0;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: var(--wp--preset--spacing--20);
}

.wp-block-ht-block-toc.is-style-outline[data-htoc-scrollspy=true] .htoc__toggle {
	background: #fff;
	border: 1px solid #ddd;
}

.wp-block-ht-block-toc.is-style-gray[data-htoc-scrollspy=true] {
	background-color: #e8edf4;
	border: 0;
	border-radius: 0;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: var(--wp--preset--spacing--20);
}

.wp-block-ht-block-toc.is-style-rounded[data-htoc-scrollspy=true] {
	background-color: #f4f5f5;
	border: 0;
	border-radius: 0;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: var(--wp--preset--spacing--20);
}

.wp-block-ht-block-toc.is-style-contrasted[data-htoc-scrollspy=true] {
	background-color: #f8f8f8;
	border: 1px solid #e5e5e5;
	border-radius: 0;
	margin-bottom: 20px;
	margin-top: 20px;
	padding: var(--wp--preset--spacing--20);
}

.wp-block-ht-block-toc.is-style-contrasted[data-htoc-scrollspy=true] li {
	margin-bottom: 0;
	padding: .4em;
}

.wp-block-ht-block-toc.is-style-contrasted[data-htoc-scrollspy=true] li:nth-child(odd) {
	background-color: rgba(0, 0, 0, .02);
	border-radius: 3px;
}

.wp-block-ht-block-toc.is-style-contrasted[data-htoc-scrollspy=true] li ul {
	margin-bottom: 0;
}

.ht-toc-clear {
	clear: both;
	height: 0;
	width: 0;
}
