/* Desert Frame Studio — 360 Viewer v1.6.4 */
.df360Viewer{display:none;position:absolute;inset:0;overflow:hidden;background:radial-gradient(circle at 50% 38%,#fff 0,#f4f1eb 58%,#e7e1d7 100%);z-index:8;touch-action:none}
.stage.df-view-360 .df360Viewer{display:block}
.stage.df-view-360 #product,.stage.df-view-360 .dfUnifiedPreview,.stage.df-view-360 .dfRoomArtwork,.stage.df-view-360 .wallLine,.stage.df-view-360 .sideLabel,.stage.df-view-360 .edgeBadge{display:none!important}
.df360Viewer canvas{display:block;width:100%!important;height:100%!important;cursor:grab;outline:none}
.df360Viewer canvas:active{cursor:grabbing}
.df360Help{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);padding:7px 11px;border-radius:999px;background:rgba(20,20,20,.72);color:#fff;font-size:10px;line-height:1;pointer-events:none;white-space:nowrap;backdrop-filter:blur(4px)}
.df360Actions{position:absolute;right:14px;top:14px;display:flex;gap:7px;z-index:3}
.df360Actions button{border:1px solid rgba(0,0,0,.15);background:rgba(255,255,255,.92);color:#1d1812;border-radius:8px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.df360Actions button.active{background:#171717;color:#fff;border-color:#171717}
.df360Badge{position:absolute;left:14px;top:14px;padding:8px 10px;border-radius:8px;background:rgba(20,20,20,.80);color:#fff;font-size:10px;line-height:1.4;pointer-events:none;backdrop-filter:blur(4px)}
@media(max-width:760px){.df360Actions{top:10px;right:10px}.df360Actions button{padding:7px 8px;font-size:10px}.df360Badge{left:10px;top:10px}.df360Help{bottom:12px;font-size:9px}}

/* v1.5.2 status */
.df360Status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:12;padding:10px 14px;border-radius:9px;background:rgba(20,20,20,.82);color:#fff;font-size:12px;pointer-events:none}.df360Status.error{background:rgba(140,28,18,.92)}

/* v1.5.2 Dynamic Glass Materials */

/* v1.5.3 premium 360 presentation */
.stage.df-view-360 .df360Viewer{
  background:
    radial-gradient(circle at 50% 34%,rgba(255,255,255,.98) 0,rgba(248,245,239,.98) 45%,rgba(231,225,215,.98) 100%);
}
.stage.df-view-360 .df360Actions button.active{
  box-shadow:0 5px 16px rgba(0,0,0,.16);
}

/* v1.5.4 frame construction polish */
.stage.df-view-360 .df360Viewer canvas{filter:saturate(1.02) contrast(1.015)}

/* v1.5.5 flush assembly: print, border, mount and glass sit inside the frame face */

/* v1.5.6 seamless outer moulding + recessed rear backing */

/* v1.5.7 single-piece outer frame ring; legacy rear slab removed */

/* v1.5.8 stable artwork texture + anti-flicker glass */

/* v1.5.9 removes physical glass rectangle, preserves artwork, restores contact shadow */

/* v1.6.0 critical 360 JavaScript loader/syntax hotfix */

/* v1.6.1 declares the 360 shadow floor in module scope; fixes runtime startup failure */

/* v1.6.2 exact live-console line 43 syntax fix */

/* v1.6.3 clean rear view and softened contact shadow */

/* v1.6.4 window mount above print + rear backing overlap removes perimeter seam */
