/**
 * hzaac Case / Showcase 详情（article.category-showcase）
 * 品牌：橙 #ff6a00 · 海军蓝 #0c4d89
 */
article.post.category-showcase {
	margin: 0 0 28px;
	padding: 28px 28px 32px;
	background: #fff;
	border: 1px solid rgba(12, 77, 137, 0.08);
	border-radius: 14px;
	box-shadow: 0 10px 32px rgba(12, 77, 137, 0.06);
	box-sizing: border-box;
}

article.post.category-showcase,
article.post.category-showcase * {
	box-sizing: border-box;
}

/* —— Header —— */
article.post.category-showcase > .post-header {
	margin: 0 0 22px;
	padding: 0 0 18px;
	border-bottom: 1px solid #e8eaed;
}

article.post.category-showcase .entry-title {
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: -0.01em;
	color: #0c4d89 !important;
	border: 0 !important;
	background: none !important;
}

article.post.category-showcase .post-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 10px;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	color: #5a6570 !important;
}

article.post.category-showcase .post-meta > span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 !important;
	padding: 5px 12px;
	background: #f4f7fa;
	border: 1px solid rgba(12, 77, 137, 0.08);
	border-radius: 999px;
	color: #5a6570;
}

article.post.category-showcase .post-meta > span i {
	margin: 0 !important;
	color: #ff6a00;
	font-size: 13px;
}

article.post.category-showcase .post-meta a {
	color: #0c4d89 !important;
	text-decoration: none !important;
	font-weight: 600;
}

article.post.category-showcase .post-meta a:hover {
	color: #ff6a00 !important;
}

/* —— Hero / gallery —— */
.xy-case-hero {
	margin: 0 0 24px;
	overflow: hidden;
	border-radius: 12px;
	background: #eef2f6;
	border: 1px solid rgba(12, 77, 137, 0.08);
}

.xy-case-hero > a,
.xy-case-hero > img {
	display: block;
	width: 100%;
}

.xy-case-hero img {
	width: 100%;
	height: auto;
	max-height: 480px;
	object-fit: cover;
	vertical-align: middle;
}

.xy-case-gallery {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin: 0 0 24px;
}

.xy-case-gallery a {
	display: block;
	overflow: hidden;
	border-radius: 10px;
	border: 1px solid rgba(12, 77, 137, 0.1);
	background: #eef2f6;
	aspect-ratio: 4 / 3;
}

.xy-case-gallery img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.xy-case-gallery a:hover img {
	transform: scale(1.04);
}

/* 仅 1 张时通栏大图，避免落在 1/3 格子 */
.xy-case-gallery > a:only-child {
	grid-column: 1 / -1;
	aspect-ratio: auto;
	max-height: 480px;
}

.xy-case-gallery > a:only-child img {
	height: auto;
	max-height: 480px;
	object-fit: cover;
}

.xy-case-gallery > a:first-child:nth-last-child(2),
.xy-case-gallery > a:first-child:nth-last-child(2) ~ a {
	aspect-ratio: 16 / 10;
}

/* —— Body —— */
article.post.category-showcase .entry-content {
	margin: 0 0 28px;
	padding: 0;
	font-size: 16px;
	line-height: 1.8;
	color: #2c333a;
}

article.post.category-showcase .entry-content > p:first-child:empty,
article.post.category-showcase .entry-content > p:first-child:has(> br:only-child) {
	display: none;
}

article.post.category-showcase .entry-content p {
	margin: 0 0 1.05em !important;
	padding: 0 !important;
	max-width: 72ch;
}

article.post.category-showcase .entry-content p:last-child {
	margin-bottom: 0 !important;
}

article.post.category-showcase .entry-content strong {
	color: #0c4d89;
	font-weight: 700;
}

article.post.category-showcase .entry-content a {
	color: #ff6a00;
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 106, 0, 0.35);
	transition: color 0.15s ease, border-color 0.15s ease;
}

article.post.category-showcase .entry-content a:hover {
	color: #0c4d89;
	border-bottom-color: rgba(12, 77, 137, 0.4);
}

/* 文内引用脚注 [n] */
article.post.category-showcase .entry-content a.decorated-link {
	display: inline-block;
	margin: 0 1px;
	padding: 0 6px;
	min-width: 1.4em;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.6;
	color: #fff !important;
	background: #0c4d89;
	border: 0 !important;
	border-radius: 4px;
	vertical-align: super;
	text-align: center;
}

article.post.category-showcase .entry-content a.decorated-link:hover {
	background: #ff6a00;
	color: #fff !important;
}

article.post.category-showcase .entry-content img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 16px 0;
	border-radius: 10px;
	border: 1px solid rgba(12, 77, 137, 0.08);
}

article.post.category-showcase .entry-content ul,
article.post.category-showcase .entry-content ol {
	margin: 0 0 1.1em;
	padding-left: 1.35em;
	max-width: 72ch;
}

article.post.category-showcase .entry-content li {
	margin: 0 0 0.45em;
}

article.post.category-showcase .entry-content h2,
article.post.category-showcase .entry-content h3 {
	margin: 1.4em 0 0.55em;
	color: #0c4d89;
	font-weight: 700;
	line-height: 1.35;
}

/* —— Share —— */
article.post.category-showcase .post-meta-bottom {
	margin: 0 0 22px;
	padding: 16px 0 0;
	border-top: 1px solid #e8eaed;
	overflow: hidden;
}

