/* ==========================================================================
   cart.css — WooCommerce Block Cart & Checkout — PembeMarket Design
   ========================================================================== */

/* ==== SHARED COMPONENTS ==== */

.wc-block-cart,
.wc-block-checkout,
.wp-block-woocommerce-filled-cart-block,
.wp-block-woocommerce-checkout-fields-block {
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 0 !important;
}

/* ---- Notices ---- */
.wc-block-components-notice-banner {
	border-radius: 8px !important;
	padding: 12px 16px !important;
	font-size: 14px !important;
	margin-bottom: 16px !important;
}
.wc-block-components-notice-banner.is-success {
	background: #E8F8F0 !important;
	border-left: 4px solid #27AE60 !important;
	color: #1a5e34 !important;
}
.wc-block-components-notice-banner.is-error {
	background: #FDE8E8 !important;
	border-left: 4px solid #E74C3C !important;
	color: #8b1a1a !important;
}
.wc-block-components-notice-banner.is-info {
	background: #FFF0F7 !important;
	border-left: 4px solid #E91E8C !important;
	color: #7a1050 !important;
}

/* ---- Quantity Selector ---- */
.wc-block-components-quantity-selector {
	border: 1px solid #E8E8E8 !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	display: inline-flex !important;
}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
	font-size: 14px !important; font-weight: 600 !important; color: #1A1A2E !important;
	width: 40px !important; height: 36px !important; border: none !important;
	background: transparent !important; text-align: center !important;
}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	background: #F9F9F9 !important; border: none !important; color: #1A1A2E !important;
	font-size: 16px !important; width: 34px !important; height: 36px !important;
	cursor: pointer !important; transition: all 0.15s !important;
}
.wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
	background: #FFF0F7 !important; color: #E91E8C !important;
}

/* ---- Product Price ---- */
.wc-block-components-product-price {
	font-size: 15px !important; font-weight: 700 !important; color: #1A1A2E !important;
}
.wc-block-components-product-price__regular {
	color: #999 !important; text-decoration: line-through !important;
	font-size: 13px !important; font-weight: 400 !important;
}

/* ---- Text Inputs (Shared) ---- */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-combobox .components-form-token-field__input,
.wc-block-checkout select,
.wc-block-cart select {
	border: 1px solid #E8E8E8 !important;
	border-radius: 8px !important;
	padding: 12px 14px !important;
	font-size: 14px !important;
	font-family: inherit !important;
	color: #1A1A2E !important;
	background: #fff !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-text-input textarea:focus {
	border-color: #E91E8C !important;
	box-shadow: 0 0 0 3px rgba(233,30,140,0.08) !important;
	outline: none !important;
}
.wc-block-components-text-input label {
	font-size: 13px !important; color: #888 !important; font-weight: 500 !important;
}

/* ---- Combobox ---- */
.wc-block-components-combobox .components-form-token-field__input-container {
	border: 1px solid #E8E8E8 !important; border-radius: 8px !important; min-height: 44px !important;
}
.wc-block-components-combobox .components-form-token-field__input-container:focus-within {
	border-color: #E91E8C !important; box-shadow: 0 0 0 3px rgba(233,30,140,0.08) !important;
}

/* ---- Checkbox ---- */
.wc-block-components-checkbox .wc-block-components-checkbox__input[type="checkbox"] {
	width: 18px !important; height: 18px !important; border-radius: 4px !important;
	accent-color: #E91E8C !important;
}
.wc-block-components-checkbox__label {
	font-size: 13px !important; color: #333 !important;
}

/* ---- Radio Buttons ---- */
.wc-block-components-radio-control__option {
	border: 1.5px solid #f0f0f0 !important;
	border-radius: 10px !important;
	padding: 16px 18px 16px 44px !important;
	margin-bottom: 10px !important;
	transition: all 0.15s !important;
	position: relative !important;
}
.wc-block-components-radio-control__option:hover {
	border-color: #E91E8C !important;
}
.wc-block-components-radio-control__option--checked {
	border-color: #E91E8C !important;
	background: #FFF0F7 !important;
}
.wc-block-components-radio-control__input {
	accent-color: #E91E8C !important;
	position: absolute !important;
	left: 16px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
}
.wc-block-components-radio-control__label {
	font-size: 14px !important; font-weight: 600 !important; color: #1A1A2E !important;
}
.wc-block-components-radio-control__description {
	font-size: 12px !important; color: #888 !important;
}
.wc-block-components-radio-control__secondary-label {
	font-size: 14px !important; font-weight: 700 !important; color: #27AE60 !important;
}

