/* Vintage LX — Visita Virtual 360 (skin estilo immoviewer, Marzipano) */
#vlxtour-wrap{ position:fixed; top:var(--vlxtour-header, 0px); left:0; right:0; bottom:0; z-index:990; background:#111; overflow:hidden; font-family:'Poppins',-apple-system,sans-serif; }
#vlxtour-pano{ position:absolute; inset:0; }
#vlxtour-pano canvas{ display:block; }

/* ── hotspot de navegação (PNG immoviewer projetado no chão) ── */
.vlxtour-hs{ width:90px; height:84px; margin:-42px 0 0 -45px; cursor:pointer; }
.vlxtour-hs .vlxtour-hs-ico{ position:absolute; inset:0; background:url('../hotspot-immoviewer.png') no-repeat center/contain; filter:drop-shadow(0 4px 10px rgba(0,0,0,.35)); transition:filter .15s ease, transform .2s ease; }
.vlxtour-hs:hover .vlxtour-hs-ico{ filter:drop-shadow(0 6px 14px rgba(0,0,0,.5)) brightness(1.08); }
.vlxtour-hs .vlxtour-hs-lbl{ position:absolute; bottom:calc(100% + 8px); left:50%; transform:translateX(-50%); background:rgba(0,0,0,.82); color:#fff; font-size:12px; font-weight:500; letter-spacing:.05em; padding:5px 11px; border-radius:3px; white-space:nowrap; opacity:0; transition:opacity .15s ease; pointer-events:none; }
.vlxtour-hs:hover .vlxtour-hs-lbl{ opacity:1; }

/* ── tutorial do rato ── */
#vlxtour-tut{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; z-index:30; pointer-events:none; transition:opacity .5s ease; }
#vlxtour-tut.hide{ opacity:0; }
#vlxtour-tut svg{ width:64px; height:64px; filter:drop-shadow(0 2px 8px rgba(0,0,0,.6)); }
#vlxtour-tut span{ color:#fff; font-size:14px; font-weight:600; text-shadow:0 1px 6px rgba(0,0,0,.8); }

/* ── botões canto inferior esquerdo ── */
.vlxtour-corner{ position:absolute; left:16px; bottom:64px; z-index:40; display:flex; gap:10px; }
.vlxtour-corner button{ width:46px; height:46px; border-radius:50%; border:0; background:rgba(255,255,255,.95); box-shadow:0 3px 10px rgba(0,0,0,.35); cursor:pointer; display:flex; align-items:center; justify-content:center; transition:transform .15s ease; padding:0; }
.vlxtour-corner button:hover{ transform:scale(1.08); }
.vlxtour-corner button svg{ width:22px; height:22px; }

/* ── galeria carrossel ── */
#vlxtour-gal{ position:absolute; left:0; right:0; bottom:44px; z-index:35; display:none; padding:12px 16px 12px 80px; background:linear-gradient(transparent, rgba(0,0,0,.45)); overflow-x:auto; white-space:nowrap; scrollbar-width:thin; }
#vlxtour-gal.open{ display:block; }
#vlxtour-gal button{ position:relative; display:inline-block; width:118px; height:62px; margin-right:8px; padding:0; border:2px solid transparent; border-radius:3px; overflow:hidden; cursor:pointer; background:#000; vertical-align:top; }
#vlxtour-gal button img{ width:100%; height:100%; object-fit:cover; display:block; opacity:.92; }
#vlxtour-gal button .n{ position:absolute; top:4px; left:6px; color:#fff; font-size:11px; font-weight:600; text-shadow:0 1px 4px rgba(0,0,0,.9); font-family:'Poppins',sans-serif; }
#vlxtour-gal button.active{ border-color:#fff; }
#vlxtour-gal button:hover img{ opacity:1; }

/* ── barra inferior ── */
#vlxtour-bar{ position:absolute; left:0; right:0; bottom:0; height:44px; z-index:40; background:rgba(0,0,0,.86); display:flex; align-items:center; justify-content:space-between; padding:0 14px; }
#vlxtour-bar .ttl{ color:#fff; font-size:12px; letter-spacing:.16em; text-transform:uppercase; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#vlxtour-bar .acts{ display:flex; gap:6px; }
#vlxtour-bar .acts button{ width:32px; height:32px; border:0; background:none; cursor:pointer; display:flex; align-items:center; justify-content:center; border-radius:3px; }
#vlxtour-bar .acts button:hover{ background:rgba(255,255,255,.14); }
#vlxtour-bar .acts svg{ width:18px; height:18px; fill:#fff; }

/* ── modo calibração ── */
#vlxtour-calib{ position:absolute; top:12px; left:12px; z-index:60; background:rgba(0,0,0,.85); color:#0f0; font:12px/1.5 monospace; padding:10px 14px; border-radius:4px; max-width:380px; display:none; }
#vlxtour-calib.on{ display:block; }

@media (max-width:640px){
  .vlxtour-hs{ width:72px; height:67px; margin:-33px 0 0 -36px; }
  #vlxtour-gal button{ width:96px; height:52px; }
  #vlxtour-bar .ttl{ font-size:10px; }
}