article.post.category-showcase .social-share-container {
	float: none !important;
}

article.post.category-showcase .social-share-container .flex {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 8px;
}

article.post.category-showcase .share-title {
	margin-right: 4px;
	font-size: 13px;
	font-weight: 600;
	color: #5a6570;
}

article.post.category-showcase .social-share-container a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 10px;
	transition: transform 0.15s ease, opacity 0.15s ease;
}

article.post.category-showcase .social-share-container a:hover {
	transform: translateY(-2px);
	opacity: 0.92;
}

article.post.category-showcase .share-icon-facebook { background: #1877f2; }
article.post.category-showcase .share-icon-twitter { background: #1da1f2; }
article.post.category-showcase .share-icon-linkedin { background: #0a66c2; }
article.post.category-showcase .share-icon-pinterest { background: #e60023; }

/* —— Prev / Next —— */
article.post.category-showcase .post-prev-next {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin: 0 0 28px;
	padding: 0;
	background: transparent !important;
	border: 0 !important;
}

article.post.category-showcase .post-prev-next p {
	margin: 0 !important;
	padding: 14px 16px !important;
	min-height: 56px;
	background: #f4f7fa;
	border: 1px solid rgba(12, 77, 137, 0.1);
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.45;
	color: #5a6570;
	transition: border-color 0.15s ease, background 0.15s ease;
}

article.post.category-showcase .post-prev-next p:hover {
	background: #fff;
	border-color: rgba(255, 106, 0, 0.45);
}

article.post.category-showcase .post-prev-next a {
	color: #0c4d89 !important;
	font-weight: 600;
	text-decoration: none !important;
}

article.post.category-showcase .post-prev-next a:hover {
	color: #ff6a00 !important;
}

/* —— Related —— */
article.post.category-showcase .related-posts {
	margin: 8px 0 0;
	padding: 24px 0 0;
	border-top: 1px solid #e8eaed;
	clear: both;
}

article.post.category-showcase .related-posts .heading-title,
article.post.category-showcase .related-posts > h2 {
	margin: 0 0 18px !important;
	padding: 0 0 12px !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #0c4d89 !important;
	border: 0 !important;
	border-bottom: 1px solid #e8eaed !important;
	background: none !important;
	text-align: left !important;
}

article.post.category-showcase .related-posts .heading-title > span,
article.post.category-showcase .related-posts > h2 > span {
	display: inline-block;
	position: relative;
	padding: 0 0 10px;
}

article.post.category-showcase .related-posts .heading-title > span::after,
article.post.category-showcase .related-posts > h2 > span::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 40px;
	height: 3px;
	background: #ff6a00;
	border-radius: 2px;
}

article.post.category-showcase .related-posts .gallery-container {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	margin: 0 !important;
	padding: 0 !important;
}

article.post.category-showcase .related-posts .item-content {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	height: auto !important;
}

article.post.category-showcase .related-posts .item-grid-box {
	margin: 0 !important;
	height: 100%;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(12, 77, 137, 0.1);
	border-radius: 12px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

article.post.category-showcase .related-posts .item-grid-box:hover {
	border-color: rgba(255, 106, 0, 0.45);
	box-shadow: 0 10px 24px rgba(12, 77, 137, 0.1);
	transform: translateY(-2px);
}

article.post.category-showcase .related-posts .item-grid-box > a {
	display: block;
	color: inherit;
	text-decoration: none !important;
}

article.post.category-showcase .related-posts .item-cover {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 3;
	background: #eef2f6;
}

article.post.category-showcase .related-posts .item-cover .mask {
	display: none !important;
}

article.post.category-showcase .related-posts .thumbnail,
article.post.category-showcase .related-posts .centered,
article.post.category-showcase .related-posts .attachment {
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

article.post.category-showcase .related-posts .item-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

article.post.category-showcase .related-posts .item-grid-box:hover img {
	transform: scale(1.05);
}

article.post.category-showcase .related-posts figcaption {
	padding: 12px 14px 14px !important;
}

article.post.category-showcase .related-posts figcaption h3 {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: #1a1d21 !important;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

article.post.category-showcase .related-posts .item-grid-box:hover figcaption h3 {
	color: #ff6a00 !important;
}

@media only screen and (max-width: 980px) {
	article.post.category-showcase {
		padding: 22px 18px 26px;
	}

	article.post.category-showcase .entry-title {
		font-size: 24px !important;
	}

	article.post.category-showcase .related-posts .gallery-container,
	.xy-case-gallery {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media only screen and (max-width: 640px) {
	article.post.category-showcase {
		padding: 18px 14px 22px;
		border-radius: 10px;
	}

	article.post.category-showcase .entry-title {
		font-size: 22px !important;
	}

	article.post.category-showcase .entry-content {
		font-size: 15px;
		line-height: 1.75;
	}

	article.post.category-showcase .entry-content p {
		max-width: none;
	}

	article.post.category-showcase .post-prev-next {
		grid-template-columns: 1fr;
	}

	article.post.category-showcase .social-share-container .flex {
		justify-content: flex-start;
	}

	article.post.category-showcase .related-posts .gallery-container,
	.xy-case-gallery {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}

	.xy-case-hero img {
		max-height: 260px;
	}
}
