/*
 * Peptilab — Mini Cart Drawer
 * Styled to match the Figma design (Shopping Cart)
 * Depends on: variables.css
 */

/* ============================================================
   Drawer wrapper
   ============================================================ */
.wc-block-mini-cart__drawer {
	--wc-mini-cart-padding: 24px;
}

.wp-block-woocommerce-mini-cart-contents {
	padding:    0 !important;
	display:    flex !important;
	flex-direction: column;
	/* 100vh on mobile includes the area under the browser URL bar / home
	   indicator, so the checkout button hides behind it. dvh adapts to
	   the actually-visible viewport; safe-area padding handles notches. */
	height:     100vh;
	height:     100dvh;
	max-height: 100vh;
	max-height: 100dvh;
	padding-bottom: env(safe-area-inset-bottom) !important;
}

/* ============================================================
   Close button
   ============================================================ */
.wc-block-components-drawer__close-wrapper {
	position: absolute;
	top:      20px;
	right:    20px;
	z-index:  10;
}

.wc-block-components-drawer__close {
	width:           32px !important;
	height:          32px !important;
	padding:         0 !important;
	background:      transparent !important;
	border:          none !important;
	border-radius:   50% !important;
	display:         flex !important;
	align-items:     center;
	justify-content: center;
	color:           #1A1A1A !important;
	transition:      background .2s ease;
}

.wc-block-components-drawer__close:hover {
	background: rgba(26, 26, 26, .06) !important;
}

.wc-block-components-button.wc-block-components-drawer__close {
	top:     0 !important;
	right:   0 !important;
	margin:  0 !important;
	opacity: 1 !important;
}

.wc-block-components-drawer__close svg,
.wc-block-components-drawer__close svg path {
	position: absolute;
	width:  20px;
	height: 20px;
	fill:   currentColor;
}

/* ============================================================
   Title: "Shopping Cart (N)"
   ============================================================ */
.wc-block-mini-cart__title {
	display:         flex !important;
	align-items:     center !important;
	gap:             12px;
	padding:         24px !important;
	margin:          0 !important;
	font-family:     var(--pl-font-body) !important;
	font-size:       20px !important;
	font-weight:     600 !important;
	line-height:     1.4 !important;
	color:           #1A1A1A !important;
	border-bottom:   1px solid #CACDD3 !important;
	/* Kill WC's linear-gradient mask that fades out the title bottom. */
	-webkit-mask-image: none !important;
	mask-image:         none !important;
}

.wp-block-woocommerce-mini-cart-title-label-block {
	font-size:   18px;
	font-weight: 600;
	color:       #1A1A1A;
}

