/*
 * BillyPan Blog v2 — pubretrospect Block Theme 精準版
 * 貼到：WordPress > 外觀 > 自訂 > 額外的 CSS
 * 先清空舊版再貼
 */
/* ── 1. 中文字體（系統字型優先，免等 Google Fonts 載入）── */
body,
.wp-site-blocks,
.wp-block-post-content,
.entry-content {
	font-family: 'PingFang TC', 'Noto Sans TC', 'Microsoft JhengHei', '微軟正黑體', system-ui, sans-serif !important;
}

/* ── 2. Body 基礎：固定 16px，不放大 ── */
body {
	font-size: 16px !important;
	line-height: 1.85 !important;
	color: #1e1e2e !important;
	background: #f9fafb !important;
}

/* ── 3. 修正標題大小（主題預設最大 60px，壓回正常）── */
/* 網站名稱（header 的 BillyPan's Blog）*/
h1.wp-block-site-title,
.wp-block-site-title {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	letter-spacing: -.01em;
}

/* 首頁/列表頁文章標題（h2）*/
h2.wp-block-post-title,
.wp-block-post-title {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	margin-top: 0 !important;
	margin-bottom: .3rem !important;
	letter-spacing: -.01em;
}

/* 單篇文章頁標題（h1）*/
.single .wp-block-post-title,
.wp-singular .wp-block-post-title,
.single h1.wp-block-post-title,
.wp-singular h1.wp-block-post-title {
	font-size: 1.6rem !important;
	line-height: 1.4 !important;
	margin-bottom: .5rem !important;
}

/* ── 4. 文章內文：鎖定 16px，避免被主題 clamp 放大 ── */
.entry-content.wp-block-post-content,
.wp-block-post-content,
.entry-content {
	font-size: 16px !important;
}

.wp-block-post-content p,
.entry-content p,
.wp-block-post-content li,
.entry-content li {
	font-size: 16px !important;
	line-height: 1.9 !important;
	margin-bottom: 1.3em !important;
}

/* has-normal-font-size 覆蓋 */
.has-normal-font-size,
.wp-block-post-content.has-normal-font-size {
	font-size: 16px !important;
}

/* ── 5. 列表頁文章卡片 ── */
.wp-block-post {
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 10px !important;
	padding: 1.25rem 1.5rem !important;
	margin-bottom: 0 !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.05) !important;
	transition: box-shadow 0.2s, transform .2s;
}

.wp-block-post:hover {
	box-shadow: 0 4px 14px rgba(0,0,0,0.10) !important;
	transform: translateY(-2px);
}

/* ── 6. 分類 badge ── */
.wp-block-post-terms a,
.cat-links a,
.entry-categories a {
	display: inline-block !important;
	background: #2563eb !important;
	color: #fff !important;
	font-size: .72rem !important;
	font-weight: 600 !important;
	padding: 2px 9px !important;
	border-radius: 20px !important;
	text-decoration: none !important;
	margin-right: 4px;
	margin-bottom: 6px;
	letter-spacing: .03em;
}

.wp-block-post-terms a:hover,
.cat-links a:hover {
	background: #1d4ed8 !important;
}

/* ── 7. 日期 / 作者 meta 縮小 ── */
.wp-block-post-date,
.wp-block-post-date time,
.has-x-small-font-size,
.wp-block-post-author-biography {
	font-size: .75rem !important;
	color: #6b7280 !important;
	line-height: 1.5 !important;
}

/* ── 8. 文章間距縮緊 ── */
.wp-block-query,
.wp-block-post-template {
	gap: .85rem !important;
}

.wp-block-post-template {
	margin: 0 !important;
	padding: 0 !important;
}

/* ── 9. 連結 ── */
a {
	color: #2563eb !important;
	text-decoration: none;
	transition: color .15s;
}

a:hover {
	color: #1d4ed8 !important;
	text-decoration: underline;
}

.entry-title a,
.wp-block-post-title a {
	color: #1e1e2e !important;
	text-decoration: none !important;
}

.entry-title a:hover,
.wp-block-post-title a:hover {
	color: #2563eb !important;
	text-decoration: none !important;
}

