.booking-promotion-choice{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;margin:1rem 0;padding:.75rem 0}.booking-promotion-choice summary{cursor:pointer;color:var(--accent);font-weight:600}.booking-promotion-choice>div{padding-top:.65rem}.booking-promotion-choice p{font-size:.9rem;line-height:1.5}.booking-promotion-choice__input{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.booking-promotion-choice__input input{flex:12rem;min-width:0}.booking-promotion-choice[data-compact]{border:0;margin:0;padding:0}.booking-promotion-choice[data-compact] summary{align-items:center;min-height:44px;font-size:.78rem;font-weight:400;list-style:none;display:flex}.booking-promotion-choice[data-compact] summary::-webkit-details-marker{display:none}.booking-promo-launcher.brava-button{min-height:44px;color:var(--brava-burgundy);background:0 0;border:0;align-items:center;padding:0;font-size:14px;font-weight:500;line-height:21px;display:flex}.booking-promo-dialog.brava-dialog{background:#fff}.booking-promo-form{gap:.75rem;display:grid}.booking-promo-form .brava-field>label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.booking-promo-success{color:var(--brava-teal);margin:0;font-size:14px;font-weight:600;display:block}.booking-promo-details{text-align:left;gap:.3rem;display:grid}.booking-promo-details:empty{display:none}.booking-promo-details>p{text-align:left;margin:0;padding:0}.booking-promo-ineligible{color:var(--brava-teal)}.booking-promo-ineligible-message{color:var(--brava-teal);gap:.3rem;font-size:14px;display:grid}.booking-promo-ineligible-message>span{color:var(--brava-text-secondary);font-size:14px}.booking-promo-valid,.booking-promo-spinner{color:var(--brava-teal)}.booking-promo-invalid{color:var(--brava-danger)}.booking-promo-form .brava-field:has(.booking-promo-valid) input{border-color:var(--brava-teal);outline-color:var(--brava-teal)}.booking-promo-spinner{animation:.85s linear infinite booking-promo-spin}@keyframes booking-promo-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.booking-promo-spinner{animation:none}}.booking-promo-notice{color:var(--brava-text-secondary);margin:0;font-size:12px}.booking-promo-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.booking-promo-actions>:last-child{margin-left:auto}.booking-promo-actions:empty{display:none}
