.sb-avail-dates{flex:2 1 320px;min-width:0}.sb-range{position:relative;width:100%}.sb-range-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.sb-range-field{display:flex;align-items:center;gap:10px;min-width:0;padding:10px 14px;border:1.5px solid var(--vs-line);border-radius:16px;background:var(--vs-card);color:var(--vs-ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.sb-range-field>svg{flex:none;color:var(--vs-accent-ink)}.sb-range-field span{display:flex;flex-direction:column;min-width:0}.sb-range-field small{color:var(--vs-faint);font-size:.75rem;font-weight:800}.sb-range-field strong{overflow:hidden;font-size:1rem;font-weight:800;white-space:nowrap;text-overflow:ellipsis}.sb-range-field strong.is-empty{color:var(--vs-faint);font-weight:700}.sb-range-field:hover{border-color:color-mix(in srgb,var(--sf-brand) 45%,var(--vs-line))}.sb-range-field.is-active{border-color:var(--sf-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--sf-brand) 18%,transparent)}.sb-cal{position:absolute;z-index:30;top:calc(100% + 8px);left:0;width:min(640px,calc(100vw - 32px));padding:16px;border:1px solid var(--vs-line);border-radius:22px;background:var(--vs-card);color:var(--vs-ink);box-shadow:0 18px 50px rgba(var(--vs-shadow-rgb,20,24,26),.22);animation:sb-pop .18s ease both}.sf-sheet .sb-cal{position:static;width:auto;margin-top:8px;box-shadow:none}.sb-cal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.sb-cal-hint{margin:0;color:var(--vs-mid);font-size:.875rem;font-weight:800}.sb-cal-nav{display:flex;gap:6px}.sb-cal-nav button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--vs-line);border-radius:50%;background:var(--vs-card);color:var(--vs-ink);cursor:pointer}.sb-cal-nav button:hover:not(:disabled){border-color:var(--sf-brand);color:var(--vs-accent-ink)}.sb-cal-nav button:disabled{opacity:.3;cursor:default}.sb-cal-months{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:22px;gap:22px}@media (min-width:640px){.sb-cal-months.is-two{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:639px){.sb-cal-months.is-two .sb-cal-month:nth-child(2){display:none}}.sb-cal-label{margin:0 0 8px;font-weight:900}.sb-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-row-gap:3px;row-gap:3px}.sb-cal-wd{padding:4px 0 6px;color:var(--vs-faint);font-size:.75rem;font-weight:800;text-align:center}.sb-cal-day{display:flex;height:42px;padding:0;border:0;background:transparent;color:var(--vs-ink);font:inherit;font-size:.9375rem;font-weight:800;cursor:pointer}.sb-cal-day,.sb-cal-day span{position:relative;align-items:center;justify-content:center}.sb-cal-day span{z-index:1;display:inline-flex;width:40px;height:40px;border-radius:50%;transition:background .12s ease}.sb-cal-day:hover:not(:disabled) span{background:color-mix(in srgb,var(--sf-brand) 16%,transparent)}.sb-cal-day.is-empty{cursor:default}.sb-cal-day:disabled{color:var(--vs-faint);opacity:.4;cursor:default}.sb-cal-day.is-short:disabled{opacity:.55;text-decoration:line-through}.sb-cal-day.is-today span{box-shadow:inset 0 0 0 1.5px var(--vs-line)}.sb-cal-day.is-inside{background:color-mix(in srgb,var(--sf-brand) 14%,transparent)}.sb-cal-day.is-in.has-range{background:linear-gradient(90deg,transparent 50%,color-mix(in srgb,var(--sf-brand) 14%,transparent) 50%)}.sb-cal-day.is-out{background:linear-gradient(90deg,color-mix(in srgb,var(--sf-brand) 14%,transparent) 50%,transparent 50%)}.sb-cal-day.is-in span,.sb-cal-day.is-out span{background:var(--sf-brand);color:var(--sf-on-brand)}.sb-cal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--vs-line-soft);color:var(--vs-mid);font-size:.875rem;font-weight:800}.sb-cal-clear{padding:6px 10px;border:0;background:transparent;color:var(--vs-mid);font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}@keyframes sb-pop{0%{transform:translateY(-4px)}}.sb-avail-tap{cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .2s ease}.sb-avail-tap:hover{border-color:color-mix(in srgb,var(--sf-brand) 45%,var(--vs-line));box-shadow:0 10px 28px rgba(var(--vs-shadow-rgb,20,24,26),.12)}.sb-avail-tap:focus-visible{outline:2px solid var(--sf-brand);outline-offset:2px}button.sf-avail-plan{font:inherit;cursor:pointer}.sb-gallery{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:24px 24px 0 0;background:var(--vs-tint)}.sb-gallery-track{position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.sb-gallery-track::-webkit-scrollbar{display:none}.sb-gallery-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sb-gallery-empty{display:flex;height:100%;color:var(--vs-faint)}.sb-gallery-empty,.sb-gallery-nav{align-items:center;justify-content:center}.sb-gallery-nav{position:absolute;top:50%;display:inline-flex;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:#14181a;box-shadow:0 2px 10px rgba(0,0,0,.2);transform:translateY(-50%);cursor:pointer}.sb-gallery-nav.is-prev{left:12px}.sb-gallery-nav.is-next{right:12px}.sb-gallery-nav:disabled{opacity:0;pointer-events:none}@media (hover:none){.sb-gallery-nav{display:none}}.sb-gallery-count{position:absolute;left:12px;bottom:12px;padding:4px 10px;border-radius:999px;background:rgba(10,14,12,.62);color:#fff;font-size:.8rem;font-weight:800;pointer-events:none}.sb-room-highlight{margin:2px 0 8px}.sb-amenities,.sb-room-highlight{color:var(--vs-mid);font-weight:700}.sb-amenities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:6px 14px;gap:6px 14px;margin:14px 0 6px;padding:0;list-style:none;font-size:.9rem}.sb-amenities li{display:flex;align-items:center;gap:7px}.sb-amenities svg{flex:none;color:var(--vs-accent-ink)}.sb-stay-line{display:flex;align-items:center;gap:8px;margin:16px 0 4px;padding:10px 12px;border-radius:14px;background:var(--vs-tint);font-size:.9rem;font-weight:800}.sb-stay-line svg{flex:none;color:var(--vs-accent-ink)}.sb-choice{margin-top:16px}.sb-choice h3{margin:0 0 8px;color:var(--vs-faint);font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.sb-choice-list{display:grid;grid-gap:8px;gap:8px}.sb-choice-opt{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1.5px solid var(--vs-line);border-radius:16px;background:var(--vs-card);color:var(--vs-ink);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease}.sb-choice-opt>strong,.sb-choice-text{flex:1 1 auto;min-width:0}.sb-choice-text{display:flex;flex-direction:column}.sb-choice-text small{color:var(--vs-faint);font-size:.8rem;font-weight:700}.sb-choice-opt:hover:not(:disabled){border-color:color-mix(in srgb,var(--sf-brand) 45%,var(--vs-line))}.sb-choice-opt.is-on{border-color:var(--sf-brand);background:color-mix(in srgb,var(--sf-brand) 8%,var(--vs-card))}.sb-choice-opt:disabled{opacity:.5;cursor:not-allowed}.sb-radio{flex:none;width:18px;height:18px;border:2px solid var(--vs-line);border-radius:50%;transition:border .15s ease}.sb-choice-opt.is-on .sb-radio{border:5.5px solid var(--sf-brand)}.sb-choice-price{flex:none;color:var(--vs-ink);font-weight:900}.sb-choice-price.is-save{color:color-mix(in srgb,#1f9d63 70%,var(--vs-ink))}.sb-total{margin-top:16px}.sb-total-row{display:flex;justify-content:space-between;gap:12px;margin:0 0 6px;color:var(--vs-mid);font-weight:700}.sb-total-row.is-total{margin:8px 0 0;padding-top:8px;border-top:1px dashed var(--vs-line);color:var(--vs-ink);font-size:1.15rem;font-weight:900}.sb-total-row.is-sub{margin-top:6px;font-size:.875rem}.sb-paymode{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:12px}.sb-paymode button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1.5px solid var(--vs-line);border-radius:14px;background:var(--vs-card);color:var(--vs-ink);font:inherit;cursor:pointer}.sb-paymode button.is-on{border-color:var(--sf-brand);background:color-mix(in srgb,var(--sf-brand) 8%,var(--vs-card))}.sb-paymode small{color:var(--vs-faint);font-size:.78rem;font-weight:700}@media (prefers-reduced-motion:reduce){.sb-cal{animation:none}}