.bw{border:1px solid #e5e5e5;border-radius:14px;padding:24px;box-shadow:0 4px 24px rgba(0,0,0,.1);position:sticky;top:104px}html.dark .bw{border-color:#3a3a4a;box-shadow:0 4px 24px rgba(0,0,0,.4)}.bw__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.bw__price-row{display:flex;align-items:baseline;gap:4px}.bw__price{font-size:24px;font-weight:700;color:var(---text-color)}.bw__night{font-size:15px;color:var(---text-version)}.bw__rating{display:flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:var(---text-color)}.bw__rating i{font-size:11px;color:#ff385c}.bw__review-count{font-weight:400;color:var(---text-version)}.bw__inputs{border:1.5px solid #b0b0b0;border-radius:10px;overflow:visible;margin-bottom:16px}html.dark .bw__inputs{border-color:#555}.bw__field{position:relative;padding:11px 14px;cursor:pointer;transition:background .14s ease;border-bottom:1.5px solid #b0b0b0}html.dark .bw__field{border-bottom-color:#555}.bw__field:last-child{border-bottom:none}.bw__field--in,.bw__field--out{display:grid;grid-column:span 1}.bw__field--in{border-radius:10px 10px 0 0;border-right:1.5px solid #b0b0b0}html.dark .bw__field--in{border-right-color:#555}.bw__field--in+.bw__field--out{border-left:none}.bw__field--active{background:#f7f7f7;border-radius:10px;outline:2px solid #222;outline-offset:-2px;z-index:1}html.dark .bw__field--active{background:#252535;outline-color:#fff}.bw__field:hover:not(.bw__field--active){background:#f9f9f9}html.dark .bw__field:hover:not(.bw__field--active){background:#202030}.bw__field label{display:block;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(---text-color);margin-bottom:3px;pointer-events:none}.bw__field span{font-size:13px;color:var(---text-color)}.bw__placeholder{color:var(---text-version)!important}.bw__inputs{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto}.bw__inputs .bw__field--in{grid-column:1;grid-row:1;border-bottom:1.5px solid #b0b0b0;border-right:1.5px solid #b0b0b0;border-radius:10px 0 0 0}html.dark .bw__inputs .bw__field--in{border-bottom-color:#555;border-right-color:#555}.bw__inputs .bw__field--out{grid-column:2;grid-row:1;border-bottom:1.5px solid #b0b0b0;border-radius:0 10px 0 0}html.dark .bw__inputs .bw__field--out{border-bottom-color:#555}.bw__inputs .bw__field--guests{grid-column:1/-1;grid-row:2;border-bottom:none;border-radius:0 0 10px 10px}.bw__popover{position:absolute;top:calc(100% + 8px);left:0;z-index:100;background:var(---background-color);border:1px solid #ddd;border-radius:14px;box-shadow:0 8px 28px rgba(0,0,0,.14);animation:bwSlideIn .16s cubic-bezier(.16,1,.3,1) both}html.dark .bw__popover{border-color:#3a3a4a;box-shadow:0 8px 28px rgba(0,0,0,.5)}.bw__summary{display:flex;justify-content:space-between;font-size:14px;color:var(---text-color);padding:10px 0 16px;border-bottom:1px solid #eee;margin-bottom:16px}html.dark .bw__summary{border-bottom-color:#3a3a4a}.bw__reserve{width:100%;background:linear-gradient(90deg,#ff385c,#e31c5f);color:#fff;border:none;border-radius:10px;padding:14px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .15s ease,transform .15s ease;margin-bottom:12px}.bw__reserve:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.bw__reserve:active:not(:disabled){transform:translateY(0)}.bw__reserve:disabled{opacity:.6;cursor:not-allowed}.bw__note{color:var(---text-version);margin:0}.bw__error,.bw__note{text-align:center;font-size:13px}.bw__error{color:#e31c5f;margin-bottom:10px}.bw__success{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px;background:#edfaf3;border-radius:10px;font-size:15px;font-weight:600;color:#1a7f4e}.bw__success i{font-size:18px}html.dark .bw__success{background:#1a3a2a;color:#5dde9a}.bw-cal{padding:14px 16px;min-width:280px;user-select:none}.bw-cal__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.bw-cal__label{font-size:13px;font-weight:700;color:var(---text-color)}.bw-cal__arrow{background:none;border:1px solid #ddd;border-radius:50%;width:28px;height:28px;cursor:pointer;font-size:14px;color:var(---text-color);display:flex;align-items:center;justify-content:center;padding:0;transition:background .13s ease}html.dark .bw-cal__arrow{border-color:#555}.bw-cal__arrow:hover{background:rgba(0,0,0,.06)}html.dark .bw-cal__arrow:hover{background:hsla(0,0%,100%,.08)}.bw-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.bw-cal__head{text-align:center;font-size:10px;font-weight:600;color:#888;padding:2px 0 6px}.bw-cal__day{width:30px;height:30px;display:flex;align-items:center;justify-content:center;margin:0 auto;border-radius:50%;font-size:12px;cursor:pointer;color:var(---text-color);transition:background .12s ease,transform .12s ease}.bw-cal__day:hover:not(.disabled){background:rgba(0,0,0,.08);transform:scale(1.1)}html.dark .bw-cal__day:hover:not(.disabled){background:hsla(0,0%,100%,.1)}.bw-cal__day:active:not(.disabled){transform:scale(.9)}.bw-cal__day.selected{background:#222;color:#fff}html.dark .bw-cal__day.selected{background:#fff;color:#222}.bw-cal__day.disabled{color:#ccc;cursor:not-allowed}html.dark .bw-cal__day.disabled{color:#444}.bw-guests{padding:16px;min-width:260px}.bw-guests__row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.bw-guests__label{font-size:15px;font-weight:600;color:var(---text-color);margin-bottom:2px}.bw-guests__desc{font-size:12px;color:#888}.bw-guests__ctrl{display:flex;align-items:center;gap:12px}.bw-guests__count{font-size:16px;min-width:20px;text-align:center;color:var(---text-color)}.bw-guests__btn{width:32px;height:32px;border:1px solid #aaa;border-radius:50%;background:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;color:var(---text-color);padding:0;transition:border-color .14s ease,transform .14s cubic-bezier(.34,1.56,.64,1)}html.dark .bw-guests__btn{border-color:#555}.bw-guests__btn:disabled{color:#ccc;border-color:#eee;cursor:not-allowed}html.dark .bw-guests__btn:disabled{color:#444;border-color:#333}.bw-guests__btn:hover:not(:disabled){border-color:#222;transform:scale(1.1)}html.dark .bw-guests__btn:hover:not(:disabled){border-color:#fff}.bw-guests__done{width:100%;padding:9px;background:#222;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}html.dark .bw-guests__done{background:#fff;color:#222}.bw-guests__done:hover{opacity:.85}@keyframes bwSlideIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.room-detail{padding:24px 0 80px}.room-detail__back{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(---text-color);text-decoration:none;font-weight:500;margin-bottom:20px;opacity:.65;transition:opacity .15s ease}.room-detail__back:hover{opacity:1}.room-detail__title{font-size:26px;font-weight:600;margin:0 0 10px;color:var(---text-color);line-height:1.3}.room-detail__meta{display:flex;align-items:center;gap:6px;font-size:14px;margin-bottom:24px;flex-wrap:wrap}.room-detail__rating{display:flex;align-items:center;gap:5px;font-weight:600;color:var(---text-color)}.room-detail__rating i{color:#ff385c;font-size:12px}.room-detail__location{display:flex;align-items:center;gap:4px;color:var(---text-version)}.room-detail__location:before{content:"·";margin-right:6px}.room-detail__location i{font-size:12px;color:#ff385c}.room-detail__type{color:var(---text-version)}.room-detail__type:before{content:"·";margin-right:6px}.room-detail__gallery{position:relative;width:100%;height:480px;border-radius:16px;overflow:hidden;background:#ebebeb;margin-bottom:36px}html.dark .room-detail__gallery{background:#2a2a3a}.room-detail__gallery-main{position:relative;width:100%;height:100%}.room-detail__gallery-fallback{display:flex;align-items:center;justify-content:center;height:100%}.room-detail__gallery-fallback i{font-size:80px;color:#aaa}.room-detail__body{display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start}.room-detail__section{padding:28px 0;border-bottom:1px solid #e5e5e5}html.dark .room-detail__section{border-bottom-color:#3a3a4a}.room-detail__section:first-child{padding-top:0}.room-detail__section:last-child{border-bottom:none}.room-detail__section-title{font-size:20px;font-weight:600;margin:0 0 18px;color:var(---text-color)}.room-detail__host{display:flex;align-items:center;gap:14px;margin-bottom:18px}.room-detail__avatar{width:56px;height:56px;border-radius:50%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}html.dark .room-detail__avatar{background:#444}.room-detail__avatar i{font-size:28px;color:#999}.room-detail__host-label{margin:0;font-size:13px;color:var(---text-version)}.room-detail__host-name{margin:3px 0 0;font-size:17px;font-weight:600;color:var(---text-color)}.room-detail__host-meta{margin:2px 0 0;font-size:12px;color:var(---text-version)}.room-detail__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}@media(min-width:480px){.room-detail__stats{grid-template-columns:repeat(4,1fr)}}.room-detail__stat{display:flex;align-items:center;gap:8px;font-size:13px;color:var(---text-color);background:#f7f7f7;border-radius:10px;padding:10px 12px}html.dark .room-detail__stat{background:#1e1e2e}.room-detail__stat i{font-size:16px;flex-shrink:0}.room-detail__dot,.room-detail__stat i{color:var(---text-version)}.room-detail__description{font-size:15px;line-height:1.75;color:var(---text-color);margin:0;white-space:pre-line}.room-detail__amenities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.room-detail__amenity{display:flex;align-items:center;gap:14px;font-size:15px;color:var(---text-color)}.room-detail__amenity i{font-size:20px;flex-shrink:0}.room-detail__show-more{display:inline-block;margin-top:22px;padding:11px 22px;background:transparent;border:1px solid var(---text-color);border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;color:var(---text-color);transition:background .15s ease}.room-detail__show-more:hover{background:rgba(0,0,0,.05)}html.dark .room-detail__show-more:hover{background:hsla(0,0%,100%,.08)}.room-detail__superhost{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#ff385c;border:1px solid #ff385c;border-radius:20px;padding:2px 8px}.room-detail__superhost i{font-size:13px}.room-detail__host-about{margin:12px 0 0;font-size:14px;line-height:1.7;color:var(---text-version);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.room-detail__info-row{display:flex;gap:14px;margin-bottom:14px}.room-detail__info-row:last-child{margin-bottom:0}.room-detail__info-row i{font-size:20px;flex-shrink:0;margin-top:2px;color:var(---text-version)}.room-detail__info-row p{margin:0}.room-detail__stay-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.room-detail__stay-item{display:flex;align-items:flex-start;gap:12px}.room-detail__stay-item i{font-size:20px;margin-top:2px;flex-shrink:0;color:var(---text-version)}.room-detail__stay-item div{display:flex;flex-direction:column;gap:2px}.room-detail__stay-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(---text-version)}.room-detail__stay-value{font-size:14px;font-weight:500;color:var(---text-color);text-transform:capitalize}.room-detail__scores{display:flex;flex-direction:column;gap:10px}.room-detail__score-row{display:grid;grid-template-columns:130px 1fr 32px;align-items:center;gap:12px}.room-detail__score-label{font-size:14px;color:var(---text-color)}.room-detail__score-bar{height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}html.dark .room-detail__score-bar{background:#444}.room-detail__score-fill{height:100%;background:#222;border-radius:2px}html.dark .room-detail__score-fill{background:#fff}.room-detail__score-val{font-size:13px;font-weight:600;color:var(---text-color);text-align:right}.room-detail__reviews{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media(max-width:640px){.room-detail__reviews{grid-template-columns:1fr}}.room-detail__review{display:flex;flex-direction:column;gap:10px}.room-detail__review-header{display:flex;align-items:center;gap:12px}.room-detail__review-avatar{width:38px;height:38px;border-radius:50%;background:#222;color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;flex-shrink:0}html.dark .room-detail__review-avatar{background:#fff;color:#222}.room-detail__review-name{margin:0;font-size:14px;font-weight:600;color:var(---text-color)}.room-detail__review-date{margin:2px 0 0;font-size:12px;color:var(---text-version)}.room-detail__review-text{margin:0;font-size:14px;line-height:1.65;color:var(---text-color);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:1024px){.room-detail__body{grid-template-columns:1fr}}@media(max-width:768px){.room-detail__gallery{height:300px;border-radius:0;margin-left:-20px;margin-right:-20px}.room-detail__title{font-size:22px}.room-detail__amenities-grid{grid-template-columns:1fr}.room-detail__body{gap:0}}