/* FP1.0-S05.7-SC5.3.3 FC4 Runtime Polish */
.vtb-fp-btn{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:2147482000;width:46px;height:46px;border:1px solid rgba(255,255,255,.28);border-radius:13px;background:rgba(20,24,32,.9);color:#fff;display:grid;place-items:center;font:600 20px/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.28);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .16s ease,background .16s ease,opacity .16s ease,box-shadow .16s ease}.vtb-fp-btn:hover{transform:translateY(-1px);background:rgba(32,38,50,.96);box-shadow:0 10px 28px rgba(0,0,0,.34)}.vtb-fp-btn:active{transform:translateY(0) scale(.97)}.vtb-fp-btn[aria-expanded="true"]{background:rgba(61,139,253,.96)}.vtb-fp-btn:focus-visible,.vtb-fp-close:focus-visible,.vtb-fp-floor:focus-visible,.vtb-fp-zoom button:focus-visible{outline:2px solid #79aaff;outline-offset:2px}
.vtb-fp-panel{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:calc(max(18px,env(safe-area-inset-bottom)) + 56px);z-index:2147481999;width:min(440px,calc(100vw - 24px));height:min(360px,calc(100vh - 96px));display:grid;grid-template-rows:auto 1fr;background:rgba(17,21,28,.96);border:1px solid rgba(255,255,255,.18);border-radius:14px;box-shadow:0 18px 52px rgba(0,0,0,.38);overflow:hidden;color:#fff;font:13px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px) scale(.985);transform-origin:bottom right;transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}.vtb-fp-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}.vtb-fp-head{display:flex;align-items:center;gap:8px;padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.12);min-height:40px;background:rgba(255,255,255,.018)}.vtb-fp-title{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vtb-fp-floor{margin-left:auto;max-width:46%;height:32px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#202631;color:#fff;padding:0 26px 0 8px}.vtb-fp-close{width:32px;height:32px;border:0;border-radius:8px;background:transparent;color:#fff;font-size:20px;line-height:1;cursor:pointer;transition:background .14s ease,transform .14s ease}.vtb-fp-close:hover{background:rgba(255,255,255,.1)}.vtb-fp-close:active{transform:scale(.94)}
.vtb-fp-view{position:relative;overflow:hidden;background:#0c1016;touch-action:none;cursor:grab;user-select:none;overscroll-behavior:contain}.vtb-fp-view.is-panning{cursor:grabbing}.vtb-fp-empty{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.62);padding:24px;text-align:center}.vtb-fp-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.vtb-fp-rot{position:absolute;left:0;top:0;transform-origin:50% 50%;will-change:transform}.vtb-fp-img{display:block;max-width:none;pointer-events:none;user-select:none;-webkit-user-drag:none}.vtb-fp-marker{position:absolute;width:34px;height:34px;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:auto;cursor:pointer;z-index:2;transition:filter .14s ease}.vtb-fp-marker:hover{filter:brightness(1.08)}.vtb-fp-visual{display:grid;place-items:center;transform-origin:center;position:relative;z-index:2}.vtb-fp-marker-dot{width:18px;height:18px;border-radius:50%;background:#3d8bfd;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.4);box-sizing:border-box}.vtb-fp-marker-icon{display:block;width:24px;height:24px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.42));pointer-events:none}.vtb-fp-marker.is-active::after{content:"";position:absolute;inset:2px;border:2px solid #39d98a;border-radius:50%;box-shadow:0 0 0 2px rgba(15,20,28,.72),0 0 0 4px rgba(57,217,138,.24);pointer-events:none}.vtb-fp-radar{position:absolute;left:50%;top:50%;width:92px;height:92px;transform-origin:0 0;pointer-events:none;z-index:0}.vtb-fp-radar-cone{position:absolute;left:0;top:-46px;width:92px;height:92px;transform-origin:0 46px;clip-path:polygon(0 50%,100% 14%,100% 86%);background:linear-gradient(90deg,rgba(61,139,253,.36),rgba(61,139,253,.08));border-radius:0 50% 50% 0}.vtb-fp-tip{position:absolute;z-index:20;pointer-events:none;transform:translate(-50%,-100%) translateY(-10px);padding:5px 8px;border-radius:7px;background:rgba(10,13,18,.94);border:1px solid rgba(255,255,255,.14);box-shadow:0 6px 18px rgba(0,0,0,.3);font-size:12px;white-space:nowrap;max-width:min(260px,80%);overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .12s ease}.vtb-fp-tip.is-visible{opacity:1}.vtb-fp-zoom{position:absolute;left:9px;bottom:9px;display:flex;gap:5px;z-index:30}.vtb-fp-zoom button{width:32px;height:32px;border:1px solid rgba(255,255,255,.16);border-radius:8px;background:rgba(18,23,31,.9);color:#fff;cursor:pointer;transition:background .14s ease,transform .14s ease}.vtb-fp-zoom button:hover{background:rgba(40,48,62,.96)}.vtb-fp-zoom button:active{transform:scale(.94)}
#vtb-floorplan-runtime[data-button-position=bottom-left] .vtb-fp-btn{left:max(18px,env(safe-area-inset-left));right:auto}#vtb-floorplan-runtime[data-button-position=top-right] .vtb-fp-btn{top:max(18px,env(safe-area-inset-top));bottom:auto}#vtb-floorplan-runtime[data-button-position=top-left] .vtb-fp-btn{left:max(18px,env(safe-area-inset-left));right:auto;top:max(18px,env(safe-area-inset-top));bottom:auto}
#vtb-floorplan-runtime[data-panel-position=bottom-left] .vtb-fp-panel{left:max(18px,env(safe-area-inset-left));right:auto;transform-origin:bottom left}#vtb-floorplan-runtime[data-panel-position=top-right] .vtb-fp-panel{top:max(18px,env(safe-area-inset-top));bottom:auto;transform-origin:top right}#vtb-floorplan-runtime[data-panel-position=top-left] .vtb-fp-panel{left:max(18px,env(safe-area-inset-left));right:auto;top:max(18px,env(safe-area-inset-top));bottom:auto;transform-origin:top left}
@media(max-width:640px){.vtb-fp-btn{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:48px;height:48px}.vtb-fp-panel{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:calc(max(10px,env(safe-area-inset-bottom)) + 58px);width:auto;height:min(52vh,430px);border-radius:13px;transform-origin:bottom center}.vtb-fp-floor{max-width:44%;min-width:0}.vtb-fp-head{padding:8px}.vtb-fp-marker{width:38px;height:38px}.vtb-fp-zoom button{width:36px;height:36px}}
@media(max-width:420px){.vtb-fp-panel{height:min(56vh,420px)}.vtb-fp-title{max-width:42%}.vtb-fp-floor{max-width:40%}}
@media(orientation:landscape) and (max-height:520px){.vtb-fp-panel{height:calc(100vh - max(20px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)));bottom:max(10px,env(safe-area-inset-bottom));width:min(46vw,520px)}}
@media(prefers-reduced-motion:reduce){.vtb-fp-btn,.vtb-fp-panel,.vtb-fp-close,.vtb-fp-marker,.vtb-fp-tip,.vtb-fp-zoom button{transition:none!important}}
