/**
 * Storefront calculator (single product).
 */

.wppfu-cc {
	margin: 1.25em 0;
	padding: 1em 1.1em;
	border: 1px solid var(--wppfu-cc-border, #dcdcde);
	border-radius: 6px;
	background: var(--wppfu-cc-bg, #fafafa);
}

.wppfu-cc__price {
	margin: 0 0 0.85em;
	font-size: 1.15em;
	font-weight: 600;
}

.wppfu-cc__price-label {
	font-weight: 600;
	margin-right: 0.25em;
}

.wppfu-cc__fields {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.wppfu-cc-field__label,
.wppfu-cc-field > .wppfu-cc-field__label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.35em;
	font-size: 0.95em;
}

.wppfu-cc-field__dimensions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: flex-end;
}

.wppfu-cc-field__dim input {
	max-width: 6rem;
}

.wppfu-cc-field__radios {
	list-style: none;
	margin: 0.25em 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35em;
}

.wppfu-cc-field__radios li {
	margin: 0;
	width: 100%;
}

.wppfu-cc-field__check {
	display: flex;
	align-items: center;
	gap: 0.35em;
	font-weight: 500;
}

.wppfu-cc-field input[type="range"] {
	vertical-align: middle;
	max-width: 100%;
}

.wppfu-cc-field__range-out {
	margin-left: 0.35em;
	font-variant-numeric: tabular-nums;
	min-width: 2.5em;
	display: inline-block;
}

.wppfu-cc-field select.select {
	max-width: 100%;
}

.wppfu-cc-field .input-text {
	max-width: 22rem;
}
