/* Bienville Quote Builder v2 — quiet-luxury lodge.
 * Deep forest ink, warm ivory surfaces, brushed-gold accents,
 * serif display numerals. All tokens overridable from Elementor. */

.bq, .bq *, .bq *::before, .bq *::after { box-sizing: border-box; }

.bq {
	--bq-ink:     #1b1a17;
	--bq-accent:  #22372b;   /* deep forest */
	--bq-gold:    #a8874e;   /* brushed brass */
	--bq-surface: #ffffff;
	--bq-wash:    #f7f5f0;   /* warm ivory */
	--bq-line:    rgba(27, 26, 23, .1);
	--bq-radius:  16px;
	--bq-serif:   "Cormorant Garamond", "Playfair Display", Georgia, "Times New Roman", serif;
	--bq-shadow:  0 1px 2px rgba(27,26,23,.05), 0 12px 32px -12px rgba(27,26,23,.14);
	color: var(--bq-ink);
	font-size: 16px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}

/* ---------- header & progress ---------- */
.bq-eyebrow {
	margin: 0 0 10px;
	font-size: 11px; font-weight: 600;
	letter-spacing: .18em; text-transform: uppercase;
	color: var(--bq-gold);
}
.bq-head { margin-bottom: 26px; }
.bq-title {
	margin: 0 0 8px;
	font-family: var(--bq-serif);
	font-weight: 600; font-size: clamp(30px, 4vw, 42px);
	line-height: 1.1; letter-spacing: -.01em;
	color: var(--bq-ink);
}
.bq-sub { margin: 0; max-width: 72ch; opacity: .68; }

.bq-progress { margin-bottom: 26px; }
.bq-progress-track {
	height: 2px; background: var(--bq-line);
	border-radius: 2px; overflow: hidden;
}
.bq-progress-fill {
	display: block; height: 100%; width: 0;
	background: linear-gradient(90deg, var(--bq-accent), var(--bq-gold));
	transition: width .45s cubic-bezier(.22,.8,.3,1);
}
.bq-progress-text {
	margin: 10px 0 0;
	font-size: 11px; font-weight: 600;
	letter-spacing: .14em; text-transform: uppercase;
	opacity: .55;
}

/* ---------- step cards ---------- */
.bq-card {
	display: block; /* visible until the wizard boots — no blank page if JS is delayed */
	background: var(--bq-surface);
	border: 1px solid var(--bq-line);
	border-radius: var(--bq-radius);
	box-shadow: var(--bq-shadow);
	padding: clamp(22px, 4vw, 40px);
	margin-bottom: 20px;
}
.bq-ready .bq-card { display: none; }
.bq-ready .bq-card.bq-active { display: block; animation: bqRise .4s cubic-bezier(.22,.8,.3,1); }
@keyframes bqRise {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: none; }
}
.bq-step-title {
	margin: 0 0 20px;
	font-family: var(--bq-serif);
	font-weight: 600; font-size: clamp(22px, 3vw, 30px);
	color: var(--bq-ink);
}
.bq-card .bq-eyebrow { margin-bottom: 4px; }

/* ---------- choice pills ---------- */
.bq-choice { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 12px; margin: 0 0 20px; }
.bq-pill { position: relative; cursor: pointer; }
.bq-pill input { position: absolute; opacity: 0; }
.bq-pill span {
	display: block; height: 100%;
	padding: 16px 18px;
	background: var(--bq-wash);
	border: 1px solid var(--bq-line);
	border-radius: calc(var(--bq-radius) - 4px);
	transition: border-color .18s, background .18s, box-shadow .18s, transform .18s;
}
.bq-pill strong { display: block; font-size: 1.02em; letter-spacing: -.005em; }
.bq-pill em { display: block; font-style: normal; font-size: .84em; opacity: .6; margin-top: 4px; line-height: 1.45; }
.bq-pill span:hover { transform: translateY(-1px); }
.bq-pill input:checked + span {
	background: var(--bq-surface);
	border-color: var(--bq-accent);
	box-shadow: inset 0 0 0 1px var(--bq-accent), 0 8px 20px -10px rgba(34,55,43,.35);
}
.bq-pill input:focus-visible + span { outline: 2px solid var(--bq-gold); outline-offset: 2px; }

