/**
 * 插件生成文章的正文样式（仅当文章含 _ai_dsr_generated 时加载）
 * 颜色优先跟随 WordPress / 区块主题预设与父级 inherit，并兼容 prefers-color-scheme 暗色。
 */
.ai-dsr-post {
	--ai-dsr-fg: var(--wp--preset--color--foreground, var(--global--color-foreground, CanvasText));
	--ai-dsr-muted: var(--wp--preset--color--secondary, var(--global--color-primary, #64748b));
	--ai-dsr-border: color-mix(in srgb, var(--ai-dsr-fg) 16%, transparent);
	--ai-dsr-accent: var(--wp--preset--color--primary, var(--global--color-primary, #4f46e5));
	--ai-dsr-accent-hover: var(--wp--preset--color--primary, var(--global--color-primary, #4338ca));
	--ai-dsr-on-accent: var(--wp--preset--color--base, var(--wp--preset--color--background, #ffffff));
	--ai-dsr-tag-bg: color-mix(in srgb, var(--ai-dsr-accent) 12%, transparent);
	--ai-dsr-tag-border: color-mix(in srgb, var(--ai-dsr-accent) 28%, transparent);
	--ai-dsr-surface: color-mix(in srgb, var(--ai-dsr-fg) 4%, transparent);
	color-scheme: light dark;
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
	padding: 0.5rem 0 1.5rem;
	line-height: 1.65;
	color: inherit;
}

/* 无区块变量时，从正文区域继承文字色 */
.entry-content .ai-dsr-post,
.wp-block-post-content .ai-dsr-post {
	color: inherit;
}

@media (prefers-color-scheme: dark) {
	.ai-dsr-post {
		--ai-dsr-fg: var(--wp--preset--color--foreground, var(--global--color-foreground, #e2e8f0));
		--ai-dsr-muted: var(--wp--preset--color--secondary, #94a3b8);
		--ai-dsr-accent: var(--wp--preset--color--primary, #818cf8);
		--ai-dsr-accent-hover: var(--wp--preset--color--primary, #a5b4fc);
		--ai-dsr-on-accent: var(--wp--preset--color--base, #0f172a);
		--ai-dsr-surface: color-mix(in srgb, var(--ai-dsr-fg) 6%, transparent);
	}
}

/* 正文 SEO 结构：h2 分节 + 段落 */
.ai-dsr-block {
	margin-bottom: 2rem;
}

.ai-dsr-block:last-of-type {
	margin-bottom: 1.5rem;
}

.ai-dsr-h2 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.2rem, 2.5vw, 1.45rem);
	font-weight: 700;
	line-height: 1.3;
	color: var(--ai-dsr-fg);
	letter-spacing: -0.01em;
}

.ai-dsr-block--scope .ai-dsr-h2 {
	margin-bottom: 0.85rem;
}

.ai-dsr-lead {
	margin: 0 0 1rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--ai-dsr-muted);
}

.ai-dsr-site-line {
	margin: 0 0 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
}

.ai-dsr-site-line--hero {
	font-size: clamp(1.05rem, 2vw, 1.25rem);
	font-weight: 600;
}

.ai-dsr-site-line__label {
	display: inline-block;
	margin-right: 0.5rem;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--ai-dsr-muted);
	vertical-align: middle;
}

.ai-dsr-tags-intro {
	margin: 0 0 0.75rem;
	font-size: 0.875rem;
	color: var(--ai-dsr-muted);
	line-height: 1.55;
}

.ai-dsr-kicker {
	margin: 0 0 1rem;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ai-dsr-accent);
	opacity: 0.95;
}

.ai-dsr-scope-aside {
	margin: 0 0 1.5rem;
	padding: 1rem 1.2rem;
	background: linear-gradient(
		145deg,
		color-mix(in srgb, var(--ai-dsr-accent) 10%, transparent) 0%,
		color-mix(in srgb, var(--ai-dsr-fg) 4%, transparent) 100%
	);
	border: 1px solid var(--ai-dsr-border);
	border-radius: 12px;
	border-left: 4px solid var(--ai-dsr-accent);
	box-shadow: 0 2px 8px color-mix(in srgb, var(--ai-dsr-fg) 6%, transparent);
}

.ai-dsr-subhead--muted {
	margin: 0 0 0.6rem;
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--ai-dsr-muted);
	letter-spacing: 0.02em;
}

.ai-dsr-scope-rich {
	font-size: 0.9375rem;
	line-height: 1.65;
	color: inherit;
	opacity: 0.92;
}

.ai-dsr-scope-rich p {
	margin: 0.4em 0;
}

.ai-dsr-scope-rich p:first-child {
	margin-top: 0;
}

.ai-dsr-scope-rich p:last-child {
	margin-bottom: 0;
}

.ai-dsr-head {
	margin-bottom: 1.5rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid var(--ai-dsr-border);
}

.ai-dsr-title-main {
	margin: 0 0 0.75rem;
	font-size: clamp(1.35rem, 3vw, 1.75rem);
	font-weight: 700;
	line-height: 1.25;
	color: var(--ai-dsr-fg);
}

.ai-dsr-title-main .ai-dsr-name-link {
	text-decoration: none;
	color: var(--ai-dsr-accent);
	border-bottom: 2px solid color-mix(in srgb, var(--ai-dsr-accent) 35%, transparent);
	transition: border-color 0.15s ease, color 0.15s ease;
}

.ai-dsr-title-main .ai-dsr-name-link:hover,
.ai-dsr-title-main .ai-dsr-name-link:focus {
	border-bottom-color: currentColor;
	color: var(--ai-dsr-accent-hover);
}

.ai-dsr-meta {
	margin: 0 0 0.5rem;
	font-size: 0.875rem;
	color: var(--ai-dsr-muted);
}

.ai-dsr-url-line {
	margin: 0;
	font-size: 0.875rem;
	word-break: break-all;
}

.ai-dsr-url-line .ai-dsr-label {
	margin-right: 0.35rem;
	font-weight: 600;
	color: var(--ai-dsr-muted);
}

.ai-dsr-url-line .ai-dsr-url {
	color: var(--ai-dsr-accent);
	text-decoration: none;
}

.ai-dsr-url-line .ai-dsr-url:hover {
	text-decoration: underline;
	color: var(--ai-dsr-accent-hover);
}

.ai-dsr-section {
	margin-bottom: 1.5rem;
}

.ai-dsr-subhead {
	margin: 0 0 0.75rem;
	font-size: 1rem;
	font-weight: 700;
	color: var(--ai-dsr-fg);
}

.ai-dsr-desc {
	margin: 0 0 1.25rem;
	font-size: 1.0625rem;
	color: inherit;
	opacity: 0.95;
	line-height: 1.75;
}

.ai-dsr-desc p {
	margin: 0 0 1em;
}

.ai-dsr-desc p:last-child {
	margin-bottom: 0;
}

.ai-dsr-cta-wrap {
	margin: 0 0 1.25rem;
}

.ai-dsr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.6rem 1.35rem;
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
	color: var(--ai-dsr-on-accent) !important;
	background: linear-gradient(
		135deg,
		color-mix(in srgb, var(--ai-dsr-accent) 92%, #000) 0%,
		var(--ai-dsr-accent) 100%
	);
	border-radius: 8px;
	box-shadow: 0 2px 6px color-mix(in srgb, var(--ai-dsr-accent) 40%, transparent);
	transition: transform 0.1s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

.ai-dsr-btn:hover,
.ai-dsr-btn:focus {
	filter: brightness(1.06);
	box-shadow: 0 4px 12px color-mix(in srgb, var(--ai-dsr-accent) 45%, transparent);
	color: var(--ai-dsr-on-accent) !important;
}

.ai-dsr-tags-block {
	margin: 0 0 1.5rem;
	font-size: 0.875rem;
	line-height: 1.8;
}

.ai-dsr-tags-label {
	display: inline-block;
	margin-right: 0.5rem;
	font-weight: 600;
	color: var(--ai-dsr-muted);
	vertical-align: middle;
}

.ai-dsr-tag {
	display: inline-block;
	margin: 0.2rem 0.35rem 0.2rem 0;
	padding: 0.2rem 0.6rem;
	background: var(--ai-dsr-tag-bg);
	border: 1px solid var(--ai-dsr-tag-border);
	border-radius: 6px;
	font-size: 0.8125rem;
	color: var(--ai-dsr-accent);
	font-weight: 500;
}

.ai-dsr-screenshot {
	margin: 1.5rem 0 0;
	padding: 0;
	border: 1px solid var(--ai-dsr-border);
	border-radius: 12px;
	overflow: hidden;
	background: var(--ai-dsr-surface);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--ai-dsr-fg) 10%, transparent);
}

.ai-dsr-screenshot .ai-dsr-screenshot-img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.ai-dsr-caption {
	margin: 0;
	padding: 0.65rem 0.85rem;
	font-size: 0.8125rem;
	color: var(--ai-dsr-muted);
	background: color-mix(in srgb, var(--ai-dsr-fg) 3%, transparent);
	border-top: 1px solid var(--ai-dsr-border);
	text-align: center;
}

.ai-dsr-rule {
	margin: 1.75rem 0 1rem;
	border: none;
	border-top: 1px solid var(--ai-dsr-border);
}

.ai-dsr-disclaimer {
	margin: 0;
	font-size: 0.8125rem;
	line-height: 1.55;
	color: var(--ai-dsr-muted);
}

/* AI 全文创作模式末尾截图 */
.ai-dsr-post--creative .dsr-screenshot-figure {
	margin: 2rem 0 0;
	padding: 0;
	border: 1px solid var(--ai-dsr-border);
	border-radius: 12px;
	overflow: hidden;
	background: var(--ai-dsr-surface);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--ai-dsr-fg) 10%, transparent);
}

.ai-dsr-post--creative .dsr-screenshot-img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.ai-dsr-post--creative .dsr-screenshot-caption {
	margin: 0;
	padding: 0.65rem 0.85rem;
	font-size: 0.8125rem;
	color: var(--ai-dsr-muted);
	background: color-mix(in srgb, var(--ai-dsr-fg) 3%, transparent);
	border-top: 1px solid var(--ai-dsr-border);
	text-align: center;
}

.ai-dsr-post--creative .ai-dsr-fallback-lead {
	margin: 0 0 1rem;
	color: var(--ai-dsr-accent);
	font-size: 0.875rem;
}

/* 资讯：参考来源 */
.ai-dsr-news-sources {
	margin: 2rem 0 0;
	padding: 1rem 1.15rem;
	border: 1px solid var(--ai-dsr-border);
	border-radius: 10px;
	background: var(--ai-dsr-surface);
}

.ai-dsr-news-sources h3 {
	margin: 0 0 0.65rem;
	font-size: 1rem;
	font-weight: 700;
	color: var(--ai-dsr-fg);
}

.ai-dsr-news-sources ul {
	margin: 0;
	padding-left: 1.2rem;
}

.ai-dsr-news-sources li {
	margin: 0.35em 0;
	color: inherit;
}

.ai-dsr-news-sources a {
	color: var(--ai-dsr-accent);
	text-decoration: none;
}

.ai-dsr-news-sources a:hover {
	text-decoration: underline;
	color: var(--ai-dsr-accent-hover);
}

/* AI 资讯：正文中间配图（与特色图同一附件） */
.ai-dsr-post--news .ai-dsr-news-figure--middle {
	margin: 1.75rem auto;
	padding: 0;
	max-width: 100%;
	border: 1px solid var(--ai-dsr-border);
	border-radius: 12px;
	overflow: hidden;
	background: var(--ai-dsr-surface);
	box-shadow: 0 4px 16px color-mix(in srgb, var(--ai-dsr-fg) 8%, transparent);
}

.ai-dsr-post--news .ai-dsr-news-figure--middle .ai-dsr-news-figure__img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: middle;
}

.ai-dsr-post--news .ai-dsr-news-figure__cap {
	margin: 0;
	padding: 0.5rem 0.85rem;
	font-size: 0.8125rem;
	color: var(--ai-dsr-muted);
	text-align: center;
	background: color-mix(in srgb, var(--ai-dsr-fg) 3%, transparent);
	border-top: 1px solid var(--ai-dsr-border);
}