/* Items counter — circular badge */
.wp-block-woocommerce-mini-cart-title-items-counter-block {
	display:         inline-flex !important;
	align-items:     center;
	justify-content: center;
	min-width:       24px;
	height:          24px;
	padding:         0;
	background:      var(--pl-accent, #537FF4) !important;
	color:           #F7F9FC !important;
	border-radius:   50px;
	font-size:       12px !important;
	font-weight:     600;
	line-height:     1;
}

/* Hide literal "(items: N)" text — we want just the number */
.wp-block-woocommerce-mini-cart-title-items-counter-block {
	font-size: 12px !important;
}

/* ============================================================
   Scrollable items container
   ============================================================ */
.wp-block-woocommerce-filled-mini-cart-contents-block {
	flex:       1;
	display:    flex !important;
	flex-direction: column;
	overflow:   hidden;
	padding:    0 !important;
}

.wc-block-mini-cart__items {
	flex:       1;
	overflow-y: auto;
	padding:    0 24px !important;
}

/* ============================================================
   Cart items list — remove table styling
   ============================================================ */
.wc-block-cart-items,
.wc-block-mini-cart-items {
	display: block !important;
	width:   100%;
	border-collapse: collapse;
	border:  none !important;
}

.wc-block-cart-items thead,
.wc-block-mini-cart-items thead {
	display: none !important;
}

.wc-block-cart-items tbody,
.wc-block-mini-cart-items tbody {
	display: block;
}

.wc-block-cart-items__row {
	display:        grid !important;
	grid-template-columns: 80px 1fr auto;
	gap:            20px;
	padding:        16px 0 !important;
	border:         none !important;
	border-bottom:  1px solid #CACDD3 !important;
	align-items:    center;
}

.wc-block-cart-items__row:last-child {
	border-bottom: none !important;
}

/* ── Image cell — 80×80, image centered via flex + object-fit:contain ── */
.wc-block-cart-item__image {
	display:         flex !important;
	align-items:     center;
	justify-content: center;
	width:           80px;
	height:          80px;
	padding:         0 !important;
	background:      #fff;
	border-radius:   12px;
	overflow:        hidden;
	border:          1px solid rgba(26, 26, 26, .06);
}

.wc-block-cart-item__image a,
.wc-block-cart-item__image img {
	width:      100%;
	height:     100%;
	object-fit: contain;
	object-position: center;
	padding:    0;
	box-sizing: border-box;
}

/* Only elements NOT marked hidden render as block — WC's Interactivity API
   toggles two <img>s (one direct + one inside <a>) via the hidden attribute
   / data-wp-bind--hidden. Without this guard, display:block would override
   the UA's [hidden]{display:none} rule and both images show at once. */
.wc-block-cart-item__image a:not([hidden]),
.wc-block-cart-item__image img:not([hidden]) {
	display: block;
}

.wc-block-cart-item__image [hidden] {
	display: none !important;
}

/* ── Product details cell ── */
.wc-block-cart-item__product {
	display: block !important;
	padding: 0 !important;
}

.wc-block-cart-item__wrap {
	display:        flex !important;
	flex-direction: column;
	gap:            4px;
}

.wc-block-components-product-name {
	font-family:     var(--pl-font-body) !important;
	font-size:       14px !important;
	font-style:      normal !important;
	font-weight:     400 !important;
	line-height:     20px !important;
	color:           #1A1A1A !important;
	text-decoration: none !important;
	margin:          0 !important;
}

.wc-block-components-product-name:hover {
	color: var(--pl-accent) !important;
}

/* Price below name */
.wc-block-cart-item__prices {
	margin: 0 !important;
}

.wc-block-cart-item__prices .wc-block-components-product-price,
.wc-block-cart-item__prices .wc-block-components-product-price__value {
	font-family: var(--pl-font-body) !important;
	font-size:   14px !important;
	font-style:  normal !important;
	font-weight: 600 !important;
	line-height: 20px !important;
	color:       #1A1A1A !important;
}

/* Hide product metadata (description, variations) in mini-cart */
.wc-block-components-product-metadata {
	display: none !important;
}

/* ── Quantity selector + Remove button row ── */
.wc-block-cart-item__quantity {
	display:     flex !important;
	align-items: center;
	gap:         12px;
	margin-top:  8px;
}

.wc-block-components-quantity-selector {
	display:         inline-flex !important;
	align-items:     center;
	gap:             8px;
	background:      transparent !important;
	border:          none !important;
	border-radius:   0 !important;
	padding:         0;
	height:          auto;
	min-width:       0;
}

.wc-block-components-quantity-selector__input {
	width:       24px !important;
	min-width:   24px !important;
	height:      24px !important;
	background:  transparent !important;
	border:      none !important;
	text-align:  center !important;
	font-family: var(--pl-font-body) !important;
	font-size:   14px !important;
	font-style:  normal !important;
	font-weight: 500 !important;
	line-height: 20px !important;
	color:       #1A1A1A !important;
	padding:     0 !important;
	-moz-appearance:    textfield;
	-webkit-appearance: none;
}

.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.wc-block-components-quantity-selector__button {
	width:           24px !important;
	min-width:       24px !important;
	height:          24px !important;
	padding:         0 !important;
	background:      transparent !important;
	border:          1px solid #CACDD3 !important;
	border-radius:   8px !important;
	font-size:       16px !important;
	line-height: 1;
	font-weight:     400 !important;
	color:           #1A1A1A !important;
	cursor:          pointer;
	display:         flex !important;
	align-items:     center;
	justify-content: center;
	transition:      color .2s ease, border-color .2s ease;
}

.wc-block-components-quantity-selector__button:hover:not(:disabled) {
	color: var(--pl-accent) !important;
}

.wc-block-components-quantity-selector__button:disabled {
	opacity: .3;
	cursor:  default;
}

/* Remove (trash) button */
.wc-block-cart-item__remove-link {
	width:           32px;
	height:          32px;
	padding:         0 !important;
	background:      transparent !important;
	border:          none !important;
	border-radius:   50%;
	display:         inline-flex;
	align-items:     center;
	justify-content: center;
	color:           #6E7787 !important;
	cursor:          pointer;
	transition:      color .2s ease, background .2s ease;
}

.wc-block-cart-item__remove-link:hover {
	color:      #E53935 !important;
	background: rgba(229, 57, 53, .08) !important;
}

.wc-block-cart-item__remove-link svg {
	width:  18px;
	height: 18px;
}

/* ── Total cell — hide in mini-cart only (price is already shown in details) ── */
.wp-block-woocommerce-mini-cart-contents .wc-block-cart-item__total {
	display: none !important;
}

/* ============================================================
   "Add To Bag" — related products carousel inside mini cart
   ============================================================ */
.wp-block-woocommerce-mini-cart-contents .wp-block-woocommerce-product-collection {
	margin:     24px 0 0 !important;
	padding:    24px 0 !important;
	background: transparent;
	border-top: 1px solid rgba(26, 26, 26, .08);
}

/* Heading row: "Add To Bag" + prev/next arrows */
.wp-block-woocommerce-mini-cart-contents .wp-block-woocommerce-product-collection > .wp-block-group {
	display:         flex !important;
	align-items:     center;
	justify-content: space-between;
	margin-bottom:   8px !important;
	padding:         0 !important;
}

.wp-block-woocommerce-mini-cart-contents .wp-block-woocommerce-product-collection > .wp-block-group h2 {
	font-family:     var(--pl-font-body) !important;
	font-size:       14px !important;
	font-weight:     500 !important;
	line-height:     1.4 !important;
	color:           #1A1A1A !important;
	margin:          0 !important;
	text-align:      left !important;
}

/* Arrows — small circular */
.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons {
	display: flex !important;
	gap:     2px !important;
}

.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button {
	width:           28px !important;
	height:          28px !important;
	border-radius:   50% !important;
	border:          none !important;
	background:      transparent !important;
	cursor:          pointer;
	display:         flex !important;
	align-items:     center !important;
	justify-content: center !important;
	padding:         0 !important;
	transform:       none !important;
}

/* Default arrow — accent color */
.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button::after {
	width:               14px !important;
	height:              14px !important;
	background-size:     14px 14px !important;
	background-image:    url("data:image/svg+xml,%3Csvg width='19' height='19' viewBox='0 0 19 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.703 9.231h13.055M15.758 9.231l-4.352-4.352M15.758 9.231l-4.352 4.352' stroke='%23537FF4' stroke-width='1.538' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* Hover — darker accent */
.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button:hover {
	background: transparent !important;
	transform:  none !important;
}

.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button:hover::after {
	background-image: url("data:image/svg+xml,%3Csvg width='19' height='19' viewBox='0 0 19 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.703 9.231h13.055M15.758 9.231l-4.352-4.352M15.758 9.231l-4.352 4.352' stroke='%233560D3' stroke-width='1.538' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* Disabled — muted gray */
.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button[aria-disabled="true"] {
	opacity:    1 !important;
	cursor:     default;
	background: transparent !important;
}

.wp-block-woocommerce-mini-cart-contents .wc-block-next-previous-buttons__button[aria-disabled="true"]::after {
	background-image: url("data:image/svg+xml,%3Csvg width='19' height='19' viewBox='0 0 19 19' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2.703 9.231h13.055M15.758 9.231l-4.352-4.352M15.758 9.231l-4.352 4.352' stroke='%238A94A6' stroke-width='1.538' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* Carousel list — horizontal cards */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel {
	gap:              12px !important;
	overflow-x:       auto;
	scroll-snap-type: x mandatory;
}

/* Horizontal card: [image] [name+price] [add btn] — CSS Grid */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li.wc-block-product {
	flex:              0 0 240px !important;
	width:             240px !important;
	max-width:         240px !important;
	display:           grid !important;
	grid-template-columns: 36px 1fr auto;
	grid-template-rows:    auto auto;
	column-gap:        12px;
	row-gap:           4px;
	align-items:       center;
	padding:           12px !important;
	background:        #E7EAEF !important;
	border-radius:     8px !important;
	overflow:          visible !important;
	position:          relative;
	transition:        background .2s ease;
	scroll-snap-align: start;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li.wc-block-product:hover {
	background: #D5DBE3 !important;
	transform:  none !important;
	box-shadow: none !important;
}

/* Image — first column, spans both rows (full height of the card) */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wc-block-components-product-image {
	grid-column:    1;
	grid-row:       1 / span 2;
	width:          36px !important;
	height:         60px !important;
	aspect-ratio:   3 / 5;
	padding:        0 !important;
	padding-top:    0 !important;
	background:     transparent !important;
	border-radius:  0;
	overflow:       hidden;
	display:        flex;
	align-items:    center;
	justify-content: center;
	margin:         0 !important;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wc-block-components-product-image a {
	padding-top: 0 !important;
	position:    relative;
	display:     block;
	width:       100%;
	height:      100%;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wc-block-components-product-image img {
	position:   absolute !important;
	object-fit: contain !important;
	padding:    0 !important;
}

/* Title — second column, top row */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wp-block-post-title {
	grid-column: 2;
	grid-row:    1;
	font-family: var(--pl-font-body) !important;
	font-size:   14px !important;
	font-weight: 400 !important;
	line-height: 20px !important;
	padding:     0 !important;
	margin:      0 !important;
	color:       #1A1A1A !important;
	text-align:  left !important;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wp-block-post-title a {
	font-family:     var(--pl-font-body) !important;
	font-size:       14px !important;
	font-weight:     400 !important;
	line-height:     20px !important;
	color:           #1A1A1A !important;
	text-decoration: none !important;
}

/* Price — second column, bottom row */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wp-block-woocommerce-product-price {
	grid-column: 2;
	grid-row:    2;
	padding:     0 !important;
	margin:      0 !important;
	text-align:  left !important;
}

.wp-block-woocommerce-mini-cart-contents .wc-block-components-product-price .woocommerce-Price-amount {
	font-family: var(--pl-font-body) !important;
	font-size:   14px !important;
	font-weight: 600 !important;
	line-height: 20px !important;
	color:       #1A1A1A !important;
}

/* Add-to-cart button — third column, spans both rows (centered vertically) */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel > li > .wp-block-woocommerce-product-button {
	grid-column: 3;
	grid-row:    1 / span 2;
	align-self:  center;
	gap: 0;
}

/* Add-to-cart button — icon only, no background */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button {
	flex:        0 0 20px !important;
	width:       20px !important;
	height:      20px !important;
	padding:     0 !important;
	margin:      0 !important;
	display:     flex !important;
	align-items: center;
	justify-content: center;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button button {
	width:               20px !important;
	height:              20px !important;
	padding:             0 !important;
	border-radius:       0 !important;
	background:          transparent !important;
	color:               transparent !important;
	border:              none !important;
	font-size:           0 !important;
	cursor:              pointer;
	box-shadow:          none !important;
	background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cg clip-path='url(%23c)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.333.417c-2.071 0-3.75 1.679-3.75 3.75l-1.768 0c-.335 0-.612 0-.837.018-.234.02-.45.06-.651.164a1.667 1.667 0 0 0-.729.729c-.103.202-.144.417-.163.651-.018.226-.018.502-.018.838v6.285c0 .801 0 1.428.041 1.931.042.512.128.933.322 1.314a3.333 3.333 0 0 0 1.457 1.457c.38.194.801.28 1.313.322.504.041 1.13.041 1.931.041h3.337a.417.417 0 0 0 0-.833H5.5c-.824 0-1.416 0-1.882-.038-.46-.038-.76-.11-1.003-.234a2.5 2.5 0 0 1-1.093-1.093c-.124-.243-.196-.543-.234-1.003A25.5 25.5 0 0 1 1.25 12.833V6.583c0-.357 0-.6.015-.787.015-.183.042-.276.076-.341a.833.833 0 0 1 .364-.364c.065-.033.159-.06.341-.076.188-.015.43-.015.787-.015h9.667l.01 0h1.323c.357 0 .6 0 .787.016.183.015.276.042.341.076a.833.833 0 0 1 .364.364c.033.065.06.159.076.341.015.188.015.43.015.787v1.802a.417.417 0 0 0 .833 0V6.566c0-.335 0-.612-.018-.838a1.668 1.668 0 0 0-.163-.651 1.667 1.667 0 0 0-.729-.729 1.668 1.668 0 0 0-.651-.163c-.226-.018-.502-.018-.838-.018h-1.767c0-2.071-1.679-3.75-3.75-3.75ZM8.333 1.25c1.61 0 2.917 1.306 2.917 2.917H5.416c0-1.611 1.306-2.917 2.917-2.917Z' fill='%23537FF4'/%3E%3Cpath d='M5 7.292a.625.625 0 1 0 0 1.25.625.625 0 0 0 0-1.25Z' fill='%23537FF4'/%3E%3Cpath d='M11.041 7.917a.625.625 0 1 1 1.25 0 .625.625 0 0 1-1.25 0Z' fill='%23537FF4'/%3E%3Cpath d='M17.083 15a.417.417 0 0 1-.417.417h-1.25v1.25a.417.417 0 0 1-.833 0v-1.25h-1.25a.417.417 0 0 1 0-.834h1.25v-1.25a.417.417 0 0 1 .833 0v1.25h1.25c.23 0 .417.187.417.417Z' fill='%23537FF4'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15 10.417a4.583 4.583 0 1 0 0 9.166 4.583 4.583 0 0 0 0-9.166ZM11.25 15a3.75 3.75 0 1 1 7.5 0 3.75 3.75 0 0 1-7.5 0Z' fill='%23537FF4'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='c'%3E%3Crect width='20' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") !important;
	background-repeat:   no-repeat !important;
	background-position: center !important;
	background-size:     20px 20px !important;
	transition:          background-image .2s ease;
}

/* Hover — change icon color to dark accent */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button button:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cg clip-path='url(%23c)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.333.417c-2.071 0-3.75 1.679-3.75 3.75l-1.768 0c-.335 0-.612 0-.837.018-.234.02-.45.06-.651.164a1.667 1.667 0 0 0-.729.729c-.103.202-.144.417-.163.651-.018.226-.018.502-.018.838v6.285c0 .801 0 1.428.041 1.931.042.512.128.933.322 1.314a3.333 3.333 0 0 0 1.457 1.457c.38.194.801.28 1.313.322.504.041 1.13.041 1.931.041h3.337a.417.417 0 0 0 0-.833H5.5c-.824 0-1.416 0-1.882-.038-.46-.038-.76-.11-1.003-.234a2.5 2.5 0 0 1-1.093-1.093c-.124-.243-.196-.543-.234-1.003A25.5 25.5 0 0 1 1.25 12.833V6.583c0-.357 0-.6.015-.787.015-.183.042-.276.076-.341a.833.833 0 0 1 .364-.364c.065-.033.159-.06.341-.076.188-.015.43-.015.787-.015h9.667l.01 0h1.323c.357 0 .6 0 .787.016.183.015.276.042.341.076a.833.833 0 0 1 .364.364c.033.065.06.159.076.341.015.188.015.43.015.787v1.802a.417.417 0 0 0 .833 0V6.566c0-.335 0-.612-.018-.838a1.668 1.668 0 0 0-.163-.651 1.667 1.667 0 0 0-.729-.729 1.668 1.668 0 0 0-.651-.163c-.226-.018-.502-.018-.838-.018h-1.767c0-2.071-1.679-3.75-3.75-3.75ZM8.333 1.25c1.61 0 2.917 1.306 2.917 2.917H5.416c0-1.611 1.306-2.917 2.917-2.917Z' fill='%233560D3'/%3E%3Cpath d='M5 7.292a.625.625 0 1 0 0 1.25.625.625 0 0 0 0-1.25Z' fill='%233560D3'/%3E%3Cpath d='M11.041 7.917a.625.625 0 1 1 1.25 0 .625.625 0 0 1-1.25 0Z' fill='%233560D3'/%3E%3Cpath d='M17.083 15a.417.417 0 0 1-.417.417h-1.25v1.25a.417.417 0 0 1-.833 0v-1.25h-1.25a.417.417 0 0 1 0-.834h1.25v-1.25a.417.417 0 0 1 .833 0v1.25h1.25c.23 0 .417.187.417.417Z' fill='%233560D3'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M15 10.417a4.583 4.583 0 1 0 0 9.166 4.583 4.583 0 0 0 0-9.166ZM11.25 15a3.75 3.75 0 1 1 7.5 0 3.75 3.75 0 0 1-7.5 0Z' fill='%233560D3'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='c'%3E%3Crect width='20' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") !important;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button button span {
	display: none !important;
}

/* Variable / external products render as <a class="add_to_cart_button">
   (link to the product page) instead of <button>. Mirror the simple-product
   layout but use a sliders icon to signal "choose options". */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button a.add_to_cart_button {
	display:             flex !important;
	align-items:         center;
	justify-content:     center;
	width:               20px !important;
	height:              20px !important;
	padding:             0 !important;
	border:              none !important;
	border-radius:       0 !important;
	background:          transparent !important;
	box-shadow:          none !important;
	color:               transparent !important;
	font-size:           0 !important;
	text-decoration:     none !important;
	background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cline x1='3' y1='6' x2='9' y2='6' stroke='%23537FF4' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='13' y1='6' x2='17' y2='6' stroke='%23537FF4' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='11' cy='6' r='2' stroke='%23537FF4' stroke-width='1.5' fill='white'/%3E%3Cline x1='3' y1='14' x2='6' y2='14' stroke='%23537FF4' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='10' y1='14' x2='17' y2='14' stroke='%23537FF4' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='14' r='2' stroke='%23537FF4' stroke-width='1.5' fill='white'/%3E%3C/svg%3E") !important;
	background-repeat:   no-repeat !important;
	background-position: center !important;
	background-size:     20px 20px !important;
	transition:          background-image .2s ease;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button a.add_to_cart_button:hover {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cline x1='3' y1='6' x2='9' y2='6' stroke='%233560D3' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='13' y1='6' x2='17' y2='6' stroke='%233560D3' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='11' cy='6' r='2' stroke='%233560D3' stroke-width='1.5' fill='white'/%3E%3Cline x1='3' y1='14' x2='6' y2='14' stroke='%233560D3' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='10' y1='14' x2='17' y2='14' stroke='%233560D3' stroke-width='1.5' stroke-linecap='round'/%3E%3Ccircle cx='8' cy='14' r='2' stroke='%233560D3' stroke-width='1.5' fill='white'/%3E%3C/svg%3E") !important;
}

.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button a.add_to_cart_button span {
	display: none !important;
}

/* Hide the "View cart" link span entirely (we use icon-only state instead) */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button .added_to_cart {
	display: none !important;
}

/* "In cart" state — only when the View cart span is NOT hidden
   (WC sets [hidden] attribute when item is not yet in cart) */
.wp-block-woocommerce-mini-cart-contents .is-product-collection-layout-carousel .wp-block-woocommerce-product-button:has(> span:not([hidden]) > .added_to_cart) button {
	cursor:           default !important;
	pointer-events:   none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Ccircle cx='10' cy='10' r='9' fill='%23537FF4'/%3E%3Cpath d='M6 10.5l2.5 2.5L14 7.5' stroke='%23F7F9FC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* ============================================================
   Footer: subtotal + buttons
   ============================================================ */
.wc-block-mini-cart__footer {
	padding:    20px 24px 24px !important;
	background: #fff !important;
	border-top: 0 !important;
	margin:     0 !important;
}

/* Subtotal row */
.wc-block-mini-cart__footer-subtotal,
.wc-block-mini-cart__footer .wc-block-components-totals-item.wc-block-mini-cart__footer-subtotal {
	display:         flex !important;
	align-items:     center;
	justify-content: space-between;
	padding:         20px 0 !important;
	margin:          0 0 90px !important;
	border:          0 !important;
	border-top:      1px solid #CACDD3 !important;
	border-bottom:   1px solid #CACDD3 !important;
	font-family:     Inter, var(--pl-font-body) !important;
	font-size:       14px !important;
	font-style:      normal !important;
	font-weight:     600 !important;
	line-height:     20px !important;
}

.wc-block-mini-cart__footer .wc-block-components-totals-item__label {
	font-family: Inter, var(--pl-font-body) !important;
	font-size:   14px !important;
	font-style:  normal !important;
	font-weight: 600 !important;
	line-height: 20px !important;
	color:       #1A1A1A !important;
}

.wc-block-components-totals-item__value {
	font-size:   14px !important;
	font-weight: 600 !important;
	color:       #1A1A1A !important;
}

.wc-block-components-totals-item__description {
	display: none !important;
}

/* Action buttons */
.wc-block-mini-cart__footer-actions {
	display:    flex !important;
	flex-direction: row;
	gap:        12px;
	margin:     32px 0 0 !important;
}

/* Override WC's built-in CSS that switches the footer actions to column
   at ≤480px — we want column only at ≤380px instead.
   Selectors must include the inner block-editor wrapper because WC renders
   actions through Gutenberg's block-list layout. */
@media (min-width: 381px) {
	.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions,
	.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions > .block-editor-inner-blocks > .block-editor-block-list__layout {
		flex-direction: row !important;
	}
}

@media (max-width: 380px) {
	.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions,
	.wc-block-mini-cart__footer .wc-block-mini-cart__footer-actions > .block-editor-inner-blocks > .block-editor-block-list__layout {
		flex-direction: column !important;
	}
}

.wc-block-mini-cart__footer-cart,
.wc-block-mini-cart__footer-checkout,
a.wc-block-mini-cart__footer-cart.wp-element-button,
a.wc-block-mini-cart__footer-checkout.wp-element-button {
	flex:            1;
	display:         inline-flex !important;
	align-items:     center;
	justify-content: center;
	padding:         14px 28px !important;
	border-radius:   32px !important;
	font-family:     var(--pl-font-body, Inter, sans-serif) !important;
	font-size:       14px !important;
	font-style:      normal !important;
	font-weight:     600 !important;
	line-height:     20px !important;
	text-decoration: none !important;
	cursor:          pointer;
	transition:      background .2s ease, color .2s ease, border-color .2s ease;
	border:          1px solid var(--pl-accent, #537FF4);
	box-shadow:      none !important;
}

/* View cart — outline */
.wc-block-mini-cart__footer-cart,
a.wc-block-mini-cart__footer-cart {
	background:   transparent !important;
	color:        var(--pl-accent, #537FF4) !important;
	border-color: var(--pl-accent, #537FF4) !important;
}

.wc-block-mini-cart__footer-cart:hover,
a.wc-block-mini-cart__footer-cart:hover {
	background:   var(--pl-accent-dark, #3560D3) !important;
	color:        #F7F9FC !important;
	border-color: var(--pl-accent-dark, #3560D3) !important;
}

/* Checkout — filled accent */
.wc-block-mini-cart__footer-checkout,
a.wc-block-mini-cart__footer-checkout {
	background:   var(--pl-accent, #537FF4) !important;
	color:        #F7F9FC !important;
	border-color: var(--pl-accent, #537FF4) !important;
}

.wc-block-mini-cart__footer-checkout:hover,
a.wc-block-mini-cart__footer-checkout:hover {
	background:   var(--pl-accent-dark, #3560D3) !important;
	color:        #F7F9FC !important;
	border-color: var(--pl-accent-dark, #3560D3) !important;
}

.wc-block-components-button__text {
	font-size:   14px;
	font-weight: 600;
}

/* ============================================================
   Empty cart state
   ============================================================ */
.wp-block-woocommerce-empty-mini-cart-contents-block {
	display:        flex;
	flex-direction: column;
	align-items:    center;
	justify-content: center;
	padding:        48px 24px;
	text-align:     center;
	min-height:     300px;
}

.wc-block-mini-cart__empty-cart-wrapper p {
	font-size: 16px;
	color:     #6E7787;
	margin:    0 0 24px;
}

.wc-block-mini-cart__shopping-button,
a.wc-block-mini-cart__shopping-button {
	display:         inline-flex !important;
	align-items:     center;
	justify-content: center;
	padding:         14px 32px !important;
	background:      var(--pl-accent, #537FF4) !important;
	color:           #F7F9FC !important;
	border-radius:   50px !important;
	font-size:       14px !important;
	font-weight:     600 !important;
	text-decoration: none !important;
	border:          none !important;
}

a.wc-block-mini-cart__shopping-button:hover {
	background: var(--pl-accent-dark, #3560D3) !important;
}

/* ============================================================
   Scrollbar (items list)
   ============================================================ */
.wc-block-mini-cart__items::-webkit-scrollbar {
	width: 4px;
}

.wc-block-mini-cart__items::-webkit-scrollbar-thumb {
	background:    rgba(26, 26, 26, .15);
	border-radius: 2px;
}

.wc-block-mini-cart__items::-webkit-scrollbar-track {
	background: transparent;
}

/* Hide store notices inside mini-cart */
.wp-block-woocommerce-mini-cart-contents .wc-block-components-notices {
	display: none !important;
}
