/* Scoped room selection presentation; checkout and complete supplier offers are unchanged. */
.room-choice-stay{font-size:13px;color:#667085;margin:0 0 20px}
.room-mobile-grid{display:none}
.room-desktop-list .room-offer-group,#room-options-dialog .room-offer-group{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;padding:22px;border:1px solid #e4e7ec;border-radius:14px;margin:16px 0;background:#fff}
.room-choice-overview{min-width:0}.room-choice-overview h3{font-size:17px;line-height:1.4;margin:16px 0 10px;overflow-wrap:anywhere}
.room-choice-overview .room-photo-button{width:100%}.room-choice-overview .room-photo-button .offer-photo{height:190px}
.room-choice-facts{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;font-weight:500;color:#475467;margin-bottom:12px;line-height:1.5}
.room-choice-facts>span,.room-choice-amenities>span{display:flex;align-items:flex-start;gap:6px}.room-fact-icon{flex:none;margin-top:1px;color:#667085}.room-choice-amenities{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#475467;margin:0 0 16px}.room-choice-amenities .room-fact-icon{color:#287fe5}
.room-choice-overview>details{font-size:12px}.room-choice-overview .room-description p{line-height:1.7}
.room-desktop-list .room-rate-options,#room-options-dialog .room-rate-options{margin:0;border:0;min-width:0}
.room-desktop-list .room-rate-option,#room-options-dialog .room-rate-option{padding:16px;gap:20px;background:#f8fafc;border:1px solid #e4e7ec;border-radius:10px;margin-bottom:12px;grid-template-columns:minmax(0,1fr) 190px}
.room-rate-terms{min-width:0}.room-rate-terms h4{margin:0 0 8px;overflow-wrap:anywhere}.room-rate-terms .room-board{font-weight:700;font-size:15px;margin-bottom:10px}
.room-refund{color:#475467}.room-refund.refundable{color:#087443;font-weight:600}.room-cancel-date{font-size:12px!important;line-height:1.5;color:#475467}.room-cancel-date strong{font-weight:500}
.room-cancel-date.refundable{display:flex;align-items:flex-start;gap:5px}.room-cancel-date>.room-fact-icon{color:currentColor;width:14px;height:14px;margin:2px 0 0;flex-shrink:0}
.room-rate-details{font-size:11px!important;margin-top:14px}.room-rate-details>summary{font-weight:500;color:#667085}.room-rate-details pre{font-family:inherit}.room-property-fee{display:block;font-size:11px!important;color:#667085;line-height:1.5;margin:0!important}
.room-fee-amount{white-space:nowrap}
.rate-selection>small{font-size:11px}.rate-selection>button{width:100%;min-height:44px}.rate-selection strong{white-space:nowrap}
#room-options-dialog{padding:0;width:min(800px,calc(100vw - 32px));max-height:90dvh;overflow:auto;overscroll-behavior:contain;color:#24272b}
#room-options-dialog::backdrop{background:#10182888}.room-options-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:white;position:sticky;top:0;z-index:2;border-bottom:1px solid #e4e7ec}.room-options-heading h2{margin:0;font-size:18px}.room-options-heading button{width:44px;height:44px;padding:0;font-size:28px;background:#f2f4f7;color:#344054;border:0;border-radius:50%}
[data-room-options-error]:empty{display:none}[data-room-options-error]{margin:16px;padding:12px;color:#b42318;background:#fff1f0;border-radius:8px}
@media(max-width:900px){.room-desktop-list .room-offer-group{grid-template-columns:200px minmax(0,1fr);gap:16px;padding:16px}.room-desktop-list .room-rate-option{grid-template-columns:minmax(0,1fr) 155px;gap:12px}}
@media(max-width:600px){
  #offers.panel{padding:0;border:0}.room-desktop-list{display:none}.room-mobile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .room-choice-card{display:flex;flex-direction:column;text-align:start;padding:0;min-width:0;border:1px solid #e4e7ec;background:#fff;color:#24272b;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #10182808;font-weight:400}
  .room-choice-card:hover{background:#f8fbff;border-color:#2e90fa}.room-choice-card img,.room-choice-no-photo{width:100%;height:120px;object-fit:cover;background:#eef2f6}.room-choice-no-photo{display:grid;place-items:center;color:#98a2b3;font-size:32px}
  .room-choice-card-body{display:flex;flex-direction:column;flex:1;padding:12px;min-width:0;width:100%;box-sizing:border-box;gap:6px}.room-choice-name{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.room-choice-card .room-choice-facts{display:flex;flex-direction:column;gap:3px;font-size:11px;margin:0 0 4px;font-weight:400}.room-choice-from{margin-top:auto;font-size:10px;color:#667085}.room-choice-price{font-size:20px}.room-choice-card small{font-size:10px;font-weight:400;color:#667085;line-height:1.5}.room-choice-action{font-size:12px;font-weight:700;color:#175cd3;padding-top:8px}
  .room-choice-card .room-choice-amenities{font-size:11px;gap:4px;margin:2px 0 8px;padding-top:8px;border-top:1px solid #eef2f6}.room-choice-card .room-choice-amenities>span:nth-child(n+3){display:none}.room-choice-card .room-fact-icon{width:14px;height:14px}.room-choice-card .room-fact-bed>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
  #room-options-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0;box-sizing:border-box}
  #room-options-dialog .room-offer-group{display:block;border:0;padding:16px;margin:0;border-radius:0}#room-options-dialog .room-choice-overview h3{font-size:20px}#room-options-dialog .room-choice-overview .offer-photo{height:230px}#room-options-dialog .room-choice-overview>details{margin-bottom:20px}
  #room-options-dialog .room-rate-option{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px}.room-options-heading{padding:12px 16px}#room-options-dialog .rate-selection{align-items:stretch;text-align:start}#room-options-dialog .rate-selection>strong{font-size:24px}
}
