
:root {
  --jts-wl-forest: #1F3D2E;
  --jts-wl-sage: #7F9676;
  --jts-wl-oat: #DCC8A3;
  --jts-wl-cream: #F5F1E8;
  --jts-wl-brown: #A46B3C;
}
.jts-wishlist-btn {
  display:inline-flex; align-items:center; gap:.45rem; border:1px solid rgba(31,61,46,.22);
  background:#fff; color:var(--jts-wl-forest); border-radius:999px; padding:.6rem .9rem;
  font:inherit; cursor:pointer; transition:.2s ease;
}
.jts-wishlist-btn:hover,.jts-wishlist-btn.is-saved { background:var(--jts-wl-forest); color:#fff; }
.jts-wishlist-heart { font-size:1.2em; line-height:1; }
.jts-wishlist-btn--archive { margin-top:.65rem; }
.jts-wishlist-btn--single { margin-top:1rem; }

.jts-wishlist-page { width:100%; }
.jts-wishlist-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin:0 0 1.75rem; }
.jts-wishlist-kicker { color:var(--jts-wl-brown); text-transform:uppercase; letter-spacing:.14em; font-size:.76rem; font-weight:700; }
.jts-wishlist-heading h2 { margin:.2rem 0 0; color:var(--jts-wl-forest); font-size:clamp(2rem,4vw,3.5rem); }
.jts-wishlist-clear { border:0; background:none; color:var(--jts-wl-brown); cursor:pointer; text-decoration:underline; }

.jts-wishlist-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1.25rem;
}
.jts-wishlist-card {
  position:relative; background:#fff; border:1px solid rgba(31,61,46,.1);
  border-radius:22px; overflow:hidden; box-shadow:0 12px 30px rgba(31,61,46,.06);
}
.jts-wishlist-card-image { display:block; background:var(--jts-wl-cream); aspect-ratio:1/1; overflow:hidden; }
.jts-wishlist-card-image img { width:100%; height:100%; object-fit:cover; display:block; }
.jts-wishlist-card-body { padding:1rem; }
.jts-wishlist-card h3 { margin:.2rem 2rem .45rem 0; font-size:1.05rem; }
.jts-wishlist-card h3 a { color:var(--jts-wl-forest); text-decoration:none; }
.jts-wishlist-price { font-weight:700; color:var(--jts-wl-forest); margin:.4rem 0; }
.jts-wishlist-stock { font-size:.82rem; margin:.45rem 0 .8rem; }
.jts-wishlist-stock.is-in { color:#34784b; }
.jts-wishlist-stock.is-out { color:#9b3f3f; }
.jts-wishlist-remove {
  position:absolute; top:.65rem; right:.65rem; width:34px; height:34px; border-radius:50%;
  border:0; background:rgba(255,255,255,.92); color:var(--jts-wl-forest); cursor:pointer; font-size:1.3rem;
}
.jts-wishlist-actions { display:grid; gap:.55rem; }
.jts-wishlist-actions .button, .jts-wishlist-shop-btn {
  text-align:center; border-radius:999px!important;
}
.jts-wishlist-empty {
  padding:4rem 1.25rem; text-align:center; background:var(--jts-wl-cream);
  border-radius:28px; border:1px solid rgba(31,61,46,.08);
}
.jts-wishlist-empty-heart { font-size:4rem; color:var(--jts-wl-brown); }
.jts-wishlist-empty h3 { color:var(--jts-wl-forest); font-size:1.8rem; margin:.4rem 0; }

.jts-wishlist-share {
  margin-top:2rem; padding:1.1rem 1.25rem; background:var(--jts-wl-cream); border-radius:18px;
  display:flex; gap:1rem; align-items:center; justify-content:space-between; flex-wrap:wrap;
}
.jts-wishlist-share-links { display:flex; gap:.65rem; flex-wrap:wrap; }
.jts-wishlist-share a,.jts-wishlist-copy {
  border:1px solid rgba(31,61,46,.15); background:#fff; color:var(--jts-wl-forest);
  padding:.55rem .8rem; border-radius:999px; text-decoration:none; cursor:pointer; font:inherit;
}
@media (max-width:1024px) { .jts-wishlist-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:760px) {
  .jts-wishlist-grid{grid-template-columns:repeat(2,1fr); gap:.8rem;}
  .jts-wishlist-heading{align-items:flex-start;}
}
@media (max-width:480px) {
  .jts-wishlist-grid{grid-template-columns:1fr;}
}
