
: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;
	}
}