/* ---- Order Summary Totals ---- */
.wc-block-components-totals-wrapper {
	border-color: #f5f5f5 !important;
}
.wc-block-components-totals-item {
	padding: 10px 0 !important;
}
.wc-block-components-totals-item__label {
	font-size: 14px !important; color: #555 !important;
}
.wc-block-components-totals-item__value {
	font-size: 14px !important; font-weight: 600 !important; color: #1A1A2E !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-size: 17px !important; font-weight: 700 !important; color: #1A1A2E !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 22px !important; font-weight: 800 !important; color: #E91E8C !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__description {
	font-size: 12px !important; color: #888 !important;
}

/* Discount green */
.wc-block-components-totals-discount .wc-block-components-totals-item__value {
	color: #27AE60 !important;
}

/* ---- Coupon ---- */
.wc-block-components-totals-coupon .wc-block-components-panel__button {
	font-size: 14px !important; font-weight: 600 !important; color: #E91E8C !important;
}
.wc-block-components-totals-coupon__button {
	background: #E91E8C !important; color: #fff !important;
	border-radius: 8px !important; font-weight: 600 !important; font-size: 14px !important;
	padding: 10px 20px !important; border: none !important;
}
.wc-block-components-totals-coupon__button:hover {
	background: #C4177A !important; box-shadow: 0 4px 14px rgba(233,30,140,0.3) !important;
}

/* ==================================================================
   CART PAGE
   ================================================================== */

.wp-block-woocommerce-cart::before {
	content: ''; display: block; height: 20px;
}

.wp-block-woocommerce-filled-cart-block {
	display: grid !important;
	grid-template-columns: 1fr 380px !important;
	gap: 28px !important;
	align-items: flex-start !important;
}

.wp-block-woocommerce-cart-items-block { width: 100% !important; }

.wp-block-woocommerce-cart-totals-block {
	width: 100% !important; position: sticky !important; top: 100px !important;
}

.wc-block-cart-items { border: none !important; }

.wc-block-cart-items .wc-block-cart-items__row {
	border-bottom: 1px solid #f5f5f5 !important;
	padding: 20px 0 !important;
}
.wc-block-cart-items .wc-block-cart-items__row:last-child {
	border-bottom: none !important;
}

/* Cart product image */
.wc-block-cart-item__image { width: 100px !important; min-width: 100px !important; }
.wc-block-cart-item__image img {
	border-radius: 8px !important; border: 1px solid #f0f0f0 !important;
}

