/* ==========================================================================
   Mesosphere — blog.css
   Posts index, archives, single post prose, search, 404, empty states.
   Loads on those views only.
   ========================================================================== */
.meso-single__in{max-inline-size:820px}
.meso-single__meta{display:flex;align-items:center;gap:12px;margin-block-end:28px;font-size:.875rem;color:var(--meso-muted)}
.meso-single__img{aspect-ratio:16/9;margin-block-end:48px;border-radius:var(--meso-radius-lg)}

/* ---- Post nav ---- */
.meso-postnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-block-start:64px}
.meso-postnav__a{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:6px;padding:24px 26px;border-radius:var(--meso-radius);border:1px solid var(--meso-line);transition:border-color var(--meso-t-c)}
.meso-postnav__a::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;box-shadow:var(--meso-sh-m);opacity:0;transition:opacity var(--meso-t-m) var(--meso-ease)}
.meso-postnav__a:hover{border-color:transparent}
.meso-postnav__a:hover::after{opacity:1}
.meso-postnav__a--next{text-align:end;align-items:flex-end;grid-column:2}
.meso-postnav__l{display:flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--meso-muted)}
.meso-postnav__t{font-weight:600;color:var(--meso-ink)}

/* ---- Pager ---- */
.meso-pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-block-start:64px}
.meso-pager .page-numbers{min-inline-size:48px;block-size:48px;padding-inline:14px;border-radius:999px;display:grid;place-items:center;border:1px solid var(--meso-line-2);font-weight:600;transition:background-color var(--meso-t-c),color var(--meso-t-c),border-color var(--meso-t-c)}
.meso-pager a.page-numbers:hover{border-color:var(--meso-ink)}
.meso-pager .current{background:var(--meso-ink);border-color:var(--meso-ink);color:#fff}

/* ---- Empty / 404 ---- */
.meso-empty,.meso-404__in{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;padding-block:40px}
.meso-empty__dome,.meso-404__dome{color:rgba(var(--meso-ink-rgb),.5)}
.meso-404__code{font-size:clamp(5rem,4rem + 5vw,8.5rem);font-weight:600;letter-spacing:-.05em;line-height:1;color:var(--meso-ink)}
.meso-404__btns{display:flex;gap:12px;margin-block:6px 18px}

/* ---- Comments ---- */
.meso-comments{margin-block-start:72px;padding-block-start:48px;border-block-start:1px solid var(--meso-line)}
.meso-comments__list{margin:24px 0;padding:0;list-style:none}
.meso-comments :where(input[type=text],input[type=email],input[type=url],textarea){inline-size:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--meso-line-2);background:#fff}
.meso-comments .submit{block-size:52px;padding-inline:26px;border-radius:999px;border:0;background:var(--meso-ink);color:#fff;font-weight:600;cursor:pointer}
@media (max-width:640px){.meso-postnav{grid-template-columns:1fr}.meso-postnav__a--next{grid-column:auto}}