/* ── 10. 單篇文章 h2/h3 章節標題 ── */
.single .entry-content h2,
.single .wp-block-post-content h2,
.wp-singular .entry-content h2,
.wp-singular .wp-block-post-content h2 {
	font-size: 1.2rem !important;
	font-weight: 700 !important;
	border-left: 4px solid #2563eb;
	padding-left: .7rem !important;
	margin-top: 2.2rem !important;
	margin-bottom: .8rem !important;
	line-height: 1.4 !important;
}

.single .entry-content h3,
.single .wp-block-post-content h3,
.wp-singular .entry-content h3,
.wp-singular .wp-block-post-content h3 {
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	color: #2563eb !important;
	margin-top: 1.8rem !important;
	margin-bottom: .6rem !important;
}

/* ── 11. Blockquote ── */
blockquote {
	border-left: 4px solid #2563eb !important;
	background: #eff6ff !important;
	margin: 1.5em 0 !important;
	padding: .75em 1.1em !important;
	border-radius: 0 8px 8px 0 !important;
	font-style: normal !important;
	color: #374151 !important;
}

blockquote p {
	margin: 0 !important;
	font-size: 15px !important;
}

/* ── 12. Code ── */
pre {
	background: #1e1e2e !important;
	color: #cdd6f4 !important;
	font-size: .82rem !important;
	line-height: 1.6 !important;
	padding: 1rem 1.25rem !important;
	border-radius: 8px !important;
	overflow-x: auto;
}

code {
	background: #f3f4f6 !important;
	color: #be123c !important;
	font-size: .87em !important;
	padding: .12em .4em !important;
	border-radius: 3px !important;
}

pre code {
	background: none !important;
	color: inherit !important;
	padding: 0 !important;
}

/* ── 13. 圖片 ── */
.entry-content img,
.wp-block-post-content img,
figure img {
	border-radius: 8px !important;
	max-width: 100% !important;
	height: auto !important;
}

figcaption {
	font-size: .78rem !important;
	color: #6b7280 !important;
	text-align: center;
	margin-top: .3rem;
}

/* ── 14. 社群分享 ── */
.sharedaddy,
#jp-post-flair {
	margin-top: 2rem !important;
	padding-top: 1.25rem !important;
	border-top: 1px solid #e5e7eb !important;
}

/* ── 15. Footer ── */
.wp-block-template-part[class*="footer"],
footer {
	font-size: .8rem !important;
	color: #9ca3af !important;
	border-top: 1px solid #e5e7eb !important;
	padding-top: 1.5rem !important;
}

/* ── 16. RWD 手機 ── */
@media (max-width: 768px) {
	body {
		font-size: 15.5px !important;
	}
	
	h2.wp-block-post-title, .wp-block-post-title {
		font-size: 1.05rem !important;
	}
	
	.single .wp-block-post-title {
		font-size: 1.35rem !important;
	}
	
	.wp-block-post {
		padding: 1rem 1.1rem !important;
	}
}

/* 2026-05-01 compact layout hotfix: reduce oversized whitespace on home + post pages */
:root {
}

.wp-site-blocks {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

main#wp--skip-link--target > .wp-block-columns {
	margin-top: 0 !important;
	gap: 16px !important;
}

main#wp--skip-link--target > .wp-block-columns > .wp-block-column:first-child {
	flex-basis: 18% !important;
}

main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) {
	flex-basis: 82% !important;
}

main#wp--skip-link--target .wp-block-column:first-child > .wp-block-group,
main#wp--skip-link--target .wp-block-column:first-child header .wp-block-group {
	padding-top: 12px !important;
	padding-bottom: 10px !important;
	margin-top: 0 !important;
}

.wp-block-site-title {
	margin-top: 0 !important;
	margin-bottom: 4px !important;
}

.wp-block-site-tagline {
	font-size: .82rem !important;
	line-height: 1.35 !important;
	margin-top: 4px !important;
	margin-bottom: 10px !important;
}

.wp-block-template-part + .wp-block-template-part,
.wp-block-column:first-child .wp-block-template-part {
	margin-top: 10px !important;
}

