.ai-o-optimiser-site-model-panel .ai-o-optimiser-site-model-choice-grid {
	/*
	 * Nine operating models. An auto-fit track kept adding narrow columns as the
	 * screen grew, leaving a 7 + 2 split whose cards were too thin to hold a
	 * two-word label beside the icon. Fixed counts keep the rows balanced and the
	 * cards wide: 3 + 3 + 3 by default, 5 + 4 only once the viewport can actually
	 * give the panel enough room for it, then 2 and 1.
	 *
	 * The panel this grid sits in is narrower than the browser viewport by the
	 * 252px AI-O rail offset plus WordPress's own admin chrome, so the 5-column
	 * tier is gated behind a wide-enough media query rather than being the
	 * unqualified default -- otherwise laptop-class viewports (1400-1700px)
	 * would be forced into 5 columns with less real panel width than the
	 * 3-column tier gets, reproducing the original cramped-card bug this fix
	 * exists to remove.
	 */
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-o-optimiser-site-model-panel .ai-o-optimiser-site-profile-choice-card {
	min-height: 118px;
}

.ai-o-optimiser-site-domain-section {
	border-top: 1px solid var(--ai-o-optimiser-ui-border-soft, var(--aio-hair));
	padding-top: 22px;
}

.ai-o-optimiser-site-domain-control {
	max-width: 760px;
}

.ai-o-optimiser-site-domain-control select {
	width: min(100%, 420px);
	min-height: 42px;
	font-weight: 600;
}

.ai-o-optimiser-site-domain-control .description {
	margin: 9px 0 0;
	max-width: 720px;
}

.ai-o-optimiser-site-model-info {
	margin: 18px 0 0;
}

@media (min-width: 1700px) {
	.ai-o-optimiser-site-model-panel .ai-o-optimiser-site-model-choice-grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (max-width: 1099px) {
	.ai-o-optimiser-site-model-panel .ai-o-optimiser-site-model-choice-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 782px) {
	.ai-o-optimiser-site-model-panel .ai-o-optimiser-site-model-choice-grid {
		grid-template-columns: 1fr;
	}

	.ai-o-optimiser-site-domain-control select {
		width: 100%;
	}
}
