/*
 * Quantity increment button styling.
 *
 * Verbatim reproduction of the CSS previously emitted inline by the
 * "Qty Increment Buttons for WooCommerce" plugin, with its saved settings
 * resolved to literal values:
 *
 *   button_style    Silver   -> #e2e2e2 bg / black text / #cac9c9 border
 *   button_height   46px     button_width  40px     quantity_width  60px
 *   merge_buttons   1        -> flush buttons, square corners, shared borders
 *   cart_align      Left     archive_display  None  auto_table  0
 *
 * The :not(#qib_id):not(#qib_id) specificity hack is retained deliberately.
 * style.css and css/responsive-woocommerce.css already contain .qib- overrides
 * written against that specificity; dropping it would change which rules win.
 */

/* Hide native number spinners */
.qib-container input[type='number']:not(#qib_id):not(#qib_id) {
	-moz-appearance: textfield;
}
.qib-container input[type='number']:not(#qib_id):not(#qib_id)::-webkit-outer-spin-button,
.qib-container input[type='number']:not(#qib_id):not(#qib_id)::-webkit-inner-spin-button {
	-webkit-appearance: none;
	display: none;
	margin: 0;
}

/* Add-to-cart button alignment alongside the quantity control */
form.cart button[type='submit']:not(#qib_id):not(#qib_id),
form.cart .qib-container + div:not(#qib_id):not(#qib_id) {
	display: inline-block;
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	float: none;
	vertical-align: top;
	text-align: center;
}
form.cart button[type='submit']:not(#qib_id):not(#qib_id):not(_) {
	line-height: 1;
}
form.cart button[type='submit']:not(#qib_id):not(#qib_id):not(_):not(_) {
	height: 46px;
	text-align: center;
}
form.cart .qib-container + button[type='submit']:not(#qib_id):not(#qib_id),
form.cart .qib-container + div:not(#qib_id):not(#qib_id):not(_) {
	margin-left: 1em;
}
form.cart button[type='submit']:focus:not(#qib_id):not(#qib_id) {
	outline-width: 2px;
	outline-offset: -2px;
	outline-style: solid;
}

/* Quantity wrapper */
.qib-container div.quantity:not(#qib_id):not(#qib_id) {
	float: left;
	line-height: 1;
	display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	width: auto;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
}

/* The -/+ buttons */
.qib-button:not(#qib_id):not(#qib_id) {
	line-height: 1;
	display: inline-block;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	height: 46px;
	width: 40px;
	color: black;
	background: #e2e2e2;
	border-color: #cac9c9;
	float: left;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
	vertical-align: middle;
	font-size: 16px;
	letter-spacing: 0;
	border-style: solid;
	border-width: 1px;
	transition: none;
	border-radius: 0;
}
.qib-button:focus:not(#qib_id):not(#qib_id) {
	border: 2px #b3b3aa solid;
	outline: none;
}
.qib-button:hover:not(#qib_id):not(#qib_id) {
	background: #d6d5d5;
}

/* The quantity input itself */
.qib-container .quantity input.qty:not(#qib_id):not(#qib_id) {
	line-height: 1;
	background: none;
	text-align: center;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	height: 46px;
	width: 60px;
	min-height: initial;
	min-width: initial;
	max-height: initial;
	max-width: initial;
	box-shadow: none;
	font-size: 15px;
	border-style: solid;
	border-color: #cac9c9;
	border-width: 1px 0;
	border-radius: 0;
}
.qib-container .quantity input.qty:focus:not(#qib_id):not(#qib_id) {
	border-color: #cac9c9;
	outline: none;
	border-width: 2px 1px;
	border-style: solid;
}

/* Cart table */
.woocommerce table.cart td.product-quantity:not(#qib_id):not(#qib_id) {
	white-space: nowrap;
}
@media (min-width: 768px) {
	.woocommerce table.cart td.product-quantity:not(#qib_id):not(#qib_id) {
		text-align: left;
	}
	.woocommerce table.cart td.product-quantity .qib-container:not(#qib_id):not(#qib_id) {
		display: flex;
		justify-content: flex-start;
	}
}

.qib-container:not(#qib_id):not(#qib_id) {
	display: inline-block;
}

/* Grouped products */
.woocommerce-grouped-product-list-item__quantity:not(#qib_id):not(#qib_id) {
	margin: 0;
	padding-left: 0;
	padding-right: 0;
	text-align: left;
}
.woocommerce-grouped-product-list-item__quantity .qib-container:not(#qib_id):not(#qib_id) {
	display: flex;
}

/* Suppress any theme/WooCommerce native +/- so ours are the only ones */
.quantity .minus:not(#qib_id):not(#qib_id),
.quantity .plus:not(#qib_id):not(#qib_id),
.quantity > a:not(#qib_id):not(#qib_id) {
	display: none;
}
