/* Gift wrapping option on product pages. */
.single-product form.cart .mb-gift-wrap { order: 3; flex: 0 0 100%; clear: both; width: 100%; margin: 2px 0 0; }
.single-product form.cart .mb-gift-wrap > .mb-gift-wrap__choice { display: flex; align-items: center; gap: 9px; box-sizing: border-box; min-height: 44px; margin: 0; padding: 9px 10px; border: 1px solid #e0d6cf; border-radius: 8px; cursor: pointer; color: #242424; background: #fff; font-weight: 400; transition: background-color 150ms ease, border-color 150ms ease; }
.single-product form.cart .mb-gift-wrap > .mb-gift-wrap__choice:has(input:checked) { border-color: #95634b; background: #faf4ee; }
.single-product form.cart .mb-gift-wrap > .mb-gift-wrap__choice:has(input:focus-visible) { outline: 2px solid #95634b; outline-offset: 3px; }
.mb-gift-wrap__choice input[type="checkbox"] { appearance: auto; position: static; opacity: 1; flex: 0 0 18px; width: 18px; height: 18px; margin: 0; accent-color: #95634b; cursor: pointer; }
.mb-gift-wrap__icon { width: 19px; height: 19px; flex: 0 0 19px; color: #95634b; }
.mb-gift-wrap__copy { display: grid; gap: 2px; flex: 1; min-width: 0; }
.mb-gift-wrap__copy strong { font-size: 13px; line-height: 1.35; font-weight: 600; }
.mb-gift-wrap__copy > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.mb-gift-wrap__price { display: flex; align-items: baseline; flex-wrap: wrap; justify-content: flex-end; gap: 3px; flex: 0 0 auto; max-width: 102px; text-align: right; font-size: 13px; font-weight: 600; white-space: nowrap; }
.mb-gift-wrap__price small { font-size: 11px; font-weight: 400; color: #645346; }
.mb-gift-wrap__total { min-height: 17px; margin: 6px 2px 0; font-size: 12px; line-height: 1.4; color: #645346; }

/* Wrapping callout inside cart, checkout and mini-cart lines. */
dl.variation:has(.mb-gift-wrap-line) { margin: 8px 0 0; }
dl.variation:has(.mb-gift-wrap-line) dt { display: none; }
dl.variation:has(.mb-gift-wrap-line) dd, dl.variation:has(.mb-gift-wrap-line) dd p { margin: 0; padding: 0; }
.mb-gift-wrap-line { display: grid; grid-template-columns: 18px minmax(0,1fr) auto; align-items: center; column-gap: 8px; row-gap: 2px; box-sizing: border-box; width: 100%; padding: 8px 10px; border: 1px solid #e0d6cf; border-radius: 8px; background: #faf4ee; color: #242424; font-size: 13px; line-height: 1.35; text-align: left; }
.mb-gift-wrap-line__title { grid-column: 2 / 4; font-weight: 600; }
.mb-gift-wrap-line__detail { grid-column: 2; font-size: 12px; color: #645346; }
.mb-gift-wrap-line__price { grid-column: 3; font-weight: 600; white-space: nowrap; }
.woocommerce-checkout .cart_item .product-variations:has(.mb-gift-wrap-line) { display: block; width: 100%; margin-top: 8px; }
.mb-gift-wrap-line::before { content: ""; grid-row: 1; grid-column: 1; width: 18px; height: 18px; background: #95634b; -webkit-mask: var(--mb-gift-icon) center / contain no-repeat; mask: var(--mb-gift-icon) center / contain no-repeat; --mb-gift-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Cpath d='M3 8h18v4H3zM5 12v9h14v-9M12 8v13M12 8H8a3 3 0 1 1 3-3l1 3Zm0 0h4a3 3 0 1 0-3-3l-1 3Z'/%3E%3C/svg%3E"); }
