/* SEO Rank Publisher v0.4.0 - frontend styles.
   Mobile-first. Blog index is fully self-contained (.srp-*). Single-article rules are scoped to
   body.srp-styled so they NEVER touch Elementor-built pages/posts. */

/* ---------- Blog index ([srp_blog]) ---------- */
.srp-blog {
  --srp-accent:#1f6feb; --srp-ink:#16181d; --srp-muted:#6b7280; --srp-line:#e6e8eb;
  max-width:1180px; margin:0 auto; padding:0 1rem;
}
.srp-blog-filter { display:flex; flex-wrap:wrap; gap:.5rem; margin:0 0 1.5rem; }
.srp-chip {
  display:inline-block; padding:.42rem .9rem; border:1px solid var(--srp-line); border-radius:999px;
  font-size:.85rem; line-height:1; color:var(--srp-ink); text-decoration:none; background:#fff;
  transition:border-color .15s ease, color .15s ease, background .15s ease;
}
.srp-chip:hover { border-color:var(--srp-accent); color:var(--srp-accent); }
.srp-chip.is-active { background:var(--srp-accent); border-color:var(--srp-accent); color:#fff; }

.srp-grid { display:grid; grid-template-columns:1fr; gap:1.25rem; }
@media (min-width:600px){ .srp-grid{ grid-template-columns:repeat(2,1fr); gap:1.5rem; } }
@media (min-width:960px){ .srp-grid{ grid-template-columns:repeat(3,1fr); } }

.srp-card {
  background:#fff; border:1px solid var(--srp-line); border-radius:14px; overflow:hidden;
  display:flex; flex-direction:column; transition:transform .15s ease, box-shadow .15s ease;
}
.srp-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px rgba(16,24,40,.10); }
.srp-card-link { text-decoration:none; color:inherit; display:flex; flex-direction:column; height:100%; }
.srp-card-media { aspect-ratio:16/10; background:#f2f4f7; overflow:hidden; }
.srp-card-media img { width:100%; height:100%; object-fit:cover; display:block; }
.srp-card-media--ph { background:linear-gradient(135deg, rgba(31,111,235,.16), rgba(31,111,235,.03)); }
.srp-card-body { padding:1rem 1.1rem 1.2rem; display:flex; flex-direction:column; gap:.5rem; flex:1; }
.srp-card-cat { font-size:.72rem; letter-spacing:.04em; text-transform:uppercase; color:var(--srp-accent); font-weight:600; }
.srp-card-title { font-size:1.15rem; line-height:1.3; margin:0; color:var(--srp-ink); }
.srp-card-sub { font-size:.92rem; line-height:1.5; color:var(--srp-muted); margin:0; }
.srp-card-meta { margin-top:auto; font-size:.78rem; color:var(--srp-muted); }
.srp-empty { color:var(--srp-muted); padding:2rem 0; text-align:center; }

/* ---------- Single article (scoped: standard, non-Elementor posts only) ---------- */
body.srp-styled .entry-content,
body.srp-styled .page-content {
  max-width:760px; margin-left:auto; margin-right:auto;
  font-size:1.075rem; line-height:1.7; color:#1f2329;
}
body.srp-styled .entry-content > figure:first-child img,
body.srp-styled .page-content > figure:first-child img { width:100%; height:auto; border-radius:14px; }
body.srp-styled .entry-content img,
body.srp-styled .page-content img { max-width:100%; height:auto; border-radius:10px; }
body.srp-styled .entry-content h2,
body.srp-styled .page-content h2 { font-size:1.6rem; line-height:1.25; margin:2.2rem 0 .8rem; }
body.srp-styled .entry-content h3,
body.srp-styled .page-content h3 { font-size:1.25rem; line-height:1.3; margin:1.6rem 0 .6rem; }
body.srp-styled .entry-content p,
body.srp-styled .page-content p { margin:0 0 1.1rem; }
body.srp-styled .entry-content ul,
body.srp-styled .entry-content ol,
body.srp-styled .page-content ul,
body.srp-styled .page-content ol { margin:0 0 1.1rem 1.25rem; }
body.srp-styled .entry-content li,
body.srp-styled .page-content li { margin:.35rem 0; }
body.srp-styled .entry-content table,
body.srp-styled .page-content table {
  width:100%; border-collapse:collapse; margin:1.2rem 0; font-size:.95rem;
  display:block; overflow-x:auto; -webkit-overflow-scrolling:touch;
}
body.srp-styled .entry-content th,
body.srp-styled .entry-content td,
body.srp-styled .page-content th,
body.srp-styled .page-content td { border:1px solid #e6e8eb; padding:.6rem .75rem; text-align:left; vertical-align:top; }
body.srp-styled .entry-content th,
body.srp-styled .page-content th { background:#f7f9fc; font-weight:600; }
body.srp-styled .entry-content figcaption,
body.srp-styled .page-content figcaption { font-size:.78rem; color:#8a8a8a; margin-top:.4rem; }