.wp-block-column:first-child figure.wp-block-image {
	margin-top: 8px !important;
	margin-bottom: 12px !important;
}

.wp-block-column:first-child figure.wp-block-image img {
	max-height: 160px !important;
	width: auto !important;
	object-fit: cover !important;
}

.single main#wp--skip-link--target,
.wp-singular main#wp--skip-link--target {
	min-height: auto !important;
}

.wp-singular main#wp--skip-link--target > .wp-block-columns,
.single main#wp--skip-link--target > .wp-block-columns,
.home main#wp--skip-link--target > .wp-block-columns,
.blog main#wp--skip-link--target > .wp-block-columns {
	margin-top: 0 !important;
}

.wp-singular main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) main,
.single main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) main,
.home main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) main,
.blog main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) main {
	margin-top: 0 !important;
}

.wp-singular .wp-container-core-group-is-layout-f179a9e5,
.single .wp-container-core-group-is-layout-f179a9e5 {
	padding-top: 16px !important;
	padding-right: 20px !important;
	padding-bottom: 28px !important;
	padding-left: 20px !important;
}

.wp-singular .wp-block-post-title,
.single .wp-block-post-title {
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	line-height: 1.22 !important;
}

.wp-singular .wp-block-post-title + .wp-block-group,
.single .wp-block-post-title + .wp-block-group,
.wp-singular .wp-block-post-date,
.single .wp-block-post-date {
	margin-top: 0 !important;
	margin-bottom: 8px !important;
}

.wp-singular .entry-content,
.single .entry-content {
	margin-top: 10px !important;
	padding-top: 0 !important;
	margin-bottom: 0 !important;
}

.wp-singular .entry-content > figure:first-child,
.single .entry-content > figure:first-child {
	margin-top: 0 !important;
	margin-bottom: 14px !important;
}

.wp-singular .entry-content > figure:first-child img,
.single .entry-content > figure:first-child img {
	max-height: 260px !important;
	width: 100% !important;
	object-fit: cover !important;
}

.home .wp-block-query,
.blog .wp-block-query {
	margin-top: 0 !important;
}

.home .wp-block-post,
.blog .wp-block-post {
	padding: 1rem 1.2rem !important;
	margin-bottom: .75rem !important;
}

@media (max-width: 900px) {
	main#wp--skip-link--target > .wp-block-columns {
		gap: 10px !important;
	}
	
	.wp-singular .wp-container-core-group-is-layout-f179a9e5,
																										  .single .wp-container-core-group-is-layout-f179a9e5 {
		padding: 14px !important;
	}
}

