/**
 * Single blog post reading layout.
 * Scoped to body.appsinsight-blog-single.
 */

body.appsinsight-blog-single {
	--ai-blog-ink: #1a1f2e;
	--ai-blog-muted: #3d4654;
	--ai-blog-paper: #f6f7f9;
	--ai-blog-surface: #ffffff;
	--ai-blog-line: color-mix(in srgb, #1a1f2e 10%, transparent);
	--ai-blog-accent: var(--primary-color, #f91942);
	--ai-blog-accent-ink: #b30e32;
	--ai-blog-radius: 12px;
	--ai-blog-ease: cubic-bezier(0.23, 1, 0.32, 1);
	--ai-blog-measure: 720px;
	--ai-blog-header-offset: 88px;
	background: var(--ai-blog-paper);
	color: var(--ai-blog-ink);
	font-size: 16px;
}

body.appsinsight-blog-single #titlebar {
	display: none;
}

/* Reading progress: 2px accent along the bottom edge of the sticky header.
   #header-container is z-index 1001; mega menu is ~99980. */
.appsinsight-article-progress {
	position: fixed;
	top: var(--ai-blog-header-offset);
	left: 0;
	right: 0;
	height: 2px;
	z-index: 1002;
	pointer-events: none;
	background: transparent;
}

.appsinsight-article-progress[hidden] {
	display: none;
}

.appsinsight-article-progress__bar {
	display: block;
	width: 100%;
	height: 100%;
	background: var(--ai-blog-accent, #f91942);
	transform: scaleX(0);
	transform-origin: 0 50%;
}

@supports (animation-timeline: scroll()) {
	.appsinsight-article-progress:not([hidden]) .appsinsight-article-progress__bar {
		animation: appsinsight-read-progress linear;
		animation-timeline: scroll(root);
	}
}

@keyframes appsinsight-read-progress {
	from {
		transform: scaleX(0);
	}
	to {
		transform: scaleX(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.appsinsight-article-progress {
		display: none;
	}
}

.appsinsight-article {
	padding: 0 0 4.5em;
}

.appsinsight-article__shell {
	width: min(1240px, calc(100% - 2.5em));
	margin: 0 auto;
}

.appsinsight-article__post {
	max-width: none;
	margin: 0;
	background: transparent;
	box-shadow: none;
	border-radius: 0;
}

.appsinsight-article__hero {
	position: relative;
	isolation: isolate;
	width: 100vw;
	margin-inline: calc((100% - 100vw) / 2);
	padding: clamp(18px, 2.2vw, 30px) 0 clamp(36px, 5vw, 64px);
	overflow: hidden;
	border-bottom: 1px solid color-mix(in srgb, var(--ai-blog-ink) 7%, transparent);
	background:
		radial-gradient(900px 380px at 8% 12%, rgba(249, 25, 66, 0.1), transparent 66%),
		radial-gradient(760px 340px at 96% 88%, rgba(59, 130, 246, 0.08), transparent 64%),
		linear-gradient(145deg, #fdfdfe 0%, #fff8f9 48%, #f4f7fb 100%);
}

.appsinsight-article__hero::after {
	position: absolute;
	z-index: -1;
	right: -8%;
	bottom: -58%;
	width: min(50vw, 680px);
	aspect-ratio: 1;
	border: 1px solid rgba(255, 255, 255, 0.58);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.16);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		0 32px 90px rgba(30, 41, 59, 0.06);
	content: "";
	pointer-events: none;
}

.appsinsight-article__hero-inner {
	width: min(1240px, calc(100% - 2.5em));
	margin: 0 auto;
}

.appsinsight-article__hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.16fr) minmax(340px, 0.84fr);
	gap: clamp(20px, 3vw, 40px);
	align-items: stretch;
}

.appsinsight-article__header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	min-height: 420px;
	margin: 0;
	padding: clamp(28px, 4vw, 48px);
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.72);
	border-radius: 18px;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.76), rgba(255, 255, 255, 0.46)),
		rgba(255, 255, 255, 0.42);
	-webkit-backdrop-filter: blur(22px) saturate(145%);
	backdrop-filter: blur(22px) saturate(145%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.92),
		inset 0 -1px 0 rgba(255, 255, 255, 0.26),
		0 22px 60px rgba(30, 41, 59, 0.08),
		0 5px 18px rgba(249, 25, 66, 0.035);
}

.appsinsight-article__crumbs {
	margin: 0 0 clamp(16px, 2vw, 24px);
}

.appsinsight-article__crumbs-list,
.appsinsight-article__crumbs ol,
.appsinsight-article__crumbs ul {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	list-style: none;
}

.appsinsight-article__crumbs li {
	flex: 0 0 auto;
	margin: 0;
	padding: 7px 0;
	font-size: 0.8125em;
	line-height: 1.45;
	color: var(--ai-blog-muted);
}

