/* card */
.mhc-quick-buy{ background:#fff; color:#222; padding:18px; border-radius:10px; box-shadow:0 8px 24px rgba(0,0,0,0.06); max-width:1100px; margin:12px auto; border:1px solid rgba(0,0,0,0.04);}

/* layout */
.qc-row{ display:flex; gap:16px; align-items:flex-start; }
.qc-top-row .qc-col{ flex:1; min-width:0; }
.qc-col-1{ flex:1.6; }
.qc-col-2, .qc-col-3{ flex:1; }

/* product selector */
.qc-product-select{ position:relative; }
.qc-product-selected{ padding:8px; background:#fff; border:1px solid rgba(0,0,0,0.06); border-radius:8px; cursor:pointer; display:flex; align-items:center; gap:10px; }
.qc-product-selected img{ width:36px; height:36px; object-fit:cover; border-radius:6px; }
.qc-product-list{ display:none; position:absolute; left:0; right:0; top:110%; background:#fff; z-index:50; max-height:320px; overflow:auto; border:1px solid rgba(0,0,0,0.06); border-radius:8px; padding:8px; box-shadow:0 10px 30px rgba(0,0,0,0.06); }
.qc-product-item{ display:flex; gap:10px; padding:8px; align-items:center; border-radius:6px; cursor:pointer; }
.qc-prod-left img{ width:56px; height:56px; object-fit:cover; border-radius:8px; }
.qc-prod-right p{ margin:0; font-size:13px; color:#666; }

/* preview */
.qc-product-preview{ display:flex; gap:12px; margin-top:12px; align-items:center; }
#qc-preview-image{ width:120px; height:120px; object-fit:cover; border-radius:8px; }
.qc-preview-text h4{ margin:0 0 6px 0; font-size:16px; color:#222; }
.qc-preview-text p{ margin:0; font-size:13px; color:#555; }
.qc-preview-text a{ color:#6a1b9a; text-decoration:none; }

/* selects */
.qc-select{ width:100%; padding:10px; border-radius:6px; background:#fff; color:#111; border:1px solid rgba(0,0,0,0.08); }

/* bottom area */
.qc-bottom-row{ margin-top:16px; display:flex; gap:16px; align-items:center; }
.qc-price-box{ background:#fff; padding:12px 16px; border-radius:8px; flex:1; border:1px solid rgba(0,0,0,0.04); }
.qc-price{ font-size:22px; font-weight:700; margin-top:8px; color:#111; }
.qc-add-box{ display:flex; flex-direction:column; gap:8px; }
.qc-btn{ padding:10px 16px; border-radius:8px; background:transparent; color:#fff; border:1px solid rgba(0,0,0,0.08); cursor:pointer; }
.qc-btn-primary{ background:#6a1b9a; border:none; color:#fff; }

/* feedback */
.qc-feedback{ margin-top:8px; font-size:13px; color:#333; }
.qc-error{ color:#d32f2f; }

/* modal */
.qc-modal{ position:fixed; left:0; right:0; top:0; bottom:0; background:rgba(0,0,0,0.5); z-index:9999; display:flex; align-items:center; justify-content:center; padding:20px; }
.qc-modal-content{ background:#fff; width:96%; max-width:760px; border-radius:10px; padding:18px; position:relative; color:#222; box-shadow:0 12px 50px rgba(0,0,0,0.16); }
.qc-modal-close{ position:absolute; top:10px; right:12px; border:0; background:transparent; font-size:26px; cursor:pointer; }
.qc-modal-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.qc-modal-body{ max-height:70vh; overflow:auto; padding:8px; border-radius:6px; }
/* footer */
.qc-modal-footer{ margin-top:12px; text-align:right; padding-top:8px; border-top:1px solid rgba(0,0,0,0.04); background:transparent; }

/* lock scroll while modal open */
body.qc-popup-open { overflow: hidden; height: 100vh; }

/* responsive */
@media (max-width:800px){
    .qc-row{ flex-direction:column; }
    .qc-top-row .qc-col{ width:100%; }
    .qc-bottom-row{ flex-direction:column; align-items:stretch; }
    .qc-product-list{ max-height:200px; }
}
