/* Single Post & Page Styles */

.ba-post__header { margin-bottom: 2rem; }
.ba-post__title { font-size: 2rem; font-weight: 800; line-height: 1.2; color: var(--color-text); margin: 0 0 0.75rem; }
.ba-post__meta { display: flex; gap: 1rem; font-size: 0.85rem; color: var(--color-text-muted); flex-wrap: wrap; }
.ba-post__meta a { color: var(--color-primary); text-decoration: none; }
.ba-post__meta a:hover { text-decoration: underline; }
.ba-post__category { background: var(--color-primary-light); color: var(--color-primary); padding: 2px 10px; border-radius: 4px; font-weight: 500; font-size: 0.8rem; }

/* Entry content typography */
.ba-post__content p { margin-bottom: 1.25em; line-height: 1.7; }
.ba-post__content h2 { font-size: 1.5rem; font-weight: 700; margin: 2.5rem 0 1rem; color: var(--color-text); }
.ba-post__content h3 { font-size: 1.25rem; font-weight: 600; margin: 2rem 0 0.75rem; }
.ba-post__content h4 { font-size: 1.1rem; font-weight: 600; margin: 1.5rem 0 0.5rem; }
.ba-post__content ul, .ba-post__content ol { margin: 0 0 1.25em 1.5em; }
.ba-post__content li { margin-bottom: 0.4em; line-height: 1.6; }
.ba-post__content img { border-radius: var(--radius); margin: 1rem 0; }
.ba-post__content blockquote { border-left: 4px solid var(--color-primary); padding: 1rem 1.5rem; margin: 1.5rem 0; background: var(--color-background); border-radius: 0 var(--radius) var(--radius) 0; }
.ba-post__content a { color: var(--color-primary); }
.ba-post__content a:hover { text-decoration: underline; }

/* Tables in content */
.ba-post__content .wp-block-table table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.ba-post__content .wp-block-table th { background: var(--color-background); font-weight: 600; text-align: left; }
.ba-post__content .wp-block-table th, .ba-post__content .wp-block-table td { padding: 10px 14px; border-bottom: 1px solid var(--color-border); }
@media (max-width: 640px) { .ba-post__content .wp-block-table { overflow-x: auto; display: block; } }

/* Post footer */
.ba-post__footer { margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--color-border); }
.ba-post__tags { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 1rem; }
.ba-post__tag { background: var(--color-background); padding: 4px 12px; border-radius: 4px; font-size: 0.8rem; color: var(--color-text-secondary); text-decoration: none; }
.ba-post__tag:hover { background: var(--color-primary-light); color: var(--color-primary); }
.ba-post__updated { font-size: 0.8rem; color: var(--color-text-muted); }

@media (max-width: 640px) {
    .ba-post__title { font-size: 1.5rem; }
}