.appsinsight-article__crumbs li:last-child {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.appsinsight-article__crumbs li:not(:last-child)::after {
	content: "/";
	margin: 0 0.45em;
	color: color-mix(in srgb, var(--ai-blog-ink) 28%, transparent);
	speak: never;
}

.appsinsight-article__crumbs a {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	color: var(--ai-blog-muted);
	text-decoration: none;
}

.appsinsight-article__crumbs a:hover,
.appsinsight-article__crumbs a:focus-visible {
	color: var(--ai-blog-accent-ink);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.appsinsight-article__crumbs [aria-current="page"] {
	color: var(--ai-blog-ink);
}

.appsinsight-article__category {
	align-self: flex-start;
	margin: 0 0 16px;
	font-size: 0.75em;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	color: var(--ai-blog-accent-ink);
}

.appsinsight-article__category a {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 8px 13px;
	border: 1px solid color-mix(in srgb, var(--ai-blog-accent) 20%, rgba(255, 255, 255, 0.82));
	border-radius: 999px;
	background: color-mix(in srgb, var(--ai-blog-accent) 8%, rgba(255, 255, 255, 0.62));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.74);
	color: inherit;
	text-decoration: none;
	transition:
		background-color 160ms var(--ai-blog-ease),
		border-color 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

.appsinsight-article__category a:hover,
.appsinsight-article__category a:focus-visible {
	border-color: color-mix(in srgb, var(--ai-blog-accent) 34%, transparent);
	background: color-mix(in srgb, var(--ai-blog-accent) 12%, rgba(255, 255, 255, 0.72));
	text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
	.appsinsight-article__category a:hover {
		transform: translateY(-1px);
	}
}

.appsinsight-article__category a:active {
	transform: scale(0.98);
}

.appsinsight-article__title {
	max-width: 100%;
	margin: 0 0 24px;
	padding: 0;
	color: var(--ai-blog-ink);
	font-family: inherit;
	font-size: clamp(36px, 3.2vw, 42px);
	font-weight: 800;
	letter-spacing: -0.035em;
	line-height: 1.08;
	overflow-wrap: anywhere;
	text-wrap: balance;
}

.appsinsight-article__title:has(+ .appsinsight-article__excerpt) {
	margin-bottom: 16px;
}

.appsinsight-article__excerpt {
	max-width: 54ch;
	margin: 0 0 28px;
	color: var(--ai-blog-muted);
	font-size: clamp(16px, 1.35vw, 18px);
	font-weight: 400;
	letter-spacing: -0.01em;
	line-height: 1.55;
	text-wrap: pretty;
}

.appsinsight-article__byline {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: auto 0 0;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.58);
}

.appsinsight-article__avatar {
	width: 48px;
	height: 48px;
	border: 2px solid rgba(255, 255, 255, 0.78);
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
	box-shadow: 0 5px 16px rgba(30, 41, 59, 0.12);
}

.appsinsight-article__byline-text {
	min-width: 0;
}

.appsinsight-article__author {
	margin: 0;
	font-size: 0.9375em;
	font-weight: 700;
	line-height: 1.35;
}

.appsinsight-article__author a {
	color: var(--ai-blog-ink);
	text-decoration: none;
}

.appsinsight-article__author a:hover,
.appsinsight-article__author a:focus-visible {
	color: var(--ai-blog-accent-ink);
}

.appsinsight-article__meta,
.appsinsight-article__updated,
.appsinsight-article__reviewed {
	margin: 0.2em 0 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45em;
	font-size: 0.8125em;
	line-height: 1.4;
	color: var(--ai-blog-muted);
}

/* Editorial review is a stronger claim than "updated", so it reads stronger. */
.appsinsight-article__reviewed {
	font-weight: 600;
	color: var(--ai-blog-ink, #1f2937);
}

/* Sits above the first paragraph. It has to be legible without being a banner
   the eye learns to skip, so it reads as a quiet aside rather than a callout. */
.appsinsight-article__disclosure {
	margin: 0 0 1.75em;
	padding-bottom: 1.1em;
	border-bottom: 1px solid var(--ai-blog-border, #e5e7eb);
	font-size: 0.875em;
	line-height: 1.55;
	color: var(--ai-blog-muted);
}

.appsinsight-article__disclosure strong {
	font-weight: 600;
	color: var(--ai-blog-ink, #1f2937);
}

.appsinsight-article__meta-sep {
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: currentColor;
	opacity: 0.55;
}

.appsinsight-article__figure {
	position: relative;
	align-self: stretch;
	min-width: 0;
	margin: 0;
	padding: 7px;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: 18px;
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.52), rgba(255, 255, 255, 0.18)),
		rgba(255, 255, 255, 0.24);
	-webkit-backdrop-filter: blur(14px) saturate(135%);
	backdrop-filter: blur(14px) saturate(135%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.9),
		0 22px 60px rgba(30, 41, 59, 0.1);
}

.appsinsight-article__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 12px;
	background: color-mix(in srgb, var(--ai-blog-ink) 6%, var(--ai-blog-paper));
}

.appsinsight-article__hero--no-media .appsinsight-article__hero-grid {
	grid-template-columns: minmax(0, 860px);
	justify-content: center;
}

.appsinsight-article__hero--no-media .appsinsight-article__header {
	min-height: 380px;
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	.appsinsight-article__header {
		background: #fdfdfe;
	}

	.appsinsight-article__figure {
		background: #f8fafc;
	}
}

@media (max-width: 959px) {
	.appsinsight-article__hero-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.appsinsight-article__header,
	.appsinsight-article__hero--no-media .appsinsight-article__header {
		min-height: 0;
	}

	.appsinsight-article__figure {
		align-self: auto;
		aspect-ratio: 16 / 9;
	}

}

@media (max-width: 639px) {
	.appsinsight-article__hero {
		padding: 12px 0 32px;
	}

	.appsinsight-article__hero-inner {
		width: min(100% - 1.25em, 1240px);
	}

	.appsinsight-article__hero-grid {
		gap: 14px;
	}

	.appsinsight-article__header {
		padding: 24px 20px;
		border-radius: 16px;
	}

	.appsinsight-article__crumbs {
		margin-bottom: 10px;
	}

	.appsinsight-article__crumbs li {
		font-size: 0.75em;
	}

	.appsinsight-article__crumbs li:last-child {
		max-width: 42vw;
	}

	.appsinsight-article__category {
		margin-bottom: 14px;
	}

	.appsinsight-article__title {
		max-width: none;
		margin-bottom: 18px;
		font-size: clamp(30px, 9vw, 38px);
		line-height: 1.1;
	}

	.appsinsight-article__title:has(+ .appsinsight-article__excerpt) {
		margin-bottom: 14px;
	}

	.appsinsight-article__excerpt {
		margin-bottom: 22px;
		font-size: 16px;
		line-height: 1.5;
	}

	.appsinsight-article__byline {
		padding-top: 18px;
	}

	.appsinsight-article__figure {
		padding: 5px;
		border-radius: 16px;
	}

	.appsinsight-article__image {
		border-radius: 11px;
	}
}

.appsinsight-article__body {
	display: flex;
	flex-direction: column;
	gap: 1.35em;
	margin: 1.25em 0 0;
}

.appsinsight-article__toc[hidden] {
	display: none;
}

.appsinsight-article__prose {
	min-width: 0;
}

/* Prose */
body.appsinsight-blog-single .appsinsight-article__content.post-content {
	width: 100%;
	margin: 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
	color: var(--ai-blog-ink);
	display: block;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.65;
	text-wrap: pretty;
}

body.appsinsight-blog-single .appsinsight-article__content.post-content p,
body.appsinsight-blog-single .appsinsight-article__content.post-content li,
body.appsinsight-blog-single .appsinsight-article__content.post-content td,
body.appsinsight-blog-single .appsinsight-article__content.post-content th {
	color: var(--ai-blog-ink);
	font-size: inherit;
	line-height: inherit;
}

body.appsinsight-blog-single.single-post .appsinsight-article__content.post-content p,
body.appsinsight-blog-single .appsinsight-article__content.post-content p {
	margin: 0 0 0.7em;
}

body.appsinsight-blog-single.single-post .appsinsight-article__content.post-content p:last-child,
body.appsinsight-blog-single .appsinsight-article__content.post-content p:last-child {
	margin-bottom: 0;
}

body.appsinsight-blog-single .appsinsight-article__content .ez-toc-section,
body.appsinsight-blog-single .appsinsight-article__content .ez-toc-section-end {
	display: inline;
	height: auto;
	margin: 0;
	padding: 0;
}

body.appsinsight-blog-single .appsinsight-article__content.post-content a {
	color: var(--ai-blog-accent-ink);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

body.appsinsight-blog-single .appsinsight-article__content.post-content a:hover,
body.appsinsight-blog-single .appsinsight-article__content.post-content a:focus-visible {
	color: var(--ai-blog-accent);
}

body.appsinsight-blog-single .appsinsight-article__content h2,
body.appsinsight-blog-single .appsinsight-article__content h3,
body.appsinsight-blog-single .appsinsight-article__content h4 {
	color: var(--ai-blog-ink);
	font-family: inherit;
	font-weight: 600;
	letter-spacing: -0.02em;
	line-height: 1.28;
	text-wrap: balance;
	scroll-margin-top: calc(var(--ai-blog-header-offset) + 0.5em);
}

body.appsinsight-blog-single .appsinsight-article__content h2 {
	margin: 1.15em 0 0.4em;
	font-size: 26px;
}

body.appsinsight-blog-single .appsinsight-article__content h2:first-child {
	margin-top: 0;
}

body.appsinsight-blog-single .appsinsight-article__content h3 {
	margin: 0.95em 0 0.3em;
	font-size: 21px;
}

body.appsinsight-blog-single .appsinsight-article__content h4 {
	margin: 0.85em 0 0.28em;
	font-size: 1.0625em;
}

body.appsinsight-blog-single .appsinsight-article__content ul,
body.appsinsight-blog-single .appsinsight-article__content ol {
	margin: 0 0 0.75em;
	padding-left: 1.25em;
}

body.appsinsight-blog-single .appsinsight-article__content li + li {
	margin-top: 0.35em;
}

body.appsinsight-blog-single .appsinsight-article__content blockquote {
	position: relative;
	isolation: isolate;
	margin: 1.65em 0;
	padding: clamp(1.25em, 2.4vw, 1.65em) clamp(1.25em, 3vw, 1.9em) clamp(1.25em, 2.4vw, 1.65em)
		clamp(4.65em, 8vw, 5.45em);
	overflow: hidden;
	border: 1px solid rgba(61, 70, 84, 0.12);
	border-radius: 22px;
	background:
		radial-gradient(150px 110px at 0 0, rgba(249, 25, 66, 0.1), transparent 74%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(249, 250, 253, 0.62)),
		rgba(255, 255, 255, 0.52);
	-webkit-backdrop-filter: blur(18px) saturate(145%);
	backdrop-filter: blur(18px) saturate(145%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.92),
		0 16px 38px rgba(41, 47, 61, 0.065);
	color: var(--ai-blog-ink);
	font-size: clamp(1.02em, 1.2vw, 1.12em);
	font-style: italic;
	line-height: 1.65;
	text-wrap: pretty;
}

body.appsinsight-blog-single .appsinsight-article__content blockquote::before {
	position: absolute;
	top: 1.15em;
	inset-inline-start: 1.15em;
	z-index: 1;
	display: grid;
	width: 2.45em;
	height: 2.45em;
	place-items: center;
	padding-top: 0.18em;
	border: 1px solid rgba(249, 25, 66, 0.16);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.62);
	color: var(--ai-blog-accent);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.94),
		0 8px 20px rgba(249, 25, 66, 0.08);
	content: "“";
	font-family: Georgia, serif;
	font-size: 1.75em;
	font-style: normal;
	line-height: 1;
}

