/* =========================================================================
 * Cart drawer (added-to-basket) — slides in from the right
 * ========================================================================= */
.wa-cart-drawer { position: fixed; inset: 0; z-index: 100000; }
.wa-cart-overlay {
	position: absolute; inset: 0;
	background: rgba(20, 24, 40, .5);
	opacity: 0; transition: opacity .25s ease;
}
.wa-cart-panel {
	position: absolute; top: 0; right: 0; height: 100%;
	width: 508px; max-width: 92vw;
	background: #fff; display: flex; flex-direction: column;
	transform: translateX(100%); transition: transform .28s ease;
	box-shadow: -4px 0 24px rgba(0, 0, 0, .15);
}
.wa-cart-drawer.is-open .wa-cart-overlay { opacity: 1; }
.wa-cart-drawer.is-open .wa-cart-panel { transform: translateX(0); }
body.wa-cart-open { overflow: hidden; }

/* Header */
.wa-cart-head { display: flex; align-items: center; justify-content: space-between; padding: 24px; }
.wa-cart-head-title { display: flex; align-items: center; gap: 8px; color: #1C7D45; font-size: 20px; font-weight: 400; }
.wa-cart-head-title .uks-icon{display: flex;}
.wa-cart-check { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #137333; color: #fff; font-size: 12px; }
.wa-cart-close { background: none; border: none; font-size: 26px; cursor: pointer; color: #1b1f2a; line-height: 1; }

/* Body */
.wa-cart-body { flex: 1 1 auto; overflow-y: auto; padding:0px 0px 24px 24px; overflow-x: hidden;}
.wa-cart-body .wa-cart-line{margin-bottom: 20px!important;}
.wa-cart-product { display: flex; gap: 10px; padding-right: 24px;}
.wa-cart-product-img { flex: 0 0 108px; width: 110px; height: 110px;}
.wa-cart-product-img img { width: 100%; height: 100px; border: 1px solid #E5E5E5; border-radius: 0px; object-fit: cover;}
.wa-cart-product-title {font-size: 16px; margin: 0 0 4px; color: #000000; font-weight: 400; line-height: 24px; }
/* Two attributes per row (Height | Depth, Number Of Levels | Number Of Bays). */
/* Pair specific attributes side by side (Height | Depth, Number Of Levels |
   Number Of Bays). Everything else (Length, custom "other" attrs, …) stays
   full width. Grid auto-flow then lays the paired ones two-up automatically. */
.wa-cart-attrs { list-style: none; margin: 0; padding: 0; font-size: 14px; color: #000000; font-weight: 400; line-height: 20px; column-gap: 16px; row-gap: 4px; }
.wa-cart-attrs li { margin-bottom: 0; grid-column: 1 / -1; }
.wa-cart-attrs li.wa-attr-height,
.wa-cart-attrs li.wa-attr-depth,
.wa-cart-attrs li.wa-attr-number-of-levels,
.wa-cart-attrs li.wa-attr-number-of-bays { display: inline-block; margin-right: 12px; }
.wa-attr-label { color: #666666; }

.wa-cart-product-actions { display: flex; align-items: center; gap: 10px; margin-top: 16px; flex-wrap: wrap; padding-right: 24px;}
.wa-cart-remove {font-size: 16px; color: #333333; text-decoration: none; border: 1px solid #E5E5E5; border-radius: 4px; padding: 8px 9.5px; font-weight: 400; display: flex; align-items: center; gap: 4px;
    flex-direction: row-reverse;}
.wa-cart-remove .uks-icon{display: flex;}
.uks-product-price{display: flex; flex-direction: column;}
.wa-cart-qty-text{font-size: 14px; font-weight: 400; line-height: 20px; color: #000000;}
.wa-cart-qty-text .wa-cart-qty-label{color: #666666!important;}
.wa-cart-unit-price{font-size: 14px; line-height: 20px; font-weight: 400; color: #666666;}
.wa-cart-unit-price .wts-price-container{color: #000000;}
.wa-cart-unit-price .wts-price-container del{color: #666666!important; font-size: 12px;}
.wa-cart-unit-price .wts-vat-text{color: #666666!important;}
.wa-cart-qty { display: flex; align-items: center; border: 1px solid #CCCCCC; border-radius: 0px; width: 100%; justify-content: space-between; max-width: 152px;}
.wa-cart-qty button { background: none; border: none; width: 32px; height: 38px; cursor: pointer; font-size: 16px; }
.wa-cart-qty button.disabled { opacity: .4; pointer-events: none; cursor: default; }
.wa-qty-input { width: 40px; border: none; text-align: center; background: transparent; color: #000000; font-size: 20px; font-weight: 400; }
.wa-cart-price { font-size: 16px; font-weight: 600; margin-left: auto; color: #333333; line-height: 20px;}
.wa-cart-price ins, .wa-cart-unit-price ins{text-decoration: none!important;}
.wa-cart-price del{font-size: 14px; font-weight: 600; color: #666666;}
.wa-cart-price .wts-price-wrapper{display: block;}

.wa-cart-divider { border: none; /*border-top: 1px solid #D4DBE2;*/ margin: 24px 0; width: 95%; height: 1px; background-color: #D4DBE2;}

/* Recommendations */
.wa-cart-recs { margin-bottom: 18px; }
.wa-cart-recs-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; padding-right: 24px;}
.wa-cart-recs-head h4 { font-size: 20px; font-weight: 400; line-height: 20px; color: #000000; margin: 0; }
.wa-cart-recs-actions { display: flex; align-items: center; gap: 8px; }
.wa-cart-recs-viewall { background: none; border: none; cursor: pointer; color: #333333; font-size: 16px; font-weight: 400; line-height: 24px; text-decoration: underline !important; padding: 0; }
.wa-cart-recs-arrow {
	flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; border: none;
	background: #CCCCCC; font-size: 0; line-height: 1; cursor: pointer;
	mask-image: url(../images/slider-right-arrow.svg); -webkit-mask-image: url(../images/slider-right-arrow.svg);
	mask-repeat: no-repeat; mask-position: center; mask-size: 12px; opacity: 1;
}
.wa-cart-recs-arrow.wa-cart-recs-arrow--active{background: #666666;}
.wa-cart-recs-arrow:hover { background: #666666; }
.wa-cart-recs-prev { transform: rotate(180deg); }
/* Horizontal slider: track scrolls, ~2 cards visible at a time. */
.wa-cart-recs-viewport { overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; scroll-behavior: smooth; }
.wa-cart-recs-viewport::-webkit-scrollbar { display: none; }
.wa-cart-recs-track { display: flex; gap: 12px; margin-right: -200px;}
.wa-cart-rec-card {border: 1px solid #E5E5E5; border-radius: 4px; padding: 12px; text-decoration: none; color: inherit; display: block; flex: 0 0 calc((100% - 24px) / 3); box-sizing: border-box;}
.wa-cart-rec-card:hover { border-color: #122a6b; }
.wa-cart-rec-img{padding: 10px 0px; border-bottom: 1px solid #E5E5E5; margin-bottom: 12px;}
.wa-cart-rec-img img { width: 100%; height: 157px; object-fit: contain; }
.wa-cart-rec-name {font-size: 16px; margin: 8px 0px 20px 0px; font-weight: 400; line-height: 24px; color: #000000; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
    overflow: hidden;  height: 48px; }
.wa-cart-rec-price { font-size: 13px; font-weight: 700; }
.wa-cart-rec-price { font-size: 16px; font-weight: 600; color: #000000; width: 100%; position: relative;}
.wa-cart-rec-price:before{content: ''; position: absolute; top: 17px; right: 11px; width: 15px; height: 12px; mask-image: url(../images/product-grid-box-arrow.svg); -webkit-mask-image: url(../images/product-grid-box-arrow.svg); mask-repeat: no-repeat; mask-size: auto; mask-position: center; background-color: #142E71;}
.wa-cart-rec-price:hover:before{background-color: #000000;}
.wa-cart-rec-price .wts-price-container{width: 100% !important; display: grid;}
.wts-price-wrapper .wts-vat-text{font-size: 14px; line-height: 19px; color: #919191; font-weight: 400; font-family: 'Jost';}

/* Footer */
.wa-cart-footer { padding: 24px; background: #fff; box-shadow: 0px -4px 4px 0px #0000001A; }
.wa-cart-checkout { display: block; text-align: center; background: #BF161C; color: #fff; padding: 8px 14px; border-radius: 6px; font-weight: 400; font-size: 20px; line-height: 32px; }
.wa-cart-checkout:hover { filter: brightness(.94); }
.wa-cart-continue { display: block; width: 100%; text-align: center; background: none; border: none; margin-top: 10px; cursor: pointer; text-decoration: underline; color: #000000; font-size: 16px;
	font-weight: 400; }

@media (max-width: 480px) { 
	.wa-cart-panel { width: 100%; max-width: 100vw; margin-top: 50px; transform: translateY(100%)!important;} 
	.wa-cart-footer {padding: 24px 24px 74px 24px;}

		
	.wa-cart-drawer.is-open .wa-cart-panel {transform: translateY(0)!important;}
}

@media(max-width:767px){
	.wa-cart-recs-track{margin-right: -410px!important;}
	.wa-cart-recs-actions .wa-cart-recs-arrow{display: none!important;}
}
