/* ═══════════════════════════════════════════════════════
 PERFECTO QUICK VIEW — VIBE THEME
 Clean minimal style
 ═══════════════════════════════════════════════════════ */

/* Loading spinner */
.pf-qv-loading-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:99999;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .22s;pointer-events:none}
.pf-qv-loading-overlay.is-visible{opacity:1;pointer-events:auto}
.pf-qv-spinner{display:flex;gap:8px}
.pf-qv-spinner>div{width:10px;height:10px;border-radius:50%;background:#fff;animation:pfQvB 1.2s infinite ease-in-out}
.pf-qv-spinner>div:nth-child(2){animation-delay:.16s}
.pf-qv-spinner>div:nth-child(3){animation-delay:.32s}
@keyframes pfQvB{0%,80%,100%{transform:scale(0);opacity:.4}40%{transform:scale(1);opacity:1}}
body.pf-qv-open{overflow:hidden!important}

/* Modal */
#pf-qv-modal{position:fixed;inset:0;z-index:99998;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s ease}
#pf-qv-modal.is-active{opacity:1;pointer-events:auto}
#pf-qv-modal .pf-qv-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5)}

/* Panel — clean white card */
#pf-qv-modal .pf-qv-panel{position:relative;background:#fff;border-radius:16px;width:min(92vw,900px);height:min(80vh,700px);overflow:hidden;display:flex;flex-direction:column;z-index:1;transform:translateY(16px) scale(.978);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:0 20px 60px rgba(0,0,0,.18),0 4px 16px rgba(0,0,0,.08)}
#pf-qv-modal.is-active .pf-qv-panel{transform:none}
#pf-qv-modal .pf-qv-panel.is-closing{transform:translateY(100%)!important;transition:transform .26s ease!important}

/* Close — top right */
#pf-qv-modal .pf-qv-close{position:absolute;top:14px;right:14px;z-index:30;width:32px;height:32px;border-radius:50%;background:#f5f5f5;border:1px solid #e8e8e8;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,transform .2s}
#pf-qv-modal .pf-qv-close svg{stroke:#333;width:16px;height:16px}
#pf-qv-modal .pf-qv-close:hover{background:#111;transform:rotate(90deg)}
#pf-qv-modal .pf-qv-close:hover svg{stroke:#fff}

/* Inner grid — fills panel height completely */
#pf-qv-modal .pf-qv-inner{display:grid;grid-template-columns:1.2fr 1fr;flex:1;min-height:0;align-items:stretch;height:100%}

/* Gallery — fully flush, zero gap top/bottom */
#pf-qv-modal .pf-qv-gallery-col{background:#f0f0f0;border-radius:16px 0 0 16px;overflow:hidden;display:flex;flex-direction:column;padding:0;margin:0;align-self:stretch;min-height:0}
#pf-qv-modal .pf-qv-track-wrap{position:relative;flex:1;overflow:hidden;margin:0;padding:0;min-height:0}
#pf-qv-modal .pf-qv-track{display:flex;width:100%;height:100%;transition:transform .35s cubic-bezier(.25,.8,.25,1);will-change:transform}
#pf-qv-modal .pf-qv-slide{min-width:100%;width:100%;height:100%;flex-shrink:0;overflow:hidden;position:relative}
#pf-qv-modal .pf-qv-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
#pf-qv-modal .pf-qv-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* Sale badge */
#pf-qv-modal .pf-qv-badge{position:absolute;top:12px;left:12px;z-index:10;background:#333;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px;pointer-events:none;letter-spacing:.3px}

/* Nav arrows — minimal circles */
#pf-qv-modal .pf-qv-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:34px;height:34px;border-radius:50%;background:#fff;border:1px solid #e5e5e5;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:all .18s}
#pf-qv-modal .pf-qv-nav svg{stroke:#333;width:14px;height:14px}
#pf-qv-modal .pf-qv-nav-prev{left:12px}
#pf-qv-modal .pf-qv-nav-next{right:12px}
#pf-qv-modal .pf-qv-nav:hover{background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.14);transform:translateY(-50%) scale(1.05)}

/* Dots */
#pf-qv-modal .pf-qv-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:5px;align-items:center}
#pf-qv-modal .pf-qv-dot{width:6px;height:6px;border-radius:50%;background:rgba(0,0,0,.2);border:none;padding:0;cursor:pointer;transition:all .2s}
#pf-qv-modal .pf-qv-dot.is-active{background:#333;width:16px;border-radius:3px}

/* View full btn — overlaid at bottom of image capsule */
#pf-qv-modal .pf-qv-fulllink{position:absolute;bottom:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:10px 0;background:rgba(0,0,0,.45);backdrop-filter:blur(2px);color:#fff;font-size:10px;font-weight:700;letter-spacing:1px;text-decoration:none;text-transform:uppercase;transition:background .18s}
#pf-qv-modal .pf-qv-fulllink:hover{background:rgba(0,0,0,.65);color:#fff}
#pf-qv-modal .pf-qv-fulllink-mobile{display:none}

/* ═══════════════════════════════════════════
 SUMMARY — uses pf-product__summary classes (single product CSS applies)
 Extra: make it scrollable inside the modal
 ═══════════════════════════════════════════ */
#pf-qv-modal .pf-qv-summary-col{padding:28px 28px 24px 26px;min-height:0;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:#e8e8e8 transparent}
#pf-qv-modal .pf-qv-summary-col::-webkit-scrollbar{width:3px}
#pf-qv-modal .pf-qv-summary-col::-webkit-scrollbar-thumb{background:#e5e5e5;border-radius:2px}

/* Slim down ATC buttons inside QV — narrower qty, wider ATC, FORCE black on all pages */
#pf-qv-modal .pf-qv-atc-wrap .quantity{height:36px!important;width:90px!important}
#pf-qv-modal .pf-qv-atc-wrap .quantity .qty-btn,
#pf-qv-modal .pf-qv-atc-wrap .quantity button{width:26px!important;font-size:15px!important}
#pf-qv-modal .pf-qv-atc-wrap .quantity input.qty{width:36px!important;font-size:13px!important;-moz-appearance:textfield!important}
#pf-qv-modal .pf-qv-atc-wrap .quantity input.qty::-webkit-inner-spin-button,
#pf-qv-modal .pf-qv-atc-wrap .quantity input.qty::-webkit-outer-spin-button{-webkit-appearance:none!important}
#pf-qv-modal .pf-qv-atc-wrap .single_add_to_cart_button,
#pf-qv-modal .pf-qv-atc-wrap button[type="submit"]{height:36px!important;font-size:11px!important;flex:1!important;background:var(--pf-atc-bg,#0a0a0a)!important;color:var(--pf-atc-txt,#fff)!important;border:none!important;border-radius:8px!important;font-weight:800!important;letter-spacing:.7px!important;text-transform:uppercase!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important}
#pf-qv-modal .pf-qv-atc-wrap .single_add_to_cart_button:hover,
#pf-qv-modal .pf-qv-atc-wrap button[type="submit"]:hover{background:var(--pf-atc-h-bg,#222)!important}
#pf-qv-modal .pf-qv-atc-wrap .pf-btn-buynow,
#pf-qv-modal .pf-qv-atc-wrap .pf-buy-now{height:36px!important;font-size:11px!important}
#pf-qv-modal .pf-qv-atc-wrap .pf-btn-wishlist{width:36px!important;height:36px!important;flex-shrink:0!important}

/* Actions — single row, flex-wrap nowrap */
#pf-qv-modal .pf-product__actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:6px!important;align-items:center!important}
#pf-qv-modal .pf-product__action-btn{white-space:nowrap!important;padding:7px 10px!important;font-size:10.5px!important}

/* Taxonomy — centred, smaller font */
#pf-qv-modal .pf-product__taxonomy{justify-content:center!important;text-align:center!important;font-size:10.5px!important;gap:16px!important;margin-top:10px!important}
#pf-qv-modal .pf-product__sku,
#pf-qv-modal .pf-product__cats{font-size:10.5px!important}
#pf-qv-modal .pf-product__taxonomy strong,
#pf-qv-modal .pf-product__taxonomy a{font-size:10px!important}

/* ═══ MOBILE ≤767px ═══ */
@media(max-width:767px){
  #pf-qv-modal{align-items:flex-end}
  #pf-qv-modal .pf-qv-panel{width:100%;max-width:100%;height:auto!important;max-height:92vh!important;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1)}
  #pf-qv-modal.is-active .pf-qv-panel{transform:translateY(0)}
  #pf-qv-modal .pf-qv-panel::before{content:'';display:block;width:36px;height:4px;background:#ddd;border-radius:2px;margin:12px auto 4px;flex-shrink:0}
  #pf-qv-modal .pf-qv-inner{grid-template-columns:1fr;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column}
  #pf-qv-modal .pf-qv-gallery-col{border-radius:0;height:72vw;max-height:72vw;flex-shrink:0}
  #pf-qv-modal .pf-qv-slide img{object-fit:cover!important}
  #pf-qv-modal .pf-qv-nav{background:rgba(255,255,255,.2)!important;border-color:rgba(255,255,255,.3)!important}
  #pf-qv-modal .pf-qv-nav svg{stroke:#fff}
  #pf-qv-modal .pf-qv-dot{background:rgba(255,255,255,.4)}
  #pf-qv-modal .pf-qv-dot.is-active{background:#fff}
  #pf-qv-modal .pf-qv-close{background:rgba(0,0,0,.25)!important;border-color:transparent!important}
  #pf-qv-modal .pf-qv-close svg{stroke:#fff!important}
 /* Mobile: show fulllink as transparent overlay on image bottom (same as desktop) */
  #pf-qv-modal .pf-qv-fulllink{display:flex!important;position:absolute;bottom:0;left:0;right:0;z-index:10;padding:10px 0;background:rgba(0,0,0,.45);backdrop-filter:blur(2px);color:#fff;font-size:10px;font-weight:700;letter-spacing:1px;text-decoration:none;text-transform:uppercase;align-items:center;justify-content:center}
  #pf-qv-modal .pf-qv-fulllink-mobile{display:none!important}
  #pf-qv-modal .pf-qv-summary-col{padding:16px 18px 8px!important}
  #pf-qv-modal .pf-qv-atc-wrap .quantity{height:36px!important}
  #pf-qv-modal .pf-qv-atc-wrap .single_add_to_cart_button,
  #pf-qv-modal .pf-qv-atc-wrap button[type="submit"]{height:36px!important}
  #pf-qv-modal .pf-qv-atc-wrap .pf-btn-buynow,
  #pf-qv-modal .pf-qv-atc-wrap .pf-buy-now{height:36px!important}
  #pf-qv-modal .pf-qv-atc-wrap .pf-btn-wishlist{width:36px!important;height:36px!important}
}

/* ============================================================
 QV ASK A QUESTION — inline bottom sheet above the QV modal
 GPU-accelerated, no layout recalc, 60fps
 ============================================================ */
.pf-qv-ask-sheet {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  pointer-events: none;
  visibility: hidden;
}
.pf-qv-ask-sheet.is-open {
  pointer-events: auto;
  visibility: visible;
}
.pf-qv-ask-sheet__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.5);
  opacity: 0;
  transition: opacity 0.22s ease;
  will-change: opacity;
}
.pf-qv-ask-sheet.is-open .pf-qv-ask-sheet__overlay {
  opacity: 1;
}
.pf-qv-ask-sheet__box {
  position: relative;
  z-index: 1;
  background: #fff;
  width: 100%;
  max-width: 560px;
  max-height: 85vh;
  overflow-y: auto;
  border-radius: 24px 24px 0 0;
  padding: 8px 24px 32px;
  transform: translateY(100%);
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform;
  -webkit-overflow-scrolling: touch;
}
.pf-qv-ask-sheet.is-open .pf-qv-ask-sheet__box {
  transform: translateY(0);
}
.pf-qv-ask-sheet__handle {
  width: 36px; height: 4px;
  background: #e5e7eb;
  border-radius: 4px;
  margin: 0 auto 18px;
}
.pf-qv-ask-sheet__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #f3f4f6;
}
.pf-qv-ask-sheet__head h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  color: #111;
  margin: 0;
}
.pf-qv-ask-sheet__close {
  width: 32px; height: 32px;
  display: flex; align-items: center; justify-content: center;
  background: #f3f4f6;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  transition: background 0.18s;
  flex-shrink: 0;
}
.pf-qv-ask-sheet__close:hover { background: #e5e7eb; }
.pf-qv-ask-sheet__intro {
  font-size: 13px;
  color: #6b7280;
  margin-bottom: 16px;
  line-height: 1.5;
}

/* Desktop: center as a dialog instead of bottom sheet */
@media (min-width: 768px) {
  .pf-qv-ask-sheet { align-items: center; }
  .pf-qv-ask-sheet__box {
    border-radius: 16px;
    padding: 24px 28px 28px;
    transform: scale(0.94) translateY(-8px);
    opacity: 0;
    transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1),
                opacity 0.22s ease;
    will-change: transform, opacity;
  }
  .pf-qv-ask-sheet.is-open .pf-qv-ask-sheet__box {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
  .pf-qv-ask-sheet__handle { display: none; }
}

/* Ask form response states */
.pf-ask-response--success {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  color: #166534;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 13px;
  font-weight: 500;
}
.pf-ask-response--error {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
  border-radius: 8px;
  padding: 12px 14px;
  font-size: 13px;
  font-weight: 500;
}


/* ═══════════════════════════════════════════════════════════════════
   GROUPED PRODUCTS — QUICK VIEW OVERRIDE
   Premium compact layout for both desktop modal + mobile bottom sheet
   ═══════════════════════════════════════════════════════════════════ */

/* Container */
#pf-qv-modal .pf-grouped-products {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px;
}

