/* Blog (home.php, archive.php, search.php, single.php) and 404.php.
   Shared parts live in base.css; the article is .pma-article from base.css. */

.pma-blog .pma-breadcrumb,
.pma-404 .pma-breadcrumb { justify-content: center; margin-bottom: 18px; }

.pma-blog-body { max-width: 1110px; margin: 0 auto; padding: 32px 34px 52px; }

/* Post cards */
.pma-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.pma-post-card {
	display: flex; flex-direction: column; overflow: hidden;
	background: var(--pma-bg); border: 1px solid var(--pma-line); border-radius: var(--pma-radius);
	transition: box-shadow .2s, transform .2s;
}
.pma-post-card:hover { box-shadow: 0 10px 28px #28233714; transform: translateY(-2px); }
.pma-post-card-image { display: block; aspect-ratio: 16 / 9; background: var(--pma-soft); }
.pma-post-card-image img { width: 100%; height: 100%; object-fit: cover; }
.pma-post-card-body { padding: 16px 18px 20px; }
.pma-ui .pma-post-card h2 { margin: 0 0 8px; font-size: 17px; line-height: 1.35; letter-spacing: -.2px; text-transform: none; }
.pma-ui .pma-post-card h2 a:hover { color: var(--pma-purple); }
.pma-post-excerpt { margin: 0; font-size: 15px; line-height: 1.6; color: var(--pma-muted); }
.pma-ui .pma-post-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 8px; font-size: 13px; color: var(--pma-muted); }
.pma-post-category { padding: 2px 8px; border-radius: 99px; background: var(--pma-soft); color: var(--pma-purple); font-weight: 500; }

.pma-posts-pagination { margin-top: 28px; }
.pma-posts-pagination .nav-links { display: flex; justify-content: center; gap: 6px; }
.pma-ui .pma-posts-pagination .page-numbers {
	display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; padding: 0 12px;
	border: 1px solid var(--pma-line); border-radius: 7px; font-size: 14px; color: var(--pma-ink);
}
.pma-ui .pma-posts-pagination .page-numbers.current { background: var(--pma-purple); border-color: var(--pma-purple); color: #fff; }
.pma-blog-empty { text-align: center; padding: 40px 0; }
.pma-ui .pma-blog-empty p { margin: 0 0 16px; color: var(--pma-muted); }

/* Single post */
.pma-post .pma-intro h1 { max-width: 820px; }
.pma-post .pma-intro .pma-post-meta { justify-content: center; margin: 0; font-size: 13px; }
.pma-post-body { max-width: 780px; margin: 0 auto; padding: 32px 34px 20px; }
.pma-post-cover { margin: 0 0 28px; }
.pma-post-cover img { width: 100%; height: auto; border-radius: var(--pma-radius); }
.pma-post .pma-article { max-width: none; padding: 0; border: 0; }
.pma-article .wp-block-image { margin: 22px 0; }
.pma-article .wp-block-embed__wrapper { position: relative; aspect-ratio: 16 / 9; }
.pma-article .wp-block-embed__wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: var(--pma-radius); }
.pma-article iframe[src*="soundcloud"] { display: block; width: 100%; border: 0; border-radius: 9px; }

.pma-post-cta {
	display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px;
	margin: 36px 0 0; padding: 20px 22px;
	background: var(--pma-art-bg); border: 1px solid var(--pma-line); border-radius: var(--pma-radius);
}
.pma-post-cta .pma-section-icon { width: 44px; height: 44px; font-size: 22px; background: var(--pma-bg); border-radius: 12px; }
.pma-ui .pma-post-cta h2 { margin: 0 0 4px; font-size: 18px; letter-spacing: -.3px; text-transform: none; }
.pma-ui .pma-post-cta p { margin: 0; font-size: 14px; color: var(--pma-muted); }

.pma-blog-more { max-width: 1110px; margin: 0 auto; padding: 36px 34px 52px; border-top: 1px solid var(--pma-line); margin-top: 40px; }
.pma-ui .pma-blog-more > h2 { margin: 0 0 18px; font-size: 22px; letter-spacing: -.5px; text-align: center; }

/* 404 */
.pma-404 .pma-intro { padding-top: 52px; padding-bottom: 44px; }
.pma-ui .pma-404-code {
	margin: 0 auto 6px; font-size: 64px; font-weight: 700; line-height: 1; letter-spacing: -3px;
	color: var(--pma-purple); opacity: .9;
}
.pma-ui.pma-404 .pma-intro .pma-primary { color: #fff; } /* .pma-intro p a is purple */
.pma-ui.pma-404 .pma-intro .pma-secondary:hover { text-decoration: none; }
.pma-ui .pma-404-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 22px; }

@media (max-width: 860px) {
	.pma-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
	.pma-blog-body, .pma-post-body { padding-left: 16px; padding-right: 16px; }
	.pma-blog-more { padding-left: 16px; padding-right: 16px; }
	.pma-post-grid { grid-template-columns: minmax(0, 1fr); }
	.pma-post-cta { grid-template-columns: auto minmax(0, 1fr); }
	.pma-post-cta .pma-primary { grid-column: 1 / -1; width: 100%; }
	.pma-ui .pma-404-code { font-size: 52px; }
}
