/* Hemppy affiliate UI (1.5.0) — lightweight, CWV-friendly */
.hemppy-aff-cta { margin: 1rem 0; }
.hemppy-aff-cta__btn {
  display: inline-block;
  padding: 0.75rem 1.25rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 4px;
}
.hemppy-aff-cta__note,
.hemppy-aff-cta__na {
  margin: 0.5rem 0 0;
  font-size: 0.9rem;
  opacity: 0.85;
}
.hemppy-aff-disclosure {
  margin: 1rem 0;
  padding: 0.75rem 1rem;
  border-left: 3px solid currentColor;
  font-size: 0.9rem;
}
.hemppy-aff-filters {
  margin: 0 0 1rem;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 12px;
  background: #fbf8f2;
  max-width: 100%;
}
.hemppy-aff-filters__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
  gap: 0.55rem 0.85rem;
  align-items: end;
}
.hemppy-aff-filters__grid > p { margin: 0; }
.hemppy-aff-filters label { display: block; font-size: 0.8rem; margin-bottom: 0.2rem; font-weight: 600; }
.hemppy-aff-filters input,
.hemppy-aff-filters select { width: 100%; max-width: 100%; box-sizing: border-box; }
.hemppy-aff-filters__actions { margin: 0.65rem 0 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.hemppy-compare { overflow-x: auto; margin: 1.5rem 0; }
.hemppy-compare__table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.hemppy-compare__table th,
.hemppy-compare__table td { padding: 0.5rem 0.75rem; border-bottom: 1px solid rgba(0,0,0,.1); text-align: left; vertical-align: top; }
.hemppy-nl { margin: 1.5rem 0; padding: 1rem; border: 1px solid rgba(0,0,0,.12); border-radius: 6px; }
.hemppy-nl__consent { font-size: 0.9rem; }
.hemppy-nl__flash--err { color: #b32d2e; }
/* Affiliate mode: hide cart/checkout chrome if theme left it visible */
body.hemppy-mode-affiliate .ct-header-cart,
body.hemppy-mode-affiliate .hemppy-header-cart,
body.hemppy-mode-affiliate .wc-block-mini-cart { display: none !important; }
/* 1.5.1: data-checked date */
.hemppy-aff-checked { margin: 0.5rem 0 0; font-size: 0.85rem; opacity: 0.85; }
/* 1.6.0: per-country availability */
.hemppy-aff-unbuyable { opacity: 0.6; }
.hemppy-aff-unavail-hide .hemppy-aff-unbuyable { display: none; }
.hemppy-aff-unavail { margin: 1.5rem 0; }
.hemppy-aff-unavail > summary { cursor: pointer; font-weight: 600; padding: 0.5rem 0; }
.hemppy-aff-unavail__empty { margin: 0.5rem 0 1rem; }
.hemppy-aff-cta__btn.is-disabled { opacity: 0.6; cursor: not-allowed; }
.hemppy-aff-alts { margin: 1rem 0; padding: 0.75rem 1rem; border: 1px solid rgba(0,0,0,.12); border-radius: 6px; }
.hemppy-aff-alts__title { margin: 0 0 0.5rem; font-weight: 600; }
.hemppy-aff-alts__list { margin: 0; padding-left: 1.1rem; }
.hemppy-aff-alts__facts { display: block; font-size: 0.85rem; opacity: 0.85; }
.hemppy-compare__filter { margin: 0 0 0.75rem; font-size: 0.95rem; }
.hemppy-compare__table tr.is-unavailable { opacity: 0.6; }

/* 1.6.1: admin-only country preview — draft products listed during a preview. */
.hemppy-aff-draft-badge{display:inline-block;margin:0 0 .4em;padding:.1em .5em;font-size:.75em;font-weight:600;line-height:1.6;color:#7a4b00;background:#fff4d6;border:1px solid #e0b252;border-radius:3px}
/* 1.6.5: server-partitioned page with no buyable card on it (e.g. last page). */
ul.products[data-hemppy-aff-server]:not([data-hemppy-aff-unavail-list]):not(:has(li)){display:none;margin:0}
