/*
 * BeautyKlove Custom Cart 2.0
 * Mobile-first, component-scoped styles. Every custom class uses bkcax-.
 */

@media (max-width: 767px) {
	.bkcax-cart-page-active {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: hidden !important;
	}

	html.bkcax-cart-page-active body.bkcax-cart-page-active .bkcax-cart-host-reset {
		float: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: visible !important;
		transform: none !important;
		filter: none !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
		perspective: none !important;
		contain: none !important;
		content-visibility: visible !important;
		will-change: auto !important;
		clip-path: none !important;
		box-sizing: border-box !important;
	}
}

#bkcax-app {
	--bkcax-primary: #b42658;
	--bkcax-primary-dark: #8f1843;
	--bkcax-accent: #7b399b;
	--bkcax-text: #241f21;
	--bkcax-muted: #746a6e;
	--bkcax-border: #eadfe2;
	--bkcax-soft: #fff7fa;
	--bkcax-surface: #fff;
	--bkcax-success: #237a47;
	--bkcax-danger: #bd2119;
	--bkcax-radius: 18px;
	--bkcax-font-title: 16px;
	--bkcax-font-subtitle: 14px;
	--bkcax-font-content: 10px;
	--bkcax-font-button: 12px;
	--bkcax-safe-left: env(safe-area-inset-left, 0px);
	--bkcax-safe-right: env(safe-area-inset-right, 0px);
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	color: var(--bkcax-text);
	font-family: inherit;
	font-size: 16px;
	line-height: 1.45;
	overflow-x: visible;
}

#bkcax-app.bkcax-ios-page-shell {
	min-height: 100vh;
	min-height: 100dvh;
}

#bkcax-app,
#bkcax-app *,
#bkcax-app *::before,
#bkcax-app *::after {
	box-sizing: border-box;
}

#bkcax-app .bkcax-shell {
	width: min(100%, var(--bkcax-layout-width, 760px));
	margin: 0 auto;
	padding: 12px max(10px, var(--bkcax-safe-right)) calc(96px + env(safe-area-inset-bottom, 0px)) max(10px, var(--bkcax-safe-left));
}

#bkcax-app.bkcax-platform-android.bkcax-ios-page-shell {
	min-height: auto;
}

#bkcax-app .bkcax-cart-page-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 12px;
}

#bkcax-app .bkcax-cart-page-title h1 {
	flex: 0 0 auto;
	margin: 0;
	color: #111827;
	font-size: var(--bkcax-font-title);
	font-weight: 900;
	line-height: 1.2;
	white-space: nowrap;
}

#bkcax-app .bkcax-cart-title-line {
	flex: 1 1 auto;
	height: 1px;
	background: #efceda;
}

#bkcax-app .bkcax-view-all-wrap {
	display: flex;
	justify-content: center;
	margin: 0 0 22px;
}

#bkcax-app .bkcax-view-all-btn,
#bkcax-app .bkcax-primary-action,
#bkcax-app .bkcax-secondary-action {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 13px;
	font: inherit;
	font-size: var(--bkcax-font-button);
	font-weight: 850;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}

#bkcax-app .bkcax-view-all-btn,
#bkcax-app .bkcax-primary-action {
	background: linear-gradient(135deg, #d31f70, #84389a);
	box-shadow: 0 9px 22px rgba(180, 38, 88, .22);
	color: #fff;
}

#bkcax-app .bkcax-view-all-btn {
	width: min(100%, 280px);
	padding: 0 18px;
	border-radius: 999px;
	letter-spacing: .03em;
}

#bkcax-app .bkcax-secondary-action {
	padding: 0 15px;
	border: 1px solid #e2cfd6;
	background: #fff;
	color: var(--bkcax-primary);
}

#bkcax-app .bkcax-card {
	width: 100%;
	min-width: 0;
	margin: 0 0 12px;
	padding: 14px;
	border: 1px solid var(--bkcax-border);
	border-radius: var(--bkcax-radius);
	background: var(--bkcax-surface);
	box-shadow: 0 7px 22px rgba(73, 36, 49, .07);
}

