/* ==========================================================================
   Cart Page — Mobile first
   ========================================================================== */

/* ---------- Image produit ---------- */

.wc-block-cart-items .wc-block-components-product-image {
	width: 88px;
	flex-shrink: 0;
}

.wc-block-cart-items .wc-block-components-product-image img {
	border-radius: 16px;
}

/* ---------- Nom produit ---------- */

.wc-block-cart-items .wc-block-components-product-name {
	color: var(--color-black);
	font-weight: 500;
	text-decoration: none;
	transition: color var(--transition);
}

.wc-block-cart-items .wc-block-components-product-name:hover {
	color: var(--color-primary);
}

/* ---------- Prix ---------- */

.wc-block-cart-items .wc-block-components-product-price {
	color: var(--color-black);
	font-weight: 500;
}

/* ---------- Masquer les badges inutiles dans le panier ---------- */

.wc-block-cart-items .wc-block-components-product-badge {
	display: none !important;
}

/* Masquer la description courte dans le panier */
.wc-block-cart-items .wc-block-components-product-details {
	display: none !important;
}

/* Masquer le badge stock */
.wc-block-cart-items .wc-block-components-product-metadata {
	display: none !important;
}

/* Espacement entre les infos produit */
.wc-block-cart-items .wc-block-cart-item__product {
	gap: 4px;
}

/* Prix barre + prix promo sur la meme ligne */
.wc-block-cart-items .wc-block-components-product-price {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.wc-block-cart-items .wc-block-components-product-price del {
	color: rgba(34, 34, 34, 0.4);
	font-weight: 400;
	font-size: 0.875rem;
}

.wc-block-cart-items .wc-block-components-product-price ins {
	text-decoration: none;
	font-weight: 500;
}

/* ---------- Lien supprimer ---------- */

/* Icone poubelle — positionnee via la ligne produit */
.wc-block-cart-items .wc-block-cart-items__row {
	position: relative;
}

.wc-block-cart-items .wc-block-cart-item__remove-link {
	position: absolute !important;
	bottom: 16px;
	right: 0;
	z-index: 2;
	width: 32px !important;
	height: 32px !important;
	overflow: hidden;
	text-indent: -9999px;
	text-decoration: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: block !important;
	background: transparent;
	border: none;
}

.wc-block-cart-items .wc-block-cart-item__remove-link::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 18px;
	height: 20px;
	background-color: rgba(34, 34, 34, 0.35);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg width='20' height='22' viewBox='0 0 20 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.25 4.25L16.6303 14.2751C16.4719 16.8364 16.3928 18.1171 15.7508 19.0379C15.4333 19.4931 15.0247 19.8773 14.5507 20.166C13.5921 20.75 12.309 20.75 9.7427 20.75C7.17312 20.75 5.8883 20.75 4.92905 20.1649C4.4548 19.8757 4.046 19.4908 3.72868 19.0348C3.08688 18.1126 3.00945 16.8301 2.85461 14.2652L2.25 4.25M0.75 4.25H18.75M13.8057 4.25L13.1231 2.84173C12.6696 1.90626 12.4428 1.43852 12.0517 1.14681C11.965 1.0821 11.8731 1.02454 11.777 0.9747C11.3439 0.75 10.8241 0.75 9.7845 0.75C8.7188 0.75 8.186 0.75 7.74568 0.98412C7.6481 1.03601 7.55498 1.0959 7.46729 1.16317C7.07164 1.4667 6.85063 1.95155 6.40861 2.92126L5.80292 4.25M7.25 15.25V9.25M12.25 15.25V9.25' stroke='black' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg width='20' height='22' viewBox='0 0 20 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.25 4.25L16.6303 14.2751C16.4719 16.8364 16.3928 18.1171 15.7508 19.0379C15.4333 19.4931 15.0247 19.8773 14.5507 20.166C13.5921 20.75 12.309 20.75 9.7427 20.75C7.17312 20.75 5.8883 20.75 4.92905 20.1649C4.4548 19.8757 4.046 19.4908 3.72868 19.0348C3.08688 18.1126 3.00945 16.8301 2.85461 14.2652L2.25 4.25M0.75 4.25H18.75M13.8057 4.25L13.1231 2.84173C12.6696 1.90626 12.4428 1.43852 12.0517 1.14681C11.965 1.0821 11.8731 1.02454 11.777 0.9747C11.3439 0.75 10.8241 0.75 9.7845 0.75C8.7188 0.75 8.186 0.75 7.74568 0.98412C7.6481 1.03601 7.55498 1.0959 7.46729 1.16317C7.07164 1.4667 6.85063 1.95155 6.40861 2.92126L5.80292 4.25M7.25 15.25V9.25M12.25 15.25V9.25' stroke='black' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	transition: background-color var(--transition);
}

.wc-block-cart-items .wc-block-cart-item__remove-link:hover::before {
	background-color: #dc2626;
}

/* ---------- Selecteur quantite ---------- */

.wc-block-cart-items .wc-block-components-quantity-selector {
	border: 1px solid rgba(34, 34, 34, 0.15);
	border-radius: var(--radius);
	overflow: hidden;
}

.wc-block-cart-items .wc-block-components-quantity-selector input {
	border: none !important;
	box-shadow: none !important;
}

.wc-block-cart-items .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
	color: var(--color-black);
	background: none;
	border: none;
	transition: color var(--transition);
}

.wc-block-cart-items .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button:hover {
	color: var(--color-primary);
	background: none;
}

/* ---------- En-tetes tableau ---------- */

.wc-block-cart .wc-block-cart-items th {
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: rgba(34, 34, 34, 0.5);
	border-bottom: 1px solid rgba(34, 34, 34, 0.1);
	padding-bottom: 16px;
}

/* ---------- Sidebar : Total panier ---------- */

.wc-block-cart__sidebar .wc-block-components-totals-wrapper {
	border-color: rgba(34, 34, 34, 0.1);
}

.wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-family: var(--font-family-head);
	font-size: 1.125rem;
	font-weight: 700;
}

.wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 1.125rem;
	font-weight: 600;
}

/* ---------- Bouton Valider la commande ---------- */

.wc-block-cart__submit-button,
.wc-block-cart .wc-block-cart__submit-button,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button,
.wc-block-cart__submit-container .wc-block-cart__submit-button {
	display: block !important;
	width: 100% !important;
	padding: 16px 24px !important;
	font-size: 0.9375rem !important;
	font-weight: 600 !important;
	text-align: center !important;
	text-transform: uppercase !important;
	letter-spacing: 0.02em !important;
	text-decoration: none !important;
	color: #fff !important;
	background-color: var(--color-primary) !important;
	border: 2px solid var(--color-primary) !important;
	border-radius: var(--radius) !important;
	cursor: pointer;
	transition: background-color var(--transition), border-color var(--transition);
}

.wc-block-cart__submit-button:hover,
.wc-block-cart .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-cart__submit-button:hover,
.wc-block-cart__submit-container .wc-block-cart__submit-button:hover {
	background-color: #b37070 !important;
	border-color: #b37070 !important;
	color: #fff !important;
}

/* ---------- Coupon / Codes promo ---------- */

.wc-block-components-totals-coupon__button {
	color: #fff !important;
	background-color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	border-radius: var(--radius) !important;
}

.wc-block-components-totals-coupon__button:hover {
	background-color: #b37070 !important;
	border-color: #b37070 !important;
}

/* ==========================================================================
   Cart Page — Desktop
   ========================================================================== */

@media (min-width: 768px) {
	.wc-block-cart-items .wc-block-components-product-image {
		width: 104px;
	}
}
