/* EPL Tick Box Tidy – Rall IT Solutions */

/* 1. Every WooCommerce tick box / radio: fixed neat size (theme was stretching them to 100% width) */
.woocommerce form input[type="checkbox"]:not([name^="epl_rec"]),
.woocommerce form input[type="radio"]:not([name^="epl_rec"]),
.woocommerce-checkout input[type="checkbox"],
.woocommerce-checkout input[type="radio"],
.woocommerce-account input[type="checkbox"],
.comment-form-cookies-consent input[type="checkbox"],
#epl-collect-box input[type="checkbox"],
#epl-collect-box input[type="radio"],
.epl-bac-optout input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	max-width: 18px !important;
	flex: 0 0 18px !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	font-size: inherit !important;
	cursor: pointer;
	vertical-align: middle;
}

/* 2. Consent / opt-in rows (POPIA, marketing, WhatsApp) – box on the left, text wraps neatly beside it */
.woocommerce form .form-row .woocommerce-input-wrapper:has(> label.checkbox),
.woocommerce-checkout .form-row .woocommerce-input-wrapper:has(> label.checkbox) {
	display: block !important;
	width: 100% !important;
}
.woocommerce form .form-row label.checkbox,
.woocommerce-checkout .form-row label.checkbox {
	display: block !important;
	position: relative !important;
	padding: 0 0 0 30px !important;
	margin: 0 !important;
	line-height: 1.6 !important;
	text-align: left !important;
	cursor: pointer;
}
.woocommerce form .form-row label.checkbox > input[type="checkbox"],
.woocommerce-checkout .form-row label.checkbox > input[type="checkbox"] {
	position: absolute !important;
	left: 0 !important;
	top: calc((1.6em - 18px) / 2) !important;
	margin: 0 !important;
}
.woocommerce form .form-row.epl-consent,
.woocommerce form .form-row.epl-whatsapp-optin,
.woocommerce-checkout .form-row.epl-consent,
.woocommerce-checkout .form-row.epl-whatsapp-optin {
	margin: 0 0 14px !important;
	padding: 0 !important;
	text-align: left !important;
}

/* 2b. Register form consent rows (plain <label> without the .checkbox class) */
.woocommerce .form-row.epl-consent > label,
.woocommerce .form-row.epl-whatsapp-optin > label {
	display: block !important;
	position: relative !important;
	padding: 0 0 0 30px !important;
	margin: 0 !important;
	line-height: 1.6 !important;
	text-align: left !important;
	cursor: pointer;
}
.woocommerce .form-row.epl-consent > label > input[type="checkbox"],
.woocommerce .form-row.epl-whatsapp-optin > label > input[type="checkbox"] {
	position: absolute !important;
	left: 0 !important;
	top: calc((1.6em - 18px) / 2) !important;
	margin: 0 !important;
}

/* 3. "Ship to a different address?" */
#ship-to-different-address label.checkbox,
#ship-to-different-address label.woocommerce-form__label-for-checkbox {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 !important;
	cursor: pointer;
}
#ship-to-different-address input[type="checkbox"] {
	margin: 0 !important;
	position: static !important;
}

/* 4. "Remember me" on the login form */
.woocommerce-form-login .woocommerce-form-login__rememberme {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 0 0 0 16px !important;
	vertical-align: middle !important;
	width: auto !important;
	line-height: 1.4 !important;
}
.woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"] {
	margin: 0 !important;
}

/* 5. Collect product box + Johannesburg / Cape Town choice */
#epl-collect-box > label {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
	width: 100% !important;
	cursor: pointer;
}
#epl-collect-box > label > input[type="checkbox"] {
	margin: 3px 0 0 !important;
}
#epl-collect-box > label > span {
	flex: 1 1 auto !important;
	text-align: left !important;
}
#epl-collect-loc {
	margin-left: 0 !important;
	padding-left: 30px !important;
	margin-top: 10px !important;
}
#epl-collect-loc label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 8px 28px 0 0 !important;
	white-space: nowrap !important;
	cursor: pointer;
}
#epl-collect-loc input[type="radio"] {
	margin: 0 !important;
}

/* 6. BAC Water opt-out (cart + checkout) */
.shop_table td:has(> .epl-bac-optout) {
	padding-left: 12px !important;
	padding-right: 12px !important;
}
label.epl-bac-optout.epl-bac-optout {
	align-items: flex-start !important;
	gap: 10px !important;
}
label.epl-bac-optout.epl-bac-optout input.epl-bac-optout-input,
label.epl-bac-optout.epl-bac-optout input[type="checkbox"] {
	margin: 1px 0 0 !important;
	margin: calc((1lh - 18px) / 2) 0 0 !important;
}

/* 7. Product review form – "Save my name…" */
.comment-form-cookies-consent {
	display: flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
}
.comment-form-cookies-consent input[type="checkbox"] {
	margin: 3px 0 0 !important;
}
.comment-form-cookies-consent label {
	margin: 0 !important;
}

/* Phones */
@media (max-width: 600px) {
	#epl-collect-loc label { margin-right: 20px !important; }
	.woocommerce-form-login .woocommerce-form-login__rememberme {
		display: flex !important;
		width: max-content !important;
		margin: 0 0 14px 0 !important;
	}
}
