/* ZENAUURA presentation layer for FunnelKit Cart. */

/* The global header is the only visible cart launcher. */
#fkcart-floating-toggler {
	display: none !important;
}

#fkcart-modal {
	font-family: var(--z-sans);
	font-weight: var(--z-weight-medium);
}

#fkcart-modal svg {
	stroke: none;
}

#fkcart-modal .fkcart-modal-backdrop {
	background: var(--z-midnight);
	opacity: 0.58;
	backdrop-filter: blur(2px);
}

#fkcart-modal .fkcart-preview-ui {
	max-width: min(440px, 100vw);
	border-left: 1px solid rgba(161, 109, 44, 0.32);
	background: var(--z-ivory);
	box-shadow: -28px 0 70px rgba(2, 10, 19, 0.3);
}

body #fkcart-modal .fkcart-preview-ui .fkcart-slider-header {
	border-bottom: 1px solid rgba(210, 175, 105, 0.42);
	background: var(--z-midnight);
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading {
	min-height: 82px;
	padding: 17px 22px;
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading .fkcart-title {
	color: var(--z-ivory);
	font-family: var(--z-serif);
	font-size: 28px;
	font-weight: var(--z-weight-semibold);
	letter-spacing: -0.015em;
	line-height: 1.05;
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading .fkcart-title span {
	margin-left: 7px;
	color: var(--z-gold-light);
	font-family: var(--z-sans);
	font-size: 12px;
	font-weight: var(--z-weight-semibold);
	letter-spacing: 0.04em;
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading .fkcart-modal-close {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	place-items: center;
	border: 1px solid rgba(255, 253, 248, 0.22);
	border-radius: 50%;
	color: var(--z-ivory);
	transition: border-color var(--z-transition-fast), color var(--z-transition-fast);
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading .fkcart-modal-close:hover {
	border-color: var(--z-gold);
	color: var(--z-gold-light);
}

#fkcart-modal .fkcart-preview-ui .fkcart-slider-body {
	background: var(--z-ivory);
	scrollbar-color: rgba(161, 109, 44, 0.45) transparent;
	scrollbar-width: thin;
}

#fkcart-modal .fkcart-zero-state {
	padding: 54px 38px;
}

#fkcart-modal .fkcart-zero-state .fkcart-icon-cart {
	display: grid;
	width: 88px;
	height: 88px;
	margin: 0 auto 17px;
	place-items: center;
	border: 1px solid rgba(161, 109, 44, 0.35);
	border-radius: 50%;
	background: var(--z-cream);
	color: var(--z-copper-dark);
}

#fkcart-modal .fkcart-zero-state .fkcart-icon-cart svg {
	width: 38px;
	height: 38px;
}

#fkcart-modal .fkcart-zero-state .fkcart-zero-state-title {
	margin: 5px 0 9px;
	color: var(--z-navy);
	font-family: var(--z-serif);
	font-size: 34px;
	font-weight: var(--z-weight-semibold);
	letter-spacing: -0.02em;
	line-height: 1.05;
}

#fkcart-modal .fkcart-zero-state .fkcart-zero-state-text {
	max-width: 310px;
	margin: 0 auto;
	color: var(--z-muted);
	font-size: 14.5px;
	line-height: 1.65;
}

#fkcart-modal .fkcart-primary-button,
#fkcart-modal .fkcart-zero-state .fkcart-shop-button,
#fkcart-modal .fkcart-checkout-wrap #fkcart-checkout-button {
	min-height: 52px;
	border: 1px solid var(--z-copper-dark);
	border-radius: var(--z-radius-standard);
	background: var(--z-copper-dark);
	color: #fff;
	font-family: var(--z-sans);
	font-size: 13px;
	font-weight: var(--z-weight-bold);
	letter-spacing: var(--z-track-button);
	line-height: 1.2;
	text-transform: uppercase;
	box-shadow: 0 12px 26px rgba(87, 52, 14, 0.18);
	transition: background var(--z-transition-fast), border-color var(--z-transition-fast), transform var(--z-transition-fast);
}

#fkcart-modal .fkcart-primary-button:hover,
#fkcart-modal .fkcart-primary-button:focus,
#fkcart-modal .fkcart-zero-state .fkcart-shop-button:hover,
#fkcart-modal .fkcart-checkout-wrap #fkcart-checkout-button:hover {
	border-color: var(--z-copper-hover);
	background: var(--z-copper-hover);
	opacity: 1;
	transform: translateY(-1px);
}

#fkcart-modal .fkcart-zero-state .fkcart-shop-button {
	min-width: 190px;
	margin-top: 24px;
}

