/* Application shell and layout, shared by every protected route. */
.vf-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.vf-sidebar{display:none}
.vf-app{--sidebar-width:224px}
.vf-app nav.bar .links,.vf-app nav.bar .ow-burger{display:none!important}
.vf-app nav.bar .navauth{margin-left:auto;gap:14px}
.vf-app .vf-search{display:flex;align-items:center;gap:12px;flex:1;max-width:600px;margin:0 30px;background:var(--surface-2);border:1px solid var(--hairline);border-radius:999px;padding:0 14px}
.vf-search svg,.vf-sidebar svg,.vf-quick svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
html.bz-night body.app.vf-app .vf-search input[type=search]{width:100%;min-width:0;background:transparent!important;border:0!important;box-shadow:none!important;padding:10px 0!important;font:400 13px var(--ui);color:var(--text);height:42px}
.vf-search button{background:none;border:0;color:var(--text-dim);font-size:18px;min-height:44px;min-width:30px;cursor:pointer}
.vf-search:focus-within{outline:2px solid var(--cyan);outline-offset:2px}
html .vf-app nav.bar{height:82px!important;min-height:82px;background:var(--bg)!important;position:sticky;top:0;padding:8px 28px!important;border-bottom:1px solid var(--hairline)}
html .vf-app nav.bar img.navlogo{width:158px!important;max-height:66px!important;mix-blend-mode:screen}
.vf-wordmark img{width:190px;height:auto;display:block;mix-blend-mode:screen}
.vf-sidebar nav{display:flex;flex-direction:column;gap:5px}
.vf-sidebar nav a{display:flex;align-items:center;gap:16px;min-height:48px;padding:12px 16px;border-radius:10px;font:500 13px/1.5 var(--ui);color:var(--text-dim);border:1px solid transparent}
.vf-sidebar nav a:hover{background:var(--surface-2);color:var(--text)}
.vf-sidebar nav a[aria-current=page]{color:var(--accent);background:linear-gradient(100deg,var(--accent-wash),transparent);border-color:var(--accent-dim);box-shadow:inset 3px 0 var(--accent)}
.vf-sidebar .vf-secondary{border-top:1px solid var(--hairline);padding-top:18px;margin-top:18px}
.vf-sidebar .vf-help{display:block;font-size:12px;color:var(--muted);padding:20px 16px}
html .vf-app .hf-account-panel{background:var(--surface-2);border-color:var(--hairline-2)}
.vf-app :is(.card,.community-card,.mcard,.rcard){box-shadow:0 8px 24px #0002!important}
.vf-app :is(.btn,button){touch-action:manipulation}
.vf-app .btn{min-height:44px}
.vf-app .wrap{max-width:1360px}
.vf-app .community-card h2,.vf-app .mcard h2,.vf-app .rtitle{font-family:var(--ui)!important;font-weight:650!important}
.vf-app .community-card{background:var(--surface-2);border-color:var(--hairline-2)}
.vf-app .hotel-banner{border-radius:14px 14px 0 0}
@media(min-width:1100px){
 .vf-app{padding-left:var(--sidebar-width)}
 .vf-sidebar{display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);padding:14px 14px 24px;overflow:auto;background:var(--bg);border-right:1px solid var(--hairline);z-index:101}
 .vf-wordmark{display:block;margin:0 0 32px}
 .vf-app nav.bar>a:has(.navlogo){display:none}
 .vf-app .vf-search{margin-left:0}
 .vf-app .hf-bottom-nav{display:none}
 .vf-app .wrap{width:100%;padding-left:28px!important;padding-right:28px!important}
}
@media(max-width:1099px){
 .vf-app{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
 .vf-app .hf-bottom-nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));position:fixed;z-index:900;bottom:0;left:0;right:0;padding:8px 6px calc(8px + env(safe-area-inset-bottom));gap:2px;background:rgba(12,17,28,.97);border-top:1px solid var(--hairline-2);backdrop-filter:blur(18px)}
 .vf-app .hf-bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-height:54px;border-radius:12px;color:var(--text-dim);font:600 10px/1.2 var(--ui)}
 .vf-app .hf-bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6}
 .vf-app .hf-bottom-nav [aria-current=page]{background:var(--accent-wash);color:var(--accent)}
}
@media(max-width:760px){
 html .vf-app nav.bar{height:70px!important;min-height:70px;padding:6px 14px!important;gap:10px}
 html .vf-app nav.bar img.navlogo{width:120px!important;max-height:54px!important}
 .vf-app .vf-search{display:none}
 .vf-app nav.bar .navauth{gap:8px}
 .vf-app .wrap{padding-left:16px!important;padding-right:16px!important}
 .vf-app .hf-account-panel{position:fixed;top:64px;right:12px;width:min(320px,calc(100vw - 24px));max-height:calc(100dvh - 155px)}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.vf-areas{padding:18px 8px}.vf-area-label{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}.vf-areas>div{display:flex;flex-direction:column;gap:8px}.vf-areas button{background:var(--surface);border:1px solid var(--hairline-2);border-radius:10px;color:var(--text-dim);min-height:44px;padding:10px 14px;text-align:left;font:500 12px var(--ui);cursor:pointer}.vf-areas button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-wash)}.vf-areas small{display:block;font-size:10px;line-height:1.5;margin-top:12px;color:var(--muted)}.vf-areas [role=status]{font-size:11px;color:var(--accent)}.vf-areas [role=status]:empty{display:none}#vfMobileAreaMount{display:none}
@media(max-width:1099px){#vfMobileAreaMount{display:block;padding:12px 0 18px}#vfMobileAreaMount>div{flex-direction:row}#vfMobileAreaMount button{flex:1;text-align:center}#vfMobileAreaMount small{display:none}}

html.bz-night{color-scheme:dark;scrollbar-color:#39465a #080e19}.vf-sidebar,.vf-people{scrollbar-width:thin}
