/* Extracted from lib.css — loaded conditionally via functions.php */

/* ─── Archive header ─────────────────────────────────────────── */

.lib-archive-header {
	margin-bottom: 2.5rem;
}

.lib-archive-title {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	color: var(--primary);
	margin: 0 0 0.5rem;
}

.lib-archive-description {
	color: var(--mid-grey);
	font-size: 1rem;
}

/* ─── Single post: article header ───────────────────────────── */

.lib-single-article {
	max-width: 720px;
}

.lib-single-header {
	margin-bottom: 2rem;
}

/* Category pill */

.lib-single-cat {
	display: inline-block !important;
	background: var(--salmon);
	color: #fff !important;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0.3rem 0.85rem;
	border-radius: 20px;
	margin-bottom: 1.1rem;
	transition: background 0.2s;
}

.lib-single-cat:hover {
	background: var(--salmon-dark);
}

.lib-single-title {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: clamp(1.75rem, 4vw, 2.625rem);
	font-weight: 500;
	line-height: 1.15;
	color: var(--primary);
	margin: 0 0 1rem;
	letter-spacing: -0.02em;
}

.lib-single-date {
	font-size: 0.8125rem;
	color: var(--mid-grey);
	letter-spacing: 0.02em;
}

/* ─── Hero image ─────────────────────────────────────────────── */

.lib-single-hero-image {
	margin-bottom: 2.5rem;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 4px 28px rgba(58, 58, 58, 0.1);
}

.lib-single-hero-image img {
	width: 100%;
	height: auto;
	display: block;
}

/* ─── Post content typography ────────────────────────────────── */

.lib-single-content {
	font-size: 1.0625rem;
	line-height: 1.8;
	color: var(--primary);
}

.lib-single-content p {
	margin: 0 0 1.5rem;
}

.lib-single-content h2 {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: clamp(1.375rem, 2.5vw, 1.625rem);
	font-weight: 500;
	line-height: 1.25;
	color: var(--primary);
	margin: 2.75rem 0 1rem;
	letter-spacing: -0.02em;
}

.lib-single-content h3 {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: 1.1875rem;
	font-weight: 500;
	color: var(--primary);
	margin: 2.25rem 0 0.75rem;
}

.lib-single-content h4,
.lib-single-content h5,
.lib-single-content h6 {
	font-weight: 700;
	color: var(--primary);
	margin: 1.75rem 0 0.5rem;
}

.lib-single-content a {
	color: var(--salmon);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
}

.lib-single-content a:hover {
	color: var(--salmon-dark);
}

.lib-single-content ul,
.lib-single-content ol {
	margin: 0 0 1.5rem;
	padding-left: 1.5rem;
}

.lib-single-content li {
	margin-bottom: 0.5rem;
	line-height: 1.7;
}

.lib-single-content blockquote {
	border-left: 3px solid var(--salmon);
	margin: 2rem 0;
	padding: 0.25rem 0 0.25rem 1.5rem;
	color: var(--mid-grey);
	font-style: italic;
	font-size: 1.125rem;
}

.lib-single-content img {
	border-radius: 8px;
	max-width: 100%;
	height: auto;
}

.lib-single-content figure {
	margin: 2rem 0;
}

.lib-single-content figcaption {
	font-size: 0.8125rem;
	color: var(--mid-grey);
	text-align: center;
	margin-top: 0.5rem;
}

/* ─── Post navigation ────────────────────────────────────────── */

.lib-single-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin-top: 3.5rem;
	padding-top: 2.5rem;
	border-top: 2px solid #f0e8e0;
	max-width: 720px;
}

.lib-single-nav-item {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	padding: 1.125rem 1.25rem;
	background: var(--off-white);
	border: 1px solid #e8ddd4;
	border-radius: 10px;
	text-decoration: none;
	transition: background 0.2s, border-color 0.2s, transform 0.15s;
}

.lib-single-nav-item:hover {
	background: var(--salmon-light);
	border-color: var(--salmon);
	transform: translateY(-2px);
}

.lib-single-nav-next {
	text-align: right;
}

.lib-single-nav-label {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--salmon);
}

.lib-single-nav-post-title {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: 0.9375rem;
	font-weight: 500;
	color: var(--primary);
	line-height: 1.35;
}

