/* ==========================================================================
   SEO By Amanda — WooCommerce (classic + block cart/checkout, account, notices)
   ========================================================================== */

.woocommerce, .woocommerce-page, .wc-block-components-sidebar-layout, .wp-block-woocommerce-cart, .wp-block-woocommerce-checkout {
	--sba-field-bg: color-mix(in srgb, var(--sba-bg) 80%, black);
	color: var(--sba-soft);
}

/* Buttons */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.wc-block-components-button:not(.is-link), .wp-element-button.wc-block-components-button,
.wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button, .single_add_to_cart_button {
	background: var(--sba-accent) !important;
	color: var(--sba-ink) !important;
	border: 0 !important;
	border-radius: 999px !important;
	padding: 14px 24px !important;
	font-family: var(--sba-font-body) !important;
	font-weight: 750 !important;
	font-size: .9rem !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: transform .25s var(--sba-ease), background-color .2s, box-shadow .25s !important;
	min-height: 0;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover, .single_add_to_cart_button:hover {
	background: var(--sba-accent-hover) !important;
	transform: translateY(-2px);
	box-shadow: 0 12px 30px color-mix(in srgb, var(--sba-accent) 22%, transparent) !important;
}
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { opacity: .55; }
.wc-block-components-button .wc-block-components-button__text { color: inherit; }
.wc-block-components-button.is-link, .woocommerce a.remove { color: var(--sba-muted) !important; }
.woocommerce a.remove:hover { background: transparent !important; color: #ff7a6b !important; }

/* Inputs (classic) */
.woocommerce form .form-row label, .woocommerce-page form .form-row label { color: var(--sba-soft); font-size: .8rem; font-weight: 700; margin-bottom: 6px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce .quantity .qty, .woocommerce-cart table.cart td.actions .coupon .input-text, .select2-container--default .select2-selection--single,
.woocommerce form .form-row .select2-container .select2-selection {
	background: var(--sba-field-bg) !important;
	border: 1px solid color-mix(in srgb, var(--sba-line) 90%, var(--sba-heading) 6%) !important;
	border-radius: 13px !important;
	color: var(--sba-heading) !important;
	padding: 12px 14px;
	min-height: 48px;
	box-shadow: none !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--sba-heading); line-height: 24px; }
.select2-dropdown { background: var(--sba-panel); border-color: var(--sba-line); color: var(--sba-soft); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background: var(--sba-accent); color: var(--sba-ink); }
.woocommerce form .form-row input.input-text:focus, .woocommerce form .form-row textarea:focus { border-color: var(--sba-accent) !important; box-shadow: 0 0 0 4px var(--sba-tint) !important; outline: none; }
.woocommerce .quantity .qty { width: 80px; text-align: center; padding: 10px; }

/* Inputs (blocks) */
.wc-block-components-text-input input, .wc-block-components-text-input input[type], .wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-components-form .wc-block-components-text-input input, .wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-textarea, .wc-block-components-quantity-selector, .wc-block-components-totals-coupon__input input {
	background-color: var(--sba-field-bg) !important;
	border: 1px solid color-mix(in srgb, var(--sba-line) 90%, var(--sba-heading) 6%) !important;
	border-radius: 13px !important;
	color: var(--sba-heading) !important;
}
.wc-block-components-text-input label, .wc-blocks-components-select__label, .wc-block-components-combobox .wc-block-components-combobox-control label { color: var(--sba-muted) !important; }
.wc-block-components-text-input.is-active input:focus, .wc-block-components-text-input input:focus { border-color: var(--sba-accent) !important; box-shadow: 0 0 0 3px var(--sba-tint) !important; }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { background: var(--sba-field-bg); border-color: var(--sba-line); }
.wc-block-components-checkbox .wc-block-components-checkbox__mark { fill: var(--sba-ink); }
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: var(--sba-accent); border-color: var(--sba-accent); }
.wc-block-components-radio-control__input { border-color: var(--sba-line) !important; background: var(--sba-field-bg) !important; }
.wc-block-components-radio-control__input:checked::before { background: var(--sba-accent) !important; }
.wc-block-components-radio-control-accordion-option, .wc-block-components-radio-control__option { border-color: var(--sba-line) !important; }
.wc-block-components-quantity-selector input { color: var(--sba-heading); background: transparent !important; }
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button { color: var(--sba-soft); }

/* Block layout surfaces */
.wc-block-components-sidebar .wc-block-components-panel, .wc-block-components-totals-wrapper, .wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block, .wc-block-checkout__sidebar .wc-block-components-checkout-order-summary__content {
	border-color: var(--sba-line) !important;
}
.wp-block-woocommerce-checkout-order-summary-block, .wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
	background: var(--sba-panel);
	border: 1px solid var(--sba-line) !important;
	border-radius: 22px;
	padding: 6px 20px 14px;
}
.wc-block-components-title, .wc-block-components-checkout-step__title, .wc-block-cart__totals-title, .wc-block-components-product-name, .wc-block-components-totals-item__label, .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--sba-heading) !important;
}
.wc-block-components-product-name { font-weight: 700; text-decoration: none !important; }
.wc-block-components-product-metadata, .wc-block-components-checkout-step__description, .wc-block-components-totals-item__description { color: var(--sba-muted) !important; }
.wc-block-cart-items, .wc-block-cart-items td, .wc-block-cart-items th, .wc-block-components-totals-wrapper::after, .wc-block-components-checkout-step { border-color: var(--sba-line) !important; }
.wc-block-cart-items__header { color: var(--sba-muted); }
.wc-block-components-checkout-step__container::after, .wc-block-checkout__actions { border-color: var(--sba-line) !important; }
.wc-block-components-product-badge { border-color: var(--sba-accent) !important; color: var(--sba-accent) !important; }
.wc-block-components-order-summary-item__quantity { background: var(--sba-accent) !important; color: var(--sba-ink) !important; border: 0 !important; box-shadow: none !important; }
.wc-block-components-order-summary-item__image > img { border-radius: 10px; }
.wc-block-checkout__terms, .wc-block-components-checkout-return-to-cart-button { color: var(--sba-muted) !important; }
.wc-block-components-panel__button, .wc-block-components-totals-coupon-link { color: var(--sba-accent) !important; }
.wc-block-components-notice-banner { border-radius: 14px; background: var(--sba-panel) !important; color: var(--sba-soft) !important; border-color: var(--sba-line) !important; }
.wc-block-components-notice-banner.is-success { border-color: var(--sba-accent) !important; }
.wc-block-components-notice-banner.is-success > svg { background: var(--sba-accent); fill: var(--sba-ink); }
.wc-block-components-validation-error p, .wc-block-components-text-input.has-error label { color: #ff9a8c !important; }
.wc-block-components-express-payment__title-container::before, .wc-block-components-express-payment__title-container::after { border-color: var(--sba-line) !important; }
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { color: var(--sba-heading); }

/* Classic cart */
.woocommerce table.shop_table { border: 1px solid var(--sba-line); border-radius: 20px; border-collapse: separate; overflow: hidden; background: var(--sba-panel); }
.woocommerce table.shop_table th { color: var(--sba-heading); font-weight: 700; }
.woocommerce table.shop_table td, .woocommerce table.shop_table th { border-color: var(--sba-line) !important; padding: 16px 18px; }
.woocommerce table.shop_table td.product-name a { color: var(--sba-heading); font-weight: 700; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--sba-accent); }
.woocommerce-cart .cart-collaterals .cart_totals h2, .woocommerce-checkout h3, .woocommerce-billing-fields h3, #order_review_heading { font-size: 1.4rem; }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-checkout-review-order { background: var(--sba-panel); border: 1px solid var(--sba-line); border-radius: 22px; padding: 24px; }
.woocommerce .cart-collaterals .cart_totals table.shop_table, .woocommerce-checkout-review-order table.shop_table { border: 0; background: transparent; }
.woocommerce-checkout #payment { background: transparent !important; border-radius: 16px; }
.woocommerce-checkout #payment ul.payment_methods { border-color: var(--sba-line) !important; }
.woocommerce-checkout #payment div.payment_box { background: var(--sba-field-bg) !important; color: var(--sba-soft) !important; border-radius: 12px; }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--sba-field-bg) !important; }
.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register { border: 1px solid var(--sba-line) !important; border-radius: 20px !important; background: var(--sba-panel); padding: 24px !important; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notices-wrapper > * {
	background: var(--sba-panel) !important;
	color: var(--sba-soft) !important;
	border: 1px solid var(--sba-line) !important;
	border-left: 3px solid var(--sba-accent) !important;
	border-radius: 14px !important;
	padding: 16px 20px 16px 52px !important;
	margin-bottom: 22px !important;
}
.woocommerce-error { border-left-color: #ff7a6b !important; list-style: none; }
.woocommerce-message::before, .woocommerce-info::before { color: var(--sba-accent) !important; top: 16px !important; left: 20px !important; }
.woocommerce-error::before { color: #ff7a6b !important; top: 16px !important; left: 20px !important; }
.woocommerce-message .button, .woocommerce-info .button { float: right; padding: 8px 16px !important; font-size: .8rem !important; }
.woocommerce-message a:not(.button), .woocommerce-info a:not(.button) { color: var(--sba-accent); }

/* Prices */
.woocommerce .price, .woocommerce-Price-amount { color: var(--sba-heading); }
.woocommerce span.onsale { background: var(--sba-accent); color: var(--sba-ink); border-radius: 99px; min-height: 0; line-height: 1; padding: 8px 12px; }

/* Single package page */
.sba-product-body { padding-top: 64px; }
.sba-product-layout { display: grid; grid-template-columns: 1.35fr .9fr; gap: 28px; align-items: start; }
.sba-product-main .sba-panel { padding: 38px; }
.sba-product-buy { position: sticky; top: 104px; }
.sba-buy-card:hover { transform: none; }
.sba-buy-card .sba-price { margin-top: 12px; }
.sba-buy-form { margin: 4px 0 22px; }
.sba-buy-form form.cart { display: flex; gap: 10px; align-items: stretch; margin: 0 !important; }
.sba-buy-form .quantity .qty { height: 100%; min-height: 50px; border-radius: 999px !important; }
.sba-buy-form .single_add_to_cart_button { flex: 1; }
.sba-buy-form .stock { color: var(--sba-muted); font-size: .8rem; }
.sba-buy-trust { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 22px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .07); font-size: .76rem; color: var(--sba-muted); }
.sba-buy-trust span { display: inline-flex; align-items: center; gap: 6px; }
.sba-buy-trust .sba-icon { color: var(--sba-accent); }
.sba-related { padding-top: 40px; }

/* Account */
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style: none; padding: 8px; margin: 0; border: 1px solid var(--sba-line); border-radius: 18px; background: var(--sba-panel); }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 11px 14px; border-radius: 12px; color: var(--sba-soft); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a, .woocommerce-account .woocommerce-MyAccount-navigation li a:hover { background: var(--sba-tint); color: var(--sba-accent); }

.sba-woo-page a:not(.button):not(.wc-block-components-button):not(.wc-block-components-product-name) { color: var(--sba-accent); }

@media (max-width: 980px) {
	.sba-product-layout { grid-template-columns: 1fr; }
	.sba-product-buy { position: static; order: -1; }
}
@media (max-width: 760px) {
	.sba-product-main .sba-panel { padding: 24px; }
	.woocommerce-message .button, .woocommerce-info .button { float: none; display: inline-block; margin-top: 10px; }
}

/* Block selects (country / state) */
.wc-blocks-components-select .wc-blocks-components-select__container { background: transparent !important; border-radius: 13px; }
.wc-blocks-components-select .wc-blocks-components-select__select { border-radius: 13px !important; }
.wc-blocks-components-select .wc-blocks-components-select__expand { fill: var(--sba-muted); }
.wc-block-components-product-image, .wc-block-components-order-summary-item__image { background: transparent; }