#bkcax-app .bkcax-cart-list {
	display: grid;
	gap: 12px;
}

#bkcax-app .bkcax-cart-item {
	margin: 0;
}

#bkcax-app .bkcax-item-main {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 32px;
	align-items: start;
	gap: 10px;
}

#bkcax-app .bkcax-item-copy {
	min-width: 0;
	padding-top: 2px;
}

#bkcax-app .bkcax-item-title {
	min-width: 0;
	margin: 0;
	color: var(--bkcax-primary);
	font-size: var(--bkcax-font-subtitle);
	font-weight: 850;
	line-height: 1.28;
}

#bkcax-app .bkcax-item-title-wrap {
	display: flex;
	min-width: 0;
	align-items: flex-start;
	gap: 7px;
}

#bkcax-app .bkcax-item-title-icon {
	flex: 0 0 14px;
	width: 14px;
	height: 16px;
	margin-top: 1px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.7;
}

#bkcax-app .bkcax-item-title-text {
	display: block;
	min-width: 0;
	overflow-wrap: anywhere;
}

#bkcax-app .bkcax-item-title-labels {
	display: flex;
	min-width: 0;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
}

#bkcax-app .bkcax-item-title-secondary {
	display: block;
	width: fit-content;
	max-width: 100%;
	padding: 3px 7px;
	border: 1px solid #f1c8d7;
	border-radius: 999px;
	background: #fff3f7;
	color: var(--bkcax-primary);
	font-size: 10px;
	font-weight: 800;
	line-height: 1.2;
	overflow-wrap: anywhere;
}

#bkcax-app .bkcax-item-price {
	margin: 9px 0 0 21px;
	color: var(--bkcax-text);
	font-size: var(--bkcax-font-title);
	font-weight: 900;
}

#bkcax-app .bkcax-remove {
	display: inline-grid;
	width: 32px;
	height: 32px;
	place-items: center;
	padding: 0;
	border: 1px solid #f0d2d2;
	border-radius: 50%;
	background: #fff9f9;
	color: var(--bkcax-danger);
	font-size: 1.55rem;
	font-weight: 400;
	line-height: 1;
	text-decoration: none;
}

#bkcax-app .bkcax-item-details {
	width: 100%;
	min-width: 0;
	margin-top: 13px;
	padding: 12px;
	border: 1px solid #f0d7e0;
	border-radius: 14px;
	background: #fff8fa;
}

#bkcax-app .bkcax-item-meta {
	display: grid;
	gap: 7px;
	margin: 0;
}

#bkcax-app .bkcax-meta-key,
#bkcax-app .bkcax-meta-value {
	min-width: 0;
	margin: 0;
}

#bkcax-app .bkcax-meta-key {
	color: #4a3b40;
	font-size: var(--bkcax-font-content);
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

#bkcax-app .bkcax-meta-value {
	color: #4f4549;
	font-size: var(--bkcax-font-content);
	overflow-wrap: anywhere;
}

#bkcax-app .bkcax-service-list {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

#bkcax-app .bkcax-service-line {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	padding: 9px 0;
	border-bottom: 1px solid #f1dce3;
}

#bkcax-app .bkcax-service-line:last-child {
	border-bottom: 0;
}

#bkcax-app .bkcax-service-name {
	min-width: 0;
	color: #463b3f;
	font-size: var(--bkcax-font-content);
	font-weight: 700;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

#bkcax-app .bkcax-service-duration {
	padding: 4px 8px;
	border: 1px solid #edcad7;
	border-radius: 999px;
	background: #fff;
	color: var(--bkcax-primary);
	font-size: var(--bkcax-font-content);
	font-weight: 850;
	white-space: nowrap;
}

#bkcax-app .bkcax-item-duration {
	margin: 8px 0 0;
	color: var(--bkcax-muted);
	font-size: var(--bkcax-font-content);
}

#bkcax-app .bkcax-item-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-top: 13px;
	padding-top: 13px;
	border-top: 1px solid var(--bkcax-border);
}

