.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 #d4dce8;border-radius:24px;background:#faf9f5;color:#1e2b4b;box-shadow:0 24px 90px #12204440;overflow:hidden}
.hotel-browser::backdrop{background:#141f3b66;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 #dbe0e8;flex-shrink:0}
.hb-header h2{font-size:23px;margin:5px 0 0}.hb-eyebrow{color:#6e7585;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 #ced6e4;padding:9px 12px;background:#fff;color:#1c2e5b;box-sizing:border-box}.hotel-browser button{cursor:pointer}.hotel-browser button:hover:not(:disabled){background:#e7ecf4;border-color:#798aad}.hotel-browser button:disabled{cursor:default;opacity:.45}.hotel-browser :focus-visible{outline:3px solid #798fc5;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:#697080}.hb-summary .hb-trip{color:#203464}.hb-filters{display:grid;grid-template-columns:2fr 1fr;gap:16px;padding:20px;background:#fff;border:1px solid #dbe0e8;border-radius:18px}.hb-field{display:flex;flex-direction:column;gap:7px;min-width:0}.hb-field>span{font-size:12px;color:#626979}.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:#626979}.hotel-browser .hb-stars button[aria-pressed=true]{background:#1c3165;color:#fff;border-color:#1c3165}.hb-filter-note{font-size:11px;color:#767c88;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 #d4dce8;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:#e6ebf3;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:#7e889c}.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:#717986;line-height:1.9;margin:3px 0;overflow-wrap:anywhere}.hb-distance{color:#44567f}.hb-price{white-space:pre-line;font-size:13px;line-height:1.95;color:#192e61;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:#1c3165;color:#fff;border-color:#1c3165}.hotel-browser button.hb-primary:hover{background:#112452}.hb-more{display:block;margin:24px auto 4px}.hb-more[hidden]{display:none}.hb-empty,.hb-message{grid-column:1/-1;background:#eaeef5;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 #a6b2c9;border-radius:14px;background:#e7ecf4;color:#1c3165;font:inherit;cursor:pointer;text-align:right}.hotel-browser-launch span{font-size:12px;color:#6a7586}.hotel-browser-launch:hover{background:#dae3f0}
@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}}
