/* APCW selector readability and media-fit refinements. */

/* Choice rows should read as one even, edge-to-edge control group. */
.qrg-workspace .qrg-requirement-row:not(.qrg-requirement-row-vendor) .qrg-requirement-options > button {
	width: 0 !important;
	min-width: 0 !important;
	min-height: 32px !important;
	flex: 1 1 0 !important;
	padding: 5px 8px !important;
	font-size: 11px !important;
	line-height: 1.2 !important;
}

/* Wide layouts expose the theme's per-button max-width. Keep the CPU choices
 * attached to both edges of their available track at every desktop width. */
.qrg-workspace .qrg-requirement-row-cpuBrand .qrg-requirement-options {
	width: 100% !important;
	max-width: none !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	gap: 5px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.qrg-workspace .qrg-requirement-row.qrg-requirement-row-cpuBrand .qrg-requirement-options > button {
	width: auto !important;
	max-width: none !important;
	flex: none !important;
}

.qrg-workspace .qrg-requirement-row-vendor .qrg-requirement-options > button {
	min-height: 30px !important;
	font-size: 10.5px !important;
	line-height: 1.2 !important;
}

/* Product photography must stay inside the allocated visual slot. */
.qrg-workspace .qrg-result .result-visual {
	position: relative !important;
	display: block !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
	padding: 8px !important;
	background: #fff !important;
}

.qrg-workspace .qrg-result .result-visual > img {
	position: absolute !important;
	inset: 8px !important;
	width: calc(100% - 16px) !important;
	height: calc(100% - 16px) !important;
	max-width: 100% !important;
	max-height: 100% !important;
	display: block !important;
	margin: 0 !important;
	object-fit: contain !important;
	object-position: center !important;
}

/* Make result order read as a deliberate rail between selection and content. */
.qrg-workspace .qrg-result .result-rank {
	width: 100% !important;
	height: auto !important;
	min-height: 100% !important;
	align-self: stretch !important;
	justify-self: stretch !important;
	border: 0 !important;
	border-right: 1px solid #dbe8f5 !important;
	border-radius: 0 !important;
	background: #f5faff !important;
	color: #115adf !important;
	font-size: 12px !important;
	font-weight: 800 !important;
}

/* A compact but customer-readable selector type scale. */
.qrg-workspace .qrg-filter-heading p,
.qrg-workspace .qrg-results-head small {
	font-size: 11px !important;
	line-height: 1.4 !important;
}

.qrg-workspace .qrg-requirement-label > span {
	font-size: 12px !important;
	line-height: 1.35 !important;
}

.qrg-workspace .requirements-toggle button,
.qrg-workspace .result-segment button,
.qrg-workspace .result-toolbar button,
.qrg-workspace .result-toolbar label,
.qrg-workspace .result-toolbar select {
	font-size: 11px !important;
	line-height: 1.25 !important;
}

.qrg-workspace .qrg-fold {
	min-height: 38px !important;
}

.qrg-workspace .qrg-fold > span {
	font-size: 11px !important;
	line-height: 1.35 !important;
}

.qrg-workspace .qrg-fold > small {
	font-size: 10px !important;
	line-height: 1.35 !important;
}

.qrg-workspace .qrg-brief > span > b {
	font-size: 12px !important;
	line-height: 1.3 !important;
}

.qrg-workspace .qrg-brief > span > small {
	font-size: 10px !important;
	line-height: 1.35 !important;
}

.qrg-workspace .qrg-brief > button {
	font-size: 10.5px !important;
}

.qrg-workspace .qrg-brief > strong > small {
	font-size: 9px !important;
	line-height: 1.25 !important;
}

.qrg-workspace .result-specs em {
	font-size: 11.5px !important;
	line-height: 1.3 !important;
}

.qrg-workspace .result-stock-badge,
.qrg-workspace .result-price small,
.qrg-workspace .result-fit {
	font-size: 10.5px !important;
	line-height: 1.2 !important;
}

@media (max-width: 780px) {
	.qrg-workspace .qrg-requirement-row:not(.qrg-requirement-row-vendor) .qrg-requirement-options > button {
		min-height: 44px !important;
		padding: 6px 5px !important;
		font-size: 11px !important;
		line-height: 1.15 !important;
		white-space: normal !important;
		text-overflow: clip !important;
	}

	.qrg-workspace .qrg-requirement-label > span,
	.qrg-workspace .qrg-brief > span > b {
		font-size: 13px !important;
	}
}