/* 2026-05-01 compact layout hotfix v2: kill block-theme default 66px paddings */
main#wp--skip-link--target,
main#wp--skip-link--target > .wp-block-columns > .wp-block-column:nth-child(2) > main,
.wp-singular .wp-container-core-group-is-layout-16cd4597,
.single .wp-container-core-group-is-layout-16cd4597,
.wp-singular .wp-block-post-title + .wp-block-group,
.single .wp-block-post-title + .wp-block-group,
.wp-singular .wp-block-post-title + .wp-block-group .wp-block-group,
.single .wp-block-post-title + .wp-block-group .wp-block-group,
.wp-singular .wp-block-post-title + .wp-block-group .wp-block-template-part,
.single .wp-block-post-title + .wp-block-group .wp-block-template-part {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.wp-singular main#wp--skip-link--target > .wp-block-columns,
.single main#wp--skip-link--target > .wp-block-columns,
.home main#wp--skip-link--target > .wp-block-columns,
.blog main#wp--skip-link--target > .wp-block-columns {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.wp-singular .wp-container-core-group-is-layout-f179a9e5,
.single .wp-container-core-group-is-layout-f179a9e5 {
	padding-top: 14px !important;
}

.wp-singular .wp-container-core-group-is-layout-16cd4597,
.single .wp-container-core-group-is-layout-16cd4597 {
	height: auto !important;
	min-height: 0 !important;
	margin-bottom: 8px !important;
}

.wp-singular .wp-block-post-title + .wp-block-group,
.single .wp-block-post-title + .wp-block-group,
.wp-singular .wp-block-post-title + .wp-block-group .wp-block-group,
.single .wp-block-post-title + .wp-block-group .wp-block-group {
	height: auto !important;
	min-height: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.wp-singular .wp-block-post-date,
.single .wp-block-post-date {
	margin-top: 0 !important;
	margin-bottom: 4px !important;
}

.wp-singular .entry-content,
.single .entry-content {
	margin-top: 8px !important;
}

.home main#wp--skip-link--target,
.blog main#wp--skip-link--target {
	padding-top: 12px !important;
	padding-bottom: 24px !important;
}

.home .wp-block-query .wp-block-group[style*="padding-top"],
.blog .wp-block-query .wp-block-group[style*="padding-top"] {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}

/* 2026-05-01 compact layout hotfix v3: tighten homepage post cards */
.home .wp-block-query > .wp-block-group,
.blog .wp-block-query > .wp-block-group,
.home .wp-block-post > .wp-block-group,
.blog .wp-block-post > .wp-block-group,
.home .wp-block-post .wp-container-core-group-is-layout-16cd4597,
.blog .wp-block-post .wp-container-core-group-is-layout-16cd4597,
.home .wp-block-post .wp-block-post-title + .wp-block-group,
.blog .wp-block-post .wp-block-post-title + .wp-block-group,
.home .wp-block-post .wp-block-post-title + .wp-block-group .wp-block-group,
.blog .wp-block-post .wp-block-post-title + .wp-block-group .wp-block-group,
.home .wp-block-post .wp-block-post-title + .wp-block-group .wp-block-template-part,
.blog .wp-block-post .wp-block-post-title + .wp-block-group .wp-block-template-part {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	height: auto !important;
	min-height: 0 !important;
}

.home .wp-block-post > .wp-block-group,
.blog .wp-block-post > .wp-block-group {
	padding: 12px 16px !important;
}

.home .wp-block-post .wp-block-post-title,
.blog .wp-block-post .wp-block-post-title {
	margin-top: 0 !important;
	margin-bottom: 6px !important;
}

.home .wp-block-post .wp-block-post-date,
.blog .wp-block-post .wp-block-post-date {
	margin-top: 0 !important;
	margin-bottom: 8px !important;
}

.home .wp-block-post .entry-content,
.blog .wp-block-post .entry-content {
	margin-top: 10px !important;
}

/* 2026-05-01 compact layout hotfix v5: WP-safe avatar, empty bullet, tablet/mobile columns */
.wp-block-column:first-child ul li:first-child {
	display: none !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
}

.wp-block-column:first-child ul {
	margin-top: 4px !important;
	padding-left: 1.05em !important;
}

.wp-block-column:first-child h3,
.wp-block-column:first-child .wp-block-heading {
	margin-top: 6px !important;
	margin-bottom: 4px !important;
}

.single header.wp-block-template-part .wp-block-group,
.wp-singular header.wp-block-template-part .wp-block-group {
	background-image: url('https://blog.billypan.net/wp-content/uploads/2026/04/331731296_1539940153182027_866359749110922282_n-1.jpg') !important;
	background-repeat: no-repeat !important;
	background-size: 100% 116px !important;
	background-position: left bottom !important;
	padding-bottom: 128px !important;
	margin-bottom: 6px !important;
}

.home .wp-block-column:first-child figure.wp-block-image,
.blog .wp-block-column:first-child figure.wp-block-image {
	margin-top: 6px !important;
	margin-bottom: 4px !important;
	line-height: 0 !important;
}

@media (max-width:900px) {
	main#wp--skip-link--target > .wp-block-columns {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		gap: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
	
	main#wp--skip-link--target > .wp-block-columns > .wp-block-column:first-child {
		order: 2 !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: auto !important;
		box-sizing: border-box !important;
		padding: 16px 15px 24px !important;
	}
	
	main#wp--skip-link--target > .wp-block-columns > .wp-block-column:last-child {
		order: 1 !important;
		width: 100% !important;
		max-width: 100% !important;
		flex-basis: auto !important;
		box-sizing: border-box !important;
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	
	.single .wp-block-post-title,
																	  .wp-singular .wp-block-post-title,
																	  .single .entry-content,
																	  .wp-singular .entry-content,
																	  .home .wp-block-post-title,
																	  .blog .wp-block-post-title,
																	  .home .entry-content,
																	  .blog .entry-content {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		overflow-wrap: anywhere !important;
		word-break: break-word !important;
	}
	
	.single header.wp-block-template-part .wp-block-group,
																	  .wp-singular header.wp-block-template-part .wp-block-group {
		background-size: 100% 110px !important;
		padding-bottom: 122px !important;
	}
}

