/* Search/listing + product card + comparison — strict white/grey monochrome. */

/* ---- Card signal badges ---- */
.pm-card-badges{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:4px;align-items:flex-start;z-index:2}
.pm-cb-badge{display:inline-flex;align-items:center;gap:4px;background:#161616;color:#fff;font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 8px;border-radius:999px;line-height:1}
.pm-cb-feat{background:#0e7c74}
.pm-cb-prot{background:#fff;color:#4a4a4a;border:1px solid #ececea;font-weight:500}
.pm-cb-promo{background:#fff;color:#0e7c74;border:1px solid #0e7c74;font-weight:600}
.pm-cb-visual{background:#0e7c74;color:#fff}
.pm-cb-deal{background:#b3261e;color:#fff}

/* ---- Card rating + supplier signals ---- */
.pm-card-rating{display:flex;align-items:center;gap:4px;font-size:12px;color:#4a4a4a;margin:2px 0}
.pm-stars{color:#6b6b6b;letter-spacing:1px;font-size:12px}
.pm-card-loc{font-size:12px;color:#6b6b6b;margin-top:2px}
.pm-card-signals{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}
.pm-card-signals .sig{font-size:11px;color:#4a4a4a;background:#f5f5f5;border:1px solid #ececea;border-radius:999px;padding:4px 8px;white-space:nowrap}

/* ---- Compare toggle on card ---- */
.pm-cmp-toggle{background:none;border:0;cursor:pointer;font:inherit;color:#6b6b6b;padding:0}
.pm-cmp-toggle:hover{color:#161616;text-decoration:underline}
.pm-cmp-toggle.on{color:#161616;font-weight:600}

/* ---- Compare tray (fixed bottom bar) ---- */
.cmp-tray{position:fixed;left:50%;transform:translateX(-50%);bottom:16px;z-index:60;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #ececea;border-radius:16px;box-shadow:0 12px 32px rgba(0,0,0,.08);padding:8px 12px;max-width:calc(100vw - 32px)}
.cmp-tray[hidden]{display:none}
.cmp-tray-items{display:flex;gap:8px}
.cmp-tray-item{position:relative;width:52px;height:52px;border:1px solid #ececea;border-radius:10px;overflow:hidden;background:#f5f5f5}
.cmp-tray-item img{width:100%;height:100%;object-fit:cover}
.cmp-tray-item button{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;border:1px solid #ececea;background:#fff;color:#4a4a4a;font-size:11px;line-height:1;cursor:pointer}
.cmp-tray-clear{background:none;border:0;color:#6b6b6b;font-size:13px;cursor:pointer}
.cmp-tray-clear:hover{color:#161616;text-decoration:underline}

/* ---- Comparison table ---- */
.cmp-wrap{overflow-x:auto;margin:16px 0;border:1px solid #ececea;border-radius:14px;background:#fff}
.cmp-table{border-collapse:collapse;width:100%;min-width:640px}
.cmp-table th,.cmp-table td{padding:12px 12px;border-bottom:1px solid #f5f5f4;vertical-align:top;text-align:left;font-size:13px}
.cmp-table thead th{background:#fafaf9;font-weight:600;color:#161616}
.cmp-table tbody th{color:#6b6b6b;font-weight:500;width:150px;background:#fafaf9}
.cmp-table tr:last-child th,.cmp-table tr:last-child td{border-bottom:0}
.cmp-table img.cmp-img{width:120px;height:120px;object-fit:cover;border-radius:10px;border:1px solid #ececea}
.cmp-tier{white-space:nowrap;color:#4a4a4a}
.cmp-empty{padding:40px 20px;text-align:center;color:#6b6b6b}

/* ---- Pagination ---- */
.pm-pagination{display:flex;align-items:center;justify-content:center;gap:4px;margin:28px 0 8px;flex-wrap:wrap}
.pm-pagination a,.pm-pagination span.pg{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border:1px solid #ececea;border-radius:10px;background:#fff;color:#4a4a4a;font-size:13px;text-decoration:none}
.pm-pagination a:hover{border-color:#a8a8a8;color:#161616}
.pm-pagination span.pg.on{background:#161616;border-color:#161616;color:#fff;font-weight:600}
.pm-pagination span.pg.dots{border:0;background:none}

/* ---- Related searches ---- */
.pm-related{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 0px;font-size:13px;color:#6b6b6b}
.pm-related a{color:#4a4a4a;background:#f5f5f5;border:1px solid #ececea;border-radius:999px;padding:4px 12px;text-decoration:none}
.pm-related a:hover{border-color:#a8a8a8;color:#161616}

/* ---- Rich empty state with RFQ CTA ---- */
.pm-empty-rfq{margin:36px 0;padding:40px 24px;text-align:center;background:#fafaf9;border:1px solid #ececea;border-radius:16px}
.pm-empty-rfq h3,.pm-empty-rfq h2{margin:0 0 8px;font-size:18px;color:#161616;font-weight:600}
.pm-empty-rfq p{margin:0 0 16px;color:#6b6b6b;font-size:14px;max-width:520px;margin-left:auto;margin-right:auto}

/* layout audit (2026-09-27): keep the compare tray clear of the mobile bottom tab bar */
@media(max-width:860px){
  .cmp-tray{bottom:calc(84px + env(safe-area-inset-bottom))}
}

/* layout audit (2026-09-27): sticky row labels on the compare matrix so cells don't paint over them */
.cmp-table tbody th{position:sticky;left:0;z-index:2;background:#fafaf9}
.cmp-table thead th:first-child{position:sticky;left:0;z-index:3;background:#fafaf9}

/* PROACTIVE 2026-10-05 — "Did you mean?" typo-rescue line under the result count. */
.pm-didyoumean{margin:4px 0 0;font-size:14px;color:#6b6b6b}
.pm-didyoumean a{color:#0f766e;text-decoration:none;font-weight:600}
.pm-didyoumean a:hover{text-decoration:underline}
