.hamperboxes-multi-delivery {
	margin: 30px 0;
	padding-top: 24px;
	border-top: 1px solid var(--theme-border-color, #e6e8eb);
	color: var(--theme-text-color, #333);
}
.hamperboxes-multi-delivery *, .hamperboxes-multi-delivery *::before, .hamperboxes-multi-delivery *::after { box-sizing: border-box; letter-spacing: 0; }
.hamperboxes-multi-delivery [hidden] { display: none !important; }
.hamperboxes-multi-delivery-panel.is-visible { display: block !important; }
.woocommerce-cart .woocommerce-cart-form button[name="update_cart"] { display: none !important; }
.hamperboxes-multi-delivery h3 { margin: 0 0 12px; }
.hamperboxes-multi-delivery-toggle { display: flex; align-items: center; gap: 10px; font-weight: 600; cursor: pointer; }
.hamperboxes-multi-delivery-toggle input { flex: 0 0 auto; margin: 0; }
.hamperboxes-multi-delivery-note { margin: 10px 0 18px; font-size: 13px; line-height: 1.6; }
.hamperboxes-delivery-address-list { display: grid; gap: 10px; }
.hamperboxes-delivery-address { min-width: 0; margin: 0; border: 1px solid var(--theme-border-color, #e6e8eb); border-radius: 4px; background: var(--theme-palette-color-8, #fff); }
.hamperboxes-delivery-address summary { padding: 14px 16px; cursor: pointer; font-weight: 600; font-size: 14px; overflow-wrap: anywhere; }
.hamperboxes-delivery-address summary small { display: block; padding-top: 4px; font-weight: 400; font-size: 12px; line-height: 1.6; }
.hamperboxes-delivery-address-body { padding: 4px 16px 16px; }
.hamperboxes-delivery-primary-note { margin: 0 0 14px; font-size: 13px; }
.hamperboxes-delivery-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.hamperboxes-delivery-fields label { display: grid; gap: 5px; margin: 0; font-size: 13px; font-weight: 500; }
.hb-delivery-field-company, .hb-delivery-field-country, .hb-delivery-field-address_1, .hb-delivery-field-address_2, .hb-delivery-field-email { grid-column: 1 / -1; }
.hamperboxes-delivery-fields input, .hamperboxes-delivery-fields select { width: 100%; min-width: 0; font: inherit; }
.hamperboxes-delivery-items { display: grid; gap: 10px; margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--theme-border-color, #e6e8eb); }
.hamperboxes-delivery-items h4 { margin: 0; font-size: 14px; }
.hamperboxes-delivery-item { display: grid; grid-template-columns: minmax(0, 1fr) 76px; align-items: center; gap: 12px; margin: 0; }
.hamperboxes-delivery-item span { min-width: 0; font-size: 13px; overflow-wrap: anywhere; }
.hamperboxes-delivery-item small { display: block; margin-top: 3px; font-size: 11px; }
.hamperboxes-delivery-item input { width: 76px; min-width: 0; padding: 8px; }
.hamperboxes-delivery-cost { margin: 14px 0 0; font-size: 13px; font-weight: 600; }
.hamperboxes-delivery-actions { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.hamperboxes-delivery-actions label { display: grid; gap: 4px; font-size: 12px; margin: 0; }
.hamperboxes-delivery-actions input { width: 100px; }
.hamperboxes-delivery-actions .button { font-size: 13px; white-space: normal; height: auto; min-height: 40px; padding: 10px 14px; }
.hamperboxes-delivery-save { margin-top: 16px; }
.hamperboxes-multi-delivery .hamperboxes-delivery-remove { display: block; margin: 12px 0 0 auto; padding: 4px 0; min-height: 0; border: 0; background: transparent; color: #9e3030; font: inherit; font-size: 12px; text-decoration: underline; cursor: pointer; }
.hamperboxes-delivery-status { font-size: 13px; margin: 14px 0 0; overflow-wrap: anywhere; }
.hamperboxes-delivery-status.is-error { color: #9e3030; }

/* Keep the cart version compact inside Blocksy's totals table. */
.cart_totals .hamperboxes-multi-delivery-row > td { padding: 0 !important; }
.hamperboxes-multi-delivery-cart { margin: 0; padding: 22px 0 20px; border-top: 1px solid var(--theme-border-color, #e6e8eb); border-bottom: 1px solid var(--theme-border-color, #e6e8eb); text-align: start; }
.hamperboxes-multi-delivery-cart h3 { margin: 0 0 14px; font-size: 20px !important; line-height: 1.25; font-weight: 600; text-align: start !important; }
.hamperboxes-multi-delivery-cart .hamperboxes-multi-delivery-toggle { gap: 8px; font-size: 13px; line-height: 1.45; }
.hamperboxes-multi-delivery-cart .hamperboxes-multi-delivery-note { margin: 8px 0 0; color: var(--theme-text-color, #526174); font-size: 12px; line-height: 1.55; }
.hamperboxes-multi-delivery-cart .hamperboxes-delivery-save { display: block; width: 100%; min-height: 42px; margin-top: 18px; padding: 10px 14px; border-radius: 4px; font-size: 13px; line-height: 1.3; }
.hamperboxes-multi-delivery-cart .hamperboxes-delivery-actions { align-items: stretch; }
.hamperboxes-multi-delivery-cart .hamperboxes-delivery-actions .button { width: 100%; }
@media (max-width: 600px) {
	.hamperboxes-delivery-fields { grid-template-columns: 1fr; }
	.hamperboxes-delivery-fields label { grid-column: 1; }
}

/* Keep cart product details readable when Blocksy switches to its mobile table layout. */
@media (max-width: 689.98px) {
	.woocommerce-cart .woocommerce-cart-form__contents {
		display: block;
		width: 100%;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > thead {
		display: none;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody {
		display: block;
		width: 100%;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item {
		display: grid;
		grid-template-columns: 88px minmax(0, 1fr);
		align-items: start;
		column-gap: 14px;
		width: 100%;
		padding: 16px 0;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-thumbnail {
		display: block;
		grid-column: 1;
		grid-row: 1;
		width: auto !important;
		min-width: 0;
		padding: 0 !important;
		text-align: start;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-thumbnail img,
	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-thumbnail .ct-media-container {
		display: block;
		width: 88px !important;
		max-width: 88px !important;
		height: auto;
		max-height: 110px;
		margin: 0;
		object-fit: contain;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name {
		display: block;
		grid-column: 2;
		grid-row: 1;
		width: auto !important;
		min-width: 0;
		padding: 0 !important;
		text-align: start !important;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name::before {
		display: none !important;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name dl.variation {
		display: block;
		width: 100%;
		margin-top: 10px;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name dl.variation > dt,
	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name dl.variation > dd {
		display: block;
		width: 100%;
		margin: 0;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name dl.variation > dt {
		margin-top: 12px;
		margin-bottom: 5px;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr.cart_item > td.product-name dl.variation > dd {
		text-align: start;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr:not(.cart_item) {
		display: block;
		width: 100%;
	}

	.woocommerce-cart .woocommerce-cart-form__contents > tbody > tr:not(.cart_item) > td {
		display: block;
		width: 100%;
		padding-inline: 0;
	}
}