#bkcax-app .bkcax-qty {
	display: grid;
	flex: 0 0 auto;
	grid-template-columns: 42px 44px 42px;
	height: 42px;
	overflow: hidden;
	border: 1px solid #e5d5da;
	border-radius: 12px;
	background: #fff;
}

#bkcax-app .bkcax-qty-button,
#bkcax-app .bkcax-qty-value {
	width: 100%;
	height: 40px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--bkcax-text);
	font: inherit;
	font-size: 1.15rem;
	font-weight: 800;
	line-height: 40px;
	text-align: center;
}

#bkcax-app .bkcax-qty-button {
	color: var(--bkcax-primary);
	cursor: pointer;
}

#bkcax-app .bkcax-qty-button:disabled {
	color: #b9afb2;
	cursor: default;
}

#bkcax-app .bkcax-qty-value {
	border-right: 1px solid #eee3e6;
	border-left: 1px solid #eee3e6;
	-moz-appearance: textfield;
}

#bkcax-app .bkcax-qty-value::-webkit-inner-spin-button,
#bkcax-app .bkcax-qty-value::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

#bkcax-app .bkcax-item-total {
	display: grid;
	min-width: 0;
	gap: 3px;
	color: var(--bkcax-muted);
	font-size: var(--bkcax-font-content);
	text-align: right;
}

#bkcax-app .bkcax-item-total strong {
	color: #5d5155;
	font-size: var(--bkcax-font-button);
	white-space: nowrap;
}

#bkcax-app .bkcax-section-title,
#bkcax-app .bkcax-title {
	margin: 0;
	color: var(--bkcax-text);
	font-size: var(--bkcax-font-title);
	font-weight: 900;
	line-height: 1.25;
}

#bkcax-app .bkcax-summary {
	margin-top: 16px;
}

#bkcax-app .bkcax-summary-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
	padding: 10px 0;
	color: var(--bkcax-muted);
	font-size: var(--bkcax-font-content);
}

#bkcax-app .bkcax-summary-row strong {
	color: var(--bkcax-text);
	text-align: right;
}

#bkcax-app .bkcax-summary-saving,
#bkcax-app .bkcax-summary-saving strong {
	color: var(--bkcax-success);
}

#bkcax-app .bkcax-summary-total {
	margin-top: 3px;
	padding-top: 13px;
	border-top: 1px solid var(--bkcax-border);
	color: var(--bkcax-text);
	font-size: var(--bkcax-font-subtitle);
	font-weight: 850;
}

#bkcax-app .bkcax-summary-action {
	width: 100%;
	margin-top: 12px;
}

#bkcax-app .bkcax-coupon {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--bkcax-border);
}

#bkcax-app .bkcax-field-label {
	display: block;
	margin-bottom: 6px;
	font-size: var(--bkcax-font-content);
	font-weight: 800;
}

#bkcax-app .bkcax-coupon-controls {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 8px;
}

#bkcax-app .bkcax-control {
	width: 100%;
	min-width: 0;
	height: 44px;
	margin: 0;
	padding: 0 12px;
	border: 1px solid #ddcfd4;
	border-radius: 11px;
	background: #fff;
	color: var(--bkcax-text);
	font: inherit;
}

#bkcax-app .bkcax-coupon-remove {
	min-height: 24px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--bkcax-danger);
	font: inherit;
	font-size: var(--bkcax-font-content);
	text-decoration: underline;
	cursor: pointer;
}

/* The heading remains padded; the injected offer area is intentionally edge-to-edge. */
#bkcax-app .bkcax-offer {
	--bkcax-offer-padding: 14px;
	position: relative;
	overflow: hidden;
	margin-top: 16px;
	padding: var(--bkcax-offer-padding);
	border-color: #efcfdb;
	background: linear-gradient(145deg, #fff 0%, #fff3f7 58%, #fce9f1 100%);
}

#bkcax-app .bkcax-offer::after {
	position: absolute;
	z-index: 0;
	top: -54px;
	right: -46px;
	width: 150px;
	height: 150px;
	border: 28px solid rgba(177, 34, 88, .05);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

#bkcax-app .bkcax-offer-heading {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) auto;
	align-items: center;
	gap: 9px;
}

