.bisiesto-floating-cart,
.bisiesto-floating-cart * {
	box-sizing: border-box;
}

.bisiesto-floating-cart {
	position: static;
	height: 0;
	margin: 0;
	padding: 0;
	overflow: visible;
	font-family: var(--wp--preset--font-family--body);
	color: var(--wp--preset--color--body-text);
}

.wp-block-post-content > .bisiesto-floating-cart.alignfull,
.bisiesto-floating-cart.alignfull {
	margin-block: 0;
}

.bisiesto-floating-cart__dock {
	position: fixed;
	right: var(--wp--preset--spacing--20);
	bottom: var(--wp--preset--spacing--20);
	z-index: 9000;
	transform: translateY(calc(100% + var(--wp--preset--spacing--40))) rotate(4deg);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: transform 0.5s cubic-bezier(0.2, 0.9, 0.25, 1.15), opacity 0.3s ease, visibility 0s linear 0.5s;
	will-change: transform;
}

.bisiesto-floating-cart[data-state="open"] .bisiesto-floating-cart__dock {
	transform: none;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: transform 0.5s cubic-bezier(0.2, 0.9, 0.25, 1.15), opacity 0.3s ease, visibility 0s;
}

.bisiesto-floating-cart__card {
	display: block;
	width: 250px;
	padding: var(--wp--preset--spacing--8) var(--wp--preset--spacing--8) var(--wp--preset--spacing--12);
	border-radius: var(--wp--custom--radius--20);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--floating);
	color: inherit;
	text-decoration: none;
}

.bisiesto-floating-cart__card:focus-visible {
	outline: var(--wp--custom--size--border-focus) solid var(--wp--preset--color--focus-ring);
	outline-offset: var(--wp--preset--spacing--4);
}

.bisiesto-floating-cart__lid {
	position: relative;
	display: block;
	width: 100%;
	height: 150px;
	border-radius: var(--wp--custom--radius--16) var(--wp--custom--radius--16) 6px 6px;
	background: var(--wp--preset--color--metal-light);
	box-shadow:
		inset 0 0 0 1px color-mix(in srgb, var(--wp--preset--color--surface-inverse) 6%, transparent),
		inset 0 -6px 0 color-mix(in srgb, var(--wp--preset--color--surface-inverse) 5%, transparent);
	overflow: hidden;
	transition: transform 0.35s ease;
}

.bisiesto-floating-cart__lid::after {
	content: "";
	position: absolute;
	left: var(--wp--preset--spacing--8);
	right: var(--wp--preset--spacing--8);
	bottom: -1px;
	height: 4px;
	border-radius: 4px 4px 0 0;
	background: var(--wp--preset--color--metal-dark);
}

.bisiesto-floating-cart__card:hover .bisiesto-floating-cart__lid {
	transform: rotate(-1.5deg) translateY(-2px);
}

.bisiesto-floating-cart__pin {
	position: absolute;
	transform: translate(-50%, -50%);
}

.bisiesto-floating-cart__pin > span {
	display: block;
}

.bisiesto-floating-cart__pin img {
	display: block;
	max-width: none;
	height: auto;
	filter: var(--wp--custom--filter--clac);
}

.bisiesto-floating-cart__swatch {
	display: block;
	border-radius: var(--wp--custom--radius--8);
	box-shadow: inset 0 0 0 3px var(--accent, var(--wp--preset--color--surface));
	filter: var(--wp--custom--filter--clac);
}

.bisiesto-floating-cart__more {
	position: absolute;
	top: var(--wp--preset--spacing--8);
	right: var(--wp--preset--spacing--8);
	padding: var(--wp--preset--spacing--2) var(--wp--preset--spacing--8);
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--surface-inverse);
	color: var(--wp--preset--color--on-primary);
	font-size: var(--wp--preset--font-size--caption);
	line-height: var(--wp--custom--line-height--caption);
	font-weight: var(--wp--custom--font-weight--semibold);
}

.bisiesto-floating-cart__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--8);
	margin-block-start: var(--wp--preset--spacing--8);
	padding: 0 var(--wp--preset--spacing--4);
}

.bisiesto-floating-cart__text {
	display: flex;
	flex-direction: column;
	min-width: 0;
	line-height: var(--wp--custom--line-height--caption);
}

.bisiesto-floating-cart__title {
	font-size: var(--wp--preset--font-size--label);
	font-weight: var(--wp--custom--font-weight--medium);
	letter-spacing: var(--wp--custom--letter-spacing--title);
}

.bisiesto-floating-cart__total {
	font-size: var(--wp--preset--font-size--caption);
	color: var(--wp--preset--color--muted-text);
}

.bisiesto-floating-cart__go {
	display: inline-flex;
	flex: none;
	align-items: center;
	gap: var(--wp--preset--spacing--4);
	padding: var(--wp--preset--spacing--8) var(--wp--preset--spacing--12);
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--on-primary);
	font-size: var(--wp--preset--font-size--eyebrow);
	line-height: var(--wp--custom--line-height--eyebrow);
	font-weight: var(--wp--custom--font-weight--medium);
	white-space: nowrap;
}

.bisiesto-floating-cart__go img {
	display: block;
}

