/* 글 목차 */

.entry-toc {
	margin-block: 0 var(--block-spacing);
	/* From https://css.glass */
	background: rgba(255, 255, 255, 0.2);
	border-radius: 16px;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	border: 1px solid rgba(255, 255, 255, 0.3);
	overflow: hidden;
}

.theme-dark .entry-toc {
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.18);
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.25);
}

.entry-toc details {
	border-bottom: none;
}

.entry-toc summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.875rem 1rem;
	font-weight: 700;
	color: var(--color-900);
	cursor: pointer;
	list-style: none;
}

.entry-toc summary::-webkit-details-marker {
	display: none;
}

.entry-toc summary::after {
	content: "+";
	display: flex;
	width: 2em;
	height: 2em;
	align-items: center;
	justify-content: center;
	font-size: 1.125em;
	font-weight: 500;
	color: var(--color-600);
	transition: transform var(--transition), color var(--transition);
}

.entry-toc details[open] summary::after {
	transform: rotate(45deg);
	color: var(--color-900);
}

.entry-toc__list {
	margin: 0;
	padding: 0 1rem 1rem 1.75rem;
	list-style: decimal;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.entry-toc__list--nested {
	margin-block-start: 0.4rem;
	padding-inline-start: 1.25rem;
	padding-block-end: 0;
	list-style: disc;
}

.entry-toc__link {
	color: var(--color-700);
	text-decoration: none;
	line-height: 1.5;
	transition: color var(--transition);
}

.entry-toc__link:hover,
.entry-toc__link:focus-visible {
	color: var(--color-950);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}
