/*
 * WP Ember - blog bundle: post listing cards, single post, byline, author box.
 */

/* Byline */
.wpe-byline { display: flex; align-items: center; gap: var(--wpe-sp-3); }
.wpe-byline__avatar img { width: 36px; height: 36px; border-radius: 50%; display: block; }
.wpe-byline__text { font-size: var(--wpe-fs-14); line-height: 1.3; }
.wpe-byline__text a { color: var(--wpe-ink); font-weight: 600; text-decoration: none; }
.wpe-byline__text a:hover { color: var(--wpe-ember); }
.wpe-byline__date { display: block; color: var(--wpe-text-soft); }

/* Listing grid */
.wpe-post-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--wpe-sp-8); }
@media (max-width: 900px) { .wpe-post-grid { grid-template-columns: 1fr; } }

.wpe-post-card { display: flex; flex-direction: column; }
.wpe-post-card__media { display: block; border-radius: var(--wpe-radius-card); overflow: hidden; margin-bottom: var(--wpe-sp-4); aspect-ratio: 16 / 9; }
.wpe-post-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wpe-post-card__title { font-size: var(--wpe-fs-20); margin: 0 0 var(--wpe-sp-2); }
.wpe-post-card__title a { color: var(--wpe-ink); text-decoration: none; }
.wpe-post-card__title a:hover { color: var(--wpe-ember); }
.wpe-post-card__excerpt { color: var(--wpe-text-muted); font-size: var(--wpe-fs-15); margin: 0 0 var(--wpe-sp-4); }
.wpe-post-card .wpe-byline { margin-top: auto; }

/* Single post */
.wpe-post__header { padding: var(--wpe-sp-12) 0 var(--wpe-sp-6); }
.wpe-post__crumb { font-size: var(--wpe-fs-13); margin: 0 0 var(--wpe-sp-3); }
.wpe-post__crumb a { color: var(--wpe-text-soft); }
.wpe-post__header h1 { font-size: clamp(2rem, 4vw, var(--wpe-fs-48)); margin: 0 0 var(--wpe-sp-5); }
.wpe-post__media { margin-bottom: var(--wpe-sp-8); }
.wpe-post__media img { width: 100%; border-radius: var(--wpe-radius-card); display: block; }
.wpe-post__body { font-size: var(--wpe-fs-18); line-height: 1.7; }
.wpe-post__body h2 { font-size: var(--wpe-fs-30); margin: var(--wpe-sp-10) 0 var(--wpe-sp-3); }
.wpe-post__body h3 { font-size: var(--wpe-fs-20); margin: var(--wpe-sp-8) 0 var(--wpe-sp-2); }
.wpe-post__body img { border-radius: var(--wpe-r-8); }

/* Author box */
.wpe-author-box {
	display: flex;
	gap: var(--wpe-sp-4);
	align-items: flex-start;
	background: var(--wpe-surface-2);
	border: 1px solid var(--wpe-border-cool);
	border-radius: var(--wpe-radius-card);
	padding: var(--wpe-sp-6);
	margin: var(--wpe-sp-12) 0 var(--wpe-sp-8);
}
.wpe-author-box__avatar img { width: 64px; height: 64px; border-radius: 50%; display: block; }
.wpe-author-box__name { margin: 0 0 var(--wpe-sp-2); font-family: var(--wpe-font-display); font-size: var(--wpe-fs-18); }
.wpe-author-box__name a { color: var(--wpe-ink); text-decoration: none; }
.wpe-author-box__role { color: var(--wpe-text-soft); font-family: var(--wpe-font-sans); font-size: var(--wpe-fs-14); font-weight: 600; margin-left: var(--wpe-sp-2); }
.wpe-author-box__bio { color: var(--wpe-text-muted); font-size: var(--wpe-fs-15); margin: 0; }
