/* Side cart quantity + compact layout — overrides Side Cart inline styles. */

/* Qty control */
.xoo-wsc-modal .jazz-scc-qty-box .quantity,
.xoo-wsc-modal .jazz-scc-qty-box .jazz-scc-quantity,
.xoo-wsc-container .jazz-scc-qty-box .quantity,
.xoo-wsc-container .jazz-scc-qty-box .jazz-scc-quantity {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	margin: 0 !important;
}

.xoo-wsc-modal .jazz-scc-qty-box .qty,
.xoo-wsc-modal .jazz-scc-qty-box .jazz-scc-qty-input,
.xoo-wsc-container .jazz-scc-qty-box .qty,
.xoo-wsc-container .jazz-scc-qty-box .jazz-scc-qty-input {
	width: 2.25rem !important;
	max-width: 2.25rem !important;
	min-height: 1.75rem !important;
	text-align: center !important;
	margin: 0 !important;
	padding: 0.15rem !important;
	border: 1px solid #d3ced2 !important;
	border-radius: 0 !important;
	box-sizing: border-box !important;
	font-size: 14px !important;
	line-height: 1.2 !important;
	-moz-appearance: textfield;
}

.xoo-wsc-modal .jazz-scc-qty-box .qty::-webkit-outer-spin-button,
.xoo-wsc-modal .jazz-scc-qty-box .qty::-webkit-inner-spin-button,
.xoo-wsc-container .jazz-scc-qty-box .qty::-webkit-outer-spin-button,
.xoo-wsc-container .jazz-scc-qty-box .qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.xoo-wsc-modal .jazz-scc-qty-box .plus,
.xoo-wsc-modal .jazz-scc-qty-box .minus,
.xoo-wsc-modal .jazz-scc-qty-box .jazz-scc-qty-btn,
.xoo-wsc-container .jazz-scc-qty-box .plus,
.xoo-wsc-container .jazz-scc-qty-box .minus,
.xoo-wsc-container .jazz-scc-qty-box .jazz-scc-qty-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 1.75rem !important;
	min-height: 1.75rem !important;
	padding: 0 !important;
	cursor: pointer;
	line-height: 1 !important;
	border: 1px solid #d3ced2 !important;
	background: #f7f7f7 !important;
	color: inherit !important;
	font-size: 1rem !important;
	flex-shrink: 0;
}

.xoo-wsc-modal .jazz-scc-qty-box .minus,
.xoo-wsc-container .jazz-scc-qty-box .minus {
	border-radius: 4px 0 0 4px !important;
	border-right: 0 !important;
}

.xoo-wsc-modal .jazz-scc-qty-box .plus,
.xoo-wsc-container .jazz-scc-qty-box .plus {
	border-radius: 0 4px 4px 0 !important;
	border-left: 0 !important;
}

/* Qty + price on one row */
.xoo-wsc-modal .jazz-scc-product-meta,
.xoo-wsc-container .jazz-scc-product-meta,
.xoo-wsc-modal .xoo-wsc-qty-box-cont.jazz-scc-product-meta,
.xoo-wsc-container .xoo-wsc-qty-box-cont.jazz-scc-product-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	column-gap: 10px !important;
	row-gap: 2px !important;
	margin-top: 2px !important;
}

.xoo-wsc-modal .xoo-wsc-qty-box-cont,
.xoo-wsc-modal .xoo-wsc-priceBox,
.xoo-wsc-modal .xoo-wsc-card-price,
.xoo-wsc-container .xoo-wsc-qty-box-cont,
.xoo-wsc-container .xoo-wsc-priceBox,
.xoo-wsc-container .xoo-wsc-card-price {
	margin: 0 !important;
	padding: 0 !important;
}

.xoo-wsc-modal .xoo-wsc-pprice,
.xoo-wsc-modal .xoo-wsc-card-price,
.xoo-wsc-container .xoo-wsc-pprice,
.xoo-wsc-container .xoo-wsc-card-price {
	font-size: 14px !important;
	line-height: 1.3 !important;
	margin: 0 !important;
}

/* Compact product rows — override Side Cart inline padding/margin */
.xoo-wsc-modal .xoo-wsc-products:not(.xoo-wsc-pattern-card) .xoo-wsc-product,
.xoo-wsc-container .xoo-wsc-products:not(.xoo-wsc-pattern-card) .xoo-wsc-product {
	padding: 8px 10px !important;
	margin: 0 0 8px !important;
	align-items: flex-start !important;
	gap: 8px !important;
}

