.bbce {
	--bbce-bg: #002815;
	--bbce-accent: #ddbd00;
	--bbce-ink: #002815;
	--bbce-card: #ffffff;
	--bbce-muted: rgba(255, 255, 255, 0.72);
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: 48px;
	padding: 48px;
	border-radius: 24px;
	background: var(--bbce-bg);
	font-family: Roboto, sans-serif;
	box-sizing: border-box;
}
.bbce *, .bbce *::before, .bbce *::after { box-sizing: border-box; }
.bbce-controls { display: flex; flex-direction: column; gap: 28px; }
.bbce-head { display: flex; flex-direction: column; gap: 10px; }
.bbce-eyebrow {
	font-size: 14px; font-weight: 500; letter-spacing: 0.5px; text-transform: uppercase;
	color: var(--bbce-accent);
}
.bbce .bbce-title {
	margin: 0; font-family: Inter, sans-serif; font-weight: 700; font-size: 32px;
	line-height: 1.2; letter-spacing: -1px; color: #ffffff;
}
.bbce-field { display: flex; flex-direction: column; gap: 12px; }
.bbce-label {
	display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
	font-size: 15px; font-weight: 500; color: #ffffff; margin: 0;
}
.bbce-acres-val { font-family: Inter, sans-serif; font-weight: 700; font-size: 20px; color: var(--bbce-accent); }

/* Slider: gold fill to the handle, white handle with gold ring */
.bbce input.bbce-range[type="range"] {
	width: 100%; height: 28px; margin: 0; padding: 0; background: transparent; border: 0;
	-webkit-appearance: none; appearance: none; cursor: pointer;
}
.bbce input.bbce-range[type="range"]::-webkit-slider-runnable-track {
	height: 8px; border-radius: 999px;
	background: linear-gradient(to right, var(--bbce-accent) 0, var(--bbce-accent) var(--bbce-p, 0%), rgba(255, 255, 255, 0.28) var(--bbce-p, 0%), rgba(255, 255, 255, 0.28) 100%);
}
.bbce input.bbce-range[type="range"]::-moz-range-track { height: 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.28); }
.bbce input.bbce-range[type="range"]::-moz-range-progress { height: 8px; border-radius: 999px; background: var(--bbce-accent); }
.bbce input.bbce-range[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none; appearance: none; width: 26px; height: 26px; margin-top: -9px;
	border-radius: 50%; background: #ffffff; border: 4px solid var(--bbce-accent);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}
.bbce input.bbce-range[type="range"]::-moz-range-thumb {
	width: 18px; height: 18px; border-radius: 50%; background: #ffffff;
	border: 4px solid var(--bbce-accent); box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35);
}
.bbce input.bbce-range[type="range"]:focus { outline: none; }
.bbce input.bbce-range[type="range"]:focus-visible { outline: 2px solid #ffffff; outline-offset: 4px; border-radius: 999px; }

.bbce-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.bbce .bbce-pill {
	min-height: 44px; margin: 0; padding: 10px 22px; border-radius: 99px; cursor: pointer;
	font-family: Roboto, sans-serif; font-size: 15px; font-weight: 600; line-height: 1.2;
	letter-spacing: 0; text-transform: none;
	border: 1px solid rgba(255, 255, 255, 0.4); background: transparent; color: #ffffff;
	transition: background-color .15s, color .15s, border-color .15s;
}
.bbce .bbce-pill:hover { border-color: var(--bbce-accent); background: transparent; color: #ffffff; }
.bbce .bbce-pill[aria-pressed="true"] { background: var(--bbce-accent); border-color: var(--bbce-accent); color: var(--bbce-ink); }
.bbce .bbce-pill:focus-visible { outline: 2px solid #ffffff; outline-offset: 3px; }
.bbce-help { margin: 0; font-size: 14px; line-height: 22px; color: var(--bbce-muted); }

.bbce-card {
	background: var(--bbce-card); border-radius: 16px; padding: 32px;
	display: flex; flex-direction: column; gap: 18px;
}
.bbce-rows { display: flex; flex-direction: column; gap: 18px; }
.bbce-row {
	display: flex; justify-content: space-between; align-items: baseline; gap: 16px;
	padding-bottom: 16px; border-bottom: 1px solid #e0e7e3;
	font-size: 16px; line-height: 24px; color: var(--bbce-ink);
}
.bbce-row strong {
	font-family: Inter, sans-serif; font-weight: 700; font-size: 24px; letter-spacing: -1px;
	white-space: nowrap; color: var(--bbce-ink);
}
.bbce-row-total strong { font-size: 36px; }
.bbce-note { margin: 0; font-size: 13px; line-height: 20px; color: #495b55; }
.bbce .bbce-btn {
	align-self: flex-start; display: inline-flex; align-items: center; justify-content: center;
	min-height: 52px; padding: 14px 32px; border-radius: 999px;
	background: var(--bbce-accent); color: var(--bbce-ink);
	font-family: Inter, sans-serif; font-weight: 700; font-size: 15px; letter-spacing: 2px;
	text-transform: uppercase; text-decoration: none !important; text-align: center; line-height: 1.35;
	transition: background-color .15s;
}
.bbce .bbce-btn:hover, .bbce .bbce-btn:focus-visible { background: #c9ab00; color: var(--bbce-ink); }

@media (max-width: 1024px) {
	.bbce { grid-template-columns: minmax(0, 1fr); gap: 36px; }
}
@media (max-width: 767px) {
	.bbce { padding: 28px 22px; gap: 32px; }
	.bbce-card { padding: 24px 20px; }
	.bbce-row { flex-direction: column; align-items: flex-start; gap: 2px; }
	.bbce .bbce-btn { align-self: stretch; padding: 14px 20px; }
}

/* Theme overrides (Astra styles range inputs) */
.bbce input.bbce-range[type="range"]::-webkit-slider-runnable-track, .bbce input.bbce-range[type="range"]:focus::-webkit-slider-runnable-track { box-shadow: none; border: 0; width: 100%; }
.bbce input.bbce-range[type="range"]::-webkit-slider-thumb { box-shadow: 0 2px 6px rgba(0, 0, 0, 0.35); }
.bbce input.bbce-range[type="range"]::-moz-range-track, .bbce input.bbce-range[type="range"]::-moz-range-thumb { box-shadow: none; }
.bbce input.bbce-range[type="range"]:focus::-webkit-slider-runnable-track { background: linear-gradient(to right, var(--bbce-accent) 0, var(--bbce-accent) var(--bbce-p, 0%), rgba(255, 255, 255, 0.28) var(--bbce-p, 0%), rgba(255, 255, 255, 0.28) 100%); }