@media (max-width: 600px) {
	.lib-single-nav {
		grid-template-columns: 1fr;
	}
}

/* ─── Sidebar widgets ────────────────────────────────────────── */

.lib-lesson-sidebar .widget,
.lib-archive-sidebar .widget,
.lib-single-sidebar .widget {
	margin-bottom: 0;
}

.tt-blog-widget {
	background: #fff;
	border: 1px solid #e8ddd4;
	border-radius: 12px;
	padding: 1.25rem;
	margin-bottom: 1.25rem;
}

.tt-lesson-widget-title {
	font-family: var(--wp--preset--font-family--display, 'Fraunces', Georgia, serif);
	font-size: 1rem;
	font-weight: 500;
	color: var(--primary);
	margin: 0 0 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid #f0e8e0;
	letter-spacing: -0.01em;
}

/* Product / help items */

.tt-help-products {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}

.tt-help-product-item {
	margin: 0;
}

.tt-help-product-link {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 0.875rem 1rem;
	background: var(--off-white);
	border: 1px solid #ede5dc;
	border-radius: 8px;
	text-decoration: none;
	transition: background 0.18s, border-color 0.18s;
}

.tt-help-product-link:hover {
	background: var(--salmon-light);
	border-color: var(--salmon);
}

.tt-help-product-title {
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--primary);
	line-height: 1.4;
}

.tt-help-product-price {
	display: inline-block;
	align-self: flex-start;
	background: var(--salmon);
	color: #fff;
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0.2rem 0.6rem;
	border-radius: 20px;
}

/* Related posts */

.tt-related-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.tt-related-item {
	border-bottom: 1px solid #f5ede6;
}

.tt-related-item:last-child {
	border-bottom: none;
}

.tt-related-link {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	padding: 0.625rem 0;
	text-decoration: none;
	color: var(--primary);
	font-size: 0.8125rem;
	line-height: 1.45;
	transition: color 0.15s;
}

.tt-related-link::before {
	content: "→";
	color: var(--salmon);
	flex-shrink: 0;
	font-size: 0.75rem;
	margin-top: 0.1em;
	transition: transform 0.15s;
	display: inline-block;
}

.tt-related-link:hover {
	color: var(--salmon);
}

.tt-related-link:hover::before {
	transform: translateX(3px);
}

.tt-related-title {
	flex: 1;
}

/* ─── Archive categories sidebar ─────────────────────────────── */

.lib-archive-sidebar .wp-block-categories-list,
.lib-archive-sidebar .wp-block-categories-list li {
	list-style: none;
	padding: 0;
	margin: 0;
}

.lib-archive-sidebar .wp-block-categories-list a {
	display: block;
	padding: 0.4rem 0;
	color: var(--primary);
	border-bottom: 1px solid #f0e8e0;
	font-size: 0.9rem;
}

.lib-archive-sidebar .wp-block-categories-list a:hover {
	color: var(--salmon);
}

/* ─── Responsive video embeds ────────────────────────────────── */

/* WordPress normally handles this via wp-embed-responsive body class,
   but we reinforce it here in case block styles are stripped */

.lib-single-content .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

.lib-single-content .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
	padding-bottom: 75%;
}

.lib-single-content .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
	padding-bottom: 56.25%;
}

.lib-single-content .wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

/* ─── Podcast provider section ───────────────────────────────── */

/* Platform-branded pill buttons with SVG icons via CSS mask-image.
   Images hidden; labels injected via ::after; icons via ::before.
   Zero HTML changes required. */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex {
	align-items: center;
	gap: 0.75rem 1.25rem;
	padding: 1rem 1.375rem;
	background: var(--off-white);
	border: 1px solid #e5dbd2;
	border-radius: 12px;
	flex-wrap: wrap;
	margin-top: 2rem;
}

/* "LISTEN ON" label */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex > .wp-block-heading {
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif) !important;
	font-size: 0.6875rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: #a8998f !important;
	margin: 0 !important;
	flex-shrink: 0;
}

/* Gallery pill row */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	flex: 0 0 auto;
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery .wp-block-image {
	margin: 0;
}

/* Hide platform logo images */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery img {
	display: none !important;
}