/* Item — compact 3-col grid: [image] [info+badge] [price+qty] */
#pf-qv-modal .pf-grouped-item {
  display: grid;
  grid-template-columns: 56px 1fr auto;
  grid-template-rows: auto auto;
  gap: 0 12px;
  align-items: center;
  padding: 12px;
  border-radius: 10px;
  border: 1px solid #f0f0f0;
  background: #fafafa;
  transition: border-color 0.18s, box-shadow 0.18s;
}

#pf-qv-modal .pf-grouped-item:hover {
  border-color: #e0e0e0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  background: #fff;
}

#pf-qv-modal .pf-grouped-item.out-of-stock {
  opacity: 0.55;
}

/* Image — row 1-2 col 1 */
#pf-qv-modal .pf-grouped-image {
  grid-column: 1;
  grid-row: 1 / 3;
  width: 56px;
  height: 56px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  align-self: center;
  background: #efefef;
}

#pf-qv-modal .pf-grouped-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Info (name + badge) — row 1 col 2 */
#pf-qv-modal .pf-grouped-info {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

#pf-qv-modal .pf-grouped-title {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#pf-qv-modal .pf-grouped-title a {
  color: #111;
  text-decoration: none;
}

#pf-qv-modal .pf-stock-badge {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 20px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  width: fit-content;
  letter-spacing: 0.2px;
}

