body { font-size: 0.95rem; }
.cat-btn, .item-btn { min-width: 120px; }

/* Touch-friendly sizing */
.touch-btn {
	min-height: 48px;
	padding: 12px 16px;
}

.item-grid .btn {
	min-width: 140px;
}

/* Prevent horizontal scroll on small devices */
html, body {
	max-width: 100%;
	overflow-x: hidden;
}

/* Sidebar menu styling */
.nav.nav-pills .nav-link {
	padding: 8px 12px;
	color: #333;
	text-decoration: none;
	background-color: transparent;
	border-radius: 0;
}
.nav.nav-pills .nav-link:hover {
	background-color: #f8f9fa;
}
.nav.nav-pills .nav-link.active {
	background-color: #f0f4ff;
	font-weight: 600;
}

/* Fixed bottom action bar (mobile) */
#posActionBar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1030; /* above content */
	background: #ffffff;
	box-shadow: 0 -4px 12px rgba(0,0,0,0.08);
	border-top: 1px solid #e9ecef;
}

#posActionBar .pos-bar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 16px;
}

#posActionBar .total {
	font-size: 1.25rem;
}

/* Ensure bottom spacing so content isn't hidden behind the bar */
@media (max-width: 992px) {
	main.container-fluid,
	.container,
	.content {
		padding-bottom: 72px; /* height of bar */
	}
	/* Reduce item grid scrolling height for mobile to show more */
	.item-grid {
		max-height: 50vh !important;
	}
	/* Orders list card adjustments */
	.order-card .card-header {
		padding: 10px 12px;
	}
	.order-card .card-body {
		padding: 12px;
	}
	.order-card .card-footer {
		padding: 10px 12px;
	}
}
