/* lp-cart.css — CBV (FE 25/10/2026, lệnh Darius "sửa combo + giỏ").
   (1) Khối "Chọn vị cho bé" trên trang SP combo (product-detail.js #detail-combo).
   (2) Dòng phụ "Vị …" dưới tên combo trong giỏ + tóm tắt thanh toán (app.js).
   (3) Giỏ tại chỗ (lp-cart.js): dòng "Đang mở giỏ hàng…", nút giỏ đang nạp; .checkout-gift CHÉP từ lp-home.css (giữ khớp) cho trang không nạp lp-home.css
       (lp-home.css có .lp-dock/.lp-main… nên không nạp cả file vào trang khác). */

/* ---------- (1) Chọn vị combo: vỏ kem + lõi trắng, hàng chọn cao ≥48px ---------- */
.lp-cbv{margin:20px 0 0;padding:6px;border:0;border-radius:20px;background:var(--lp-cream,#f8f1e6);box-shadow:inset 0 0 0 1px rgba(62,31,20,.06);min-width:0}
.lp-cbv legend{float:left;width:100%;padding:10px 12px 12px;font:700 17px/1.3 var(--lp-f-body,inherit);color:var(--lp-ink,#24140d)}
.lp-cbv legend+*{clear:both}
.lp-cbv-k{display:block;width:max-content;margin:0 0 6px;padding:3px 9px;border-radius:999px;background:#fff;color:var(--lp-orange-d,#8a3b1b);font:700 11px/1.3 var(--lp-f-body,inherit);letter-spacing:.08em;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(180,83,42,.18)}
.lp-cbv-in{display:grid;gap:2px;padding:4px;border-radius:15px;background:#fff;box-shadow:0 1px 2px rgba(42,20,13,.04),inset 0 1px 0 rgba(255,255,255,.6)}
.lp-cbv-row{display:grid;gap:6px;padding:10px 10px 12px}
.lp-cbv-row+.lp-cbv-row{border-top:1px solid rgba(62,31,20,.07)}
.lp-cbv-row label{display:flex;align-items:baseline;gap:8px;min-width:0;cursor:pointer}
.lp-cbv-row label b{flex:none;font:700 15px/1.3 var(--lp-f-body,inherit);color:var(--lp-ink,#24140d)}
.lp-cbv-row label small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 13px/1.3 var(--lp-f-body,inherit);color:var(--lp-muted,#76604f)}
.lp-cbv-sel{position:relative}
.lp-cbv-sel select{display:block;width:100%;min-height:48px;margin:0;padding:10px 40px 10px 14px;border:0;border-radius:12px;background:var(--lp-bg,#fffdf9);color:var(--lp-ink,#24140d);font:600 15px/1.3 var(--lp-f-body,inherit);box-shadow:inset 0 0 0 1px var(--lp-line-2,#dccbb2);-webkit-appearance:none;appearance:none;cursor:pointer;transition:box-shadow .3s cubic-bezier(.32,.72,0,1),background-color .3s cubic-bezier(.32,.72,0,1)}
.lp-cbv-sel select:hover{box-shadow:inset 0 0 0 1.5px var(--lp-orange,#b4532a)}
.lp-cbv-sel select:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--lp-orange,#b4532a),0 0 0 4px rgba(180,83,42,.14)}
.lp-cbv-sel select.is-picked{background:var(--lp-orange-l,#fff4ec);box-shadow:inset 0 0 0 1.5px var(--lp-orange,#b4532a);color:var(--lp-orange-d,#8a3b1b)}
.lp-cbv-sel svg{position:absolute;right:14px;top:50%;width:18px;height:18px;margin-top:-9px;fill:none;stroke:var(--lp-ink-2,#4b3428);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.lp-cbv-hint{margin:0;padding:10px 12px 8px;font-size:13.5px;line-height:1.5;color:var(--lp-ink-2,#4b3428)}
.lp-cbv-hint b{font-weight:600;color:var(--lp-ink,#24140d)}
@media (min-width:768px){
  .lp-cbv-row{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:14px}
  .lp-cbv-row label{flex-direction:column;align-items:flex-start;gap:2px}
  .lp-cbv-row label small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
}

/* ---------- (2) Dòng phụ "Vị" dưới tên combo ---------- */
.lp-cbv-line{display:flex;gap:8px;align-items:flex-start;margin:4px 0 2px;font-size:12.5px;line-height:1.45;color:var(--lp-ink-2,#4b3428);font-weight:500}
.lp-cbv-line>span:first-child{flex:none;padding:1px 6px;border-radius:6px;background:var(--lp-orange-l,#fff4ec);color:var(--lp-orange-d,#8a3b1b);font-size:11px;font-weight:700;letter-spacing:.02em;line-height:1.5}
.cart-item p.lp-cbv-line{margin:4px 0;color:var(--lp-ink-2,#4b3428);font-size:12.5px;font-weight:500}
.lp-promo-line small.lp-cbv-line{display:flex;margin:3px 0 0;font-size:12px}

/* ---------- (3) Giỏ tại chỗ ---------- */
.lp-cart-wait{display:flex;align-items:center;justify-content:center;gap:6px;margin:48px 12px;text-align:center;color:var(--lp-muted,#76604f);font-size:14px}
.lp-cart-wait a{color:var(--lp-orange-d,#8a3b1b);font-weight:600}
.is-cart-loading{opacity:.72;cursor:progress}
.checkout-gift{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;margin-top:10px;padding:10px 12px;border-radius:14px;background:var(--lp-ok-l,#e5f3e8);box-shadow:inset 0 0 0 1px rgba(47,122,69,.22);animation:lp-cart-gift-in .5s cubic-bezier(.32,.72,0,1) both}
@keyframes lp-cart-gift-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.checkout-gift{animation:none}}
.checkout-gift[hidden]{display:none}
.checkout-gift img{width:48px;height:48px;border-radius:10px;background:#fff;object-fit:contain;padding:2px}
.checkout-gift b{display:block;font:700 15px/1.3 var(--lp-f-body,inherit);color:var(--lp-ok,#2f7a45)}
.checkout-gift small{display:block;margin-top:2px;font-size:12.5px;line-height:1.4;color:var(--lp-ink-2,#4b3428)}
.checkout-gift.is-done{margin:10px 0 4px}
.checkout-gift.is-hint{background:var(--lp-yellow-l,#fff3d6);box-shadow:inset 0 0 0 1px rgba(239,180,68,.5)}
.checkout-gift.is-hint b{color:var(--lp-orange-d,#8a3b1b)}
