.boxprice-wrap {
	--boxprice-primary: #00353c;
	--boxprice-primary-light: #004a54;
	--boxprice-primary-dark: #002428;
	--boxprice-bg: #f4f8f9;
	--boxprice-border: #d0e2e5;
	--boxprice-text: #1a2e32;
	--boxprice-muted: #5a7378;
	--boxprice-radius: 12px;
	--boxprice-shadow: 0 8px 32px rgba(0, 53, 60, 0.12);

	font-family: inherit !important;
	direction: rtl !important;
	max-width: 560px !important;
	margin: 2rem auto !important;
	box-sizing: border-box !important;
}

.boxprice-wrap *,
.boxprice-wrap *::before,
.boxprice-wrap *::after {
	box-sizing: border-box !important;
}

.boxprice-wrap,
.boxprice-wrap input,
.boxprice-wrap select,
.boxprice-wrap button,
.boxprice-wrap label,
.boxprice-wrap h2,
.boxprice-wrap p,
.boxprice-wrap strong,
.boxprice-wrap span {
	font-family: inherit !important;
}

.boxprice-card {
	background: #fff !important;
	border: 1px solid var(--boxprice-border) !important;
	border-radius: var(--boxprice-radius) !important;
	box-shadow: var(--boxprice-shadow) !important;
	overflow: hidden !important;
}

.boxprice-header {
	background: linear-gradient(135deg, var(--boxprice-primary) 0%, var(--boxprice-primary-light) 100%) !important;
	color: #fff !important;
	padding: 1.5rem 1.75rem !important;
}

.boxprice-title {
	margin: 0 0 0.35rem !important;
	padding: 0 !important;
	font-size: 1.35rem !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	color: #fff !important;
}

.boxprice-desc {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 0.9rem !important;
	opacity: 0.88 !important;
	line-height: 1.6 !important;
	color: #fff !important;
}

.boxprice-form {
	padding: 1.5rem 1.75rem 0.5rem !important;
	margin: 0 !important;
}

.boxprice-grid {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 1rem !important;
}

@media (max-width: 480px) {
	.boxprice-grid {
		grid-template-columns: 1fr !important;
	}
}

.boxprice-field {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.35rem !important;
	margin: 0 !important;
	padding: 0 !important;
}

.boxprice-field label {
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	color: var(--boxprice-text) !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
}

.boxprice-field--full {
	grid-column: 1 / -1 !important;
}

.boxprice-field input,
.boxprice-field select {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	min-height: unset !important;
	padding: 0.65rem 0.85rem !important;
	margin: 0 !important;
	border: 1.5px solid var(--boxprice-border) !important;
	border-radius: 8px !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: normal !important;
	color: var(--boxprice-text) !important;
	background: var(--boxprice-bg) !important;
	background-image: none !important;
	box-shadow: none !important;
	transition: border-color 0.2s, box-shadow 0.2s !important;
	appearance: auto !important;
	-webkit-appearance: auto !important;
}

.boxprice-field input:focus,
.boxprice-field select:focus {
	outline: none !important;
	border-color: var(--boxprice-primary) !important;
	box-shadow: 0 0 0 3px rgba(0, 53, 60, 0.15) !important;
	background: #fff !important;
}

.boxprice-field input:invalid:not(:placeholder-shown) {
	border-color: #c0392b !important;
}

.boxprice-submit {
	display: block !important;
	width: 100% !important;
	margin: 1.25rem 0 1.5rem !important;
	padding: 0.85rem 1.5rem !important;
	background: var(--boxprice-primary) !important;
	background-image: none !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	line-height: normal !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	cursor: pointer !important;
	box-shadow: none !important;
	transition: background 0.2s, transform 0.1s !important;
}

.boxprice-submit:hover,
.boxprice-submit:focus {
	background: var(--boxprice-primary-light) !important;
	color: #fff !important;
}

.boxprice-submit:active {
	transform: scale(0.98) !important;
}

.boxprice-submit:disabled {
	opacity: 0.65 !important;
	cursor: not-allowed !important;
}

.boxprice-note {
	margin: 0.5rem 0 0 !important;
	padding: 0 !important;
	font-size: 0.8rem !important;
	color: var(--boxprice-muted) !important;
	line-height: 1.5 !important;
}

.boxprice-results {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.65rem !important;
	margin: 0 1.75rem 1.5rem !important;
	padding: 0 !important;
}

.boxprice-result {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 1rem !important;
	padding: 0.85rem 1.25rem !important;
	margin: 0 !important;
	background: var(--boxprice-bg) !important;
	border: 1.5px solid var(--boxprice-border) !important;
	border-right: 4px solid var(--boxprice-primary) !important;
	border-radius: 8px !important;
}

.boxprice-result--price {
	background: #fff !important;
	border-color: var(--boxprice-primary) !important;
}

.boxprice-qty-display {
	display: flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
}

.boxprice-sack-icon {
	width: 1.5rem !important;
	height: 1.5rem !important;
	color: var(--boxprice-primary) !important;
	flex-shrink: 0 !important;
}

.boxprice-qty-value {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: var(--boxprice-primary) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.boxprice-result-label {
	font-size: 0.9rem !important;
	font-weight: 400 !important;
	color: var(--boxprice-muted) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.boxprice-result-value,
.boxprice-area-value,
.boxprice-unit-value {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: var(--boxprice-primary) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.boxprice-result--price .boxprice-result-value {
	font-size: 1.25rem !important;
}

.boxprice-message {
	margin: 0 1.75rem 1.5rem !important;
	padding: 0.75rem 1rem !important;
	border-radius: 8px !important;
	font-size: 0.875rem !important;
	line-height: 1.5 !important;
}

.boxprice-message.is-error {
	background: #fdecea !important;
	color: #922b21 !important;
	border: 1px solid #f5b7b1 !important;
}

.boxprice-message.is-success {
	background: #eafaf1 !important;
	color: #1e8449 !important;
	border: 1px solid #a9dfbf !important;
}
