body,.vf-page{background:var(--bg)}.vf-sidebar{z-index:5;background:var(--card);border-right:1px solid var(--border);scrollbar-color:rgba(var(--ink), .15) transparent;width:320px;position:relative}.vf-sidebar::-webkit-scrollbar-thumb{background:rgba(var(--ink), .15)}.vf-sidebar__nav{background:var(--card);border-bottom:1px solid var(--border);align-items:flex-start;gap:.75rem;padding:1.375rem 1.5rem 1.125rem}.vf-btn-back{border:1px solid var(--border);background:var(--card);width:36px;height:36px;color:var(--fg);border-radius:50%;margin-top:.125rem}.vf-btn-back:hover,.vf-btn-back:active{border-color:var(--accent);color:var(--accent-text);background:#b8922a14}.vf-sidebar__breadcrumb{flex-direction:column;align-items:flex-start;gap:.2rem}.vf-sidebar__eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-text);font-size:.625rem;font-weight:700}.vf-sidebar__bc-title{flex-direction:column;align-items:flex-start;gap:.5rem;min-width:0;display:flex}.vf-sidebar__bc-root{font-family:var(--font-serif);color:var(--fg);white-space:normal;font-size:1.375rem;font-weight:400;line-height:1.15}.vf-sidebar__bc-sep{display:none!important}.vf-sidebar__bc-current{white-space:normal;flex-wrap:wrap;gap:.375rem;display:flex}.vf-sidebar__bc-current:empty{display:none}.vf-bc-chip{color:var(--accent-text);white-space:nowrap;background:#b8922a1a;border:1px solid #b8922a40;border-radius:999px;align-items:center;padding:.25rem .625rem;font-size:.75rem;font-weight:600;line-height:1.3;display:inline-flex}.vf-bc-chip:last-child{background:var(--primary);border-color:var(--primary);color:var(--primary-fg)}.vf-sidebar__section{border-bottom:1px solid var(--border);padding:1.125rem 1.5rem 1rem}.vf-sidebar__lbl{letter-spacing:.16em;color:var(--muted-fg);margin-bottom:.75rem;font-size:.625rem}.vf-corpus-list{gap:.375rem}.vf-corpus-item{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:.7rem .875rem}.vf-corpus-item:hover:not(.is-sold){background:#b8922a0d;border-color:#b8922a73}.vf-corpus-item.is-active{border-color:var(--accent);background:#b8922a14;box-shadow:0 4px 14px -8px #8a6a3073}.vf-corpus-item.is-sold{opacity:.55}.vf-corpus-item__dot{background:var(--accent);box-shadow:0 0 0 3px #b8922a2e}.vf-corpus-item.is-sold .vf-corpus-item__dot{background:rgba(var(--ink), .25);box-shadow:none}.vf-corpus-item__name{color:var(--fg);font-size:.9375rem}.vf-corpus-item.is-active .vf-corpus-item__name{color:var(--fg)}.vf-corpus-item__count{color:var(--accent-text);background:#b8922a24}.vf-corpus-item.is-active .vf-corpus-item__count{background:var(--accent-strong);color:#fff}.vf-corpus-item.is-sold .vf-corpus-item__count{background:var(--secondary);color:var(--muted-fg)}.vf-corpus-item__chevron{color:rgba(var(--ink), .3)}.vf-corpus-item:hover:not(.is-sold) .vf-corpus-item__chevron,.vf-corpus-item.is-active .vf-corpus-item__chevron{color:var(--accent-text)}.vf-corpus-item:active:not(.is-sold){background:#b8922a1f}.vf-room-pills{gap:.375rem}.visual-filters__list-item{border:1px solid var(--border);background:var(--card);color:var(--fg);padding:.375rem .875rem;font-size:.8125rem}.visual-filters__list-item:hover{border-color:var(--accent);color:var(--fg)}.visual-filters__list-item.active{background:var(--primary);border-color:var(--primary);color:var(--primary-fg)}.visual-filters__list-item:active{border-color:var(--accent);color:var(--fg);background:#b8922a1f}.vf-floor-chips{gap:.375rem}.vf-floor-chip{border:1px solid var(--border);background:var(--card);min-width:38px;height:34px;color:var(--fg);border-radius:8px;font-size:.8125rem}.vf-floor-chip:hover{border-color:var(--accent);color:var(--fg);background:#b8922a0f}.vf-floor-chip.is-active{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}.vf-floor-chip:active{border-color:var(--accent);color:var(--fg);background:#b8922a24}.vf-floor-view-head{border-bottom:1px solid var(--border);padding:1.125rem 1.5rem .875rem}.vf-floor-view-head__title{font-family:var(--font-serif);color:var(--fg);font-size:1.25rem;font-weight:400}.vf-floor-view-head__count{color:var(--accent-text)}.vf-floor-nav{gap:.375rem}.vf-floor-nav__btn{border:1px solid var(--border);background:var(--card);width:34px;height:34px;color:var(--fg);border-radius:8px}.vf-floor-nav__btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text);background:#b8922a0f}.vf-floor-nav__btn:disabled{opacity:.35}.vf-apt-list{gap:.5rem;padding:.875rem 1.5rem}.vf-apt-card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.75rem .9375rem}.vf-apt-card:hover{background:var(--card);border-color:var(--accent);box-shadow:0 6px 18px -10px #8a6a3080}.vf-apt-card:active:not(.is-sold){border-color:var(--accent);background:#b8922a0f}.vf-apt-card.is-sold{opacity:.5}.vf-apt-card__num{color:var(--muted-fg)}.vf-apt-card__badge--avail{color:#1f6f32;background:#228b221a}.vf-apt-card__badge--sold{background:var(--secondary);color:var(--muted-fg)}.vf-apt-card__rooms{color:var(--fg);font-size:.9375rem}.vf-apt-card__area{color:var(--muted-fg)}.vf-apt-card__price{color:var(--fg);font-weight:800}.vf-apt-card__go{color:rgba(var(--ink), .3)}.vf-apt-card:hover .vf-apt-card__go,.vf-apt-card__apt-link{color:var(--accent-text)}.vf-apt-card__apt-link:hover{color:var(--accent-strong)}.vf-apt-card__fav{color:rgba(var(--ink), .3)}.vf-floor-card{background:var(--card);border:1px solid var(--border);box-shadow:0 8px 24px -12px #1a171440}.vf-floor-card__head{border-bottom-color:var(--border)}.vf-floor-card__lbl{color:var(--muted-fg)}.vf-floor-card__num{color:var(--fg)}.vf-floor-card__count{color:var(--accent-text)}.vf-floor-card__close{background:var(--secondary);color:var(--fg)}.vf-floor-card__close:hover{background:var(--border);color:var(--fg)}.vf-panel__room-type{color:var(--muted-fg)}.vf-panel__room-count{color:var(--fg)}.vf-panel__room-price{color:var(--muted-fg)}.vf-floor-card__btn{background:var(--accent-strong)}.vf-floor-card__btn:hover{background:var(--accent-text)}.vf-minimap{border:1px solid var(--border);border-radius:10px;margin:0 1.5rem .5rem;box-shadow:0 6px 18px -10px #1a171459}.vf-minimap__bld:hover:not(.is-sold){fill:#b8922a66;stroke:#b8922acc}.vf-minimap__bld.is-active{stroke:#b8922a;fill:#b8922a8c!important}.vf-minimap__caption{letter-spacing:.14em;color:var(--muted-fg);margin:0 1.5rem .75rem;font-size:.625rem}.vf-sidebar__cta{border:1px solid rgba(var(--ink), .18);color:var(--fg);border-radius:10px;justify-content:space-between;margin:0 1.5rem 1.5rem;padding:.8125rem 1rem;font-size:.875rem}.vf-sidebar__cta:hover{border-color:var(--accent);color:var(--fg);background:#b8922a0f}.vf-canvas-wrap{background:radial-gradient(at 50% 35%,#f7f3ea 0%,#ede9e1 70%)}.vf-canvas-wrap.is-floor-view{background:#f4f1ea}.vf-loading:after{border-color:rgba(var(--ink), .12);border-top-color:var(--accent)}.vf-district-bg{background-color:#ede9e1}.vf-d-bld--avail{fill:#b8922a38;stroke:#b8922abf}.vf-d-bld--avail:hover{fill:#b8922a73;stroke:#b8922a}.vf-floor-path:not(.is-sold):hover{filter:drop-shadow(0 0 2px #ffffff80)drop-shadow(0 0 14px #b8922ad9);fill:#b8922a57!important;stroke:#ffffffe6!important}.vf-floor-path.is-active{fill:#b8922a80!important;stroke:#b8922a!important}.vf-floor-path.is-sweep{filter:drop-shadow(0 0 2px #ffffff80)drop-shadow(0 0 14px #b8922ad9);fill:#b8922a6b!important}.vf-apt-path--avail{fill:#b8922a29!important;stroke:#b8922ab3!important}.vf-apt-path--avail:hover{fill:#b8922a61!important;stroke:#b8922a!important}#vfFloorHint{border:1px solid var(--border);border-top:2px solid var(--accent);background:#fffffff7;box-shadow:0 14px 36px -12px #1a171459}.vft-floor{color:var(--muted-fg)}.vft-floor-num{color:var(--fg)}.vft-count{color:var(--accent-text);border-bottom-color:var(--border)}.vft-persqm,.vft-row-type{color:var(--muted-fg)}.vft-row-val{color:var(--fg)}.vf-canvas-hint{display:none!important}.vf-canvas-corpus-name{border:1px solid rgba(var(--ink), .08);color:var(--fg);background:#ffffffeb;box-shadow:0 8px 24px -10px #1a171459}.vf-canvas-corpus-name:hover,.vf-canvas-corpus-name[aria-expanded=true]{border-color:var(--accent);background:#fff}.vf-canvas-corpus-dropdown{border:1px solid var(--border);background:#fffffffa;box-shadow:0 16px 40px -12px #1a171459}.vf-canvas-corpus-nav .vf-corpus-nav__btn{border:1px solid rgba(var(--ink), .08);color:var(--fg);background:#ffffffe0;box-shadow:0 8px 24px -10px #1a171466}.vf-canvas-corpus-nav .vf-corpus-nav__btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text);background:#fff}.vf-canvas-floor-step{z-index:3;border:1px solid rgba(var(--ink), .08);background:#fffffff2;border-radius:16px;flex-direction:column;align-items:stretch;width:76px;display:none;position:absolute;top:1.75rem;right:1.75rem;overflow:hidden;box-shadow:0 10px 28px -12px #1a171466}.vf-canvas-wrap.is-floor-view .vf-canvas-floor-step{display:flex}.vf-canvas-corpus-switch.is-visible~.vf-canvas-floor-step{top:4.875rem}.vf-canvas-floor-step__btn{height:40px;color:var(--fg);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.vf-canvas-floor-step__btn:hover:not(:disabled){color:var(--accent-text);background:#b8922a1f}.vf-canvas-floor-step__btn:active:not(:disabled){background:#b8922a33}.vf-canvas-floor-step__btn:disabled{color:rgba(var(--ink), .22);cursor:default}.vf-canvas-floor-step__btn:focus-visible{outline:2px solid var(--accent-strong);outline-offset:-2px}.vf-canvas-floor-step__lbl{border-top:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;align-items:center;padding:.35rem 0 .45rem;display:flex}.vf-canvas-floor-step__cap{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-size:.5625rem;font-weight:700}.vf-canvas-floor-step__num{font-family:var(--font-serif);color:var(--fg);font-size:1.75rem;line-height:1.05}@media (width<=767.98px){.vf-canvas-wrap.is-floor-view .vf-canvas-floor-step{display:none}}.vf-sheet{background:var(--card);border-color:var(--border);box-shadow:0 -12px 40px -8px #1a171440}.vf-sheet__handle{background:rgba(var(--ink), .18)}.vf-sheet__head{border-bottom-color:var(--border)}.vf-sheet__title{font-family:var(--font-serif);color:var(--fg);font-size:1.125rem;font-weight:400}.vf-sheet__count{color:var(--accent-text)}.vf-sheet__btn{background:var(--secondary);color:var(--fg)}.vf-sheet__btn:not(:disabled):hover,.vf-sheet__btn:not(:disabled):active{background:var(--border);color:var(--fg)}.vf-sheet-backdrop{background:#1a171459}@media (width>=768px){.vf-sheet,.vf-sheet-backdrop{display:none}}@media (width<=767.98px){.vf-sidebar{border-right:none;width:100%}.vf-sidebar__row1{border-bottom:1px solid var(--border);background:var(--card);height:auto;min-height:60px;padding:.5rem .75rem}.vf-sidebar__nav{background:0 0;border-bottom:none;align-items:center;padding:0}.vf-btn-back{width:44px;height:44px;margin-top:0}.vf-sidebar__eyebrow{font-size:.5625rem}.vf-sidebar__bc-root{white-space:nowrap;font-size:1.125rem}.vf-sidebar__bc-title{flex-flow:row;align-items:center}.vf-bc-chip{padding:.2rem .5rem;font-size:.6875rem}#vfRoomSection{background:var(--card);border-bottom:1px solid var(--border);padding:.5rem .75rem}.vf-mobile-district-list{background:var(--bg);gap:.5rem}.vf-district-card{background:var(--card);border:1px solid var(--border);min-height:52px}.vf-district-card:active{background:#b8922a1a}.vf-district-card__name{color:var(--fg)}.vf-district-card--avail .vf-district-card__name{color:var(--accent-text)}.vf-district-card__avail,.vf-district-card__sold-lbl{color:var(--muted-fg)}.vf-district-card__chevron{color:rgba(var(--ink), .35)}.vf-mobile-full-list-link{border-color:rgba(var(--ink), .18)}.vf-mobile-full-list-link .vf-district-card__name{color:var(--fg)}}
