/* Z4EG Delivery Areas — branch pickup (checkout, cart, thank-you page, My Account). RTL-safe: logical properties only. */

/* "How would you like to get your order?" */
.z4eg-da-fulfil {
	margin: 0 0 1.5em;
}

.z4eg-da-fulfil__title {
	margin: 0 0 0.6em;
	font-size: 1.1em;
}

.z4eg-da-fulfil__options {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

@media (max-width: 549px) {
	.z4eg-da-fulfil__options {
		grid-template-columns: 1fr;
	}
}

.z4eg-da-fulfil__opt {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	padding: 12px 14px;
	border: 2px solid rgba(0, 0, 0, 0.12);
	border-radius: 8px;
	background: #fff;
	line-height: 1.4;
	font-weight: normal;
	cursor: pointer;
}

.z4eg-da-fulfil__opt.is-selected,
.z4eg-da-fulfil__opt:has(input:checked) {
	border-color: #2e7d32;
	background: rgba(46, 125, 50, 0.06);
}

.z4eg-da-fulfil__opt input[type="radio"],
.z4eg-da-bcard input[type="radio"] {
	flex: none;
	margin: 4px 0 0;
}

.z4eg-da-fulfil__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.z4eg-da-fulfil__text small {
	color: #555;
	font-size: 0.86em;
}

/* Pickup panel: branch + pickup time. */
.z4eg-da-pickup-panel {
	margin-top: 12px;
	padding: 14px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	background: #fafafa;
}

body:not(.z4eg-da-pickup-mode) .z4eg-da-pickup-panel {
	display: none;
}

.z4eg-da-pickup-panel__label {
	display: block;
	margin: 0 0 6px;
	font-weight: 700;
}

.z4eg-da-branches {
	margin: 0 0 10px;
	padding: 0;
	border: 0;
}

.z4eg-da-bcard {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 8px;
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 6px;
	background: #fff;
	font-weight: normal;
	cursor: pointer;
}

.z4eg-da-bcard.is-single {
	display: block;
	cursor: default;
}

.z4eg-da-bcard.is-selected,
.z4eg-da-bcard:has(input:checked) {
	border-color: #2e7d32;
}

.z4eg-da-bcard__body,
.z4eg-da-pickup-card__branch {
	display: block;
	line-height: 1.5;
}

.z4eg-da-bcard__body .z4eg-da-br,
.z4eg-da-pickup-card__branch .z4eg-da-br {
	display: none;
}

.z4eg-da-bcard__name,
.z4eg-da-bcard__line,
.z4eg-da-bcard__map {
	display: block;
}

.z4eg-da-bcard__line,
.z4eg-da-bcard__map {
	font-size: 0.92em;
}

.z4eg-da-bcard__line {
	color: #444;
}

/* Phone numbers read left to right on the Arabic store. */
.z4eg-da-ltr {
	display: inline-block;
	direction: ltr;
	unicode-bidi: embed;
}

.z4eg-da-slot-row {
	margin-bottom: 6px;
}

select.z4eg-da-slot-select {
	width: 100%;
	max-width: 100%;
}

.z4eg-da-pickup-hint {
	margin: 6px 0 0;
	color: #555;
	font-size: 0.88em;
	line-height: 1.5;
}

.z4eg-da-no-slots {
	display: block;
	color: #b42318;
	font-weight: 600;
}

/* Pickup selected: no delivery address. */
body.z4eg-da-pickup-mode #billing_company_field,
body.z4eg-da-pickup-mode #billing_address_1_field,
body.z4eg-da-pickup-mode #billing_address_2_field,
body.z4eg-da-pickup-mode #billing_city_field,
body.z4eg-da-pickup-mode #billing_state_field,
body.z4eg-da-pickup-mode #billing_postcode_field,
body.z4eg-da-pickup-mode #billing_building_field,
body.z4eg-da-pickup-mode #billing_floor_field,
body.z4eg-da-pickup-mode #billing_apartment_field,
body.z4eg-da-pickup-mode #billing_landmark_field,
body.z4eg-da-pickup-mode .woocommerce-shipping-fields,
body.z4eg-da-pickup-mode .z4eg-da-areas-note {
	display: none !important;
}

/* Thank-you page + My Account → order. */
.z4eg-da-pickup-card {
	margin: 0 0 1.5em;
	padding: 16px 18px;
	border: 2px solid #2e7d32;
	border-radius: 8px;
	background: rgba(46, 125, 50, 0.05);
}

.z4eg-da-pickup-card__title {
	margin: 0 0 8px;
	font-size: 1.15em;
}

.z4eg-da-pickup-card__time {
	margin: 0 0 8px;
	font-size: 1.05em;
}

.z4eg-da-pickup-card p {
	margin: 8px 0 0;
}

.z4eg-da-pickup-card__cash {
	font-weight: 700;
}

.z4eg-da-pickup-total {
	display: inline-block;
	line-height: 1.5;
}

/* Hints under a shipping rate take their own line (Flatsome lays the rate out as a flex row). */
.woocommerce-shipping-methods li {
	flex-wrap: wrap;
}

.woocommerce-shipping-methods li .z4eg-da-free-hint {
	display: block;
	flex: 1 0 100%;
	width: 100%;
}

.z4eg-da-free-hint--muted {
	color: #555;
}

/* Cart page: while pickup is the chosen rate there is no delivery destination to show (the address calculator stays: it is how a customer gets the home-delivery fee). */
.woocommerce-shipping-totals:has(input.shipping_method[value^="z4eg_branch_pickup"]:checked) .woocommerce-shipping-destination,
.woocommerce-shipping-totals:has(input.shipping_method[value^="z4eg_branch_pickup"][type="hidden"]) .woocommerce-shipping-destination {
	display: none;
}

/* 1.3.0 — availability: dates under the rates, branch status, "when" choice, the "do not come yet" notice. */
.z4eg-da-free-hint.z4eg-da-eta-hint {
	color: #1f4e79;
	font-weight: 600;
}

.z4eg-da-free-hint.z4eg-da-eta-hint.is-now {
	color: #2e7d32;
}

.z4eg-da-bcard__wrap {
	display: block;
	flex: 1 1 auto;
	min-width: 0;
}

.z4eg-da-bcard__status {
	display: inline-block;
	margin-top: 6px;
	padding: 2px 8px;
	border-radius: 999px;
	background: #fff4e5;
	color: #8a4b00;
	font-size: 0.86em;
	font-weight: 700;
	line-height: 1.5;
}

.z4eg-da-bcard__status.is-now {
	background: #e8f5e9;
	color: #1b5e20;
}

.z4eg-da-when {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 12px 0 10px;
	padding: 0;
	border: 0;
}

.z4eg-da-when legend {
	grid-column: 1 / -1;
	float: none;
	width: 100%;
	margin: 0 0 6px;
	padding: 0;
}

@media (max-width: 549px) {
	.z4eg-da-when {
		grid-template-columns: 1fr;
	}
}

.z4eg-da-slot-row[hidden],
.z4eg-da-pickup-hint[hidden] {
	display: none !important;
}

.z4eg-da-pickup-notice,
.z4eg-da-pickup-card__notice {
	margin: 10px 0 0;
	padding: 10px 12px;
	border-inline-start: 4px solid #d97706;
	border-radius: 4px;
	background: #fff8e1;
	color: #4a3200;
	font-size: 0.92em;
	line-height: 1.55;
}

.z4eg-da-pickup-card.is-ready {
	border-color: #1b5e20;
	background: rgba(27, 94, 32, 0.08);
}

.z4eg-da-pickup-card__ready {
	color: #1b5e20;
	font-size: 1.05em;
}

/* 1.4.0 — choosing a pickup time is off: "we message you when it is ready". */
.z4eg-da-wait-only {
	margin: 12px 0 0;
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 6px;
	background: #fff;
}

.z4eg-da-wait-only .z4eg-da-pickup-panel__label {
	margin: 0;
}

.z4eg-da-wait-only .z4eg-da-pickup-hint {
	margin-top: 4px;
}

.z4eg-da-wait-only__sub {
	color: #1f4e79;
	font-weight: 600;
}