/* Base pill — each platform link */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a {
	display: inline-flex;
	align-items: center;
	gap: 0.375rem;
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
	font-size: 0.78rem;
	font-weight: 500;
	white-space: nowrap;
	padding: 0.4rem 0.875rem 0.4rem 0.7rem;
	border-radius: 100px;
	border: 1.5px solid;
	text-decoration: none;
	transition: background 0.18s ease, border-color 0.18s ease,
	            transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1),
	            box-shadow 0.18s ease;
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* SVG icon via ::before — inherits currentColor through mask */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a::before {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	background-color: currentColor;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	flex-shrink: 0;
	opacity: 0.9;
}

/* ── Apple Podcasts — purple ── */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podcasts.apple.com'] {
	color: #8b33d4;
	background: rgba(139, 51, 212, 0.06);
	border-color: rgba(139, 51, 212, 0.22);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podcasts.apple.com']:hover {
	background: rgba(139, 51, 212, 0.11);
	border-color: rgba(139, 51, 212, 0.4);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podcasts.apple.com']::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1C7 1 3 5 3 10v3h2v-3c0-3.9 3.1-7 7-7s7 3.1 7 7v3h2v-3c0-5-4-9-9-9zm-3 9c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h1v-7H9zm6 0h-1v7h1c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1C7 1 3 5 3 10v3h2v-3c0-3.9 3.1-7 7-7s7 3.1 7 7v3h2v-3c0-5-4-9-9-9zm-3 9c-1.1 0-2 .9-2 2v3c0 1.1.9 2 2 2h1v-7H9zm6 0h-1v7h1c1.1 0 2-.9 2-2v-3c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E");
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podcasts.apple.com']::after { content: "Apple Podcasts"; }

/* ── YouTube — red ── */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='youtube.com'] {
	color: #c41a1a;
	background: rgba(196, 26, 26, 0.06);
	border-color: rgba(196, 26, 26, 0.22);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='youtube.com']:hover {
	background: rgba(196, 26, 26, 0.11);
	border-color: rgba(196, 26, 26, 0.4);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='youtube.com']::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.8 8s-.2-1.4-.8-2c-.8-.8-1.7-.8-2.1-.9C16.4 5 12 5 12 5s-4.4 0-7 .1c-.4 0-1.2.1-2 .9-.6.6-.8 2-.8 2S2 9.5 2 11v1.5c0 1.5.2 3 .2 3s.2 1.4.8 2c.8.8 1.7.8 2.1.9 1.6.2 7.7.2 7.7.2s4.4 0 7-.1c.4-.1 1.2-.1 2-.9.6-.6.8-2 .8-2s.2-1.5.2-3V11c0-1.5-.2-3-.2-3zM10 14.5v-5l5 2.5-5 2.5z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.8 8s-.2-1.4-.8-2c-.8-.8-1.7-.8-2.1-.9C16.4 5 12 5 12 5s-4.4 0-7 .1c-.4 0-1.2.1-2 .9-.6.6-.8 2-.8 2S2 9.5 2 11v1.5c0 1.5.2 3 .2 3s.2 1.4.8 2c.8.8 1.7.8 2.1.9 1.6.2 7.7.2 7.7.2s4.4 0 7-.1c.4-.1 1.2-.1 2-.9.6-.6.8-2 .8-2s.2-1.5.2-3V11c0-1.5-.2-3-.2-3zM10 14.5v-5l5 2.5-5 2.5z'/%3E%3C/svg%3E");
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='youtube.com']::after { content: "YouTube"; }

