/* Cross-channel discovery keeps the source contract visible, with no purchase
   action on the card. Explicit palettes keep text legible in every state. */
.cross-listings {
  --cross-card:#fffdf9;
  --cross-ink:#172a41;
  --cross-muted:#425369;
  --cross-line:#64748b;
  --cross-action:#17314e;
  --cross-action-ink:#fff;
  margin:1.5rem 0;
  color:var(--cross-ink);
}
html.calm:not(.light) .cross-listings {
  --cross-card:#18231f;
  --cross-ink:#f4f1e9;
  --cross-muted:#c2cbc6;
  --cross-line:#94a39a;
  --cross-action:#f4f1e9;
  --cross-action-ink:#172a41;
}
.cross-listings-heading { padding:1rem; margin-bottom:.75rem; border:1px solid var(--cross-line); border-radius:12px; background:var(--cross-card); }
.cross-listings-heading h2 { margin:0 0 .35rem; color:var(--cross-ink); font-size:1.35rem; line-height:1.3; }
.cross-listings-heading p { max-width:68ch; margin:0; color:var(--cross-ink); line-height:1.5; }
.cross-listings-heading .cross-listings-status:not(:empty) { margin-top:.65rem; padding:.5rem; border:1px solid var(--cross-line); border-radius:5px; font-weight:650; }
.cross-listings-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr)); gap:.85rem; }
.cross-offer { min-width:0; display:flex; flex-direction:column; border:1px solid var(--cross-line); border-radius:12px; background:var(--cross-card); overflow-wrap:anywhere; }
.cross-offer-media { display:flex; align-items:center; justify-content:center; min-height:8rem; aspect-ratio:3/2; max-height:12rem; padding:.5rem; color:var(--cross-muted); border-radius:12px 12px 0 0; }
.cross-offer-media img { display:block; width:100%; height:100%; min-height:0; object-fit:contain; }
.cross-offer-body { display:flex; flex:1; flex-direction:column; min-width:0; padding:.85rem; }
.cross-offer-source { align-self:flex-start; max-width:100%; box-sizing:border-box; margin:0 0 .5rem; padding:.25rem .5rem; border:1px solid var(--cross-line); border-radius:5px; color:var(--cross-ink); font-size:.85rem; font-weight:700; line-height:1.4; }
.cross-offer h3 { margin:0; font-size:1rem; line-height:1.4; }
.cross-offer a,.cross-offer a:visited,.cross-offer a:hover { color:var(--cross-ink); text-decoration:underline; text-underline-offset:.18em; }
.cross-offer-price { margin:.6rem 0 .3rem; color:var(--cross-ink); line-height:1.4; }
.cross-offer-price span { display:block; font-size:.8rem; }
.cross-offer-price strong { font-size:1.3rem; }
.cross-offer-terms { margin:.2rem 0 .85rem; color:var(--cross-ink); font-size:.9rem; line-height:1.5; }
.cross-offer a:hover { text-decoration-thickness:2px; }
.cross-offer a:focus,.cross-offer a:focus-visible { outline:3px solid var(--cross-ink); outline-offset:3px; }

/* One native anchor owns every cross-listed tile, with visible text and focus. */
.cross-offer a.cross-offer-card-link, .cross-offer a.cross-offer-card-link:visited,
.cross-offer a.cross-offer-card-link:hover { display:flex; flex-direction:column; flex:1; min-width:0; border-radius:12px; color:var(--cross-ink); text-decoration:none; }
.cross-offer-card-link h3 { text-decoration:underline; text-underline-offset:.18em; }
.cross-offer-card-link:hover h3 { text-decoration-thickness:2px; }
.cross-offer .cross-offer-action { display:flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:44px; margin-top:auto; padding:.6rem .75rem; border:2px solid var(--cross-action); border-radius:7px; color:var(--cross-action-ink); background:var(--cross-action); font-weight:700; line-height:1.4; text-decoration:underline; }
.cross-offer-card-link:focus { outline:3px solid var(--cross-ink); outline-offset:3px; }
.cross-listings-grid { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
@media (max-width:520px) { .cross-listings-grid { grid-template-columns:minmax(0,1fr); } }