#pf-qv-modal .pf-stock-badge.in-stock {
  color: #059669;
  background: #ecfdf5;
}

#pf-qv-modal .pf-stock-badge.out-of-stock {
  color: #dc2626;
  background: #fef2f2;
}

/* Price — row 1 col 3 */
#pf-qv-modal .pf-grouped-price {
  grid-column: 3;
  grid-row: 1;
  font-size: 14px;
  font-weight: 700;
  color: #111;
  text-align: right;
  white-space: nowrap;
  align-self: center;
}

#pf-qv-modal .pf-grouped-price del {
  font-size: 11px;
  color: #aaa;
  font-weight: 400;
  display: block;
  text-align: right;
}

#pf-qv-modal .pf-grouped-price ins {
  text-decoration: none;
  color: #dc2626;
}

/* Qty — row 2 col 2 */
#pf-qv-modal .pf-grouped-quantity {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
  margin-top: 6px;
}

#pf-qv-modal .pf-quantity-input {
  display: inline-flex;
  align-items: center;
  border: 1px solid #e8e8e8;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
  height: 30px;
  width: auto;
}

#pf-qv-modal .pf-qty-btn {
  width: 28px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  color: #555;
  transition: background 0.15s;
  flex-shrink: 0;
}

#pf-qv-modal .pf-qty-btn:hover {
  background: #f5f5f5;
}

