/* ── Document download cards (DC family: ::doc-card) ─────────────────────────
   Shipped by post.twig only when the article embeds one ('apw-doc' in the
   rendered HTML). Self-contained on purpose — a post may carry a doc-card and
   nothing else, so blog-product.css may not be loaded; values mirror its
   palette. Reference surface, not a conversion pitch: light editorial-aside
   tint like the product card A, paper-edged first-page thumb, quiet outline
   CTA. House rules: radius <= 6px, no pills, no hover-translate. */

.apw-doc-card {
  display: flex; gap: 16px;
  background: #f7f9fc;
  border: 0; border-left: 3px solid #0057fe;
  border-radius: 0 6px 6px 0;
  padding: 16px; margin: 1.5rem 0;
}

/* first page as a paper sheet — contain, white ground, hairline edge */
.apw-doc-thumb {
  flex: 0 0 128px; align-self: flex-start;
  display: block; line-height: 0;
  background: #fff; border: 1px solid #e3e8ee; border-radius: 3px;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 4px 16px rgba(15, 23, 42, .06);
  overflow: hidden;
}
.apw-doc-thumb img { width: 100%; height: auto; display: block; }
.apw-doc-thumb--icon {
  display: flex; align-items: center; justify-content: center;
  min-height: 120px; line-height: 1;
  color: #c2ccd6; font-size: 2rem;
}

/* body — text rules scoped under .apw-doc-card (0-2-0) so they beat the blog
   theme's .post-content p / .post-content a (0-1-1), same trick as viz/iq */
.apw-doc-body { flex: 1 1 auto; min-width: 0; }
.apw-doc-card .apw-doc-eyebrow {
  display: inline-block;
  font-size: .68rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  color: #5b6b7b; margin-bottom: 4px;
}
.apw-doc-card .apw-doc-sep { opacity: .55; }
.apw-doc-card .apw-doc-title { color: #16263a; font-weight: 800; font-size: 1.05rem; line-height: 1.3; margin: 0 0 .35rem; }
.apw-doc-card .apw-doc-desc { color: #43536a; font-size: .88rem; line-height: 1.5; margin: 0 0 .75rem; }
.apw-doc-foot { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; }
.apw-doc-card .apw-doc-cta {
  display: inline-block;
  background: transparent; color: #0046cc;
  border: 1px solid #0057fe; border-radius: 4px;
  font-weight: 700; font-size: .82rem;
  padding: .45rem .8rem;
  text-decoration: none;
  transition: background .15s, box-shadow .15s;
}
.apw-doc-card .apw-doc-cta:hover,
.apw-doc-card .apw-doc-cta:focus {
  background: rgba(0, 87, 254, .07); color: #0046cc;
  text-decoration: none;
  box-shadow: 0 2px 8px rgba(15, 23, 42, .1);
}
.apw-doc-card .apw-doc-meta { color: #5b6b7b; font-size: .75rem; white-space: nowrap; }

@media (max-width: 560px) {
  .apw-doc-card { flex-direction: column; }
  .apw-doc-thumb { flex-basis: auto; width: 128px; }
}
