.hotel-browser{width:min(1140px,calc(100vw - 48px));max-width:none;height:min(860px,calc(100dvh - 48px));max-height:none;padding:0;border:1px solid #d6e6e6;border-radius:24px;background:#faf9f5;color:#223947;box-shadow:0 24px 90px #16304040;overflow:hidden}
.hotel-browser::backdrop{background:#172b3866;backdrop-filter:blur(5px)}
.hotel-browser[open]{display:flex;flex-direction:column}
.hb-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 26px;background:#fff;border-bottom:1px solid #dce7e7;flex-shrink:0}
.hb-header h2{font-size:23px;margin:5px 0 0}.hb-eyebrow{color:#707e83;font-size:12px}.hotel-browser button,.hotel-browser input,.hotel-browser select{font:inherit;min-height:42px;max-width:100%;border-radius:12px;border:1px solid #d0e1e2;padding:9px 12px;background:#fff;color:#214256;box-sizing:border-box}.hotel-browser button{cursor:pointer}.hotel-browser button:hover:not(:disabled){background:#e8f3f3;border-color:#7d9ea9}.hotel-browser button:disabled{cursor:default;opacity:.45}.hotel-browser :focus-visible{outline:3px solid #7fa9bf;outline-offset:3px}.hb-close{flex-shrink:0}.hb-body{padding:24px;overflow:auto;overscroll-behavior:contain;min-height:0;scrollbar-gutter:stable}.hb-summary{margin-bottom:20px}.hb-summary strong{font-size:18px}.hb-summary p{margin:6px 0;font-size:13px;line-height:1.9;color:#6b797e}.hb-summary .hb-trip{color:#264a5e}.hb-filters{display:grid;grid-template-columns:2fr 1fr;gap:16px;padding:20px;background:#fff;border:1px solid #dce7e7;border-radius:18px}.hb-field{display:flex;flex-direction:column;gap:7px;min-width:0}.hb-field>span{font-size:12px;color:#647277}.hb-filter-details,.hb-filter-note{grid-column:1/-1}.hb-filter-details summary{cursor:pointer;padding:4px 0;font-size:13px}.hb-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:18px}.hb-stars{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0}.hb-stars legend{font-size:12px;margin-bottom:10px;color:#647277}.hotel-browser .hb-stars button[aria-pressed=true]{background:#22485f;color:#fff;border-color:#22485f}.hb-filter-note{font-size:11px;color:#778586;margin:0;line-height:1.9}.hb-result-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.hb-feedback{font-size:14px;margin:10px 0;line-height:1.9}.hb-qualifier{font-size:12px;line-height:1.9;color:#7b7254;margin:6px 0 18px}.hb-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.hb-card{border:1px solid #d6e6e6;border-radius:18px;overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0}.hb-card .hb-photo{display:block;position:relative;width:100%;height:150px;min-height:150px;border-radius:0;background:#e7f2f2;overflow:hidden}.hb-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hb-photo .choice-photo-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:11px;color:#809699}.hb-photo.has-photo .choice-photo-placeholder{visibility:hidden}.hb-photo svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.25}.hb-card-body{display:flex;flex-direction:column;flex:1;padding:18px}.hb-card h3{font-size:17px;margin:0 0 6px}.hb-meta,.hb-address,.hb-distance,.hb-amenities{font-size:12px;color:#738284;line-height:1.9;margin:3px 0;overflow-wrap:anywhere}.hb-distance{color:#496a7a}.hb-price{white-space:pre-line;font-size:13px;line-height:1.95;color:#1f465b;margin:14px 0}.hb-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:10px}.hb-card-actions button{flex:1;font-size:12px}.hotel-browser button.hb-primary{background:#22485f;color:#fff;border-color:#22485f}.hotel-browser button.hb-primary:hover{background:#16384d}.hb-more{display:block;margin:24px auto 4px}.hb-more[hidden]{display:none}.hb-empty,.hb-message{grid-column:1/-1;background:#ebf4f4;border-radius:14px;padding:24px;line-height:2}.hotel-browser-launch{grid-column:1/-1;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:16px 20px;border:1px solid #a9c2c6;border-radius:14px;background:#e8f3f3;color:#22485f;font:inherit;cursor:pointer;text-align:right}.hotel-browser-launch span{font-size:12px;color:#6c8484}.hotel-browser-launch:hover{background:#dceeed}
@media(min-width:900px){.hb-card{flex-direction:row}.hb-card .hb-photo{width:130px;height:auto;min-height:220px;flex-shrink:0}}
@media(max-width:600px){.hotel-browser{width:100%;height:100dvh;border:0;border-radius:0;margin:0}.hb-header{padding:15px 16px}.hb-header h2{font-size:19px}.hb-body{padding:16px;scrollbar-gutter:auto}.hb-filters{padding:14px;grid-template-columns:1fr;gap:12px}.hb-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hb-list{grid-template-columns:1fr}.hb-card .hb-photo{height:150px}.hb-card-body{padding:16px}.hb-result-head{align-items:flex-start}.hb-result-head button{font-size:11px}.hb-card-actions button{padding:9px 7px}.hotel-browser-launch{padding:14px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.hotel-browser *{scroll-behavior:auto}}