.bisiesto-floating-cart__close {
	position: absolute;
	top: calc(var(--wp--preset--spacing--8) * -1);
	left: calc(var(--wp--preset--spacing--8) * -1);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: var(--wp--custom--radius--circle);
	background: var(--wp--preset--color--surface);
	box-shadow: var(--wp--preset--shadow--card), var(--wp--preset--shadow--border);
	cursor: pointer;
}

.bisiesto-floating-cart__close::before {
	content: "";
	position: absolute;
	inset: calc(var(--wp--preset--spacing--8) * -1);
}

.bisiesto-floating-cart__close img {
	display: block;
}

.bisiesto-floating-cart__close:focus-visible,
.bisiesto-floating-cart__tab:focus-visible {
	outline: var(--wp--custom--size--border-focus) solid var(--wp--preset--color--focus-ring);
	outline-offset: var(--wp--preset--spacing--2);
}

.bisiesto-floating-cart__tab {
	position: fixed;
	right: 0;
	bottom: calc(var(--wp--preset--spacing--24) + var(--wp--preset--spacing--4));
	z-index: 9000;
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--8);
	margin: 0;
	padding: var(--wp--preset--spacing--8) var(--wp--preset--spacing--12);
	border: 0;
	border-radius: var(--wp--custom--radius--16) 0 0 var(--wp--custom--radius--16);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--body-text);
	box-shadow: var(--wp--preset--shadow--floating);
	font-family: inherit;
	cursor: pointer;
	transform: translateX(110%);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: transform 0.45s cubic-bezier(0.2, 0.9, 0.25, 1.15), opacity 0.25s ease, visibility 0s linear 0.45s;
}

.bisiesto-floating-cart[data-state="tucked"] .bisiesto-floating-cart__tab {
	transform: none;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: transform 0.45s cubic-bezier(0.2, 0.9, 0.25, 1.15), opacity 0.25s ease, visibility 0s;
}

.bisiesto-floating-cart[data-state="tucked"] .bisiesto-floating-cart__tab:hover {
	transform: translateX(calc(var(--wp--preset--spacing--4) * -1));
}

.bisiesto-floating-cart__mini {
	position: relative;
	display: block;
	width: 38px;
	height: 26px;
	border-radius: 5px 5px 2px 2px;
	background: var(--wp--preset--color--metal-light);
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wp--preset--color--surface-inverse) 6%, transparent);
}

.bisiesto-floating-cart__mini i {
	position: absolute;
	width: 9px;
	height: 9px;
	border-radius: 3px;
	background: var(--wp--preset--color--primary);
}

.bisiesto-floating-cart__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 var(--wp--preset--spacing--4);
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--primary);
	color: var(--wp--preset--color--on-primary);
	font-size: var(--wp--preset--font-size--caption);
	font-weight: var(--wp--custom--font-weight--semibold);
}

.bisiesto-floating-cart__pin.is-new {
	animation: bisiesto-floating-cart-drop 0.55s cubic-bezier(0.2, 0.9, 0.25, 1.3) both;
}

.bisiesto-floating-cart__lid.is-bump {
	animation: bisiesto-floating-cart-bump 0.45s ease;
}

@keyframes bisiesto-floating-cart-drop {
	0% {
		transform: translate(-50%, -160%) scale(1.5) rotate(-20deg);
		opacity: 0;
	}

	60% {
		opacity: 1;
	}

	100% {
		transform: translate(-50%, -50%) scale(1);
	}
}

@keyframes bisiesto-floating-cart-bump {
	0% {
		transform: scale(1);
	}

	35% {
		transform: scale(1.06);
	}

	100% {
		transform: scale(1);
	}
}

@media (max-width: 767px) {
	.bisiesto-floating-cart__dock {
		right: var(--wp--preset--spacing--12);
		bottom: var(--wp--preset--spacing--12);
	}

	.bisiesto-floating-cart__card {
		width: 150px;
		padding: var(--wp--preset--spacing--4) var(--wp--preset--spacing--4) var(--wp--preset--spacing--8);
		border-radius: var(--wp--custom--radius--16);
	}

	.bisiesto-floating-cart__lid {
		height: 90px;
		border-radius: 11px 11px 5px 5px;
	}

	.bisiesto-floating-cart__row {
		padding: 0 var(--wp--preset--spacing--2);
	}

	.bisiesto-floating-cart__title,
	.bisiesto-floating-cart__go-label {
		display: none;
	}

	.bisiesto-floating-cart__total {
		color: var(--wp--preset--color--body-text);
		font-weight: var(--wp--custom--font-weight--medium);
	}

	.bisiesto-floating-cart__go {
		justify-content: center;
		width: 32px;
		height: 32px;
		padding: 0;
	}

	.bisiesto-floating-cart__tab {
		bottom: var(--wp--preset--spacing--16);
	}
}

@media (prefers-reduced-motion: reduce) {
	.bisiesto-floating-cart__dock,
	.bisiesto-floating-cart[data-state="open"] .bisiesto-floating-cart__dock,
	.bisiesto-floating-cart__tab,
	.bisiesto-floating-cart[data-state="tucked"] .bisiesto-floating-cart__tab,
	.bisiesto-floating-cart__lid {
		transition: none;
	}

	.bisiesto-floating-cart__pin.is-new,
	.bisiesto-floating-cart__lid.is-bump {
		animation: none;
	}
}