.bq-date {
	width: 200px !important;
	min-width: 200px; max-width: 200px;
	flex: 0 0 200px !important;
	box-sizing: border-box;
	padding: 10px 14px;
	border: 1px solid var(--bq-line); border-radius: 10px;
	background: var(--bq-wash); color: var(--bq-ink);
	font: inherit; font-weight: 600;
}
.bq-date:focus-visible {
	outline: none; background: var(--bq-surface);
	border-color: var(--bq-accent);
	box-shadow: 0 0 0 3px rgba(168,135,78,.22);
}

/* ---------- rows & steppers ---------- */
.bq-row {
	display: flex; align-items: center; justify-content: space-between; gap: 16px;
	padding: 14px 0; border-bottom: 1px solid var(--bq-line);
}
.bq-row:last-child { border-bottom: 0; }
.bq-row-txt label { font-weight: 600; display: block; letter-spacing: -.005em; }
.bq-hint { display: block; font-size: .82em; opacity: .55; margin-top: 2px; font-weight: 400; }

.bq-stepper { display: inline-flex; align-items: center; gap: 10px; flex: 0 0 auto; }
.bq-stepper button {
	width: 38px; height: 38px;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--bq-line); border-radius: 999px;
	background: var(--bq-surface); color: var(--bq-ink);
	font-size: 17px; line-height: 1; cursor: pointer;
	transition: background .15s, color .15s, border-color .15s, transform .1s;
}
.bq-stepper button:hover { background: var(--bq-accent); border-color: var(--bq-accent); color: #fff; }
.bq-stepper button:active { transform: scale(.94); }
.bq-field-err {
	border-color: #b3552d !important;
	box-shadow: 0 0 0 3px rgba(179, 85, 45, .18) !important;
	background: #fdf6f2 !important;
}
.bq-step-err {
	margin: 14px 0 0;
	font-size: .86em; font-weight: 600; color: #b3552d;
}
/* The address row spans the full contact grid: street takes the left half
 * (matching Name/Phone above), city+state+zip share the right half. */
.bq-addr-grid {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px 18px;
}
.bq-csz {
	display: grid;
	grid-template-columns: 1.6fr .6fr .9fr;
	gap: 0 12px;
}
@media (max-width: 640px) {
	.bq-addr-grid { grid-template-columns: 1fr; gap: 0; }
	.bq-csz { grid-template-columns: 1.6fr .6fr .9fr; }
}

.bq select {
	width: 100%; box-sizing: border-box;
	margin-top: 6px; /* match the text inputs so rows align */
	padding: 12px 46px 12px 14px;
	border: 1px solid var(--bq-line); border-radius: 10px;
	background-color: var(--bq-wash); color: var(--bq-ink); font: inherit;
	appearance: none; -webkit-appearance: none; -moz-appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322372b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 14px center;
	background-size: 19px 19px;
	transition: border-color .15s, background-color .15s, box-shadow .15s;
}
.bq select:focus-visible {
	outline: none; background-color: var(--bq-surface);
	border-color: var(--bq-accent);
	box-shadow: 0 0 0 3px rgba(168, 135, 78, .22);
}

/* Guide-gratuity opt-in: a proper toggle in a highlighted panel so nobody
 * assumes the tip is already included. Mirrors the AM/PM selected style. */
.bq-tip-panel {
	margin: 6px 0 4px;
	padding: 16px 18px;
	background: var(--bq-wash);
	border: 1.5px dashed var(--bq-line);
	border-radius: 14px;
	transition: border-color .18s, background .18s, box-shadow .18s;
}
.bq-tip-panel.bq-on {
	border-style: solid;
	border-color: var(--bq-accent);
	background: var(--bq-surface);
	box-shadow: 0 0 0 2px var(--bq-gold);
}
.bq-tip-panel .bq-row { border: 0; padding: 0; margin: 0; }
.bq-tip-toggle {
	display: inline-flex; align-items: center; gap: 10px;
	padding: 9px 18px 9px 12px;
	border: 1.5px solid var(--bq-line); border-radius: 999px;
	background: var(--bq-surface);
	cursor: pointer; user-select: none;
	font-weight: 700; color: var(--bq-ink);
	transition: background .15s, color .15s, border-color .15s;
}
.bq-tip-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.bq-tip-mark {
	display: inline-flex; align-items: center; justify-content: center;
	width: 22px; height: 22px; flex: 0 0 22px;
	border: 2px solid var(--bq-line); border-radius: 999px;
	font-size: 13px; font-weight: 900; color: transparent;
	transition: all .15s;
}
.bq-tip-mark::before {
	content: "+"; color: var(--bq-accent);
	display: block; line-height: 1;
	transform: translateY(-2.5px);
}
.bq-tip-panel.bq-on .bq-tip-toggle {
	background: var(--bq-accent); border-color: var(--bq-accent); color: #fff;
}
.bq-tip-panel.bq-on .bq-tip-mark { border-color: #fff; background: #fff; }
.bq-tip-panel.bq-on .bq-tip-mark::before { content: "\2713"; color: var(--bq-accent); transform: none; }
.bq-tip-toggle:hover { border-color: var(--bq-accent); }
.bq-tip-toggle:has(input:focus-visible) { outline: 2px solid var(--bq-gold); outline-offset: 2px; }
.bq-tip-state { font-weight: 600; }
.bq-tip-panel.bq-on .bq-tip-state { color: var(--bq-accent); }
.bq-tip-panel.bq-on .bq-tip-input input { border-color: var(--bq-accent); background: var(--bq-surface); }

.bq-stepper input {
	width: 62px; text-align: center;
	border: 0; background: transparent; color: var(--bq-ink);
	font-family: var(--bq-serif); font-size: 20px; font-weight: 600;
	-moz-appearance: textfield; appearance: textfield;
}
.bq-stepper input::-webkit-outer-spin-button,
.bq-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* ---------- activity cards (day screens) ---------- */
.bq-acts { display: grid; gap: 12px; }
.bq-act {
	display: flex; align-items: center; justify-content: space-between; gap: 18px;
	padding: 18px 20px;
	background: var(--bq-wash);
	border: 1px solid var(--bq-line);
	border-radius: calc(var(--bq-radius) - 4px);
	transition: box-shadow .18s, transform .18s, border-color .18s, background .18s;
}
.bq-act:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 28px -14px rgba(27,26,23,.22);
}
.bq-act-on {
	background: var(--bq-surface) !important;
	border-color: var(--bq-gold) !important;
	box-shadow: 0 0 0 1px var(--bq-gold), 0 14px 28px -14px rgba(27,26,23,.18);
}
.bq-act-info h5 { margin: 0 0 4px; font-size: 1.04em; font-weight: 650; letter-spacing: -.005em; }
.bq-act-info p { margin: 0 0 6px; font-size: .86em; opacity: .6; line-height: 1.5; max-width: 46ch; }
.bq-act-price {
	font-family: var(--bq-serif); font-size: 1.1em; font-weight: 600; color: var(--bq-accent);
}
.bq-act-price i { font-style: normal; font-family: inherit; font-size: .72em; opacity: .55; font-weight: 400; }

.bq-act-ctl { display:flex; flex-direction:column; align-items:flex-end; gap:8px; flex:0 0 auto; }
/* AM/PM segmented control — the selected side must be unmistakable:
 * solid deep-green fill, white bold text, gold ring, and a check mark.
 * !important guards against theme button styles washing the states out. */
.bq .bq-ampm {
	display:inline-flex; gap:3px; padding:3px;
	background:var(--bq-wash);
	border:1.5px solid var(--bq-line); border-radius:999px;
}
.bq .bq-ampm-btn {
	padding:6px 16px !important;
	border:0 !important; border-radius:999px !important;
	background:transparent !important;
	color:var(--bq-ink) !important; opacity:.45;
	font-size:.78em !important; font-weight:700 !important; letter-spacing:.06em;
	line-height:1 !important; cursor:pointer;
	box-shadow:none !important; text-transform:none !important;
	transition: background .15s, color .15s, opacity .15s, box-shadow .15s;
}
.bq .bq-ampm-btn:hover { opacity:.8; }
.bq .bq-ampm-btn[aria-pressed="true"] {
	background:var(--bq-accent) !important;
	color:#fff !important; opacity:1;
	font-weight:800 !important;
	box-shadow:0 0 0 2px var(--bq-gold), 0 3px 8px -2px rgba(27,26,23,.35) !important;
}
.bq .bq-ampm-btn[aria-pressed="true"]::before {
	content:"\2713\00a0"; /* ✓ */
	font-weight:900;
}
.bq .bq-ampm-btn:focus-visible { outline:2px solid var(--bq-gold) !important; outline-offset:2px; }

.bq-tip-input { display:inline-flex; align-items:center; gap:6px; }
.bq-tip-input span { font-family:var(--bq-serif); font-weight:600; font-size:1.1em; color:var(--bq-accent); }
.bq-tip-input input[type=number] {
	width:110px; padding:10px 12px; text-align:right;
	border:1px solid var(--bq-line); border-radius:10px;
	background:var(--bq-wash); color:var(--bq-ink); font:inherit; font-weight:600;
	-moz-appearance:textfield; appearance:textfield;
}
.bq-tip-input input::-webkit-outer-spin-button,
.bq-tip-input input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.bq-tip-input input:focus-visible {
	outline:none; background:var(--bq-surface); border-color:var(--bq-accent);
	box-shadow:0 0 0 3px rgba(168,135,78,.22);
}

.bq-act-warn[hidden] { display: none !important; }
.bq-act-warn {
	display: flex; align-items: center; gap: 10px;
	margin-top: 8px; padding: 8px 12px;
	background: #fdf3e4;
	border: 1px solid #e5c896; border-radius: 10px;
	font-size: .82em; font-weight: 600; color: #7a5a1e;
}
.bq-act-warn .bq-fix {
	flex: 0 0 auto; padding: 5px 14px; cursor: pointer;
	background: var(--bq-accent); color: #fff;
	border: 0; border-radius: 999px; font-size: .95em; font-weight: 700;
}
.bq-act-warn .bq-fix:hover { filter: brightness(1.12); }
.bq-act-warn.bq-over {
	background: #eef3ec;
	border-color: #b9ccb5;
	color: #35523f;
	font-weight: 500;
}
.bq-act-warn.bq-over .bq-fix {
	background: transparent; color: var(--bq-accent);
	border: 1.5px solid var(--bq-accent);
}
.bq-act-warn.bq-over .bq-fix:hover { background: var(--bq-accent); color: #fff; }
.bq-cap-note[hidden] { display: none !important; }
.bq-cap-note {
	margin-top: 8px; font-size: .8em; font-weight: 600;
	color: var(--bq-accent); opacity: .8;
}

/* ---------- meals ---------- */
.bq-meals { margin-top: 26px; padding-top: 22px; border-top: 1px solid var(--bq-line); }
.bq-meals-title { margin: 0 0 2px; font-weight: 650; }
.bq-meal-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin-top: 14px; }
.bq-meal {
	display: flex; flex-direction: column; align-items: center; gap: 6px;
	padding: 16px 12px;
	background: var(--bq-wash);
	border: 1px solid var(--bq-line);
	border-radius: calc(var(--bq-radius) - 4px);
	text-align: center;
}
.bq-meal-name { font-weight: 600; font-size: .92em; }
.bq-meal-price { font-family: var(--bq-serif); color: var(--bq-accent); font-weight: 600; }
.bq-chip {
	margin-top: 14px; padding: 9px 18px; cursor: pointer;
	background: transparent; color: var(--bq-accent);
	border: 1px solid var(--bq-accent); border-radius: 999px;
	font-size: .85em; font-weight: 600; letter-spacing: .02em;
	transition: background .15s, color .15s;
}
.bq-chip:hover { background: var(--bq-accent); color: #fff; }

/* ---------- contact & review ---------- */
.bq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 18px; }
.bq-grid p, .bq-card > p { margin: 8px 0; }
.bq label { font-weight: 600; font-size: .88em; }
.bq input[type=text], .bq input[type=email], .bq input[type=tel], .bq textarea {
	width: 100%; padding: 12px 14px; margin-top: 6px;
	border: 1px solid var(--bq-line); border-radius: 10px;
	background: var(--bq-wash); color: var(--bq-ink); font: inherit;
	transition: border-color .15s, background .15s, box-shadow .15s;
}
.bq input:focus-visible, .bq textarea:focus-visible {
	outline: none; background: var(--bq-surface);
	border-color: var(--bq-accent);
	box-shadow: 0 0 0 3px rgba(168,135,78,.22);
}
.bq button:focus-visible, .bq-pill input:focus-visible + span { outline: 2px solid var(--bq-gold); outline-offset: 2px; }
.bq-check { display: flex; gap: 10px; align-items: flex-start; margin: 14px 0; font-size: .93em; }
.bq-check input { margin-top: 3px; accent-color: var(--bq-accent); }

.bq-review { margin-top: 20px; }
.bq-review-title { margin: 0 0 10px; font-family: var(--bq-serif); font-size: 1.25em; font-weight: 600; }
.bq-line {
	display: flex; justify-content: space-between; align-items: baseline; gap: 14px;
	padding: 8px 0; border-bottom: 1px solid var(--bq-line);
	font-size: .93em;
}
.bq-line em { font-style: normal; opacity: .5; font-size: .86em; margin-left: 6px; }
.bq-line b { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.bq-soft { opacity: .65; }
.bq-grand { border-bottom: 0; padding-top: 12px; }
.bq-grand span { font-weight: 700; }
.bq-grand b { font-family: var(--bq-serif); font-size: 1.5em; color: var(--bq-accent); }

.bq-disclaimer {
	margin: 10px 0 0; text-align: right;
	font-size: .8em; opacity: .55; font-style: italic;
}

/* ---------- nav & submit ---------- */
.bq-nav { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 4px; }
.bq-prev {
	padding: 12px 26px; cursor: pointer;
	background: transparent; color: var(--bq-ink);
	border: 1px solid var(--bq-line); border-radius: 999px; font-weight: 600;
	transition: border-color .15s;
}
.bq-prev:hover { border-color: var(--bq-ink); }
.bq-next, .bq-submit {
	margin-left: auto;
	padding: 14px 34px; cursor: pointer;
	background: var(--bq-accent); color: #fff;
	border: 0; border-radius: 999px;
	font-weight: 600; font-size: 1em; letter-spacing: .03em;
	box-shadow: 0 10px 24px -10px rgba(34,55,43,.5);
	transition: transform .15s, box-shadow .15s, filter .15s;
}
.bq-next:hover, .bq-submit:hover { transform: translateY(-1px); filter: brightness(1.1); box-shadow: 0 14px 30px -10px rgba(34,55,43,.55); }
.bq-submit[disabled] { opacity: .6; cursor: wait; transform: none; }
.bq-msg { margin: 14px 0 0; font-weight: 600; }
.bq-ok { color: var(--bq-accent); }
.bq-err { color: #9c3f2e; }

/* ---------- floating total (form) ---------- */
.bq-fab {
	position: sticky; bottom: 18px; z-index: 9;
	display: flex; align-items: baseline; gap: 14px;
	margin-top: 20px; padding: 14px 22px;
	color: #fff;
	background: color-mix(in srgb, var(--bq-accent) 92%, black);
	background: var(--bq-accent);
	backdrop-filter: blur(8px);
	border: 1px solid rgba(255,255,255,.12);
	border-radius: 999px;
	box-shadow: 0 18px 40px -16px rgba(27,26,23,.5);
	opacity: .45; transform: translateY(4px);
	transition: opacity .25s, transform .25s;
}
.bq-fab.bq-live { opacity: 1; transform: none; }
.bq-fab-label { font-size: 10.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; opacity: .75; }
.bq-fab-total { font-family: var(--bq-serif); font-size: 26px; font-weight: 600; }
.bq-fab-deposit { margin-left: auto; font-size: .82em; color: #d9c193; }

/* ---------- running-total sidebar widget ---------- */
.bq-total-card {
	background: var(--bq-surface);
	border: 1px solid var(--bq-line);
	border-radius: var(--bq-radius);
	box-shadow: var(--bq-shadow);
	padding: 24px 26px;
	position: relative; overflow: hidden;
}
.bq-total-card::before {
	content: ""; position: absolute; inset: 0 0 auto 0; height: 3px;
	background: linear-gradient(90deg, var(--bq-accent), var(--bq-gold));
}
[class*="bq-sticky-yes"] .bq-total-card { position: sticky; top: var(--bq-sticky-top, 90px); }
.bq-total-title { margin: 0 0 12px; font-family: var(--bq-serif); font-weight: 600; font-size: 1.4em; color: var(--bq-ink); }
.bq-total-empty { font-size: .88em; opacity: .55; margin: 0 0 8px; }
.bq-total-lines { margin-bottom: 8px; max-height: 300px; overflow: auto; }
.bq-total-lines .bq-line { font-size: .86em; }
.bq-total-foot {
	display: flex; justify-content: space-between; align-items: baseline;
	border-top: 1px solid var(--bq-ink); margin-top: 10px; padding-top: 12px;
}
.bq-total-label { font-size: 10.5px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; opacity: .6; }
.bq-total-amount { font-family: var(--bq-serif); font-size: 2em; font-weight: 600; color: var(--bq-accent); font-variant-numeric: tabular-nums; }
.bq-total-deposit { font-size: .84em; opacity: .65; margin: 8px 0 0; }
.bq-total-cta {
	display: block; text-align: center; margin-top: 16px; padding: 12px;
	background: var(--bq-accent); color: #fff !important;
	border-radius: 999px; font-weight: 600; letter-spacing: .03em; text-decoration: none;
	box-shadow: 0 10px 24px -10px rgba(34,55,43,.5);
	transition: transform .15s, filter .15s;
}
.bq-total-cta:hover { transform: translateY(-1px); filter: brightness(1.1); }

/* ---------- responsive & a11y ---------- */
@media (max-width: 640px) {
	.bq-grid { grid-template-columns: 1fr; }
	.bq-act { flex-direction: column; align-items: stretch; }
	.bq-act .bq-stepper { justify-content: center; }
	.bq-fab { flex-wrap: wrap; gap: 4px 14px; border-radius: var(--bq-radius); }
	.bq-fab-deposit { margin-left: 0; flex-basis: 100%; }
	.bq-nav { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
	.bq *, .bq-card.bq-active { transition: none !important; animation: none !important; }
}


/* ---- Small screens: rows wrap, dates stack full width, padding relaxes ---- */
@media (max-width: 600px) {
	.bq-card { padding: 20px 16px; }
	.bq-row { flex-wrap: wrap; row-gap: 10px; }
	.bq-row .bq-row-txt { flex: 1 1 100%; }
	.bq-row .bq-stepper { margin-left: auto; }
	.bq-date {
		width: 100% !important;
		min-width: 0; max-width: none;
		flex: 1 1 100% !important;
	}
	.bq-tip-row .bq-tip-input { margin-left: auto; }
	.bq-step-title { font-size: 1.25em; }
	.bq-fab { left: 10px; right: 10px; }
	.bq-nav { flex-wrap: wrap; gap: 10px; }
	.bq-nav .bq-next,
	.bq-nav .bq-submit {
		flex: 1 1 100%;
		order: -1; /* primary action on top, full width, thumb friendly */
		text-align: center;
	}
	.bq-nav .bq-prev {
		flex: 1 1 100%;
		text-align: center;
	}
}


/* ---- Save & share panel ---- */
.bq-share { margin: 18px 0 8px; padding: 16px 18px; background: var(--bq-wash); border: 1.5px dashed var(--bq-line); border-radius: 14px; }
.bq-share-btn {
	padding: 11px 22px; cursor: pointer; font-weight: 700;
	background: transparent; color: var(--bq-accent);
	border: 1.5px solid var(--bq-accent); border-radius: 999px;
	transition: background .15s, color .15s;
}
.bq-share-btn:hover { background: var(--bq-accent); color: #fff; }
.bq-share .bq-hint { margin-top: 8px; }
.bq-share-out { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 12px; }
.bq-share-url { flex: 1 1 220px; min-width: 0; padding: 10px 12px; border: 1px solid var(--bq-line); border-radius: 10px; background: var(--bq-surface); font-size: .9em; }
.bq-share-copy, .bq-share-native {
	padding: 10px 18px; cursor: pointer; font-weight: 700;
	background: var(--bq-accent); color: #fff; border: 0; border-radius: 999px;
}
.bq-share-done { flex: 1 1 100%; font-size: .85em; font-weight: 600; color: var(--bq-accent); }