#bkcax-app .bkcax-offer-icon {
	display: inline-grid;
	width: 42px;
	height: 42px;
	place-items: center;
	border-radius: 12px;
	background: linear-gradient(135deg, #d31f70, #9d275e);
	color: #fff;
	font-size: var(--bkcax-font-title);
	font-weight: 900;
}

#bkcax-app .bkcax-offer-heading-copy {
	min-width: 0;
}

#bkcax-app .bkcax-offer-kicker {
	display: block;
	margin-bottom: 2px;
	color: var(--bkcax-primary);
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}

#bkcax-app .bkcax-offer-heading .bkcax-section-title {
	font-size: var(--bkcax-font-subtitle);
}

#bkcax-app .bkcax-offer-badge {
	padding: 5px 8px;
	border: 1px solid #ebc5d3;
	border-radius: 999px;
	background: rgba(255, 255, 255, .86);
	color: var(--bkcax-primary);
	font-size: var(--bkcax-font-content);
	font-weight: 850;
	white-space: nowrap;
}

#bkcax-app .bkcax-offer-intro {
	position: relative;
	z-index: 1;
	margin: 11px 0 0;
	color: #66585e;
	font-size: var(--bkcax-font-content);
	line-height: 1.45;
}

#bkcax-app .bkcax-offer-content {
	position: relative;
	z-index: 1;
	width: calc(100% + (2 * var(--bkcax-offer-padding)));
	max-width: none;
	margin: 12px calc(0px - var(--bkcax-offer-padding)) calc(0px - var(--bkcax-offer-padding));
	padding: 12px 0 0;
	border-top: 1px dashed #e7bdcc;
}

#bkcax-app .bkcax-offer-label,
#bkcax-app .bkcax-offer-progress,
#bkcax-app .bkcax-offer-action {
	margin-right: var(--bkcax-offer-padding);
	margin-left: var(--bkcax-offer-padding);
}

#bkcax-app .bkcax-offer-label {
	margin-top: 0;
	margin-bottom: 0;
	color: #3e3035;
	font-size: var(--bkcax-font-button);
	font-weight: 800;
}

#bkcax-app .bkcax-offer-progress {
	margin-top: 7px;
	margin-bottom: 0;
	padding: 8px 10px;
	border-radius: 10px;
	background: rgba(255, 255, 255, .78);
	color: var(--bkcax-muted);
	font-size: var(--bkcax-font-content);
}

#bkcax-app .bkcax-offer-action {
	width: calc(100% - (2 * var(--bkcax-offer-padding)));
	margin-top: 10px;
}

#bkcax-app .bkcax-offer-options {
	width: 100%;
	min-width: 0;
	margin: 10px 0 0;
	padding: 0;
	border: 0;
}

#bkcax-app .bkcax-offer-options > * {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	box-sizing: border-box !important;
	overflow-x: auto !important;
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
}

#bkcax-app .bkcax-offer-options *,
#bkcax-app .bkcax-offer-options *::before,
#bkcax-app .bkcax-offer-options *::after {
	min-width: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	overflow-wrap: anywhere;
}

#bkcax-app .bkcax-offer-options h1,
#bkcax-app .bkcax-offer-options h2,
#bkcax-app .bkcax-offer-options h3,
#bkcax-app .bkcax-offer-options h4 {
	font-size: var(--bkcax-font-subtitle) !important;
	line-height: 1.3 !important;
}

#bkcax-app .bkcax-offer-options p,
#bkcax-app .bkcax-offer-options li,
#bkcax-app .bkcax-offer-options small {
	font-size: var(--bkcax-font-content) !important;
	line-height: 1.45 !important;
}

#bkcax-app .bkcax-offer-options button,
#bkcax-app .bkcax-offer-options a {
	font-size: var(--bkcax-font-button) !important;
}

#bkcax-app .bkcax-offer-options img {
	max-width: 100% !important;
	height: auto;
}

