/* Only article layouts load this stylesheet. Keep keyboard navigation reachable. */
.post-layout { --post-side-width: min(400px, 38vw); grid-template-columns: var(--post-side-width) minmax(0, 1fr); }
.post-layout .post-content-area { min-width: 0; }
.post-layout .post-side-toggle { display: flex; align-items: center; justify-content: center; position: fixed; left: var(--post-side-width); top: 1rem; width: 44px; height: 44px; padding: 0; transform: none; z-index: 230; border: 1px solid var(--border); border-left: 0; border-radius: 0 8px 8px 0; background: var(--bg-card); color: var(--text-heading); font: 1.8rem/1 var(--font-sans); cursor: pointer; box-shadow: 2px 2px 8px #0002; }
.post-layout .post-side-toggle:hover { color: var(--accent); }
.post-layout .post-side-toggle:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.post-layout.side-hidden { grid-template-columns: 0 minmax(0, 1fr); }
.post-layout.side-hidden .post-side-toggle { left: 0; top: 5.5rem; }
html:not(.reader-mode) .post-layout.side-hidden .post-content-area > :is(.article-content, .post-content-footer, .reading-tools, .admin-edit-bar) { max-width: none; }
@media (max-width: 860px) { .post-layout { --post-side-width: 280px; } }
@media (max-width: 640px) {
    .post-layout { --post-side-width: 200px; }
    html:not(.reader-mode) .post-layout.side-hidden .post-content-area { padding-left: 3.5rem; }
}
@media (max-width: 480px) { .post-layout { --post-side-width: 160px; } }
.post-sideheader__topbar,
.post-logo-fixed { transition: transform .22s ease; }
.post-layout.article-nav-hidden .post-sideheader__topbar,
.post-layout.article-nav-hidden .post-logo-fixed { transform: translateY(calc(-100% - 3rem)); }
.post-layout.article-nav-hidden .post-sideheader__topbar:focus-within,
.post-layout.article-nav-hidden .post-logo-fixed:focus { transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
    .post-sideheader__topbar, .post-logo-fixed { transition: none; }
}
