/* Panel lateral de carrito — borrador (paso 1 del flujo de compra).
   Solo se enqueña en el producto de prueba (ver functions.php). */

.pl-panel-carrito {
	position: fixed;
	inset: 0;
	z-index: 9500;
	visibility: hidden;
	pointer-events: none;
}
.pl-panel-carrito.is-open {
	visibility: visible;
	pointer-events: auto;
}

.pl-panel-carrito__overlay {
	position: absolute;
	inset: 0;
	background: rgba(48, 48, 48, .32);
	opacity: 0;
	transition: opacity .25s ease;
}
.pl-panel-carrito.is-open .pl-panel-carrito__overlay {
	opacity: 1;
}

.pl-panel-carrito__hoja {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 432px;
	max-width: 100%;
	background: #fff;
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform .28s ease;
	box-shadow: -30px 0 60px -40px rgba(48, 48, 48, .7);
}
.pl-panel-carrito.is-open .pl-panel-carrito__hoja {
	transform: translateX(0);
}

.pl-panel-carrito__cab {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 22px 26px;
	border-bottom: 1px solid #ece7de;
	flex: 0 0 auto;
}
.pl-panel-carrito__titulo { margin: 0; font-size: 15px; font-weight: 400; }
.pl-panel-carrito__cerrar {
	border: 0; background: none; cursor: pointer;
	font-size: 22px; line-height: 1; color: #6f6f6f; padding: 0;
}

.pl-panel-carrito__cuerpo {
	flex: 1 1 auto;
	overflow-y: auto;
	padding: 24px 26px;
}
.pl-panel-carrito__item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	transition: opacity .2s ease;
}
.pl-panel-carrito__item + .pl-panel-carrito__item { margin-top: 22px; padding-top: 22px; border-top: 1px solid #ece7de; }
.pl-panel-carrito__item img { width: 84px; height: 106px; object-fit: cover; display: block; flex: 0 0 auto; background: #FAF7F2; }
.pl-panel-carrito__item-datos { min-width: 0; flex: 1 1 auto; }
.pl-panel-carrito__item-nombre { margin: 0 0 3px; font-size: 16px; }
.pl-panel-carrito__item-color { margin: 0 0 10px; font-size: 11px; font-weight: 400; letter-spacing: .14em; text-transform: uppercase; color: #6f6f6f; }
.pl-panel-carrito__item-precio { margin: 0; font-size: 16px; font-weight: 400; color: #C6A44F; }

.pl-panel-carrito__stepper { display: flex; align-items: center; border: 1px solid #e4ded3; margin-top: 22px; }
.pl-panel-carrito__stepper button { border: 0; background: none; cursor: pointer; width: 42px; height: 42px; font-size: 16px; color: #303030; }
.pl-panel-carrito__stepper button:disabled { opacity: .4; cursor: default; }
.pl-panel-carrito__stepper span { min-width: 34px; text-align: center; font-size: 15px; font-weight: 400; }

.pl-panel-carrito__filas { display: flex; align-items: center; justify-content: space-between; gap: 16px; }

.pl-panel-carrito__quitar {
	display: inline-block; margin-top: 12px;
	font-size: 12px; font-weight: 400; letter-spacing: .1em; text-transform: uppercase;
	color: #6f6f6f; border-bottom: 1px solid #d8d1c4; padding: 0 0 3px; cursor: pointer;
}
.pl-panel-carrito__bajo { margin: 14px 0 0; background: #f1f8f3; border-left: 1px solid #2F7D45; padding: 13px 16px; font-size: 13px; line-height: 1.6; color: #2F7D45; }
.pl-panel-carrito__vacio { margin: 0; font-size: 14px; line-height: 1.7; color: #6f6f6f; }
.pl-panel-carrito__rellenar { border: 0; background: none; cursor: pointer; font: 300 14px Poppins, sans-serif; color: #C6A44F; padding: 0; text-decoration: underline; }

.pl-panel-carrito__pie { border-top: 1px solid #ece7de; padding: 22px 26px 26px; flex: 0 0 auto; }
.pl-panel-carrito__subtotal { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 6px; }
.pl-panel-carrito__subtotal-label { margin: 0; font-size: 15px; font-weight: 400; }
.pl-panel-carrito__subtotal-valor { margin: 0; font-size: 22px; font-weight: 300; color: #C6A44F; }
.pl-panel-carrito__envio { margin: 0 0 3px; font-size: 13px; color: #6f6f6f; }
.pl-panel-carrito__klarna { margin: 0 0 20px; font-size: 13px; color: #6f6f6f; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.pl-panel-carrito__klarna img { height: 11px; width: auto; display: block; }

.pl-panel-carrito__finalizar {
	display: block; text-align: center; background: #303030; color: #fff;
	font-size: 13px; font-weight: 400; letter-spacing: .16em; text-transform: uppercase;
	padding: 22px 20px; margin-bottom: 14px;
}
.pl-panel-carrito__finalizar, .pl-panel-carrito__finalizar:visited, .pl-panel-carrito__finalizar:focus { color: #fff !important; }
.pl-panel-carrito__finalizar:hover { background: #C6A44F; color: #fff !important; }
.pl-panel-carrito__seguir {
	display: block; width: 100%; text-align: center; font: 300 13px Poppins, sans-serif;
	color: #6f6f6f; padding: 4px 0; border: 0; background: none; cursor: pointer;
}

@media (max-width: 768px) {
	.pl-panel-carrito__hoja {
		top: auto; left: 0; right: 0; width: auto; max-height: 85vh;
		transform: translateY(100%);
		box-shadow: 0 -30px 50px -35px rgba(48, 48, 48, .6);
	}
	.pl-panel-carrito.is-open .pl-panel-carrito__hoja { transform: translateY(0); }
}

/* El panel abierto bloquea el scroll de fondo, como en la maqueta. */
body.pl-panel-abierto { overflow: hidden; }
