/* DaruGet Product Commerce — Phase 2 */
:root{--dd-commerce-green:#15803d;--dd-commerce-text:#172033;--dd-commerce-muted:#64748b}
.dd-toast-stack{position:fixed;left:20px;bottom:22px;z-index:12000;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.dd-toast{min-width:245px;max-width:min(390px,calc(100vw - 28px));padding:11px 13px;border:1px solid #dce7e0;border-radius:12px;background:#fff;color:var(--dd-commerce-text);box-shadow:0 16px 40px rgba(15,23,42,.14);font-size:12px;font-weight:800;line-height:1.65;opacity:0;transform:translateY(8px);transition:.2s}
.dd-toast.show{opacity:1;transform:none}.dd-toast.success{border-color:#cce8d6}.dd-toast.warn{border-color:#f3d6ae}
.dd-quick-btn{position:absolute!important;right:9px!important;bottom:9px!important;z-index:7!important;width:34px!important;height:34px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid #dfe7e2!important;border-radius:10px!important;background:rgba(255,255,255,.94)!important;color:#475569!important;box-shadow:0 5px 14px rgba(15,23,42,.08)!important;cursor:pointer!important;font:inherit!important;font-size:14px!important}
.dd-quick-btn:hover{color:#15803d!important;border-color:#bfdbc9!important}
.product-img,.category-product-media,.product-media{position:relative}
.favorite.is-wished,.favorite-pro.is-wished,.wishlist-btn.is-wished,.heart-btn.is-wished{color:#e11d48!important}
.category-product .favorite[data-wishlist="1"] + .product-top-actions .favorite-pro[data-wishlist="1"]{display:none!important}

/* image skeleton */
.dd-media-loading{overflow:hidden!important}
.dd-media-loading::after{content:"";position:absolute;inset:0;z-index:3;background:linear-gradient(100deg,transparent 20%,rgba(226,232,240,.62) 42%,transparent 64%);transform:translateX(100%);animation:ddShimmer 1.15s infinite}
.dd-media-loading img{opacity:.25!important}
.dd-media-ready::after{display:none!important}.dd-media-ready img{opacity:1!important;transition:opacity .18s}
@keyframes ddShimmer{to{transform:translateX(-100%)}}

/* Quick view */
.dd-qv-backdrop{position:fixed;inset:0;z-index:13000;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.42);backdrop-filter:blur(2px)}
.dd-qv-backdrop.open{display:flex}
.dd-qv{position:relative;width:min(780px,100%);max-height:min(620px,92vh);overflow:auto;display:grid;grid-template-columns:minmax(250px,.9fr) minmax(0,1.1fr);gap:22px;padding:20px;border-radius:22px;background:#fff;box-shadow:0 28px 70px rgba(15,23,42,.22)}
.dd-qv-close{position:absolute;top:10px;left:10px;z-index:4;width:34px;height:34px;border:1px solid #e2e8e4;border-radius:10px;background:#fff;color:#64748b;font-size:19px;cursor:pointer}
.dd-qv-media{min-height:330px;display:flex;align-items:center;justify-content:center;padding:15px;border:1px solid #edf1ef;border-radius:17px;background:#fff}
.dd-qv-media img{display:block;max-width:96%;max-height:300px;object-fit:contain;filter:drop-shadow(0 11px 16px rgba(15,23,42,.10))}
.dd-qv-copy{display:flex;flex-direction:column;padding:6px 0}.dd-qv-brand{font-size:12px;color:#64748b;font-weight:850}.dd-qv h2{margin:5px 0 8px;font-size:20px;line-height:1.65}.dd-qv-rating{display:flex;align-items:center;gap:5px;font-size:12px;color:#64748b}.dd-qv-rating b{color:#f5b301;font-size:14px}
.dd-qv-prices{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:18px 0 12px}.dd-qv-prices strong{font-size:17px;color:#15803d}.dd-qv-prices del{font-size:12px;color:#94a3b8;text-decoration-color:#ef4444}.dd-qv-discount{padding:4px 7px;border-radius:999px;background:#fff1f2;color:#e11d48;font-size:12px;font-weight:900}
.dd-qv-stock{margin-bottom:12px;font-size:12px;color:#15803d;font-weight:850}
.dd-qv-actions{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;margin-top:auto}.dd-qv-qty{height:42px;display:grid;grid-template-columns:30px 1fr 30px;align-items:center;border:1px solid #dfe7e2;border-radius:11px;overflow:hidden}.dd-qv-qty button{height:100%;border:0;background:#f8faf9;font-size:15px;cursor:pointer}.dd-qv-qty span{display:grid;place-items:center;font-size:11px;font-weight:900}.dd-qv-add{height:42px;border:0;border-radius:11px;background:#15803d;color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.dd-qv-link{display:flex;align-items:center;justify-content:center;margin-top:8px;min-height:38px;border:1px solid #e2e8e4;border-radius:10px;color:#475569;text-decoration:none;font-size:12px;font-weight:850}
.dd-stock-limit{margin-top:5px;color:#b45309;font-size:12px;font-weight:750}

/* Cart quantity badge consistency */
.header-cart-trigger .badge,.header-cart-trigger [data-cart-count]{font-variant-numeric:tabular-nums}
@media(max-width:680px){
 .dd-toast-stack{left:12px;right:12px;bottom:78px}.dd-toast{max-width:none;width:100%}
 .dd-qv{grid-template-columns:1fr;gap:12px;padding:15px;border-radius:18px}.dd-qv-media{min-height:235px}.dd-qv-media img{max-height:215px}.dd-qv h2{font-size:16px}.dd-qv-actions{grid-template-columns:90px 1fr}
 .dd-quick-btn{width:32px!important;height:32px!important;right:7px!important;bottom:7px!important}
}

.cart-item .item-media img{display:block;width:100%;height:100%;max-width:92px;max-height:92px;object-fit:contain;margin:auto;background:transparent}


/* Phase 2 hotfix — Quick View icon visibility on category cards */
.category-page .category-product{
  position:relative!important;
  overflow:visible!important;
}

.category-page .category-product .category-product-media,
.category-page .category-product .product-media,
.category-page .category-product .product-img{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

.category-page .category-product .dd-quick-btn{
  position:absolute!important;
  top:10px!important;
  right:auto!important;
  bottom:auto!important;
  left:10px!important;
  z-index:40!important;

  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  margin:0!important;
  padding:0!important;

  border:1px solid rgba(203,213,225,.95)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.96)!important;
  color:#334155!important;

  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;

  box-shadow:0 7px 18px rgba(15,23,42,.12)!important;
  transform:none!important;
}

.category-page .category-product .dd-quick-btn svg{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  stroke:currentColor!important;
  fill:none!important;
  pointer-events:none!important;
}

.category-page .category-product .dd-quick-btn:hover{
  border-color:#b8dac4!important;
  background:#f4fbf6!important;
  color:#15803d!important;
  box-shadow:0 9px 22px rgba(21,128,61,.12)!important;
}

.category-page .category-product .dd-quick-btn:focus-visible{
  outline:2px solid rgba(21,128,61,.28)!important;
  outline-offset:2px!important;
}

/* keep heart and quick-view from colliding */
.category-page .category-product > .favorite,
.category-page .category-product .product-top-actions{
  z-index:45!important;
}

@media(max-width:680px){
  .category-page .category-product .dd-quick-btn{
    top:7px!important;
    left:7px!important;
    width:33px!important;
    height:33px!important;
    min-width:33px!important;
    min-height:33px!important;
    border-radius:10px!important;
  }
  .category-page .category-product .dd-quick-btn svg{
    width:16px!important;
    height:16px!important;
  }
}


/* Phase 2 refinement — wishlist on image, stock beside brand */
.category-page .category-product .category-product-media{
  position:relative!important;
}

/* Wishlist replaces former stock badge position */
.category-page .category-product .product-top-actions{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  left:auto!important;
  bottom:auto!important;
  z-index:50!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
}

.category-page .category-product .favorite-pro{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  margin:0!important;
  border:1px solid rgba(203,213,225,.95)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.96)!important;
  color:#64748b!important;
  font-size:19px!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:0 7px 18px rgba(15,23,42,.11)!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

.category-page .category-product .favorite-pro:hover{
  color:#e11d48!important;
  border-color:#f0c7d1!important;
  background:#fff7f9!important;
}

.category-page .category-product .favorite-pro.is-wished,
.category-page .category-product .favorite-pro[aria-pressed="true"]{
  color:#e11d48!important;
  border-color:#f0c7d1!important;
  background:#fff3f6!important;
}

/* Undo Phase-2 rule which hid duplicate category heart */
.category-page .category-product .product-top-actions .favorite-pro[data-wishlist="1"]{
  display:flex!important;
}

/* Brand + availability row under image */
.category-page .category-product .product-meta-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-width:0!important;
  width:100%!important;
  margin:0 0 2px!important;
}

.category-page .category-product .product-meta-row .product-brand-link{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
}

.category-page .category-product .product-meta-row .stock-badge{
  position:static!important;
  inset:auto!important;
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-height:23px!important;
  padding:0 7px!important;
  margin:0!important;
  border-radius:999px!important;
  border:1px solid #d8eadf!important;
  background:#f1faf5!important;
  color:#15803d!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  box-shadow:none!important;
  transform:none!important;
}

.category-page .category-product .product-meta-row .stock-badge::before{
  content:""!important;
  width:5px!important;
  height:5px!important;
  border-radius:50%!important;
  background:currentColor!important;
}

.category-page .category-product .product-meta-row .stock-badge.is-out{
  border-color:#f1d5d5!important;
  background:#fff5f5!important;
  color:#dc2626!important;
}

/* Quick View opposite wishlist */
.category-page .category-product .dd-quick-btn{
  left:10px!important;
  right:auto!important;
  top:10px!important;
}

/* Explicitly remove obsolete standalone favorite */
.category-page .category-product > .favorite[data-wishlist="1"]{
  display:none!important;
}

@media(max-width:680px){
  .category-page .category-product .product-top-actions{
    top:7px!important;
    right:7px!important;
  }
  .category-page .category-product .favorite-pro{
    width:33px!important;
    height:33px!important;
    min-width:33px!important;
    min-height:33px!important;
    border-radius:10px!important;
    font-size:17px!important;
  }
  .category-page .category-product .product-meta-row{
    gap:5px!important;
  }
  .category-page .category-product .product-meta-row .stock-badge{
    min-height:21px!important;
    padding:0 6px!important;
    font-size:12px!important;
  }
}
