
.cbf-pickup-panel { border: 1px solid #e5e5e5; padding: 14px; margin: 14px 0; border-radius: 8px; background: #fff; }
.cbf-heading { margin: 0 0 10px; font-size: 1.1em; }
.cbf-heading--secondary { margin-top: 18px; }
.cbf-subheading { margin: -6px 0 12px; opacity: .9; }
.cbf-note { margin-top: 10px; font-size: 0.95em; opacity: .85; }
.cbf-flex-toggle { display:flex; gap:10px; align-items:center; margin-bottom: 12px; flex-wrap:wrap; }
.cbf-label { font-weight: 600; }
.cbf-select { min-width: 220px; }
.cbf-field { flex: 1; padding: 10px; }
.cbf-pickup-inline-slot { display: flex; margin-left: 34px; margin-top: 10px; gap: 10px }

@media( max-width: 768px ) {
	.cbf-pickup-inline-slot { flex-direction: column; }
}

/* Delivery toggle (Ship / Pickup) */
.cbf-delivery-toggle { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 10px 0 6px; }
.cbf-delivery-option { position: relative; display:flex; align-items:center; justify-content:center; gap:10px; padding: 14px 12px; border: 1px solid #dcdcdc; border-radius: 10px; cursor:pointer; background:#fff; user-select:none; }
.cbf-delivery-option input { position:absolute; opacity:0; pointer-events:none; }
.cbf-delivery-option.is-selected { border-color: #1e1e1e; }
.cbf-delivery-option.is-disabled { opacity: .55; cursor: not-allowed; }
.cbf-delivery-option__title { font-weight: 700; }

/* Pickup location cards */
.cbf-location-option { border: 1px solid #dcdcdc; border-radius: 10px; margin: 10px 0; background:#fff; }
.cbf-location-option__layout { display:grid; grid-template-columns: 32px 1fr; gap: 10px; padding: 12px; cursor:pointer; }
.cbf-location-option__radio { display:flex; align-items:flex-start; justify-content:center; padding-top: 2px; }
.cbf-location-option__top { display:flex; justify-content:space-between; gap: 12px; align-items:flex-start; }
.cbf-location-option__name { font-weight:700; }
.cbf-location-option__price { font-weight:700; }
.cbf-location-option__address { opacity:.9; margin-top: 6px; font-size: .75em }
.cbf-location-option__notes { margin-top: 10px; font-style: italic; }

/* Inline date/time selector inside card */
.cbf-location-option .cbf-pickup-inline-slot { margin: 10px 0 0 42px; }

tr.cbf-group-heading td { background:#f7f7f7; font-weight: 700; padding: 10px; }

/* Cart page: show only pre-tax, pre-shipping subtotal (hide shipping/tax/order-total rows). */
body.woocommerce-cart .cart_totals tr.shipping,
body.woocommerce-cart .cart_totals tr.tax-rate,
body.woocommerce-cart .cart_totals tr.tax-total,
body.woocommerce-cart .cart_totals tr.order-total,
body.woocommerce-cart .woocommerce-shipping-totals {
	display: none;
}