/* Service-catalog offer labels: keep the title first and its state on line two. */
#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-copy {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-title {
	order: 1;
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-state {
	order: 2;
	display: inline-flex !important;
	width: auto !important;
	margin: 0 0 8px !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-detail {
	order: 3;
	display: block !important;
	width: 100% !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-list {
	order: 4;
	width: 100% !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-chip {
	order: 5;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-label-group {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-label-group .bkcax-catalog-offer-title,
#bkcax-app .bkcax-offer-options .bkcax-catalog-offer-secondary {
	display: block !important;
	width: 100% !important;
}

#bkcax-app .bkcax-offer-options .bkcax-catalog-label-group .bkcax-catalog-offer-title {
	margin: 0 0 6px !important;
}

#bkcax-app .bkcax-offer-options > *::-webkit-scrollbar {
	display: none;
}

#bkcax-app .bkcax-offer--unlocked {
	border-color: #bfe2cf;
	background: linear-gradient(145deg, #fff 0%, #f2fbf6 100%);
}

#bkcax-app .bkcax-offer--unlocked .bkcax-offer-icon {
	background: linear-gradient(135deg, #2a8a60, #176845);
}

.bkcax-cart-page-active .bkcax-sticky-action {
	--bkcax-primary: #b42658;
	--bkcax-success: #237a47;
	--bkcax-border: #eadfe2;
	--bkcax-font-title: 16px;
	--bkcax-font-subtitle: 14px;
	--bkcax-font-content: 10px;
	--bkcax-font-button: 12px;
	--bkcax-safe-left: env(safe-area-inset-left, 0px);
	--bkcax-safe-right: env(safe-area-inset-right, 0px);
	position: fixed;
	z-index: 999;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: 100%;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: 70px;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 9px max(12px, var(--bkcax-safe-right)) calc(9px + env(safe-area-inset-bottom, 0px)) max(12px, var(--bkcax-safe-left));
	border-top: 1px solid var(--bkcax-border);
	background: rgba(255, 255, 255, .98);
	box-shadow: 0 -8px 26px rgba(66, 31, 43, .12);
	backdrop-filter: blur(12px);
	-webkit-transform: translateZ(0);
	box-sizing: border-box;
	font-family: inherit;
}

.bkcax-cart-page-active .bkcax-sticky-copy {
	display: grid;
	min-width: 0;
	gap: 2px;
	overflow: visible;
}

.bkcax-cart-page-active .bkcax-sticky-total-line,
.bkcax-cart-page-active .bkcax-sticky-meta {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 7px;
}

.bkcax-cart-page-active .bkcax-sticky-cart-icon {
	font-size: var(--bkcax-font-subtitle);
}

.bkcax-cart-page-active .bkcax-sticky-amount {
	color: #2f2529;
	font-size: var(--bkcax-font-title);
	font-weight: 900;
	white-space: nowrap;
}

.bkcax-cart-page-active .bkcax-sticky-count {
	display: inline-grid;
	width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 50%;
	background: #cc2363;
	color: #fff;
	font-size: var(--bkcax-font-content);
	font-weight: 850;
}

.bkcax-cart-page-active .bkcax-sticky-meta {
	color: #454047;
	font-size: var(--bkcax-font-content);
	font-weight: 750;
	flex-wrap: wrap;
	column-gap: 5px;
	row-gap: 0;
	white-space: normal;
}

.bkcax-cart-page-active .bkcax-sticky-meta strong {
	color: var(--bkcax-success);
}

.bkcax-cart-page-active .bkcax-sticky-divider {
	width: 1px;
	height: 12px;
	background: #b8b0b3;
}

.bkcax-cart-page-active .bkcax-sticky-duration-short {
	display: none;
}

.bkcax-cart-page-active .bkcax-sticky-primary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 142px;
	height: 46px;
	padding: 0 16px;
	border-radius: 13px;
	box-shadow: 0 8px 20px rgba(180, 38, 88, .2);
	background: linear-gradient(135deg, #d31f70, #84389a);
	color: #fff;
	font-size: var(--bkcax-font-button);
	font-weight: 850;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

@media (max-width: 767px) {
	#bkcax-app .bkcax-ios-scroll-content {
		padding-bottom: calc(
			96px
			+ env(safe-area-inset-bottom, 0px)
			+ var(--bkcax-cart-visual-bottom, 0px)
			+ 20px
		);
	}

	html.bkcax-cart-page-active body.bkcax-cart-page-active > .bkcax-sticky-action.bkcax-ios-bottom-action {
		right: 0 !important;
		bottom: var(--bkcax-cart-visual-bottom, 0px) !important;
		left: 0 !important;
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
		transform: translateZ(0) !important;
	}
}

#bkcax-app .bkcax-empty {
	display: grid;
	min-height: 180px;
	place-items: center;
	text-align: center;
}

#bkcax-app .bkcax-notices,
#bkcax-app .bkcax-status {
	width: 100%;
	margin: 0 0 10px;
}

