.qac-modal{ position:fixed; inset:0; z-index:99999; display:none; }
.qac-modal.is-open{ display:block; }

.qac-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.34); backdrop-filter:blur(2px); z-index:1; }
.qac-dialog{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:min(980px,94vw); max-height:90vh; overflow:auto; background:#fff; border-radius:14px; box-shadow:0 20px 60px rgba(0,0,0,.25); padding:22px; z-index:2; }
.qac-close{ position:absolute; right:12px; top:8px; font-size:26px; line-height:1; border:0; background:0; cursor:pointer; opacity:.6 }
.qac-close:hover{ opacity:1 }
html.qac-locked{ overflow:hidden }

/* skeleton */
.qac-skel{ display:grid; grid-template-columns:1fr 1.2fr; gap:24px; }
.qac-skel .ph{ background:linear-gradient(90deg,#f1f1f1 25%,#f7f7f7 37%,#f1f1f1 63%); background-size:400% 100%; animation:qacShimmer 1.2s infinite; border-radius:10px }
.qac-skel .ph.img{ height:320px }
.qac-skel .ph.ln1{ height:20px; margin:8px 0; width:80% }
.qac-skel .ph.ln2{ height:18px; margin:8px 0; width:50% }
@keyframes qacShimmer{ 0%{background-position:100% 0} 100%{background-position:0 0} }

/* content */
.qac-grid{ display:grid; grid-template-columns:1fr 1.2fr; gap:24px }
.qac-img{ width:100%; height:auto; object-fit:contain; border-radius:10px; background:#f7f7f7 }
.qac-title{ margin:4px 0 8px; font-size:20px; font-weight:800; line-height:1.25 }
.qac-price{ font-size:22px; font-weight:900; color:#0a7a7a; margin:6px 0 12px }

/* таблица */
.qac-attrs{ width:100%; border-collapse:collapse; margin:0 0 16px; font-size:15px; }
.qac-attrs th, .qac-attrs td{ padding:10px 8px; border-bottom:1px solid #eee; }
.qac-attrs th{ width:42%; text-align:left; color:#6b7280; font-weight:600; }
.qac-attrs td{ color:#111; }

/* кнопки */
.qac-cart .single_add_to_cart_button{
  order:1;
  background:#1A48CF!important; color:#fff!important; border-radius:10px; border:1px solid transparent;
  padding:12px 18px; font-weight:800; letter-spacing:.2px; width:100%;
  box-shadow:0 10px 24px rgba(26,72,207,.22); transition:.15s ease;
}
.qac-cart .single_add_to_cart_button:hover{
  background:#173EAE!important; transform:translateY(-1px); box-shadow:0 14px 30px rgba(26,72,207,.28);
}
.qac-cart .qac-btn-buy-now{
  order:2; margin-top:12px;
  background:#2dc26b; color:#fff; border-radius:10px; border:1px solid transparent;
  padding:12px 18px; font-weight:800; width:100%; cursor:pointer; transition:.15s ease;
  box-shadow:0 10px 24px rgba(45,194,107,.22);
}
.qac-cart .qac-btn-buy-now:hover{ background:#1e9c52; transform:translateY(-1px) }

.qac-cart .quantity input.qty{ height:42px; border-radius:10px }
.qac-cart table.variations{ margin-bottom:12px }
.qac-cart .variations select{ min-width:220px; border-radius:8px; padding:8px 10px }

/* глушим wishlist в попапе */
#qac-modal .yith-wcwl-add-to-wishlist,
#qac-modal [class*="wishlist"]{ display:none !important; }

/* toast */
.qac-toast{
  position:fixed; left:50%; bottom:24px; transform:translate(-50%,10px);
  background:#111; color:#fff; padding:10px 14px; border-radius:10px;
  box-shadow:0 10px 24px rgba(0,0,0,.25); font-weight:700; opacity:0;
  pointer-events:none; transition:opacity .2s, transform .2s; z-index:100000;
}
.qac-toast.show{ opacity:1; transform:translate(-50%,0); }

/* mobile */
@media (max-width:780px){
  .qac-skel, .qac-grid{ grid-template-columns:1fr }
  .qac-dialog{ padding:16px }
}