body.appsinsight-blog-single .appsinsight-article__content blockquote::after {
	position: absolute;
	top: 0;
	inset-inline-start: 4.7em;
	width: 7.5em;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, rgba(249, 25, 66, 0.62), rgba(249, 25, 66, 0));
	content: "";
}

body.appsinsight-blog-single .appsinsight-article__content blockquote p {
	position: relative;
	z-index: 1;
	margin: 0;
}

body.appsinsight-blog-single .appsinsight-article__content blockquote p + p {
	margin-top: 0.75em;
}

body.appsinsight-blog-single .appsinsight-article__content blockquote cite {
	display: block;
	margin-top: 0.9em;
	color: var(--ai-blog-muted);
	font-size: 0.78em;
	font-style: normal;
	font-weight: 600;
}

@media (max-width: 639px) {
	body.appsinsight-blog-single .appsinsight-article__content blockquote {
		padding: 4.65em 1.2em 1.3em;
		border-radius: 18px;
	}

	body.appsinsight-blog-single .appsinsight-article__content blockquote::before {
		top: 0.9em;
		inset-inline-start: 1.05em;
	}

	body.appsinsight-blog-single .appsinsight-article__content blockquote::after {
		inset-inline-start: 4.45em;
	}
}

body.appsinsight-blog-single .appsinsight-article__content img {
	max-width: 100%;
	height: auto;
	border-radius: var(--ai-blog-radius);
}

body.appsinsight-blog-single .appsinsight-article__content table {
	width: 100%;
	margin: 0 0 1.25em;
	border-collapse: collapse;
	font-size: 0.9375em;
}

body.appsinsight-blog-single .appsinsight-article__content th,
body.appsinsight-blog-single .appsinsight-article__content td {
	padding: 0.55em 0.7em;
	border-bottom: 1px solid var(--ai-blog-line);
	text-align: left;
}

body.appsinsight-blog-single .appsinsight-article__content .page-links {
	margin: 1.5em 0;
	font-weight: 600;
}

/* Easy TOC: moved into .appsinsight-article__toc by JS. */
body.appsinsight-blog-single .appsinsight-article__content #ez-toc-container {
	display: none;
}

body.appsinsight-blog-single #ez-toc-container,
body.appsinsight-blog-single .ez-toc-container {
	position: relative;
	display: block !important;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 14px !important;
	overflow: hidden;
	border: 1px solid rgba(61, 70, 84, 0.14) !important;
	border-radius: 20px;
	background:
		linear-gradient(155deg, rgba(255, 255, 255, 0.78), rgba(255, 249, 250, 0.54) 56%, rgba(244, 248, 255, 0.62)),
		rgba(255, 255, 255, 0.42) !important;
	background-clip: padding-box;
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.9),
		inset 0 0 22px rgba(255, 255, 255, 0.18) !important;
}

body.appsinsight-blog-single #ez-toc-container::before,
body.appsinsight-blog-single .ez-toc-container::before {
	display: none;
}

