.pano-shell{position:relative;overflow:hidden;border:1px solid var(--line-2);border-radius:var(--r-card);background:#101819}
.pano-viewer{width:100%;height:clamp(260px,25vw,340px);background:#101819 url('/assets/panoramas/downtown-edmonton-preview.webp') center/contain no-repeat;cursor:grab}
.pano-try{min-height:44px;padding:10px 16px;border:1px solid rgba(148,255,231,.55);border-radius:var(--r-btn);background:rgba(148,255,231,.08);color:var(--mint);font:600 14px/1.3 var(--font-sans);cursor:pointer}
.pano-try:hover{background:rgba(148,255,231,.16)}
.pano-try:disabled{opacity:.55;cursor:wait}
.pano-viewer:active{cursor:grabbing}
.pano-toolbar{position:absolute;right:16px;bottom:16px;display:flex;gap:8px;z-index:2}
.pano-toolbar button{min-width:44px;min-height:44px;border:1px solid rgba(255,255,255,.5);border-radius:8px;background:rgba(9,19,20,.88);color:#fff;font:600 20px/1 var(--font-sans);cursor:pointer}
.pano-toolbar button:hover{background:var(--teal-0)}
.pano-toolbar button:disabled{opacity:.5;cursor:wait}
.pano-status{position:absolute;left:16px;bottom:20px;padding:9px 12px;border-radius:6px;background:rgba(9,19,20,.88);color:#fff;font:500 12px/1.4 var(--font-mono);pointer-events:none;z-index:2}
.pano-shell:fullscreen{border:0;border-radius:0}
.pano-shell:fullscreen .pano-viewer{height:100vh}
@media(max-width:600px){.pano-viewer{height:58vh;min-height:360px}.pano-toolbar{right:10px;bottom:10px;gap:5px}.pano-status{left:10px;bottom:62px}}
