.hotel-catalog-toolbar{display:flex;align-items:center;gap:12px;min-width:0}
.hotel-type-tabs{flex:1;min-width:0}
#hotel-filter-toggle{display:none;position:relative;align-items:center;justify-content:center;flex:none;width:44px;height:44px;padding:0;border:1px solid #d4e3ec;border-radius:13px;background:#fff;color:#21526d;cursor:pointer;box-shadow:0 3px 12px #21526d08}
#hotel-filter-toggle>.material-symbols-outlined{font-size:23px}
#hotel-filter-toggle:hover{background:#edf5f9;border-color:#9cb9c9}
#hotel-filter-toggle[hidden]{display:none}
.hotel-filter-count{position:absolute;top:-5px;right:-5px;display:grid;place-items:center;width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:#21526d;color:#fff;font-size:9px;font-weight:700}
#hotel-filter-dialog{position:fixed;inset:0;margin:auto;width:min(440px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #d9e6ed;border-radius:22px;background:#1e4f6b;color:#21526d;overflow:auto;overscroll-behavior:contain;box-shadow:0 20px 70px #10334a40}
#hotel-filter-dialog::backdrop{background:#12384c70;backdrop-filter:blur(4px)}
.hotel-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e3edf2}
.hotel-filter-heading h2{margin:0;font-size:17px;font-weight:700;color:#21526d}
#hotel-filter-close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid #dce8ee;border-radius:50%;background:#f7fafc;color:#21526d;cursor:pointer}
#hotel-filter-close .material-symbols-outlined{font-size:21px}
#hotel-filter-dialog #hotel-filter-panel{position:static;margin:0;padding:20px;border-radius:0;box-shadow:none;max-width:none}
#hotel-filter-dialog :is(input[type=text],select){font-size:16px}
#hotel-filter-dialog #hotel-filter-panel h3{font-size:16px}
#hotel-filter-toggle:focus-visible,#hotel-filter-close:focus-visible{outline:2px solid #7da4ba;outline-offset:2px}
@media(max-width:1199px){
 .hotel-catalog-toolbar{gap:10px}
 .hotel-type-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;gap:7px;padding:3px 0}
 .hotel-type-tabs::-webkit-scrollbar{display:none}
 .hotel-type-tabs>a{flex:none;white-space:nowrap}
 #hotel-filter-toggle:not([hidden]){display:flex}
 #hotel-catalog-form{grid-template-columns:minmax(0,1fr)}
 #hotel-catalog-form>div{grid-column:1/-1;min-width:0}
}

.hotel-star-radio{position:absolute;width:1px;height:1px;margin:-1px;padding:0;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
#hotel-filter-panel label:has(.hotel-star-radio):focus-within{outline:2px solid #9ccce1;outline-offset:3px;border-radius:20px}