/* 2026-05-01 compact layout hotfix v6: force single-post sidebar avatar spacing */
.single header.wp-block-template-part,
.wp-singular header.wp-block-template-part {
	margin-bottom: 8px !important;
}

.single header.wp-block-template-part .wp-block-group,
.wp-singular header.wp-block-template-part .wp-block-group {
	min-height: 230px !important;
	height: 230px !important;
	box-sizing: border-box !important;
	background-image: url('https://blog.billypan.net/wp-content/uploads/2026/04/331731296_1539940153182027_866359749110922282_n-1.jpg') !important;
	background-repeat: no-repeat !important;
	background-size: 100% 116px !important;
	background-position: left bottom !important;
	padding-top: 24px !important;
	padding-bottom: 128px !important;
}

@media (max-width:900px) {
	.single header.wp-block-template-part .wp-block-group,
															  .wp-singular header.wp-block-template-part .wp-block-group {
		min-height: 218px !important;
		height: 218px !important;
		background-size: 100% 110px !important;
		padding-bottom: 122px !important;
	}
}

/* ── hotfix v7: 頭像放大 + recent posts 上移 + 文章標題縮小 ── */
/* 1a. 首頁側欄頭像：填滿整欄寬度 */
.home .wp-block-column:first-child figure.wp-block-image,
.blog .wp-block-column:first-child figure.wp-block-image {
	margin-top: 4px !important;
	margin-bottom: 0 !important;
	line-height: 0 !important;
}

.home .wp-block-column:first-child figure.wp-block-image img,
.blog .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border-radius: 6px !important;
}

/* 1b. 文章頁側欄頭像放大（background-image）*/
.single header.wp-block-template-part .wp-block-group,
.wp-singular header.wp-block-template-part .wp-block-group {
	min-height: 290px !important;
	height: 290px !important;
	background-size: 100% 180px !important;
	padding-bottom: 188px !important;
	padding-top: 20px !important;
}

@media (max-width:900px) {
	.single header.wp-block-template-part .wp-block-group,
														    .wp-singular header.wp-block-template-part .wp-block-group {
		min-height: 260px !important;
		height: 260px !important;
		background-size: 100% 160px !important;
		padding-bottom: 168px !important;
	}
}

/* 2. recent posts 往上：消除頭像與標題之間的空隙 */
.wp-block-column:first-child .wp-block-latest-posts,
.wp-block-column:first-child ul.wp-block-list {
	margin-top: 2px !important;
}

.wp-block-column:first-child h2.wp-block-heading,
.wp-block-column:first-child h3.wp-block-heading,
.wp-block-column:first-child .widget-title {
	margin-top: 2px !important;
	margin-bottom: 4px !important;
}

/* 3. 文章內章節標題縮小（h1/h2/h3/wp-block-heading）*/
.single .wp-block-post-content .wp-block-heading,
.wp-singular .wp-block-post-content .wp-block-heading,
.single .entry-content .wp-block-heading,
.wp-singular .entry-content .wp-block-heading {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
}

.single .wp-block-post-content h1,
.wp-singular .wp-block-post-content h1,
.single .entry-content h1,
.wp-singular .entry-content h1 {
	font-size: 1.3rem !important;
}

.single .wp-block-post-content h2,
.wp-singular .wp-block-post-content h2,
.single .entry-content h2,
.wp-singular .entry-content h2 {
	font-size: 1.1rem !important;
}

