.wpp-box {
	margin: 0 0 1.25em;
	padding: 0.75em 1em;
	border: 1px solid currentColor;
	border-color: rgba(128, 128, 128, 0.45);
	border-radius: 4px;
	min-width: 0;
}
.wpp-box legend {
	padding: 0 0.4em;
	font-weight: 600;
}
.wpp-modes {
	display: flex;
	flex-direction: column;
	gap: 0.4em;
}
.wpp-mode {
	display: flex;
	align-items: center;
	gap: 0.5em;
	cursor: pointer;
}
.wpp-mode input[disabled] + *,
.wpp-mode input[disabled] {
	cursor: not-allowed;
}
.wpp-notice {
	margin: 0.75em 0 0;
	padding: 0.5em 0.75em;
	border-left: 4px solid #b32d2e;
	background: rgba(179, 45, 46, 0.08);
}
.wpp-notice[hidden],
.wpp-panel[hidden] {
	display: none;
}
.wpp-panel {
	margin-top: 0.75em;
}
.wpp-list {
	margin: 0;
	padding: 0;
	list-style: none;
	max-height: 18em;
	overflow-y: auto;
}
.wpp-row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em;
	padding: 0.3em 0;
}
.wpp-row label {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
}
.wpp-row-unavailable {
	opacity: 0.6;
}
.wpp-box input:focus-visible,
.wpp-box select:focus-visible,
.wpp-notice:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}
/* Panier : composants indentés sous la ligne du pack. */
.wpp-pack-component td {
	opacity: 0.9;
}
.wpp-pack-component td.product-name {
	padding-left: 2em;
}
.wpp-included {
	font-style: italic;
}
@media (max-width: 480px) {
	.wpp-box {
		padding: 0.6em 0.75em;
	}
	.wpp-list {
		max-height: 14em;
	}
}
.wpp-qty {
	width: 4.5em;
	min-width: 0;
}