/* Cart product info */
.wc-block-cart-item__product { padding-left: 16px !important; }
.wc-block-cart-item__product-name {
	font-size: 14px !important; font-weight: 600 !important; color: #1A1A2E !important;
	text-decoration: none !important; line-height: 1.4 !important;
}
.wc-block-cart-item__product-name:hover { color: #E91E8C !important; }
.wc-block-cart-item__product-metadata {
	font-size: 12px !important; color: #888 !important; margin-top: 4px !important;
}

/* Remove link */
.wc-block-cart-item__remove-link {
	color: #999 !important; font-size: 12px !important; text-decoration: none !important;
}
.wc-block-cart-item__remove-link:hover { color: #E74C3C !important; }

/* Cart summary box */
.wp-block-woocommerce-cart-order-summary-block {
	background: #fff !important;
	border: 1px solid #f0f0f0 !important;
	border-radius: 12px !important;
	padding: 24px !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
}

.wc-block-components-order-summary .wc-block-components-panel__button {
	font-size: 18px !important; font-weight: 700 !important; color: #1A1A2E !important;
}

/* Cart proceed button */
.wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button {
	background: linear-gradient(135deg, #E91E8C, #C4177A) !important;
	color: #fff !important; border-radius: 10px !important;
	font-size: 16px !important; font-weight: 700 !important;
	padding: 14px 24px !important; border: none !important;
	width: 100% !important; text-transform: none !important;
	transition: all 0.2s !important; min-height: 50px !important;
}
.wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button:hover {
	box-shadow: 0 6px 20px rgba(233,30,140,0.35) !important;
	transform: translateY(-1px) !important;
}

/* Continue shopping */
.wc-block-cart__submit-container .wc-block-components-button--link {
	color: #E91E8C !important; font-size: 14px !important; font-weight: 600 !important;
	margin-top: 12px !important; display: block !important; text-align: center !important;
}

/* Accepted payment */
.wp-block-woocommerce-cart-accepted-payment-methods-block {
	margin-top: 20px !important; padding-top: 16px !important;
	border-top: 1px solid #f0f0f0 !important;
}

/* Empty cart */
.wp-block-woocommerce-empty-cart-block { text-align: center !important; padding: 60px 20px !important; }
.wc-block-cart__empty-cart__title {
	font-size: 22px !important; font-weight: 700 !important; color: #1A1A2E !important;
}

/* ==================================================================
   CHECKOUT PAGE
   ================================================================== */

/* ---- Progress Steps Bar (injected by JS) ---- */
.mt-checkout-progress {
	background: linear-gradient(135deg, #FFF0F7, #FCE4F2);
	border-radius: 16px;
	padding: 28px 32px;
	margin-bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.mt-checkout-progress__info {
	display: flex;
	flex-direction: column;
}

.mt-checkout-progress__title {
	font-size: 26px;
	font-weight: 800;
	color: #1A1A2E;
}

.mt-checkout-progress__desc {
	font-size: 13px;
	color: #888;
	margin-top: 4px;
}

.mt-checkout-progress__steps {
	display: flex;
	align-items: center;
	gap: 0;
}

.mt-checkout-progress__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	min-width: 72px;
}

.mt-checkout-progress__num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
	border: 2px solid #ddd;
	color: #bbb;
	background: #fff;
	position: relative;
}

.mt-checkout-progress__step--done .mt-checkout-progress__num {
	background: #E91E8C;
	border-color: #E91E8C;
	color: #fff;
}

.mt-checkout-progress__step--done .mt-checkout-progress__num::after {
	content: '✓';
	font-size: 16px;
}

.mt-checkout-progress__step--active .mt-checkout-progress__num {
	background: #fff;
	border-color: #E91E8C;
	color: #E91E8C;
	box-shadow: 0 0 0 4px rgba(233,30,140,0.12);
}

.mt-checkout-progress__label {
	font-size: 12px;
	font-weight: 600;
	color: #999;
}

.mt-checkout-progress__step--done .mt-checkout-progress__label,
.mt-checkout-progress__step--active .mt-checkout-progress__label {
	color: #E91E8C;
}

.mt-checkout-progress__line {
	width: 40px;
	height: 2px;
	background: #ddd;
	margin: 0 4px;
	margin-bottom: 22px;
}

.mt-checkout-progress__line--done {
	background: #E91E8C;
}

/* ---- Checkout Step Cards ---- */
.wc-block-components-checkout-step {
	background: #fff !important;
	border: 1px solid #f0f0f0 !important;
	border-radius: 12px !important;
	padding: 24px 28px !important;
	margin-bottom: 16px !important;
	box-shadow: 0 1px 4px rgba(0,0,0,0.03) !important;
}

.wc-block-components-checkout-step__heading { margin-bottom: 16px !important; }

.wc-block-components-checkout-step__title {
	font-size: 16px !important; font-weight: 700 !important; color: #1A1A2E !important;
}

.wc-block-components-checkout-step__description {
	font-size: 13px !important; color: #888 !important;
}

/* Step numbers */
.wc-block-checkout__form--with-step-numbers .wc-block-components-checkout-step::before {
	background: #E91E8C !important; color: #fff !important; font-weight: 700 !important;
	width: 26px !important; height: 26px !important; font-size: 12px !important;
	border-radius: 50% !important;
}

/* ---- Payment Methods ---- */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option {
	padding: 16px 18px 10px !important;
}
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option {
	padding-bottom: 10px !important;
}

.wc-block-components-payment-method-icons {
	margin-top: 8px !important; gap: 4px !important;
}
.wc-block-components-payment-method-icons .wc-block-components-payment-method-icon {
	height: 28px !important;
}

/* Payment content (iyzico iframe — DO NOT BREAK) */
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content {
	padding: 16px 0 0 !important;
}

/* ---- Checkout Column Layout — force 2-column ---- */
.wc-block-checkout .wc-block-components-sidebar-layout {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 24px !important;
}
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main {
	width: 100% !important;
	flex: 1 1 0% !important;
	min-width: 0 !important;
	max-width: none !important;
	padding-right: 0 !important;
}
.wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wc-block-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar {
	width: 100% !important;
	flex: 0 0 380px !important;
	min-width: 0 !important;
	max-width: 380px !important;
}

/* ---- Checkout Sidebar ---- */
.wc-block-checkout__sidebar {
	position: sticky !important;
	top: 100px !important;
}

.wc-block-checkout__sidebar .wc-block-components-order-summary,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block {
	background: #fff !important;
	border: 1px solid #f0f0f0 !important;
	border-radius: 12px !important;
	padding: 24px !important;
	box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
}

/* Summary header */
.wc-block-checkout__sidebar .wc-block-components-panel__button {
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #1A1A2E !important;
}

/* Summary products */
.wc-block-components-order-summary__content .wc-block-components-order-summary-item {
	padding: 14px 0 !important;
	border-bottom: 1px solid #f5f5f5 !important;
}
.wc-block-components-order-summary-item__image {
	border-radius: 8px !important;
	overflow: hidden !important;
	border: 1px solid #f0f0f0 !important;
	width: 72px !important;
	min-width: 72px !important;
	max-width: 72px !important;
	height: 72px !important;
	min-height: 72px !important;
	max-height: 72px !important;
	background: #f9f9f9 !important;
	flex-shrink: 0 !important;
	box-sizing: border-box !important;
}
.wc-block-components-order-summary-item__image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block !important;
}
.wc-block-components-order-summary-item__description .wc-block-components-product-name {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #1A1A2E !important;
	display: block !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	max-width: 100% !important;
}
/* Fix summary item layout — grid: image | info+price */
.wc-block-components-order-summary-item {
	display: grid !important;
	grid-template-columns: 72px 1fr !important;
	grid-template-rows: auto auto !important;
	gap: 4px 12px !important;
	min-width: 0 !important;
	align-items: start !important;
}
.wc-block-components-order-summary-item__image {
	grid-row: 1 / 3 !important;
}
.wc-block-components-order-summary-item__description {
	grid-column: 2 !important;
	grid-row: 1 !important;
	min-width: 0 !important;
	overflow: hidden !important;
}
/* Price right-aligned, below vendor name */
.wc-block-components-order-summary-item__total-price {
	grid-column: 2 !important;
	grid-row: 2 !important;
	text-align: right !important;
	white-space: nowrap !important;
}
.wc-block-components-order-summary-item__quantity {
	background: #E91E8C !important; color: #fff !important;
	font-weight: 700 !important; border-radius: 50% !important; font-size: 11px !important;
}
/* Hide product short description but keep vendor name */
.wc-block-components-order-summary-item .wc-block-components-product-metadata {
	font-size: 12px !important; color: #888 !important;
}
.wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-metadata__description {
	display: none !important;
}
/* Hide duplicate price under product name */
.wc-block-components-order-summary-item__description .wc-block-components-product-price {
	display: none !important;
}
/* Vendor name in pink */
.wc-block-components-order-summary-item .wc-block-components-product-metadata .wc-block-components-product-metadata__description:last-child {
	display: block !important;
	color: #E91E8C !important;
	font-weight: 600 !important;
	font-size: 12px !important;
}

/* ---- Place Order Button ---- */
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button,
.wc-block-checkout__actions .wc-block-components-button:not(.wc-block-components-button--link) {
	background: linear-gradient(135deg, #E91E8C, #C4177A) !important;
	color: #fff !important;
	border-radius: 10px !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	padding: 16px 32px !important;
	border: none !important;
	width: 100% !important;
	min-height: 52px !important;
	transition: all 0.2s !important;
	text-transform: none !important;
}
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover {
	box-shadow: 0 6px 24px rgba(233,30,140,0.35) !important;
	transform: translateY(-1px) !important;
}

/* Return to cart */
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button {
	color: #E91E8C !important; font-size: 14px !important; font-weight: 600 !important;
	text-decoration: none !important; display: block !important;
	text-align: center !important; margin-top: 10px !important;
}
.wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button:hover {
	text-decoration: underline !important;
}

/* ---- Terms ---- */
.wc-block-checkout__terms {
	font-size: 12px !important; color: #666 !important; line-height: 1.6 !important;
}
.wc-block-checkout__terms a { color: #E91E8C !important; }

/* ---- Login Prompt ---- */
.wc-block-checkout__login-prompt { font-size: 14px !important; color: #333 !important; }
.wc-block-checkout__login-prompt a { color: #E91E8C !important; font-weight: 600 !important; }

/* ---- Address Card ---- */
.wc-block-components-address-card {
	border: 1px solid #f0f0f0 !important; border-radius: 10px !important;
	padding: 16px !important; background: #FAFAFA !important;
}
.wc-block-components-address-card__edit {
	color: #E91E8C !important; font-weight: 600 !important; font-size: 13px !important;
}

/* ---- Validation ---- */
.wc-block-components-validation-error {
	color: #E74C3C !important; font-size: 12px !important; margin-top: 4px !important;
}

/* ---- Trust Badges (injected by JS) ---- */
.mt-checkout-trust {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 32px;
	padding: 20px 0;
	margin-top: 12px;
	border-top: 1px solid #f0f0f0;
}

.mt-checkout-trust__item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: #888;
}

.mt-checkout-trust__item svg {
	flex-shrink: 0;
	color: #E91E8C;
}

/* ---- Payment Logos (injected by JS) ---- */
.mt-checkout-pay-logos {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 0;
	border-top: 1px solid #f0f0f0;
	margin-top: 12px;
	font-size: 12px;
	color: #888;
	flex-wrap: wrap;
}
.mt-checkout-pay-logos span {
	font-weight: 600;
	color: #555;
	margin-right: 4px;
}
.mt-checkout-pay-logos img {
	height: 22px;
	object-fit: contain;
}

/* ---- Güvenli Ödeme sidebar badge ---- */
.mt-checkout-secure {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: #F0FFF5;
	border: 1px solid #D4EDDA;
	border-radius: 10px;
	padding: 14px 16px;
	margin-top: 16px;
}
.mt-checkout-secure svg { flex-shrink: 0; color: #27AE60; margin-top: 2px; }
.mt-checkout-secure__text { font-size: 13px; color: #333; }
.mt-checkout-secure__text strong { display: block; font-size: 14px; font-weight: 700; color: #1A1A2E; margin-bottom: 2px; }
.mt-checkout-secure__text span { font-size: 12px; color: #888; }
.mt-checkout-secure__logos {
	display: flex; gap: 8px; margin-top: 8px; flex-wrap: wrap; align-items: center;
}
.mt-checkout-secure__logos img { height: 20px; }

/* ==================================================================
   RESPONSIVE
   ================================================================== */

@media (max-width: 1024px) {
	.wp-block-woocommerce-filled-cart-block {
		grid-template-columns: 1fr 320px !important; gap: 20px !important;
	}
}

@media (max-width: 768px) {
	.wp-block-woocommerce-filled-cart-block {
		grid-template-columns: 1fr !important; gap: 20px !important;
	}
	.wp-block-woocommerce-cart-totals-block,
	.wc-block-checkout__sidebar {
		position: static !important;
	}
	.wc-block-cart-item__image { width: 80px !important; min-width: 80px !important; }
	.wp-block-woocommerce-cart-order-summary-block,
	.wc-block-checkout__sidebar .wc-block-components-order-summary { padding: 16px !important; }
	.wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: 18px !important; }
	.wc-block-cart-items .wc-block-cart-items__row { padding: 14px 0 !important; }
	.wc-block-components-checkout-step { padding: 16px !important; }
	.wc-block-components-checkout-step__title { font-size: 15px !important; }
	.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
		width: 100% !important; padding: 14px 24px !important;
	}
	.wc-block-components-radio-control__option { padding: 12px 14px !important; }

	/* Progress bar mobile */
	.mt-checkout-progress {
		flex-direction: column;
		gap: 16px;
		padding: 20px;
		text-align: center;
	}
	.mt-checkout-progress__title { font-size: 20px; }
	.mt-checkout-progress__steps { flex-wrap: nowrap; justify-content: center; }
	.mt-checkout-progress__step { min-width: 56px; }
	.mt-checkout-progress__line { width: 24px; }
	.mt-checkout-trust { flex-wrap: wrap; gap: 16px; justify-content: center; }
}

@media (max-width: 480px) {
	.wc-block-cart-item__image { width: 64px !important; min-width: 64px !important; }
	.wc-block-cart-item__product-name { font-size: 13px !important; }
	.wc-block-components-product-price { font-size: 14px !important; }
	.wc-block-components-text-input input { padding: 10px 12px !important; font-size: 13px !important; }
	.wc-block-components-order-summary-item__description .wc-block-components-product-name { font-size: 12px !important; }
	.mt-checkout-progress__num { width: 30px; height: 30px; font-size: 12px; }
	.mt-checkout-progress__label { font-size: 10px; }
}

/* ==========================================================================
   EMPTY CART — Premium Design
   ========================================================================== */

/* Hide default WC empty message */
.cart-empty.woocommerce-info,
.woocommerce .cart-empty,
.return-to-shop {
	display: none !important;
}

/* Progress Steps */
.mt-empty-cart__steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	margin-bottom: 40px;
	padding: 24px 0;
}

.mt-empty-cart__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.mt-empty-cart__step-num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.85rem;
	font-weight: 700;
	background: #eee;
	color: #999;
	transition: all 0.3s;
}

.mt-empty-cart__step--active .mt-empty-cart__step-num {
	background: #e83e8c;
	color: #fff;
	box-shadow: 0 4px 12px rgba(232, 62, 140, 0.3);
}

.mt-empty-cart__step-label {
	font-size: 0.75rem;
	font-weight: 600;
	color: #999;
}

.mt-empty-cart__step--active .mt-empty-cart__step-label {
	color: #e83e8c;
}

.mt-empty-cart__step-line {
	width: 60px;
	height: 2px;
	background: #eee;
	margin: 0 8px;
	margin-bottom: 22px;
}

/* Layout */
.mt-empty-cart__layout {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 32px;
	align-items: flex-start;
}

/* Left: Main Content */
.mt-empty-cart__main {
	background: #fff;
	border-radius: 16px;
	border: 1px solid #f0f0f0;
	padding: 48px 32px;
	text-align: center;
}

.mt-empty-cart__illustration {
	display: flex;
	justify-content: center;
}

.mt-empty-cart__illustration img {
	max-width: 220px;
	height: auto;
	margin-bottom: 24px;
}

.mt-empty-cart__title {
	font-size: 1.5rem;
	font-weight: 800;
	color: #1a1a2e;
	margin-bottom: 10px;
}

.mt-empty-cart__desc {
	font-size: 0.95rem;
	color: #777;
	max-width: 420px;
	margin: 0 auto 28px;
	line-height: 1.6;
}

.mt-empty-cart__actions {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 40px;
}

.mt-empty-cart__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 28px;
	border-radius: 12px;
	font-size: 0.95rem;
	font-weight: 600;
	text-decoration: none;
	transition: all 0.25s ease;
	cursor: pointer;
	border: 2px solid transparent;
}

.mt-empty-cart__btn--primary {
	background: #e83e8c;
	color: #fff;
	border-color: #e83e8c;
}

.mt-empty-cart__btn--primary:hover {
	background: #c2185b;
	border-color: #c2185b;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(232, 62, 140, 0.3);
}

.mt-empty-cart__btn--outline {
	background: transparent;
	color: #e83e8c;
	border-color: #e83e8c;
}

.mt-empty-cart__btn--outline:hover {
	background: #fff5f9;
	transform: translateY(-2px);
}

/* Categories Grid */
.mt-empty-cart__categories {
	border-top: 1px solid #f0f0f0;
	padding-top: 28px;
}

.mt-empty-cart__categories-title {
	font-size: 0.95rem;
	font-weight: 700;
	color: #555;
	margin-bottom: 16px;
}

.mt-empty-cart__categories-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: center;
}

.mt-empty-cart__cat-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: #555;
	font-size: 0.8rem;
	font-weight: 500;
	transition: color 0.2s, transform 0.2s;
	width: 80px;
}

.mt-empty-cart__cat-item:hover {
	color: #e83e8c;
	transform: translateY(-2px);
}

.mt-empty-cart__cat-item img {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	object-fit: cover;
	background: #f8f9fa;
	border: 1px solid #eee;
}

.mt-empty-cart__cat-placeholder {
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: linear-gradient(135deg, #fce4ec, #f8bbd0);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #e83e8c;
}

/* Right: Summary Sidebar */
.mt-empty-cart__summary {
	background: #fff;
	border-radius: 16px;
	border: 1px solid #f0f0f0;
	padding: 28px 24px;
	position: sticky;
	top: 100px;
}

.mt-empty-cart__summary-title {
	font-size: 1.1rem;
	font-weight: 700;
	color: #1a1a2e;
	margin-bottom: 4px;
}

.mt-empty-cart__summary-count {
	font-size: 0.85rem;
	color: #999;
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid #f0f0f0;
}

.mt-empty-cart__summary-rows {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 16px;
}

.mt-empty-cart__summary-row {
	display: flex;
	justify-content: space-between;
	font-size: 0.9rem;
	color: #666;
}

.mt-empty-cart__summary-total {
	display: flex;
	justify-content: space-between;
	padding-top: 16px;
	border-top: 2px solid #f0f0f0;
	margin-bottom: 20px;
	font-weight: 700;
	color: #1a1a2e;
}

.mt-empty-cart__summary-total-price {
	font-size: 1.25rem;
	color: #e83e8c;
}

.mt-empty-cart__summary-btn {
	width: 100%;
	padding: 14px;
	border: none;
	border-radius: 12px;
	font-size: 0.95rem;
	font-weight: 600;
	cursor: not-allowed;
	background: #ddd;
	color: #999;
	margin-bottom: 12px;
}

.mt-empty-cart__summary-note {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.78rem;
	color: #aaa;
	justify-content: center;
}

/* Responsive */
@media (max-width: 768px) {
	.mt-empty-cart__layout {
		grid-template-columns: 1fr;
	}

	.mt-empty-cart__main {
		padding: 32px 16px;
	}

	.mt-empty-cart__illustration img {
		max-width: 160px;
	}

	.mt-empty-cart__title {
		font-size: 1.2rem;
	}

	.mt-empty-cart__actions {
		flex-direction: column;
		align-items: center;
	}

	.mt-empty-cart__btn {
		width: 100%;
		justify-content: center;
	}

	.mt-empty-cart__step-line {
		width: 30px;
	}
}

/* ==========================================================================
   FILLED CART — Premium Card Layout
   ========================================================================== */

/* Progress Steps (shared with empty) */
.mt-cart-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 32px;
	padding: 16px 0;
}

.mt-cart-steps__step {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.mt-cart-steps__num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.85rem;
	font-weight: 700;
	background: #eee;
	color: #999;
}

.mt-cart-steps__step--active .mt-cart-steps__num {
	background: #e83e8c;
	color: #fff;
	box-shadow: 0 4px 12px rgba(232, 62, 140, 0.3);
}

.mt-cart-steps__label {
	font-size: 0.75rem;
	font-weight: 600;
	color: #999;
}

.mt-cart-steps__step--active .mt-cart-steps__label {
	color: #e83e8c;
}

.mt-cart-steps__line {
	width: 60px;
	height: 2px;
	background: #eee;
	margin: 0 8px;
	margin-bottom: 22px;
}

.mt-cart-steps__line--done {
	background: #e83e8c;
}

/* Layout */
.mt-filled-cart__layout {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 28px;
	align-items: flex-start;
}

/* Main Card */
.mt-filled-cart__main {
	background: #fff;
	border-radius: 16px;
	border: 1px solid #f0f0f0;
	overflow: hidden;
}

.mt-filled-cart__header {
	padding: 20px 24px;
	border-bottom: 1px solid #f0f0f0;
}

.mt-filled-cart__title {
	font-size: 1.1rem;
	font-weight: 700;
	color: #1a1a2e;
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.mt-filled-cart__title svg {
	color: #e83e8c;
}

/* Cart Items */
.mt-filled-cart__items {
	padding: 0;
}

.mt-cart-item {
	display: grid;
	grid-template-columns: 90px 1fr auto auto auto auto;
	gap: 16px;
	align-items: center;
	padding: 20px 24px;
	border-bottom: 1px solid #f5f5f5;
	transition: background 0.15s;
}

.mt-cart-item:hover {
	background: #fafafa;
}

.mt-cart-item:last-child {
	border-bottom: none;
}

/* Item Image */
.mt-cart-item__image {
	width: 90px;
	height: 90px;
	border-radius: 12px;
	overflow: hidden;
	background: #f8f9fa;
	flex-shrink: 0;
}

.mt-cart-item__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mt-cart-item__image a {
	display: block;
	width: 100%;
	height: 100%;
}

/* Item Info */
.mt-cart-item__info {
	min-width: 0;
}

.mt-cart-item__name {
	font-size: 0.95rem;
	font-weight: 600;
	color: #333;
	margin-bottom: 4px;
}

.mt-cart-item__name a {
	color: inherit;
	text-decoration: none;
}

.mt-cart-item__name a:hover {
	color: #e83e8c;
}

.mt-cart-item__vendor {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 0.8rem;
	color: #888;
}

.mt-cart-item__vendor svg {
	color: #e83e8c;
	flex-shrink: 0;
}

.mt-cart-item__price-mobile {
	display: none;
}

/* Item Price */
.mt-cart-item__price {
	font-size: 0.9rem;
	font-weight: 500;
	color: #555;
	white-space: nowrap;
}

/* Quantity */
.mt-cart-item__qty {
	display: flex;
	align-items: center;
}

.mt-cart-item__qty .quantity {
	display: flex;
	align-items: center;
}

.mt-cart-item__qty .quantity input[type="number"] {
	width: 56px;
	height: 38px;
	text-align: center;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.9rem;
	font-weight: 600;
	color: #333;
	-moz-appearance: textfield;
}

.mt-cart-item__qty .quantity input[type="number"]::-webkit-inner-spin-button,
.mt-cart-item__qty .quantity input[type="number"]::-webkit-outer-spin-button {
	opacity: 1;
}

/* Subtotal */
.mt-cart-item__subtotal {
	font-size: 0.95rem;
	font-weight: 700;
	color: #1a1a2e;
	white-space: nowrap;
}

/* Remove Button */
.mt-cart-item__remove-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 8px;
	color: #ccc;
	transition: all 0.2s;
	text-decoration: none;
}

.mt-cart-item__remove-btn:hover {
	background: #fee;
	color: #e53935;
}

/* Actions Row */
.mt-filled-cart__actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 24px;
	border-top: 1px solid #f0f0f0;
	background: #fafafa;
	border-radius: 0 0 16px 16px;
}

.mt-filled-cart__coupon {
	display: flex;
	gap: 8px;
	flex: 1;
	max-width: 340px;
}

.mt-filled-cart__coupon-input {
	flex: 1;
	padding: 10px 14px;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.85rem;
	outline: none;
	transition: border-color 0.2s;
}

.mt-filled-cart__coupon-input:focus {
	border-color: #e83e8c;
}

.mt-filled-cart__coupon-btn {
	padding: 10px 18px;
	background: #fff;
	border: 1px solid #e83e8c;
	color: #e83e8c;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
	white-space: nowrap;
}

.mt-filled-cart__coupon-btn:hover {
	background: #e83e8c;
	color: #fff;
}

.mt-filled-cart__update-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 18px;
	background: #f5f5f5;
	border: 1px solid #ddd;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 600;
	color: #555;
	cursor: pointer;
	transition: all 0.2s;
	white-space: nowrap;
}

