/* ═══════════════════════════════════════════════════════════════════════════
   card-prices-blog.css — Shared blog post styles for Card Prices
   Used by: blog/scanner-pipeline.html, blog/product-matching.html,
            blog/scan-station.html
   ═══════════════════════════════════════════════════════════════════════════ */

.post-meta {
  font-family: 'IBM Plex Mono', monospace;
  font-size: clamp(0.66rem, 1.8vw, 0.72rem);
  color: #9333ea;
  letter-spacing: 0.05em;
  margin-bottom: clamp(6px, 1.5vw, 8px);
}

.post-title {
  font-family: 'Cinzel', serif;
  font-size: clamp(1.3rem, 3vw, 1.7rem);
  font-weight: 700;
  color: #1e293b;
  margin-bottom: clamp(10px, 2vw, 16px);
  line-height: 1.3;
}

.post-tags {
  display: flex;
  gap: clamp(4px, 1vw, 6px);
  flex-wrap: wrap;
  margin-bottom: clamp(18px, 4vw, 28px);
}

.post-tag {
  font-family: 'IBM Plex Mono', monospace;
  font-size: clamp(0.6rem, 1.5vw, 0.65rem);
  padding: 2px 8px;
  border-radius: 10px;
  background: rgba(147, 51, 234, 0.08);
  color: #7c3aed;
  border: 1px solid rgba(147, 51, 234, 0.15);
}

.post-body {
  font-family: 'Exo 2', sans-serif;
  font-size: clamp(0.82rem, 2vw, 0.9rem);
  color: #334155;
  line-height: 1.8;
}

.post-body h2 {
  font-family: 'Cinzel', serif;
  font-size: clamp(0.95rem, 2.5vw, 1.1rem);
  font-weight: 700;
  color: #1e293b;
  margin: clamp(20px, 4vw, 32px) 0 clamp(8px, 2vw, 12px);
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(224, 90, 0, 0.2);
}

.post-body h3 {
  font-family: 'Cinzel', serif;
  font-size: clamp(0.85rem, 2vw, 0.95rem);
  font-weight: 600;
  color: #1e293b;
  margin: clamp(16px, 3vw, 24px) 0 clamp(6px, 1.5vw, 8px);
}

.post-body p {
  margin: 0 0 clamp(10px, 2vw, 14px);
}

.post-body strong { color: #1e293b; }
.post-body a { color: #9333ea; text-decoration: none; }
.post-body a:hover { text-decoration: underline; }

.post-body ul,
.post-body ol {
  margin: 0 0 clamp(10px, 2vw, 14px);
  padding-left: clamp(16px, 3vw, 24px);
}

.post-body li {
  margin-bottom: clamp(4px, 1vw, 6px);
}

.post-callout {
  background: rgba(147, 51, 234, 0.06);
  border-left: 3px solid #9333ea;
  padding: clamp(10px, 2vw, 14px) clamp(12px, 2.5vw, 18px);
  margin: clamp(14px, 3vw, 20px) 0;
  border-radius: 0 8px 8px 0;
  font-size: clamp(0.78rem, 1.8vw, 0.85rem);
}

.post-example {
  background: rgba(224, 90, 0, 0.06);
  border: 1px solid rgba(224, 90, 0, 0.15);
  border-radius: 8px;
  padding: clamp(10px, 2vw, 14px) clamp(12px, 2.5vw, 18px);
  margin: clamp(10px, 2vw, 16px) 0;
  font-family: 'IBM Plex Mono', monospace;
  font-size: clamp(0.7rem, 1.6vw, 0.78rem);
  color: #475569;
  line-height: 1.6;
}

.post-cover {
  width: 100%;
  max-height: clamp(250px, 45vw, 450px);
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: clamp(12px, 2.5vw, 20px);
}

.post-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: clamp(24px, 5vw, 40px);
  padding-top: clamp(14px, 3vw, 20px);
  border-top: 1px solid rgba(224, 90, 0, 0.15);
  font-family: 'Exo 2', sans-serif;
  font-size: clamp(0.75rem, 1.8vw, 0.82rem);
}

.post-nav a {
  color: #9333ea;
  text-decoration: none;
  font-weight: 600;
}

.post-nav a:hover { text-decoration: underline; }

/* Blog post panel padding */
.panel-blog {
  padding: clamp(16px, 3vw, 32px);
}

@media (max-width: 600px) {
  .post-nav {
    flex-direction: column;
    gap: clamp(8px, 2vw, 12px);
    text-align: center;
  }
}
