/* Kynex CMS additions — blog listing, post body, tables, code/HTML embeds.
   Loads after /assets/site.v10.css and reuses its design tokens. */

/* ---- Blog listing grid + cards ---- */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;margin-top:8px}
.blog-card{display:flex;flex-direction:column;border:1px solid #e3e8f0;border-radius:16px;overflow:hidden;background:#fff;transition:transform .15s ease,box-shadow .15s ease}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(13,22,41,.10)}
.blog-card .thumb{display:block;aspect-ratio:1200/630;background:#0b1220 center/cover no-repeat}
.blog-card .body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.blog-card .tag{font-size:.74rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#2563eb}
.blog-card h3{margin:0;font-size:1.12rem;line-height:1.35}
.blog-card h3 a{color:#0b1220;text-decoration:none}
.blog-card h3 a:hover{text-decoration:underline}
.blog-card p{margin:0;color:#5b6472;font-size:.95rem;line-height:1.55}
.blog-card .meta{margin-top:auto;font-size:.82rem;color:#8a93a3}
.section-header h1{font-size:1.85rem;letter-spacing:-.02em;margin-bottom:12px;line-height:1.2}

/* ---- Single post body ---- */
.post-wrap{max-width:820px;margin:0 auto;padding:0 20px}
.post-meta{color:var(--c-text-2,#5b6472);font-size:.9rem;margin:.4rem 0 1.4rem}
.post-meta a{color:#2563eb}
.post-body{font-size:1.06rem;line-height:1.75;color:var(--c-text,#1d2430)}
.post-body h2{margin:2.2rem 0 .8rem;font-size:1.55rem;line-height:1.25}
.post-body h3{margin:1.6rem 0 .5rem;font-size:1.2rem}
.post-body p{margin:.85rem 0}
.post-body ul,.post-body ol{margin:.6rem 0 1rem;padding-left:1.3rem}
.post-body li{margin:.35rem 0}
.post-body a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}
.post-body img{max-width:100%;height:auto;border-radius:12px}
.post-body blockquote{margin:1.2rem 0;padding:.6rem 1.1rem;border-left:4px solid #2563eb;background:#f1f6ff;border-radius:0 10px 10px 0}
.post-body blockquote cite{display:block;margin-top:.4rem;font-size:.9rem;color:#8a93a3;font-style:normal}
.post-lead{font-size:1.18rem;line-height:1.7;color:var(--c-text,#1d2430);font-weight:500}

/* ---- Tables (comparison blocks) ---- */
.post-body table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.96rem}
.post-body th,.post-body td{border:1px solid #e3e8f0;padding:10px 12px;text-align:left;vertical-align:top}
.post-body th{background:#0b1220;color:#fff;font-weight:600}
.post-body tr:nth-child(even) td{background:#f8fafc}

/* ---- Code & HTML embeds (Code block + Custom HTML block) ---- */
.post-body pre,.post-body .wp-block-code{background:#0b1220;color:#e6edf3;border-radius:12px;padding:16px 18px;overflow:auto;font-size:.9rem;line-height:1.6;margin:1.2rem 0;border:1px solid #1e293b}
.post-body pre code,.post-body .wp-block-code code{background:none;color:inherit;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace}
.post-body :not(pre) > code{background:#eef2f7;color:#0b1220;padding:.12em .4em;border-radius:6px;font-size:.88em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.post-body iframe{max-width:100%;width:100%;border:0;border-radius:12px;margin:1.2rem 0;aspect-ratio:16/9}
.post-body figure{margin:1.2rem 0}
.post-body figcaption{font-size:.85rem;color:#8a93a3;text-align:center;margin-top:.4rem}

/* ---- CTA inside a post ---- */
.post-cta{background:linear-gradient(135deg,#0b1220,#1e293b);color:#fff;border-radius:18px;padding:26px;margin:2rem 0;text-align:center}
.post-cta h3{color:#fff;margin:0 0 .4rem}
.post-cta p{color:#cbd5e1;margin:0 0 1rem}

/* ---- Pagination ---- */
.pagination{display:flex;gap:8px;justify-content:center;margin-top:32px;flex-wrap:wrap}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 14px;border:1px solid #e3e8f0;border-radius:10px;color:#0b1220;text-decoration:none}
.pagination .page-numbers:hover{background:#f1f6ff}

@media(max-width:560px){
  .post-body table{font-size:.85rem}
  .post-body th,.post-body td{padding:7px 8px}
}
