#sofona-cart-overlay,
#sofona_cart_ajaxLoadAnimate {
	position: fixed;
	left: 0;
	top: 40%;
	right: 0;
	z-index: 65533;
	opacity: 0.5;
}

#sofona-cart-overlay::after,
#sofona_cart_ajaxLoadAnimate::after {
	content: " ";
	position: absolute;
	left: 50%;
	top: 40%;
	margin-left: -32px;
	display: block;
	width: 64px;
	height: 64px;
	margin: 8px;
	border-radius: 50%;
	border: 6px solid #fff;
	border-color: #888 transparent #888 transparent;
	animation: sofona-cart-dual-ring 1.2s linear infinite;
}

@keyframes sofona-cart-dual-ring {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

div.sofona-cart-popup-content {
	overflow-y: auto;
	height: calc(80vh - 50px);
	padding: 0 5px;
}

div.sofona-cart-popup-error {
	background-color: #F2DEDE;
	border: 1px solid #EED3D7;
	border-radius: 4px;
	color: #B94A48;
	margin-bottom: 18px;
	padding: 8px 35px 8px 14px;
	font-size: 14px;
	display: none;
}

.sofona-cart-popup .quantity input.inputbox {
	padding: 5px;
	width: 65px;
}

.sofona-cart-msg-item .img {
	flex: 0 0 150px;
	text-align: center;
}

.sofona-cart-msg-item .info {
	flex: 1 1 auto;
	padding-left: 25px;
}

.sofona-cart-msg-item .image {
	max-width: 100%;
	aspect-ratio: var(--img-aspect-ratio, 1/1);
	object-fit: var(--object-fit, cover);
}

.sofona-cart-msg-item .price {
	font-size: 24px;
	line-height: 100%;
	font-weight: 600;
}

.sofona-cart-msg-item .attr_act .name {
	width: 100px;
}

.sofona-cartajax-module .module-item {
	position: relative;
	list-style: none;
	margin-bottom: 10px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.sofona-cartajax-module .module-item-remove {
	cursor: pointer;
	display: inline-block;
	width: 16px;
	height: 16px;
	background: currentColor;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 4l8 8M12 4l-8 8' stroke='black' stroke-width='2'/%3E%3C/svg%3E") center / contain no-repeat;
}

.sofona-cartajax-module .no-products-msg[ca-prodcount="0"],
.sofona-cartajax-module .module-bottom[ca-prodcount="0"] .module-checkout {
	display: block;
}

.sofona-cartajax-module .no-products-msg:not([ca-prodcount="0"]) {
	display: none;
}

.sofona-cartajax-module .module-bottom[ca-prodcount="0"] {
	display: none;
}

.sofona-cartajax-module-icon .inner {
	display: flex;
	align-items: center;
	gap: 8px;
}

.sofona-cartajax-module-icon .module-count .val {
	min-width: 1.5em;
	display: inline-block;
	text-align: center;
	font-weight: 600;
}

.product_in_cart.red {
	color: #c00;
	display: inline-block;
	margin-bottom: 4px;
}

.ca_qty_input {
	display: inline-block;
	margin-right: 6px;
}

@media (max-width: 480px) {
	.sofona-cart-msg-item .img {
		flex: 0 0 90px;
	}

	.sofona-cart-msg-item .info {
		padding-left: 15px;
	}

	.sofona-cart-msg-item .descr {
		font-size: 14px;
	}
}
