/* Tofter — página de Carrito (2026-07-31): tarjetas con elevación, menos "de stock". */

.woocommerce-cart-form table.shop_table {
	border: 1px solid var(--tofter-line);
	border-radius: var(--tofter-radius-lg);
	box-shadow: var(--tofter-shadow-sm);
	background: #fff;
	border-collapse: separate;
	border-spacing: 0;
}
.woocommerce-cart-form table.shop_table thead th {
	background: var(--tofter-cloud);
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: .04em;
	padding: 14px 16px;
}
.woocommerce-cart-form table.shop_table thead th:first-child {
	border-top-left-radius: var(--tofter-radius-lg);
}
.woocommerce-cart-form table.shop_table thead th:last-child {
	border-top-right-radius: var(--tofter-radius-lg);
}
.woocommerce-cart-form table.shop_table td {
	padding: 14px 16px;
}
.woocommerce-cart-form .product-thumbnail img {
	border-radius: var(--tofter-radius-sm);
	border: 1px solid var(--tofter-line);
}
.woocommerce-cart-form .product-subtotal .woocommerce-Price-amount {
	color: var(--tofter-celeste-dark);
	font-weight: 700;
}

/* --- Totales del carrito: SIN card propia, pegado debajo de los productos como
   un subtotal mas (a pedido del usuario -- una card separada se sentia como
   demasiada separacion visual para lo poco que queda ahi: el total y el boton). --- */
.cart_totals,
.cart-content-wrapper,
.cart-totals-inner {
	background: none !important;
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
}
/* La tabla interna de totales (Subtotal/Envio, ocultos por CSS mas abajo) tambien
   traia su propio marco de tabla -- sin borde/fondo, solo debe quedar la fila Total. */
.cart_totals table.shop_table {
	border: none !important;
	box-shadow: none !important;
	background: none !important;
}
.cart_totals table.shop_table td,
.cart_totals table.shop_table th {
	padding: 4px 0 !important;
}
.cart_totals {
	padding: 18px 4px 0;
	border-top: 1px solid var(--tofter-line) !important;
	margin-top: 4px;
}
.cart_totals h2 {
	display: none;
}
.cart_totals .order-total .woocommerce-Price-amount {
	color: var(--tofter-celeste-dark);
	font-weight: 700;
	font-size: 1.2em;
}
.cart_totals .checkout-button {
	background: var(--tofter-celeste) !important;
	border-color: var(--tofter-celeste) !important;
	color: #0c2230 !important;
	border-radius: var(--tofter-radius-sm) !important;
	font-weight: 700 !important;
	transition: background-color .15s ease, transform .1s ease;
}
.cart_totals .checkout-button:hover {
	background: var(--tofter-celeste-dark) !important;
	transform: translateY(-1px);
}

/* --- Cupón: campo + botón con el mismo radio que el resto del sitio --- */
.woocommerce-cart-form .coupon .input-text {
	border-radius: var(--tofter-radius-sm);
	border-color: var(--tofter-line);
}
.woocommerce-cart-form .coupon button {
	border-radius: var(--tofter-radius-sm) !important;
}

/* --- Barra de progreso de envío gratis + oferta exclusiva: bordes suaves, sin ángulos rectos --- */
.wd-shipping-progress-bar,
.woocommerce-cart-form ~ * .wd-shipping-progress-bar {
	border-radius: var(--tofter-radius-md);
	overflow: hidden;
}
.wd-progress-bar {
	border-radius: var(--tofter-radius-md) !important;
}


/* ============================================================
   Ronda 2026-08-01: carrito mas cercano a una card de app (ref. Adidas) en
   mobile. WoodMart YA trae su propio layout responsive de carrito con imagen
   (clase "shop-table-with-img": imagen y boton de quitar en posicion absoluta,
   el resto en columna) -- en vez de reemplazarlo con un grid propio (que
   colisiona con esas posiciones absolutas), se afina ENCIMA de ese patron:
   fondo de card, se oculta el subtotal duplicado y las etiquetas
   "Precio:"/"Cantidad:", precio con mas peso visual.
   ============================================================ */
@media (max-width: 768.98px) {
	.woocommerce-cart-form table.shop_table.shop_table_responsive {
		border: none;
		box-shadow: none;
		background: transparent;
	}
	.woocommerce-cart-form table.shop_table.shop_table_responsive tr.woocommerce-cart-form__cart-item {
		background: var(--tofter-cloud);
		border-radius: var(--tofter-radius-md);
		border-bottom: none !important;
		padding: 14px 14px 14px 129px !important;
		margin-bottom: 12px;
	}
	.woocommerce-cart-form table.shop_table.shop_table_responsive td:before {
		content: none !important;
	}
	.woocommerce-cart-form table.shop_table.shop_table_responsive td {
		border-bottom: none !important;
		padding: 2px 0 !important;
	}
	.woocommerce-cart-form td.product-thumbnail {
		inset-inline-start: 14px !important;
		top: 14px !important;
	}
	.woocommerce-cart-form td.product-name {
		font-weight: 600;
		font-size: 14px;
	}
	.woocommerce-cart-form .product-price .amount {
		color: var(--tofter-celeste-dark);
		font-weight: 700;
		font-size: 15px;
	}
}
/* El filtro PHP deja el subtotal vacio cuando la cantidad es 1 (para no repetir el
   mismo numero que el precio) -- si esta vacio, no ocupa espacio ni fila. */
.woocommerce-cart-form td.product-subtotal:empty {
	display: none !important;
}

