/* O-14, prices and stay rules: what apartments.css's form parts don't cover. */
.bh-optional { font-weight: var(--weight-regular); color: var(--ink-2); }
.bh-input-unit-row > .bh-unit { min-width: 0; overflow-wrap: anywhere; }

/* Long-stay levels: "[10] % off from [7] nights" on one line where it fits. */
.bh-level { margin: 0; padding: 0; border: 0; min-width: 0; display: grid; gap: var(--space-2); }
.bh-level > legend { padding: 0; margin-bottom: var(--space-2); }
.bh-level-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); color: var(--ink-2); }
.bh-input--short { width: 72px; flex: none; }

/* The sample quote: label left, amount right; the total and what the guest pays stand out. */
.bh-sample-stay { margin: 0; color: var(--ink-2); font-size: var(--text-small); line-height: var(--leading-small); }
.bh-sample-lines { width: 100%; border-collapse: collapse; }
.bh-sample-lines th { padding: var(--space-2) var(--space-3) var(--space-2) 0; text-align: left; font-weight: var(--weight-regular); }
.bh-sample-lines td { padding: var(--space-2) 0; text-align: right; white-space: nowrap; vertical-align: top; }
.bh-sample-lines tr + tr > * { border-top: 1px solid var(--line); }
.bh-sample-lines tr:nth-last-child(-n + 2) > * { font-weight: var(--weight-bold); }
