.fpkg-base-table,
.fpkg-calculation {
	width: 100%;
	max-width: 560px;
	border-collapse: collapse;
	margin: 12px 0;
	font-size: .92em;
}

.fpkg-base-table th,
.fpkg-base-table td,
.fpkg-calculation th,
.fpkg-calculation td {
	padding: 8px 10px;
	border: 1px solid currentColor;
	text-align: center;
}

.fpkg-base-table tbody th,
.fpkg-calculation th {
	text-align: left;
}

.fpkg-selector {
	max-width: 620px;
	margin: 18px 0;
}

.fpkg-selector fieldset {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 22px;
	padding: 12px;
	border: 1px solid currentColor;
}

.fpkg-selector legend {
	padding: 0 7px;
	font-weight: 700;
}

.fpkg-selector label {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.fpkg-kg-field {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 14px 0;
}

.fpkg-kg-field select {
	min-width: 105px;
	padding: 8px;
}

.fpkg-calculation .fpkg-total {
	font-weight: 700;
}

.fpkg-cart-price {
	display: inline-block;
	line-height: 1.5;
}

.fpkg-cart-price small {
	font-weight: 600;
}

.fpkg-loop-price {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.fpkg-loop-gross {
	font-size: 1.35em;
	font-weight: 500;
}

.fpkg-loop-net {
	font-size: .9em;
	font-weight: 400;
}

@media (max-width: 520px) {
	.fpkg-base-table,
	.fpkg-calculation {
		font-size: .82em;
	}

	.fpkg-base-table th,
	.fpkg-base-table td,
	.fpkg-calculation th,
	.fpkg-calculation td {
		padding: 6px;
	}
}