/* --- Boton "Ir a pagar": CTA unico y claro, con flecha (desktop + mobile). --- */
.cart_totals .checkout-button {
	display: flex !important;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 16px !important;
	font-size: 15px !important;
}
.cart_totals .checkout-button::after {
	content: "→";
	font-size: 18px;
	line-height: 1;
}


/* ============================================================
   Ronda 2026-08-01 (continuación 18): carrito reducido a lo esencial, a
   pedido del usuario -- el cupón, la dirección de envío y el desglose de
   totales pertenecen al checkout, no al carrito. El carrito solo debe
   mostrar los productos + el total a pagar + un solo botón de accion.
   ============================================================ */
body.woocommerce-cart .woocommerce-cart-form .cart-actions .coupon,
body.woocommerce-cart .woocommerce-cart-form .cart-actions .wd-coupon-form {
	display: none !important;
}
body.woocommerce-cart .cart_totals .cart-subtotal {
	display: none !important;
}
body.woocommerce-cart .cart_totals .order-total {
	border-top: none !important;
}
/* Fila de envio: el link "Calcular envío" (WooCommerce, sin accion real util aca ya
   que el calculo real pasa en el checkout) se reemplaza por una linea de texto fija.
   Cubre tr.shipping (sin metodo disponible aun, muestra la calculadora) y
   tr.woocommerce-shipping-totals.shipping (cuando SI hay metodo resuelto) -- WooCommerce
   usa nombres de clase distintos segun si ya sabe el destino del pedido o no. */
body.woocommerce-cart .cart_totals tr.shipping .shipping-calculator-button,
body.woocommerce-cart .cart_totals tr.shipping .shipping-calculator-form,
body.woocommerce-cart .cart_totals tr.shipping ul.woocommerce-shipping-methods,
body.woocommerce-cart .cart_totals tr.shipping .woocommerce-shipping-destination {
	display: none !important;
}
body.woocommerce-cart .cart_totals tr.shipping td:empty::before,
body.woocommerce-cart .cart_totals tr.shipping td::before {
	content: 'Si hubieran costos de envío se calcularán en el siguiente paso.';
	display: block;
	font-size: 13px;
	color: var(--tofter-ink-soft);
}


/* --- Menu de 3 puntos por producto: reemplaza el boton suelto de eliminar. --- */
body.woocommerce-cart .product-remove {
	display: none !important;
}
.tofter-cart-item-menu {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
}
@media (min-width: 769px) {
	.tofter-cart-item-menu {
		position: relative;
		display: inline-block;
		margin-inline-start: 8px;
	}
}
.tofter-cart-item-menu-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: none;
	background: #fff;
	color: var(--tofter-ink-soft);
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
}
.tofter-cart-item-menu-toggle:hover {
	background: var(--tofter-line);
}
.tofter-cart-item-menu-dropdown {
	position: absolute;
	top: calc(100% + 4px);
	right: 0;
	min-width: 200px;
	background: #fff;
	border: 1px solid var(--tofter-line);
	border-radius: var(--tofter-radius-sm);
	box-shadow: var(--tofter-shadow-md);
	padding: 6px;
	z-index: 10;
}
.tofter-menu-action {
	display: block;
	width: 100%;
	text-align: left;
	padding: 9px 10px;
	border: none;
	background: none;
	border-radius: var(--tofter-radius-sm);
	/* Valores EXPLICITOS, no "inherit": WoodMart tiene reglas propias para <button> con mas
		especificidad que pisaban el inherit (Inter vs Oswald + mayusculas en uno si y otro no) --
		habia que igualar a la fuerza, heredar no alcanzaba. */
	font-family: 'Inter', Arial, Helvetica, sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	color: var(--tofter-ink);
	cursor: pointer;
	text-decoration: none;
}
.tofter-menu-action:hover {
	background: var(--tofter-cloud);
}
.tofter-menu-action.tofter-menu-indent {
	padding-inline-start: 22px;
	font-size: 12.5px;
	color: var(--tofter-ink-soft);
}
.tofter-menu-group-label {
	padding: 9px 10px 2px;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--tofter-ink-soft);
	font-weight: 700;
}
.tofter-menu-action.tofter-menu-danger {
	color: #c0392b;
}
.tofter-menu-action.tofter-menu-danger:hover {
	background: #fdf0ee;
}


/* --- Precio con descuento (precio original tachado + oferta + %) en el carrito --- */
.tofter-price-regular {
	display: block;
	font-size: 12px;
	color: var(--tofter-ink-soft);
	text-decoration: line-through;
}
.tofter-price-sale {
	display: inline-block;
	color: var(--tofter-celeste-dark);
	font-weight: 700;
}
.tofter-price-discount {
	display: inline-block;
	margin-inline-start: 6px;
	padding: 1px 6px;
	border-radius: 999px;
	background: #fdecea;
	color: #c0392b;
	font-size: 11px;
	font-weight: 700;
}

/* --- Cantidad visible (texto), stepper real oculto salvo que se use "Editar cantidad" --- */
.tofter-cart-qty-label {
	display: block;
	margin-top: 2px;
	font-size: 12px;
	color: var(--tofter-ink-soft);
}
.product-quantity .quantity {
	display: none !important;
}
.product-quantity .quantity.tofter-qty-editing {
	display: block !important;
	margin-top: 6px;
}
.product-quantity .quantity.tofter-qty-editing input.qty {
	width: 70px;
	border-radius: var(--tofter-radius-sm);
	border: 1px solid var(--tofter-line);
	padding: 6px 8px;
}
