/* ===========================================================
   Blog Detail (single post) — scoped to is_singular('post').
   Layout/grid reuse the global design system (.ibody / .prose /
   .sidebar / .box / .posts / .post-card in main.css). This file
   only styles the sidebar widgets + featured image.
   =========================================================== */

/* ---- Hero meta line ---- */
.post-hero__meta{ font-size:.95rem; }

/* ---- Featured image + content ---- */
.post-feat{
  width:100%; max-height:460px; object-fit:cover;
  border-radius:var(--radius); margin-bottom:30px; display:block;
  box-shadow:0 16px 38px rgba(16,40,80,.12); background:var(--cyan-100);
}
.post-body > :last-child{ margin-bottom:0; }
.post-body img{ border-radius:var(--radius); }

/* ---- Sidebar: Recent Articles (image + title + date) ---- */
.post-recent{ display:grid; gap:16px; }
.post-recent__item{ display:flex; gap:13px; align-items:flex-start; color:var(--ink); }
.post-recent__item img{
  flex:0 0 auto; width:62px; height:62px; border-radius:10px;
  object-fit:cover; background:var(--cyan-100); display:block;
}
.post-recent__item b{ display:block; font-family:var(--sans); font-size:.88rem; font-weight:600; line-height:1.35; color:var(--ink); transition:color .2s ease; }
.post-recent__item:hover b{ color:var(--blue); }
.post-recent__item small{ display:block; color:var(--body); font-size:.76rem; margin-top:5px; }

/* ---- Sidebar: Categories list ---- */
.post-cats{ list-style:none; margin:0; padding:0; display:grid; gap:0; }
.post-cats a{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:11px 0; color:var(--ink); font-size:.9rem;
  border-bottom:1px solid var(--cyan-200); transition:color .2s ease;
}
.post-cats li:last-child a{ border-bottom:0; padding-bottom:0; }
.post-cats a:hover{ color:var(--blue); }
.post-cats__n{
  flex:0 0 auto; background:var(--cyan-100); color:var(--blue);
  font-size:.72rem; font-weight:600; min-width:26px; height:22px;
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:999px; padding:0 8px;
}

/* ---- Sidebar: Blog Tags ---- */
.post-tags{ display:flex; flex-wrap:wrap; gap:8px; }
.post-tag{
  display:inline-block; background:#fff; border:1px solid var(--cyan-200);
  border-radius:999px; padding:7px 14px; color:var(--body); font-size:.82rem;
  transition:background .2s ease, border-color .2s ease, color .2s ease;
}
.post-tag:hover{ background:var(--blue); border-color:var(--blue); color:#fff; }
