/* Sidorta Wishlist */

.rbwl-button{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  padding:0;
  border:1px solid #e8dce1;
  border-radius:50%;
  background:#fff;
  color:#8c8187;
  cursor:pointer;
  transition:border-color .18s ease,color .18s ease,background .18s ease;
}
.rbwl-button svg{
  width:18px;
  height:18px;
  overflow:visible;
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-width:1.6;
}
.rbwl-button:hover,
.rbwl-button:focus-visible,
.rbwl-button.is-active{
  border-color:#d6537c;
  color:#d6537c;
}
.rbwl-button.is-active{background:#fff1f5}
.rbwl-button.is-active svg{fill:currentColor}
.rbwl-button:focus-visible{outline:3px solid rgba(214,83,124,.18);outline-offset:2px}
.rbwl-button.has-error{animation:rbwl-shake .25s linear 2}
.product-card__media>.rbwl-button{
  position:absolute;
  z-index:3;
  top:12px;
  left:12px;
}

.rbwl-header{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
  color:inherit;
}
.rbwl-header__icon{
  position:relative;
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid var(--rb-line,#e8dce1);
  border-radius:50%;
  flex:0 0 auto;
}
.rbwl-header__icon svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}
.rbwl-header__label{
  line-height:1.2;
}
.rbwl-count{
  position:absolute;
  top:-5px;
  inset-inline-start:-5px;
  z-index:2;
  box-sizing:border-box;
  display:inline-grid;
  place-items:center;
  width:18px;
  height:18px;
  min-width:18px;
  max-width:22px;
  padding:0;
  border:2px solid #fff;
  border-radius:50%;
  background:#d6537c;
  color:#fff;
  font-family:inherit;
  font-size:10px;
  font-weight:700;
  font-variant-numeric:tabular-nums;
  line-height:1;
  text-align:center;
  pointer-events:none;
}
.rbwl-count[hidden]{
  display:none !important;
}
.header-actions .rbwl-count{
  top:1px;
  inset-inline-start:4px;
}

/* Page: theme already prints the title — hide shortcode duplicate */
body.rbwl-wishlist-page .rbwl-page > h1{display:none}
body.rbwl-wishlist-page .entry-content > .rbwl-page > h1{display:none}

.rbwl-page{
  width:min(1320px,calc(100vw - 40px));
  margin:0 auto;
  padding:12px 0 80px;
}
.rbwl-page__meta{
  margin:0 0 22px;
  color:#8c8187;
  font-size:14px;
}
.rbwl-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.rbwl-item{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:16px;
  border:1px solid #eee3e8;
  border-radius:16px;
  background:#fff;
}
.rbwl-item__image{
  display:block;
  aspect-ratio:1;
  border-radius:12px;
  background:#faf6f8;
  overflow:hidden;
}
.rbwl-item__image img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.rbwl-item h2{
  margin:0;
  font-size:14px;
  font-weight:700;
  line-height:1.55;
}
.rbwl-item h2 a{
  color:#2f292c;
  text-decoration:none;
}
.rbwl-item h2 a:hover{color:#d6537c}
.rbwl-item__price{
  color:#d6537c;
  font-weight:700;
}
.rbwl-item__link{
  margin-top:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:8px 12px;
  border:1px solid #e8dce1;
  border-radius:12px;
  color:#5c5156;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
}
.rbwl-item__link:hover{
  border-color:#d6537c;
  color:#d6537c;
  background:#fff7fa;
}
.rbwl-item>.rbwl-button{
  position:absolute;
  top:12px;
  left:12px;
}

.rbwl-empty{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:10px;
  max-width:420px;
  margin:32px auto 0;
  padding:40px 24px;
  border:1px dashed #e8dce1;
  border-radius:20px;
  background:#fffafb;
}
.rbwl-empty__icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:50%;
  background:#fff1f5;
  color:#d6537c;
}
.rbwl-empty__icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
}
.rbwl-empty__title{
  margin:8px 0 0;
  color:#2f292c;
  font-size:18px;
  font-weight:800;
}
.rbwl-empty__text{
  margin:0;
  color:#8c8187;
  font-size:14px;
  line-height:1.7;
}
.rbwl-empty__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:8px;
  padding:10px 20px;
  border-radius:12px;
  background:#d6537c;
  color:#fff;
  text-decoration:none;
  font-weight:700;
}
.rbwl-empty__cta:hover{background:#c4476e;color:#fff}

@keyframes rbwl-shake{
  25%{transform:translateX(2px)}
  75%{transform:translateX(-2px)}
}

@media (max-width:1023px){
  .rbwl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:767px){
  .rbwl-page{width:calc(100vw - 28px);padding-top:8px}
  .rbwl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .rbwl-header__label{display:inline}
}
@media (prefers-reduced-motion:reduce){
  .rbwl-button{transition:none}
  .rbwl-button.has-error{animation:none}
}