#pf-qv-modal .pf-qty-btn svg {
  width: 12px;
  height: 12px;
}

#pf-qv-modal .pf-qty-input {
  width: 32px;
  height: 30px;
  border: none;
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
  text-align: center;
  font-size: 12px;
  font-weight: 600;
  color: #111;
  background: transparent;
  -moz-appearance: textfield;
  flex-shrink: 0;
}

#pf-qv-modal .pf-qty-input:focus {
  outline: none;
}

#pf-qv-modal .pf-qty-input::-webkit-inner-spin-button,
#pf-qv-modal .pf-qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

/* Unavailable dash */
#pf-qv-modal .pf-grouped-quantity .unavailable {
  font-size: 16px;
  color: #ccc;
  display: block;
  margin-top: 6px;
}

/* Wishlist — row 2 col 3 */
#pf-qv-modal .pf-grouped-wishlist {
  grid-column: 3;
  grid-row: 2;
  align-self: center;
  justify-self: end;
  margin-top: 6px;
}

#pf-qv-modal .pf-grouped-wishlist .pf-wishlist-btn {
  width: 30px !important;
  height: 30px !important;
  border-radius: 6px !important;
  border: 1px solid #e8e8e8;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #888;
  transition: color 0.15s, border-color 0.15s, background 0.15s;
}

