
:root {
	--bs-app-bg: #fbfcf8;
	--bs-app-surface: rgba(255, 255, 255, .90);
	--bs-app-ink: #171717;
	--bs-app-muted: #68685f;
	--bs-app-line: rgba(23, 23, 20, .10);
	--bs-app-brand-green: #65a231;
	--bs-app-brand-green-dark: #3f7f2a;
	--bs-app-brand-green-soft: #edf6e5;
	--bs-app-brand-orange: #dd8635;
	--bs-app-brand-orange-dark: #c86f1f;
	--bs-app-brand-orange-soft: #fff2e3;
	--bs-app-shadow: 0 24px 70px rgba(52, 72, 34, .12);
}

html.bs-app-lock,
html.bs-app-lock body {
	overflow: hidden !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico,
body.bs-personalizador-app-active #bs-personalizador-basico * {
	box-sizing: border-box !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico.bs-app-mode {
	position: relative !important;
	isolation: isolate !important;
	padding: 0 18px 104px !important;
	overflow: visible !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 34px !important;
	background:
		radial-gradient(circle at 4% 0%, rgba(101, 162, 49, .12), transparent 24rem),
		radial-gradient(circle at 96% 12%, rgba(255, 213, 127, .10), transparent 22rem),
		var(--bs-app-bg) !important;
	box-shadow: var(--bs-app-shadow) !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-personalizador__head {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header {
	position: sticky !important;
	top: 10px !important;
	z-index: 120 !important;
	margin: 0 -18px 18px !important;
	padding: 16px 18px 13px !important;
	border: 1px solid rgba(255, 255, 255, .78) !important;
	border-radius: 32px 32px 24px 24px !important;
	background: rgba(255, 255, 255, .86) !important;
	box-shadow: 0 16px 44px rgba(52, 72, 34, .09), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
	backdrop-filter: blur(18px) saturate(150%) !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%) !important;
	transition: transform .32s ease, box-shadow .32s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header.is-step-change {
	animation: bsAppHeaderPulse .42s ease both !important;
}

@keyframes bsAppHeaderPulse {
	0% { transform: translateY(-3px); opacity: .82; }
	100% { transform: translateY(0); opacity: 1; }
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header__top {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-kicker {
	display: block !important;
	margin: 0 0 3px !important;
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .68rem !important;
	font-weight: 850 !important;
	letter-spacing: .075em !important;
	text-transform: uppercase !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-step-title {
	display: block !important;
	margin: 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: clamp(1.14rem, 3vw, 1.55rem) !important;
	font-weight: 850 !important;
	line-height: 1.08 !important;
	letter-spacing: -.03em !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button {
	display: inline-flex !important;
	min-width: 88px !important;
	min-height: 48px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	padding: 7px 10px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 17px !important;
	background: rgba(255, 255, 255, .9) !important;
	box-shadow: 0 8px 22px rgba(30, 24, 28, .07) !important;
	color: var(--bs-app-ink) !important;
	cursor: pointer !important;
	transition: transform .18s ease, box-shadow .18s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button:active {
	transform: scale(.97) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button__icon {
	font-size: 1.18rem !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button__copy {
	display: grid !important;
	text-align: left !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button__copy b {
	color: var(--bs-app-ink) !important;
	font-size: .8rem !important;
	line-height: 1 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button__copy small {
	margin-top: 3px !important;
	color: var(--bs-app-muted) !important;
	font-size: .69rem !important;
	font-weight: 750 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-progress {
	height: 5px !important;
	margin-top: 13px !important;
	overflow: hidden !important;
	border-radius: 999px !important;
	background: rgba(23, 23, 29, .075) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-progress__fill {
	display: block !important;
	height: 100% !important;
	border-radius: inherit !important;
	background: linear-gradient(90deg, var(--bs-app-brand-green), var(--bs-app-brand-orange)) !important;
	box-shadow: 0 0 14px rgba(101, 162, 49, .30) !important;
	transition: width .45s cubic-bezier(.22, .8, .24, 1) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header__meta {
	display: flex !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-top: 7px !important;
	color: var(--bs-app-muted) !important;
	font-size: .68rem !important;
	font-weight: 700 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
	display: flex !important;
	gap: 7px !important;
	margin: 12px -4px 0 !important;
	padding: 2px 4px 4px !important;
	overflow-x: auto !important;
	scrollbar-width: none !important;
	-webkit-overflow-scrolling: touch !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs::-webkit-scrollbar {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
	position: relative !important;
	display: inline-flex !important;
	min-width: max-content !important;
	min-height: 39px !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 8px 11px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 14px !important;
	background: rgba(255, 255, 255, .64) !important;
	color: var(--bs-app-muted) !important;
	box-shadow: none !important;
	cursor: pointer !important;
	transition: transform .18s ease, background .18s ease, color .18s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab span {
	font-size: .9rem !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab b {
	color: inherit !important;
	font-size: .73rem !important;
	font-weight: 800 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab i {
	position: absolute !important;
	top: 5px !important;
	right: 5px !important;
	display: none !important;
	width: 7px !important;
	height: 7px !important;
	border-radius: 50% !important;
	background: var(--bs-app-brand-green) !important;
	box-shadow: 0 0 0 3px rgba(18, 136, 70, .10) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-complete i {
	display: block !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-active {
	border-color: rgba(101, 162, 49, .24) !important;
	background: linear-gradient(135deg, #f2f8ec, #fff) !important;
	color: var(--bs-app-brand-green-dark) !important;
	box-shadow: 0 8px 20px rgba(63, 127, 42, .13) !important;
	transform: translateY(-1px) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	margin-top: 9px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search[hidden] {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search__icon {
	position: absolute !important;
	left: 13px !important;
	z-index: 2 !important;
	color: var(--bs-app-muted) !important;
	font-size: 1.15rem !important;
	pointer-events: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search__input {
	width: 100% !important;
	height: 43px !important;
	padding: 8px 40px 8px 38px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 15px !important;
	outline: none !important;
	background: rgba(255, 255, 255, .74) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9) !important;
	color: var(--bs-app-ink) !important;
	font-size: .85rem !important;
	transition: border-color .18s ease, box-shadow .18s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search__input:focus {
	border-color: rgba(221, 134, 53, .50) !important;
	box-shadow: 0 0 0 4px rgba(221, 134, 53, .11) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search__clear {
	position: absolute !important;
	right: 7px !important;
	display: grid !important;
	width: 29px !important;
	height: 29px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: transparent !important;
	color: var(--bs-app-muted) !important;
	font-size: 1.1rem !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section.is-bs-app-active,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review.is-bs-app-active {
	display: block !important;
	animation: bsAppStepIn .36s cubic-bezier(.22, .8, .24, 1) both !important;
}

@keyframes bsAppStepIn {
	from { opacity: 0; transform: translateY(12px); }
	to { opacity: 1; transform: translateY(0); }
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section {
	margin: 0 !important;
	padding: 16px !important;
	border: 1px solid rgba(255, 255, 255, .82) !important;
	border-radius: 26px !important;
	background: rgba(255, 255, 255, .64) !important;
	box-shadow: 0 16px 42px rgba(52, 72, 34, .06), inset 0 1px 0 rgba(255, 255, 255, .96) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section__head {
	display: flex !important;
	align-items: end !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin: 0 0 14px !important;
	padding: 0 2px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section__head h3 {
	margin: 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: clamp(1.25rem, 3vw, 1.65rem) !important;
	font-weight: 850 !important;
	letter-spacing: -.035em !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section__head > span {
	padding: 6px 9px !important;
	border: 1px solid rgba(221, 134, 53, .16) !important;
	border-radius: 999px !important;
	background: var(--bs-app-brand-orange-soft) !important;
	color: var(--bs-app-brand-orange-dark) !important;
	font-size: .67rem !important;
	font-weight: 800 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-bs-app-filtered {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile {
	position: relative !important;
	overflow: hidden !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 21px !important;
	background: rgba(255, 255, 255, .88) !important;
	box-shadow: 0 10px 28px rgba(52, 72, 34, .06) !important;
	transition: transform .20s ease, border-color .20s ease, box-shadow .20s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile:active {
	transform: scale(.985) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-selected,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-bs-app-selected {
	border-color: rgba(101, 162, 49, .42) !important;
	box-shadow: 0 15px 36px rgba(63, 127, 42, .16), 0 0 0 3px rgba(101, 162, 49, .08) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-bs-app-selected::before {
	content: "✓" !important;
	position: absolute !important;
	top: 9px !important;
	right: 9px !important;
	z-index: 8 !important;
	display: grid !important;
	width: 25px !important;
	height: 25px !important;
	place-items: center !important;
	border: 2px solid rgba(255, 255, 255, .92) !important;
	border-radius: 50% !important;
	background: var(--bs-app-brand-green) !important;
	box-shadow: 0 7px 17px rgba(63, 127, 42, .28) !important;
	color: #fff !important;
	font-size: .72rem !important;
	font-weight: 900 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image {
	background: linear-gradient(145deg, #fff, #fff5e9) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image img {
	object-fit: contain !important;
	padding: 8px !important;
	transition: transform .28s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile:hover .bs-basic-tile__image img {
	transform: scale(1.025) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__body {
	position: relative !important;
	padding: 10px 10px 12px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile h4 {
	min-height: 2.35em !important;
	margin: 0 0 6px !important;
	color: var(--bs-app-ink) !important;
	font-size: .82rem !important;
	font-weight: 760 !important;
	line-height: 1.18 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price * {
	margin: 0 0 9px !important;
	color: var(--bs-app-brand-orange-dark) !important;
	font-size: .86rem !important;
	font-weight: 850 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__qty-label,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__qty {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty {
	display: grid !important;
	grid-template-columns: 38px minmax(28px, 1fr) 38px !important;
	align-items: center !important;
	min-height: 39px !important;
	overflow: hidden !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 13px !important;
	background: #f7f8f3 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty__button {
	display: grid !important;
	width: 100% !important;
	height: 39px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--bs-app-ink) !important;
	font-size: 1.22rem !important;
	font-weight: 500 !important;
	cursor: pointer !important;
	transition: background .16s ease, transform .16s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty__button:active {
	background: rgba(221, 134, 53, .11) !important;
	transform: scale(.92) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty__button:disabled {
	opacity: .28 !important;
	cursor: default !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty__value {
	color: var(--bs-app-ink) !important;
	font-size: .86rem !important;
	font-weight: 850 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-bs-app-selected .bs-app-qty {
	border-color: rgba(221, 134, 53, .24) !important;
	background: var(--bs-app-brand-green-soft) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-empty {
	display: none !important;
	margin-top: 14px !important;
	padding: 20px !important;
	border: 1px dashed rgba(23, 23, 29, .12) !important;
	border-radius: 18px !important;
	background: rgba(255, 255, 255, .58) !important;
	color: var(--bs-app-muted) !important;
	font-size: .86rem !important;
	font-weight: 700 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-empty.is-visible {
	display: block !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review {
	padding: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__hero {
	padding: 20px !important;
	border: 1px solid rgba(255, 255, 255, .84) !important;
	border-radius: 25px !important;
	background: linear-gradient(145deg, rgba(255, 255, 255, .92), rgba(237, 246, 229, .76)) !important;
	box-shadow: 0 18px 45px rgba(52, 72, 34, .075) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__hero > span {
	display: inline-flex !important;
	padding: 6px 9px !important;
	border-radius: 999px !important;
	background: rgba(221, 134, 53, .12) !important;
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .67rem !important;
	font-weight: 850 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__hero h3 {
	margin: 10px 0 5px !important;
	color: var(--bs-app-ink) !important;
	font-size: clamp(1.5rem, 4vw, 2.2rem) !important;
	font-weight: 880 !important;
	letter-spacing: -.045em !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__hero p {
	margin: 0 !important;
	color: var(--bs-app-muted) !important;
	font-size: .9rem !important;
	line-height: 1.5 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__list {
	display: grid !important;
	gap: 10px !important;
	margin-top: 13px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__empty {
	margin: 13px 0 !important;
	padding: 18px !important;
	border: 1px dashed var(--bs-app-line) !important;
	border-radius: 18px !important;
	color: var(--bs-app-muted) !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__empty[hidden] {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row {
	overflow: hidden !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 19px !important;
	background: rgba(255, 255, 255, .80) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__head {
	display: grid !important;
	width: 100% !important;
	grid-template-columns: 42px minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 12px !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: left !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__icon {
	display: grid !important;
	width: 42px !important;
	height: 42px !important;
	place-items: center !important;
	border-radius: 14px !important;
	background: var(--bs-app-brand-green-soft) !important;
	font-size: 1.15rem !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__head > span:nth-child(2) {
	display: grid !important;
	min-width: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__head b {
	color: var(--bs-app-ink) !important;
	font-size: .87rem !important;
	font-weight: 830 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__head small {
	margin-top: 2px !important;
	color: var(--bs-app-muted) !important;
	font-size: .72rem !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__head i {
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .72rem !important;
	font-style: normal !important;
	font-weight: 800 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__items:empty {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__items {
	display: grid !important;
	gap: 8px !important;
	padding: 0 12px 12px 64px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item {
	display: grid !important;
	grid-template-columns: 40px minmax(0, 1fr) 30px !important;
	align-items: center !important;
	gap: 9px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item img,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item__placeholder {
	display: grid !important;
	width: 40px !important;
	height: 40px !important;
	place-items: center !important;
	object-fit: contain !important;
	padding: 3px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 11px !important;
	background: #fff !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item > span:nth-child(2) {
	display: grid !important;
	min-width: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item b {
	overflow: hidden !important;
	color: var(--bs-app-ink) !important;
	font-size: .76rem !important;
	font-weight: 760 !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item small {
	color: var(--bs-app-muted) !important;
	font-size: .7rem !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-item button {
	display: grid !important;
	width: 29px !important;
	height: 29px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: #f3f5ef !important;
	color: var(--bs-app-muted) !important;
	font-size: 1rem !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-summary {
	margin: 14px 0 0 !important;
	border-radius: 19px !important;
	background: rgba(255, 255, 255, .82) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-main-add-slot {
	margin-top: 10px !important;
	padding: 14px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 21px !important;
	background: rgba(255, 255, 255, .88) !important;
	box-shadow: 0 14px 38px rgba(52, 72, 34, .07) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-main-add-slot__hint {
	margin: 0 0 9px !important;
	color: var(--bs-app-muted) !important;
	font-size: .78rem !important;
	font-weight: 700 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-moved-cart-form {
	width: 100% !important;
	margin: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico form.cart .quantity {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico form.cart .single_add_to_cart_button,
body.bs-personalizador-app-active #bs-personalizador-basico form.cart button[name="add-to-cart"] {
	width: 100% !important;
	min-height: 54px !important;
	margin: 0 !important;
	padding: 14px 18px !important;
	border: 0 !important;
	border-radius: 17px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 15px 34px rgba(63, 127, 42, .24) !important;
	color: #fff !important;
	font-size: .98rem !important;
	font-weight: 850 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock {
	position: sticky !important;
	bottom: 10px !important;
	z-index: 125 !important;
	display: grid !important;
	grid-template-columns: auto minmax(112px, 1fr) auto !important;
	align-items: center !important;
	gap: 8px !important;
	min-height: 68px !important;
	margin: 18px 0 -88px !important;
	padding: 8px !important;
	border: 1px solid rgba(255, 255, 255, .82) !important;
	border-radius: 22px !important;
	background: rgba(255, 255, 255, .88) !important;
	box-shadow: 0 18px 48px rgba(38, 54, 28, .16), inset 0 1px 0 rgba(255, 255, 255, .96) !important;
	backdrop-filter: blur(18px) saturate(150%) !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock button {
	min-height: 50px !important;
	padding: 8px 12px !important;
	border: 0 !important;
	border-radius: 15px !important;
	box-shadow: none !important;
	font-size: .78rem !important;
	font-weight: 800 !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__back {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: #f3f5ef !important;
	color: var(--bs-app-ink) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__back:disabled {
	opacity: .34 !important;
	cursor: default !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__summary {
	display: grid !important;
	align-content: center !important;
	background: transparent !important;
	color: var(--bs-app-ink) !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__summary span {
	color: var(--bs-app-muted) !important;
	font-size: .67rem !important;
	font-weight: 720 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__summary strong {
	margin-top: 2px !important;
	color: var(--bs-app-ink) !important;
	font-size: .88rem !important;
	font-weight: 880 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__next {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 12px 25px rgba(63, 127, 42, .23) !important;
	color: #fff !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__next[hidden] {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico.is-bs-app-reviewing .bs-app-dock {
	grid-template-columns: auto 1fr !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico.is-bs-app-reviewing .bs-app-dock__summary {
	border-radius: 15px !important;
	background: var(--bs-app-brand-green-soft) !important;
}

.bs-app-toast {
	position: fixed !important;
	top: 20px !important;
	left: 50% !important;
	z-index: 1000000 !important;
	max-width: min(88vw, 430px) !important;
	padding: 11px 15px !important;
	border: 1px solid rgba(255, 255, 255, .82) !important;
	border-radius: 15px !important;
	background: rgba(23, 23, 29, .91) !important;
	box-shadow: 0 18px 42px rgba(0, 0, 0, .20) !important;
	color: #fff !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
	font-size: .82rem !important;
	font-weight: 750 !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transform: translate(-50%, -14px) scale(.97) !important;
	transition: opacity .20s ease, transform .24s ease !important;
}

.bs-app-toast.is-visible {
	opacity: 1 !important;
	transform: translate(-50%, 0) scale(1) !important;
}

.bs-app-drawer {
	position: fixed !important;
	inset: 0 !important;
	z-index: 999990 !important;
	display: grid !important;
	place-items: end center !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity .22s ease !important;
}

.bs-app-drawer.is-visible {
	opacity: 1 !important;
	pointer-events: auto !important;
}

.bs-app-drawer__backdrop {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: rgba(19, 16, 18, .38) !important;
	box-shadow: none !important;
	backdrop-filter: blur(7px) !important;
	-webkit-backdrop-filter: blur(7px) !important;
}

.bs-app-drawer__panel {
	position: relative !important;
	z-index: 2 !important;
	display: grid !important;
	width: min(560px, 100%) !important;
	max-height: min(82vh, 760px) !important;
	grid-template-rows: auto auto minmax(0, 1fr) auto !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, .84) !important;
	border-radius: 29px 29px 0 0 !important;
	background: #fff !important;
	box-shadow: 0 -24px 70px rgba(38, 54, 28, .22) !important;
	transform: translateY(28px) !important;
	transition: transform .30s cubic-bezier(.22, .8, .24, 1) !important;
}

.bs-app-drawer.is-visible .bs-app-drawer__panel {
	transform: translateY(0) !important;
}

.bs-app-drawer__handle {
	width: 42px !important;
	height: 5px !important;
	margin: 9px auto 0 !important;
	border-radius: 999px !important;
	background: rgba(23, 23, 29, .12) !important;
}

.bs-app-drawer__panel header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 13px 18px 14px !important;
	border-bottom: 1px solid var(--bs-app-line) !important;
}

.bs-app-drawer__panel header span {
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .67rem !important;
	font-weight: 850 !important;
	letter-spacing: .06em !important;
	text-transform: uppercase !important;
}

.bs-app-drawer__panel header h3 {
	margin: 2px 0 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: 1.22rem !important;
	font-weight: 860 !important;
	letter-spacing: -.03em !important;
}

.bs-app-drawer__close {
	display: grid !important;
	width: 39px !important;
	height: 39px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 13px !important;
	background: #f3f5ef !important;
	box-shadow: none !important;
	color: var(--bs-app-ink) !important;
	font-size: 1.35rem !important;
	cursor: pointer !important;
}

.bs-app-drawer__list {
	display: grid !important;
	align-content: start !important;
	gap: 10px !important;
	overflow-y: auto !important;
	padding: 14px 18px !important;
	background: var(--bs-app-bg) !important;
}

.bs-app-drawer-item {
	display: grid !important;
	grid-template-columns: 54px minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 11px !important;
	padding: 10px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 17px !important;
	background: #fff !important;
	box-shadow: 0 8px 22px rgba(52, 72, 34, .045) !important;
}

.bs-app-drawer-item img,
.bs-app-drawer-item__placeholder {
	display: grid !important;
	width: 54px !important;
	height: 54px !important;
	place-items: center !important;
	object-fit: contain !important;
	padding: 4px !important;
	border-radius: 14px !important;
	background: #fff5e9 !important;
}

.bs-app-drawer-item > span:nth-child(2) {
	display: grid !important;
	min-width: 0 !important;
}

.bs-app-drawer-item small,
.bs-app-drawer-item em {
	color: var(--bs-app-muted) !important;
	font-size: .68rem !important;
	font-style: normal !important;
}

.bs-app-drawer-item b {
	overflow: hidden !important;
	margin: 2px 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: .8rem !important;
	font-weight: 780 !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

.bs-app-drawer-item > div:last-child {
	display: grid !important;
	justify-items: end !important;
	gap: 7px !important;
}

.bs-app-drawer-item strong {
	color: var(--bs-app-ink) !important;
	font-size: .76rem !important;
	font-weight: 850 !important;
}

.bs-app-drawer-item button {
	display: grid !important;
	width: 28px !important;
	height: 28px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 9px !important;
	background: #f3f5ef !important;
	box-shadow: none !important;
	color: var(--bs-app-muted) !important;
	font-size: 1rem !important;
	cursor: pointer !important;
}

.bs-app-drawer__empty {
	display: grid !important;
	place-items: center !important;
	min-height: 240px !important;
	padding: 30px !important;
	color: var(--bs-app-muted) !important;
	text-align: center !important;
}

.bs-app-drawer__empty span {
	font-size: 2rem !important;
}

.bs-app-drawer__empty b {
	margin-top: 7px !important;
	color: var(--bs-app-ink) !important;
	font-size: 1rem !important;
}

.bs-app-drawer__empty p {
	margin: 4px 0 0 !important;
	font-size: .8rem !important;
}

.bs-app-drawer__panel footer {
	display: grid !important;
	grid-template-columns: 1fr auto !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 13px 18px calc(13px + env(safe-area-inset-bottom)) !important;
	border-top: 1px solid var(--bs-app-line) !important;
	background: #fff !important;
}

.bs-app-drawer__panel footer > div {
	display: grid !important;
}

.bs-app-drawer__panel footer span {
	color: var(--bs-app-muted) !important;
	font-size: .67rem !important;
	font-weight: 700 !important;
}

.bs-app-drawer__panel footer strong {
	color: var(--bs-app-ink) !important;
	font-size: 1rem !important;
	font-weight: 880 !important;
}

.bs-app-drawer__review {
	min-height: 47px !important;
	padding: 10px 15px !important;
	border: 0 !important;
	border-radius: 15px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 12px 26px rgba(63, 127, 42, .22) !important;
	color: #fff !important;
	font-size: .8rem !important;
	font-weight: 850 !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal {
	z-index: 1000001 !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__sheet {
	border-radius: 26px !important;
	background: #fff !important;
	box-shadow: 0 28px 90px rgba(32, 43, 24, .26) !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__choose {
	border-radius: 13px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	color: #fff !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__skip {
	border-radius: 13px !important;
	background: #f3f5ef !important;
	color: var(--bs-app-ink) !important;
}

@media (max-width: 700px) {
	body.bs-personalizador-app-active #bs-personalizador-basico.bs-app-mode {
		width: calc(100vw - 8px) !important;
		max-width: calc(100vw - 8px) !important;
		margin: 8px auto 24px !important;
		padding: 0 8px calc(102px + var(--bs-app-bottom-offset, 6px) + env(safe-area-inset-bottom)) !important;
		border-radius: 27px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header {
		top: 4px !important;
		margin: 0 -8px 10px !important;
		padding: 13px 11px 10px !important;
		border-radius: 27px 27px 21px 21px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header__meta > span:last-child {
		display: none !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
		margin-top: 9px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
		min-height: 36px !important;
		padding: 7px 9px !important;
		border-radius: 13px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab b {
		font-size: .68rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section {
		padding: 9px !important;
		border-radius: 21px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section__head {
		margin-bottom: 9px !important;
		padding: 2px 3px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-section__head h3 {
		font-size: 1.12rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile {
		border-radius: 17px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image {
		aspect-ratio: 1 / .78 !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__body {
		padding: 8px 7px 9px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile h4 {
		font-size: .72rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price * {
		font-size: .76rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty {
		grid-template-columns: 34px minmax(24px, 1fr) 34px !important;
		min-height: 36px !important;
		border-radius: 11px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-qty__button {
		height: 36px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock {
		position: fixed !important;
		right: 6px !important;
		bottom: calc(var(--bs-app-bottom-offset, 6px) + env(safe-area-inset-bottom)) !important;
		left: 6px !important;
		z-index: 99980 !important;
		margin: 0 !important;
		padding: 7px !important;
		border-radius: 20px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__back b {
		display: none !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__back {
		width: 48px !important;
		justify-content: center !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__items {
		padding-left: 12px !important;
	}

	.bs-app-toast {
		top: 10px !important;
		font-size: .76rem !important;
	}
}

@media (min-width: 701px) {
	.bs-app-drawer {
		place-items: center !important;
		padding: 24px !important;
	}

	.bs-app-drawer__panel {
		border-radius: 29px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.bs-personalizador-app-active #bs-personalizador-basico *,
	.bs-app-drawer *,
	.bs-app-toast {
		animation-duration: .001ms !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
}


/* =========================================================
 * Bonita Sorpresa / Un Bonito Detalle — identidad oficial
 * Navegación tipo app sin desplazamiento horizontal.
 * ======================================================= */
body.bs-personalizador-app-active {
	overflow-x: clip !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico.bs-app-mode {
	width: 100% !important;
	max-width: 100% !important;
	overflow-x: clip !important;
	background:
		radial-gradient(circle at 5% 0%, rgba(101, 162, 49, .13), transparent 23rem),
		radial-gradient(circle at 96% 9%, rgba(221, 134, 53, .13), transparent 21rem),
		var(--bs-app-bg) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header {
	width: 100% !important;
	max-width: 100% !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-kicker {
	color: var(--bs-app-brand-orange-dark) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-progress__fill {
	background: linear-gradient(90deg, var(--bs-app-brand-green), var(--bs-app-brand-orange)) !important;
	box-shadow: 0 0 14px rgba(101, 162, 49, .25) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(72px, 1fr)) !important;
	gap: 8px !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 12px 0 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
	position: relative !important;
	display: grid !important;
	grid-template-rows: 34px auto !important;
	min-width: 0 !important;
	min-height: 76px !important;
	align-content: center !important;
	justify-items: center !important;
	gap: 5px !important;
	padding: 7px 4px 6px !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 18px !important;
	background: rgba(255, 255, 255, .78) !important;
	color: var(--bs-app-muted) !important;
	box-shadow: 0 7px 18px rgba(52, 72, 34, .055) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > span {
	display: grid !important;
	width: 34px !important;
	height: 34px !important;
	place-items: center !important;
	border-radius: 12px !important;
	background: var(--bs-app-brand-orange-soft) !important;
	font-size: 1.05rem !important;
	line-height: 1 !important;
	transition: transform .18s ease, background .18s ease !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > b {
	display: -webkit-box !important;
	overflow: hidden !important;
	max-width: 100% !important;
	color: inherit !important;
	font-size: .66rem !important;
	font-weight: 820 !important;
	line-height: 1.08 !important;
	text-align: center !important;
	word-break: normal !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > i {
	position: absolute !important;
	top: 5px !important;
	right: 5px !important;
	display: none !important;
	min-width: 18px !important;
	height: 18px !important;
	place-items: center !important;
	padding: 0 4px !important;
	border: 2px solid #fff !important;
	border-radius: 999px !important;
	background: var(--bs-app-brand-orange) !important;
	box-shadow: 0 4px 10px rgba(200, 111, 31, .24) !important;
	color: #fff !important;
	font-size: .58rem !important;
	font-style: normal !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-complete > i {
	display: grid !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-active {
	border-color: rgba(101, 162, 49, .38) !important;
	background: linear-gradient(145deg, var(--bs-app-brand-green-soft), #fff) !important;
	color: var(--bs-app-brand-green-dark) !important;
	box-shadow: 0 11px 24px rgba(63, 127, 42, .14), 0 0 0 2px rgba(101, 162, 49, .07) !important;
	transform: translateY(-2px) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-active > span {
	background: var(--bs-app-brand-green) !important;
	box-shadow: 0 7px 15px rgba(63, 127, 42, .22) !important;
	transform: scale(1.04) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search__input:focus {
	border-color: rgba(221, 134, 53, .55) !important;
	box-shadow: 0 0 0 4px rgba(221, 134, 53, .12) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-results {
	position: absolute !important;
	top: calc(100% - 4px) !important;
	right: 18px !important;
	left: 18px !important;
	z-index: 50 !important;
	display: none !important;
	max-height: min(390px, 55vh) !important;
	overflow-y: auto !important;
	padding: 8px !important;
	border: 1px solid rgba(101, 162, 49, .20) !important;
	border-radius: 18px !important;
	background: rgba(255, 255, 255, .97) !important;
	box-shadow: 0 20px 55px rgba(38, 54, 28, .20) !important;
	backdrop-filter: blur(18px) !important;
	-webkit-backdrop-filter: blur(18px) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-results.is-visible {
	display: grid !important;
	gap: 6px !important;
	animation: bsAppSearchIn .18s ease both !important;
}

@keyframes bsAppSearchIn {
	from { opacity: 0; transform: translateY(-5px) scale(.99); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result {
	display: grid !important;
	grid-template-columns: 50px minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	min-width: 0 !important;
	padding: 8px !important;
	border: 1px solid transparent !important;
	border-radius: 14px !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--bs-app-ink) !important;
	text-align: left !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result:hover,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result:focus-visible {
	border-color: rgba(101, 162, 49, .20) !important;
	background: var(--bs-app-brand-green-soft) !important;
	outline: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result img,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result__placeholder {
	display: grid !important;
	width: 50px !important;
	height: 50px !important;
	place-items: center !important;
	object-fit: contain !important;
	padding: 3px !important;
	border-radius: 12px !important;
	background: var(--bs-app-brand-orange-soft) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result > span:nth-child(2) {
	display: grid !important;
	min-width: 0 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result small {
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .62rem !important;
	font-weight: 820 !important;
	text-transform: uppercase !important;
	letter-spacing: .035em !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result b {
	overflow: hidden !important;
	color: var(--bs-app-ink) !important;
	font-size: .79rem !important;
	font-weight: 790 !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result em {
	color: var(--bs-app-brand-orange-dark) !important;
	font-size: .68rem !important;
	font-style: normal !important;
	font-weight: 820 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-result > i {
	padding: 6px 9px !important;
	border-radius: 10px !important;
	background: var(--bs-app-brand-orange-soft) !important;
	color: var(--bs-app-brand-orange-dark) !important;
	font-size: .65rem !important;
	font-style: normal !important;
	font-weight: 850 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-results__empty {
	padding: 18px 12px !important;
	color: var(--bs-app-muted) !important;
	font-size: .8rem !important;
	font-weight: 700 !important;
	text-align: center !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile.is-bs-app-highlighted {
	animation: bsAppHighlight 1.45s ease both !important;
}

@keyframes bsAppHighlight {
	0%, 100% { box-shadow: 0 10px 28px rgba(52, 72, 34, .06); }
	20%, 72% {
		border-color: var(--bs-app-brand-orange) !important;
		box-shadow: 0 0 0 5px rgba(221, 134, 53, .14), 0 16px 38px rgba(63, 127, 42, .15) !important;
		transform: translateY(-3px);
	}
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__price * {
	color: var(--bs-app-brand-orange-dark) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico form.cart .single_add_to_cart_button,
body.bs-personalizador-app-active #bs-personalizador-basico form.cart button[name="add-to-cart"],
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-dock__next,
.bs-app-drawer__review,
body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__choose {
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 13px 29px rgba(63, 127, 42, .24) !important;
}

@media (max-width: 700px) {
	body.bs-personalizador-app-active #bs-personalizador-basico.bs-app-mode {
		width: 100% !important;
		max-width: 100% !important;
		margin: 8px 0 24px !important;
		padding-right: 8px !important;
		padding-left: 8px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header {
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding-right: 10px !important;
		padding-left: 10px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 6px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
		min-height: 70px !important;
		padding: 6px 2px 5px !important;
		border-radius: 15px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > span {
		width: 31px !important;
		height: 31px !important;
		border-radius: 11px !important;
		font-size: .96rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > b {
		font-size: .59rem !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-search-results {
		right: 10px !important;
		left: 10px !important;
	}
}

/* ================================================================
 * v1.3.0 — popup aislado + una sola navegación inferior en móvil
 * ================================================================ */

html.bs-app-validation-lock,
html.bs-app-validation-lock body {
	overflow: hidden !important;
	overscroll-behavior: none !important;
}

/* El menú inferior externo se oculta solamente en el producto donde
 * está activo el personalizador. El plugin que lo creó no se modifica. */
body.bs-personalizador-app-active .bs-app-external-bottom-nav {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Cuando aparece la validación, también se retira momentáneamente el dock
 * del personalizador para que la decisión tenga toda la atención. */
body.bs-personalizador-app-active.bs-app-validation-open #bs-personalizador-basico .bs-app-dock {
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transform: translateY(120%) !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal,
body.bs-personalizador-app-active #bs-basic-required-modal.bs-app-required-modal {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147483647 !important;
	isolation: isolate !important;
	contain: none !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 18px !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	background: transparent !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__backdrop {
	position: absolute !important;
	inset: 0 !important;
	z-index: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: rgba(20, 24, 17, .56) !important;
	box-shadow: none !important;
	backdrop-filter: blur(12px) saturate(115%) !important;
	-webkit-backdrop-filter: blur(12px) saturate(115%) !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__sheet {
	position: relative !important;
	z-index: 2 !important;
	isolation: isolate !important;
	display: block !important;
	width: min(500px, calc(100vw - 28px)) !important;
	max-width: 500px !important;
	max-height: min(78dvh, 650px) !important;
	margin: 0 !important;
	padding: 19px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	overscroll-behavior: contain !important;
	border: 1px solid rgba(73, 113, 40, .14) !important;
	border-radius: 27px !important;
	background: #ffffff !important;
	box-shadow: 0 30px 90px rgba(18, 29, 10, .34) !important;
	transform: none !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__sheet::before {
	content: "" !important;
	position: absolute !important;
	top: 0 !important;
	right: 0 !important;
	left: 0 !important;
	z-index: -1 !important;
	height: 112px !important;
	background: linear-gradient(150deg, rgba(101, 162, 49, .14), rgba(221, 134, 53, .08), transparent) !important;
	pointer-events: none !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__eyebrow {
	display: inline-flex !important;
	margin: 0 42px 8px 0 !important;
	padding: 6px 10px !important;
	border: 1px solid rgba(101, 162, 49, .15) !important;
	border-radius: 999px !important;
	background: var(--bs-app-brand-green-soft) !important;
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .72rem !important;
	font-weight: 850 !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal h3 {
	margin: 0 42px 7px 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: clamp(1.18rem, 5vw, 1.42rem) !important;
	font-weight: 880 !important;
	line-height: 1.08 !important;
	letter-spacing: -.025em !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__text {
	margin: 0 0 14px !important;
	color: var(--bs-app-muted) !important;
	font-size: .88rem !important;
	line-height: 1.42 !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__missing {
	display: grid !important;
	gap: 9px !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	min-width: 0 !important;
	padding: 11px !important;
	border: 1px solid rgba(101, 162, 49, .14) !important;
	border-radius: 17px !important;
	background: #fbfdf8 !important;
	box-shadow: none !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__row > span {
	min-width: 0 !important;
	color: var(--bs-app-ink) !important;
	font-size: .87rem !important;
	font-weight: 850 !important;
	line-height: 1.2 !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__actions {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, auto)) !important;
	align-items: stretch !important;
	gap: 7px !important;
	width: auto !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__choose,
body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__skip {
	min-width: 0 !important;
	min-height: 42px !important;
	height: auto !important;
	padding: 8px 12px !important;
	border-radius: 12px !important;
	box-shadow: none !important;
	font-size: .76rem !important;
	font-weight: 850 !important;
	line-height: 1.12 !important;
	text-align: center !important;
	white-space: normal !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__choose {
	border: 0 !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	color: #ffffff !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__skip {
	border: 1px solid rgba(221, 134, 53, .20) !important;
	background: var(--bs-app-brand-orange-soft) !important;
	color: var(--bs-app-brand-orange-dark) !important;
}

body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__close {
	z-index: 4 !important;
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 13px !important;
	background: rgba(255, 255, 255, .90) !important;
	box-shadow: 0 8px 20px rgba(30, 42, 20, .08) !important;
	color: var(--bs-app-ink) !important;
	font-size: 1.28rem !important;
	line-height: 1 !important;
}

@media (max-width: 700px) {
	body.bs-personalizador-app-active #bs-basic-required-modal,
	body.bs-personalizador-app-active #bs-basic-required-modal.bs-app-required-modal {
		padding: 6px !important;
		align-items: flex-end !important;
	}

	body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__sheet {
		width: 100% !important;
		max-width: 100% !important;
		max-height: min(76dvh, 620px) !important;
		padding: 17px 14px calc(15px + env(safe-area-inset-bottom)) !important;
		border-radius: 25px 25px 18px 18px !important;
	}

	body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__row {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		padding: 10px !important;
	}

	body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__actions {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		width: 100% !important;
	}

	body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__choose,
	body.bs-personalizador-app-active #bs-basic-required-modal .bs-basic-modal__skip {
		width: 100% !important;
		padding-right: 8px !important;
		padding-left: 8px !important;
	}
}

/* ================================================================
 * v1.4.0 — botón subir oculto + confirmación segura de carrito
 * ================================================================ */

/* Astra y selectores comunes de “volver arriba”. Solo se ocultan en el
 * producto donde el Modo App está realmente activo. */
body.bs-personalizador-app-active #ast-scroll-top,
body.bs-personalizador-app-active .ast-scroll-top-icon,
body.bs-personalizador-app-active #scroll-to-top,
body.bs-personalizador-app-active .scroll-to-top,
body.bs-personalizador-app-active .back-to-top,
body.bs-personalizador-app-active .scrollup,
body.bs-personalizador-app-active .to-top,
body.bs-personalizador-app-active .wpfront-scroll-top-container {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transform: none !important;
}

/* Si por cualquier motivo JavaScript no construye la tarjeta nueva, el
 * aviso nativo de WooCommerce conserva toda su función y luce con la marca. */
body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) {
	max-width: 760px !important;
	margin: 16px auto 24px !important;
	padding: 18px 18px 18px 58px !important;
	border: 1px solid rgba(101, 162, 49, .18) !important;
	border-left: 5px solid var(--bs-app-brand-green) !important;
	border-radius: 20px !important;
	background: linear-gradient(135deg, #ffffff, var(--bs-app-brand-green-soft)) !important;
	box-shadow: 0 16px 40px rgba(52, 72, 34, .10) !important;
	color: var(--bs-app-ink) !important;
	font-size: .95rem !important;
	line-height: 1.45 !important;
}

body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced)::before {
	top: 17px !important;
	left: 20px !important;
	color: var(--bs-app-brand-green-dark) !important;
	font-size: 1.1rem !important;
}

body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) .button,
body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) a.button {
	margin-left: 12px !important;
	padding: 10px 15px !important;
	border: 0 !important;
	border-radius: 12px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 9px 20px rgba(63, 127, 42, .20) !important;
	color: #ffffff !important;
	font-size: .82rem !important;
	font-weight: 850 !important;
	text-transform: none !important;
}

/* El original solo se retira cuando la confirmación nueva ya fue creada.
 * Si el script falla, WooCommerce seguirá mostrando su aviso normal. */
body.bs-personalizador-app-active .woocommerce-message.bs-app-native-cart-notice--enhanced {
	display: none !important;
}

.bs-app-cart-success {
	position: fixed !important;
	top: calc(env(safe-area-inset-top) + 14px) !important;
	left: 50% !important;
	z-index: 1000002 !important;
	display: grid !important;
	grid-template-columns: 52px minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 13px !important;
	width: min(620px, calc(100vw - 28px)) !important;
	min-height: 88px !important;
	padding: 14px 48px 14px 14px !important;
	border: 1px solid rgba(101, 162, 49, .18) !important;
	border-radius: 24px !important;
	background:
		radial-gradient(circle at 5% 8%, rgba(221, 134, 53, .13), transparent 34%),
		rgba(255, 255, 255, .97) !important;
	box-shadow: 0 24px 70px rgba(38, 54, 28, .22), inset 0 1px 0 rgba(255, 255, 255, .96) !important;
	backdrop-filter: blur(18px) saturate(140%) !important;
	-webkit-backdrop-filter: blur(18px) saturate(140%) !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transform: translate(-50%, -18px) scale(.97) !important;
	transition: opacity .22s ease, transform .28s cubic-bezier(.22, .8, .24, 1) !important;
}

.bs-app-cart-success.is-visible {
	opacity: 1 !important;
	pointer-events: auto !important;
	transform: translate(-50%, 0) scale(1) !important;
}

.bs-app-cart-success__icon {
	display: grid !important;
	width: 52px !important;
	height: 52px !important;
	place-items: center !important;
	border-radius: 18px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green), var(--bs-app-brand-green-dark)) !important;
	box-shadow: 0 12px 26px rgba(63, 127, 42, .25), inset 0 1px 0 rgba(255, 255, 255, .34) !important;
	color: #ffffff !important;
	font-size: 1.35rem !important;
	font-weight: 900 !important;
}

.bs-app-cart-success__copy {
	display: grid !important;
	min-width: 0 !important;
	gap: 3px !important;
}

.bs-app-cart-success__copy strong {
	color: var(--bs-app-ink) !important;
	font-size: 1rem !important;
	font-weight: 900 !important;
	line-height: 1.15 !important;
	letter-spacing: -.02em !important;
}

.bs-app-cart-success__copy span {
	color: var(--bs-app-muted) !important;
	font-size: .79rem !important;
	font-weight: 650 !important;
	line-height: 1.35 !important;
}

.bs-app-cart-success__actions {
	display: flex !important;
	align-items: center !important;
	gap: 7px !important;
}

.bs-app-cart-success__continue,
.bs-app-cart-success__cart {
	display: inline-flex !important;
	min-height: 42px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	margin: 0 !important;
	padding: 9px 13px !important;
	border-radius: 13px !important;
	box-shadow: none !important;
	font-size: .75rem !important;
	font-weight: 850 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	cursor: pointer !important;
}

.bs-app-cart-success__continue {
	border: 1px solid var(--bs-app-line) !important;
	background: #f4f6f0 !important;
	color: var(--bs-app-ink) !important;
}

.bs-app-cart-success__cart {
	border: 0 !important;
	background: linear-gradient(135deg, var(--bs-app-brand-orange), var(--bs-app-brand-orange-dark)) !important;
	box-shadow: 0 10px 24px rgba(200, 111, 31, .22) !important;
	color: #ffffff !important;
}

.bs-app-cart-success__close {
	position: absolute !important;
	top: 8px !important;
	right: 8px !important;
	display: grid !important;
	width: 32px !important;
	height: 32px !important;
	place-items: center !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 11px !important;
	background: rgba(23, 23, 23, .055) !important;
	box-shadow: none !important;
	color: var(--bs-app-muted) !important;
	font-size: 1.1rem !important;
	line-height: 1 !important;
	cursor: pointer !important;
}

body.admin-bar .bs-app-cart-success {
	top: calc(46px + env(safe-area-inset-top)) !important;
}

body.bs-app-validation-open .bs-app-cart-success {
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 700px) {
	body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) {
		margin: 10px 12px 22px !important;
		padding: 16px 15px 16px 48px !important;
		border-radius: 17px !important;
		font-size: .84rem !important;
	}

	body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced)::before {
		top: 16px !important;
		left: 16px !important;
	}

	body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) .button,
	body.bs-personalizador-app-active .woocommerce-message:not(.bs-app-native-cart-notice--enhanced) a.button {
		float: none !important;
		display: inline-flex !important;
		margin: 10px 0 0 !important;
	}

	.bs-app-cart-success {
		top: calc(env(safe-area-inset-top) + 8px) !important;
		grid-template-columns: 46px minmax(0, 1fr) !important;
		gap: 10px !important;
		width: calc(100vw - 16px) !important;
		min-height: 0 !important;
		padding: 12px 38px 12px 11px !important;
		border-radius: 21px !important;
	}

	.bs-app-cart-success__icon {
		width: 46px !important;
		height: 46px !important;
		border-radius: 15px !important;
		font-size: 1.18rem !important;
	}

	.bs-app-cart-success__copy strong {
		font-size: .91rem !important;
	}

	.bs-app-cart-success__copy span {
		font-size: .72rem !important;
	}

	.bs-app-cart-success__actions {
		grid-column: 1 / -1 !important;
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 7px !important;
	}

	.bs-app-cart-success__continue,
	.bs-app-cart-success__cart {
		width: 100% !important;
		min-height: 40px !important;
		padding: 8px 10px !important;
		font-size: .72rem !important;
	}

	body.admin-bar .bs-app-cart-success {
		top: calc(52px + env(safe-area-inset-top)) !important;
	}
}

/* =========================================================
 * v1.5.2 — Inicio guiado Capa 3: colores exactos + motivo
 * ======================================================= */
html.bs-app-intro-lock,
html.bs-app-intro-lock body {
	overflow: hidden !important;
	overscroll-behavior: none !important;
}

body.bs-app-layer3-product.bs-personalizador-app-active #bs-personalizador-basico.has-bs-app-onboarding .bscc-selector.is-in-app-header {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__progress {
	display: grid !important;
	gap: 3px !important;
	margin-top: 13px !important;
	padding: 11px 13px !important;
	border: 1px solid rgba(101, 162, 49, .17) !important;
	border-radius: 15px !important;
	background: rgba(255, 255, 255, .65) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__progress strong {
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .82rem !important;
	font-weight: 900 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__progress small {
	color: var(--bs-app-muted) !important;
	font-size: .69rem !important;
	line-height: 1.35 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__quick-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-top: 10px !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__quick-actions button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 8px 13px !important;
	border: 1px solid rgba(101, 162, 49, .22) !important;
	border-radius: 13px !important;
	background: rgba(255, 255, 255, .82) !important;
	box-shadow: 0 8px 20px rgba(52, 72, 34, .07) !important;
	color: var(--bs-app-brand-green-dark) !important;
	font-size: .75rem !important;
	font-weight: 850 !important;
	cursor: pointer !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__quick-actions button[hidden] {
	display: none !important;
}

.bs-app-intro {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147482000 !important;
	display: grid !important;
	align-items: end !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity .24s ease, visibility .24s ease !important;
}

.bs-app-intro.is-visible {
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

.bs-app-intro__backdrop {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(16, 18, 15, .34) !important;
	backdrop-filter: blur(8px) saturate(110%) !important;
	-webkit-backdrop-filter: blur(8px) saturate(110%) !important;
}

.bs-app-intro__sheet {
	position: relative !important;
	z-index: 2 !important;
	width: min(620px, 100%) !important;
	max-height: min(88vh, 760px) !important;
	margin: 0 auto !important;
	padding: 10px 16px calc(16px + env(safe-area-inset-bottom)) !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, .9) !important;
	border-radius: 30px 30px 0 0 !important;
	background:
		radial-gradient(circle at 8% 0%, rgba(101, 162, 49, .12), transparent 18rem),
		linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,250,246,.98)) !important;
	box-shadow: 0 -22px 70px rgba(24, 30, 20, .18) !important;
	transform: translateY(28px) !important;
	transition: transform .34s cubic-bezier(.2,.8,.2,1) !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

.bs-app-intro.is-visible .bs-app-intro__sheet {
	transform: translateY(0) !important;
}

.bs-app-intro__sheet.has-error {
	animation: bsAppIntroShake .34s ease both !important;
}

@keyframes bsAppIntroShake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-7px); }
	75% { transform: translateX(7px); }
}

.bs-app-intro__handle {
	width: 42px !important;
	height: 5px !important;
	margin: 1px auto 10px !important;
	border-radius: 999px !important;
	background: rgba(23, 23, 29, .13) !important;
}

.bs-app-intro__sheet header {
	display: block !important;
	padding: 0 2px !important;
}

.bs-app-intro__counter {
	display: inline-flex !important;
	margin-bottom: 5px !important;
	color: var(--bs-app-brand-green-dark, #477727) !important;
	font-size: .68rem !important;
	font-weight: 850 !important;
	letter-spacing: .07em !important;
	text-transform: uppercase !important;
}

.bs-app-intro__sheet h2 {
	margin: 0 !important;
	color: #171719 !important;
	font-size: clamp(1.22rem, 4vw, 1.55rem) !important;
	font-weight: 880 !important;
	line-height: 1.08 !important;
	letter-spacing: -.035em !important;
}

.bs-app-intro__sheet header p {
	margin: 6px 0 0 !important;
	color: rgba(23, 23, 29, .62) !important;
	font-size: .82rem !important;
	line-height: 1.4 !important;
}

.bs-app-intro__progress {
	height: 5px !important;
	margin: 12px 0 14px !important;
	overflow: hidden !important;
	border-radius: 999px !important;
	background: rgba(23, 23, 29, .075) !important;
}

.bs-app-intro__fill {
	display: block !important;
	height: 100% !important;
	border-radius: inherit !important;
	background: linear-gradient(90deg, var(--bs-app-brand-green, #65a231), var(--bs-app-brand-orange, #dd8635)) !important;
	transition: width .3s ease !important;
}

.bs-app-intro__screens {
	min-height: 260px !important;
	max-height: calc(88vh - 230px) !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	overscroll-behavior: contain !important;
}

.bs-app-intro__screen {
	display: none !important;
}

.bs-app-intro__screen.is-active {
	display: block !important;
	animation: bsAppIntroIn .28s ease both !important;
}

@keyframes bsAppIntroIn {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

.bs-app-intro__heading {
	display: grid !important;
	grid-template-columns: 38px minmax(0, 1fr) !important;
	gap: 10px !important;
	align-items: start !important;
	margin-bottom: 13px !important;
}

.bs-app-intro__heading > span {
	display: grid !important;
	width: 38px !important;
	height: 38px !important;
	place-items: center !important;
	border-radius: 13px !important;
	background: rgba(101, 162, 49, .12) !important;
	color: var(--bs-app-brand-green-dark, #477727) !important;
	font-size: .8rem !important;
	font-weight: 900 !important;
}

.bs-app-intro__heading h3 {
	margin: 0 !important;
	color: #171719 !important;
	font-size: 1.08rem !important;
	font-weight: 850 !important;
	line-height: 1.16 !important;
}

.bs-app-intro__heading p {
	margin: 4px 0 0 !important;
	color: rgba(23, 23, 29, .58) !important;
	font-size: .76rem !important;
	line-height: 1.35 !important;
}

.bs-app-intro__colors {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 9px !important;
}

.bs-app-intro-color {
	display: grid !important;
	grid-template-columns: 34px minmax(0, 1fr) 22px !important;
	align-items: center !important;
	gap: 9px !important;
	min-height: 54px !important;
	padding: 9px 10px !important;
	border: 1px solid rgba(23, 23, 29, .09) !important;
	border-radius: 17px !important;
	background: rgba(255, 255, 255, .88) !important;
	box-shadow: 0 8px 22px rgba(45, 55, 38, .055) !important;
	color: #171719 !important;
	text-align: left !important;
	cursor: pointer !important;
}

.bs-app-intro-color > i {
	display: block !important;
	width: 31px !important;
	height: 31px !important;
	border: 3px solid #fff !important;
	border-radius: 11px !important;
	background: var(--bs-intro-swatch) !important;
	box-shadow: 0 0 0 1px rgba(23, 23, 29, .12), 0 5px 12px rgba(23, 23, 29, .10) !important;
}

.bs-app-intro-color b {
	font-size: .79rem !important;
	font-weight: 820 !important;
	line-height: 1.2 !important;
}

.bs-app-intro-color > span {
	display: grid !important;
	width: 21px !important;
	height: 21px !important;
	place-items: center !important;
	border-radius: 50% !important;
	background: rgba(23, 23, 29, .07) !important;
	color: transparent !important;
	font-size: .68rem !important;
	font-weight: 900 !important;
}

.bs-app-intro-color.is-selected,
.bs-app-intro-motif.is-selected {
	border-color: rgba(101, 162, 49, .44) !important;
	background: linear-gradient(135deg, rgba(242,248,236,.98), #fff) !important;
	box-shadow: 0 12px 28px rgba(63, 127, 42, .13), 0 0 0 3px rgba(101, 162, 49, .07) !important;
}

.bs-app-intro-color.is-selected > span {
	background: var(--bs-app-brand-green, #65a231) !important;
	color: #fff !important;
}

.bs-app-intro__motifs {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 10px !important;
}

.bs-app-intro-motif {
	position: relative !important;
	display: grid !important;
	grid-template-rows: 116px auto !important;
	min-width: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	border: 1px solid rgba(23, 23, 29, .09) !important;
	border-radius: 19px !important;
	background: rgba(255, 255, 255, .92) !important;
	box-shadow: 0 9px 24px rgba(45, 55, 38, .055) !important;
	color: #171719 !important;
	text-align: left !important;
	cursor: pointer !important;
}

.bs-app-intro-motif > img,
.bs-app-intro-motif__placeholder {
	display: grid !important;
	width: 100% !important;
	height: 116px !important;
	place-items: center !important;
	object-fit: contain !important;
	padding: 8px !important;
	background: linear-gradient(145deg, #fff, #fff6ea) !important;
	font-size: 2rem !important;
}

.bs-app-intro-motif > span:nth-child(2) {
	display: grid !important;
	gap: 3px !important;
	padding: 9px 10px 11px !important;
}

.bs-app-intro-motif b {
	display: -webkit-box !important;
	overflow: hidden !important;
	-webkit-box-orient: vertical !important;
	-webkit-line-clamp: 2 !important;
	font-size: .76rem !important;
	font-weight: 820 !important;
	line-height: 1.2 !important;
}

.bs-app-intro-motif small {
	color: var(--bs-app-brand-orange-dark, #995218) !important;
	font-size: .72rem !important;
	font-weight: 850 !important;
}

.bs-app-intro-motif > i {
	position: absolute !important;
	top: 8px !important;
	right: 8px !important;
	display: grid !important;
	width: 25px !important;
	height: 25px !important;
	place-items: center !important;
	border: 2px solid rgba(255,255,255,.92) !important;
	border-radius: 50% !important;
	background: rgba(23, 23, 29, .18) !important;
	color: transparent !important;
	font-size: .7rem !important;
	font-style: normal !important;
	font-weight: 900 !important;
}

.bs-app-intro-motif.is-selected > i {
	background: var(--bs-app-brand-green, #65a231) !important;
	color: #fff !important;
}

.bs-app-intro__error {
	display: none !important;
	margin: 0 18px 10px !important;
	padding: 10px 12px !important;
	border-radius: 13px !important;
	background: #fff2f2 !important;
	color: #a52b2b !important;
	font-size: .78rem !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
}

.bs-app-intro__error.is-visible {
	display: block !important;
}

.bs-app-intro__next[aria-disabled="true"] {
	box-shadow: 0 0 0 3px rgba(165, 43, 43, .08) !important;
}

.bs-app-intro__sheet footer {
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) !important;
	gap: 9px !important;
	margin-top: 14px !important;
	padding-top: 12px !important;
	border-top: 1px solid rgba(23, 23, 29, .075) !important;
}

.bs-app-intro__sheet footer button {
	min-height: 48px !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 15px !important;
	font-size: .82rem !important;
	font-weight: 850 !important;
	cursor: pointer !important;
}

.bs-app-intro__back {
	background: rgba(23, 23, 29, .07) !important;
	color: #171719 !important;
}

.bs-app-intro__next {
	background: #171719 !important;
	color: #fff !important;
	box-shadow: 0 10px 24px rgba(23, 23, 29, .16) !important;
}

.bs-app-intro__next:disabled {
	opacity: .34 !important;
	cursor: not-allowed !important;
	box-shadow: none !important;
}

@media (min-width: 701px) {
	.bs-app-intro {
		place-items: center !important;
		padding: 24px !important;
	}

	.bs-app-intro__sheet {
		border-radius: 30px !important;
	}
}

@media (max-width: 420px) {
	.bs-app-intro__sheet {
		padding-right: 11px !important;
		padding-left: 11px !important;
	}

	.bs-app-intro__colors,
	.bs-app-intro__motifs {
		gap: 8px !important;
	}

	.bs-app-intro-motif {
		grid-template-rows: 102px auto !important;
	}

	.bs-app-intro-motif > img,
	.bs-app-intro-motif__placeholder {
		height: 102px !important;
	}
}


/* =========================================================
   Confirmación por categoría · v1.5.2
   ========================================================= */
html.bs-app-decision-lock,
html.bs-app-decision-lock body {
	overflow: hidden !important;
}

.bs-app-category-decision {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147482900 !important;
	display: grid !important;
	align-items: end !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity .2s ease, visibility .2s ease !important;
}

.bs-app-category-decision.is-visible {
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
}

.bs-app-category-decision__backdrop {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: rgba(18, 19, 22, .34) !important;
	backdrop-filter: blur(8px) !important;
	-webkit-backdrop-filter: blur(8px) !important;
	cursor: default !important;
}

.bs-app-category-decision__sheet {
	position: relative !important;
	z-index: 1 !important;
	width: min(540px, 100%) !important;
	max-height: min(82vh, 620px) !important;
	margin: 0 auto !important;
	padding: 12px 16px calc(16px + env(safe-area-inset-bottom)) !important;
	border: 1px solid rgba(255, 255, 255, .72) !important;
	border-radius: 26px 26px 0 0 !important;
	background: rgba(255, 255, 255, .96) !important;
	box-shadow: 0 -18px 58px rgba(20, 21, 24, .18) !important;
	color: #171719 !important;
	transform: translateY(24px) !important;
	transition: transform .24s cubic-bezier(.2,.8,.2,1) !important;
}

.bs-app-category-decision.is-visible .bs-app-category-decision__sheet {
	transform: translateY(0) !important;
}

.bs-app-category-decision__handle {
	width: 42px !important;
	height: 5px !important;
	margin: 0 auto 15px !important;
	border-radius: 99px !important;
	background: rgba(23, 23, 25, .16) !important;
}

.bs-app-category-decision__eyebrow {
	display: block !important;
	margin-bottom: 5px !important;
	font-size: .7rem !important;
	font-weight: 850 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	color: var(--bs-app-brand-green, #65a231) !important;
}

.bs-app-category-decision__title {
	margin: 0 !important;
	font-size: clamp(1.15rem, 5vw, 1.42rem) !important;
	line-height: 1.18 !important;
	font-weight: 900 !important;
	letter-spacing: -.025em !important;
	color: #171719 !important;
}

.bs-app-category-decision__copy {
	margin: 8px 0 16px !important;
	font-size: .88rem !important;
	line-height: 1.48 !important;
	color: rgba(23, 23, 25, .68) !important;
}

.bs-app-category-decision__actions {
	display: grid !important;
	grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) !important;
	gap: 9px !important;
}

.bs-app-category-decision__actions button {
	min-height: 48px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	border: 0 !important;
	border-radius: 15px !important;
	font-size: .79rem !important;
	font-weight: 850 !important;
	line-height: 1.2 !important;
	cursor: pointer !important;
}

.bs-app-category-decision__keep {
	background: rgba(23, 23, 25, .07) !important;
	color: #171719 !important;
}

.bs-app-category-decision__skip {
	background: #171719 !important;
	color: #fff !important;
	box-shadow: 0 10px 24px rgba(23, 23, 25, .14) !important;
}

@media (min-width: 701px) {
	.bs-app-category-decision {
		place-items: center !important;
		padding: 24px !important;
	}

	.bs-app-category-decision__sheet {
		border-radius: 28px !important;
		padding: 16px 20px 20px !important;
	}
}

@media (max-width: 390px) {
	.bs-app-category-decision__actions {
		grid-template-columns: 1fr !important;
	}
}


/* v1.5.7 — resumen más limpio y decisiones persistentes. */
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-summary__count {
	display: none !important;
}


/* =========================================================
 * v1.5.9 — Salida clara y prioridad absoluta del carrito
 * ======================================================= */
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-exit-row {
	display: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header__actions {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	flex: 0 0 auto !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-exit-product {
	display: grid !important;
	width: 48px !important;
	height: 48px !important;
	place-items: center !important;
	align-content: center !important;
	gap: 1px !important;
	padding: 0 !important;
	border: 1px solid var(--bs-app-line) !important;
	border-radius: 17px !important;
	background: rgba(255,255,255,.92) !important;
	box-shadow: 0 8px 22px rgba(30,24,28,.07) !important;
	color: var(--bs-app-ink) !important;
	text-decoration: none !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-exit-product span {
	display: block !important;
	font-size: 1.22rem !important;
	font-weight: 700 !important;
	line-height: .8 !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-exit-product small {
	display: block !important;
	font-size: .52rem !important;
	font-weight: 850 !important;
	line-height: 1 !important;
}

body.bs-cart-priority-open .bs-app-intro,
body.bs-cart-priority-open .bs-app-drawer,
body.bs-cart-priority-open .bs-app-category-decision,
body.bs-cart-priority-open .bs-basic-modal {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 520px) {
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-header__actions {
		gap: 6px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-cart-button {
		min-width: 76px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-exit-product {
		width: 44px !important;
		height: 44px !important;
		border-radius: 15px !important;
	}
}


/* =========================================================
 * v1.6.1 — Inicio cerrado, CTA flotante y footer siempre visible
 * ======================================================= */
.bs-app-intro__sheet {
	display: grid !important;
	grid-template-rows: auto auto auto minmax(0, 1fr) auto auto !important;
	max-height: min(88vh, 760px) !important;
	max-height: min(88dvh, 760px) !important;
	overflow: hidden !important;
}

.bs-app-intro__sheet header {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 14px !important;
	min-width: 0 !important;
}

.bs-app-intro__sheet header > div {
	min-width: 0 !important;
}

.bs-app-intro__close {
	display: grid !important;
	flex: 0 0 auto !important;
	width: 42px !important;
	height: 42px !important;
	place-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid rgba(23, 23, 29, .08) !important;
	border-radius: 14px !important;
	background: rgba(255, 255, 255, .86) !important;
	box-shadow: 0 8px 22px rgba(23, 23, 29, .07) !important;
	color: #171719 !important;
	font-size: 1.35rem !important;
	font-weight: 650 !important;
	line-height: 1 !important;
	cursor: pointer !important;
}

.bs-app-intro__backdrop {
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

.bs-app-intro__screens {
	min-height: 0 !important;
	max-height: none !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 3px !important;
	scrollbar-gutter: stable !important;
}

.bs-app-intro__error {
	min-height: 0 !important;
}

.bs-app-intro__sheet footer {
	position: relative !important;
	z-index: 3 !important;
	margin-top: 0 !important;
	padding-top: 12px !important;
	background: linear-gradient(180deg, rgba(249,250,246,.72), rgba(249,250,246,.99) 28%) !important;
}

.bs-app-drawer__panel {
	max-height: min(90vh, 760px) !important;
	max-height: min(90dvh, 760px) !important;
	grid-template-rows: auto auto minmax(0, 1fr) auto !important;
}

.bs-app-drawer__list {
	min-height: 0 !important;
	overflow-y: auto !important;
}

.bs-app-drawer__panel footer {
	position: relative !important;
	z-index: 3 !important;
}

.bs-app-resume {
	position: fixed !important;
	left: 50% !important;
	bottom: calc(18px + env(safe-area-inset-bottom)) !important;
	z-index: 2147481500 !important;
	display: grid !important;
	grid-template-columns: auto minmax(0, 1fr) auto !important;
	align-items: center !important;
	gap: 13px !important;
	width: min(510px, calc(100vw - 24px)) !important;
	min-height: 76px !important;
	padding: 12px 14px !important;
	border: 1px solid rgba(255,255,255,.96) !important;
	border-radius: 24px !important;
	background: rgba(255,255,255,.97) !important;
	box-shadow: 0 20px 54px rgba(32,42,25,.22), inset 0 1px 0 #fff !important;
	backdrop-filter: blur(18px) saturate(145%) !important;
	-webkit-backdrop-filter: blur(18px) saturate(145%) !important;
	color: var(--bs-app-ink, #171717) !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	text-align: left !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transform: translate(-50%, 18px) scale(.98) !important;
	transition: opacity .2s ease, transform .25s ease, visibility .2s ease, box-shadow .2s ease !important;
	cursor: pointer !important;
	isolation: isolate !important;
}

.bs-app-resume::before {
	content: "" !important;
	position: absolute !important;
	inset: -5px !important;
	z-index: -1 !important;
	border: 2px solid rgba(101,162,49,.38) !important;
	border-radius: 29px !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.bs-app-resume.is-visible {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translate(-50%, 0) scale(1) !important;
}

.bs-app-resume.is-visible::before {
	animation: bs-app-resume-pulse 1.9s ease-out infinite !important;
}

.bs-app-resume:hover,
.bs-app-resume:focus-visible {
	box-shadow: 0 24px 62px rgba(32,42,25,.28), 0 0 0 4px rgba(101,162,49,.12), inset 0 1px 0 #fff !important;
}

.bs-app-resume__icon {
	display: grid !important;
	width: 50px !important;
	height: 50px !important;
	place-items: center !important;
	border-radius: 17px !important;
	background: linear-gradient(145deg, var(--bs-app-brand-green-soft, #edf6e5), #fff6eb) !important;
	color: var(--bs-app-brand-green-dark, #3f7f2a) !important;
	box-shadow: inset 0 0 0 1px rgba(101,162,49,.12) !important;
	font-size: 1.2rem !important;
}

.bs-app-resume__copy {
	display: grid !important;
	min-width: 0 !important;
	gap: 4px !important;
}

.bs-app-resume.is-scroll-emphasis .bs-app-resume__icon {
	width: 60px !important;
	height: 60px !important;
	border-radius: 20px !important;
}

.bs-app-resume__copy b {
	color: var(--bs-app-ink, #171717) !important;
	font-size: 1rem !important;
	font-weight: 900 !important;
	line-height: 1.12 !important;
}

.bs-app-resume__copy small {
	overflow: hidden !important;
	color: var(--bs-app-muted, #68685f) !important;
	font-size: .75rem !important;
	font-weight: 690 !important;
	line-height: 1.25 !important;
	text-overflow: ellipsis !important;
	white-space: nowrap !important;
}

.bs-app-resume__arrow {
	display: grid !important;
	width: 42px !important;
	height: 42px !important;
	place-items: center !important;
	border-radius: 14px !important;
	background: linear-gradient(135deg, var(--bs-app-brand-green, #65a231), var(--bs-app-brand-green-dark, #3f7f2a)) !important;
	box-shadow: 0 9px 20px rgba(63,127,42,.24) !important;
	color: #fff !important;
	font-size: 1.12rem !important;
	font-weight: 900 !important;
}

@keyframes bs-app-resume-pulse {
	0% { opacity: .7; transform: scale(.985); }
	70%, 100% { opacity: 0; transform: scale(1.045); }
}

body.bs-app-onboarding-open .bs-app-resume,
body.bs-cart-priority-open .bs-app-resume,
body.bs-app-review-mode .bs-app-resume {
	display: none !important;
}

@media (max-width: 700px) {
	.bs-app-intro {
		padding-top: max(8px, env(safe-area-inset-top)) !important;
	}
	.bs-app-intro__sheet {
		max-height: calc(100vh - max(8px, env(safe-area-inset-top))) !important;
		max-height: calc(100dvh - max(8px, env(safe-area-inset-top))) !important;
	}
	.bs-app-intro__close {
		width: 39px !important;
		height: 39px !important;
		border-radius: 13px !important;
	}
	.bs-app-resume {
		bottom: calc(11px + env(safe-area-inset-bottom)) !important;
		width: calc(100vw - 18px) !important;
		min-height: 70px !important;
		padding: 10px 12px !important;
		border-radius: 21px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.bs-app-resume.is-visible::before { animation: none !important; opacity: .22 !important; }
}


/* =========================================================
 * v1.6.2 — CTA progresivo + categorías responsivas
 * Se añade al final para conservar intactas las reglas previas.
 * ======================================================= */
.bs-app-resume {
	--bs-resume-width: min(390px, calc(100vw - 24px));
	--bs-resume-min-height: 78px;
	width: var(--bs-resume-width) !important;
	min-height: var(--bs-resume-min-height) !important;
	gap: clamp(12px, 1.2vw, 17px) !important;
	padding: clamp(11px, 1.1vw, 15px) clamp(13px, 1.35vw, 18px) !important;
	border-color: rgba(101, 162, 49, .28) !important;
	border-radius: clamp(23px, 2.2vw, 30px) !important;
	background:
		linear-gradient(118deg, rgba(255,255,255,.98) 0%, rgba(241,249,234,.98) 35%, rgba(255,242,225,.98) 68%, rgba(255,255,255,.98) 100%) !important;
	background-size: 220% 220% !important;
	box-shadow:
		0 22px 60px rgba(35, 51, 25, .24),
		0 8px 24px rgba(221, 134, 53, .12),
		inset 0 1px 0 rgba(255,255,255,.98) !important;
	transition:
		width .34s cubic-bezier(.22,.8,.24,1),
		min-height .34s cubic-bezier(.22,.8,.24,1),
		opacity .2s ease,
		transform .25s ease,
		visibility .2s ease,
		box-shadow .22s ease !important;
}

.bs-app-resume.is-visible {
	animation: bsAppResumeAurora 5.8s ease-in-out infinite !important;
}

.bs-app-resume::before {
	inset: -7px !important;
	border: 2px solid rgba(101,162,49,.40) !important;
	border-radius: calc(clamp(23px, 2.2vw, 30px) + 7px) !important;
	box-shadow: 0 0 0 1px rgba(221,134,53,.10) !important;
}

.bs-app-resume.is-visible::before {
	animation: bs-app-resume-pulse 1.75s cubic-bezier(.2,.72,.28,1) infinite !important;
}

.bs-app-resume:hover,
.bs-app-resume:focus-visible,
.bs-app-resume.is-scroll-emphasis {
	box-shadow:
		0 28px 72px rgba(35, 51, 25, .28),
		0 12px 30px rgba(221, 134, 53, .18),
		0 0 0 5px rgba(101,162,49,.10),
		inset 0 1px 0 #fff !important;
}

.bs-app-resume__icon {
	width: 52px !important;
	height: 52px !important;
	transition: width .28s ease, height .28s ease, border-radius .28s ease !important;
	border-radius: 18px !important;
	background: linear-gradient(145deg, #74b83e, #4f8b2d 58%, #df8a35) !important;
	box-shadow: 0 13px 28px rgba(73,128,43,.25), inset 0 1px 0 rgba(255,255,255,.34) !important;
	color: #fff !important;
}

.bs-app-resume__icon svg,
.bs-app-resume__arrow svg {
	display: block !important;
	width: 24px !important;
	height: 24px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.9 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.bs-app-resume__copy b {
	font-size: clamp(1.02rem, 1.05vw, 1.18rem) !important;
	letter-spacing: -.025em !important;
}

.bs-app-resume.is-scroll-emphasis .bs-app-resume__copy b {
	font-size: clamp(1.1rem, 1.18vw, 1.28rem) !important;
}

.bs-app-resume__copy small {
	font-size: clamp(.74rem, .78vw, .84rem) !important;
	font-weight: 720 !important;
}

.bs-app-resume__arrow {
	width: clamp(43px, 3.4vw, 51px) !important;
	height: clamp(43px, 3.4vw, 51px) !important;
	border-radius: 16px !important;
	background: linear-gradient(135deg, #df8a35, #c76d25 48%, #5e9d35) !important;
	box-shadow: 0 11px 24px rgba(190,103,31,.25) !important;
}

@keyframes bsAppResumeAurora {
	0%,100% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(8px, 1vw, 12px) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
	--bs-tab-accent: #5f9b36;
	--bs-tab-accent-2: #79b44d;
	--bs-tab-soft: #eef7e8;
	min-width: 0 !important;
	min-height: 82px !important;
	padding: 9px 7px 8px !important;
	border-color: rgba(62,78,52,.10) !important;
	border-radius: 20px !important;
	background: linear-gradient(150deg, #fff, var(--bs-tab-soft)) !important;
	box-shadow: 0 9px 23px rgba(47,64,36,.07), inset 0 1px 0 #fff !important;
	isolation: isolate !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="resumen"] { --bs-tab-accent:#4f9130; --bs-tab-accent-2:#76b74b; --bs-tab-soft:#edf7e6; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="motivos"] { --bs-tab-accent:#7566b7; --bs-tab-accent-2:#9687d2; --bs-tab-soft:#f1effb; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="bebidas"] { --bs-tab-accent:#3f86ad; --bs-tab-accent-2:#67a9c8; --bs-tab-soft:#ebf6fb; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="comida"],
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="alimentos"] { --bs-tab-accent:#cf7e26; --bs-tab-accent-2:#eca550; --bs-tab-soft:#fff3e3; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="colaciones"] { --bs-tab-accent:#a57f2f; --bs-tab-accent-2:#c9a953; --bs-tab-soft:#faf5df; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="dulces"] { --bs-tab-accent:#c96d50; --bs-tab-accent-2:#e18e6f; --bs-tab-soft:#fff0ea; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="flores"] { --bs-tab-accent:#5d9c45; --bs-tab-accent-2:#80bb64; --bs-tab-soft:#edf7ea; }
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab[data-bs-app-key="extras"] { --bs-tab-accent:#397f75; --bs-tab-accent-2:#5ba69a; --bs-tab-soft:#eaf6f4; }

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab__icon {
	display: grid !important;
	width: 39px !important;
	height: 39px !important;
	place-items: center !important;
	border-radius: 14px !important;
	background: rgba(255,255,255,.78) !important;
	box-shadow: 0 7px 17px rgba(47,64,36,.08), inset 0 0 0 1px rgba(255,255,255,.95) !important;
	color: var(--bs-tab-accent) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab__icon svg,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__icon svg {
	display: block !important;
	width: 23px !important;
	height: 23px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.85 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > b {
	font-size: clamp(.66rem, .72vw, .78rem) !important;
	line-height: 1.12 !important;
	overflow-wrap: anywhere !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-active {
	border-color: color-mix(in srgb, var(--bs-tab-accent) 34%, transparent) !important;
	background: linear-gradient(145deg, #fff, var(--bs-tab-soft)) !important;
	color: var(--bs-tab-accent) !important;
	box-shadow: 0 14px 30px rgba(47,64,36,.12), 0 0 0 2px rgba(101,162,49,.06) !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab.is-active .bs-app-tab__icon {
	background: linear-gradient(145deg, var(--bs-tab-accent-2), var(--bs-tab-accent)) !important;
	box-shadow: 0 9px 20px rgba(48,72,35,.16), inset 0 1px 0 rgba(255,255,255,.32) !important;
	color: #fff !important;
}

body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review-row__icon {
	color: var(--bs-app-brand-green-dark) !important;
}

@media (min-width: 701px) and (max-width: 1050px) {
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 700px) {
	.bs-app-resume {
		width: var(--bs-resume-width) !important;
		min-height: var(--bs-resume-min-height) !important;
		grid-template-columns: auto minmax(0, 1fr) auto !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 6px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab {
		min-height: 74px !important;
		padding: 7px 3px 6px !important;
		border-radius: 16px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab__icon {
		width: 33px !important;
		height: 33px !important;
		border-radius: 12px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab__icon svg {
		width: 20px !important;
		height: 20px !important;
	}
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tab > b {
		font-size: .59rem !important;
	}
}

@media (max-width: 420px) {
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-tabs {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.bs-app-resume.is-visible,
	.bs-app-resume.is-visible::before {
		animation: none !important;
	}
	.bs-app-resume {
		transition: opacity .2s ease, visibility .2s ease !important;
	}
}

/* =========================================================
 * v1.6.3 — Crecimiento adaptativo y discreto del CTA
 * En móvil crece hasta cerca de 30 % respecto a su tamaño
 * inicial; en tableta y escritorio la expansión es menor.
 * ======================================================= */
.bs-app-resume {
	--bs-resume-icon-size: 51px;
	--bs-resume-arrow-size: 43px;
	--bs-resume-title-size: 17px;
	--bs-resume-meta-size: 12px;
	max-width: calc(100vw - 14px) !important;
	overflow: visible !important;
	transition:
		width .38s cubic-bezier(.22,.8,.24,1),
		min-height .38s cubic-bezier(.22,.8,.24,1),
		bottom .34s cubic-bezier(.22,.8,.24,1),
		opacity .2s ease,
		transform .25s ease,
		visibility .2s ease,
		box-shadow .25s ease !important;
}

.bs-app-resume__icon {
	width: var(--bs-resume-icon-size) !important;
	height: var(--bs-resume-icon-size) !important;
	transition: width .34s cubic-bezier(.22,.8,.24,1), height .34s cubic-bezier(.22,.8,.24,1), border-radius .28s ease !important;
}

.bs-app-resume.is-scroll-emphasis .bs-app-resume__icon {
	width: var(--bs-resume-icon-size) !important;
	height: var(--bs-resume-icon-size) !important;
}

.bs-app-resume__arrow {
	width: var(--bs-resume-arrow-size) !important;
	height: var(--bs-resume-arrow-size) !important;
	transition: width .34s cubic-bezier(.22,.8,.24,1), height .34s cubic-bezier(.22,.8,.24,1), box-shadow .25s ease !important;
}

.bs-app-resume__copy b,
.bs-app-resume.is-scroll-emphasis .bs-app-resume__copy b {
	font-size: var(--bs-resume-title-size) !important;
	transition: font-size .34s cubic-bezier(.22,.8,.24,1) !important;
}

.bs-app-resume__copy small {
	font-size: var(--bs-resume-meta-size) !important;
	transition: font-size .34s cubic-bezier(.22,.8,.24,1), opacity .24s ease !important;
}

.bs-app-resume.is-scroll-emphasis {
	bottom: calc(22px + env(safe-area-inset-bottom)) !important;
}

/* El pulso acompaña, pero no brinca ni roba demasiado espacio. */
.bs-app-resume.is-visible::before {
	animation-duration: 2.35s !important;
}

@keyframes bs-app-resume-pulse {
	0% { opacity: .56; transform: scale(.99); }
	72%, 100% { opacity: 0; transform: scale(1.035); }
}

@media (min-width: 701px) and (max-width: 1100px) {
	.bs-app-resume.is-scroll-emphasis {
		bottom: calc(20px + env(safe-area-inset-bottom)) !important;
	}
}

@media (max-width: 700px) {
	.bs-app-resume {
		bottom: calc(10px + env(safe-area-inset-bottom)) !important;
		padding: 10px 11px !important;
		gap: 10px !important;
	}
	.bs-app-resume.is-scroll-emphasis {
		bottom: calc(15px + env(safe-area-inset-bottom)) !important;
		box-shadow:
			0 26px 64px rgba(35, 51, 25, .27),
			0 11px 28px rgba(221, 134, 53, .16),
			0 0 0 4px rgba(101,162,49,.09),
			inset 0 1px 0 #fff !important;
	}
	.bs-app-resume__copy small {
		white-space: normal !important;
		display: -webkit-box !important;
		-webkit-line-clamp: 1 !important;
		-webkit-box-orient: vertical !important;
	}
}

@media (max-width: 350px) {
	.bs-app-resume__copy small {
		display: none !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.bs-app-resume {
		transition: opacity .2s ease, visibility .2s ease !important;
	}
}



/* =========================================================
 * v2.1.8 — mínimo claro y prioridad absoluta del carrito
 * ======================================================= */
body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review__progress[hidden] {
	display: none !important;
}

@media (min-width: 701px) {
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-app-review {
		position: relative !important;
		overflow: visible !important;
		padding-bottom: 120px !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-main-add-slot {
		position: relative !important;
		z-index: 2147481200 !important;
		isolation: isolate !important;
		display: block !important;
		width: auto !important;
		min-height: 108px !important;
		margin: 28px 18px 118px !important;
		padding: 26px !important;
		overflow: visible !important;
		scroll-margin-top: 120px !important;
		scroll-margin-bottom: 180px !important;
		background: #fff !important;
		box-shadow: 0 22px 58px rgba(23, 23, 25, .16) !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-moved-cart-form,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-main-add-slot form.cart {
		position: relative !important;
		z-index: 2147481201 !important;
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 8px !important;
		overflow: visible !important;
		pointer-events: auto !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico form.cart .single_add_to_cart_button,
	body.bs-personalizador-app-active #bs-personalizador-basico form.cart button[name="add-to-cart"] {
		position: relative !important;
		z-index: 2147481202 !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		min-height: 64px !important;
		margin: 0 !important;
		padding: 18px 28px !important;
		overflow: visible !important;
		visibility: visible !important;
		opacity: 1 !important;
		pointer-events: auto !important;
		box-shadow: 0 18px 42px rgba(63, 127, 42, .30) !important;
	}

	body.bs-personalizador-app-active #bs-personalizador-basico.is-bs-app-reviewing .bs-app-dock {
		z-index: 90 !important;
		margin-bottom: 0 !important;
	}
}

/* =========================================================
 * v2.3.4 — Fotografías más grandes en todas las capas
 * Solo presentación: no modifica cantidades, productos ni lógica.
 * ======================================================= */
body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image {
	display: grid !important;
	place-items: center !important;
	aspect-ratio: 1 / .86 !important;
	min-height: 0 !important;
	overflow: hidden !important;
}

body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image img,
body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: clamp(2px, .55vw, 6px) !important;
	object-fit: contain !important;
	object-position: center !important;
	transform: scale(1.10) !important;
	transform-origin: center !important;
	transition: transform .24s ease !important;
}

@media (hover: hover) and (pointer: fine) {
	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile:hover .bs-basic-tile__image img,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile:hover .bs-basic-tile__image img {
		transform: scale(1.145) !important;
	}
}

@media (max-width: 700px) {
	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image {
		aspect-ratio: 1 / .90 !important;
	}

	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image img,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image img {
		padding: 2px !important;
		transform: scale(1.14) !important;
	}
}

@media (max-width: 390px) {
	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image {
		aspect-ratio: 1 / .86 !important;
	}

	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image img,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image img {
		transform: scale(1.11) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.bs-responsive-product #bs-personalizador-basico .bs-basic-tile__image img,
	body.bs-personalizador-app-active #bs-personalizador-basico .bs-basic-tile__image img {
		transition: none !important;
	}
}
