.posts-page{max-width:var(--content-width);margin:0 auto;padding:var(--spacing-8) var(--spacing-6) var(--spacing-16)}.posts-page .page-header{margin-bottom:var(--spacing-12)}.posts-page .page-title{font-size:var(--font-size-4xl);font-weight:700;letter-spacing:var(--tracking-tight);margin-bottom:var(--spacing-2)}.posts-page .empty,.posts-page .page-description{font-size:var(--font-size-lg);color:var(--color-muted)}.posts-list{display:flex;flex-direction:column}.post-item{padding:var(--spacing-8) 0;border-bottom:1px solid var(--color-border-subtle)}.post-item:first-child{padding-top:0}.post-item:last-child{border-bottom:none}.post-link{display:block;text-decoration:none;color:inherit}.post-meta{gap:var(--spacing-3);font-size:var(--font-size-sm);color:var(--color-muted);margin-bottom:var(--spacing-2)}.post-bylines,.post-meta{display:flex;align-items:center}.post-bylines{gap:2px}.post-byline{display:inline-flex;align-items:center;gap:var(--spacing-1)}.post-byline-avatar{width:var(--avatar-size-sm);height:var(--avatar-size-sm);border-radius:50%;object-fit:cover}.post-byline-name{font-weight:500;color:var(--color-text-secondary)}.byline-sep{color:var(--color-muted);margin-right:2px}.post-bylines .byline-more{font-size:var(--font-size-xs);color:var(--color-muted);margin-left:2px}.post-title{font-size:var(--font-size-2xl);font-weight:600;line-height:var(--leading-snug);letter-spacing:var(--tracking-snug);margin-bottom:var(--spacing-2);transition:color var(--transition-fast)}.post-link:hover .post-title{color:var(--color-accent)}.post-excerpt{font-size:var(--font-size-lg);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.post-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-top:var(--spacing-4)}.post-tag{display:inline-block;padding:var(--tag-padding-y) var(--spacing-2);font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius);text-decoration:none;transition:color var(--transition-fast),border-color var(--transition-fast)}.post-tag:hover{color:var(--color-text);border-color:var(--color-text)}@media (max-width:600px){.posts-page{padding:var(--spacing-6) var(--spacing-4) var(--spacing-12)}.posts-page .page-title{font-size:var(--font-size-3xl)}.post-title{font-size:var(--font-size-xl)}}