.xoo-wsc-modal .xoo-wsc-img-col,
.xoo-wsc-container .xoo-wsc-img-col {
	flex: 0 0 64px !important;
	max-width: 64px !important;
	width: 64px !important;
	align-self: flex-start !important;
}

.xoo-wsc-modal .xoo-wsc-img-col img,
.xoo-wsc-container .xoo-wsc-img-col img {
	max-width: 64px !important;
	width: 100% !important;
	height: auto !important;
}

.xoo-wsc-modal .xoo-wsc-sum-col,
.xoo-wsc-container .xoo-wsc-sum-col {
	padding-left: 0 !important;
	min-width: 0 !important;
	width: auto !important;
	flex: 1 1 auto !important;
	justify-content: flex-start !important;
}

.xoo-wsc-modal .xoo-wsc-sm-info,
.xoo-wsc-container .xoo-wsc-sm-info {
	gap: 6px !important;
	align-items: flex-start !important;
	flex-grow: 1 !important;
	align-self: stretch !important;
}

/* Fixes stretched layout spreading title/qty/price apart */
.xoo-wsc-modal .xoo-wsc-sm-left,
.xoo-wsc-container .xoo-wsc-sm-left {
	row-gap: 2px !important;
	justify-content: flex-start !important;
}

.xoo-wsc-modal span.xoo-wsc-pname,
.xoo-wsc-modal span.xoo-wsc-pname a,
.xoo-wsc-container span.xoo-wsc-pname,
.xoo-wsc-container span.xoo-wsc-pname a {
	line-height: 1.25 !important;
	margin: 0 !important;
	display: block !important;
}

.xoo-wsc-modal .xoo-wsc-sm-right,
.xoo-wsc-container .xoo-wsc-sm-right {
	flex-shrink: 0 !important;
	min-width: 3.5rem !important;
	align-items: flex-end !important;
	justify-content: flex-start !important;
	padding-top: 0 !important;
}

.xoo-wsc-modal span.xoo-wsc-smr-del,
.xoo-wsc-container span.xoo-wsc-smr-del {
	margin: 0 !important;
	padding: 2px !important;
	line-height: 1 !important;
}

.xoo-wsc-modal .xoo-wsc-header,
.xoo-wsc-container .xoo-wsc-header {
	padding: 10px 14px !important;
}

/* Card pattern */
.xoo-wsc-modal .xoo-wsc-pattern-card,
.xoo-wsc-container .xoo-wsc-pattern-card {
	margin: 4px 10px !important;
}

.xoo-wsc-modal .xoo-wsc-product-cont,
.xoo-wsc-container .xoo-wsc-product-cont {
	margin-bottom: 6px !important;
	padding: 4px !important;
}

.xoo-wsc-modal .xoo-wsc-sm-front:has( .xoo-wsc-sm-emp + * ),
.xoo-wsc-container .xoo-wsc-sm-front:has( .xoo-wsc-sm-emp + * ) {
	padding: 4px 6px !important;
	gap: 2px !important;
}

.xoo-wsc-modal .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-sml-qty,
.xoo-wsc-container .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-sml-qty {
	display: none !important;
}

/* Hide stale cached rows while companion rebuilds cart HTML */
.xoo-wsc-modal.xoo-wsc-loading .xoo-wsc-body,
.xoo-wsc-container.xoo-wsc-loading .xoo-wsc-body {
	opacity: 0.35;
	pointer-events: none;
}

.xoo-wsc-markup .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-qty-price {
	display: none !important;
}

/* Site-wide: hide legacy read-only qty layout whenever companion is active */
html.jazz-scc-active .xoo-wsc-markup .xoo-wsc-qty-price,
html.jazz-scc-active .xoo-wsc-container .xoo-wsc-qty-price,
html.jazz-scc-active .xoo-wsc-modal .xoo-wsc-qty-price,
.xoo-wsc-markup .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-qty-price,
.xoo-wsc-container .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-qty-price,
.xoo-wsc-modal .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-qty-price {
	display: none !important;
}

/* When companion qty exists, always show it (Side Cart inline CSS can hide .xoo-wsc-qty-box). */
.xoo-wsc-markup .jazz-scc-qty-box,
.xoo-wsc-container .jazz-scc-qty-box,
.xoo-wsc-modal .jazz-scc-qty-box {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Hide stale product rows until companion markup is applied */
.xoo-wsc-container .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-smr-ptotal,
.xoo-wsc-modal .xoo-wsc-product:has( .jazz-scc-qty-box ) .xoo-wsc-smr-ptotal {
	display: none !important;
}