.mt-filled-cart__update-btn:hover {
	background: #eee;
	border-color: #ccc;
}

/* Sidebar — Cart Totals Override */
.mt-filled-cart__sidebar {
	position: sticky;
	top: 100px;
	width: 100%;
	min-width: 0;
}

.mt-filled-cart__sidebar .cart-collaterals {
	width: 100%;
}

.mt-filled-cart__sidebar .cart_totals {
	background: #fff;
	border-radius: 16px;
	border: 1px solid #f0f0f0;
	padding: 24px;
	width: 100% !important;
	float: none !important;
}

.mt-filled-cart__sidebar .cart_totals h2 {
	font-size: 1.1rem;
	font-weight: 700;
	color: #1a1a2e;
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid #f0f0f0;
}

.mt-filled-cart__sidebar .cart_totals table {
	width: 100%;
	border: none;
}

.mt-filled-cart__sidebar .cart_totals table th,
.mt-filled-cart__sidebar .cart_totals table td {
	padding: 10px 0;
	border: none;
	font-size: 0.9rem;
}

.mt-filled-cart__sidebar .cart_totals table th {
	font-weight: 500;
	color: #666;
	text-align: left;
}

.mt-filled-cart__sidebar .cart_totals table td {
	text-align: right;
	color: #333;
	font-weight: 600;
}