#bkcax-app .bkcax-status:empty {
	display: none;
}

#bkcax-app .bkcax-loading {
	pointer-events: none;
	opacity: .55;
}

#bkcax-app .bkcax-live-region,
#bkcax-app .bkcax-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	margin: -1px;
	padding: 0;
	border: 0;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

#bkcax-app .bkcax-qty-button:focus-visible,
#bkcax-app .bkcax-remove:focus-visible,
#bkcax-app .bkcax-primary-action:focus-visible,
#bkcax-app .bkcax-secondary-action:focus-visible,
#bkcax-app .bkcax-view-all-btn:focus-visible,
#bkcax-app .bkcax-control:focus-visible {
	outline: 3px solid rgba(180, 38, 88, .28);
	outline-offset: 2px;
}

@media (max-width: 370px) {
	#bkcax-app .bkcax-shell {
		padding-right: max(7px, var(--bkcax-safe-right));
		padding-left: max(7px, var(--bkcax-safe-left));
	}

	#bkcax-app .bkcax-card {
		padding: 11px;
		border-radius: 15px;
	}

	#bkcax-app .bkcax-offer {
		--bkcax-offer-padding: 11px;
	}

	#bkcax-app .bkcax-item-main {
		grid-template-columns: minmax(0, 1fr) 32px;
		gap: 8px;
	}

	#bkcax-app .bkcax-item-price {
		margin-left: 0;
	}

	#bkcax-app .bkcax-qty {
		grid-template-columns: 36px 40px 36px;
	}

	.bkcax-cart-page-active .bkcax-sticky-duration-long {
		display: none;
	}

	.bkcax-cart-page-active .bkcax-sticky-duration-short {
		display: inline;
	}

	.bkcax-cart-page-active .bkcax-sticky-primary {
		min-width: 132px;
		padding: 0 12px;
		font-size: var(--bkcax-font-button);
	}
}

.bkcax-platform-android .bkcax-sticky-action,
html.bkcax-platform-android.bkcax-cart-page-active body.bkcax-cart-page-active > .bkcax-sticky-action.bkcax-ios-bottom-action {
	position: sticky;
	right: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	border-top: 1px solid var(--bkcax-border);
	transform: none !important;
}

@media (max-width: 480px) {
	.bkcax-cart-page-active .bkcax-sticky-duration-long {
		display: none;
	}

	.bkcax-cart-page-active .bkcax-sticky-duration-short {
		display: inline;
	}
}

@media (min-width: 600px) {
	#bkcax-app .bkcax-shell {
		padding: 20px 18px 112px;
	}

	#bkcax-app .bkcax-cart-page-title h1 {
		font-size: var(--bkcax-font-title);
	}

	#bkcax-app .bkcax-card {
		padding: 18px;
	}

	#bkcax-app .bkcax-item-main {
		grid-template-columns: minmax(0, 1fr) 32px;
		gap: 14px;
	}

	#bkcax-app .bkcax-item-title {
		font-size: var(--bkcax-font-subtitle);
	}

	#bkcax-app .bkcax-item-details {
		padding: 14px 18px;
	}

	#bkcax-app .bkcax-offer {
		--bkcax-offer-padding: 18px;
	}

	.bkcax-cart-page-active .bkcax-sticky-action {
		right: 50%;
		left: auto;
		width: min(100%, var(--bkcax-layout-width, 760px));
		transform: translateX(50%);
	}
}