body.appsinsight-blog-single #ez-toc-container > *,
body.appsinsight-blog-single .ez-toc-container > * {
	position: relative;
	z-index: 1;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-title-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 0 6px;
	padding: 3px 4px 11px;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-title {
	margin: 0;
	color: var(--ai-blog-ink);
	cursor: default;
	font-size: 17px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-title-toggle,
body.appsinsight-blog-single #ez-toc-container .ez-toc-toggle {
	display: none;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list {
	display: block !important;
	margin: 0;
	padding: 0;
	list-style: none !important;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li + li {
	margin-top: 3px;
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 14px;
	align-items: center;
	gap: 8px;
	width: 100%;
	padding: 9px 10px;
	color: var(--ai-blog-muted);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.32;
	text-decoration: none;
	border-radius: 12px;
	text-wrap: pretty;
	transition:
		background-color 160ms var(--ai-blog-ease),
		box-shadow 160ms var(--ai-blog-ease),
		color 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a::after {
	color: var(--ai-blog-accent-ink);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	content: "→";
	opacity: 0;
	transform: translateX(-4px);
	transition:
		opacity 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:hover,
body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:focus-visible {
	color: var(--ai-blog-ink);
	background: rgba(255, 255, 255, 0.56);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

@media (hover: hover) and (pointer: fine) {
	body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:hover {
		transform: translateX(2px);
	}
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li[data-appsinsight-active="true"] > a,
body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a[data-appsinsight-active="true"] {
	color: var(--ai-blog-accent-ink);
	font-weight: 700;
	background:
		linear-gradient(135deg, rgba(249, 25, 66, 0.1), rgba(255, 255, 255, 0.56)),
		rgba(255, 255, 255, 0.48);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 5px 16px rgba(249, 25, 66, 0.055);
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li[data-appsinsight-active="true"] > a::after,
body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a[data-appsinsight-active="true"]::after {
	opacity: 1;
	transform: translateX(0);
}

body.appsinsight-blog-single #ez-toc-container .ez-toc-list ul,
body.appsinsight-blog-single #ez-toc-container .ez-toc-list-level-3,
body.appsinsight-blog-single #ez-toc-container .ez-toc-list > .ez-toc-heading-level-3,
body.appsinsight-blog-single #ez-toc-container.counter-hierarchy .ez-toc-list li::before,
body.appsinsight-blog-single #ez-toc-container .ez-toc-counter .ez-toc-list li::before,
body.appsinsight-blog-single #ez-toc-container.counter-hierarchy .ez-toc-list li a::before,
body.appsinsight-blog-single #ez-toc-container.ez-toc-counter .ez-toc-list li a::before {
	display: none !important;
	content: none !important;
}

/* Sticky share rail */
.appsinsight-share-rail {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	align-self: flex-start;
	gap: 4px;
	width: max-content;
	max-width: 100%;
	padding: 7px;
	overflow: hidden;
	border: 0;
	border-radius: 24px;
	background:
		linear-gradient(155deg, rgba(255, 255, 255, 0.72), rgba(255, 248, 250, 0.46) 54%, rgba(242, 247, 255, 0.54)),
		rgba(255, 255, 255, 0.34);
	-webkit-backdrop-filter: blur(24px) saturate(155%);
	backdrop-filter: blur(24px) saturate(155%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.86),
		inset 0 -1px 0 rgba(255, 255, 255, 0.2),
		0 10px 30px rgba(81, 42, 55, 0.055);
}

.appsinsight-share-rail::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	padding: 1px;
	border-radius: inherit;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.96),
		rgba(255, 255, 255, 0.2) 42%,
		rgba(249, 25, 66, 0.14) 72%,
		rgba(255, 255, 255, 0.58)
	);
	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	content: "";
	pointer-events: none;
}

.appsinsight-share-rail::after {
	position: absolute;
	z-index: 0;
	top: -28px;
	left: -20px;
	width: 82px;
	height: 82px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.78), transparent 68%);
	content: "";
	pointer-events: none;
}

.appsinsight-share-rail > * {
	position: relative;
	z-index: 1;
}

.appsinsight-share-rail__label {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.appsinsight-share-rail__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.appsinsight-share-rail__list li {
	margin: 0;
}

.appsinsight-share-rail__list li:last-child {
	position: relative;
	margin-left: 6px;
	padding-left: 7px;
}

.appsinsight-share-rail__list li:last-child::before {
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 0;
	width: 1px;
	background: linear-gradient(180deg, transparent, rgba(61, 70, 84, 0.18), transparent);
	content: "";
}

.appsinsight-share-rail__btn {
	appearance: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--ai-blog-ink);
	cursor: pointer;
	text-decoration: none;
	box-shadow: none;
	transition:
		color 160ms var(--ai-blog-ease),
		background-color 160ms var(--ai-blog-ease),
		box-shadow 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

.appsinsight-share-rail__btn i {
	display: block;
	width: 16px;
	font-size: 15px;
	line-height: 1;
	text-align: center;
}

.appsinsight-share-rail__btn:hover,
.appsinsight-share-rail__btn:focus-visible {
	background: rgba(255, 255, 255, 0.62);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.9),
		0 5px 14px rgba(30, 41, 59, 0.07);
}

@media (hover: hover) and (pointer: fine) {
	.appsinsight-share-rail__btn:hover {
		transform: translateY(-1px);
	}
}

.appsinsight-share-rail__btn:active {
	transform: scale(0.96);
}

.appsinsight-share-rail__btn--facebook:hover,
.appsinsight-share-rail__btn--facebook:focus-visible {
	color: #1769c2;
}

.appsinsight-share-rail__btn--pinterest:hover,
.appsinsight-share-rail__btn--pinterest:focus-visible {
	color: #a8071a;
}

.appsinsight-share-rail__btn--linkedin:hover,
.appsinsight-share-rail__btn--linkedin:focus-visible {
	color: #075a9c;
}

.appsinsight-share-rail__btn.is-copied {
	background: rgba(22, 163, 74, 0.1);
	color: #147238;
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	.appsinsight-share-rail {
		background: var(--ai-blog-surface);
	}
}

/* Close: author, related, explore, comments */
.appsinsight-article__close {
	width: min(1240px, calc(100% - 2.5em));
	margin: 3.25em auto 0;
}

/* Sidebar: software, companies, latest posts */
.appsinsight-article__sidebar {
	display: flex;
	flex-direction: column;
	gap: 1.25em;
	min-width: 0;
}

.appsinsight-article__sidebar > * {
	flex-shrink: 0;
}

.appsinsight-blog-search,
.appsinsight-blog-latest {
	position: relative;
	overflow: hidden;
	border: 0;
	border-radius: 20px;
	background:
		linear-gradient(155deg, rgba(255, 255, 255, 0.78), rgba(255, 249, 250, 0.54) 56%, rgba(244, 248, 255, 0.62)),
		rgba(255, 255, 255, 0.42);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.9),
		inset 0 0 0 1px rgba(255, 255, 255, 0.4),
		0 14px 38px rgba(63, 42, 51, 0.07);
}

.appsinsight-blog-search::before,
.appsinsight-blog-latest::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	padding: 1px;
	border-radius: inherit;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.94),
		rgba(255, 255, 255, 0.16) 44%,
		rgba(249, 25, 66, 0.11) 78%,
		rgba(255, 255, 255, 0.52)
	);
	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	content: "";
	pointer-events: none;
}

