.hd-party-summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; width: 100%; border: 0; background: transparent; text-align: left; color: inherit; padding: .35rem 0; }
.hd-party-summary strong, #hdPartySummaryText { display: block; }
#hdPartySummaryText { font-size: .875rem; margin-top: .25rem; }
.hd-party-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
#hdPartyAdd { min-height: 44px; padding: 10px 16px; border: 1px solid var(--primary, #1e3c72); border-radius: 12px; background: #f1f5fc; color: var(--primary, #1e3c72); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
#hdPartyAdd:not([hidden]) { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
#hdPartyAdd:hover:not(:disabled) { background: #e4ecf9; }
#hdPartyAdd:focus-visible { outline: 2px solid var(--primary, #1e3c72); outline-offset: 3px; }
#hdPartyAdd:disabled { opacity: .45; cursor: not-allowed; }
#hdPartyEditor[hidden], .hd-party-editing .hd-party-summary,
.hd-party-editing .hd-bp-summary, .hd-party-editing .hd-bp-divider,
.hd-party-editing .hd-bp-calendar, .hd-party-editing .hd-bp-modal__footer { display: none !important; }
#bookingPopup #hdPartyEditor .hd-bp-room { position: relative; flex-wrap: wrap !important; padding: 12px !important; margin-bottom: 12px !important; gap: 12px !important; }
#bookingPopup #hdPartyEditor .hd-bp-room__info { display: flex !important; align-items: center; justify-content: space-between; gap: .75rem; width: 100%; padding-right: 0; grid-column: 1 / -1; }
#bookingPopup #hdPartyEditor .hd-bp-room__name { display: block !important; }
#bookingPopup #hdPartyEditor .hd-bp-room__counters { margin-left: 0 !important; }
#bookingPopup #hdPartyEditor .hd-bp-room .hd-bp-ages { margin-left: 0 !important; }
.hd-party-remove { flex-shrink: 0; margin: 0; padding: .25rem 0; }
#bookingPopup .hd-party-remove { color: #b42318; }
#bookingPopup .hd-party-remove:hover { color: #8f1c13; }
#bookingPopup .hd-party-remove:focus-visible { outline: 2px solid #b42318; outline-offset: 3px; }
#hdPartyDone { width: 100%; }
@media (min-width: 576px) {
    #bookingPopup #hdPartyEditor .hd-bp-room { display: grid !important; grid-template-columns: 220px minmax(150px, 1fr); align-items: start !important; }
    #bookingPopup #hdPartyEditor .hd-bp-room__counters { justify-content: flex-start !important; }
}
@media (max-width: 575px) {
    #hdPartyAdd { width: 100%; }
    #bookingPopup #hdPartyEditor .hd-bp-room { display: flex; flex-wrap: wrap !important; }
    #hdPartyEditor .hd-bp-room__counters { width: 100%; justify-content: space-between; }
    #bookingPopup #hdPartyEditor .hd-bp-counter { flex-direction: column !important; gap: 6px !important; padding: 10px 6px; }
    #bookingPopup #hdPartyEditor .hd-bp-room .hd-bp-ages { width: 100% !important; margin-left: 0 !important; }
}
