.journal { min-height: 65vh; padding-block: 24px 80px; }
.journal-page .site-header { position: sticky; top: 0; z-index: 20; }
.posts-toolbar { position: sticky; top: 96px; z-index: 10; }
.posts-toolbar.is-compact { padding-block: 8px; }
.posts-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0; border-block: 1px solid var(--line); background: var(--paper); }
.filters { display: flex; gap: 6px; }
.filters button { min-height: 40px; border: 1px solid transparent; border-radius: 5px; padding: 8px 19px; background: transparent; color: var(--muted); font-size: 13px; }
.filters button[aria-pressed="true"] { background: var(--green); color: white; }
.filters button[aria-pressed="false"]:hover { border-color: var(--line); }
#post-count { margin: 0; font-size: 12px; color: var(--muted); }
.post { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 64px; padding: 44px 0; }
.post-image { overflow: hidden; border: 1px solid var(--line); border-radius: 8px; background: var(--butter); }
.post-image img { width: 100%; height: auto; }
.post-meta { display: flex; gap: 13px; margin: 0 0 20px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.version { border-left: 1px solid var(--line); padding-left: 13px; }
.post h2 { margin: 0 0 20px; font-size: clamp(36px, 4vw, 50px); line-height: 1.06; font-weight: 500; letter-spacing: -.04em; }
.post-copy > p:not(.post-meta) { max-width: 360px; font-size: 16px; line-height: 1.65; color: var(--muted); }
.post-link { display: inline-flex; gap: 32px; margin-top: 12px; padding-block: 6px 9px; border-bottom: 1px solid var(--green); font-size: 14px; color: var(--green); }
.post-link:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 700px) { .journal { padding-block: 44px; }.post { grid-template-columns: 1fr; gap: 28px; padding-block: 30px; }.post h2 br { display: none; }.post-copy > p:not(.post-meta) { max-width: none; } }
@media (max-width: 800px) { .posts-toolbar { top: 80px; } }
@media (max-width: 520px) { .posts-toolbar { top: 76px; } }