.appsinsight-blog-search > *,
.appsinsight-blog-latest > * {
	position: relative;
	z-index: 1;
}

.appsinsight-blog-search {
	padding: 16px;
}

.appsinsight-blog-search__heading {
	display: flex;
	align-items: center;
	gap: 10px;
}

.appsinsight-blog-search__heading-icon {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 12px;
	background: rgba(249, 25, 66, 0.09);
	color: var(--ai-blog-accent-ink);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.appsinsight-blog-search__heading-icon i {
	font-size: 13px;
}

.appsinsight-blog-search__title {
	margin: 0;
	color: var(--ai-blog-ink);
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.2;
}

.appsinsight-blog-search__hint {
	margin: 3px 0 0;
	color: var(--ai-blog-muted);
	font-size: 11.5px;
	line-height: 1.35;
}

.appsinsight-blog-search__form {
	margin: 14px 0 0;
}

.appsinsight-blog-search__control {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 48px;
	overflow: hidden;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.62);
	box-shadow:
		inset 0 0 0 1px color-mix(in srgb, var(--ai-blog-ink) 10%, transparent),
		inset 0 1px 0 rgba(255, 255, 255, 0.86);
	transition:
		box-shadow 160ms var(--ai-blog-ease),
		background-color 160ms var(--ai-blog-ease);
}

.appsinsight-blog-search__control:focus-within {
	background: rgba(255, 255, 255, 0.78);
	box-shadow:
		inset 0 0 0 1px color-mix(in srgb, var(--ai-blog-accent) 48%, transparent),
		inset 0 1px 0 rgba(255, 255, 255, 0.92),
		0 0 0 3px color-mix(in srgb, var(--ai-blog-accent) 12%, transparent);
}

.appsinsight-blog-search__field-icon {
	position: absolute;
	z-index: 1;
	left: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--ai-blog-muted);
	pointer-events: none;
}

.appsinsight-blog-search__field-icon i {
	font-size: 12px;
}

.appsinsight-blog-search__field {
	-webkit-appearance: none;
	appearance: none;
	flex: 1 1 auto;
	min-width: 0;
	height: 48px;
	margin: 0;
	padding: 0 50px 0 38px;
	border: 0;
	border-radius: 14px;
	outline: 0;
	background: transparent;
	color: var(--ai-blog-ink);
	box-shadow: none !important;
	font: inherit;
	font-size: 13px;
	line-height: 1.2;
}

.appsinsight-blog-search__field::placeholder {
	color: var(--ai-blog-muted);
	opacity: 1;
}

.appsinsight-blog-search__submit {
	appearance: none;
	position: absolute;
	z-index: 2;
	right: 6px;
	flex: 0 0 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	width: 36px;
	height: 36px;
	padding: 0;
	border: 0;
	border-radius: 11px;
	background: var(--ai-blog-ink);
	color: #fdfdfe;
	font: inherit;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.18),
		0 5px 14px rgba(30, 41, 59, 0.14);
	transition:
		background-color 160ms var(--ai-blog-ease),
		box-shadow 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

.appsinsight-blog-search__submit:hover,
.appsinsight-blog-search__submit:focus-visible {
	background: var(--ai-blog-accent);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		0 6px 16px rgba(249, 25, 66, 0.2);
}

.appsinsight-blog-search__submit:active {
	transform: scale(0.95);
}

.appsinsight-blog-latest__title {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	margin: 0;
	padding: 18px 18px 11px;
	color: var(--ai-blog-ink);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.appsinsight-blog-latest__count {
	flex: 0 0 auto;
	color: var(--ai-blog-muted);
	font-size: 10.5px;
	font-weight: 600;
	letter-spacing: 0;
}

.appsinsight-blog-latest__list {
	margin: 0;
	padding: 0 8px 10px;
	list-style: none;
}

.appsinsight-blog-latest__item {
	margin: 0;
	padding: 0;
}

.appsinsight-blog-latest__link {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) 14px;
	align-items: center;
	gap: 10px;
	min-height: 72px;
	padding: 8px 9px;
	border-radius: 14px;
	color: inherit;
	text-decoration: none;
	transition:
		background-color 160ms var(--ai-blog-ease),
		box-shadow 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

.appsinsight-blog-latest__link:hover,
.appsinsight-blog-latest__link:focus-visible {
	background: rgba(255, 255, 255, 0.56);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

@media (hover: hover) and (pointer: fine) {
	.appsinsight-blog-latest__link:hover {
		transform: translateX(2px);
	}
}

.appsinsight-blog-latest__image,
.appsinsight-blog-latest__image-fallback {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 12px;
	background: color-mix(in srgb, var(--ai-blog-accent) 7%, var(--ai-blog-surface));
	object-fit: cover;
	box-shadow:
		inset 0 0 0 1px rgba(255, 255, 255, 0.45),
		0 5px 14px rgba(30, 41, 59, 0.07);
}

.appsinsight-blog-latest__image {
	transition: transform 180ms var(--ai-blog-ease);
}

@media (hover: hover) and (pointer: fine) {
	.appsinsight-blog-latest__link:hover .appsinsight-blog-latest__image {
		transform: scale(1.035);
	}
}

.appsinsight-blog-latest__image-fallback {
	color: var(--ai-blog-accent-ink);
	font-size: 17px;
}

.appsinsight-blog-latest__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.appsinsight-blog-latest__date {
	color: var(--ai-blog-muted);
	font-size: 10.5px;
	font-weight: 600;
	line-height: 1.2;
}

.appsinsight-blog-latest__name {
	display: -webkit-box;
	overflow: hidden;
	color: var(--ai-blog-ink);
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.3;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.appsinsight-blog-latest__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--ai-blog-accent-ink);
	font-size: 9px;
	opacity: 0;
	transform: translateX(-4px);
	transition:
		opacity 160ms var(--ai-blog-ease),
		transform 160ms var(--ai-blog-ease);
}

.appsinsight-blog-latest__link:hover .appsinsight-blog-latest__arrow,
.appsinsight-blog-latest__link:focus-visible .appsinsight-blog-latest__arrow {
	opacity: 1;
	transform: translateX(0);
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
	.appsinsight-blog-search,
	.appsinsight-blog-latest,
	body.appsinsight-blog-single #ez-toc-container,
	body.appsinsight-blog-single .ez-toc-container {
		background: var(--ai-blog-surface) !important;
	}
}

.appsinsight-article__toc {
	width: 100%;
	min-width: 0;
}

@media (min-width: 1100px) {
	.appsinsight-article__post {
		display: grid;
		grid-template-columns: 58px minmax(0, 1fr) 272px;
		align-items: start;
		column-gap: 1.85em;
		row-gap: 1.35em;
	}

	.appsinsight-article__hero {
		grid-column: 1 / -1;
	}

	.appsinsight-article__body {
		display: contents;
	}

	.appsinsight-share-rail {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: center;
		gap: 0;
		position: sticky;
		top: calc(var(--ai-blog-header-offset) + 20px);
		z-index: 5;
		width: 58px;
		padding: 7px;
	}

	.appsinsight-share-rail__list {
		flex-direction: column;
		flex-wrap: nowrap;
		align-items: center;
		gap: 2px;
	}

	.appsinsight-share-rail__list li:last-child {
		margin-top: 6px;
		margin-left: 0;
		padding-top: 7px;
		padding-left: 0;
	}

	.appsinsight-share-rail__list li:last-child::before {
		top: 0;
		right: 8px;
		bottom: auto;
		left: 8px;
		width: auto;
		height: 1px;
		background: linear-gradient(90deg, transparent, rgba(61, 70, 84, 0.18), transparent);
	}

	.appsinsight-share-rail__btn {
		width: 42px;
		height: 42px;
	}

	.appsinsight-article__prose {
		min-width: 0;
		max-width: none;
	}

	.appsinsight-article__sidebar {
		align-self: stretch;
		position: static;
		max-height: none;
		overflow: visible;
		padding-top: 0;
	}

	.appsinsight-article__toc:not([hidden]) {
		position: sticky;
		top: calc(var(--ai-blog-header-offset) + 20px);
		z-index: 5;
		align-self: start;
		max-height: calc(100vh - var(--ai-blog-header-offset) - 40px);
		overflow: auto;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}

	.appsinsight-article__toc:not([hidden])::-webkit-scrollbar {
		display: none;
	}
}

.appsinsight-article .appsinsight-author-bio {
	max-width: 720px;
	margin: 0 0 3em;
}

.appsinsight-article .appsinsight-author-bio__inner::before {
	display: none;
}

.appsinsight-article .appsinsight-author-bio__inner {
	border-radius: var(--ai-blog-radius);
	box-shadow: none;
}

.appsinsight-article__related {
	margin: 0 0 3.25em;
}

.appsinsight-article__related-title,
.appsinsight-article__explore-title {
	margin: 0 0 1.15em;
	color: var(--ai-blog-ink);
	font-size: 1.25em;
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.25;
	text-wrap: balance;
}

.appsinsight-article__related-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.15em;
}

