/* Bottom Navbar — mobile only */

.buw-bottom-nav {
	display: none;
}

@media (max-width: 768px) {
	:root {
		--buw-cream-light: #FFFDF7;
		--buw-cream: #FBF4E6;
		--buw-gold: #B29231;
		--buw-gold-light: #D4B863;
		--buw-green: #2F4A1E;
		--buw-shadow: rgba(74, 56, 15, 0.28);
		--buw-shadow-soft: rgba(74, 56, 15, 0.14);
		--buw-highlight: rgba(255, 255, 255, 0.85);
	}

	body {
		padding-bottom: calc(74px + env(safe-area-inset-bottom));
	}

	.buw-bottom-nav {
		display: block;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 9999;
	}

	.buw-nav-row {
		position: relative;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		width: 100%;
	}

	.buw-nav-shape {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		z-index: 0;
		filter:
			drop-shadow(0 -10px 18px var(--buw-shadow))
			drop-shadow(0 -3px 6px var(--buw-shadow-soft));
	}

	.buw-nav-col {
		position: relative;
		z-index: 1;
		display: flex;
		align-items: flex-start;
		flex: 0 0 39%;
		padding: 14px 6px calc(10px + env(safe-area-inset-bottom));
	}

	.buw-nav-center {
		position: absolute;
		top: 14px;
		left: 50%;
		transform: translateX(-50%);
	}

	.buw-nav-item {
		flex: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		gap: 6px;
		text-decoration: none;
		color: var(--buw-green);
		font-size: 11px;
		font-weight: 500;
		line-height: 1.2;
		padding: 2px 2px 0;
	}

	.buw-nav-icon-wrap {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 42px;
		height: 42px;
		border-radius: 14px;
		background: linear-gradient(150deg, #ffffff 0%, #f2ead6 100%);
		box-shadow:
			3px 3px 7px rgba(74, 56, 15, 0.16),
			-3px -3px 6px rgba(255, 255, 255, 0.9),
			inset 0 0 0 rgba(0, 0, 0, 0);
		transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
	}

	.buw-nav-icon {
		width: 22px;
		height: 22px;
		color: var(--buw-green);
		transition: color 0.18s ease;
	}

	.buw-nav-item.is-active {
		color: var(--buw-gold);
	}

	.buw-nav-item.is-active .buw-nav-icon-wrap {
		background: linear-gradient(150deg, var(--buw-gold-light) 0%, var(--buw-gold) 100%);
		box-shadow:
			3px 3px 9px rgba(74, 56, 15, 0.32),
			-2px -2px 6px rgba(255, 255, 255, 0.5),
			inset 0 1px 1px rgba(255, 255, 255, 0.45);
	}

	.buw-nav-item.is-active .buw-nav-icon {
		color: #FFFDF7;
	}

	.buw-nav-item.is-active span:last-child {
		text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
	}

	.buw-nav-item:not(.buw-nav-booking):active .buw-nav-icon-wrap {
		transform: scale(0.92);
		box-shadow:
			inset 2px 2px 5px rgba(74, 56, 15, 0.28),
			inset -2px -2px 5px rgba(255, 255, 255, 0.7);
	}

	.buw-nav-booking {
		position: relative;
		margin-top: -36px;
	}

	.buw-nav-booking-icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 66px;
		height: 66px;
		border-radius: 50%;
		background: radial-gradient(circle at 34% 28%, #FFFDF7 0%, #FBF4E6 70%);
		box-shadow:
			0 10px 22px -4px rgba(74, 56, 15, 0.38),
			0 4px 10px rgba(74, 56, 15, 0.2),
			inset 0 2px 2px rgba(255, 255, 255, 0.95),
			inset 0 -3px 5px rgba(178, 146, 49, 0.25),
			0 0 0 4px var(--buw-cream),
			0 0 0 6px rgba(178, 146, 49, 0.35);
		transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s ease;
	}

	.buw-nav-booking-icon img {
		width: 58px;
		height: 58px;
		border-radius: 50%;
	}

	.buw-nav-booking:hover .buw-nav-booking-icon,
	.buw-nav-booking:focus-visible .buw-nav-booking-icon {
		transform: translateY(-3px) scale(1.06);
		box-shadow:
			0 14px 28px -4px rgba(74, 56, 15, 0.45),
			0 6px 12px rgba(74, 56, 15, 0.25),
			inset 0 2px 2px rgba(255, 255, 255, 0.95),
			inset 0 -3px 5px rgba(178, 146, 49, 0.3),
			0 0 0 4px var(--buw-cream),
			0 0 0 7px rgba(178, 146, 49, 0.45);
	}

	.buw-nav-booking:active .buw-nav-booking-icon {
		transform: scale(0.9);
		box-shadow:
			0 3px 8px rgba(74, 56, 15, 0.3),
			inset 2px 2px 5px rgba(74, 56, 15, 0.25),
			inset -1px -1px 3px rgba(255, 255, 255, 0.5),
			0 0 0 4px var(--buw-cream),
			0 0 0 6px rgba(178, 146, 49, 0.35);
		transition-duration: 0.1s;
	}

	.buw-nav-booking span:last-child {
		color: var(--buw-gold);
		font-weight: 700;
		margin-top: 4px;
		text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
	}
}

/* Hover — only on devices with a real pointer, so it never "sticks" after a tap */
@media (max-width: 768px) and (hover: hover) and (pointer: fine) {
	.buw-nav-item:not(.buw-nav-booking):hover .buw-nav-icon-wrap {
		transform: translateY(-3px);
		box-shadow:
			4px 6px 12px rgba(74, 56, 15, 0.22),
			-3px -3px 7px rgba(255, 255, 255, 0.95);
	}

	.buw-nav-item:not(.buw-nav-booking):not(.is-active):hover .buw-nav-icon {
		color: var(--buw-gold);
	}

	.buw-nav-item.is-active:hover .buw-nav-icon-wrap {
		background: linear-gradient(150deg, #E0C062 0%, #C4A23B 100%);
		box-shadow:
			4px 6px 13px rgba(74, 56, 15, 0.36),
			-2px -2px 7px rgba(255, 255, 255, 0.55),
			inset 0 1px 1px rgba(255, 255, 255, 0.5);
	}

	.buw-nav-item.is-active:hover .buw-nav-icon {
		color: #FFFDF7;
	}

	.buw-nav-item:not(.buw-nav-booking):not(.is-active):hover span:last-child {
		color: var(--buw-gold);
	}
}
