/* =========================================================
   SAFINA — Cart Styles (Block Cart + Classic Cart)
   Targets WooCommerce's block cart (.wc-block-cart) AND the
   classic shortcode cart (.woocommerce-cart-form).
   ========================================================= */

:root {
	--safina-cream:  #F4EEDF;
	--safina-forest: #123A24;
	--safina-green:  #1E5631;
	--safina-tomato: #C0362C;
	--safina-ink:    #2A2A24;
	--safina-muted:  #6B6A5E;
	--safina-line:   #D8CFB9;
}

/* ---------- BLOCK CART ---------- */
.wc-block-cart,
.wp-block-woocommerce-cart {
	font-family: "Fraunces", Georgia, serif;
	color: var(--safina-ink);
}

.wc-block-cart-items__header,
.wc-block-cart-items thead th {
	font-family: "Inter", system-ui, sans-serif !important;
	text-transform: uppercase !important;
	letter-spacing: .06em !important;
	font-size: .72rem !important;
	font-weight: 700 !important;
	color: var(--safina-muted) !important;
	border-bottom: 1px solid var(--safina-line) !important;
}

.wc-block-cart-items__row,
tr.wc-block-cart-items__row {
	border-bottom: 1px solid var(--safina-line) !important;
}

.wc-block-cart-item__image img {
	border-radius: 10px !important;
	border: 1px solid var(--safina-line) !important;
	background: #fff !important;
}

.wc-block-cart-item__product-name,
.wc-block-components-product-name {
	font-family: "Fraunces", Georgia, serif !important;
	font-weight: 600 !important;
	color: var(--safina-forest) !important;
	text-decoration: none !important;
	font-size: 1.05rem !important;
}
.wc-block-components-product-name:hover { color: var(--safina-tomato) !important; }

.wc-block-cart-item__total,
.wc-block-components-product-price__value {
	font-family: "Inter", system-ui, sans-serif !important;
	font-weight: 600 !important;
	color: var(--safina-tomato) !important;
}

.wc-block-components-quantity-selector {
	border: 1.5px solid var(--safina-line) !important;
	border-radius: 999px !important;
	overflow: hidden !important;
	background: #fff !important;
}
.wc-block-components-quantity-selector__input {
	font-family: "Inter", system-ui, sans-serif !important;
	font-weight: 600 !important;
	color: var(--safina-forest) !important;
	background: transparent !important;
}
.wc-block-components-quantity-selector__button {
	color: var(--safina-forest) !important;
	background: transparent !important;
}
.wc-block-components-quantity-selector__button:hover {
	background: rgba(30,86,49,.08) !important;
	color: var(--safina-green) !important;
}

.wc-block-cart-item__remove-link {
	font-family: "Inter", system-ui, sans-serif !important;
	color: var(--safina-muted) !important;
	text-transform: uppercase !important;
	letter-spacing: .03em !important;
	font-size: .75rem !important;
}
.wc-block-cart-item__remove-link:hover { color: var(--safina-tomato) !important; }

.wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block {
	background: #fff !important;
	border: 1px solid var(--safina-line) !important;
	border-radius: 14px !important;
	padding: 1.5rem !important;
	box-shadow: 0 18px 48px -22px rgba(18,58,36,.28) !important;
}

.wc-block-cart__totals-title,
.wp-block-woocommerce-cart-order-summary-heading-block {
	font-family: "Anton", Impact, sans-serif !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	letter-spacing: .01em !important;
	font-size: 1.4rem !important;
	color: var(--safina-forest) !important;
}

.wc-block-components-totals-item {
	font-family: "Inter", system-ui, sans-serif !important;
	color: var(--safina-ink) !important;
}
.wc-block-components-totals-item__label { color: var(--safina-muted) !important; }

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
	color: var(--safina-tomato) !important;
	font-weight: 700 !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	color: var(--safina-forest) !important;
	font-weight: 700 !important;
}

.wc-block-components-panel__button {
	font-family: "Inter", system-ui, sans-serif !important;
	color: var(--safina-forest) !important;
	font-weight: 600 !important;
}

/* Checkout button — fixes the washed-out button */
.wc-block-cart__submit-button,
.wc-block-cart__submit-container a,
.wp-block-woocommerce-proceed-to-checkout-block a,
a.wc-block-cart__submit-button {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	background: var(--safina-forest) !important;
	background-image: none !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: "Inter", system-ui, sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: .04em !important;
	text-transform: uppercase !important;
	font-size: .95rem !important;
	padding: 1rem 1.5rem !important;
	box-shadow: 0 12px 26px -12px rgba(18,58,36,.7) !important;
	text-decoration: none !important;
	transition: background-color .2s ease, transform .15s ease !important;
}
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block a:hover {
	background: var(--safina-green) !important;
	transform: translateY(-2px) !important;
}

.wc-block-cart .wc-block-components-button:not(.wc-block-components-button--tertiary),
.wc-block-components-totals-coupon__button {
	background: var(--safina-forest) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: "Inter", system-ui, sans-serif !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: .03em !important;
}
.wc-block-cart .wc-block-components-button:not(.wc-block-components-button--tertiary):hover {
	background: var(--safina-green) !important;
}

.wc-block-components-text-input input,
.wc-block-components-totals-coupon__input input {
	border: 1.5px solid var(--safina-line) !important;
	border-radius: 999px !important;
	background: #fff !important;
	font-family: "Inter", system-ui, sans-serif !important;
}

/* ---------- CLASSIC CART ---------- */
.woocommerce-cart .woocommerce-cart-form__contents th {
	font-family: "Inter", system-ui, sans-serif !important;
	text-transform: uppercase !important;
	letter-spacing: .05em !important;
	font-size: .72rem !important;
	color: var(--safina-muted) !important;
	border-bottom: 1px solid var(--safina-line) !important;
}
.woocommerce-cart table.cart td.product-name a {
	color: var(--safina-forest) !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}
.woocommerce-cart .cart_totals h2 {
	font-family: "Anton", Impact, sans-serif !important;
	font-weight: 400 !important;
	text-transform: uppercase !important;
	color: var(--safina-forest) !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .button,
.woocommerce-cart button.button {
	background: var(--safina-forest) !important;
	color: #fff !important;
	border-radius: 999px !important;
	font-family: "Inter", system-ui, sans-serif !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: .04em !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--safina-green) !important;
}

/* ---------- Accessibility ---------- */
.wc-block-cart a:focus-visible,
.wc-block-cart button:focus-visible,
.woocommerce-cart a:focus-visible,
.woocommerce-cart button:focus-visible {
	outline: 3px solid var(--safina-tomato) !important;
	outline-offset: 2px !important;
}