#fkcart-modal .fkcart-item-wrap:not(.fkcart-carousel-wrap) {
	padding-top: 7px;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item {
	margin-bottom: 0;
	padding: 19px 22px;
	border-bottom: 1px solid rgba(29, 33, 30, 0.12);
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-image-wrapper {
	width: 82px;
	height: 82px;
	flex: 0 0 82px;
	background: var(--z-cream);
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-image-wrapper img {
	width: 100%;
	height: 100%;
	border: 1px solid rgba(161, 109, 44, 0.2);
	border-radius: var(--z-radius-compact);
	object-fit: cover;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-info {
	gap: 13px;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-title {
	color: var(--z-navy);
	font-family: var(--z-serif);
	font-size: 19px;
	font-weight: var(--z-weight-semibold);
	line-height: 1.15;
}

#fkcart-modal .fkcart-item-meta-content-wrap,
#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-meta-content {
	color: var(--z-muted);
	font-size: 12px;
	line-height: 1.5;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-price,
#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-price > span.woocommerce-Price-amount,
#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-item-price > span.woocommerce-Price-amount * {
	color: var(--z-copper-dark);
	font-size: 14px;
	font-weight: var(--z-weight-bold);
}

#fkcart-modal .fkcart-quantity-selector {
	border-radius: var(--z-radius-compact);
	box-shadow: 0 0 0 1px rgba(29, 33, 30, 0.2);
}

#fkcart-modal .fkcart-quantity-selector .fkcart-quantity-button {
	width: 34px;
	height: 34px;
	min-width: 34px;
	color: var(--z-navy);
}

body #fkcart-modal .fkcart-quantity-selector .fkcart-quantity__input {
	width: 36px;
	height: 34px;
	min-height: 34px;
	box-shadow: 0 0 0 1px rgba(29, 33, 30, 0.16);
	color: var(--z-ink);
	font-size: 14px;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-remove-item {
	top: -7px;
	left: -7px;
	width: 32px;
	height: 32px;
}

#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-remove-item span {
	width: 22px;
	height: 22px;
	border: 1px solid rgba(161, 109, 44, 0.35);
	background: var(--z-ivory);
	color: var(--z-copper-dark);
	box-shadow: 0 3px 10px rgba(4, 16, 31, 0.15);
}

body #fkcart-modal .fkcart-preview-ui .fkcart-slider-footer {
	border-top: 1px solid rgba(29, 33, 30, 0.13);
	background: var(--z-cream);
}

#fkcart-modal .fkcart-order-summary {
	padding: 15px 22px;
}

.fkcart-order-summary .fkcart-summary-line-item .fkcart-summary-amount,
.fkcart-order-summary .fkcart-summary-line-item .fkcart-summary-text,
.fkcart-order-summary .fkcart-summary-line-item strong {
	color: var(--z-ink);
}

#fkcart-modal .fkcart-checkout-wrap {
	padding: 8px 22px 20px;
}

#fkcart-modal .fkcart-checkout-wrap #fkcart-checkout-button {
	padding: 14px 22px;
}

#fkcart-modal .fkcart-checkout-wrap .fkcart-shopping-link,
#fkcart-modal .fkcart-shopping-link {
	min-height: 42px;
	margin: 9px 0 0;
	padding: 10px 16px;
	border: 1px solid rgba(130, 83, 31, 0.42);
	border-radius: var(--z-radius-standard);
	color: var(--z-copper-dark);
	font-size: 12px;
	font-weight: var(--z-weight-bold);
	letter-spacing: var(--z-track-button);
	line-height: 20px;
	text-transform: uppercase;
}

#fkcart-modal .fkcart-shopping-link:hover {
	border-color: var(--z-copper-dark);
	background: rgba(161, 109, 44, 0.07);
}

#fkcart-modal .fkcart-coupon-area {
	border-color: rgba(29, 33, 30, 0.13);
	background: var(--z-ivory);
}

@media (max-width: 480px) {
	#fkcart-modal .fkcart-preview-ui,
	#fkcart-modal .fkcart-slider-notices,
	.fkcart-quick-view-drawer {
		max-width: 96vw;
	}

	#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading {
		min-height: 74px;
		padding: 14px 17px;
	}

	#fkcart-modal .fkcart-preview-ui .fkcart-slider-heading .fkcart-title {
		font-size: 25px;
	}

	#fkcart-modal .fkcart-zero-state {
		padding: 38px 22px;
	}

	#fkcart-modal .fkcart-zero-state .fkcart-zero-state-title {
		font-size: 30px;
	}

	#fkcart-modal .fkcart-item-wrap .fkcart--item {
		padding: 17px;
	}

	#fkcart-modal .fkcart-item-wrap .fkcart--item .fkcart-image-wrapper {
		width: 72px;
		height: 72px;
		flex-basis: 72px;
	}

	#fkcart-modal .fkcart-order-summary {
		padding-inline: 17px;
	}

	#fkcart-modal .fkcart-checkout-wrap {
		padding-inline: 17px;
	}
}
