/* Shared quantity controls. Open Shop's ordinary number input is included. */
.open-shop-quantity:has(input.qty:not([type="hidden"])) {
 display: inline-flex !important;
 align-items: stretch;
 width: auto !important;
 max-width: 100%;
 height: auto !important;
 padding: 0 !important;
 border: 1px solid #cbd5e1 !important;
 border-radius: 10px;
 background: #fff;
 box-shadow: 0 1px 2px rgb(15 23 42 / 5%);
}
.open-shop-quantity > button.plus,
.open-shop-quantity > button.minus {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 flex: 0 0 44px;
 width: 44px !important;
 min-height: 48px;
 height: auto !important;
 padding: 0 !important;
 border: 0 !important;
 border-radius: 8px;
 background: #f1f5f9;
 color: #334155;
 font-size: 22px;
 font-weight: 500;
 line-height: 1;
 cursor: pointer;
}
.open-shop-quantity input.qty:not([type="hidden"]) {
 box-sizing: border-box;
 width: 5rem !important;
 min-width: 0;
 height: 48px !important;
 margin: 0 !important;
 padding: 0 6px !important;
 border: 0 !important;
 border-radius: 0;
 background: #fff;
 color: #0f172a;
 font-size: 16px;
 font-weight: 600;
 text-align: center;
 box-shadow: none;
}
.open-shop-quantity > button:hover { background: #e2e8f0; color: #0f172a; }
.open-shop-quantity > button:focus-visible,
.open-shop-quantity input.qty:focus-visible {
 outline: 2px solid #475569 !important;
 outline-offset: -3px;
}
/* The plugin already supplies buttons for +/- and none for slider/dropdown. */
.open-shop-quantity:has(> .plus-minus-button) > button.plus,
.open-shop-quantity:has(> .plus-minus-button) > button.minus,
.open-shop-quantity:has(> .slider-input) > button.plus,
.open-shop-quantity:has(> .slider-input) > button.minus { display: none !important; }
.open-shop-quantity:has(> .plus-minus-button),
.open-shop-quantity:has(> .slider-input) {
 border: 0 !important;
 padding: 0 !important;
 box-shadow: none;
 background: transparent;
 width: auto !important;
}
/* Native WooCommerce selector when it is not wrapped by Open Shop. */
.woocommerce .quantity > input.qty[type="number"] {
 box-sizing: border-box;
 min-width: 5rem;
 min-height: 48px;
 padding: 8px;
 border: 1px solid #cbd5e1;
 border-radius: 10px;
 background: #fff;
 color: #0f172a;
 font-family: inherit;
 font-size: 16px;
 font-weight: 600;
 text-align: center;
}
.woocommerce .quantity > input.qty[type="number"]:focus-visible {
 outline: 2px solid #475569;
 outline-offset: 2px;
}
