#recorrido-overlay #viewer{position:fixed;top:5%;bottom:5%;left:50%;transform:translateX(-50%);width:100%;max-width:450px;border-radius:16px;z-index:1060;overflow:hidden;touch-action:none;cursor:grab;background:#111}#recorrido-overlay #viewer.dragging{cursor:grabbing}#recorrido-overlay #panorama{position:absolute;height:100%;width:auto;max-width:none;user-select:none;-webkit-user-drag:none;pointer-events:none;will-change:transform;filter:brightness(.92)}#recorrido-overlay .vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.32),transparent 25%,transparent 68%,rgba(0,0,0,.5))}#recorrido-overlay .topbar{position:absolute;z-index:5;top:max(18px,env(safe-area-inset-top));left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}#recorrido-overlay .title{font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px 10px #000}#recorrido-overlay .counter{font-size:13px;padding:8px 11px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(0,0,0,.35);backdrop-filter:blur(7px)}#recorrido-overlay .instructions{position:absolute;z-index:5;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);white-space:nowrap;font-size:13px;background:rgba(0,0,0,.52);border:1px solid rgba(255,255,255,.2);padding:10px 14px;border-radius:999px;pointer-events:none;transition:opacity .4s}#recorrido-overlay .nav{position:absolute;z-index:6;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(0,0,0,.42);color:#fff;font-size:26px;cursor:pointer;backdrop-filter:blur(6px)}#recorrido-overlay #prev{left:14px}#recorrido-overlay #next{right:14px}#recorrido-overlay .nav:disabled{opacity:.2;cursor:default}#recorrido-overlay .hotspot{position:absolute;z-index:7;left:50%;bottom:90px;transform:translateX(-50%);border:0;color:white;background:rgba(120,0,35,.88);padding:12px 18px;border-radius:999px;font-weight:700;box-shadow:0 8px 30px rgba(0,0,0,.35);cursor:pointer}#recorrido-overlay .fade{position:absolute;z-index:20;inset:0;background:#000;pointer-events:none;opacity:0;transition:opacity .32s}#recorrido-overlay .fade.on{opacity:1}

#recorrido-overlay{color:#fff;font-family:Arial,sans-serif}
#recorrido-overlay[hidden]{display:none!important}
#recorrido-overlay #recorrido-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:1050}
#recorrido-overlay #viewer{isolation:isolate}
#recorrido-overlay .topbar{gap:12px}
#recorrido-overlay .title{overflow-wrap:anywhere;min-width:0}
#recorrido-overlay .counter{flex-shrink:0}
#recorrido-overlay .instructions{max-width:95%;white-space:normal;text-align:center}
#recorrido-overlay #recorrido-status{position:absolute;top:35%;left:12px;right:12px;z-index:21;padding:12px;background:#000c;text-align:center;border-radius:8px}
#recorrido-overlay #panorama[hidden],#recorrido-overlay #recorrido-status[hidden]{display:none!important}
#recorrido-overlay button:focus-visible{outline:2px solid white;outline-offset:3px}
@media(prefers-reduced-motion:reduce){#recorrido-overlay .fade,#recorrido-overlay .instructions{transition:none}}

#recorrido-overlay [hidden]{display:none!important}
#recorrido-overlay .bottom-controls{position:absolute;z-index:7;bottom:max(15px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;pointer-events:none}
#recorrido-overlay .bottom-controls .hotspot{position:static;transform:none;pointer-events:auto}
#recorrido-overlay .nav-buttons{display:flex;gap:10px}
#recorrido-overlay .small-btn{font-size:13px;padding:8px 14px;background:rgba(120,0,35,.75)}
#recorrido-overlay .instructions-text{font-size:12px;color:#ffffff99;text-align:center}
#recorrido-overlay button:disabled{opacity:.35;cursor:default}
#recorrido-overlay #close-recorrido-video{position:absolute;top:75px;right:16px;z-index:8;background:#780023;color:white;border:0;border-radius:20px;padding:10px 16px;cursor:pointer}
#recorrido-overlay #play-recorrido-video{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:8;background:#780023;color:white;padding:12px;border:0;border-radius:8px;cursor:pointer}
#recorrido-overlay .vignette{z-index:2}
#recorrido-overlay #panorama{transition:filter .4s ease-in-out,opacity .4s ease-in-out}
#recorrido-overlay #panorama.street-transition{filter:blur(12px) brightness(.3);opacity:.8}
@media(prefers-reduced-motion:reduce){#recorrido-overlay #panorama{transition:none}}