.single .wp-block-post-content h3,
.wp-singular .wp-block-post-content h3,
.single .entry-content h3,
.wp-singular .entry-content h3 {
	font-size: 1rem !important;
}

/* ── hotfix v8: 首頁頭像填滿欄寬 + 全域標題縮小 ── */
/* 首頁側欄頭像 figure 填滿整欄 */
.home .wp-block-column:first-child figure.wp-block-image,
.blog .wp-block-column:first-child figure.wp-block-image {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

.home .wp-block-column:first-child figure.wp-block-image img,
.blog .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border-radius: 6px !important;
}

/* 首頁文章列表內的標題也縮小（避免大 h2 出現在 excerpt）*/
.home .wp-block-post .wp-block-heading,
.blog .wp-block-post .wp-block-heading,
.home .wp-block-post h1,
.blog .wp-block-post h1,
.home .wp-block-post h2,
.blog .wp-block-post h2,
.home .wp-block-post h3,
.blog .wp-block-post h3 {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	margin-top: 1rem !important;
	margin-bottom: .4rem !important;
}

/* 單篇文章內標題強制縮小（補強所有路徑）*/
.single .wp-block-heading,
.wp-singular .wp-block-heading {
	font-size: 1.15rem !important;
	font-weight: 700 !important;
}

/* ── hotfix v9: 首頁頭像與文章頁一致（全欄寬 × 180px，頂部裁切）── */
.home .wp-block-column:first-child figure.wp-block-image,
.blog .wp-block-column:first-child figure.wp-block-image {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	margin-top: 4px !important;
	margin-bottom: 0 !important;
	line-height: 0 !important;
	overflow: hidden !important;
	border-radius: 6px !important;
}

.home .wp-block-column:first-child figure.wp-block-image img,
.blog .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	height: 180px !important;
	object-fit: cover !important;
	object-position: center top !important;
	display: block !important;
	border-radius: 6px !important;
}

/* ── hotfix v10: 首頁 is-resized img 強制全寬（覆蓋 inline style width:162px）── */
html body .wp-block-column:first-child .wp-block-image.is-resized img,
html body .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	max-width: 100% !important;
	height: 180px !important;
	object-fit: cover !important;
	object-position: center top !important;
	aspect-ratio: auto !important;
	display: block !important;
	border-radius: 6px !important;
}

html body .wp-block-column:first-child .wp-block-image.is-resized,
html body .wp-block-column:first-child figure.wp-block-image {
	width: 100% !important;
	max-width: 100% !important;
	display: block !important;
}

/* ── hotfix v11: 首頁頭像 — 修正  inline 導致 100% 無效的問題 ── */
/* img 在  裡， 預設 display:inline，width:100% 無法參照 figure。
   改  為 block，100% 才會正確解析為 figure 寬度 */
.home .wp-block-column:first-child figure.wp-block-image a,
.blog .wp-block-column:first-child figure.wp-block-image a {
	display: block !important;
	width: 100% !important;
	line-height: 0 !important;
}

.home .wp-block-column:first-child figure.wp-block-image a img,
.blog .wp-block-column:first-child figure.wp-block-image a img,
.home .wp-block-column:first-child figure.wp-block-image img,
.blog .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	height: 180px !important;
	object-fit: cover !important;
	object-position: center top !important;
	display: block !important;
	border-radius: 6px !important;
	aspect-ratio: auto !important;
}

/* ── hotfix v12: 頭像縮小 20%（兩頁一致）+ 完全移除導航列空白 ── */
/* 1. 文章頁 background-image 縮到 80% 欄寬 */
.single header.wp-block-template-part .wp-block-group,
.wp-singular header.wp-block-template-part .wp-block-group {
	background-size: 80% 180px !important;
	background-position: left bottom !important;
}

@media (max-width:900px) {
	.single header.wp-block-template-part .wp-block-group,
									    .wp-singular header.wp-block-template-part .wp-block-group {
		background-size: 80% 160px !important;
	}
}

