.toc[hidden] {
	display: none;
}

.toc__title {
	margin-bottom: var(--sp-sm);
	font-size: var(--fs-xs);
	font-weight: var(--fw-bold);
	letter-spacing: var(--ls-caps);
	text-transform: uppercase;
	color: var(--c-text-muted);
}

.toc__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: istorage-toc;
	border-top: 1px solid var(--c-border);
}

.toc__item {
	counter-increment: istorage-toc;
	border-bottom: 1px solid var(--c-border);
}

.toc__link {
	display: flex;
	gap: var(--sp-2xs);
	padding: var(--sp-2xs) 0;
	font-family: var(--font-heading);
	font-size: var(--fs-sm);
	font-weight: var(--fw-semibold);
	text-decoration: none;
}

.toc__link::before {
	content: counter(istorage-toc, decimal-leading-zero);
	flex: 0 0 auto;
	color: var(--c-accent-text);
	font-size: var(--fs-xs);
	font-variant-numeric: tabular-nums;
}

.toc__link:hover {
	text-decoration: underline;
}