.mt-filled-cart__sidebar .cart_totals .order-total th {
	font-weight: 700;
	color: #1a1a2e;
	font-size: 1rem;
	padding-top: 16px;
	border-top: 2px solid #f0f0f0;
}

.mt-filled-cart__sidebar .cart_totals .order-total td {
	font-weight: 800;
	color: #e83e8c;
	font-size: 1.25rem;
	padding-top: 16px;
	border-top: 2px solid #f0f0f0;
}

.mt-filled-cart__sidebar .wc-proceed-to-checkout {
	padding: 0;
	margin-top: 20px;
}

.mt-filled-cart__sidebar .wc-proceed-to-checkout a.checkout-button {
	display: block;
	width: 100%;
	padding: 14px;
	background: #e83e8c;
	color: #fff;
	border: none;
	border-radius: 12px;
	font-size: 1rem;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	transition: all 0.25s;
	box-sizing: border-box;
}

.mt-filled-cart__sidebar .wc-proceed-to-checkout a.checkout-button:hover {
	background: #c2185b;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(232, 62, 140, 0.3);
}

/* Hide cross-sells in sidebar (they display below on full width) */
.mt-filled-cart__sidebar .cross-sells {
	display: none;
}

/* WooCommerce notices inside cart */
.woocommerce-cart .woocommerce-notices-wrapper {
	margin-bottom: 16px;
}

