.loyseo-social-links {
	box-sizing: border-box;
	min-width: 0;
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: var(--wp--custom--radius--panel);
	background: var(--wp--preset--color--surface-white);
}

.loyseo-social-links__title {
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--text-heading);
	font-size: var(--wp--preset--font-size--small);
	font-weight: var(--wp--custom--typography--weight--semibold);
	line-height: var(--wp--custom--typography--line-height--title);
}

.loyseo-social-links__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--20);
}

.loyseo-social-links .loyseo-social-links__link {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--10);
	min-height: 44px;
	min-width: 0;
	padding: var(--wp--preset--spacing--10);
	border: 0;
	border-radius: var(--wp--custom--radius--compact);
	background: var(--loyseo-social-surface);
	color: var(--wp--preset--color--text-heading);
	font-size: var(--wp--preset--font-size--micro);
	line-height: var(--wp--custom--typography--line-height--title);
	text-decoration: none;
}

.loyseo-social-links__link--bilibili { --loyseo-social-surface: var(--wp--preset--color--pink-blush); }
.loyseo-social-links__link--youtube { --loyseo-social-surface: var(--wp--preset--color--red-blush); }
.loyseo-social-links__link:only-child { grid-column: 1 / -1; }
.loyseo-social-links__link img { display: block; flex: 0 0 24px; width: 24px; height: 24px; object-fit: contain; }
.loyseo-social-links__link span { min-width: 0; overflow-wrap: anywhere; }

.loyseo-social-links .loyseo-social-links__link:is(:hover, :focus-visible) {
	color: var(--wp--preset--color--text-heading);
	text-decoration: none;
}

.loyseo-social-links__link:focus-visible {
	outline: 2px solid var(--wp--preset--color--brand-primary);
	outline-offset: 1px;
}

/* Keep channel links outside the scrollable list but inside the TOC shell. */
.loyseo-single-toc > .loyseo-social-links {
	flex: 0 0 auto;
	border: 0;
	border-top: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: 0;
}

.loyseo-single-toc:has(> .loyseo-social-links) > .loyseo-single-toc__scroll {
	overflow-y: auto;
}

@media (min-width: 901px) {
	.loyseo-single__toc-sidebar .loyseo-single-toc:has(> .loyseo-social-links) {
		--loyseo-social-toc-available: calc(100dvh - var(--loyseo-sticky-content-top) - var(--wp--preset--spacing--40));
		max-height: min(var(--loyseo-toc-max-height), var(--loyseo-social-toc-available));
	}

	.loyseo-single__toc-sidebar .loyseo-single-toc--max-height-unlimited:has(> .loyseo-social-links) {
		max-height: var(--loyseo-social-toc-available);
	}
}

@media (max-width: 900px) {
	[data-mobile-mode="drawer"] .loyseo-single-toc:has(> .loyseo-social-links) {
		max-height: calc(100dvh - var(--wp--preset--spacing--50) - var(--wp--preset--spacing--50));
	}
}
