.studio-map__frame{position:relative;height:var(--studio-map-h,420px);overflow:hidden;border-radius:var(--studio-map-radius,20px);background:#e7ece9}.studio-map__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(calc(var(--studio-map-gray,0) * 1%))}.studio-map__cover{position:absolute;inset:0;z-index:1}.studio-map__button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 22px;border-radius:999px;font-weight:700;text-decoration:none!important;box-shadow:0 10px 28px rgba(0,0,0,.18);transition:transform .2s ease,filter .2s ease}.studio-map__button:hover{transform:translateY(-2px);filter:brightness(1.08)}.studio-map__button.is-overlay{position:absolute;z-index:2;left:50%;bottom:18px;transform:translateX(-50%);white-space:nowrap}.studio-map__button.is-overlay:hover{transform:translate(-50%,-2px)}.studio-map>.studio-map__button{margin-top:14px}.studio-map.is-editor iframe,.studio-map.is-editor .studio-map__button{pointer-events:none}

@media(max-width:620px){.studio-map__frame{height:var(--studio-map-h-mobile,320px)}}
@media(prefers-reduced-motion:reduce){.studio-map__button{transition:none}}

/* Spacer 360°. Przyciski mają przedrostek .studio-tour, bo Kubio stylizuje [data-kubio] button mocniejszym selektorem. Kontener stanu (has-title, has-scene-list, is-ready…) to blok na stronie albo .studio-tour__stage w edytorze. */
.studio-tour{position:relative;height:var(--studio-tour-h,560px);overflow:hidden;border-radius:var(--studio-tour-radius,24px);background:#0b0f14;color:#fff;isolation:isolate}.studio-tour__stage{position:absolute;inset:0}
.studio-tour__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.75);transition:opacity .5s}.studio-tour.is-ready .studio-tour__poster{opacity:0}
.studio-tour__viewer{position:absolute;inset:0;outline:none;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.studio-tour__viewer.is-dragging{cursor:grabbing}.is-picking .studio-tour__viewer{cursor:crosshair}.studio-tour__viewer canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.is-fallback>.studio-tour__viewer canvas{display:none}
.studio-tour__viewer:focus-visible{box-shadow:inset 0 0 0 3px var(--studio-tour-accent,#fff)}
.studio-tour__hotspots{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.studio-tour .studio-tour__hotspot{position:absolute;left:-22px;top:-22px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:2px solid rgba(255,255,255,.92);border-radius:50%;background:rgba(11,15,20,.38);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font:700 16px/1 system-ui,sans-serif;cursor:pointer;pointer-events:auto;box-shadow:0 6px 22px rgba(0,0,0,.35)}
.studio-tour .studio-tour__hotspot:before{content:"";width:12px;height:12px;border-top:3px solid currentColor;border-right:3px solid currentColor;transform:translateX(-2px) rotate(45deg)}.studio-tour .studio-tour__hotspot.is-info:before{content:"i";width:auto;height:auto;border:0;transform:none;font-style:italic;font-family:Georgia,serif;font-size:20px}
.studio-tour .studio-tour__hotspot:after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid rgba(255,255,255,.7);animation:studio-tour-ping 2.4s ease-out infinite;pointer-events:none}
.studio-tour .studio-tour__hotspot:hover,.studio-tour .studio-tour__hotspot:focus-visible{background:var(--studio-tour-accent,#fff);color:var(--studio-tour-on-accent,#0b0f14);outline:none}
.studio-tour__label{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);padding:6px 12px;border-radius:999px;background:rgba(11,15,20,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font:600 13px/1.2 system-ui,sans-serif;white-space:nowrap;pointer-events:none}.studio-tour .studio-tour__hotspot.is-info .studio-tour__label{opacity:0;transition:opacity .2s}.studio-tour .studio-tour__hotspot.is-info:hover .studio-tour__label,.studio-tour .studio-tour__hotspot.is-info:focus-visible .studio-tour__label{opacity:1}
.studio-tour__title{position:absolute;left:16px;top:16px;max-width:calc(100% - 260px);padding:8px 14px;border-radius:999px;background:rgba(11,15,20,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font:700 14px/1.2 system-ui,sans-serif;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:not(.has-title)>.studio-tour__viewer .studio-tour__title{display:none}
.studio-tour__controls{position:absolute;right:14px;top:14px;display:flex;gap:8px}
.studio-tour .studio-tour__btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:rgba(11,15,20,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;transition:background .2s,color .2s,transform .2s}.studio-tour .studio-tour__btn:hover{transform:translateY(-1px);background:rgba(11,15,20,.7)}.studio-tour .studio-tour__btn.is-on{background:var(--studio-tour-accent,#fff);color:var(--studio-tour-on-accent,#0b0f14)}.studio-tour .studio-tour__btn[hidden]{display:none}
.studio-tour__scenes{position:absolute;left:50%;bottom:16px;display:none;gap:6px;max-width:calc(100% - 32px);padding:6px;border-radius:999px;background:rgba(11,15,20,.45);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow-x:auto;transform:translateX(-50%);scrollbar-width:none}.studio-tour__scenes::-webkit-scrollbar{display:none}.has-scene-list>.studio-tour__viewer .studio-tour__scenes{display:flex}
.studio-tour .studio-tour__scene{flex:0 0 auto;padding:8px 14px;border:0;border-radius:999px;background:transparent;color:#fff;font:650 13px/1.2 system-ui,sans-serif;white-space:nowrap;cursor:pointer}.studio-tour .studio-tour__scene.is-active{background:var(--studio-tour-accent,#fff);color:var(--studio-tour-on-accent,#0b0f14)}
.studio-tour__hint{position:absolute;left:50%;top:50%;padding:10px 16px;border-radius:999px;background:rgba(11,15,20,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font:600 14px/1.2 system-ui,sans-serif;transform:translate(-50%,-50%);pointer-events:none;transition:opacity .4s}.studio-tour__viewer.is-touched .studio-tour__hint,.is-picking .studio-tour__hint{opacity:0}
.studio-tour__info{position:absolute;left:50%;bottom:76px;width:min(420px,calc(100% - 32px));padding:16px 48px 16px 18px;border-radius:18px;background:rgba(11,15,20,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translateX(-50%)}.studio-tour__info strong{display:block;font-size:1.05rem}.studio-tour .studio-tour__info p{margin:6px 0 0;color:inherit;font-size:.95rem;line-height:1.5;opacity:.9;white-space:pre-line}.studio-tour .studio-tour__info strong{color:inherit}.studio-tour .studio-tour__info .studio-tour__btn{position:absolute;top:8px;right:8px;width:32px;height:32px}.studio-tour__info[hidden]{display:none}
.studio-tour__fade{position:absolute;inset:0;background:#0b0f14;opacity:0;pointer-events:none;transition:opacity .3s}.studio-tour__viewer.is-fading .studio-tour__fade{opacity:1}
.studio-tour__loader{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border:3px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;opacity:0;pointer-events:none;animation:studio-tour-spin .8s linear infinite}.studio-tour__viewer.is-loading .studio-tour__loader{opacity:1}
.studio-tour__embed{position:absolute;inset:0;width:100%;height:100%;border:0}
.studio-tour__empty{display:grid;place-content:center;gap:8px;height:100%;padding:24px;text-align:center;background:linear-gradient(135deg,#111827,#1f2937)}.studio-tour__empty strong{font-size:1.4rem}
.studio-tour.is-editor .studio-tour__embed{pointer-events:none}
.studio-tour:fullscreen{height:100%;border-radius:0}.studio-tour.is-pseudo-fullscreen{position:fixed;inset:0;z-index:100000;height:auto;border-radius:0}.studio-tour-locked,.studio-tour-locked body{overflow:hidden}
.studio-editor-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.studio-editor-item.is-active{border-color:#3858e9;box-shadow:0 0 0 1px #3858e9}
@keyframes studio-tour-ping{from{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}@keyframes studio-tour-spin{to{transform:rotate(360deg)}}
@media(max-width:620px){.studio-tour{height:var(--studio-tour-h-mobile,460px)}.studio-tour__title{max-width:calc(100% - 200px);font-size:13px}.studio-tour__controls{gap:6px}.studio-tour .studio-tour__btn{width:36px;height:36px}.studio-tour .studio-tour__btn.is-zoomIn,.studio-tour .studio-tour__btn.is-zoomOut{display:none}}
@media(prefers-reduced-motion:reduce){.studio-tour .studio-tour__hotspot:after{animation:none}}
.studio-tour .studio-tour__hotspot[hidden]{display:none}