@media (min-width: 720px) {
	.appsinsight-article__related-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.appsinsight-related-card {
	margin: 0;
	background: var(--ai-blog-surface);
	border: 1px solid var(--ai-blog-line);
	border-radius: var(--ai-blog-radius);
	overflow: hidden;
}

.appsinsight-related-card__link {
	display: flex;
	flex-direction: column;
	height: 100%;
	color: inherit;
	text-decoration: none;
	transition: transform 180ms var(--ai-blog-ease);
}

@media (hover: hover) and (pointer: fine) {
	.appsinsight-related-card__link:hover {
		transform: translateY(-2px);
	}
}

.appsinsight-related-card__link:active {
	transform: scale(0.99);
}

.appsinsight-related-card__media {
	display: block;
	aspect-ratio: 16 / 9;
	background: color-mix(in srgb, var(--ai-blog-ink) 6%, var(--ai-blog-paper));
	overflow: hidden;
}

.appsinsight-related-card__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.appsinsight-related-card__body {
	display: flex;
	flex-direction: column;
	gap: 0.4em;
	padding: 0.95em 1em 1.1em;
}

.appsinsight-related-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45em;
	color: var(--ai-blog-muted);
	font-size: 0.75em;
	font-weight: 500;
	line-height: 1.3;
}

.appsinsight-related-card__title {
	margin: 0;
	color: var(--ai-blog-ink);
	font-size: 1em;
	font-weight: 700;
	letter-spacing: -0.015em;
	line-height: 1.3;
	text-wrap: balance;
}

.appsinsight-related-card__excerpt {
	color: var(--ai-blog-muted);
	font-size: 0.8125em;
	line-height: 1.45;
}

.appsinsight-article__explore {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.85em 1.5em;
	margin: 0 0 3.25em;
	padding: 1.15em 0;
	border-top: 1px solid var(--ai-blog-line);
	border-bottom: 1px solid var(--ai-blog-line);
}

.appsinsight-article__explore-title {
	margin: 0;
}

.appsinsight-article__explore-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75em 1.35em;
}

.appsinsight-article__explore-link {
	color: var(--ai-blog-accent-ink);
	font-size: 0.9375em;
	font-weight: 600;
	text-decoration: none;
}

.appsinsight-article__explore-link:hover,
.appsinsight-article__explore-link:focus-visible {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* Comments */
body.appsinsight-blog-single .appsinsight-article .comments {
	max-width: 720px;
	margin: 0;
	padding: 0;
}

body.appsinsight-blog-single .appsinsight-article .comments .headline,
body.appsinsight-blog-single .appsinsight-article .comments h4.headline {
	margin: 0 0 1.25em;
	color: var(--ai-blog-ink);
	font-size: 1.25em;
	font-weight: 700;
}

body.appsinsight-blog-single .appsinsight-article .margin-top-50 {
	margin-top: 0;
}

body.appsinsight-blog-single .appsinsight-article #respond {
	margin: 0;
	padding: 1.35em 1.35em 1.5em;
	background: var(--ai-blog-surface);
	border: 1px solid var(--ai-blog-line);
	border-radius: var(--ai-blog-radius);
}

body.appsinsight-blog-single .appsinsight-article #reply-title,
body.appsinsight-blog-single .appsinsight-article #respond #reply-title {
	margin: 0 0 0.35em;
	color: var(--ai-blog-ink);
	font-size: 1.2em;
	font-weight: 700;
}

body.appsinsight-blog-single .appsinsight-article .comment-notes,
body.appsinsight-blog-single .appsinsight-article .logged-in-as {
	color: var(--ai-blog-muted);
	font-size: 0.875em;
}

body.appsinsight-blog-single .appsinsight-article .comment-form-author,
body.appsinsight-blog-single .appsinsight-article .comment-form-email,
body.appsinsight-blog-single .appsinsight-article .comment-form-url,
body.appsinsight-blog-single .appsinsight-article .comment-form-comment {
	margin: 0 0 0.9em;
}

