/* ============================================
   Quantity Stepper (− n +)
   ============================================ */

.qty-stepper {
	display: inline-flex !important;
	align-items: center;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	overflow: hidden;
}

.qty-stepper .qty-btn {
	background: var(--color-bg-subtle);
	border: none;
	width: 36px;
	height: 36px;
	font-size: 18px;
	line-height: 1;
	cursor: pointer;
	color: var(--color-text-body);
	flex-shrink: 0;
	transition: background 0.15s;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.qty-stepper .qty-btn:hover {
	background: var(--color-border);
}

.qty-stepper input.qty {
	width: 46px !important;
	text-align: center;
	border: none !important;
	border-left: 1px solid var(--color-border) !important;
	border-right: 1px solid var(--color-border) !important;
	border-radius: 0 !important;
	padding: 0 4px !important;
	height: 36px !important;
	font-size: 14px;
	-moz-appearance: textfield;
	box-shadow: none !important;
	outline: none;
}

.qty-stepper input.qty::-webkit-inner-spin-button,
.qty-stepper input.qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Mobile Touch Targets */
@media (max-width: 767px) {
	.qty-stepper .qty-btn {
		width: 44px;
		height: 44px;
		font-size: 20px;
	}

	.qty-stepper input.qty {
		height: 44px !important;
		font-size: 16px !important;
	}
}