/* ── Spotify — green ── */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='spotify.com'] {
	color: #157a38;
	background: rgba(21, 122, 56, 0.06);
	border-color: rgba(21, 122, 56, 0.22);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='spotify.com']:hover {
	background: rgba(21, 122, 56, 0.11);
	border-color: rgba(21, 122, 56, 0.4);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='spotify.com']::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.1 14.5c-.2.3-.6.4-.9.2-2.4-1.5-5.4-1.8-8.9-.9-.3.1-.7-.1-.8-.4-.1-.3.1-.7.4-.8 3.9-.9 7.2-.5 9.9 1.1.3.1.4.5.3.8zm1.1-2.4c-.2.4-.7.5-1.1.3-2.7-1.7-6.9-2.2-10.1-1.2-.4.1-.9-.1-1-.5-.1-.4.1-.9.5-1 3.6-1.1 8.1-.6 11.2 1.4.4.2.5.7.5 1zm.1-2.5c-3.3-2-8.6-2.1-11.7-1.2-.5.1-1-.2-1.1-.6-.1-.5.2-1 .6-1.1 3.6-1.1 9.5-.9 13.2 1.4.4.2.6.8.3 1.2-.2.5-.8.6-1.3.3z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm4.1 14.5c-.2.3-.6.4-.9.2-2.4-1.5-5.4-1.8-8.9-.9-.3.1-.7-.1-.8-.4-.1-.3.1-.7.4-.8 3.9-.9 7.2-.5 9.9 1.1.3.1.4.5.3.8zm1.1-2.4c-.2.4-.7.5-1.1.3-2.7-1.7-6.9-2.2-10.1-1.2-.4.1-.9-.1-1-.5-.1-.4.1-.9.5-1 3.6-1.1 8.1-.6 11.2 1.4.4.2.5.7.5 1zm.1-2.5c-3.3-2-8.6-2.1-11.7-1.2-.5.1-1-.2-1.1-.6-.1-.5.2-1 .6-1.1 3.6-1.1 9.5-.9 13.2 1.4.4.2.6.8.3 1.2-.2.5-.8.6-1.3.3z'/%3E%3C/svg%3E");
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='spotify.com']::after { content: "Spotify"; }

/* ── Amazon Music — blue ── */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='amazon.com'] {
	color: #0271a3;
	background: rgba(2, 113, 163, 0.06);
	border-color: rgba(2, 113, 163, 0.22);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='amazon.com']:hover {
	background: rgba(2, 113, 163, 0.11);
	border-color: rgba(2, 113, 163, 0.4);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='amazon.com']::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z'/%3E%3C/svg%3E");
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='amazon.com']::after { content: "Amazon Music"; }

/* ── Podbean — amber ── */

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podbean.com'] {
	color: #b85a08;
	background: rgba(184, 90, 8, 0.06);
	border-color: rgba(184, 90, 8, 0.22);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podbean.com']:hover {
	background: rgba(184, 90, 8, 0.11);
	border-color: rgba(184, 90, 8, 0.4);
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podbean.com']::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a3 3 0 0 1 3 3v5a3 3 0 0 1-6 0V5a3 3 0 0 1 3-3zm-1 15.93V20H9v2h6v-2h-2v-2.07A7 7 0 0 0 19 11h-2a5 5 0 0 1-10 0H5a7 7 0 0 0 6 6.93z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a3 3 0 0 1 3 3v5a3 3 0 0 1-6 0V5a3 3 0 0 1 3-3zm-1 15.93V20H9v2h6v-2h-2v-2.07A7 7 0 0 0 19 11h-2a5 5 0 0 1-10 0H5a7 7 0 0 0 6 6.93z'/%3E%3C/svg%3E");
}

.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex .wp-block-gallery a[href*='podbean.com']::after { content: "Podbean"; }

@media (max-width: 600px) {
	.lib-single-content .wp-block-group.is-content-justification-space-between.is-layout-flex {
		justify-content: flex-start;
	}
}

/* ─── Pagination ─────────────────────────────────────────────── */

.lib-pagination {
	margin-top: 3rem;
	text-align: center;
}

/* ── Lesson sidebar: widget heading ────────────────────────── */

.tt-lesson-widget-title {
	font-family: var(--font-body);
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #999;
	margin: 0 0 0.6rem !important;
	padding: 0;
}

/* ─── In This Article — sidebar TOC ──────────────────────────── */

.tt-ita-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.tt-ita-item {
	margin: 0;
}

.tt-ita-link {
	display: block;
	padding: 0.5rem 0.75rem;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: var(--primary);
	text-decoration: none;
	border-left: 2px solid transparent;
	transition: color 0.15s, border-color 0.15s, background 0.15s;
}

.tt-ita-link:hover {
	color: var(--salmon);
	background: var(--off-white);
}

.tt-ita-link.is-active {
	color: var(--salmon);
	border-left-color: var(--salmon);
	font-weight: 600;
}

/* Strip WordPress default wp-block-group padding from archive structural groups only */

.lib-archive-main,
.lib-archive-header,
.lib-archive-sidebar,
.lib-blog-card {
	padding: 0;
}

/* Strip any default block spacing inside sidebar */

.lib-archive-sidebar.wp-block-group > * {
	margin-block-start: 0 !important;
}