body.appsinsight-blog-single .appsinsight-article .comment-form label {
	display: block;
	margin: 0 0 0.35em;
	color: var(--ai-blog-ink);
	font-size: 0.875em;
	font-weight: 600;
}

body.appsinsight-blog-single .appsinsight-article #respond input,
body.appsinsight-blog-single .appsinsight-article #respond textarea {
	width: 100%;
	max-width: 100%;
	padding: 0.65em 0.75em;
	border: 1px solid var(--ai-blog-line);
	border-radius: 8px;
	background: var(--ai-blog-surface);
	color: var(--ai-blog-ink);
	font: inherit;
	font-size: 1em;
	line-height: 1.4;
}

body.appsinsight-blog-single .appsinsight-article #respond input::placeholder,
body.appsinsight-blog-single .appsinsight-article #respond textarea::placeholder {
	color: var(--ai-blog-muted);
	opacity: 1;
}

body.appsinsight-blog-single .appsinsight-article #respond input:focus,
body.appsinsight-blog-single .appsinsight-article #respond textarea:focus {
	outline: 2px solid var(--ai-blog-accent);
	outline-offset: 2px;
	border-color: color-mix(in srgb, var(--ai-blog-accent) 45%, var(--ai-blog-line));
}

body.appsinsight-blog-single .appsinsight-article #respond input[type="checkbox"] {
	width: auto;
	margin-right: 0.45em;
}

body.appsinsight-blog-single .appsinsight-article p.comment-form-cookies-consent {
	display: flex;
	align-items: flex-start;
	gap: 0.4em;
	color: var(--ai-blog-muted);
	font-size: 0.8125em;
}

body.appsinsight-blog-single .appsinsight-article #respond input[type="submit"],
body.appsinsight-blog-single .appsinsight-article .comment-form input[type="submit"] {
	width: auto;
	margin-top: 0.35em;
	padding: 0.7em 1.2em;
	border: 0;
	border-radius: 999px;
	background: var(--ai-blog-accent);
	color: #fff;
	font-size: 0.9375em;
	font-weight: 700;
	cursor: pointer;
	transition: transform 160ms var(--ai-blog-ease), filter 160ms var(--ai-blog-ease);
}

body.appsinsight-blog-single .appsinsight-article #respond input[type="submit"]:hover,
body.appsinsight-blog-single .appsinsight-article #respond input[type="submit"]:focus-visible {
	filter: brightness(0.95);
}

body.appsinsight-blog-single .appsinsight-article #respond input[type="submit"]:active {
	transform: scale(0.97);
}

@media (min-width: 640px) {
	body.appsinsight-blog-single .appsinsight-article .comment-form-author,
	body.appsinsight-blog-single .appsinsight-article .comment-form-email {
		float: none;
		display: inline-block;
		width: calc(50% - 0.5em);
		vertical-align: top;
	}

	body.appsinsight-blog-single .appsinsight-article .comment-form-email {
		margin-left: 1em;
	}
}

@media (max-width: 639px) {
	body.appsinsight-blog-single .appsinsight-article .comment-form-author,
	body.appsinsight-blog-single .appsinsight-article .comment-form-email {
		display: block;
		float: none;
		width: 100%;
		margin-left: 0;
	}
}

.appsinsight-article a:focus-visible,
.appsinsight-article button:focus-visible,
.appsinsight-article input:focus-visible,
.appsinsight-article textarea:focus-visible {
	outline: 2px solid var(--ai-blog-accent);
	outline-offset: 3px;
}

/* Dark mode */
body#dark-mode.appsinsight-blog-single {
	--ai-blog-ink: #eef1f6;
	--ai-blog-muted: #c5cbd6;
	--ai-blog-paper: #1c1c1c;
	--ai-blog-surface: #232323;
	--ai-blog-line: rgba(255, 255, 255, 0.1);
	--ai-blog-accent-ink: #ff6b85;
	background: var(--ai-blog-paper);
	color: var(--ai-blog-ink);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__hero {
	border-bottom-color: rgba(255, 255, 255, 0.08);
	background:
		radial-gradient(900px 380px at 8% 12%, rgba(249, 25, 66, 0.13), transparent 66%),
		radial-gradient(760px 340px at 96% 88%, rgba(59, 130, 246, 0.1), transparent 64%),
		linear-gradient(145deg, #17191f 0%, #1c1c22 50%, #171b23 100%);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__hero::after {
	border-color: rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.025);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.12),
		0 32px 90px rgba(0, 0, 0, 0.2);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__header {
	border-color: rgba(255, 255, 255, 0.14);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.035)),
		rgba(28, 31, 39, 0.72);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.16),
		inset 0 -1px 0 rgba(255, 255, 255, 0.035),
		0 22px 60px rgba(0, 0, 0, 0.22);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__category a {
	border-color: rgba(255, 107, 133, 0.28);
	background: rgba(249, 25, 66, 0.1);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__category a:hover,
body#dark-mode.appsinsight-blog-single .appsinsight-article__category a:focus-visible {
	border-color: rgba(255, 107, 133, 0.42);
	background: rgba(249, 25, 66, 0.16);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__byline {
	border-top-color: rgba(255, 255, 255, 0.11);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__avatar {
	border-color: rgba(255, 255, 255, 0.18);
	box-shadow: 0 5px 16px rgba(0, 0, 0, 0.3);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__figure {
	border-color: rgba(255, 255, 255, 0.13);
	background:
		linear-gradient(145deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.025)),
		rgba(28, 31, 39, 0.62);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.13),
		0 22px 60px rgba(0, 0, 0, 0.24);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail {
	background:
		linear-gradient(155deg, rgba(255, 255, 255, 0.11), rgba(42, 35, 43, 0.18) 54%, rgba(27, 36, 49, 0.36)),
		rgba(25, 27, 34, 0.68);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.14),
		inset 0 -1px 0 rgba(255, 255, 255, 0.035),
		0 10px 30px rgba(0, 0, 0, 0.16);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail::before {
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.28),
		rgba(255, 255, 255, 0.045) 42%,
		rgba(255, 107, 133, 0.18) 72%,
		rgba(255, 255, 255, 0.12)
	);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail::after {
	background: radial-gradient(circle, rgba(255, 255, 255, 0.12), transparent 68%);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail__btn {
	background: transparent;
	color: var(--ai-blog-ink);
	box-shadow: none;
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail__btn:hover,
body#dark-mode.appsinsight-blog-single .appsinsight-share-rail__btn:focus-visible {
	background: rgba(255, 255, 255, 0.1);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.13),
		0 5px 14px rgba(0, 0, 0, 0.15);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail__list li:last-child::before {
	background: rgba(255, 255, 255, 0.12);
}

body#dark-mode.appsinsight-blog-single .appsinsight-share-rail__btn.is-copied {
	background: rgba(34, 197, 94, 0.12);
	color: #86efac;
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__content blockquote {
	border-color: rgba(255, 255, 255, 0.13);
	background:
		radial-gradient(150px 110px at 0 0, rgba(249, 25, 66, 0.16), transparent 74%),
		linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.025)),
		rgba(30, 32, 40, 0.68);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.13),
		0 18px 42px rgba(0, 0, 0, 0.18);
}

