/* Currency and payment schedule: scoped final ownership. */
#booking-dialog .payment-commitment-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:22px!important;margin:24px 0!important}
#booking-dialog .payment-commitment-grid>.field{min-width:0;margin:0!important}
#booking-dialog .payment-commitment-grid>.field>span{display:block;margin-bottom:10px;font-size:11px;letter-spacing:.09em;line-height:1.5}
#booking-dialog #payment-currency{width:100%;max-width:280px;min-height:50px;border-radius:16px!important}
#booking-dialog #payment-currency-note{display:block;font-size:11px;line-height:1.5;margin:8px 0 0;color:var(--studio-muted)}
#booking-dialog #payment-currency-note[hidden]{display:none!important}
#booking-dialog #payment-schedule-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;background:transparent!important;border:0!important;padding:0!important;border-radius:0!important}
#booking-dialog #payment-schedule-summary>.schedule-primary,#booking-dialog #payment-schedule-summary>.schedule-balance{display:flex!important;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;min-height:108px;padding:18px 20px!important;border:1px solid var(--studio-line)!important;border-radius:18px!important;background:var(--studio-panel)!important;box-shadow:none!important}
#booking-dialog #payment-schedule-summary>.schedule-primary{background:color-mix(in srgb,var(--studio-accent) 8%,var(--studio-panel))!important;border-color:color-mix(in srgb,var(--studio-accent) 42%,var(--studio-line))!important}
#booking-dialog #payment-schedule-summary>.schedule-primary>span,#booking-dialog #payment-schedule-summary>.schedule-balance>span{font:600 10px/1.5 var(--sans,sans-serif)!important;letter-spacing:.09em;color:var(--studio-muted);text-transform:uppercase}
#booking-dialog #payment-today-summary,#booking-dialog #payment-balance-amount{font:600 clamp(20px,2.2vw,26px)/1.2 var(--sans,sans-serif)!important;font-variant-numeric:tabular-nums;letter-spacing:-.025em;white-space:nowrap;color:var(--studio-ink)!important;margin:0!important}
#booking-dialog #payment-schedule-summary>.schedule-credit{grid-column:1/-1;display:flex;justify-content:space-between;border-radius:16px;padding:14px 18px;background:var(--studio-panel);border:1px solid var(--studio-line)}
#booking-dialog #payment-schedule-summary>[hidden]{display:none!important}
#booking-dialog #payment-balance-summary{grid-column:1/-1;display:grid!important;gap:8px;padding:0!important;margin:0!important;border:0!important;background:transparent!important}
#booking-dialog #payment-balance-summary>div{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center;gap:4px 16px;padding:15px 18px!important;border:1px solid var(--studio-line)!important;border-radius:16px!important;background:var(--studio-panel)!important;min-width:0;box-shadow:none!important}
#booking-dialog #payment-balance-summary>div>span{grid-column:1;grid-row:1;font-size:12px;font-weight:600;color:var(--studio-ink);letter-spacing:0;text-transform:none}
#booking-dialog #payment-balance-summary>div>strong{grid-column:2;grid-row:1/3;white-space:nowrap;font:600 16px/1.3 var(--sans,sans-serif)!important;font-variant-numeric:tabular-nums;color:var(--studio-ink)!important}
#booking-dialog #payment-balance-summary>div>small{grid-column:1;grid-row:2;font-size:11px;color:var(--studio-muted)}
#booking-dialog #payment-balance-summary>p{border:1px solid var(--studio-line);border-radius:16px;margin:0;padding:15px 18px;font-size:12px;color:var(--studio-muted)}
#booking-dialog #payment-method-group{margin-top:26px}
#booking-dialog #summary-vehicle-row dd small{display:block;font-size:10px;color:var(--studio-muted);margin-top:3px}
@media(max-width:600px){#booking-dialog .payment-commitment-grid{gap:18px!important}#booking-dialog #payment-currency{max-width:none}#booking-dialog #payment-schedule-summary>.schedule-primary,#booking-dialog #payment-schedule-summary>.schedule-balance{padding:16px!important;min-height:104px}#booking-dialog #payment-today-summary,#booking-dialog #payment-balance-amount{font-size:21px!important}}
@media(max-width:360px){#booking-dialog #payment-schedule-summary{grid-template-columns:minmax(0,1fr)!important}#booking-dialog #payment-schedule-summary>.schedule-primary,#booking-dialog #payment-schedule-summary>.schedule-balance{min-height:94px}}

#booking-dialog .room-controls{margin:-4px 0 20px;padding:18px;border:1px solid var(--line,#ded8cd);border-radius:18px;background:#faf7f1;display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}
#booking-dialog .room-controls label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;min-width:0}
#booking-dialog .room-controls select{width:100%;min-width:0;border:1px solid #ded8cd;border-radius:14px;padding:12px;background:white;font:inherit;color:#292620}
#booking-dialog .room-controls p,#booking-dialog .room-controls small{grid-column:1/-1;margin:0;line-height:1.5}
#booking-dialog .room-controls p{font-weight:600}#booking-dialog .room-controls small{font-size:12px;color:#6f685e}
@media(max-width:480px){#booking-dialog .room-controls{grid-template-columns:1fr}}

#booking-dialog #quote-error{margin:8px 24px;padding:12px 16px;border:1px solid #d1a6a0;border-radius:14px;background:#fff5f2;color:#7f3329}#booking-dialog #quote-error[hidden]{display:none}

/* Clear, readable optional installment consent. */
#booking-dialog #autopay-consent{margin:20px 0;padding:20px;border:1px solid var(--studio-line);border-radius:20px;background:var(--studio-panel);color:var(--studio-ink);min-width:0}
#booking-dialog #autopay-consent[hidden]{display:none!important}
#booking-dialog #autopay-consent .terms{display:flex;align-items:flex-start;gap:12px;margin:0;padding:0}
#booking-dialog #autopay-consent .terms input{flex:0 0 20px;width:20px;height:20px;margin:2px 0 0;accent-color:var(--studio-accent)}
#booking-dialog #autopay-consent .terms span{min-width:0}
#booking-dialog #autopay-consent .terms strong{display:block;font:600 14px/1.5 var(--sans,sans-serif);color:var(--studio-ink)}
#booking-dialog #autopay-schedule{display:block;margin:14px 0 0;font-size:13px;line-height:1.65;color:var(--studio-ink)}
#booking-dialog .autopay-details{margin-top:14px;padding-top:12px;border-top:1px solid var(--studio-line)}
#booking-dialog .autopay-details summary{cursor:pointer;font-size:13px;font-weight:600;line-height:1.6;color:var(--studio-ink)}
#booking-dialog #autopay-terms{display:block;margin:12px 0 0;font-size:12px;line-height:1.7;color:var(--studio-muted)}
@media(max-width:360px){#booking-dialog #autopay-consent{padding:16px}}