/* ---- Filled Cart Responsive ---- */
@media (max-width: 1024px) {
	.mt-filled-cart__layout {
		grid-template-columns: 1fr;
	}

	.mt-filled-cart__sidebar {
		position: static;
	}
}

@media (max-width: 768px) {
	.mt-cart-steps__line {
		width: 30px;
	}

	.mt-cart-item {
		grid-template-columns: 80px 1fr auto;
		grid-template-rows: auto auto;
		gap: 8px 12px;
		padding: 16px;
	}

	.mt-cart-item__image {
		width: 80px;
		height: 80px;
		grid-row: 1 / 3;
	}

	.mt-cart-item__info {
		grid-column: 2 / 4;
	}

	.mt-cart-item__price {
		display: none;
	}

	.mt-cart-item__price-mobile {
		display: block;
		font-size: 0.85rem;
		font-weight: 600;
		color: #e83e8c;
		margin-top: 4px;
	}

	.mt-cart-item__qty {
		grid-column: 2;
		grid-row: 2;
	}

	.mt-cart-item__subtotal {
		grid-column: 3;
		grid-row: 2;
		text-align: right;
	}

	.mt-cart-item__remove {
		position: absolute;
		top: 12px;
		right: 12px;
	}

	.mt-cart-item {
		position: relative;
	}

	.mt-filled-cart__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.mt-filled-cart__coupon {
		max-width: 100%;
	}

	.mt-filled-cart__header {
		padding: 16px;
	}

	.mt-filled-cart__sidebar .cart_totals {
		padding: 20px 16px;
	}
}