/* 2. 首頁頭像  縮到 80%，img 填滿 （兩頁視覺一致）*/
.home .wp-block-column:first-child figure.wp-block-image a,
.blog .wp-block-column:first-child figure.wp-block-image a {
	display: block !important;
	width: 80% !important;
	line-height: 0 !important;
}

.home .wp-block-column:first-child figure.wp-block-image a img,
.blog .wp-block-column:first-child figure.wp-block-image a img,
.home .wp-block-column:first-child figure.wp-block-image img,
.blog .wp-block-column:first-child figure.wp-block-image img {
	width: 100% !important;
	height: 180px !important;
	object-fit: cover !important;
	object-position: center top !important;
	display: block !important;
	border-radius: 6px !important;
	aspect-ratio: auto !important;
}

/* 3. 完全清除側欄導航列（含佔位空間）*/
.wp-block-column:first-child .wp-block-navigation,
.wp-block-column:first-child .wp-block-navigation-item,
.wp-block-column:first-child .wp-block-navigation__container,
.wp-block-column:first-child .wp-block-navigation__responsive-container,
.wp-block-column:first-child .wp-block-navigation__responsive-container-open,
.wp-block-column:first-child nav {
	display: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
}

/* ── hotfix v13: recent posts 文章標題前加「．」── */
.wp-block-column:first-child .wp-block-latest-posts,
.wp-block-column:first-child ul.wp-block-latest-posts__list {
	list-style: none !important;
	padding-left: 0 !important;
}

.wp-block-column:first-child .wp-block-latest-posts li,
.wp-block-column:first-child ul.wp-block-latest-posts__list li {
	list-style: none !important;
	padding-left: 0 !important;
	position: relative !important;
}

.wp-block-column:first-child .wp-block-latest-posts li::before,
.wp-block-column:first-child ul.wp-block-latest-posts__list li::before {
	content: ． !important;
	color: #2563eb !important;
	font-weight: 700 !important;
}

/* ── hotfix v14: recent posts 列表項目前加「．」（修正選擇器）── */
/* 針對 .wp-block-latest-posts 的直接子 li，排除第一個空的 wp-block-list */
ul.wp-block-latest-posts > li,
ul.wp-block-latest-posts__list > li {
	list-style: none !important;
	padding-left: 0 !important;
	margin-left: 0 !important;
}

ul.wp-block-latest-posts > li a.wp-block-latest-posts__post-title::before,
ul.wp-block-latest-posts__list > li a.wp-block-latest-posts__post-title::before {
	content: ． !important;
	display: inline !important;
	color: #2563eb !important;
	font-weight: 700 !important;
}

/* hotfix v15: recent posts dot via unicode escape */
ul.wp-block-latest-posts > li a.wp-block-latest-posts__post-title::before,
ul.wp-block-latest-posts__list > li a.wp-block-latest-posts__post-title::before {
	content: "\FF0E" !important;
	display: inline !important;
	color: #2563eb !important;
	font-weight: 700 !important;
	margin-right: 1px !important;
}

/* ── hotfix v16: 修復 li:first-child 誤殺 + 所有頁面加頭像 ── */
/* 1. 修正：只隱藏空的 wp-block-list 第一個 li，不影響 latest-posts 和 archives */
.wp-block-column:first-child ul.wp-block-list > li:first-child {
	display: none !important;
}

/* 取消對 latest-posts 和 archives 的誤殺 */
.wp-block-column:first-child ul.wp-block-latest-posts > li:first-child,
.wp-block-column:first-child ul.wp-block-archives > li:first-child {
	display: list-item !important;
	height: auto !important;
	min-height: auto !important;
	visibility: visible !important;
}

/* 2. 所有非首頁（archive/date/category/tag/author/search/page 等）都加頭像 */
.archive header.wp-block-template-part .wp-block-group,
.date header.wp-block-template-part .wp-block-group,
.category header.wp-block-template-part .wp-block-group,
.tag header.wp-block-template-part .wp-block-group,
.author header.wp-block-template-part .wp-block-group,
.search header.wp-block-template-part .wp-block-group,
.page header.wp-block-template-part .wp-block-group,
.error404 header.wp-block-template-part .wp-block-group {
	min-height: 290px !important;
	height: 290px !important;
	box-sizing: border-box !important;
	background-image: url('https://blog.billypan.net/wp-content/uploads/2026/04/331731296_1539940153182027_866359749110922282_n-1.jpg') !important;
	background-repeat: no-repeat !important;
	background-size: 80% 180px !important;
	background-position: left bottom !important;
	padding-top: 20px !important;
	padding-bottom: 188px !important;
}

