#lpbn-navigation[hidden],#lpbn-modal[hidden]{display:none!important}

#lpbn-navigation{
	box-sizing:border-box;
	display:flex;
	position:fixed;
	inset-inline:0;
	bottom:0;
	z-index:891;
	padding:7px max(4px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left));
	background:var(--lpbn-bg,#fff);
	color:var(--lpbn-muted,#666);
	border-top:1px solid rgba(0,0,0,.08);
	box-shadow:0 -3px 16px rgb(0 0 0 / 5%);
	font:500 11px/1.25 "Listeo PWA Outfit","Outfit",sans-serif;
}

#lpbn-navigation .lpbn-tab{
	position:relative;
	flex:1 1 0;
	min-width:0;
	min-height:44px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:4px;
	padding:2px;
	border:0;
	background:transparent;
	color:inherit;
	text-decoration:none;
	text-align:center;
	font:inherit;
	cursor:pointer;
	-webkit-tap-highlight-color:transparent;
}

#lpbn-navigation .lpbn-tab[aria-current=page]{
	color:var(--lpbn-active,#222);
	font-weight:700;
}

#lpbn-navigation .lpbn-tab[aria-current=page]:not(.is-emphasis)::before{
	content:"";
	position:absolute;
	top:-5px;
	width:24px;
	height:3px;
	border-radius:2px;
	background:var(--lpbn-accent,#f30c0c);
}

#lpbn-navigation .lpbn-tab[aria-current=page] svg{
	color:var(--lpbn-accent,#f30c0c);
}

#lpbn-navigation .lpbn-tab:focus-visible{
	outline:2px solid currentColor;
	outline-offset:-2px;
	border-radius:7px;
}

#lpbn-navigation svg{
	width:22px;
	height:22px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.65;
	stroke-linecap:round;
	stroke-linejoin:round;
	flex-shrink:0;
}

#lpbn-navigation img{
	width:22px;
	height:22px;
	object-fit:contain;
	flex-shrink:0;
}
#lpbn-navigation .lpbn-icon-wrap{color:var(--lpbn-item-icon,currentColor)}
#lpbn-navigation .lpbn-tab[aria-current=page] .lpbn-icon-wrap{color:var(--lpbn-item-icon-active,var(--lpbn-accent,#f30c0c))}
#lpbn-navigation .lpbn-icon-wrap i{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:21px;line-height:1;color:inherit}

#lpbn-navigation .lpbn-tab.is-emphasis{
	margin-top:-21px;
}

#lpbn-navigation .lpbn-tab.is-emphasis .lpbn-icon-wrap{
	width:54px;
	height:54px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:999px;
	background:var(--lpbn-center-bg,var(--lpbn-accent,#f30c0c));
	color:var(--lpbn-item-icon,var(--lpbn-center-fg,#fff));
	border:4px solid var(--lpbn-bg,#fff);
	box-shadow:0 7px 20px rgb(0 0 0 / 18%);
}

#lpbn-navigation .lpbn-tab.is-emphasis .lpbn-icon-wrap svg,
#lpbn-navigation .lpbn-tab.is-emphasis .lpbn-icon-wrap img{
	width:24px;
	height:24px;
	color:inherit;
}

.lpbn-badge{
	position:absolute;
	top:2px;
	left:calc(50% + 8px);
	min-width:16px;
	height:16px;
	padding:0 4px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:999px;
	background:var(--lpbn-accent,#f30c0c);
	color:#fff;
	font:700 9px/1 Arial,sans-serif;
	box-shadow:0 0 0 2px var(--lpbn-bg,#fff);
}

.lpbn-navigation-visible body::after{
	content:"";
	display:block;
	height:var(--lpbn-nav-space,70px);
	clear:both;
}
.lpbn-navigation-visible{
	scroll-padding-bottom:calc(var(--lpbn-nav-space,70px) + 20px);
}
.lpbn-navigation-visible .booking-sticky-footer{
	bottom:var(--lpbn-nav-space,70px);
}
.lpbn-navigation-visible .listeo-pwa-update{
	bottom:calc(var(--lpbn-nav-space,70px) + 16px);
}
.lpbn-navigation-visible #backtotop{
	bottom:calc(var(--lpbn-nav-space,70px) + 20px);
}

/* Bottom sheet */
.lpbn-modal{
	position:fixed;
	inset:0;
	z-index:1000001;
	color:var(--lpbn-sheet-text,#222);
}
.lpbn-modal__backdrop{
	position:absolute;
	inset:0;
	background:rgba(0,0,0,.48);
	opacity:0;
	-webkit-backdrop-filter:blur(2px);
	backdrop-filter:blur(2px);
	transition:opacity .18s ease;
}
.lpbn-modal__sheet{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	width:min(100%,560px);
	max-height:min(76vh,660px);
	margin:0 auto;
	overflow:auto;
	padding:9px 18px calc(24px + env(safe-area-inset-bottom));
	border-radius:24px 24px 0 0;
	background:var(--lpbn-sheet-bg,#fff);
	color:var(--lpbn-sheet-text,#222);
	box-shadow:0 -22px 60px rgb(0 0 0 / 28%);
	transform:translateY(105%);
	transition:transform .22s cubic-bezier(.2,.75,.3,1);
}
.lpbn-modal.is-visible .lpbn-modal__backdrop{opacity:1}
.lpbn-modal.is-visible .lpbn-modal__sheet{transform:translateY(0)}
.lpbn-modal__handle{
	width:42px;height:4px;margin:0 auto 17px;border-radius:99px;background:rgba(127,127,127,.35)
}
.lpbn-modal__header{
	display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px
}
.lpbn-modal__header h2{
	margin:0!important;color:inherit!important;font:700 22px/1.2 "Listeo PWA Outfit","Outfit",sans-serif!important
}
.lpbn-modal__close{
	width:38px;height:38px;border:0;border-radius:999px;background:rgba(127,127,127,.12);color:inherit;font:400 27px/1 Arial;cursor:pointer
}
.lpbn-modal__actions{display:grid;gap:9px}
.lpbn-modal__action{
	position:relative;
	min-height:67px;
	display:grid;
	grid-template-columns:42px 1fr auto;
	align-items:center;
	gap:12px;
	padding:11px 13px;
	border:1px solid rgba(127,127,127,.15);
	border-radius:14px;
	background:rgba(127,127,127,.05);
	color:inherit!important;
	text-decoration:none!important;
}
.lpbn-modal__icon{
	width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--lpbn-item-icon-bg,rgba(127,127,127,.09));color:var(--lpbn-item-icon,currentColor)
}
.lpbn-modal__icon svg{
	width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round
}
.lpbn-modal__icon img{width:21px;height:21px;object-fit:contain}
.lpbn-modal__icon i{display:inline-flex;align-items:center;justify-content:center;width:21px;height:21px;font-size:20px;line-height:1;color:inherit}
.lpbn-modal__copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.lpbn-modal__copy strong{font-size:14px;line-height:1.2;color:inherit}
.lpbn-modal__copy small{font-size:11px;line-height:1.3;opacity:.62}
.lpbn-modal__arrow{font-size:24px;line-height:1;opacity:.42}
.lpbn-modal .lpbn-badge{position:static;margin-left:6px;display:inline-flex;vertical-align:middle;box-shadow:none}
body.lpbn-modal-open{overflow:hidden;touch-action:none}

@media print{
	#lpbn-navigation,#lpbn-modal{display:none!important}
}

@media (prefers-reduced-motion:reduce){
	.lpbn-modal__backdrop,.lpbn-modal__sheet{transition:none}
}
