/* A5 audit fixes: bag, checkout, account, wishlist, order received.
   Pairs with inc/areas/fix-a5-bag-checkout-account.php and assets/js/areas/fix-a5-bag-checkout-account.js. */

/* ---------------------------------------------------------------
   Checkout: no payment method yet (PHP replaces "Place order")
   --------------------------------------------------------------- */
body.yb.woocommerce-checkout .yb-fix-a5-nopay {
	align-self: stretch;
	margin: 0 0 16px;
	padding: 14px 16px;
	border: 1px solid #D5D5D5;
	border-left: 4px solid #111;
	border-radius: 4px;
	background: #fff;
	color: #111;
	font-size: 14px;
	line-height: 1.5;
}
body.yb.woocommerce-checkout .yb-fix-a5-nopay a { color: #111; text-decoration: underline; text-underline-offset: 2px; }
body.yb.woocommerce-checkout #payment .yb-fix-a5-nopay__btn,
body.yb.woocommerce-checkout .yb-fix-a5-nopay__btn {
	width: 100%;
	max-width: 320px;
	min-height: 54px;
	border: 0;
	border-radius: 4px;
	background: #D5D5D5 !important;
	color: #5F5F5F !important;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	cursor: not-allowed;
	box-shadow: none;
}
/* WooCommerce's grey "no payment methods" box: same neutral card look */
body.yb.woocommerce-checkout #payment .woocommerce-notice--info,
body.yb.woocommerce-checkout #payment li.woocommerce-notice {
	list-style: none;
	margin: 0 0 16px;
	padding: 14px 16px;
	border: 1px solid #D5D5D5;
	border-radius: 4px;
	background: #FAFAFA;
	color: #111;
	font-size: 14px;
}

/* WoodMart free-shipping bar inside the checkout form ("Your order qualifies for free shipping!").
   Lulu's checkout has none, and it reads WoodMart's own threshold, not the real shipping rates. */
body.yb.woocommerce-checkout form.checkout .wd-shipping-progress-bar { display: none !important; }

/* Terms checkbox (appears once a terms page is known) */
body.yb.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 14px;
	line-height: 1.45;
	color: #111;
}
body.yb.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin: 1px 0 0;
	accent-color: #111;
}

/* ---------------------------------------------------------------
   Order received (thank-you page)
   --------------------------------------------------------------- */
body.yb.woocommerce-order-received .woocommerce-order {
	max-width: 880px;
	margin: 32px auto 64px;
}
body.yb.woocommerce-order-received .woocommerce-thankyou-order-received {
	margin: 0 0 28px;
	padding: 0;
	border: 0;
	background: none;
	color: #111;
	text-align: left;
}
body.yb.woocommerce-order-received .yb-fix-a5-ty__title {
	display: block;
	margin: 0 0 8px;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.15;
}
body.yb.woocommerce-order-received .yb-fix-a5-ty__sub {
	display: block;
	font-size: 16px;
	font-weight: 400;
	color: #5F5F5F;
}
body.yb.woocommerce-order-received ul.woocommerce-order-overview {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 0;
	margin: 0 0 32px;
	padding: 0;
	border: 1px solid #E5E5E5;
	border-radius: 4px;
	background: #fff;
	list-style: none;
}
body.yb.woocommerce-order-received ul.woocommerce-order-overview li {
	margin: 0;
	padding: 16px 18px;
	border: 0;
	border-right: 1px solid #E5E5E5;
	font-size: 12px;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: #5F5F5F;
}
body.yb.woocommerce-order-received ul.woocommerce-order-overview li:last-child { border-right: 0; }
body.yb.woocommerce-order-received ul.woocommerce-order-overview li strong {
	display: block;
	margin-top: 6px;
	font-size: 16px;
	letter-spacing: 0;
	text-transform: none;
	color: #111;
}
body.yb.woocommerce-order-received .woocommerce-order-details,
body.yb.woocommerce-order-received .woocommerce-customer-details {
	margin: 0 0 24px;
	padding: 24px;
	border: 1px solid #E5E5E5;
	border-radius: 4px;
	background: #fff;
}
body.yb.woocommerce-order-received .woocommerce-order-details__title,
body.yb.woocommerce-order-received .woocommerce-column__title {
	font-size: 22px;
	font-weight: 700;
	text-transform: none;
	letter-spacing: 0;
}
@media (max-width: 600px) {
	body.yb.woocommerce-order-received .yb-fix-a5-ty__title { font-size: 28px; }
	body.yb.woocommerce-order-received ul.woocommerce-order-overview { grid-template-columns: 1fr 1fr; }
	body.yb.woocommerce-order-received ul.woocommerce-order-overview li { border-right: 0; border-bottom: 1px solid #E5E5E5; }
	body.yb.woocommerce-order-received .woocommerce-order-details,
	body.yb.woocommerce-order-received .woocommerce-customer-details { padding: 16px; }
}

/* ---------------------------------------------------------------
   Account: lost-password and reset-password screens get the same
   424px sign-in card as the login view (account.js leaves them stock)
   --------------------------------------------------------------- */
body.yb.woocommerce-account form.woocommerce-ResetPassword {
	box-sizing: border-box;
	width: 100%;
	max-width: 424px;
	margin: 24px auto 64px !important;
	padding: 36px 20px 24px !important;
	border: 0;
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 8px 12px rgba(0, 0, 0, .2);
	color: #000;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword > p:first-child {
	margin: 0 0 24px;
	font-size: 15px;
	line-height: 1.5;
	color: #5F5F5F;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword .form-row {
	float: none;
	width: 100%;
	margin: 0 0 20px;
	padding: 0;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword label {
	display: block;
	margin: 0 0 6px;
	font-size: 14px;
	font-weight: 600;
	color: #111;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword input.input-text {
	width: 100%;
	height: 48px;
	padding: 0 14px;
	border: 1px solid #767676;
	border-radius: 4px;
	font-size: 16px;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword button[type="submit"] {
	width: 100%;
	min-height: 50px;
	border: 0;
	border-radius: 4px;
	background: #111;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}
body.yb.woocommerce-account form.woocommerce-ResetPassword button[type="submit"]:hover { background: #333; }
body.yb.woocommerce-account .yb-fix-a5-back {
	display: block;
	margin: 16px 0 0;
	font-size: 14px;
	text-align: center;
}
body.yb.woocommerce-account .yb-fix-a5-back a { color: #111; text-decoration: underline; text-underline-offset: 2px; }
/* "Password reset email has been sent." confirmation */
body.yb.woocommerce-account.woocommerce-lost-password .woocommerce-message,
body.yb.woocommerce-account.woocommerce-lost-password .woocommerce-info {
	max-width: 424px;
	margin: 24px auto 16px;
	border: 1px solid #D5D5D5;
	border-radius: 4px;
	background: #fff;
	color: #111;
}

/* ---------------------------------------------------------------
   Account: dashboard sidebar title lines up with the nav links
   --------------------------------------------------------------- */
body.yb.woocommerce-account .wd-my-account-sidebar .woocommerce-MyAccount-title,
body.yb.woocommerce-account .wd-my-account-sidebar > h3 { padding-left: 0; margin-left: 0; }

/* ---------------------------------------------------------------
   Wishlist heading "Wish List (n)" (JS adds the count)
   --------------------------------------------------------------- */
body.yb.yb-wishlist-page .yb-fix-a5-wl-title {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0;
	text-transform: none;
	color: #111;
}