@media (max-width:900px) {
	.archive header.wp-block-template-part .wp-block-group,
					    .date header.wp-block-template-part .wp-block-group,
					    .category header.wp-block-template-part .wp-block-group,
					    .tag header.wp-block-template-part .wp-block-group,
					    .author header.wp-block-template-part .wp-block-group,
					    .search header.wp-block-template-part .wp-block-group,
					    .page header.wp-block-template-part .wp-block-group,
					    .error404 header.wp-block-template-part .wp-block-group {
		min-height: 260px !important;
		height: 260px !important;
		background-size: 80% 160px !important;
		padding-bottom: 168px !important;
	}
}

/* hotfix v17: 移除側欄 nav wrapper 的 66px padding-top（空白真正根源）
   結構：div.wp-block-template-part > .wp-block-group（padding:66px）> nav(hidden) + recent-posts
   用 div 區分：header 用 ，問題那個用  */
.wp-block-column:first-child div.wp-block-template-part > .wp-block-group {
	padding-top: 4px !important;
	padding-bottom: 16px !important;
}

/* hotfix v18: recent posts 容器有 margin-top:44px 撐出空白，壓掉 */
.wp-block-column:first-child div.wp-block-template-part > .wp-block-group > div.wp-block-group {
	margin-top: 4px !important;
}

/* hotfix v19: 手機版（≤781px）文章優先 + 修左邊裁切 */
@media (max-width: 781px) {
	/* 1. 欄位改直排，間距清零 */
	.wp-block-columns {
		flex-direction: column !important;
		gap: 0 !important;
	}
	
	/* 2. 側欄（第一欄）移到下面 */
	.wp-block-column:first-child {
		order: 2 !important;
		flex-basis: 100% !important;
		width: 100% !important;
		min-width: 0 !important;
		padding-top: 16px !important;
		border-top: 1px solid #e5e7eb !important;
	}
	
	/* 3. 文章區（第二欄）移到上面 */
	.wp-block-column:nth-child(2) {
		order: 1 !important;
		flex-basis: 100% !important;
		width: 100% !important;
		min-width: 0 !important;
	}
	
	/* 4. 修左邊裁切：確保頁面有左右 padding */
	body,
		    .wp-site-blocks,
		    .wp-block-template-part,
		    .wp-block-columns,
		    .wp-block-column {
		padding-left: max(12px, env(safe-area-inset-left)) !important;
		padding-right: max(12px, env(safe-area-inset-right)) !important;
		box-sizing: border-box !important;
	}
	
	/* 5. 手機側欄隱藏頭像 background-image */
	.single header.wp-block-template-part .wp-block-group,
		    .wp-singular header.wp-block-template-part .wp-block-group,
		    .archive header.wp-block-template-part .wp-block-group,
		    .date header.wp-block-template-part .wp-block-group,
		    .category header.wp-block-template-part .wp-block-group,
		    .tag header.wp-block-template-part .wp-block-group,
		    .author header.wp-block-template-part .wp-block-group,
		    .search header.wp-block-template-part .wp-block-group,
		    .page header.wp-block-template-part .wp-block-group,
		    .error404 header.wp-block-template-part .wp-block-group {
		min-height: 0 !important;
		height: auto !important;
		background-image: none !important;
		padding-bottom: 4px !important;
		padding-top: 4px !important;
	}
}

@media (max-width: 781px) {
	body {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.wp-block-columns, .wp-block-column {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.wp-site-blocks {
		padding-left: max(14px, env(safe-area-inset-left)) !important;
		padding-right: max(14px, env(safe-area-inset-right)) !important;
		overflow-x: hidden !important;
	}
}