body#dark-mode.appsinsight-blog-single .appsinsight-article__content blockquote::before {
	border-color: rgba(255, 107, 133, 0.24);
	background: rgba(255, 255, 255, 0.075);
	color: var(--ai-blog-accent-ink);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.12),
		0 8px 20px rgba(0, 0, 0, 0.16);
}

body#dark-mode.appsinsight-blog-single .appsinsight-related-card,
body#dark-mode.appsinsight-blog-single .appsinsight-article #respond {
	background: var(--ai-blog-surface);
}

body#dark-mode.appsinsight-blog-single #ez-toc-container,
body#dark-mode.appsinsight-blog-single .ez-toc-container,
body#dark-mode.appsinsight-blog-single .appsinsight-blog-latest,
body#dark-mode.appsinsight-blog-single .appsinsight-blog-search {
	background:
		linear-gradient(155deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.035) 54%, rgba(249, 25, 66, 0.035)),
		rgba(27, 29, 36, 0.72) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.13),
		inset 0 0 0 1px rgba(255, 255, 255, 0.055),
		0 16px 42px rgba(0, 0, 0, 0.19) !important;
}

body#dark-mode.appsinsight-blog-single #ez-toc-container,
body#dark-mode.appsinsight-blog-single .ez-toc-container {
	border-color: rgba(255, 255, 255, 0.14) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.11),
		inset 0 0 22px rgba(255, 255, 255, 0.025) !important;
}

body#dark-mode.appsinsight-blog-single #ez-toc-container::before,
body#dark-mode.appsinsight-blog-single .ez-toc-container::before,
body#dark-mode.appsinsight-blog-single .appsinsight-blog-latest::before,
body#dark-mode.appsinsight-blog-single .appsinsight-blog-search::before {
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.24),
		rgba(255, 255, 255, 0.025) 44%,
		rgba(255, 107, 133, 0.13) 78%,
		rgba(255, 255, 255, 0.08)
	);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-search__heading-icon {
	background: rgba(249, 25, 66, 0.13);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-search__control {
	background: rgba(255, 255, 255, 0.055);
	box-shadow:
		inset 0 0 0 1px rgba(255, 255, 255, 0.09),
		inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-search__control:focus-within {
	background: rgba(255, 255, 255, 0.08);
	box-shadow:
		inset 0 0 0 1px rgba(255, 107, 133, 0.42),
		inset 0 1px 0 rgba(255, 255, 255, 0.1),
		0 0 0 3px rgba(249, 25, 66, 0.1);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-search__field {
	background: transparent !important;
	color: var(--ai-blog-ink) !important;
	-webkit-text-fill-color: var(--ai-blog-ink);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-search__field::placeholder {
	color: var(--ai-blog-muted);
	-webkit-text-fill-color: var(--ai-blog-muted);
}

body#dark-mode.appsinsight-blog-single .appsinsight-blog-latest__link:hover,
body#dark-mode.appsinsight-blog-single .appsinsight-blog-latest__link:focus-visible,
body#dark-mode.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:hover,
body#dark-mode.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:focus-visible {
	background: rgba(255, 255, 255, 0.065);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

body#dark-mode.appsinsight-blog-single #ez-toc-container .ez-toc-list > li[data-appsinsight-active="true"] > a,
body#dark-mode.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a[data-appsinsight-active="true"] {
	background:
		linear-gradient(135deg, rgba(249, 25, 66, 0.14), rgba(255, 255, 255, 0.055)),
		rgba(255, 255, 255, 0.035);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.08),
		0 6px 18px rgba(0, 0, 0, 0.12);
}

@media (prefers-reduced-transparency: reduce) {
	.appsinsight-article__header {
		border-color: color-mix(in srgb, var(--ai-blog-ink) 10%, transparent);
		background: #fdfdfe;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	.appsinsight-article__figure {
		border-color: color-mix(in srgb, var(--ai-blog-ink) 10%, transparent);
		background: #f4f6fa;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	.appsinsight-share-rail {
		border-color: var(--ai-blog-line);
		background: var(--ai-blog-surface);
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	.appsinsight-blog-search,
	.appsinsight-blog-latest,
	body.appsinsight-blog-single .appsinsight-article__content blockquote,
	body.appsinsight-blog-single #ez-toc-container,
	body.appsinsight-blog-single .ez-toc-container {
		background: var(--ai-blog-surface) !important;
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
	}

	body#dark-mode.appsinsight-blog-single .appsinsight-article__header,
	body#dark-mode.appsinsight-blog-single .appsinsight-article__figure,
	body#dark-mode.appsinsight-blog-single .appsinsight-article__content blockquote {
		border-color: rgba(255, 255, 255, 0.12);
		background: #23252d !important;
	}

	body#dark-mode.appsinsight-blog-single .appsinsight-share-rail {
		border-color: rgba(255, 255, 255, 0.12);
		background: #23252d;
	}

	body#dark-mode.appsinsight-blog-single .appsinsight-blog-search,
	body#dark-mode.appsinsight-blog-single .appsinsight-blog-latest,
	body#dark-mode.appsinsight-blog-single #ez-toc-container,
	body#dark-mode.appsinsight-blog-single .ez-toc-container {
		background: #23252d !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.appsinsight-share-rail__btn,
	.appsinsight-blog-search__submit,
	.appsinsight-blog-latest__link,
	.appsinsight-blog-latest__image,
	.appsinsight-blog-latest__arrow,
	.appsinsight-related-card__link,
	.appsinsight-article__category a,
	body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a,
	body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a::after,
	body.appsinsight-blog-single .appsinsight-article #respond input[type="submit"] {
		transition: none;
	}

	.appsinsight-article__category a:hover,
	.appsinsight-article__category a:active,
	.appsinsight-share-rail__btn:hover,
	.appsinsight-share-rail__btn:active,
	.appsinsight-blog-search__submit:active,
	.appsinsight-blog-latest__link:hover,
	.appsinsight-blog-latest__image,
	body.appsinsight-blog-single #ez-toc-container .ez-toc-list > li > a:hover,
	.appsinsight-related-card__link:hover,
	.appsinsight-related-card__link:active {
		transform: none;
	}
}