#pf-qv-modal .pf-grouped-wishlist .pf-wishlist-btn:hover {
  color: #dc2626;
  border-color: #fecaca;
  background: #fef2f2;
}

#pf-qv-modal .pf-grouped-wishlist .pf-wishlist-btn svg {
  width: 14px !important;
  height: 14px !important;
}

/* Cart action buttons */
#pf-qv-modal .pf-cart-actions--grouped {
  display: flex !important;
  flex-direction: row !important;
  gap: 8px;
  margin-top: 12px;
}

#pf-qv-modal .pf-cart-actions--grouped .pf-btn-atc {
  flex: 1 !important;
  height: 40px !important;
  min-height: 40px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.7px !important;
  text-transform: uppercase !important;
  border-radius: 8px !important;
  background: var(--pf-atc-bg, #0a0a0a) !important;
  color: #fff !important;
  border: none !important;
  cursor: pointer !important;
  transition: background 0.18s !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 12px !important;
}

#pf-qv-modal .pf-cart-actions--grouped .pf-btn-atc:hover {
  background: #333 !important;
}

#pf-qv-modal .pf-cart-actions--grouped .pf-btn-buynow {
  flex: 1 !important;
  height: 40px !important;
  min-height: 40px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

/* "This is a grouped product" label */
#pf-qv-modal .grouped_form > p:first-child,
#pf-qv-modal .pf-grouped-form > p:first-child {
  font-size: 11px;
  color: #999;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 10px;
  margin-top: 0;
}

/* ═══ MOBILE ≤767px — extra compact for bottom sheet ═══ */
@media (max-width: 767px) {

  #pf-qv-modal .pf-grouped-products {
    gap: 6px;
    margin-bottom: 12px;
  }

  #pf-qv-modal .pf-grouped-item {
    grid-template-columns: 48px 1fr auto;
    gap: 0 10px;
    padding: 10px;
    border-radius: 8px;
  }

  #pf-qv-modal .pf-grouped-image {
    width: 48px;
    height: 48px;
    border-radius: 6px;
  }

  #pf-qv-modal .pf-grouped-title {
    font-size: 12px;
  }

  #pf-qv-modal .pf-grouped-price {
    font-size: 13px;
  }

  #pf-qv-modal .pf-grouped-price del {
    font-size: 10px;
  }

  #pf-qv-modal .pf-quantity-input {
    height: 28px;
  }

  #pf-qv-modal .pf-qty-btn {
    width: 26px;
    height: 28px;
  }

  #pf-qv-modal .pf-qty-input {
    width: 28px;
    height: 28px;
    font-size: 11px;
  }

  #pf-qv-modal .pf-grouped-wishlist .pf-wishlist-btn {
    width: 28px !important;
    height: 28px !important;
  }

  #pf-qv-modal .pf-grouped-wishlist .pf-wishlist-btn svg {
    width: 13px !important;
    height: 13px !important;
  }

  #pf-qv-modal .pf-cart-actions--grouped {
    flex-direction: row;
    gap: 8px;
  }

  #pf-qv-modal .pf-cart-actions--grouped .pf-btn-atc,
  #pf-qv-modal .pf-cart-actions--grouped .pf-btn-buynow {
    flex: 1;
    width: auto !important;
    min-width: 0;
    height: 44px !important;
    font-size: 12px !important;
    padding: 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    font-weight: 800 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    line-height: 1 !important;
    white-space: nowrap;
  }
}

/* ═══ Very tiny phones ≤380px ═══ */
@media (max-width: 380px) {

  #pf-qv-modal .pf-grouped-item {
    grid-template-columns: 44px 1fr auto;
    padding: 8px;
  }

  #pf-qv-modal .pf-grouped-image {
    width: 44px;
    height: 44px;
  }

  #pf-qv-modal .pf-grouped-title {
    font-size: 11.5px;
  }

  #pf-qv-modal .pf-grouped-price {
    font-size: 12px;
  }
}