@liveroom-tech/react-immersive 4.2.7 → 4.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-CPHWRR2L.mjs → chunk-WVKZCAVE.mjs} +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.mts +22 -3
- package/dist/index.d.ts +22 -3
- package/dist/index.js +8 -8
- package/dist/index.mjs +7 -7
- package/dist/{utils-BUwXD_DX.d.mts → utils-BkdZxLFF.d.mts} +3 -0
- package/dist/{utils-BUwXD_DX.d.ts → utils-BkdZxLFF.d.ts} +3 -0
- package/dist/utils.d.mts +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +1 -1
- package/dist/utils.mjs +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
function y(e){let n=e.trim();return n?/\.(hdr|exr|jpg|jpeg|png|webp)(?:[?#].*)?$/i.test(n):!1}var S=["none","directional","point","spot","hemisphere"],B=["pbr","matcap","uv-checker"],O=["apartment","city","dawn","forest","lobby","night","park","studio","sunset","warehouse"];var x=["sporadic","constantMild","constantWild"],j=["linear","radial","mirroredLinear"],T=["verySmall","small","medium","large","veryLarge","huge"],u={clips:[],autoplayClip:null},g={autofocus:{enabled:!1,focusDistance:5,focusRange:5,focalLength:.02,bokehScale:6,target:[0,0,0],mouse:!0,debug:0,manual:!1,smoothTime:.25},toneMapping:{enabled:!1,mode:"aces",exposure:1,resolution:256,whitePoint:4,middleGrey:.6,minLuminance:.01,averageLuminance:1,adaptationRate:1},brightnessContrast:{enabled:!1,brightness:0,contrast:0},hueSaturation:{enabled:!1,hue:0,saturation:0},colorAverage:{enabled:!1},dotScreen:{enabled:!1,angle:Math.PI/2,scale:1},glitch:{enabled:!1,mode:"sporadic",delay:[1.5,3.5],duration:[.6,1],strength:[.3,1],chromaticAberrationOffset:[0,0],columns:.05,ratio:.85},ssao:{enabled:!1,samples:30,rings:4,intensity:8,radius:.25,bias:.025,luminanceInfluence:.6,fade:.01,minRadiusScale:.33,worldDistanceThreshold:20,worldDistanceFalloff:5,worldProximityThreshold:6,worldProximityFalloff:3},bloom:{enabled:!1,intensity:.3,luminanceThreshold:.9,luminanceSmoothing:.2,mipmapBlur:!0,radius:0,levels:8},godRays:{enabled:!1,sunPosition:[5,10,5],samples:60,density:.96,decay:.9,weight:.4,exposure:.6,clampMax:1,blur:!0,kernelSize:"small"},grid:{enabled:!1,scale:1,lineWidth:0},noise:{enabled:!1,opacity:1,premultiply:!1},depthOfField:{enabled:!1,focusDistance:5,focusRange:5,focalLength:.02,bokehScale:6},chromaticAberration:{enabled:!1,offsetX:.002,offsetY:.002,radialModulation:!1,modulationOffset:.15},lensflare:{enabled:!1,lensPosition:[-25,6,-60],smoothTime:.07,glareSize:.2,flareSize:.01,flareSpeed:.01,flareShape:.01,animated:!0,anamorphic:!1,colorGain:"#141414",haloScale:.5,secondaryGhosts:!0,aditionalStreaks:!0,ghostScale:0,opacity:1,starBurst:!1},vignette:{enabled:!1,offset:.3,darkness:.3,eskil:!1},smaa:{enabled:!1},sepia:{enabled:!1,intensity:0},scanline:{enabled:!1,density:1.25},pixelation:{enabled:!1,granularity:5},outline:{enabled:!1,selectionLayer:10,edgeStrength:2.5,pulseSpeed:0,visibleEdgeColor:"#ffffff",hiddenEdgeColor:"#22090a",kernelSize:"large",blur:!1,xRay:!0},selectiveBloom:{enabled:!1,selectionLayer:10,intensity:1,luminanceThreshold:.9,luminanceSmoothing:.025,kernelSize:"large",mipmapBlur:!0,inverted:!1,ignoreBackground:!1},ramp:{enabled:!1,rampType:"linear",rampStart:[.5,.5],rampEnd:[1,1],startColor:"#000000",endColor:"#ffffff",opacity:.5,rampBias:.5,rampGain:.5,rampMask:!1,rampInvert:!1}},w={model:{rotation:[0,0,0],showAdvancedRotation:!1,renderer:"pbr",shading:"lit"},camera:{fieldOfView:50,showAdvancedSettings:!1},lighting:{ambient:{intensity:.25,color:"#ffffff"},lights:[{id:"light-hemi",type:"hemisphere",color:"#ffffff",intensity:.3,position:[0,1,0],attachedToCamera:!1,castShadow:!1,shadowBias:-5e-4,visible:!0},{id:"light-key",type:"directional",color:"#ffffff",intensity:2.5,position:[6,12,6],attachedToCamera:!1,castShadow:!0,shadowBias:-5e-4,visible:!0},{id:"light-fill",type:"directional",color:"#ffffff",intensity:0,position:[-6,8,-6],attachedToCamera:!1,castShadow:!1,shadowBias:-5e-4,visible:!0}]},shadows:{enabled:!0,mapSize:2048,bias:-5e-4,normalBias:.02,radius:3},environment:{source:"preset",preset:"apartment",customEnvironmentUrl:"",intensity:.25,rotation:0,shadowLight:{enabled:!1,intensity:2.5,bias:-5e-4}},wireframe:{enabled:!1,color:"#000000",opacity:1},background:{enabled:!1,type:"color",color:"#1c1c1d",imageUrl:""},groundShadows:{enabled:!1,mode:"shadowCatcher",intensity:.7,borderFade:1,height:0,size:10},postProcessing:g,animations:u,annotations:[]};var M=["front","back","double"],E=["normal","additive"];function d(e,n){if(e[n])return n;let
|
|
1
|
+
function y(e){let n=e.trim();return n?/\.(hdr|exr|jpg|jpeg|png|webp)(?:[?#].*)?$/i.test(n):!1}var S=["none","directional","point","spot","hemisphere"],B=["pbr","matcap","uv-checker"],O=["apartment","city","dawn","forest","lobby","night","park","studio","sunset","warehouse"];var x=["sporadic","constantMild","constantWild"],j=["linear","radial","mirroredLinear"],T=["verySmall","small","medium","large","veryLarge","huge"],u={clips:[],autoplayClip:null},g={autofocus:{enabled:!1,focusDistance:5,focusRange:5,focalLength:.02,bokehScale:6,target:[0,0,0],mouse:!0,debug:0,manual:!1,smoothTime:.25},toneMapping:{enabled:!1,mode:"aces",exposure:1,resolution:256,whitePoint:4,middleGrey:.6,minLuminance:.01,averageLuminance:1,adaptationRate:1},brightnessContrast:{enabled:!1,brightness:0,contrast:0},hueSaturation:{enabled:!1,hue:0,saturation:0},colorAverage:{enabled:!1},dotScreen:{enabled:!1,angle:Math.PI/2,scale:1},glitch:{enabled:!1,mode:"sporadic",delay:[1.5,3.5],duration:[.6,1],strength:[.3,1],chromaticAberrationOffset:[0,0],columns:.05,ratio:.85},ssao:{enabled:!1,samples:30,rings:4,intensity:8,radius:.25,bias:.025,luminanceInfluence:.6,fade:.01,minRadiusScale:.33,worldDistanceThreshold:20,worldDistanceFalloff:5,worldProximityThreshold:6,worldProximityFalloff:3},bloom:{enabled:!1,intensity:.3,luminanceThreshold:.9,luminanceSmoothing:.2,mipmapBlur:!0,radius:0,levels:8},godRays:{enabled:!1,sunPosition:[5,10,5],samples:60,density:.96,decay:.9,weight:.4,exposure:.6,clampMax:1,blur:!0,kernelSize:"small"},grid:{enabled:!1,scale:1,lineWidth:0},noise:{enabled:!1,opacity:1,premultiply:!1},depthOfField:{enabled:!1,focusDistance:5,focusRange:5,focalLength:.02,bokehScale:6},chromaticAberration:{enabled:!1,offsetX:.002,offsetY:.002,radialModulation:!1,modulationOffset:.15},lensflare:{enabled:!1,lensPosition:[-25,6,-60],smoothTime:.07,glareSize:.2,flareSize:.01,flareSpeed:.01,flareShape:.01,animated:!0,anamorphic:!1,colorGain:"#141414",haloScale:.5,secondaryGhosts:!0,aditionalStreaks:!0,ghostScale:0,opacity:1,starBurst:!1},vignette:{enabled:!1,offset:.3,darkness:.3,eskil:!1},smaa:{enabled:!1},sepia:{enabled:!1,intensity:0},scanline:{enabled:!1,density:1.25},pixelation:{enabled:!1,granularity:5},outline:{enabled:!1,selectionLayer:10,edgeStrength:2.5,pulseSpeed:0,visibleEdgeColor:"#ffffff",hiddenEdgeColor:"#22090a",kernelSize:"large",blur:!1,xRay:!0},selectiveBloom:{enabled:!1,selectionLayer:10,intensity:1,luminanceThreshold:.9,luminanceSmoothing:.025,kernelSize:"large",mipmapBlur:!0,inverted:!1,ignoreBackground:!1},ramp:{enabled:!1,rampType:"linear",rampStart:[.5,.5],rampEnd:[1,1],startColor:"#000000",endColor:"#ffffff",opacity:.5,rampBias:.5,rampGain:.5,rampMask:!1,rampInvert:!1}},w={model:{rotation:[0,0,0],showAdvancedRotation:!1,renderer:"pbr",shading:"lit",autoRotate:!1,autoRotateSpeed:1},camera:{fieldOfView:50,showAdvancedSettings:!1},lighting:{ambient:{intensity:.25,color:"#ffffff"},lights:[{id:"light-hemi",type:"hemisphere",color:"#ffffff",intensity:.3,position:[0,1,0],attachedToCamera:!1,castShadow:!1,shadowBias:-5e-4,visible:!0},{id:"light-key",type:"directional",color:"#ffffff",intensity:2.5,position:[6,12,6],attachedToCamera:!1,castShadow:!0,shadowBias:-5e-4,visible:!0},{id:"light-fill",type:"directional",color:"#ffffff",intensity:0,position:[-6,8,-6],attachedToCamera:!1,castShadow:!1,shadowBias:-5e-4,visible:!0}]},shadows:{enabled:!0,mapSize:2048,bias:-5e-4,normalBias:.02,radius:3},environment:{source:"preset",preset:"apartment",customEnvironmentUrl:"",intensity:.25,rotation:0,shadowLight:{enabled:!1,intensity:2.5,bias:-5e-4}},wireframe:{enabled:!1,color:"#000000",opacity:1},background:{enabled:!1,type:"color",color:"#1c1c1d",imageUrl:""},groundShadows:{enabled:!1,mode:"shadowCatcher",intensity:.7,borderFade:1,height:0,size:10},postProcessing:g,animations:u,annotations:[]};var M=["front","back","double"],E=["normal","additive"];function d(e,n){if(e[n])return n;let r=Object.entries(e).find(([,t])=>t.id===n)?.[0];return r||(Object.entries(e).find(([,t])=>t.modelObjectId===n)?.[0]??null)}function p(e){return typeof e=="object"&&!Array.isArray(e)}function f(e,n){return"group"in n?e.group===n.group:"tag"in n?e.tags?.includes(n.tag)??!1:e.type===n.type}function a(e,n){if(p(n))return Object.entries(e).filter(([,t])=>f(t,n)).map(([t])=>t);let o=(typeof n=="string"?[n]:n).map(t=>d(e,t)).filter(t=>t!==null);return[...new Set(o)]}function A(e,n){return a(e,n).map(r=>e[r]).filter(r=>r!==void 0)}function s(e){if(typeof e!="object"||e===null)return!1;let n=Object.getPrototypeOf(e);return n===Object.prototype||n===null}function i(e,n){if(!s(n))return n;let r=s(e)?{...e}:{};for(let o of Object.keys(n)){let t=n[o];r[o]=s(t)?i(r[o],t):t}return r}function h(e){return Array.isArray(e)&&e.length>0&&typeof e[0]!="string"}function _(e,n,r){let o=h(n)?n:[{ids:n,patch:r??{}}],t=e;for(let l of o)for(let c of a(t,l.ids)){let b=t[c];if(!b)continue;let m=i(b,l.patch);t===e&&(t={...e}),t[c]=m}return t}function D(e){return{style:{material:e}}}function G(e){return e}function U(e,n){return i(e,n)}export{y as a,S as b,B as c,O as d,x as e,j as f,T as g,w as h,d as i,M as j,E as k,a as l,A as m,_ as n,D as o,G as p,U as q};
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ri-viewer--license-checking,.ri-viewer--license-invalid{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:#f9f9f9}.ri-viewer{--ri-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--ri-viewer-bg: #1c1c1d;--ri-viewer-text: #111827;--ri-panel-bg: #ffffff;--ri-panel-border: #e5e7eb;--ri-panel-title: #111827;--ri-panel-muted-text: #4b5563;--ri-panel-subtle-text: #9ca3af;--ri-panel-surface: #f9fafb;--ri-panel-surface-hover: #f3f4f6;--ri-panel-surface-border: #e5e7eb;--ri-panel-button-text: #1f2937;--ri-panel-accent: #2563eb;--ri-panel-accent-contrast: #ffffff;--ri-license-overlay-bg: rgba(0, 0, 0, .04);--ri-license-overlay-border: rgba(0, 0, 0, .08);--ri-license-overlay-text: #888;--ri-license-overlay-error-bg: rgba(192, 57, 43, .06);--ri-license-overlay-error-border: rgba(192, 57, 43, .2);--ri-license-overlay-error-text: #c0392b;--ri-sidepanel-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--ri-sidepanel-bg: var(--ri-databinding-bg, #111318);--ri-sidepanel-open-btn-bg: rgba(20, 20, 20, .82);--ri-sidepanel-open-btn-bg-hover: #27282b7e;--ri-sidepanel-border: rgba(255, 255, 255, .06);--ri-sidepanel-divider: rgba(255, 255, 255, .04);--ri-sidepanel-border-strong: rgba(255, 255, 255, .08);--ri-sidepanel-border-active: rgba(255, 255, 255, .18);--ri-sidepanel-shadow-left: 4px 0 24px rgba(0, 0, 0, .35);--ri-sidepanel-shadow-right: -4px 0 24px rgba(0, 0, 0, .35);--ri-sidepanel-text: var(--ri-databinding-text, #f1f5f9);--ri-sidepanel-text-emphasis: var(--ri-databinding-text-hover, #cbd5e1);--ri-sidepanel-text-muted: var(--ri-databinding-text-muted, #94a3b8);--ri-sidepanel-text-subtle: var(--ri-databinding-text-subtle, #64748b);--ri-sidepanel-placeholder: var(--ri-databinding-text-faint, #475569);--ri-sidepanel-surface: rgba(255, 255, 255, .05);--ri-sidepanel-surface-hover: rgba(255, 255, 255, .1);--ri-sidepanel-accent: #3b82f6;--ri-sidepanel-accent-soft: rgba(59, 130, 246, .12);--ri-databinding-bg: #111318;--ri-databinding-border: rgba(255, 255, 255, .06);--ri-databinding-border-strong: rgba(255, 255, 255, .08);--ri-databinding-border-hover: rgba(255, 255, 255, .15);--ri-databinding-shadow: 4px 0 24px rgba(0, 0, 0, .35);--ri-databinding-font-family: "Inter", "Segoe UI", sans-serif;--ri-databinding-mono-font-family: "JetBrains Mono", "Fira Code", "Menlo", monospace;--ri-databinding-text: #f1f5f9;--ri-databinding-text-muted: #94a3b8;--ri-databinding-text-subtle: #64748b;--ri-databinding-text-faint: #475569;--ri-databinding-text-hover: #cbd5e1;--ri-databinding-surface: rgba(255, 255, 255, .03);--ri-databinding-surface-hover: rgba(255, 255, 255, .06);--ri-databinding-accent: #93c5fd;--ri-databinding-accent-glow: rgba(147, 197, 253, .8);--ri-databinding-accent-border: rgba(96, 165, 250, .55);--ri-databinding-accent-gradient: linear-gradient( 135deg, #1e3a8a 0%, #1d4ed8 60%, #2563eb 100% );--ri-databinding-accent-gradient-active: linear-gradient( 135deg, #1e3a8a 0%, #1e40af 100% );display:flex;flex-direction:row;width:100%;height:100%;min-height:0;overflow:hidden;background:var(--ri-viewer-bg);position:relative;color:var(--ri-viewer-text);font-family:var(--ri-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.ri-viewer *{box-sizing:border-box}.ri-viewerLeft{display:flex;flex:1;min-height:0;min-width:0;position:relative}.ri-viewerRight{display:flex;flex-shrink:0;min-width:0}.ri-panel{width:280px;min-height:0;background:var(--ri-panel-bg);border-right:1px solid var(--ri-panel-border);display:flex;flex-direction:column;padding:20px;overflow-y:auto;flex-shrink:0;transition:margin-left .3s ease,transform .3s ease}.ri-panel--open{transform:translate(0);margin-left:0}.ri-panel--closed{transform:translate(-100%);margin-left:-280px}.ri-panelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ri-panelTitle{margin:0;font-size:15px;font-weight:700;color:var(--ri-panel-title);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ri-closeButton{border:0;background:transparent;color:var(--ri-panel-subtle-text);font-size:22px;line-height:1;padding:0;cursor:pointer;flex-shrink:0;transition:color .2s ease}.ri-closeButton:hover{color:var(--ri-panel-muted-text)}.ri-json{margin:0 0 16px;padding:12px;background:var(--ri-panel-surface);border:1px solid var(--ri-panel-surface-border);border-radius:12px;font-size:12px;line-height:1.55;color:var(--ri-panel-button-text);overflow-x:auto;white-space:pre-wrap;word-break:break-word}.ri-divider{border-top:1px solid var(--ri-panel-border);margin-bottom:12px}.ri-sectionLabel{margin-bottom:8px;font-size:11px;font-weight:700;color:var(--ri-panel-subtle-text);text-transform:uppercase;letter-spacing:.16em}.ri-actionList{display:flex;flex-direction:column;gap:8px}.ri-actionButton{width:100%;border-radius:8px;border:1px solid var(--ri-panel-surface-border);background:var(--ri-panel-surface);color:var(--ri-panel-button-text);padding:10px 12px;text-align:left;font-size:14px;line-height:1.4;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.ri-actionButton:hover{background:var(--ri-panel-surface-hover);border-color:var(--ri-panel-border)}.ri-actionButton--active{background:var(--ri-panel-accent);border-color:var(--ri-panel-accent);color:var(--ri-panel-accent-contrast)}.ri-actionButton--active:hover{background:var(--ri-panel-accent);border-color:var(--ri-panel-accent)}.ri-canvasArea{flex:1 1 auto;position:relative;min-width:0}.ri-canvasArea--measuring{cursor:crosshair}.ri-canvasArea canvas{opacity:1;transition:opacity .18s ease}.ri-canvasArea--positioning canvas{opacity:0;transition:none}.ri-bindingsMismatchBanner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;pointer-events:auto;max-width:calc(100% - 32px);white-space:normal;text-align:center}.ri-bindingsMismatchBanner__icon{flex-shrink:0}.ri-bindingsMismatchBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.ri-bindingsMismatchBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}.ri-measureTools,.ri-uvCheckerTools{position:absolute;top:16px;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-measureButton{width:34px;height:34px;padding:0;background:#141414d1;border:1px solid rgba(255,255,255,.12);color:#ffffffbf;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,color .15s ease,border-color .15s ease}.ri-measureButton:hover{background:#282828eb;color:#fff;border-color:#ffffff40}.ri-measureButton:active{background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-measureButton--active{background:#22d3ee;border-color:#22d3ee;color:#06343c}.ri-measureButton--active:hover{background:#38dbf0;color:#06343c}.ri-measureHint{padding:6px 10px;border-radius:8px;font-size:12px;line-height:1;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);white-space:nowrap}.ri-explodeTools{position:absolute;top:16px;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-explodeSlider{display:flex;align-items:center;gap:8px;height:34px;padding:0 12px;background:#141414d1;border:1px solid rgba(255,255,255,.12);border-radius:8px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-explodeSlider input[type=range]{width:120px;accent-color:#22d3ee;cursor:pointer}.ri-cinematicTools{position:absolute;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-measureDot{width:10px;height:10px;border-radius:50%;background:#22d3ee;border:2px solid #fff;box-shadow:0 0 0 1px #0006;pointer-events:none}.ri-measureLabel{padding:3px 7px;border-radius:6px;font-size:12px;font-weight:600;line-height:1;white-space:nowrap;color:#06343c;background:#22d3ee;box-shadow:0 1px 4px #00000059;pointer-events:none;user-select:none}.ri-xrTools{position:absolute;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-xrButton{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;font-size:13px;font-weight:500;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.16);border-radius:8px;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,border-color .15s ease}.ri-xrButton:hover{background:#282828eb;border-color:#ffffff4d}.ri-mobileHandoffBackdrop{position:absolute;z-index:30;inset:0;display:grid;place-items:center;padding:20px;background:#020617ad;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.ri-mobileHandoffDialog{position:relative;display:flex;width:min(100%,300px);flex-direction:column;align-items:center;padding:16px;text-align:center;color:#e2e8f0;background:#0f172a;border:1px solid rgba(148,163,184,.3);border-radius:16px;box-shadow:0 24px 80px #00000080}.ri-mobileHandoffDialog>svg{color:#67e8f9}.ri-mobileHandoffDialog h2{margin:12px 0 0;font-size:18px;line-height:1.25;color:#fff}.ri-mobileHandoffDialog p{margin:8px 0 16px;font-size:13px;line-height:1.5;color:#cbd5e1}.ri-mobileHandoffQr{display:grid;place-items:center;padding:10px;background:#fff;border-radius:10px}.ri-mobileHandoffDialog a{margin-top:16px;font-size:13px;font-weight:600;color:#a5f3fc;text-decoration:underline;text-underline-offset:3px}.ri-mobileHandoffClose{position:absolute;top:10px;right:10px;display:grid;width:30px;height:30px;place-items:center;padding:0;color:#cbd5e1;background:transparent;border:0;border-radius:6px;cursor:pointer}.ri-mobileHandoffClose:hover{color:#fff;background:#ffffff1a}.ri-arHintOverlay{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:10;width:min(calc(100% - 32px),360px);pointer-events:none}.ri-arHint{margin:0 auto;width:fit-content;max-width:100%;padding:6px 12px;font-size:11px;font-weight:500;line-height:1.2;text-align:center;color:#ffffffeb;background:#14141494;border:1px solid rgba(255,255,255,.12);border-radius:999px;user-select:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ri-arOverlay{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:10;width:min(calc(100% - 32px),420px);pointer-events:none}.ri-arControls{display:flex;flex-direction:column;align-items:center;gap:10px}.ri-arStatus,.ri-arActionButton{max-width:100%;padding:8px 16px;font-size:13px;font-weight:600;line-height:1.3;text-align:center;white-space:nowrap;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.16);border-radius:19px;user-select:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-arStatus{pointer-events:none}.ri-arActionButton{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.ri-arActionButton svg{flex-shrink:0}.ri-arActionButton:hover{background:#282828eb;border-color:#ffffff4d}.ri-arActionButton:active{transform:scale(.98)}.ri-arActionButton--primary{color:#06343c;background:#22d3ee;border-color:transparent;box-shadow:0 1px 4px #00000059}.ri-arActionButton--primary:hover{background:#67e8f9;border-color:transparent}.ri-arActionButton.ri-arActionButton--active,.ri-arActionButton[aria-pressed=true],.ri-arActionButton.ri-arActionButton--active:hover,.ri-arActionButton[aria-pressed=true]:hover,.ri-arActionButton.ri-arActionButton--active:active,.ri-arActionButton[aria-pressed=true]:active{color:#06343c;background:#22d3ee;border-color:transparent;box-shadow:0 1px 4px #00000059}.ri-hiddenInput{display:none}.ri-popover{position:absolute;z-index:50;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;color:#111827}.ri-popover--inline{position:static;z-index:auto;width:100%;border-radius:10px;box-shadow:none}.ri-popover--inline .react-colorful{width:100%}.ri-popover--inline{background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text, #f1f5f9)}.ri-popover--inline .ri-popoverHeader{border-bottom-color:var( --ri-databinding-border-strong, rgba(255, 255, 255, .08) )}.ri-popover--inline .ri-popoverLabel,.ri-popover--inline .ri-colorCode{color:var(--ri-databinding-text-muted, #94a3b8)}.ri-popover--inline .ri-secondaryButton{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text, #f1f5f9)}.ri-popover--inline .ri-secondaryButton:hover{background:#ffffff1f}.ri-popover--inline .ri-previewFrame{border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.ri-popover--inline .ri-emptyState{border-color:var(--ri-databinding-border-hover, rgba(255, 255, 255, .15));color:var(--ri-databinding-text-subtle, #64748b)}.ri-popover--inline .ri-uploadButton{background:var(--ri-databinding-accent-gradient, #2563eb);color:#fff}.ri-popover--inline .ri-uploadButton:hover{background:var(--ri-databinding-accent-gradient-active, #1d4ed8)}.ri-popover--inline .ri-removeButton{background:transparent;border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text-muted, #94a3b8)}.ri-popover--inline .ri-removeButton:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06))}.ri-popover--inline .ri-formatHint{color:var(--ri-databinding-text-subtle, #64748b)}.ri-popoverHeader{padding:12px 16px}.ri-popoverLabel{margin:0 0 8px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.16em}.ri-inlineRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.ri-colorCode{font-size:12px;color:#9ca3af;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:uppercase}.ri-secondaryButton{border:1px solid #e5e7eb;background:#f3f4f6;color:#374151;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.ri-secondaryButton:hover{background:#e5e7eb}.ri-materialBody{display:flex;flex-direction:column;gap:12px;padding-left:12px;padding-right:12px;padding-bottom:12px}.ri-previewFrame{position:relative;height:112px;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb}.ri-previewImage{width:100%;height:100%;object-fit:cover;display:block}.ri-previewCaption{position:absolute;left:0;right:0;bottom:0;background:#0006;padding:4px 8px;color:#fff;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-emptyState{height:112px;border-radius:12px;border:2px dashed #e5e7eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#d1d5db;text-align:center}.ri-uploadButton{width:100%;border:0;border-radius:10px;background:#111827;color:#fff;padding:10px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.ri-uploadButton:hover{background:#374151}.ri-removeButton{width:100%;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;padding:8px 12px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.ri-removeButton:hover{background:#f9fafb}.ri-formatHint{margin:0;text-align:center;font-size:10px;color:#d1d5db}.ri-buttonContainer{display:flex;justify-content:space-between;align-items:center;gap:8px;position:absolute;bottom:12px;left:12px;right:12px;z-index:10}.ri-tourControls{display:flex;gap:6px;align-items:center;flex-shrink:0}.ri-rightControls{display:flex;gap:6px;align-items:center;flex-shrink:0;margin-left:auto}.ri-rightControls:only-child{margin-left:auto}.ri-navButtonSingle,.ri-tourButton,.ri-resetButton,.ri-downloadButton{height:34px;background:#141414d1;border:1px solid rgba(255,255,255,.12);color:#ffffffbf;border-radius:8px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;user-select:none;-webkit-tap-highlight-color:transparent}.ri-navButtonSingle:hover:not(:disabled),.ri-tourButton:hover:not(:disabled),.ri-resetButton:hover:not(:disabled){background:#282828eb;color:#fff;border-color:#ffffff40}.ri-navButtonSingle:active:not(:disabled),.ri-tourButton:active:not(:disabled),.ri-resetButton:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-navButtonSingle:disabled,.ri-tourButton:disabled,.ri-resetButton:disabled{opacity:.45;cursor:not-allowed}.ri-navButtonSingle{padding:0 16px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;white-space:nowrap}.ri-tourButton{padding:0 12px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:4px;white-space:nowrap}.ri-tourButton svg{width:15px;height:15px;flex-shrink:0}.ri-tourButton--stop{border-color:#f446;color:#ff6b6b}.ri-tourButton--stop:hover:not(:disabled){background:#ff444426;border-color:#f449;color:#ff6b6b}.ri-tourButton--stop:active:not(:disabled){background:#f44;color:#fff;border-color:#f44}.ri-tourButton--next{border-color:#38dbf04d;color:#38dbf0}.ri-tourButton--next:hover:not(:disabled){background:#38dbf01f;border-color:#38dbf080;color:#38dbf0}.ri-tourButton--next:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-resetButton{width:34px;padding:0;display:flex;align-items:center;justify-content:center}.ri-resetButton svg{width:15px;height:15px;pointer-events:none;flex-shrink:0}.ri-resetButton:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.ri-downloadWrapper{position:relative;display:inline-flex;flex-direction:column;align-items:stretch}.ri-downloadButton{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 16px;font-size:13px;font-weight:500;white-space:nowrap}.ri-downloadButton:hover:not(:disabled){background:#000000b8;border-color:#ffffff4d;color:#fff}.ri-downloadButton:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-downloadButton:disabled{opacity:.45;cursor:not-allowed}.ri-downloadButton__spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:ri-spin .7s linear infinite;flex-shrink:0}.ri-downloadMenu{position:absolute;bottom:calc(100% + 6px);right:0;min-width:168px;background:#141414eb;border:1px solid rgba(255,255,255,.14);border-radius:10px;overflow:hidden;z-index:100;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:ri-menuReveal .12s ease}@keyframes ri-menuReveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ri-downloadMenuItem{display:flex;align-items:center;gap:9px;width:100%;padding:10px 14px;font-size:13px;font-weight:400;color:#fff;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .1s ease;text-wrap:nowrap}.ri-downloadMenuItem:hover:not(:disabled){background:#ffffff1a}.ri-downloadMenuItem:disabled{opacity:.4;cursor:not-allowed}.ri-downloadMenuDivider{height:1px;background:#ffffff1a;margin:0 10px}.ri-downloadMenuNotice{max-width:220px;padding:8px 14px 11px;color:#fca5a5;font-size:11px;line-height:1.4}@keyframes ri-spin{to{transform:rotate(360deg)}}.ri-annotationMarker{position:relative;width:36px;height:36px;border-radius:50%;background:#141414d1;border:2px solid rgba(255,255,255,.9);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;cursor:pointer;z-index:20;user-select:none;box-shadow:0 2px 8px #00000073;pointer-events:auto;transition:opacity .3s ease,transform .3s ease}.ri-annotationMarker:hover{transform:scale(1.08);box-shadow:0 12px 28px #0f172a2e;background:#282828eb}.ri-annotationPopup{position:absolute;width:min(270px,calc(100vw - 32px));background:#141414d9;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;z-index:30;display:flex;flex-direction:column;gap:12px;box-shadow:0 24px 48px #0f172a2e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.ri-annotationInput,.ri-annotationTextarea{width:100%;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#e5e7eb;border-radius:10px;padding:10px 12px;outline:none;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.ri-annotationInput{font-size:14px;font-weight:500}.ri-annotationTextarea{font-size:13px;resize:vertical;min-height:110px}.ri-annotationInput:focus,.ri-annotationTextarea:focus{border-color:#38dbf0;box-shadow:0 0 0 3px #38dbf01f}.ri-annotationActions{display:flex;align-items:center;gap:10px}.ri-annotationOkBtn{border:0;border-radius:8px;background:#38dbf0cc;color:#06343c;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.ri-annotationOkBtn:hover:not(:disabled){background:#38dbf0}.ri-annotationOkBtn:disabled,.ri-annotationOkBtn.disabled{opacity:.5;cursor:not-allowed}.ri-annotationCancelBtn{border:1px solid rgba(255,255,255,.12);background:transparent;color:#9ca3af;border-radius:8px;padding:8px 12px;font-size:13px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.ri-annotationCancelBtn:hover{background:#ffffff0d;border-color:#fff3}.ri-annotationIcons{margin-left:auto;display:flex;align-items:center;gap:12px;color:#9ca3af}.ri-annotationIcons svg{flex-shrink:0}.ri-viewAnnotationPopup{position:relative;background:#141414d9;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:12px 16px;min-width:200px;max-width:min(280px,calc(100vw - 48px));box-shadow:0 8px 24px #00000080;pointer-events:auto;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:ri-viewAnnotationFadeIn .15s ease-out;margin-left:24px;margin-top:-20px;isolation:isolate;z-index:1000}.ri-viewAnnotationClose{background:transparent;border:none;color:#b7bdc6;cursor:pointer;font-size:18px;padding:0 4px;transition:color .2s;line-height:1}.ri-viewAnnotationClose:hover{color:#e2e8f0}.ri-viewAnnotationDescription{margin:0;color:#cbd5e1;font-size:13px;line-height:1.4;word-wrap:break-word}@keyframes ri-viewAnnotationFadeIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ri-annotationNavSingle{position:absolute;bottom:120px;left:50%;transform:translate(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.ri-annotationNavSingle>*{pointer-events:auto}.ri-navBadge{background:#ffffff1a;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:400;color:#ffffffb3}.ri-annotationTitleHint{background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:8px 20px;border-radius:8px;font-size:13px;border:1px solid rgba(255,255,255,.08);text-align:center;max-width:350px;animation:slideUp .3s ease}.ri-annotationHintTitle{font-weight:600;color:#e5e7eb}.ri-annotationHintDesc{font-size:12px;opacity:.6;margin-top:2px;color:#d1d5db}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ri-canvasArea .bb-loadingOverlay{position:absolute;inset:0;z-index:12;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#0f172a75;backdrop-filter:blur(1px)}.ri-canvasArea .bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(226,232,240,.24);border-top-color:#93c5fd;animation:bb-spin .8s linear infinite}.ri-canvasArea .bb-loadingMessage{max-width:320px;color:#f7f8f9;font-size:13px;font-weight:600;line-height:1.5}.ri-largeModelBanner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;pointer-events:auto;max-width:calc(100% - 32px);white-space:normal;text-align:center}.ri-largeModelBanner--offset{top:64px}.ri-largeModelBanner__icon{flex-shrink:0}.ri-largeModelBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.ri-largeModelBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}.ri-uvCheckerBanner{position:absolute;top:12px;right:12px;z-index:20;display:flex;align-items:center;gap:8px;max-width:min(360px,calc(100% - 24px));padding:7px 11px;border:1px solid rgba(244,114,182,.4);border-radius:8px;background:#280a23e6;color:#f9a8d4;font-size:12px;font-weight:500;line-height:1.4;text-align:left;pointer-events:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-uvCheckerBanner__icon{flex-shrink:0}@media(max-width:768px){.ri-xrTools{gap:6px}.ri-xrButton{height:34px;gap:6px;padding:0 8px;font-size:11px}.ri-xrButton svg{width:14px;height:14px}.ri-xrButtonPrefix{display:none}.ri-annotationNavSingle{bottom:100px}.ri-navButtonSingle{padding:8px 20px;font-size:13px;min-width:110px}.ri-annotationTitleHint{padding:6px 14px;font-size:12px;max-width:250px}.ri-viewAnnotationPopup{min-width:160px;max-width:220px;padding:10px 12px}.ri-viewAnnotationTitle{font-size:13px}.ri-viewAnnotationDescription{font-size:12px}.ri-buttonContainer{flex-wrap:wrap;gap:6px}.ri-tourControls,.ri-rightControls{flex-wrap:wrap}}@media(max-width:480px){.ri-xrTools{gap:5px}.ri-xrButton{height:34px;gap:5px;font-size:10px}.ri-xrButton svg{width:13px;height:13px}.ri-annotationNavSingle{bottom:80px}.ri-navButtonSingle{padding:6px 16px;font-size:12px;min-width:90px;gap:6px}.ri-annotationTitleHint{padding:4px 10px;font-size:11px;max-width:200px}.ri-navBadge{font-size:10px;padding:1px 6px}.ri-tourButton{padding:0 8px;font-size:12px}.ri-tourButton span{display:none}.ri-downloadButton{padding:0 10px;font-size:12px}.ri-downloadButton span{display:none}}.ri-license-overlay{display:flex;flex-direction:column;gap:10px;min-width:min(420px,calc(100% - 32px));max-width:min(460px,calc(100% - 32px));padding:20px 28px;border-radius:10px;color:var(--ri-license-overlay-text, #374151);background:var(--ri-license-overlay-bg, rgba(0, 0, 0, .04));border:1px solid var(--ri-license-overlay-border, rgba(0, 0, 0, .08));box-shadow:0 18px 42px #0f172a14}.ri-license-overlay__header{display:flex;align-items:center;gap:10px}.ri-license-overlay__statusDot{width:10px;height:10px;border-radius:999px;background:currentColor;opacity:.7;flex-shrink:0}.ri-license-overlay__icon{flex-shrink:0}.ri-license-overlay__title{font-size:14px;font-weight:700;line-height:1.2}.ri-license-overlay__message{margin:0;font-size:14px;font-weight:500;line-height:1.5}.ri-license-overlay--error{color:var(--ri-license-overlay-error-text, #c0392b);background:var(--ri-license-overlay-error-bg, rgba(192, 57, 43, .06));border:1px solid var(--ri-license-overlay-error-border, rgba(192, 57, 43, .2))}.ri-annotationMarker--hovered{transform:scale(1.08);box-shadow:0 12px 28px #0f172a2e;background:#282828eb}.ri-viewAnnotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ri-viewAnnotationTitle{margin:0;color:#e2e8f0;font-size:14px;font-weight:600}.mc__wrapper{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:100}.mc__dpad{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:20px}.mc__middle-row{display:flex;align-items:center;gap:2px}.mc__joystick{width:60px;height:60px;flex-shrink:0;background:radial-gradient(circle at 40% 35%,#ffffff12,#0000008c);border-radius:50%;border:1.5px solid rgba(255,255,255,.15);position:relative;cursor:grab;touch-action:none;transition:border-color .2s ease,box-shadow .2s ease;margin:4px;box-shadow:0 4px 16px #00000080,0 0 0 4px #ffffff08}.mc__joystick:hover{border-color:#ffffff47;box-shadow:0 4px 20px #0000008c,0 0 0 4px #4285f414}.mc__joystick:active{cursor:grabbing;border-color:#4285f499;box-shadow:0 2px 12px #00000080,0 0 4px #4285f426}.mc__knob{position:absolute;top:50%;left:50%;width:34px;height:34px;margin-left:-17px;margin-top:-17px;background:linear-gradient(145deg,#5a9bf5,#1a66d9);border-radius:50%;cursor:grab;box-shadow:0 3px 10px #1a66d980,0 1px #ffffff40 inset;transition:transform .04s linear,box-shadow .1s ease;border:1.5px solid rgba(255,255,255,.45)}.mc__joystick:active .mc__knob{box-shadow:0 2px 16px #4285f4b3,0 1px #ffffff40 inset;animation:pulse .6s ease infinite}.mc__arrow{padding:0;margin:0;background:transparent;border:none;border-radius:0;box-shadow:none;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .1s ease,filter .15s ease;overflow:visible}.mc__arrow svg{display:block!important;pointer-events:none!important;user-select:none!important;-webkit-user-select:none!important;overflow:visible!important}.mc__arrow--up{margin-bottom:2px}.mc__arrow--up:hover{transform:scale(1.15) translateY(-2px);filter:drop-shadow(0 4px 12px rgba(66,133,244,.8))}.mc__arrow--up:active{transform:scale(.92) translateY(2px)}.mc__arrow--down{margin-top:2px}.mc__arrow--down:hover{transform:scale(1.15) translateY(2px);filter:drop-shadow(0 -4px 12px rgba(66,133,244,.8))}.mc__arrow--down:active{transform:scale(.92) translateY(-2px)}.mc__arrow--left{margin-right:2px}.mc__arrow--left:hover{transform:scale(1.15) translate(-2px);filter:drop-shadow(4px 0 12px rgba(66,133,244,.8))}.mc__arrow--left:active{transform:scale(.92) translate(2px)}.mc__arrow--right{margin-left:2px}.mc__arrow--right:hover{transform:scale(1.15) translate(2px);filter:drop-shadow(-4px 0 12px rgba(66,133,244,.8))}.mc__arrow--right:active{transform:scale(.92) translate(-2px)}@keyframes pulse{0%,to{box-shadow:0 2px 16px #4285f499,0 1px #ffffff40 inset;opacity:.85}50%{box-shadow:0 4px 24px #4285f4f2,0 1px #ffffff40 inset;opacity:1}}@media(max-width:768px){.mc__wrapper{bottom:-5px}.mc__joystick{width:68px;height:68px}.mc__knob{width:30px;height:30px;margin-left:-15px;margin-top:-15px}.mc__arrow--up:hover{transform:scale(1.1) translateY(-1px)}.mc__arrow--down:hover{transform:scale(1.1) translateY(1px)}.mc__arrow--left:hover{transform:scale(1.1) translate(-1px)}.mc__arrow--right:hover{transform:scale(1.1) translate(1px)}}@media(max-width:480px){.mc__joystick{width:56px;height:56px}.mc__knob{width:26px;height:26px;margin-left:-13px;margin-top:-13px}.mc__arrow--up{margin-bottom:1px}.mc__arrow--down{margin-top:1px}.mc__arrow--left{margin-right:1px}.mc__arrow--right{margin-left:1px}}@media(hover:none){.mc__arrow:hover{transform:none!important;filter:none!important}.mc__arrow:active{transform:scale(.92)!important}}.left-panel{width:280px;min-height:0;background:var(--ri-databinding-bg, #111318);border-right:1px solid var(--ri-databinding-border, rgba(255, 255, 255, .06));display:flex;flex-direction:column;padding:24px 18px;overflow-y:auto;font-family:var( --ri-databinding-font-family, "Inter", "Segoe UI", sans-serif );flex-shrink:0;transition:margin-left .45s cubic-bezier(.4,0,.2,1);box-shadow:var(--ri-databinding-shadow, 4px 0 24px rgba(0, 0, 0, .35))}.left-panel--open{margin-left:0}.left-panel--closed{margin-left:-280px}.left-panel::-webkit-scrollbar{width:4px}.left-panel::-webkit-scrollbar-track{background:transparent}.left-panel::-webkit-scrollbar-thumb{background:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:4px}.left-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__title{font-size:14px;font-weight:600;color:var(--ri-databinding-text, #f1f5f9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px;margin:0;letter-spacing:.02em}.left-panel__close-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:6px;color:var(--ri-databinding-text-subtle, #64748b);font-size:13px;flex-shrink:0;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.left-panel__close-btn:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));color:var(--ri-databinding-text-hover, #cbd5e1);border-color:var(--ri-databinding-border-hover, rgba(255, 255, 255, .15))}.left-panel__data{padding:12px 6px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:10px;font-size:11px;font-family:var( --ri-databinding-mono-font-family, "JetBrains Mono", "Fira Code", "Menlo", monospace );color:var(--ri-databinding-text-muted, #94a3b8);line-height:1.7;overflow-x:auto;margin-bottom:18px}.left-panel__divider{border:none;border-top:1px solid var(--ri-databinding-border, rgba(255, 255, 255, .06));margin-bottom:16px}.left-panel__actions-label{font-size:10px;font-weight:600;color:var(--ri-databinding-text-faint, #475569);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.left-panel__actions-list{display:flex;flex-direction:column;gap:6px}.left-panel__action-extra{display:grid;grid-template-rows:0fr;opacity:0;margin-top:0;transition:grid-template-rows .28s cubic-bezier(.4,0,.2,1),opacity .2s ease,margin-top .28s cubic-bezier(.4,0,.2,1)}.left-panel__action-extra--open{grid-template-rows:1fr;opacity:1;margin-top:4px}.left-panel__action-extra-inner{overflow:hidden;min-height:0}.left-panel__action-btn{position:relative;padding:9px 14px;border-radius:8px;text-align:left;font-size:13px;font-weight:500;cursor:pointer;overflow:hidden;border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));color:var(--ri-databinding-text-muted, #94a3b8);letter-spacing:.01em}.left-panel__action-btn:active{transform:scale(.97)}.left-panel__action-btn--active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--ri-databinding-accent, #93c5fd);border-radius:0 3px 3px 0;box-shadow:0 0 8px var(--ri-databinding-accent-glow, rgba(147, 197, 253, .8))}.left-panel__action-btn--active:hover{background:var( --ri-databinding-accent-gradient, linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 60%, #2563eb 100%) );border-color:var(--ri-databinding-accent-border, rgba(96, 165, 250, .55))}.left-panel__action-btn--active:active{transform:scale(.97);background:var( --ri-databinding-accent-gradient-active, linear-gradient(135deg, #1e3a8a 0%, #1e40af 100%) )}.left-panel__data{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}.left-panel__data-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:7px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.left-panel__data-row:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-key{font-size:11px;font-weight:600;color:var(--ri-databinding-text-faint, #475569);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;flex-shrink:0}.left-panel__data-value{font-size:12px;font-family:var( --ri-databinding-mono-font-family, "JetBrains Mono", "Fira Code", "Menlo", monospace );text-align:right;overflow-wrap:anywhere;word-break:break-word;min-width:0}.left-panel__data-group{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-radius:7px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.left-panel__data-group:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-children{display:flex;flex-direction:column;gap:2px;margin-top:4px;padding-left:10px;border-left:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-children .left-panel__data-row,.left-panel__data-children .left-panel__data-group{padding:3px 0;background:transparent;border-color:transparent}.left-panel__data-children .left-panel__data-row:hover,.left-panel__data-children .left-panel__data-group:hover{background:transparent}@media(max-width:900px){.left-panel{width:50vw}.left-panel--open{margin-left:0}.left-panel--closed{margin-left:-50vw}.left-panel{padding:18px 12px}.left-panel__data-row{flex-direction:column;align-items:stretch;gap:2px;padding:6px 8px}.left-panel__data-group{padding:6px 8px}.left-panel__data-value{text-align:left;font-size:11.5px}.left-panel__data-children{padding-left:8px}}.ri-sidepanel-wrap{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible}.ri-sidepanel-wrap--open{width:300px;flex-shrink:0}.ri-sidepanel-wrap--closed{width:0;flex-shrink:0;overflow:hidden}.ri-sidepanel__open-btn{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:7px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-open-btn-bg, rgba(20, 20, 20, .82));cursor:pointer;font-size:13px;font-weight:500;color:var(--ri-sidepanel-text-muted, #94a3b8);z-index:190;transition:background .15s}.ri-sidepanel__open-btn:hover{background:var(--ri-sidepanel-open-btn-bg-hover, #27282b7e)}.ri-sidepanel{position:absolute;top:0;right:0;width:300px;height:100%;background:var(--ri-sidepanel-bg, #141824);display:flex;flex-direction:column;font-family:var( --ri-sidepanel-font-family, Inter, "Segoe UI", Helvetica, Arial, sans-serif );transform:translate(100%);transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:200;border-left:1px solid var(--ri-sidepanel-border, rgba(255, 255, 255, .06));box-shadow:var(--ri-sidepanel-shadow-right, -4px 0 24px rgba(0, 0, 0, .35))}.ri-sidepanel--open{transform:translate(0)}.ri-sidepanel--closed{transform:translate(100%)}.ri-sidepanel__header{padding:24px 20px 16px;border-bottom:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08))}.ri-sidepanel__header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.ri-sidepanel__eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--ri-sidepanel-text-subtle, #64748b);text-transform:uppercase}.ri-sidepanel__title{font-size:22px;font-weight:700;color:var(--ri-sidepanel-text, #f1f5f9);margin:0;line-height:1.2}.ri-sidepanel__close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05));cursor:pointer;color:var(--ri-sidepanel-text-muted, #94a3b8);transition:background .15s,color .15s;flex-shrink:0}.ri-sidepanel__close-btn:hover{background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .1));color:var(--ri-sidepanel-text, #f1f5f9)}.ri-sidepanel__search-wrap{padding:14px 16px;border-bottom:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08))}.ri-sidepanel__search{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05));color:var(--ri-sidepanel-text, #e2e8f0);font-size:13px;outline:none;box-sizing:border-box;transition:border-color .15s,background .15s}.ri-sidepanel__search::placeholder{color:var(--ri-sidepanel-placeholder, #475569)}.ri-sidepanel__search:focus{border-color:var(--ri-sidepanel-border-active, rgba(255, 255, 255, .18));background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .08))}.ri-sidepanel__list{display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;flex:1}.ri-sidepanel__list::-webkit-scrollbar{width:4px}.ri-sidepanel__list::-webkit-scrollbar-track{background:transparent}.ri-sidepanel__list::-webkit-scrollbar-thumb{background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .1));border-radius:4px}.ri-sidepanel__row{display:flex;justify-content:space-between;padding:12px 20px;cursor:pointer;width:100%;border:none;background:transparent;color:inherit;font:inherit;text-align:left;appearance:none;-webkit-appearance:none;transition:background .12s;border-bottom:1px solid var(--ri-sidepanel-divider, rgba(255, 255, 255, .04))}.ri-sidepanel__row:hover,.ri-sidepanel__row--hovered{background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05))}.ri-sidepanel__row--selected{background:var(--ri-sidepanel-accent-soft, rgba(59, 130, 246, .12))}.ri-sidepanel__label{font-size:14px;font-weight:600;color:var(--ri-sidepanel-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-sidepanel__label--hovered,.ri-sidepanel__label--selected{color:var(--ri-sidepanel-text-emphasis, #ffffff)}.ri-sidepanel__meta{font-size:12px;color:var(--ri-sidepanel-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-sidepanel__vis-btn{display:flex;align-items:center;flex-shrink:0;cursor:pointer;background:none;border:none;padding:0;margin-left:10px}.ri-sidepanel__checkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--ri-sidepanel-border-active, rgba(255, 255, 255, .2));background:transparent;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.ri-sidepanel__checkbox--checked{background:var(--ri-sidepanel-accent, #3b82f6);border-color:var(--ri-sidepanel-accent, #3b82f6)}@media(max-width:900px){.ri-sidepanel-wrap--open,.ri-sidepanel{width:50vw}}.bb-root{--bb-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--bb-app-bg: radial-gradient( circle at top left, rgba(226, 232, 240, .8), transparent 30% ), linear-gradient(135deg, #f6f1e8 0%, #ebe8df 40%, #e9edf2 100%);--bb-app-text: #111827;--bb-sidebar-bg: linear-gradient(180deg, rgba(20, 27, 45, .98), rgba(25, 34, 57, .95)), #121826;--bb-sidebar-text: #f8fafc;--bb-sidebar-muted-text: #b3bfd2;--bb-sidebar-subtle-text: #94a3b8;--bb-sidebar-border: rgba(148, 163, 184, .18);--bb-sidebar-border-hover: rgba(148, 163, 184, .32);--bb-sidebar-divider: rgba(148, 163, 184, .14);--bb-sidebar-surface: rgba(255, 255, 255, .04);--bb-sidebar-surface-hover: rgba(255, 255, 255, .08);--bb-sidebar-surface-strong: rgba(255, 255, 255, .05);--bb-sidebar-eyebrow-bg: rgba(148, 163, 184, .16);--bb-sidebar-eyebrow-text: #cbd5e1;--bb-sidebar-left-shadow: 18px 0 42px rgba(15, 23, 42, .12);--bb-sidebar-right-shadow: -4px 0 24px rgba(0, 0, 0, .35);--bb-sidebar-chip-bg: rgba(15, 23, 42, .42);--bb-sidebar-chip-border: rgba(148, 163, 184, .14);--bb-sidebar-accent: rgba(99, 102, 241, .18);--bb-sidebar-accent-border: rgba(99, 102, 241, .4);--bb-sidebar-accent-text: #f8fafc;--bb-menu-bg: #1a1f2e;--bb-menu-shadow: 0 16px 32px rgba(15, 23, 42, .4);display:flex;height:100%;min-height:0;width:100%;background:var(--bb-app-bg);color:var(--bb-app-text);font-family:var(--bb-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.bb-root *{box-sizing:border-box}.bb-root input,.bb-root select,.bb-root textarea,.bb-root button{font-family:inherit}.bb-sidebar{width:400px;min-height:0;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bb-sidebar-bg);color:var(--bb-sidebar-text);transition:width .24s ease}.bb-sidebar--left{border-right:1px solid var(--bb-sidebar-border);box-shadow:var(--bb-sidebar-left-shadow)}.bb-sidebar--right{width:300px;border-left:1px solid var(--bb-sidebar-border);box-shadow:var(--bb-sidebar-right-shadow)}.bb-sidebar--collapsed{width:36px}.bb-sidebar--collapsed .bb-header{padding:5px;display:flex;justify-content:center}.bb-sidebar--collapsed .bb-header--sidebar{min-height:36px}.bb-sidebar--collapsed .bb-sidebarToggle{width:26px;height:26px;font-size:12px}.bb-header{padding:5px 20px;border-bottom:1px solid var(--bb-sidebar-divider)}.bb-header--sidebar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px}.bb-eyebrow{display:inline-block;margin-bottom:12px;padding:6px 10px;border-radius:999px;background:var(--bb-sidebar-eyebrow-bg);color:var(--bb-sidebar-eyebrow-text);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.bb-title{margin:0;font-size:20px;line-height:.95;letter-spacing:-.04em;font-weight:800;color:var(--bb-sidebar-text)}.bb-sidebarToggle{width:36px;height:36px;flex-shrink:0;border-radius:6px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface-strong);color:var(--bb-sidebar-text);font-size:16px;font-weight:800;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.bb-sidebarToggle:hover{transform:translateY(-1px);background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-subtitle{margin:0;max-width:32ch;font-size:15px;line-height:1.7;color:var(--bb-sidebar-muted-text)}.bb-statRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.bb-statChip{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border-radius:8px;background:var(--bb-sidebar-chip-bg);border:1px solid var(--bb-sidebar-chip-border);box-shadow:inset 0 1px #ffffff0a}.bb-statChip strong{font-size:13px;color:var(--bb-sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-statLabel{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bb-sidebar-subtle-text)}.bb-tabRow{display:flex;gap:6px;padding:10px 20px}.bb-tab{flex:1;padding:6px 10px;border-radius:6px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-muted-text);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.bb-tab:hover{background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-tab--active{background:var(--bb-sidebar-accent);border-color:var(--bb-sidebar-accent-border);color:var(--bb-sidebar-accent-text)}.bb-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 20px;border-bottom:1px solid var(--bb-sidebar-divider);flex-wrap:wrap}.bb-toolbarGroup{display:flex;align-items:center;gap:6px;min-width:0}.bb-toolbarDivider{width:1px;align-self:stretch;background:var(--bb-sidebar-divider);margin:0}.bb-iconButton{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:7px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-text);cursor:pointer;transition:background-color .18s ease,border-color .18s ease}.bb-iconButton:hover:not(:disabled){background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-iconButton:disabled{opacity:.4;cursor:not-allowed}.bb-transformAxesGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bb-transformAxis{min-width:0}.bb-transformAxisLabel{display:block;width:auto;margin-bottom:4px;font-size:12px;font-weight:600}.bb-transformNumberInput{box-sizing:border-box;width:100%;min-width:0;padding-right:3px;padding-left:3px;text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}.bb-exportMenuWrapper{position:relative;display:inline-flex}.bb-exportMenu{position:absolute;bottom:calc(100% + 6px);right:0;z-index:20;display:flex;flex-direction:column;min-width:150px;padding:6px;border-radius:9px;border:1px solid var(--bb-sidebar-border);background:var(--bb-menu-bg);box-shadow:var(--bb-menu-shadow)}.bb-exportMenuItem{display:flex;align-items:center;gap:8px;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--bb-sidebar-text);font-size:12px;font-weight:600;text-align:left;cursor:pointer}.bb-exportMenuItem:hover{background:var(--bb-sidebar-surface-hover)}@media(max-width:640px){.bb-toolbarDivider{width:100%;height:1px}}.bb-button,.bb-fileLabel{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;border-radius:7px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-text);font-size:12px;font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.bb-button:hover,.bb-fileLabel:hover{transform:translateY(-1px);background:#ffffff14;border-color:#94a3b852;box-shadow:0 10px 18px #0f172a2e}.bb-button:disabled,.bb-fileLabel:has(.bb-hiddenInput:disabled){opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.bb-button--ghost{background:#f8fafc14}.bb-hiddenInput{display:none}.bb-statusCard{margin-top:4px;padding:14px 16px;border-radius:9px;background:#0f172a70;border:1px solid rgba(148,163,184,.15)}.bb-statusCard--error{background:#7f1d1d52;border-color:#f871713d}.bb-statusCard--success{background:#064e3b57;border-color:#34d3993d}.bb-statusTitle{margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#cbd5e1}.bb-status{font-size:13px;line-height:1.55;color:#e2e8f0}.bb-status--error{color:#fecaca}.bb-status--success{color:#bbf7d0}.bb-input--error{border-color:#dc2626}.bb-nodeList{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;background:#141824}.bb-sectionHead{padding:24px 20px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.bb-sectionKicker{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#64748b}.bb-sectionHeading{margin-top:4px;font-size:22px;font-weight:700;line-height:1.2;color:#f1f5f9}.bb-search{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.bb-input,.bb-select,.bb-textarea{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0d;color:#e2e8f0;padding:10px 14px;font-size:13px;line-height:1.45}.bb-input::placeholder,.bb-textarea::placeholder{color:#475569}.bb-input--compact{width:64px;max-width:64px;flex:0 0 auto;padding:7px 4px;text-align:center}.bb-input:focus,.bb-select:focus,.bb-textarea:focus{outline:none;border-color:#ffffff2e;background:#ffffff14;box-shadow:none}.bb-textarea{min-height:110px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.bb-nodeItems{min-height:0;overflow-y:auto;padding:10px 0}.bb-nodeButton{width:100%;border:0;border-radius:0;background:transparent;padding:12px 20px;margin-bottom:0;text-align:left;cursor:pointer;transition:background-color .12s ease,color .12s ease;border-bottom:1px solid rgba(255,255,255,.04)}.bb-nodeButton:hover{background:#ffffff0d}.bb-nodeButton--active{background:#ffffff0d;box-shadow:none}.bb-nodeName{display:block;margin-bottom:2px;font-size:14px;font-weight:600;color:#e2e8f0}.bb-nodeMeta{display:block;font-size:11px;color:#94a3b8}.bb-editor{flex:1 1 auto;min-height:0;height:100%;overflow-y:auto;padding:16px 16px 28px;overscroll-behavior:contain}.bb-editorHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;padding:18px;border-radius:11px;background:#ffffff0d;border:1px solid rgba(148,163,184,.12)}.bb-editorTitle{margin:8px 0 0;font-size:24px;line-height:1.1;color:#f8fafc}.bb-editorMeta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:10px;font-size:12px;color:#94a3b8}.bb-editorBadge{flex-shrink:0;padding:8px 12px;border-radius:999px;background:#fbbf241f;border:1px solid rgba(251,191,36,.2);color:#fcd34d;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.bb-emptyEditor{padding:28px 8px;font-size:14px;color:#a7b1c3}.bb-section{margin-bottom:10px;border-radius:7px;background:#ffffff08;border:1px solid rgba(148,163,184,.12);overflow:hidden}.bb-sectionHeaderButton{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;background:#ffffff08;padding:11px 14px;cursor:pointer;text-align:left;color:inherit}.bb-sectionHeaderButton:hover{background:#ffffff0f}.bb-sectionHeaderMain{display:flex;min-width:0;align-items:center;gap:8px}.bb-sectionChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.bb-sectionChevron--open{transform:rotate(0)}.bb-sectionBody{display:flex;flex-direction:column;gap:4px;padding:14px;border-top:1px solid rgba(148,163,184,.1)}.bb-sectionTitle{margin:0;font-size:11px;font-weight:700;color:#c3cbdb;letter-spacing:.14em;text-transform:uppercase}.bb-sectionHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.bb-sectionHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.bb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bb-presetGallery{display:flex;justify-items:center;flex-wrap:wrap;gap:4px;margin-bottom:14px}.bb-presetSwatch{display:flex;flex-direction:column;align-items:center;gap:5px;width:64px;padding:6px 4px;border-radius:8px;border:1px solid rgba(148,163,184,.18);background:#94a3b80f;cursor:pointer;transition:border-color .15s,background .15s}.bb-presetSwatch:hover:not(:disabled){border-color:#94a3b866;background:#94a3b81f}.bb-presetSwatch:disabled{opacity:.4;cursor:not-allowed}.bb-presetSwatchColor{width:32px;height:32px;border-radius:999px;border:1px solid rgba(255,255,255,.18)}.bb-presetSwatchLabel{font-size:10px;font-weight:600;color:#cbd5e1;text-align:center;line-height:1.2}.bb-field{display:flex;flex-direction:column;gap:5px}.bb-field--full{grid-column:1 / -1}.bb-label{font-size:12px;font-weight:700;color:#d7dee9}.bb-note{font-size:11px;color:#8b97ab}.bb-linkButton{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.bb-linkButton:hover{color:#f8fafc}.bb-tierLock{display:flex;align-items:center;gap:10px;padding:16px 14px;border-radius:7px;background:#fbbf2414;border:1px dashed rgba(251,191,36,.3);color:#fcd34d}.bb-tierLockMessage{margin:0;font-size:12px;font-weight:600}.bb-root--licenseChecking,.bb-root--licenseInvalid{align-items:center;justify-content:center}.bb-readonly{background:#94a3b814;color:#9ca3af}.bb-checkboxRow{display:flex;flex-wrap:wrap;gap:10px}.bb-checkbox{display:inline-flex;align-items:center;gap:8px;padding:6px 5px;border-radius:7px;background:#0f172a38;border:1px solid rgba(148,163,184,.12);font-size:13px;color:#d7dee9}.bb-checkbox input{accent-color:#f59e0b}.bb-sliderField{display:flex;align-items:center;gap:10px}.bb-slider{flex:1 1 auto;min-width:0;accent-color:#2aa8d8}.bb-slider--unset{opacity:.45}.bb-fileField{position:relative;display:flex;align-items:center}.bb-fileField-input{width:100%;padding-right:40px}.bb-fileFieldButton{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;background:transparent;color:#aab4c5;cursor:pointer}.bb-fileFieldButton:hover{background:#ffffff14;color:#f8fafc}.bb-materialPanel{margin-top:8px;border:1px solid rgba(148,163,184,.14);border-radius:6px;background:#0f172a47;overflow:hidden}.bb-materialPanel:first-of-type{margin-top:0}.bb-materialPanelHeader{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;padding:10px 12px;background:#ffffff08;cursor:pointer;text-align:left;color:inherit}.bb-materialPanelHeader:hover{background:#ffffff0f}.bb-materialPanelTitleWrap{display:inline-flex;align-items:center;gap:8px;color:#dbe4f0}.bb-materialPanelChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.bb-materialPanelChevron--open{transform:rotate(0)}.bb-materialPanelTitle{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.bb-materialPanelHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.bb-materialPanelHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.bb-materialPanelBody{padding:12px;border-top:1px solid rgba(148,163,184,.1);display:flex;flex-direction:column;gap:10px}.bb-actionList{display:flex;flex-direction:column;gap:12px}.bb-actionCard{border:1px solid rgba(148,163,184,.14);border-radius:9px;padding:14px;background:#0f172a33}.bb-actionCardHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.bb-actionCardTitle{font-size:13px;font-weight:700;color:#f8fafc}.bb-actionCardMeta{flex-shrink:0;padding:5px 9px;border-radius:999px;background:#94a3b81f;color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.bb-actionGrid{display:grid;grid-template-columns:1fr;gap:10px}.bb-actionFooter{margin-top:12px}.bb-actionRemove{width:100%}.bb-cameraRowWithHint{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bb-moveHint{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;white-space:nowrap;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffb3;border:1px solid rgba(148,163,184,.18);color:#475569;font-size:12px;font-weight:700}.bb-moveHint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin:0 1px;border-radius:4px;background:#bfbebe5f;border:1px solid rgba(255,255,255,.2);color:#000;font-family:inherit;font-size:10px;font-weight:700;line-height:1}.bb-previewShell{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;padding:5px;overflow:hidden}.bb-previewHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 4px 10px}.bb-previewControls{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex-wrap:wrap}.bb-previewControlsColumn{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.bb-previewTitle{margin:2px 0 0;font-size:20px;line-height:1.05;letter-spacing:-.03em;color:#1f2937}.bb-previewToggles{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.bb-checkbox--compact{gap:5px;padding:0;background:transparent;border:none;font-size:10px;font-weight:500;line-height:1;color:#4b5563}.bb-checkbox--compact:hover{background:transparent;transform:none}.bb-checkbox--compact input[type=checkbox]{width:11px;height:11px}.bb-previewMeta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.bb-removeModelButton{background-color:#ae3636;min-height:34px;padding:0 14px}.bb-removeModelButton:hover{background-color:#a31414}.bb-previewMeta span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffb3;border:1px solid rgba(148,163,184,.18);color:#475569;font-size:12px;font-weight:700}.bb-preview{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;border-radius:14px;background:radial-gradient(circle at top left,#ffffffeb,#ecf0f4d1),#f8fafc;border:1px solid rgba(148,163,184,.24);box-shadow:0 24px 48px #94a3b833,inset 0 1px #ffffffb3}.bb-loadingOverlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#f8fafcd1;backdrop-filter:blur(2px)}.bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(148,163,184,.3);border-top-color:#2563eb;animation:bb-spin .8s linear infinite}.bb-loadingMessage{max-width:320px;color:#475569;font-size:13px;font-weight:600;line-height:1.5}.bb-previewStatus{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-previewStatus--success{background:#22c55e1f!important;border-color:#22c55e4d!important;color:#15803d!important}.bb-previewStatus--error{background:#ef44441f!important;border-color:#ef44444d!important;color:#b91c1c!important}.bb-previewModelName{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-previewPlaceholder{position:relative;display:flex;height:100%;width:100%;align-items:center;justify-content:center;padding:40px;text-align:center;color:#64748b;font-size:15px;line-height:1.7;border-radius:14px;border:2px dashed rgba(148,163,184,.24);background:radial-gradient(circle at top,rgba(251,191,36,.12),transparent 30%),linear-gradient(180deg,#ffffffd1,#eef2f8e6);transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.bb-previewPlaceholder>div{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:14px}.bb-previewPlaceholderTitle{font-size:28px;line-height:1.05;letter-spacing:-.03em;font-weight:800;color:#1f2937}.bb-previewPlaceholderButton{margin-top:8px;border:0;border-radius:999px;padding:13px 22px;background:#135bc0;color:#fff;font-size:14px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.bb-previewPlaceholderButton:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px #135bc047}.bb-previewPlaceholderButton:disabled{opacity:.6;cursor:not-allowed}.bb-previewPlaceholder--dragActive{border-color:#f59e0bbf;background:radial-gradient(circle at top,rgba(251,191,36,.22),transparent 32%),linear-gradient(180deg,#fffcf5f2,#fff4e6eb);transform:scale(.995);box-shadow:inset 0 0 0 1px #f59e0b24}.bb-sectionHeader{cursor:pointer;user-select:none}.bb-iconButton{background:none;border:none;cursor:pointer;font-size:16px;color:var(--bb-sidebar-subtle-text);transition:color .2s ease;padding:4px 8px;border-radius:4px}.bb-iconButton:hover{color:var(--bb-sidebar-text);background:var(--bb-sidebar-surface-strong)}.bb-cameraLive,.bb-cameraSaved{background:#0f172a70;border-radius:8px;padding:14px;margin-bottom:16px;border:1px solid rgba(148,163,184,.15);transition:all .2s ease}.bb-cameraLive:hover,.bb-cameraSaved:hover{border-color:#94a3b840;background:#0f172a85}.bb-cameraLiveHeader,.bb-cameraSavedHeader{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.15)}.bb-cameraLiveBadge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;letter-spacing:.5px;text-transform:uppercase}.bb-cameraSavedBadge{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;letter-spacing:.5px;text-transform:uppercase}.bb-cameraLiveLabel,.bb-cameraSavedLabel{font-size:12px;font-weight:600;color:#cbd5e1}.bb-cameraValues{display:flex;flex-direction:column;gap:8px}.bb-cameraRow{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.bb-cameraLabel{font-weight:600;color:#94a3b8;min-width:58px;font-size:11px;letter-spacing:.02em}.bb-cameraCode{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:11px;background:#0000004d;padding:3px 8px;border-radius:4px;color:#fcd34d;letter-spacing:.02em;word-break:break-all}.bb-cameraPlaceholder{color:#94a3b8;font-size:12px;text-align:center;padding:16px;font-style:italic}.bb-cameraControls{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.bb-button--primary:hover:not(:disabled){background:#1a68d6;transform:translateY(-1px)}.bb-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.bb-cameraMessage{padding:10px 14px;border-radius:6px;margin-bottom:14px;font-size:12px;font-weight:500;animation:slideIn .3s ease-out}.bb-cameraMessage--success{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.bb-cameraMessage--error{background:#ef444426;color:#ffe5e55c;border:1px solid rgba(255,248,248,.3)}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.bb-readonly{background:#94a3b814;color:#9ca3af;cursor:default}@media(max-width:980px){.bb-sidebar--left{width:100%;max-height:42vh}.bb-sidebar--collapsed{width:100%}.bb-previewShell{padding:14px}.bb-preview{min-height:44vh}.bb-previewHeader{flex-direction:column;align-items:flex-start}.bb-previewControls{width:100%;justify-content:flex-start}.bb-previewMeta{justify-content:flex-start}.bb-grid,.bb-actionGrid,.bb-statRow{grid-template-columns:1fr}}.bb-emptyAnnotations{padding:32px;text-align:center;background:#f5f5f5;border-radius:4px;color:#666;font-size:14px}.bb-annotationCard{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;padding:12px;transition:all .2s ease}.bb-annotationCard:hover{background:#fff;border-color:#4caf50;box-shadow:0 2px 8px #0000001a}.bb-annotationBadge{background:#4caf50;color:#fff;padding:2px 8px;border-radius:2px;font-size:11px;font-weight:600}.bb-annotationActions{display:flex;gap:8px}.bb-annotationEdit,.bb-annotationDelete{background:transparent;border:none;cursor:pointer;padding:4px;border-radius:2px;font-size:14px;transition:all .2s ease}.bb-annotationEdit:hover{background:#e8f5e9;transform:scale(1.05)}.bb-annotationDelete:hover{background:#ffebee;transform:scale(1.05)}.bb-annotationTitle{font-weight:600;font-size:14px;color:#333;margin-bottom:6px}.bb-annotationDescription{font-size:13px;color:#666;margin-bottom:8px;line-height:1.4}.bb-annotationPosition{font-size:11px;font-family:monospace;color:#999;background:#f0f0f0;padding:4px 6px;border-radius:2px;display:inline-block}.bb-modalOverlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-modal{background:#fff;border-radius:6px;width:500px;max-width:90%;box-shadow:0 8px 32px #0003;animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.bb-modalHeader{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0}.bb-modalHeader h3{margin:0;font-size:18px;font-weight:600}.bb-modalClose{background:transparent;border:none;font-size:20px;cursor:pointer;color:#999;transition:color .2s ease}.bb-modalClose:hover{color:#333}.bb-modalBody{padding:20px}.bb-modalFooter{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0}.bb-annotationsInfo{margin-top:8px}.bb-annotationsList{display:flex;flex-direction:column;gap:12px}.bb-annotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bb-annotationActions{display:flex;gap:4px}.bb-annotationAction{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:2px;display:flex;align-items:center;justify-content:center;transition:all .2s}.bb-annotationAction--edit:hover{border-radius:50%;background:#3b82f633;color:#3b82f6}.bb-annotationAction--delete:hover{border-radius:50%;background:#ef444433;color:#ef4444}.bb-editSpotOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-editSpotPopup{background:linear-gradient(180deg,#141b2dfa,#192239f2),#121826;border-radius:8px;padding:24px;min-width:400px;max-width:500px;border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 48px #0f172a4d}.bb-editSpotHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bb-editSpotTitle{color:#f8fafc;font-size:18px;font-weight:600;margin:0}.bb-editSpotClose{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;padding:0 4px;transition:color .2s ease}.bb-editSpotClose:hover{color:#f8fafc}.bb-editSpotBody{display:flex;flex-direction:column;gap:12px}.bb-editSpotBody .bb-input,.bb-editSpotBody .bb-textarea{background:#0f172a66;border-color:#94a3b833;color:#f8fafc}.bb-editSpotBody .bb-input:focus,.bb-editSpotBody .bb-textarea:focus{border-color:#fbbf24a6;box-shadow:0 0 0 4px #fbbf241f}.bb-editSpotBody .bb-label{color:#d7dee9}.bb-editSpotActions{display:flex;gap:8px;margin-top:8px}.bb-editSpotActions .bb-button{background:#ffffff0a;border:1px solid rgba(148,163,184,.18);color:#e5edf7}.bb-editSpotActions .bb-button:hover{background:#ffffff14;border-color:#94a3b852;transform:translateY(-1px)}.bb-button--danger{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:7px;cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;gap:4px;transition:all .2s ease}.bb-button--danger:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 10px 18px #ef444440}.bb-button--primary{background:#135bc0;border-color:transparent;color:#fff}.bb-button--primary:hover{background:#1a68d6}.bb-annotationCard{background:#0f172a70;border-left:4px solid #22d3ee;border-radius:8px;padding:16px;transition:all .2s ease;border:1px solid rgba(148,163,184,.15);box-shadow:inset 0 1px #ffffff08}.bb-annotationCard:hover{transform:translate(4px);background:#0f172a99;border-color:#94a3b840;box-shadow:0 4px 12px #0f172a4d}.bb-annotationBadge{display:inline-block;background:#22d3ee;color:#06343c;padding:2px 10px;border-radius:10px;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.bb-annotationTitle{font-weight:700;font-size:15px;color:#f8fafc;margin-bottom:8px;line-height:1.3}.bb-annotationDescription{font-size:13px;color:#cbd5e1;margin-bottom:12px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.bb-annotationPosition{font-size:11px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;color:#94a3b8;background:#0000004d;padding:4px 8px;border-radius:4px;display:inline-block;margin-top:4px;letter-spacing:.02em}.bb-emptyAnnotations{padding:32px;text-align:center;background:#0f172a70;border-radius:10px;border:1px solid rgba(148,163,184,.15);color:#94a3b8;font-size:14px}@media(max-width:1280px){.bb-cameraRow{flex-direction:column;align-items:flex-start;gap:4px}.bb-cameraLabel{min-width:auto}.bb-cameraControls{flex-direction:column}.bb-cameraControls .bb-button{width:100%}}@media(max-width:1120px){.bb-sidebar--left{width:320px}.bb-sidebar--right{width:220px}.bb-grid,.bb-statRow{grid-template-columns:1fr}}@media(max-width:980px){.bb-root{flex-direction:column;height:auto;min-height:0}.bb-sidebar--left{width:100%!important;max-height:45vh;border-right:none;border-bottom:1px solid rgba(148,163,184,.18);box-shadow:0 18px 42px #0f172a1f}.bb-sidebar--right{width:100%!important;max-height:45vh;border-left:none;border-top:1px solid rgba(148,163,184,.18);box-shadow:0 -18px 42px #0f172a1f;order:3}.bb-sidebar--collapsed{width:100%!important;max-height:72px;overflow:hidden}.bb-sidebar--collapsed .bb-nodeList,.bb-sidebar--collapsed .bb-tabRow,.bb-sidebar--collapsed .bb-toolbar{display:none}.bb-previewShell{flex:1 1 auto;min-height:50vh;padding:14px;order:2}.bb-preview{min-height:44vh;border-radius:10px}.bb-previewHeader{flex-direction:column;align-items:flex-start;gap:12px}.bb-previewControls{width:100%;justify-content:flex-start;flex-wrap:wrap}.bb-previewMeta{justify-content:flex-start}.bb-previewMeta span{font-size:11px;padding:0 10px;min-height:30px}.bb-grid,.bb-actionGrid,.bb-statRow{grid-template-columns:1fr}.bb-editor{padding:12px 12px 20px}.bb-editorHeader{flex-direction:column;align-items:stretch;padding:14px}.bb-editorTitle{font-size:20px}.bb-editorBadge{align-self:flex-start}.bb-toolbar{flex-direction:column;gap:12px;padding:16px 20px 18px}.bb-toolbarDivider{width:100%;height:1px;margin:0}.bb-tabRow{padding:12px 16px 0;gap:6px}.bb-tab{font-size:10px;padding:8px 10px}.bb-header{padding:14px 16px 12px}.bb-header--sidebar{min-height:60px}.bb-title{font-size:17px}.bb-subtitle{font-size:13px}.bb-statChip{padding:10px 12px}.bb-statChip strong{font-size:12px}.bb-nodeButton{padding:10px 12px}.bb-nodeName{font-size:12px}.bb-nodeMeta{font-size:10px}.bb-section{padding:14px}.bb-sectionTitle{font-size:9px}.bb-field{gap:4px}.bb-label{font-size:11px}.bb-input,.bb-select,.bb-textarea{padding:9px 11px;font-size:12px}.bb-textarea{min-height:80px}.bb-button,.bb-fileLabel{min-height:36px;padding:0 14px;font-size:12px}.bb-previewPlaceholderTitle{font-size:22px}.bb-previewPlaceholderButton{padding:10px 18px;font-size:13px}.bb-editSpotPopup{min-width:90%;max-width:90%;padding:20px}.bb-modal{width:95%;max-width:95%}.bb-annotationCard{padding:12px}.bb-annotationTitle{font-size:14px}.bb-annotationDescription{font-size:12px}}@media(max-width:640px){.bb-root{flex-direction:column;height:auto;min-height:0}.bb-sidebar--left,.bb-sidebar--right{max-height:40vh;width:100%!important}.bb-previewShell{min-height:40vh;padding:10px}.bb-preview{min-height:35vh;border-radius:8px}.bb-previewHeader{flex-direction:column;align-items:flex-start;gap:8px;padding:0 0 12px}.bb-previewTitle{font-size:17px}.bb-previewControls{gap:6px}.bb-previewMeta span{font-size:10px;padding:0 8px;min-height:26px}.bb-editor{padding:10px 10px 16px}.bb-editorHeader{padding:12px;flex-direction:column;align-items:stretch}.bb-editorTitle{font-size:18px}.bb-editorMeta{font-size:11px;gap:6px 8px}.bb-editorBadge{font-size:9px;padding:4px 10px;align-self:flex-start}.bb-section{padding:12px;margin-bottom:12px}.bb-sectionTitle{font-size:9px;margin-bottom:10px}.bb-grid{gap:8px}.bb-field--full{grid-column:1 / -1}.bb-label{font-size:11px}.bb-input,.bb-select,.bb-textarea{padding:8px 10px;font-size:12px;border-radius:6px}.bb-textarea{min-height:70px}.bb-button,.bb-fileLabel{min-height:34px;padding:0 12px;font-size:11px;border-radius:6px}.bb-toolbar{padding:12px 14px 14px;gap:10px}.bb-tabRow{padding:10px 12px 0;gap:4px}.bb-tab{font-size:9px;padding:6px 8px;border-radius:4px}.bb-header{padding:10px 12px 8px}.bb-header--sidebar{min-height:52px}.bb-title{font-size:15px}.bb-subtitle{font-size:12px}.bb-eyebrow{font-size:9px;padding:4px 8px;margin-bottom:8px}.bb-statRow{gap:6px;margin-top:14px}.bb-statChip{padding:8px 10px;border-radius:6px}.bb-statChip strong{font-size:11px}.bb-statLabel{font-size:9px}.bb-sidebarToggle{width:30px;height:30px;font-size:14px;border-radius:5px}.bb-nodeItems{padding:4px 6px}.bb-nodeButton{padding:8px 10px;border-radius:6px;margin-bottom:4px}.bb-nodeName{font-size:11px}.bb-nodeMeta{font-size:10px}.bb-search{padding:8px 10px}.bb-statusCard{padding:10px 12px;border-radius:7px}.bb-status{font-size:12px}.bb-statusTitle{font-size:10px}.bb-checkboxRow{gap:6px}.bb-checkbox{padding:6px 10px;font-size:12px;border-radius:5px}.bb-actionCard{padding:10px;border-radius:7px}.bb-actionCardTitle{font-size:12px}.bb-actionCardMeta{font-size:9px;padding:3px 7px}.bb-previewPlaceholder{padding:24px;border-radius:8px}.bb-previewPlaceholderTitle{font-size:18px}.bb-previewPlaceholderButton{padding:8px 14px;font-size:12px;border-radius:999px}.bb-editSpotPopup{min-width:95%;max-width:95%;padding:16px;border-radius:6px}.bb-editSpotTitle{font-size:16px}.bb-editSpotActions .bb-button{padding:8px 12px;font-size:12px}.bb-modal{width:98%;max-width:98%;border-radius:5px}.bb-modalHeader{padding:12px 16px}.bb-modalHeader h3{font-size:16px}.bb-modalBody{padding:14px}.bb-modalFooter{padding:12px 16px;flex-direction:column;gap:8px}.bb-modalFooter .bb-button{width:100%;justify-content:center}.bb-annotationCard{padding:10px;border-left-width:3px;border-radius:6px}.bb-annotationTitle{font-size:13px}.bb-annotationDescription{font-size:11px}.bb-annotationPosition{font-size:10px;padding:3px 6px}.bb-annotationBadge{font-size:9px;padding:2px 8px}.bb-emptyAnnotations{padding:20px;font-size:12px;border-radius:7px}.bb-removeModelButton{min-height:30px;padding:0 10px;font-size:11px}.bb-annotationsList{gap:8px}.bb-cameraLive,.bb-cameraSaved{padding:10px;border-radius:6px}.bb-cameraLiveHeader,.bb-cameraSavedHeader{flex-wrap:wrap}.bb-cameraLiveLabel,.bb-cameraSavedLabel{font-size:11px}.bb-cameraRow{font-size:11px;gap:4px}.bb-cameraCode{font-size:10px;padding:2px 6px}.bb-cameraControls{flex-direction:column;gap:6px}.bb-cameraControls .bb-button{width:100%;justify-content:center}.bb-cameraMessage{font-size:11px;padding:8px 12px}.bb-readonly{font-size:11px;padding:6px 8px}}@media(max-width:420px){.bb-sidebar--left,.bb-sidebar--right{max-height:35vh}.bb-previewShell{min-height:35vh;padding:6px}.bb-preview{min-height:30vh;border-radius:6px}.bb-previewTitle{font-size:15px}.bb-previewMeta span{font-size:9px;padding:0 6px;min-height:22px}.bb-editorTitle{font-size:16px}.bb-title{font-size:13px}.bb-tab{font-size:8px;padding:5px 6px}.bb-button,.bb-fileLabel{font-size:10px;min-height:30px;padding:0 10px}.bb-input,.bb-select,.bb-textarea{font-size:11px;padding:6px 8px}.bb-statChip{padding:6px 8px}.bb-statChip strong{font-size:10px}.bb-previewPlaceholderTitle{font-size:15px}.bb-previewPlaceholderButton{font-size:11px;padding:6px 12px}.bb-editSpotPopup{padding:14px;border-radius:5px}.bb-editSpotTitle{font-size:14px}.bb-editSpotBody .bb-input,.bb-editSpotBody .bb-textarea{font-size:12px;padding:6px 8px}.bb-modalHeader h3{font-size:14px}.bb-annotationTitle{font-size:12px}}@media(max-width:980px){.bb-sidebar--collapsed .bb-header--sidebar{min-height:52px}.bb-sidebar--collapsed .bb-title{font-size:14px}.bb-sidebar--collapsed .bb-sidebarToggle{width:28px;height:28px;font-size:12px}}@media(hover:none)and (pointer:coarse){.bb-nodeButton:hover,.bb-button:hover,.bb-fileLabel:hover,.bb-tab:hover,.bb-sidebarToggle:hover,.bb-annotationCard:hover{transform:none}.bb-nodeButton:active,.bb-button:active,.bb-fileLabel:active,.bb-tab:active,.bb-sidebarToggle:active{transform:scale(.97);transition:transform .1s ease}}@media print{.bb-root{height:auto;min-height:0;background:#fff}.bb-sidebar--left,.bb-sidebar--right{width:100%!important;max-height:none!important;background:#fff!important;color:#000!important;border:1px solid #ddd!important;box-shadow:none!important}.bb-previewShell{min-height:auto!important;padding:10px!important}.bb-preview{min-height:auto!important;border-radius:4px!important;border:1px solid #ddd!important;box-shadow:none!important}.bb-button,.bb-fileLabel,.bb-sidebarToggle,.bb-tab,.bb-annotationAction,.bb-iconButton{display:none!important}.bb-nodeList{overflow:visible!important}.bb-previewPlaceholderButton{display:none!important}}.bb-checkboxRow{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:4px 0}.bb-checkbox{display:inline-flex;align-items:center;gap:8px;border-radius:7px;font-weight:600;font-size:13px;color:#f3eeee;cursor:pointer;user-select:none;transition:all .2s ease}.bb-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#f59e0b;cursor:pointer;flex-shrink:0}.bb-editorDivider{height:1px;background:#94a3b824;margin:4px 0 16px;width:100%}.bb-preview{position:relative;width:100%;height:100%;overflow:hidden}.ri-viewer{width:100%!important;height:100%!important;position:relative!important}.ri-buttonContainer{position:absolute!important;bottom:20px!important;right:20px!important;z-index:10000!important;display:flex!important;gap:10px!important;pointer-events:auto!important}.ri-downloadButton{display:flex!important;align-items:center!important;gap:6px!important;padding:10px 12px!important;background:#2f302f74!important;color:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer!important;font-size:12px!important;font-weight:500!important;box-shadow:0 2px 8px #00000026!important;opacity:1!important;visibility:visible!important}.ri-downloadButton svg{width:14px!important;height:14px!important}.ri-resetButton{display:flex!important;align-items:center!important;justify-content:center!important;padding:6px!important;background:#2f302f74!important;border:none!important;border-radius:6px!important;cursor:pointer!important;opacity:1!important;visibility:visible!important}.ri-resetButton svg{width:14px!important;height:14px!important}.bb-reset-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);animation:bb-fade-in .2s ease}.bb-reset-dialog{background:#1a1f2e;border-radius:12px;max-width:480px;width:90%;border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 48px #00000080;animation:bb-slide-up .25s ease}.bb-reset-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(148,163,184,.1)}.bb-reset-title{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;color:#f8fafc}.bb-reset-title .bb-icon-warning{color:#f59e0b;flex-shrink:0}.bb-reset-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.bb-reset-close:hover{color:#f8fafc;background:#ffffff0f}.bb-reset-body{padding:20px 24px 24px}.bb-reset-message{margin:0 0 12px;font-size:15px;color:#e2e8f0;line-height:1.5}.bb-reset-message strong{color:#f8fafc}.bb-reset-details{color:#94a3b8;text-align:center;font-size:13px;line-height:1.6;margin:0 0 12px}.bb-reset-warning{display:flex;align-items:center;gap:8px;color:#f59e0b;font-size:13px;font-weight:600;margin:4px 0 0;padding:10px 12px;background:#f59e0b14;border-radius:6px;border:1px solid rgba(245,158,11,.15)}.bb-reset-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 20px;border-top:1px solid rgba(148,163,184,.1)}.bb-reset-btn{padding:8px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid rgba(148,163,184,.18);background:#ffffff0a;color:#e2e8f0}.bb-reset-btn:hover{background:#ffffff14;transform:translateY(-1px)}.bb-reset-btn-danger{padding:8px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;background:#dc2626;color:#fff}.bb-reset-btn-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}@keyframes bb-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bb-slide-up{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.se-tabContent{display:flex;flex-direction:column}.se-tabContent *{box-sizing:border-box}.se-subTabRow{display:flex;justify-content:space-between;gap:6px;padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.1);margin-bottom:4px}.se-subTab{padding:8px 12px;display:flex;justify-items:center;border-radius:10px;border:1px solid rgba(148,163,184,.18);background:#ffffff0a;color:#b3bfd2;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.se-subTab:hover{background:#ffffff14;border-color:#94a3b852}.se-subTab--active{background:#6366f12e;border-color:#6366f166;color:#f8fafc}.se-generalContent{display:flex;flex-direction:column;padding-top:0}.se-placeholder{font-size:13px;color:#93a4c0}.se-section{margin-bottom:10px;border-radius:7px;background:#ffffff08;border:1px solid rgba(148,163,184,.12);overflow:hidden;padding:0}.se-section:last-child{margin-bottom:0}.se-sectionTitle{margin:0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c3cbdb;padding:11px 14px;border-bottom:1px solid rgba(148,163,184,.1)}.se-sectionBody{display:flex;flex-direction:column;gap:12px;padding:14px}.se-field{display:flex;flex-direction:column;gap:5px}.se-fieldInline{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.se-fieldLabel{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;color:#d7dee9}.se-fieldValue{font-variant-numeric:tabular-nums;font-size:12px;color:#93a4c0}.se-slider{width:100%;accent-color:#2aa8d8;cursor:pointer}.se-checkbox{width:18px;height:18px;accent-color:#2aa8d8;cursor:pointer}.se-select,.se-textInput,.se-numberInput{background:#0f172a47;border:1px solid rgba(148,163,184,.2);border-radius:7px;color:#f8fafc;font-size:13px;padding:11px 13px;outline:none}.se-select:focus,.se-textInput:focus,.se-numberInput:focus{outline:none;border-color:#2aa8d8a6;box-shadow:0 0 0 4px #2aa8d81f}.se-select{min-width:130px;text-transform:capitalize}.se-textInput,.se-numberInput{width:100%}.se-swatch{display:flex;align-items:center;justify-content:flex-end;min-width:96px;height:30px;padding:0 8px;border-radius:8px;border:1px solid rgba(148,163,184,.35);cursor:pointer;box-shadow:inset 0 0 0 1px #00000026}.se-swatchCode{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:#fff;mix-blend-mode:difference}.se-colorPicker{margin-top:6px;display:flex;flex-direction:column;gap:8px;width:fit-content}.se-colorPicker .react-colorful{width:100%;height:140px}.se-inlineColorPicker .react-colorful{width:100%;height:240px}.se-colorPickerPopover{z-index:1000;padding:10px;border-radius:8px;background:#1b2333;border:1px solid rgba(148,163,184,.25);box-shadow:0 12px 28px #0006}.se-colorPickerPopover .react-colorful{width:200px;height:160px}.se-vectorRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.se-vectorAxis{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#93a4c0}.se-panel{margin-bottom:10px;overflow:hidden;border:1px solid rgba(148,163,184,.12);border-radius:7px;background:#ffffff08}.se-panel:last-child{margin-bottom:0}.se-panelHeader{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;background:#ffffff08;padding:11px 14px;color:#e5e7eb;cursor:pointer;text-align:left}.se-panelHeader:hover{background:#ffffff0f}.se-panelHeaderMain{display:flex;min-width:0;align-items:center;gap:8px}.se-panelChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.se-panelChevron--open{transform:rotate(0)}.se-panelTitle{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c3cbdb}.se-panelHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.se-panelHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.se-panelTrailing{display:flex;align-items:center}.se-panelBody{display:flex;flex-direction:column;gap:12px;padding:14px;border-top:1px solid rgba(148,163,184,.1);background:transparent}.se-iconButton{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:#ffffff14;color:#d7dde8;cursor:pointer}.se-iconButton:hover{background:#ffffff1f}.se-axisStepperGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.se-axisStepper{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;min-height:30px;border-radius:10px;background:#1118279e;border:1px solid rgba(255,255,255,.05)}.se-axisStepperButton{display:inline-flex;align-items:center;justify-content:center;height:100%;border:none;background:transparent;color:#f3f4f6;cursor:pointer}.se-axisStepperButton:hover{background:#ffffff0a}.se-axisStepperLabel{text-align:center;font-size:15px;color:#f3f4f6}.se-segmentedControl{display:grid;grid-auto-flow:column;overflow:hidden;border-radius:10px;background:#1118279e}.se-segmentedControl--renderer{grid-template-columns:repeat(3,minmax(0,1fr))}.se-segmentedControl--renderer .se-segmentedOption{padding-inline:6px;font-size:12px}.se-segmentedOption{min-height:35px;border:none;background:transparent;color:#d1d5db;font-size:14px;text-transform:uppercase;cursor:pointer}.se-segmentedOption--active{background:#2aa8d8;color:#fff}.se-helperCard{padding:32px;text-align:center;background:#0f172a70;border-radius:10px;border:1px solid rgba(148,163,184,.15);color:#94a3b8;font-size:14px}.se-helperCard strong{font-size:14px}.se-helperCard span{font-size:13px;line-height:1.4;color:#c7d0df}.se-switch{position:relative;display:inline-flex;align-items:center}.se-switch input[type=checkbox]{position:absolute;left:0;top:0;z-index:10;width:100%;height:100%;cursor:pointer;opacity:0}.se-switchTrack{position:relative;display:inline-flex;align-items:center;gap:8px}.se-switchTrack:before{content:"";width:36px;height:20px;background:#4b5563;display:inline-block;border-radius:20px;transition:background-color .2s ease-in}.se-switchThumb{position:absolute;width:16px;height:16px;border-radius:50%;left:2px;top:2px;z-index:2;background:#fff;box-shadow:0 0 5px #0003;transition:.2s ease-in}.se-switch input[type=checkbox]:hover+.se-switchTrack .se-switchThumb{box-shadow:0 2px 15px #0003,0 3px 8px #0000001a}.se-switch input[type=checkbox]:checked+.se-switchTrack:before{background:#376fcb}.se-switch input[type=checkbox]:checked+.se-switchTrack .se-switchThumb{background:#4285f4;left:18px}.se-switchLabel{font-size:12px;font-weight:700;letter-spacing:.06em;color:#e5e7eb}.se-switch input[type=checkbox]:checked~.se-switchTrack .se-switchLabel{color:#2aa8d8}.se-lightList{display:flex;flex-direction:column;gap:4px}.se-lightRow{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.1);background:#ffffff08;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.se-lightRow:hover{background:#ffffff0f}.se-lightRow--active{background:#2aa8d81f;border-color:#2aa8d859}.se-lightRowLabel{font-size:13px;color:#d8e0ee}.se-lightActions{display:flex;gap:8px}.se-lightProps{display:flex;flex-direction:column;gap:14px;padding-top:4px;border-top:1px solid rgba(148,163,184,.1)}.se-animationList{display:flex;flex-direction:column;gap:14px}.se-animationCard{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:#0f172a7a}.se-animationCard--active{border-color:#2aa8d873;box-shadow:inset 0 0 0 1px #2aa8d829}.se-animationHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.se-animationHeading{display:flex;min-width:0;flex-direction:column;gap:6px}.se-animationTitleRow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.se-animationStatus,.se-animationBadge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.se-animationStatus{background:#2aa8d829;color:#9fe8ff}.se-animationBadge{background:#6366f12e;color:#d9ddff}.se-animationSource{font-size:12px;color:#93a4c0;word-break:break-word}.se-animationMeta{display:flex;flex-wrap:wrap;gap:8px}.se-animationMeta span{border-radius:999px;background:#ffffff0f;padding:4px 9px;font-size:12px;color:#c6d0e2}.se-animationDangerButton,.se-animationButton,.se-animationAutoplayButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:#ffffff0a;color:#e2e8f0;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.se-animationButton:disabled{opacity:.45;cursor:not-allowed}.se-animationDangerButton{width:36px;height:36px;color:#fca5a5}.se-animationDangerButton:hover,.se-animationButton:hover,.se-animationAutoplayButton:hover{background:#ffffff14;border-color:#94a3b857}.se-animationButtonRow{display:flex;flex-wrap:wrap;gap:10px}.se-animationButton{min-height:36px;padding:0 14px;font-size:13px;font-weight:600}.se-animationButton--icon{flex:1;min-width:0;padding:0;height:38px}.se-animationSeekRow{display:flex;align-items:center;gap:10px}.se-animationSeek{flex:1;min-width:0}.se-animationSeekTime{flex-shrink:0;min-width:86px;text-align:right;font-variant-numeric:tabular-nums;font-size:12px;color:#97a3b6}.se-animationGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.se-animationSpeedRow{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:10px;align-items:center}.se-animationSpeedInput{text-align:right}.se-animationAutoplayButton{align-self:flex-start;min-height:36px;padding:0 14px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.se-animationAutoplayButton--active{background:#2aa8d82e;border-color:#2aa8d86b;color:#dff8ff}.se-removedAnimations{overflow:hidden;border-radius:12px;border:1px solid rgba(148,163,184,.14);background:#ffffff08}.se-removedAnimationList{display:flex;flex-direction:column;gap:10px;padding:14px}.se-removedAnimationRow{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:10px;background:#0f172a6b;padding:12px}.se-removedAnimationName{font-size:13px;font-weight:600;color:#e2e8f0}@media(max-width:900px){.se-animationGrid,.se-animationSpeedRow{grid-template-columns:1fr}}.bb-viewSpotOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);animation:bb-fadeIn .2s ease}.bb-viewSpotPopup{background:#1e1e20;border-radius:12px;max-width:480px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;border:1px solid #333335;animation:bb-slideUp .25s ease}.bb-viewSpotHeader{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #2a2a2c}.bb-viewSpotTitle{font-size:18px;font-weight:600;color:#e8e8ea;margin:0}.bb-viewSpotClose{background:none;border:none;color:#888;font-size:24px;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.bb-viewSpotClose:hover{color:#e8e8ea}.bb-viewSpotBody{padding:24px}.bb-viewSpotDescription{color:#c8c8ca;font-size:14px;line-height:1.6;margin-bottom:20px;white-space:pre-wrap;word-break:break-word}.bb-viewSpotPosition{background:#141416;border-radius:8px;padding:12px 16px;margin-bottom:24px;font-size:13px;color:#a0a0a2;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bb-viewSpotLabel{font-weight:500;color:#888}.bb-viewSpotCode{background:#0a0a0c;padding:4px 10px;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:12px;color:#8be9fd}.bb-viewSpotActions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.bb-editAnnotationOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-editAnnotationPopup{background:#0f141e;border-radius:16px;padding:24px;min-width:200px;max-width:400px;width:90%;border:1px solid rgba(148,163,184,.18)}.bb-editAnnotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(148,163,184,.12)}.bb-editAnnotationTitle{color:#f8fafc;font-size:18px;font-weight:600;margin:0}.bb-editAnnotationClose{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;padding:0 4px}.bb-editAnnotationClose:hover{color:#f8fafc}.bb-editAnnotationBody{display:flex;flex-direction:column;gap:14px}.bb-editAnnotationActions{display:flex;gap:8px;margin-top:8px}.se-cinematicHint{margin:0 0 10px;font-size:12px;line-height:1.5;color:#ffffff8c}.bb-button.se-cinematicAdd{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-bottom:12px;background:#135bc0;color:#fff}.bb-button.se-cinematicAdd:hover:not(:disabled){background:#1a68d6}.se-waypointList{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.se-waypointCard{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08}.se-waypointBadge{flex:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#06343c;background:#22d3ee}.se-waypointBody{flex:1;min-width:0}.se-waypointCoords{font-size:11px;line-height:1.4;color:#ffffff80;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.se-waypointActions{flex:none;display:flex;gap:2px}.se-waypointAction{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:#ffffff80;cursor:pointer;transition:background .15s ease,color .15s ease}.se-waypointAction:hover:not(:disabled){background:#ffffff14;color:#fff}.se-waypointAction:disabled{opacity:.35;cursor:default}.se-waypointAction--delete:hover:not(:disabled){background:#f8717129;color:#f87171}.se-customBadge{display:inline-block;padding:1px 8px;border-radius:3px;background:#22d3ee26;color:#22d3ee;font-size:10px;font-weight:600;margin-top:4px}.se-customizeToggle{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:#ffffff08;border-radius:8px;border:1px solid rgba(148,163,184,.08);margin:8px 0 12px}.se-toggleLabel{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#f8fafc;cursor:pointer;user-select:none}.se-toggleLabel input[type=checkbox]{width:16px;height:16px;accent-color:#22d3ee;cursor:pointer}.se-toggleLabel svg{color:#22d3ee;width:14px;height:14px}.se-toggleHint{font-size:11px;color:#fff6;padding-left:28px}.se-segmentBetween{display:flex;flex-direction:column;gap:6px;padding:10px 14px;margin:6px 0 6px 32px;background:#ffffff08;border-radius:6px;border-left:3px solid rgba(34,211,238,.25)}.se-segmentLabel{font-size:11px;font-weight:500;color:#ffffff73}.se-segmentControls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.se-durationLabel{font-size:10px;color:#ffffff59;font-weight:500;white-space:nowrap}.se-segmentSlider{flex:1;min-width:80px;max-width:150px;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;outline:none}.se-segmentSlider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#22d3ee;cursor:pointer;border:2px solid rgba(255,255,255,.2);box-shadow:0 1px 3px #0000004d}.se-segmentSlider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#22d3ee;cursor:pointer;border:2px solid rgba(255,255,255,.2)}.se-segmentValue{font-size:12px;font-weight:600;color:#22d3ee;min-width:36px;text-align:center}.se-presetButtons{display:flex;gap:4px}.se-presetButton{padding:2px 8px;background:#ffffff0f;border:1px solid rgba(148,163,184,.15);border-radius:4px;font-size:10px;color:#fff9;cursor:pointer;transition:all .2s ease;font-weight:500}.se-presetButton:hover{background:#22d3ee;color:#06343c;border-color:#22d3ee}.se-totalDuration{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 8px;margin:8px 0 12px;border-top:1px solid rgba(148,163,184,.1)}.se-totalLabel{font-size:12px;color:#ffffff80;font-weight:500}.se-totalValue{font-size:14px;font-weight:600;color:#22d3ee}.se-totalHint{font-size:11px;color:#ffffff59;font-weight:400;margin-left:8px}.smv-root{--smv-panel-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--smv-panel-bg: #141824;--smv-panel-bg-strong: #1a1f2e;--smv-panel-bg-strong-hover: #252b3b;--smv-panel-border: rgba(255, 255, 255, .06);--smv-panel-border-strong: rgba(255, 255, 255, .08);--smv-panel-border-active: rgba(255, 255, 255, .18);--smv-panel-shadow-left: 4px 0 24px rgba(0, 0, 0, .35);--smv-panel-shadow-right: -4px 0 24px rgba(0, 0, 0, .35);--smv-panel-text: #f1f5f9;--smv-panel-text-emphasis: #ffffff;--smv-panel-text-muted: #94a3b8;--smv-panel-text-subtle: #64748b;--smv-panel-surface: rgba(255, 255, 255, .05);--smv-panel-surface-hover: rgba(255, 255, 255, .1);--smv-panel-surface-soft: rgba(255, 255, 255, .04);--smv-panel-accent: #3b82f6;--smv-panel-accent-contrast: #ffffff;position:relative;width:100%;height:100%;min-height:0;overflow:hidden;display:flex;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.smv-canvasArea{flex:1;position:relative;min-width:0}.smv-upload-input{display:none}.smv-upload-toolbar{position:absolute;top:12px;left:50%;z-index:120;display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:5px 6px;border:1px solid var(--smv-panel-border-strong);border-radius:10px;background:#141824e0;color:var(--smv-panel-text);box-shadow:0 16px 30px #00000047;backdrop-filter:blur(14px);transform:translate(-50%)}.smv-upload-toolbar__name{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--smv-panel-text-muted);font-size:12px;font-weight:500}.smv-upload-toolbar__button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 14px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#3b82f62e;color:var(--smv-panel-text-emphasis);font-size:12px;font-weight:600;cursor:pointer}.smv-upload-toolbar__button--ghost{background:var(--smv-panel-surface);color:var(--smv-panel-text-muted)}.smv-upload-empty-state{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:24px}.smv-upload-empty-state__card{width:min(440px,100%);padding:28px;border:1px dashed rgba(255,255,255,.2);border-radius:8px;color:var(--smv-panel-text);text-align:center;box-shadow:0 24px 40px #00000047;backdrop-filter:blur(14px)}.smv-upload-empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:18px;border-radius:10px;background:#3b82f62e;color:#bfdbfe}.smv-upload-empty-state__title{margin:0 0 10px;color:var(--smv-panel-text-emphasis);font-size:24px;line-height:1.15}.smv-upload-empty-state__body{margin:0 0 18px;color:var(--smv-panel-text-muted);font-size:14px;font-weight:700;line-height:1.6}.smv-upload-empty-state__body code{color:var(--smv-panel-text-emphasis);font-family:var(--smv-panel-font-family)}.smv-upload-empty-state__button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px;border:none;border-radius:8px;background:#3b82f6;color:#eff6ff;font-size:13px;font-weight:700;cursor:pointer}.smv-upload-drop-overlay{position:absolute;inset:0;z-index:130;display:flex;align-items:center;justify-content:center;padding:24px;background:#080c147a;backdrop-filter:blur(4px)}.smv-upload-drop-overlay__card{display:inline-flex;align-items:center;gap:10px;padding:16px 20px;border:1px dashed rgba(191,219,254,.75);border-radius:10px;background:#1e293beb;color:#dbeafe;font-size:14px;font-weight:700;box-shadow:0 18px 36px #00000047}.smv-canvasArea .bb-loadingOverlay{position:absolute;inset:0;z-index:110;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#0f172a75;backdrop-filter:blur(1px)}.smv-canvasArea .bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(226,232,240,.24);border-top-color:#93c5fd;animation:bb-spin .8s linear infinite}.smv-canvasArea .bb-loadingMessage{max-width:320px;color:#f7f8fa;font-size:13px;font-weight:600;line-height:1.5}@keyframes bb-spin{to{transform:rotate(360deg)}}.right-panel-wrapper{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible}.right-panel-wrapper--open{width:300px;flex-shrink:0}.right-panel-wrapper--closed{width:0;flex-shrink:0}.left-panel-wrapper{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible;order:-1}.left-panel-wrapper--open{width:280px;flex-shrink:0}.left-panel-wrapper--closed{width:0;flex-shrink:0}.side-panel__open-btn.side-panel__open-btn--left{left:12px;right:auto}.side-panel.side-panel--left{left:0;right:auto;width:280px;transform:translate(-100%);border-left:none;border-right:1px solid var(--smv-panel-border);box-shadow:var(--smv-panel-shadow-left)}.side-panel.side-panel--open-left{transform:translate(0)}.side-panel.side-panel--closed-left{transform:translate(-100%)}.env-controls{display:flex;flex-direction:column;overflow-y:auto;flex:1}.env-section{border-bottom:1px solid var(--smv-panel-border-strong)}.env-section__header{display:flex;align-items:center;gap:6px;width:100%;padding:9px 14px;border:none;background:var(--smv-panel-surface-soft);color:var(--smv-panel-text-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.env-section__chevron{transition:transform .15s}.env-section__chevron--collapsed{transform:rotate(-90deg)}.env-section__body{display:flex;flex-direction:column}.env-row{display:flex;gap:6px;align-items:center;min-height:32px;border-bottom:1px solid var(--smv-panel-surface)}.env-row__label{flex:0 0 42%;padding:0 0 0 14px;font-size:11.5px;font-weight:500;color:var(--smv-panel-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.env-row__value{flex:1;display:flex;align-items:center;padding:5px 10px 5px 8px;min-width:0}.env-row__value--slider{gap:6px}.env-checkbox-btn{display:flex;align-items:center;cursor:pointer;background:none;border:none;padding:0}.env-checkbox{width:15px;height:15px;border-radius:3px;border:1.5px solid var(--smv-panel-border-active);background:var(--smv-panel-surface-soft);display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.env-checkbox--checked{background:var(--smv-panel-accent);border-color:var(--smv-panel-accent)}.env-select{width:100%;padding:5px 8px;border-radius:4px;border:none;background:var(--smv-panel-surface-hover);color:var(--smv-panel-text);font-size:11.5px;outline:none;box-sizing:border-box;text-transform:capitalize}.env-color-swatch{position:relative;width:100%;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.env-color-swatch__hex{font-size:10.5px;font-weight:700;color:#0f172a;text-shadow:0 1px 1px rgba(255,255,255,.35);pointer-events:none;text-transform:uppercase}.env-color-swatch__input{position:absolute;inset:0;width:100%;height:100%;border:none;padding:0;opacity:0;cursor:pointer}.env-slider{flex:1;accent-color:var(--smv-panel-accent);cursor:pointer;min-width:0}.env-slider__value{flex-shrink:0;min-width:32px;padding:2px 5px;border-radius:4px;background:var(--smv-panel-surface-hover);color:var(--smv-panel-accent);font-size:10.5px;font-weight:600;text-align:center}.side-panel__open-btn{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:7px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-bg-strong);cursor:pointer;font-size:13px;font-weight:500;color:var(--smv-panel-text);z-index:190;transition:background .15s}.side-panel__open-btn:hover{background:var(--smv-panel-bg-strong-hover)}.side-panel{position:absolute;top:0;right:0;width:300px;height:100%;background:var(--smv-panel-bg);display:flex;flex-direction:column;font-family:var(--smv-panel-font-family);transform:translate(100%);transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:200;border-left:1px solid var(--smv-panel-border);box-shadow:var(--smv-panel-shadow-right)}.side-panel--open{transform:translate(0)}.side-panel--closed{transform:translate(100%)}.side-panel__header{padding:24px 20px 16px;border-bottom:1px solid var(--smv-panel-border-strong)}.side-panel__header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.side-panel__eyebrow{font-size:15px;font-weight:700;letter-spacing:.12em;color:var(--smv-panel-text-subtle);text-transform:uppercase}.side-panel__title{font-size:22px;font-weight:700;color:var(--smv-panel-text);margin:0;line-height:1.2}.side-panel__close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-surface);cursor:pointer;color:var(--smv-panel-text-muted);transition:background .15s,color .15s;flex-shrink:0}.side-panel__close-btn:hover{background:var(--smv-panel-surface-hover);color:var(--smv-panel-text)}.side-panel__search-wrap{padding:14px 16px;border-bottom:1px solid var(--smv-panel-border-strong)}.side-panel__search{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-surface);color:var(--smv-panel-text);font-size:13px;outline:none;box-sizing:border-box;transition:border-color .15s,background .15s}.side-panel__search::placeholder{color:var(--smv-panel-text-subtle)}.side-panel__search:focus{border-color:var(--smv-panel-border-active);background:var(--smv-panel-surface-hover)}.side-panel__list{display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;flex:1}.side-panel__list::-webkit-scrollbar{width:4px}.side-panel__list::-webkit-scrollbar-track{background:transparent}.side-panel__list::-webkit-scrollbar-thumb{background:var(--smv-panel-surface-hover);border-radius:4px}.side-panel__row{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;cursor:pointer;transition:background .12s;border-bottom:1px solid var(--smv-panel-surface-soft)}.side-panel__row:hover,.side-panel__row--hovered{background:var(--smv-panel-surface)}.side-panel__label{font-size:14px;font-weight:600;color:var(--smv-panel-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.side-panel__label--hovered{color:var(--smv-panel-text-emphasis)}.side-panel__vis-btn{display:flex;align-items:center;flex-shrink:0;cursor:pointer;background:none;border:none;padding:0;margin-left:10px}.side-panel__checkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--smv-panel-border-active);background:transparent;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.side-panel__checkbox--checked{background:var(--smv-panel-accent);border-color:var(--smv-panel-accent)}@media(max-width:900px){.smv-upload-toolbar{top:56px;gap:8px;max-width:calc(100% - 24px);padding:8px 10px}.smv-upload-toolbar__name{max-width:140px}.right-panel-wrapper--open,.left-panel-wrapper--open{width:0}.side-panel,.side-panel.side-panel--left{width:min(300px,85vw)}}.smv-largeModelBanner{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;pointer-events:auto;max-width:calc(100% - 32px);text-align:center}.smv-largeModelBanner__icon{flex-shrink:0}.smv-largeModelBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.smv-largeModelBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}
|
|
1
|
+
.ri-viewer--license-checking,.ri-viewer--license-invalid{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background-color:#f9f9f9}.ri-viewer{--ri-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--ri-viewer-bg: #1c1c1d;--ri-viewer-text: #111827;--ri-panel-bg: #ffffff;--ri-panel-border: #e5e7eb;--ri-panel-title: #111827;--ri-panel-muted-text: #4b5563;--ri-panel-subtle-text: #9ca3af;--ri-panel-surface: #f9fafb;--ri-panel-surface-hover: #f3f4f6;--ri-panel-surface-border: #e5e7eb;--ri-panel-button-text: #1f2937;--ri-panel-accent: #2563eb;--ri-panel-accent-contrast: #ffffff;--ri-license-overlay-bg: rgba(0, 0, 0, .04);--ri-license-overlay-border: rgba(0, 0, 0, .08);--ri-license-overlay-text: #888;--ri-license-overlay-error-bg: rgba(192, 57, 43, .06);--ri-license-overlay-error-border: rgba(192, 57, 43, .2);--ri-license-overlay-error-text: #c0392b;--ri-sidepanel-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--ri-sidepanel-bg: var(--ri-databinding-bg, #111318);--ri-sidepanel-open-btn-bg: rgba(20, 20, 20, .82);--ri-sidepanel-open-btn-bg-hover: #27282b7e;--ri-sidepanel-border: rgba(255, 255, 255, .06);--ri-sidepanel-divider: rgba(255, 255, 255, .04);--ri-sidepanel-border-strong: rgba(255, 255, 255, .08);--ri-sidepanel-border-active: rgba(255, 255, 255, .18);--ri-sidepanel-shadow-left: 4px 0 24px rgba(0, 0, 0, .35);--ri-sidepanel-shadow-right: -4px 0 24px rgba(0, 0, 0, .35);--ri-sidepanel-text: var(--ri-databinding-text, #f1f5f9);--ri-sidepanel-text-emphasis: var(--ri-databinding-text-hover, #cbd5e1);--ri-sidepanel-text-muted: var(--ri-databinding-text-muted, #94a3b8);--ri-sidepanel-text-subtle: var(--ri-databinding-text-subtle, #64748b);--ri-sidepanel-placeholder: var(--ri-databinding-text-faint, #475569);--ri-sidepanel-surface: rgba(255, 255, 255, .05);--ri-sidepanel-surface-hover: rgba(255, 255, 255, .1);--ri-sidepanel-accent: #3b82f6;--ri-sidepanel-accent-soft: rgba(59, 130, 246, .12);--ri-databinding-bg: #111318;--ri-databinding-border: rgba(255, 255, 255, .06);--ri-databinding-border-strong: rgba(255, 255, 255, .08);--ri-databinding-border-hover: rgba(255, 255, 255, .15);--ri-databinding-shadow: 4px 0 24px rgba(0, 0, 0, .35);--ri-databinding-font-family: "Inter", "Segoe UI", sans-serif;--ri-databinding-mono-font-family: "JetBrains Mono", "Fira Code", "Menlo", monospace;--ri-databinding-text: #f1f5f9;--ri-databinding-text-muted: #94a3b8;--ri-databinding-text-subtle: #64748b;--ri-databinding-text-faint: #475569;--ri-databinding-text-hover: #cbd5e1;--ri-databinding-surface: rgba(255, 255, 255, .03);--ri-databinding-surface-hover: rgba(255, 255, 255, .06);--ri-databinding-accent: #93c5fd;--ri-databinding-accent-glow: rgba(147, 197, 253, .8);--ri-databinding-accent-border: rgba(96, 165, 250, .55);--ri-databinding-accent-gradient: linear-gradient( 135deg, #1e3a8a 0%, #1d4ed8 60%, #2563eb 100% );--ri-databinding-accent-gradient-active: linear-gradient( 135deg, #1e3a8a 0%, #1e40af 100% );display:flex;flex-direction:row;width:100%;height:100%;min-height:0;overflow:hidden;background:var(--ri-viewer-bg);position:relative;color:var(--ri-viewer-text);font-family:var(--ri-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.ri-viewer *{box-sizing:border-box}.ri-viewerLeft{display:flex;flex:1;min-height:0;min-width:0;position:relative}.ri-viewerRight{display:flex;flex-shrink:0;min-width:0}.ri-panel{width:280px;min-height:0;background:var(--ri-panel-bg);border-right:1px solid var(--ri-panel-border);display:flex;flex-direction:column;padding:20px;overflow-y:auto;flex-shrink:0;transition:margin-left .3s ease,transform .3s ease}.ri-panel--open{transform:translate(0);margin-left:0}.ri-panel--closed{transform:translate(-100%);margin-left:-280px}.ri-panelHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ri-panelTitle{margin:0;font-size:15px;font-weight:700;color:var(--ri-panel-title);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ri-closeButton{border:0;background:transparent;color:var(--ri-panel-subtle-text);font-size:22px;line-height:1;padding:0;cursor:pointer;flex-shrink:0;transition:color .2s ease}.ri-closeButton:hover{color:var(--ri-panel-muted-text)}.ri-json{margin:0 0 16px;padding:12px;background:var(--ri-panel-surface);border:1px solid var(--ri-panel-surface-border);border-radius:12px;font-size:12px;line-height:1.55;color:var(--ri-panel-button-text);overflow-x:auto;white-space:pre-wrap;word-break:break-word}.ri-divider{border-top:1px solid var(--ri-panel-border);margin-bottom:12px}.ri-sectionLabel{margin-bottom:8px;font-size:11px;font-weight:700;color:var(--ri-panel-subtle-text);text-transform:uppercase;letter-spacing:.16em}.ri-actionList{display:flex;flex-direction:column;gap:8px}.ri-actionButton{width:100%;border-radius:8px;border:1px solid var(--ri-panel-surface-border);background:var(--ri-panel-surface);color:var(--ri-panel-button-text);padding:10px 12px;text-align:left;font-size:14px;line-height:1.4;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.ri-actionButton:hover{background:var(--ri-panel-surface-hover);border-color:var(--ri-panel-border)}.ri-actionButton--active{background:var(--ri-panel-accent);border-color:var(--ri-panel-accent);color:var(--ri-panel-accent-contrast)}.ri-actionButton--active:hover{background:var(--ri-panel-accent);border-color:var(--ri-panel-accent)}.ri-canvasArea{flex:1 1 auto;position:relative;min-width:0}.ri-canvasArea--measuring{cursor:crosshair}.ri-canvasArea canvas{opacity:1;transition:opacity .18s ease}.ri-canvasArea--positioning canvas{opacity:0;transition:none}.ri-bindingsMismatchBanner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;white-space:nowrap;pointer-events:auto;max-width:calc(100% - 32px);white-space:normal;text-align:center}.ri-bindingsMismatchBanner__icon{flex-shrink:0}.ri-bindingsMismatchBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.ri-bindingsMismatchBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}.ri-measureTools,.ri-uvCheckerTools{position:absolute;top:16px;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-measureButton{width:34px;height:34px;padding:0;background:#141414d1;border:1px solid rgba(255,255,255,.12);color:#ffffffbf;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,color .15s ease,border-color .15s ease}.ri-measureButton:hover{background:#282828eb;color:#fff;border-color:#ffffff40}.ri-measureButton:active{background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-measureButton--active{background:#22d3ee;border-color:#22d3ee;color:#06343c}.ri-measureButton--active:hover{background:#38dbf0;color:#06343c}.ri-measureHint{padding:6px 10px;border-radius:8px;font-size:12px;line-height:1;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);white-space:nowrap}.ri-explodeTools{position:absolute;top:16px;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-explodeSlider{display:flex;align-items:center;gap:8px;height:34px;padding:0 12px;background:#141414d1;border:1px solid rgba(255,255,255,.12);border-radius:8px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-explodeSlider input[type=range]{width:120px;accent-color:#22d3ee;cursor:pointer}.ri-cinematicTools{position:absolute;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-measureDot{width:10px;height:10px;border-radius:50%;background:#22d3ee;border:2px solid #fff;box-shadow:0 0 0 1px #0006;pointer-events:none}.ri-measureLabel{padding:3px 7px;border-radius:6px;font-size:12px;font-weight:600;line-height:1;white-space:nowrap;color:#06343c;background:#22d3ee;box-shadow:0 1px 4px #00000059;pointer-events:none;user-select:none}.ri-xrTools{position:absolute;left:16px;z-index:10;display:flex;gap:8px;align-items:center}.ri-xrButton{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;font-size:13px;font-weight:500;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.16);border-radius:8px;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,border-color .15s ease}.ri-xrButton:hover{background:#282828eb;border-color:#ffffff4d}.ri-mobileHandoffBackdrop{position:absolute;z-index:30;inset:0;display:grid;place-items:center;padding:20px;background:#020617ad;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.ri-mobileHandoffDialog{position:relative;display:flex;width:min(100%,300px);flex-direction:column;align-items:center;padding:16px;text-align:center;color:#e2e8f0;background:#0f172a;border:1px solid rgba(148,163,184,.3);border-radius:16px;box-shadow:0 24px 80px #00000080}.ri-mobileHandoffDialog>svg{color:#67e8f9}.ri-mobileHandoffDialog h2{margin:12px 0 0;font-size:18px;line-height:1.25;color:#fff}.ri-mobileHandoffDialog p{margin:8px 0 16px;font-size:13px;line-height:1.5;color:#cbd5e1}.ri-mobileHandoffQr{display:grid;place-items:center;padding:10px;background:#fff;border-radius:10px}.ri-mobileHandoffDialog a{margin-top:16px;font-size:13px;font-weight:600;color:#a5f3fc;text-decoration:underline;text-underline-offset:3px}.ri-mobileHandoffClose{position:absolute;top:10px;right:10px;display:grid;width:30px;height:30px;place-items:center;padding:0;color:#cbd5e1;background:transparent;border:0;border-radius:6px;cursor:pointer}.ri-mobileHandoffClose:hover{color:#fff;background:#ffffff1a}.ri-arHintOverlay{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:10;width:min(calc(100% - 32px),360px);pointer-events:none}.ri-arHint{margin:0 auto;width:fit-content;max-width:100%;padding:6px 12px;font-size:11px;font-weight:500;line-height:1.2;text-align:center;color:#ffffffeb;background:#14141494;border:1px solid rgba(255,255,255,.12);border-radius:999px;user-select:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ri-arOverlay{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:10;width:min(calc(100% - 32px),420px);pointer-events:none}.ri-arControls{display:flex;flex-direction:column;align-items:center;gap:10px}.ri-arStatus,.ri-arActionButton{max-width:100%;padding:8px 16px;font-size:13px;font-weight:600;line-height:1.3;text-align:center;white-space:nowrap;color:#fff;background:#141414d1;border:1px solid rgba(255,255,255,.16);border-radius:19px;user-select:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-arStatus{pointer-events:none}.ri-arActionButton{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.ri-arActionButton svg{flex-shrink:0}.ri-arActionButton:hover{background:#282828eb;border-color:#ffffff4d}.ri-arActionButton:active{transform:scale(.98)}.ri-arActionButton--primary{color:#06343c;background:#22d3ee;border-color:transparent;box-shadow:0 1px 4px #00000059}.ri-arActionButton--primary:hover{background:#67e8f9;border-color:transparent}.ri-arActionButton.ri-arActionButton--active,.ri-arActionButton[aria-pressed=true],.ri-arActionButton.ri-arActionButton--active:hover,.ri-arActionButton[aria-pressed=true]:hover,.ri-arActionButton.ri-arActionButton--active:active,.ri-arActionButton[aria-pressed=true]:active{color:#06343c;background:#22d3ee;border-color:transparent;box-shadow:0 1px 4px #00000059}.ri-hiddenInput{display:none}.ri-popover{position:absolute;z-index:50;background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;color:#111827}.ri-popover--inline{position:static;z-index:auto;width:100%;border-radius:10px;box-shadow:none}.ri-popover--inline .react-colorful{width:100%}.ri-popover--inline{background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text, #f1f5f9)}.ri-popover--inline .ri-popoverHeader{border-bottom-color:var( --ri-databinding-border-strong, rgba(255, 255, 255, .08) )}.ri-popover--inline .ri-popoverLabel,.ri-popover--inline .ri-colorCode{color:var(--ri-databinding-text-muted, #94a3b8)}.ri-popover--inline .ri-secondaryButton{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text, #f1f5f9)}.ri-popover--inline .ri-secondaryButton:hover{background:#ffffff1f}.ri-popover--inline .ri-previewFrame{border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.ri-popover--inline .ri-emptyState{border-color:var(--ri-databinding-border-hover, rgba(255, 255, 255, .15));color:var(--ri-databinding-text-subtle, #64748b)}.ri-popover--inline .ri-uploadButton{background:var(--ri-databinding-accent-gradient, #2563eb);color:#fff}.ri-popover--inline .ri-uploadButton:hover{background:var(--ri-databinding-accent-gradient-active, #1d4ed8)}.ri-popover--inline .ri-removeButton{background:transparent;border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));color:var(--ri-databinding-text-muted, #94a3b8)}.ri-popover--inline .ri-removeButton:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06))}.ri-popover--inline .ri-formatHint{color:var(--ri-databinding-text-subtle, #64748b)}.ri-popoverHeader{padding:12px 16px}.ri-popoverLabel{margin:0 0 8px;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.16em}.ri-inlineRow{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.ri-colorCode{font-size:12px;color:#9ca3af;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:uppercase}.ri-secondaryButton{border:1px solid #e5e7eb;background:#f3f4f6;color:#374151;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.ri-secondaryButton:hover{background:#e5e7eb}.ri-materialBody{display:flex;flex-direction:column;gap:12px;padding-left:12px;padding-right:12px;padding-bottom:12px}.ri-previewFrame{position:relative;height:112px;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb}.ri-previewImage{width:100%;height:100%;object-fit:cover;display:block}.ri-previewCaption{position:absolute;left:0;right:0;bottom:0;background:#0006;padding:4px 8px;color:#fff;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-emptyState{height:112px;border-radius:12px;border:2px dashed #e5e7eb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#d1d5db;text-align:center}.ri-uploadButton{width:100%;border:0;border-radius:10px;background:#111827;color:#fff;padding:10px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.ri-uploadButton:hover{background:#374151}.ri-removeButton{width:100%;border-radius:10px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;padding:8px 12px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.ri-removeButton:hover{background:#f9fafb}.ri-formatHint{margin:0;text-align:center;font-size:10px;color:#d1d5db}.ri-buttonContainer{display:flex;justify-content:space-between;align-items:center;gap:8px;position:absolute;bottom:12px;left:12px;right:12px;z-index:10}.ri-tourControls{display:flex;gap:6px;align-items:center;flex-shrink:0}.ri-rightControls{display:flex;gap:6px;align-items:center;flex-shrink:0;margin-left:auto}.ri-rightControls:only-child{margin-left:auto}.ri-navButtonSingle,.ri-tourButton,.ri-resetButton,.ri-downloadButton{height:34px;background:#141414d1;border:1px solid rgba(255,255,255,.12);color:#ffffffbf!important;border-radius:8px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;user-select:none;-webkit-tap-highlight-color:transparent}.ri-navButtonSingle:hover:not(:disabled),.ri-tourButton:hover:not(:disabled),.ri-resetButton:hover:not(:disabled){background:#282828eb;color:#fff;border-color:#ffffff40}.ri-navButtonSingle:active:not(:disabled),.ri-tourButton:active:not(:disabled),.ri-resetButton:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.ri-navButtonSingle:disabled,.ri-tourButton:disabled,.ri-resetButton:disabled{opacity:.45;cursor:not-allowed}.ri-navButtonSingle{padding:0 16px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;white-space:nowrap}.ri-tourButton{padding:0 12px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:4px;white-space:nowrap}.ri-tourButton svg{width:15px;height:15px;flex-shrink:0}.ri-tourButton--stop{border-color:#f446;color:#ff6b6b}.ri-tourButton--stop:hover:not(:disabled){background:#ff444426;border-color:#f449;color:#ff6b6b}.ri-tourButton--stop:active:not(:disabled){background:#f44;color:#fff;border-color:#f44}.ri-tourButton--next{border-color:#38dbf04d;color:#38dbf0}.ri-tourButton--next:hover:not(:disabled){background:#38dbf01f;border-color:#38dbf080;color:#38dbf0}.ri-tourButton--next:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.mv-rightControls{position:absolute;bottom:1px;right:20px;z-index:10000;display:flex;align-items:center;gap:5px;pointer-events:auto}.mv-resetButton,.mv-controllersButton,.mv-downloadButton{height:34px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#141414d1;color:#ffffffbf;font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease,opacity .15s ease}.mv-resetButton:hover:not(:disabled),.mv-controllersButton:hover:not(:disabled),.mv-downloadButton:hover:not(:disabled){background:#282828eb;color:#fff;border-color:#ffffff40}.mv-resetButton:active:not(:disabled),.mv-controllersButton:active:not(:disabled),.mv-downloadButton:active:not(:disabled){background:#38dbf0;color:#06343c;border-color:#38dbf0}.mv-resetButton:disabled,.mv-controllersButton:disabled,.mv-downloadButton:disabled{opacity:.45;cursor:not-allowed}.mv-resetButton:focus-visible,.mv-controllersButton:focus-visible,.mv-downloadButton:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.mv-resetButton{width:34px;padding:0;flex-shrink:0}.mv-resetButton svg{width:15px;height:15px;flex-shrink:0;pointer-events:none}.mv-controllersWrapper{position:relative;display:inline-flex;flex-direction:column;align-items:stretch}.mv-controllersButton{width:34px;padding:0;flex-shrink:0}.mv-controllersButton svg{width:15px;height:15px;flex-shrink:0;pointer-events:none}.mv-controllersMenu{position:absolute;bottom:calc(100% + 6px);right:0;min-width:168px;display:flex;flex-direction:column;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#141414eb;box-shadow:0 16px 32px #0f172a66;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:100;animation:mv-menuReveal .12s ease}.mv-controllersMenuItem{display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;border:none;border-radius:6px;background:transparent;color:#fff;font-size:13px;font-weight:400;text-align:left;white-space:nowrap;cursor:pointer;transition:background .1s ease,color .1s ease}.mv-controllersMenuItem:hover:not(:disabled){background:#ffffff1a}.mv-controllersMenuItem--active{background:#38dbf026;color:#38dbf0;font-weight:600}.mv-controllersMenuItem--active:hover{background:#38dbf038}.mv-downloadWrapper{position:relative;display:inline-flex;flex-direction:column;align-items:stretch}.mv-downloadButton{padding:0 16px;flex-shrink:0}.mv-downloadButton svg{width:15px;height:15px;flex-shrink:0;pointer-events:none}.mv-downloadButton__spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:mv-spin .7s linear infinite;flex-shrink:0}.mv-downloadMenu{position:absolute;bottom:calc(100% + 6px);right:0;min-width:168px;display:flex;flex-direction:column;padding:6px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:#141414eb;box-shadow:0 16px 32px #0f172a66;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:hidden;z-index:100;animation:mv-menuReveal .12s ease}.mv-downloadMenuItem{display:flex;align-items:center;gap:9px;width:100%;padding:10px 14px;border:none;border-radius:6px;background:transparent;color:#fff;font-size:13px;font-weight:400;text-align:left;white-space:nowrap;cursor:pointer;transition:background .1s ease}.mv-downloadMenuItem:hover:not(:disabled){background:#ffffff1a}.mv-downloadMenuItem:disabled{opacity:.4;cursor:not-allowed}.mv-downloadMenuDivider{height:1px;margin:0 10px;background:#ffffff1a}.mv-downloadMenuNotice{max-width:220px;padding:8px 14px 11px;color:#fca5a5;font-size:11px;line-height:1.4}@keyframes mv-menuReveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes mv-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.mv-rightControls{flex-wrap:wrap;gap:6px}.mv-downloadButton{padding:0 10px;font-size:12px}}@media(max-width:480px){.mv-downloadButton{padding:0 10px;font-size:12px}.mv-downloadButton span{display:none}}.ri-annotationMarker{position:relative;width:36px;height:36px;border-radius:50%;background:#141414d1;border:2px solid rgba(255,255,255,.9);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;cursor:pointer;z-index:20;user-select:none;box-shadow:0 2px 8px #00000073;pointer-events:auto;transition:opacity .3s ease,transform .3s ease}.ri-annotationMarker:hover{transform:scale(1.08);box-shadow:0 12px 28px #0f172a2e;background:#282828eb}.ri-annotationPopup{position:absolute;width:min(270px,calc(100vw - 32px));background:#141414d9;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;z-index:30;display:flex;flex-direction:column;gap:12px;box-shadow:0 24px 48px #0f172a2e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.ri-annotationInput,.ri-annotationTextarea{width:100%;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#e5e7eb;border-radius:10px;padding:10px 12px;outline:none;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.ri-annotationInput{font-size:14px;font-weight:500}.ri-annotationTextarea{font-size:13px;resize:vertical;min-height:110px}.ri-annotationInput:focus,.ri-annotationTextarea:focus{border-color:#38dbf0;box-shadow:0 0 0 3px #38dbf01f}.ri-annotationActions{display:flex;align-items:center;gap:10px}.ri-annotationOkBtn{border:0;border-radius:8px;background:#38dbf0cc;color:#06343c;padding:8px 18px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.ri-annotationOkBtn:hover:not(:disabled){background:#38dbf0}.ri-annotationOkBtn:disabled,.ri-annotationOkBtn.disabled{opacity:.5;cursor:not-allowed}.ri-annotationCancelBtn{border:1px solid rgba(255,255,255,.12);background:transparent;color:#9ca3af;border-radius:8px;padding:8px 12px;font-size:13px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.ri-annotationCancelBtn:hover{background:#ffffff0d;border-color:#fff3}.ri-annotationIcons{margin-left:auto;display:flex;align-items:center;gap:12px;color:#9ca3af}.ri-annotationIcons svg{flex-shrink:0}.ri-viewAnnotationPopup{position:relative;background:#141414d9;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:12px 16px;min-width:200px;max-width:min(280px,calc(100vw - 48px));box-shadow:0 8px 24px #00000080;pointer-events:auto;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:ri-viewAnnotationFadeIn .15s ease-out;margin-left:24px;margin-top:-20px;isolation:isolate;z-index:1000}.ri-viewAnnotationClose{background:transparent;border:none;color:#b7bdc6;cursor:pointer;font-size:18px;padding:0 4px;transition:color .2s;line-height:1}.ri-viewAnnotationClose:hover{color:#e2e8f0}.ri-viewAnnotationDescription{margin:0;color:#cbd5e1;font-size:13px;line-height:1.4;word-wrap:break-word}@keyframes ri-viewAnnotationFadeIn{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ri-annotationNavSingle{position:absolute;bottom:120px;left:50%;transform:translate(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;pointer-events:none}.ri-annotationNavSingle>*{pointer-events:auto}.ri-navBadge{background:#ffffff1a;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:400;color:#ffffffb3}.ri-annotationTitleHint{background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:8px 20px;border-radius:8px;font-size:13px;border:1px solid rgba(255,255,255,.08);text-align:center;max-width:350px;animation:slideUp .3s ease}.ri-annotationHintTitle{font-weight:600;color:#e5e7eb}.ri-annotationHintDesc{font-size:12px;opacity:.6;margin-top:2px;color:#d1d5db}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ri-canvasArea .bb-loadingOverlay{position:absolute;inset:0;z-index:12;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#0f172a75;backdrop-filter:blur(1px)}.ri-canvasArea .bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(226,232,240,.24);border-top-color:#93c5fd;animation:bb-spin .8s linear infinite}.ri-canvasArea .bb-loadingMessage{max-width:320px;color:#f7f8f9;font-size:13px;font-weight:600;line-height:1.5}.ri-canvasArea .bb-loadingProgressRow{display:flex;align-items:center;gap:8px;width:100%;max-width:240px}.ri-canvasArea .bb-loadingProgress{flex:1;height:6px;border-radius:999px;background:#e2e8f03d;overflow:hidden}.ri-canvasArea .bb-loadingProgress__bar{height:100%;border-radius:inherit;background:#93c5fd}.ri-canvasArea .bb-loadingProgress__label{flex-shrink:0;min-width:34px;text-align:right;color:#f7f8f9;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.ri-largeModelBanner{position:absolute;top:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;pointer-events:auto;max-width:calc(100% - 32px);white-space:normal;text-align:center}.ri-largeModelBanner--offset{top:64px}.ri-largeModelBanner__icon{flex-shrink:0}.ri-largeModelBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.ri-largeModelBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}.ri-uvCheckerBanner{position:absolute;top:12px;right:12px;z-index:20;display:flex;align-items:center;gap:8px;max-width:min(360px,calc(100% - 24px));padding:7px 11px;border:1px solid rgba(244,114,182,.4);border-radius:8px;background:#280a23e6;color:#f9a8d4;font-size:12px;font-weight:500;line-height:1.4;text-align:left;pointer-events:none;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ri-uvCheckerBanner__icon{flex-shrink:0}@media(max-width:768px){.ri-xrTools{gap:6px}.ri-xrButton{height:34px;gap:6px;padding:0 8px;font-size:11px}.ri-xrButton svg{width:14px;height:14px}.ri-xrButtonPrefix{display:none}.ri-annotationNavSingle{bottom:100px}.ri-navButtonSingle{padding:8px 20px;font-size:13px;min-width:110px}.ri-annotationTitleHint{padding:6px 14px;font-size:12px;max-width:250px}.ri-viewAnnotationPopup{min-width:160px;max-width:220px;padding:10px 12px}.ri-viewAnnotationTitle{font-size:13px}.ri-viewAnnotationDescription{font-size:12px}.ri-buttonContainer{flex-wrap:wrap;gap:6px}.ri-tourControls,.ri-rightControls{flex-wrap:wrap}}@media(max-width:480px){.ri-xrTools{gap:5px}.ri-xrButton{height:34px;gap:5px;font-size:10px}.ri-xrButton svg{width:13px;height:13px}.ri-annotationNavSingle{bottom:80px}.ri-navButtonSingle{padding:6px 16px;font-size:12px;min-width:90px;gap:6px}.ri-annotationTitleHint{padding:4px 10px;font-size:11px;max-width:200px}.ri-navBadge{font-size:10px;padding:1px 6px}.ri-tourButton{padding:0 8px;font-size:12px}.ri-tourButton span{display:none}.ri-downloadButton{padding:0 10px;font-size:12px}.ri-downloadButton span{display:none}}.ri-license-overlay{display:flex;flex-direction:column;gap:10px;min-width:min(420px,calc(100% - 32px));max-width:min(460px,calc(100% - 32px));padding:20px 28px;border-radius:10px;color:var(--ri-license-overlay-text, #374151);background:var(--ri-license-overlay-bg, rgba(0, 0, 0, .04));border:1px solid var(--ri-license-overlay-border, rgba(0, 0, 0, .08));box-shadow:0 18px 42px #0f172a14}.ri-license-overlay__header{display:flex;align-items:center;gap:10px}.ri-license-overlay__statusDot{width:10px;height:10px;border-radius:999px;background:currentColor;opacity:.7;flex-shrink:0}.ri-license-overlay__icon{flex-shrink:0}.ri-license-overlay__title{font-size:14px;font-weight:700;line-height:1.2}.ri-license-overlay__message{margin:0;font-size:14px;font-weight:500;line-height:1.5}.ri-license-overlay--error{color:var(--ri-license-overlay-error-text, #c0392b);background:var(--ri-license-overlay-error-bg, rgba(192, 57, 43, .06));border:1px solid var(--ri-license-overlay-error-border, rgba(192, 57, 43, .2))}.ri-annotationMarker--hovered{transform:scale(1.08);box-shadow:0 12px 28px #0f172a2e;background:#282828eb}.ri-viewAnnotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ri-viewAnnotationTitle{margin:0;color:#e2e8f0;font-size:14px;font-weight:600}.mc__wrapper{position:absolute;bottom:-10px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;z-index:100}.mc__dpad{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:20px}.mc__middle-row{display:flex;align-items:center;gap:2px}.mc__joystick{width:60px;height:60px;flex-shrink:0;background:radial-gradient(circle at 40% 35%,#ffffff12,#0000008c);border-radius:50%;border:1.5px solid rgba(255,255,255,.15);position:relative;cursor:grab;touch-action:none;transition:border-color .2s ease,box-shadow .2s ease;margin:4px;box-shadow:0 4px 16px #00000080,0 0 0 4px #ffffff08}.mc__joystick:hover{border-color:#ffffff47;box-shadow:0 4px 20px #0000008c,0 0 0 4px #4285f414}.mc__joystick:active{cursor:grabbing;border-color:#4285f499;box-shadow:0 2px 12px #00000080,0 0 4px #4285f426}.mc__knob{position:absolute;top:50%;left:50%;width:34px;height:34px;margin-left:-17px;margin-top:-17px;background:linear-gradient(145deg,#5a9bf5,#1a66d9);border-radius:50%;cursor:grab;box-shadow:0 3px 10px #1a66d980,0 1px #ffffff40 inset;transition:transform .04s linear,box-shadow .1s ease;border:1.5px solid rgba(255,255,255,.45)}.mc__joystick:active .mc__knob{box-shadow:0 2px 16px #4285f4b3,0 1px #ffffff40 inset;animation:pulse .6s ease infinite}.mc__arrow{padding:0;margin:0;background:transparent;border:none;border-radius:0;box-shadow:none;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .1s ease,filter .15s ease;overflow:visible}.mc__arrow svg{display:block!important;pointer-events:none!important;user-select:none!important;-webkit-user-select:none!important;overflow:visible!important}.mc__arrow--up{margin-bottom:2px}.mc__arrow--up:hover{transform:scale(1.15) translateY(-2px);filter:drop-shadow(0 4px 12px rgba(66,133,244,.8))}.mc__arrow--up:active{transform:scale(.92) translateY(2px)}.mc__arrow--down{margin-top:2px}.mc__arrow--down:hover{transform:scale(1.15) translateY(2px);filter:drop-shadow(0 -4px 12px rgba(66,133,244,.8))}.mc__arrow--down:active{transform:scale(.92) translateY(-2px)}.mc__arrow--left{margin-right:2px}.mc__arrow--left:hover{transform:scale(1.15) translate(-2px);filter:drop-shadow(4px 0 12px rgba(66,133,244,.8))}.mc__arrow--left:active{transform:scale(.92) translate(2px)}.mc__arrow--right{margin-left:2px}.mc__arrow--right:hover{transform:scale(1.15) translate(2px);filter:drop-shadow(-4px 0 12px rgba(66,133,244,.8))}.mc__arrow--right:active{transform:scale(.92) translate(-2px)}@keyframes pulse{0%,to{box-shadow:0 2px 16px #4285f499,0 1px #ffffff40 inset;opacity:.85}50%{box-shadow:0 4px 24px #4285f4f2,0 1px #ffffff40 inset;opacity:1}}@media(max-width:768px){.mc__wrapper{bottom:-5px}.mc__joystick{width:68px;height:68px}.mc__knob{width:30px;height:30px;margin-left:-15px;margin-top:-15px}.mc__arrow--up:hover{transform:scale(1.1) translateY(-1px)}.mc__arrow--down:hover{transform:scale(1.1) translateY(1px)}.mc__arrow--left:hover{transform:scale(1.1) translate(-1px)}.mc__arrow--right:hover{transform:scale(1.1) translate(1px)}}@media(max-width:480px){.mc__joystick{width:56px;height:56px}.mc__knob{width:26px;height:26px;margin-left:-13px;margin-top:-13px}.mc__arrow--up{margin-bottom:1px}.mc__arrow--down{margin-top:1px}.mc__arrow--left{margin-right:1px}.mc__arrow--right{margin-left:1px}}@media(hover:none){.mc__arrow:hover{transform:none!important;filter:none!important}.mc__arrow:active{transform:scale(.92)!important}}.left-panel{width:280px;min-height:0;background:var(--ri-databinding-bg, #111318);border-right:1px solid var(--ri-databinding-border, rgba(255, 255, 255, .06));display:flex;flex-direction:column;padding:24px 18px;overflow-y:auto;font-family:var( --ri-databinding-font-family, "Inter", "Segoe UI", sans-serif );flex-shrink:0;transition:margin-left .45s cubic-bezier(.4,0,.2,1);box-shadow:var(--ri-databinding-shadow, 4px 0 24px rgba(0, 0, 0, .35))}.left-panel--open{margin-left:0}.left-panel--closed{margin-left:-280px}.left-panel::-webkit-scrollbar{width:4px}.left-panel::-webkit-scrollbar-track{background:transparent}.left-panel::-webkit-scrollbar-thumb{background:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:4px}.left-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__title{font-size:14px;font-weight:600;color:var(--ri-databinding-text, #f1f5f9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px;margin:0;letter-spacing:.02em}.left-panel__close-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:6px;color:var(--ri-databinding-text-subtle, #64748b);font-size:13px;flex-shrink:0;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.left-panel__close-btn:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));color:var(--ri-databinding-text-hover, #cbd5e1);border-color:var(--ri-databinding-border-hover, rgba(255, 255, 255, .15))}.left-panel__data{padding:12px 6px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));border-radius:10px;font-size:11px;font-family:var( --ri-databinding-mono-font-family, "JetBrains Mono", "Fira Code", "Menlo", monospace );color:var(--ri-databinding-text-muted, #94a3b8);line-height:1.7;overflow-x:auto;margin-bottom:18px}.left-panel__divider{border:none;border-top:1px solid var(--ri-databinding-border, rgba(255, 255, 255, .06));margin-bottom:16px}.left-panel__actions-label{font-size:10px;font-weight:600;color:var(--ri-databinding-text-faint, #475569);text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.left-panel__actions-list{display:flex;flex-direction:column;gap:6px}.left-panel__action-extra{display:grid;grid-template-rows:0fr;opacity:0;margin-top:0;transition:grid-template-rows .28s cubic-bezier(.4,0,.2,1),opacity .2s ease,margin-top .28s cubic-bezier(.4,0,.2,1)}.left-panel__action-extra--open{grid-template-rows:1fr;opacity:1;margin-top:4px}.left-panel__action-extra-inner{overflow:hidden;min-height:0}.left-panel__action-btn{position:relative;padding:9px 14px;border-radius:8px;text-align:left;font-size:13px;font-weight:500;cursor:pointer;overflow:hidden;border:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08));background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));color:var(--ri-databinding-text-muted, #94a3b8);letter-spacing:.01em}.left-panel__action-btn:active{transform:scale(.97)}.left-panel__action-btn--active:before{content:"";position:absolute;left:0;top:20%;bottom:20%;width:3px;background:var(--ri-databinding-accent, #93c5fd);border-radius:0 3px 3px 0;box-shadow:0 0 8px var(--ri-databinding-accent-glow, rgba(147, 197, 253, .8))}.left-panel__action-btn--active:hover{background:var( --ri-databinding-accent-gradient, linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 60%, #2563eb 100%) );border-color:var(--ri-databinding-accent-border, rgba(96, 165, 250, .55))}.left-panel__action-btn--active:active{transform:scale(.97);background:var( --ri-databinding-accent-gradient-active, linear-gradient(135deg, #1e3a8a 0%, #1e40af 100%) )}.left-panel__data{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}.left-panel__data-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:7px 10px;border-radius:7px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.left-panel__data-row:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-key{font-size:11px;font-weight:600;color:var(--ri-databinding-text-faint, #475569);text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;flex-shrink:0}.left-panel__data-value{font-size:12px;font-family:var( --ri-databinding-mono-font-family, "JetBrains Mono", "Fira Code", "Menlo", monospace );text-align:right;overflow-wrap:anywhere;word-break:break-word;min-width:0}.left-panel__data-group{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-radius:7px;background:var(--ri-databinding-surface, rgba(255, 255, 255, .03));border:1px solid transparent;transition:background .15s ease,border-color .15s ease}.left-panel__data-group:hover{background:var(--ri-databinding-surface-hover, rgba(255, 255, 255, .06));border-color:var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-children{display:flex;flex-direction:column;gap:2px;margin-top:4px;padding-left:10px;border-left:1px solid var(--ri-databinding-border-strong, rgba(255, 255, 255, .08))}.left-panel__data-children .left-panel__data-row,.left-panel__data-children .left-panel__data-group{padding:3px 0;background:transparent;border-color:transparent}.left-panel__data-children .left-panel__data-row:hover,.left-panel__data-children .left-panel__data-group:hover{background:transparent}@media(max-width:900px){.left-panel{width:50vw}.left-panel--open{margin-left:0}.left-panel--closed{margin-left:-50vw}.left-panel{padding:18px 12px}.left-panel__data-row{flex-direction:column;align-items:stretch;gap:2px;padding:6px 8px}.left-panel__data-group{padding:6px 8px}.left-panel__data-value{text-align:left;font-size:11.5px}.left-panel__data-children{padding-left:8px}}.ri-sidepanel-wrap{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible}.ri-sidepanel-wrap--open{width:300px;flex-shrink:0}.ri-sidepanel-wrap--closed{width:0;flex-shrink:0;overflow:hidden}.ri-sidepanel__open-btn{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:7px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-open-btn-bg, rgba(20, 20, 20, .82));cursor:pointer;font-size:13px;font-weight:500;color:var(--ri-sidepanel-text-muted, #94a3b8);z-index:190;transition:background .15s}.ri-sidepanel__open-btn:hover{background:var(--ri-sidepanel-open-btn-bg-hover, #27282b7e)}.ri-sidepanel{position:absolute;top:0;right:0;width:300px;height:100%;background:var(--ri-sidepanel-bg, #141824);display:flex;flex-direction:column;font-family:var( --ri-sidepanel-font-family, Inter, "Segoe UI", Helvetica, Arial, sans-serif );transform:translate(100%);transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:200;border-left:1px solid var(--ri-sidepanel-border, rgba(255, 255, 255, .06));box-shadow:var(--ri-sidepanel-shadow-right, -4px 0 24px rgba(0, 0, 0, .35))}.ri-sidepanel--open{transform:translate(0)}.ri-sidepanel--closed{transform:translate(100%)}.ri-sidepanel__header{padding:24px 20px 16px;border-bottom:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08))}.ri-sidepanel__header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.ri-sidepanel__eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--ri-sidepanel-text-subtle, #64748b);text-transform:uppercase}.ri-sidepanel__title{font-size:22px;font-weight:700;color:var(--ri-sidepanel-text, #f1f5f9);margin:0;line-height:1.2}.ri-sidepanel__close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05));cursor:pointer;color:var(--ri-sidepanel-text-muted, #94a3b8);transition:background .15s,color .15s;flex-shrink:0}.ri-sidepanel__close-btn:hover{background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .1));color:var(--ri-sidepanel-text, #f1f5f9)}.ri-sidepanel__search-wrap{padding:14px 16px;border-bottom:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08))}.ri-sidepanel__search{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--ri-sidepanel-border-strong, rgba(255, 255, 255, .08));background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05));color:var(--ri-sidepanel-text, #e2e8f0);font-size:13px;outline:none;box-sizing:border-box;transition:border-color .15s,background .15s}.ri-sidepanel__search::placeholder{color:var(--ri-sidepanel-placeholder, #475569)}.ri-sidepanel__search:focus{border-color:var(--ri-sidepanel-border-active, rgba(255, 255, 255, .18));background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .08))}.ri-sidepanel__list{display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;flex:1}.ri-sidepanel__list::-webkit-scrollbar{width:4px}.ri-sidepanel__list::-webkit-scrollbar-track{background:transparent}.ri-sidepanel__list::-webkit-scrollbar-thumb{background:var(--ri-sidepanel-surface-hover, rgba(255, 255, 255, .1));border-radius:4px}.ri-sidepanel__row{display:flex;justify-content:space-between;padding:12px 20px;cursor:pointer;width:100%;border:none;background:transparent;color:inherit;font:inherit;text-align:left;appearance:none;-webkit-appearance:none;transition:background .12s;border-bottom:1px solid var(--ri-sidepanel-divider, rgba(255, 255, 255, .04))}.ri-sidepanel__row:hover,.ri-sidepanel__row--hovered{background:var(--ri-sidepanel-surface, rgba(255, 255, 255, .05))}.ri-sidepanel__row--selected{background:var(--ri-sidepanel-accent-soft, rgba(59, 130, 246, .12))}.ri-sidepanel__label{font-size:14px;font-weight:600;color:var(--ri-sidepanel-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-sidepanel__label--hovered,.ri-sidepanel__label--selected{color:var(--ri-sidepanel-text-emphasis, #ffffff)}.ri-sidepanel__meta{font-size:12px;color:var(--ri-sidepanel-text-muted, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ri-sidepanel__vis-btn{display:flex;align-items:center;flex-shrink:0;cursor:pointer;background:none;border:none;padding:0;margin-left:10px}.ri-sidepanel__checkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--ri-sidepanel-border-active, rgba(255, 255, 255, .2));background:transparent;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.ri-sidepanel__checkbox--checked{background:var(--ri-sidepanel-accent, #3b82f6);border-color:var(--ri-sidepanel-accent, #3b82f6)}@media(max-width:900px){.ri-sidepanel-wrap--open,.ri-sidepanel{width:50vw}}.bb-root{--bb-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--bb-app-bg: radial-gradient( circle at top left, rgba(226, 232, 240, .8), transparent 30% ), linear-gradient(135deg, #f6f1e8 0%, #ebe8df 40%, #e9edf2 100%);--bb-app-text: #111827;--bb-sidebar-bg: linear-gradient(180deg, rgba(20, 27, 45, .98), rgba(25, 34, 57, .95)), #121826;--bb-sidebar-text: #f8fafc;--bb-sidebar-muted-text: #b3bfd2;--bb-sidebar-subtle-text: #94a3b8;--bb-sidebar-border: rgba(148, 163, 184, .18);--bb-sidebar-border-hover: rgba(148, 163, 184, .32);--bb-sidebar-divider: rgba(148, 163, 184, .14);--bb-sidebar-surface: rgba(255, 255, 255, .04);--bb-sidebar-surface-hover: rgba(255, 255, 255, .08);--bb-sidebar-surface-strong: rgba(255, 255, 255, .05);--bb-sidebar-eyebrow-bg: rgba(148, 163, 184, .16);--bb-sidebar-eyebrow-text: #cbd5e1;--bb-sidebar-left-shadow: 18px 0 42px rgba(15, 23, 42, .12);--bb-sidebar-right-shadow: -4px 0 24px rgba(0, 0, 0, .35);--bb-sidebar-chip-bg: rgba(15, 23, 42, .42);--bb-sidebar-chip-border: rgba(148, 163, 184, .14);--bb-sidebar-accent: rgba(99, 102, 241, .18);--bb-sidebar-accent-border: rgba(99, 102, 241, .4);--bb-sidebar-accent-text: #f8fafc;--bb-menu-bg: #1a1f2e;--bb-menu-shadow: 0 16px 32px rgba(15, 23, 42, .4);display:flex;height:100%;min-height:0;width:100%;background:var(--bb-app-bg);color:var(--bb-app-text);font-family:var(--bb-font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.bb-root *{box-sizing:border-box}.bb-root input,.bb-root select,.bb-root textarea,.bb-root button{font-family:inherit}.bb-sidebar{width:400px;min-height:0;flex-shrink:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bb-sidebar-bg);color:var(--bb-sidebar-text);transition:width .24s ease}.bb-sidebar--left{border-right:1px solid var(--bb-sidebar-border);box-shadow:var(--bb-sidebar-left-shadow)}.bb-sidebar--right{width:300px;border-left:1px solid var(--bb-sidebar-border);box-shadow:var(--bb-sidebar-right-shadow)}.bb-sidebar--collapsed{width:36px}.bb-sidebar--collapsed .bb-header{padding:5px;display:flex;justify-content:center}.bb-sidebar--collapsed .bb-header--sidebar{min-height:36px}.bb-sidebar--collapsed .bb-sidebarToggle{width:26px;height:26px;font-size:12px}.bb-header{padding:5px 20px;border-bottom:1px solid var(--bb-sidebar-divider)}.bb-header--sidebar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:55px}.bb-eyebrow{display:inline-block;margin-bottom:12px;padding:6px 10px;border-radius:999px;background:var(--bb-sidebar-eyebrow-bg);color:var(--bb-sidebar-eyebrow-text);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.bb-title{margin:0;font-size:20px;line-height:.95;letter-spacing:-.04em;font-weight:800;color:var(--bb-sidebar-text)}.bb-sidebarToggle{width:36px;height:36px;flex-shrink:0;border-radius:6px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface-strong);color:var(--bb-sidebar-text);font-size:16px;font-weight:800;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.bb-sidebarToggle:hover{transform:translateY(-1px);background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-subtitle{margin:0;max-width:32ch;font-size:15px;line-height:1.7;color:var(--bb-sidebar-muted-text)}.bb-statRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.bb-statChip{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 14px;border-radius:8px;background:var(--bb-sidebar-chip-bg);border:1px solid var(--bb-sidebar-chip-border);box-shadow:inset 0 1px #ffffff0a}.bb-statChip strong{font-size:13px;color:var(--bb-sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bb-statLabel{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bb-sidebar-subtle-text)}.bb-tabRow{display:flex;gap:6px;padding:10px 20px}.bb-tab{flex:1;padding:6px 10px;border-radius:6px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-muted-text);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.bb-tab:hover{background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-tab--active{background:var(--bb-sidebar-accent);border-color:var(--bb-sidebar-accent-border);color:var(--bb-sidebar-accent-text)}.bb-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 20px;border-bottom:1px solid var(--bb-sidebar-divider);flex-wrap:wrap}.bb-toolbarGroup{display:flex;align-items:center;gap:6px;min-width:0}.bb-toolbarDivider{width:1px;align-self:stretch;background:var(--bb-sidebar-divider);margin:0}.bb-iconButton{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:7px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-text);cursor:pointer;transition:background-color .18s ease,border-color .18s ease}.bb-iconButton:hover:not(:disabled){background:var(--bb-sidebar-surface-hover);border-color:var(--bb-sidebar-border-hover)}.bb-iconButton:disabled{opacity:.4;cursor:not-allowed}.bb-transformAxesGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bb-transformAxis{min-width:0}.bb-transformAxisLabel{display:block;width:auto;margin-bottom:4px;font-size:12px;font-weight:600}.bb-transformNumberInput{box-sizing:border-box;width:100%;min-width:0;padding-right:3px;padding-left:3px;text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}.bb-exportMenuWrapper{position:relative;display:inline-flex}.bb-exportMenu{position:absolute;bottom:calc(100% + 6px);right:0;z-index:20;display:flex;flex-direction:column;min-width:150px;padding:6px;border-radius:9px;border:1px solid var(--bb-sidebar-border);background:var(--bb-menu-bg);box-shadow:var(--bb-menu-shadow)}.bb-exportMenuItem{display:flex;align-items:center;gap:8px;padding:8px 10px;border:none;border-radius:6px;background:transparent;color:var(--bb-sidebar-text);font-size:12px;font-weight:600;text-align:left;cursor:pointer}.bb-exportMenuItem:hover{background:var(--bb-sidebar-surface-hover)}@media(max-width:640px){.bb-toolbarDivider{width:100%;height:1px}}.bb-button,.bb-fileLabel{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;border-radius:7px;border:1px solid var(--bb-sidebar-border);background:var(--bb-sidebar-surface);color:var(--bb-sidebar-text);font-size:12px;font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.bb-button:hover,.bb-fileLabel:hover{transform:translateY(-1px);background:#ffffff14;border-color:#94a3b852;box-shadow:0 10px 18px #0f172a2e}.bb-button:disabled,.bb-fileLabel:has(.bb-hiddenInput:disabled){opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.bb-button--ghost{background:#f8fafc14}.bb-hiddenInput{display:none}.bb-statusCard{margin-top:4px;padding:14px 16px;border-radius:9px;background:#0f172a70;border:1px solid rgba(148,163,184,.15)}.bb-statusCard--error{background:#7f1d1d52;border-color:#f871713d}.bb-statusCard--success{background:#064e3b57;border-color:#34d3993d}.bb-statusTitle{margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#cbd5e1}.bb-status{font-size:13px;line-height:1.55;color:#e2e8f0}.bb-status--error{color:#fecaca}.bb-status--success{color:#bbf7d0}.bb-input--error{border-color:#dc2626}.bb-nodeList{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;background:#141824}.bb-sectionHead{padding:24px 20px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.bb-sectionKicker{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#64748b}.bb-sectionHeading{margin-top:4px;font-size:22px;font-weight:700;line-height:1.2;color:#f1f5f9}.bb-search{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07)}.bb-input,.bb-select,.bb-textarea{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff0d;color:#e2e8f0;padding:10px 14px;font-size:13px;line-height:1.45}.bb-input::placeholder,.bb-textarea::placeholder{color:#475569}.bb-input--compact{width:64px;max-width:64px;flex:0 0 auto;padding:7px 4px;text-align:center}.bb-input:focus,.bb-select:focus,.bb-textarea:focus{outline:none;border-color:#ffffff2e;background:#ffffff14;box-shadow:none}.bb-textarea{min-height:110px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.bb-nodeItems{min-height:0;overflow-y:auto;padding:10px 0}.bb-nodeButton{width:100%;border:0;border-radius:0;background:transparent;padding:12px 20px;margin-bottom:0;text-align:left;cursor:pointer;transition:background-color .12s ease,color .12s ease;border-bottom:1px solid rgba(255,255,255,.04)}.bb-nodeButton:hover{background:#ffffff0d}.bb-nodeButton--active{background:#ffffff0d;box-shadow:none}.bb-nodeName{display:block;margin-bottom:2px;font-size:14px;font-weight:600;color:#e2e8f0}.bb-nodeMeta{display:block;font-size:11px;color:#94a3b8}.bb-editor{flex:1 1 auto;min-height:0;height:100%;overflow-y:auto;padding:16px 16px 28px;overscroll-behavior:contain}.bb-editorHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px;padding:18px;border-radius:11px;background:#ffffff0d;border:1px solid rgba(148,163,184,.12)}.bb-editorTitle{margin:8px 0 0;font-size:24px;line-height:1.1;color:#f8fafc}.bb-editorMeta{display:flex;flex-wrap:wrap;gap:8px 12px;margin-top:10px;font-size:12px;color:#94a3b8}.bb-editorBadge{flex-shrink:0;padding:8px 12px;border-radius:999px;background:#fbbf241f;border:1px solid rgba(251,191,36,.2);color:#fcd34d;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.bb-emptyEditor{padding:28px 8px;font-size:14px;color:#a7b1c3}.bb-section{margin-bottom:10px;border-radius:7px;background:#ffffff08;border:1px solid rgba(148,163,184,.12);overflow:hidden}.bb-sectionHeaderButton{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;background:#ffffff08;padding:11px 14px;cursor:pointer;text-align:left;color:inherit}.bb-sectionHeaderButton:hover{background:#ffffff0f}.bb-sectionHeaderMain{display:flex;min-width:0;align-items:center;gap:8px}.bb-sectionChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.bb-sectionChevron--open{transform:rotate(0)}.bb-sectionBody{display:flex;flex-direction:column;gap:4px;padding:14px;border-top:1px solid rgba(148,163,184,.1)}.bb-sectionTitle{margin:0;font-size:11px;font-weight:700;color:#c3cbdb;letter-spacing:.14em;text-transform:uppercase}.bb-sectionHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.bb-sectionHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.bb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bb-presetGallery{display:flex;justify-items:center;flex-wrap:wrap;gap:4px;margin-bottom:14px}.bb-presetSwatch{display:flex;flex-direction:column;align-items:center;gap:5px;width:64px;padding:6px 4px;border-radius:8px;border:1px solid rgba(148,163,184,.18);background:#94a3b80f;cursor:pointer;transition:border-color .15s,background .15s}.bb-presetSwatch:hover:not(:disabled){border-color:#94a3b866;background:#94a3b81f}.bb-presetSwatch:disabled{opacity:.4;cursor:not-allowed}.bb-presetSwatchColor{width:32px;height:32px;border-radius:999px;border:1px solid rgba(255,255,255,.18)}.bb-presetSwatchLabel{font-size:10px;font-weight:600;color:#cbd5e1;text-align:center;line-height:1.2}.bb-field{display:flex;flex-direction:column;gap:5px}.bb-field--full{grid-column:1 / -1}.bb-label{font-size:12px;font-weight:700;color:#d7dee9}.bb-note{font-size:11px;color:#8b97ab}.bb-linkButton{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}.bb-linkButton:hover{color:#f8fafc}.bb-tierLock{display:flex;align-items:center;gap:10px;padding:16px 14px;border-radius:7px;background:#fbbf2414;border:1px dashed rgba(251,191,36,.3);color:#fcd34d}.bb-tierLockMessage{margin:0;font-size:12px;font-weight:600}.bb-root--licenseChecking,.bb-root--licenseInvalid{align-items:center;justify-content:center}.bb-readonly{background:#94a3b814;color:#9ca3af}.bb-checkboxRow{display:flex;flex-wrap:wrap;gap:10px}.bb-checkbox{display:inline-flex;align-items:center;gap:8px;padding:6px 5px;border-radius:7px;background:#0f172a38;border:1px solid rgba(148,163,184,.12);font-size:13px;color:#d7dee9}.bb-checkbox input{accent-color:#f59e0b}.bb-sliderField{display:flex;align-items:center;gap:10px}.bb-slider{flex:1 1 auto;min-width:0;accent-color:#2aa8d8}.bb-slider--unset{opacity:.45}.bb-fileField{position:relative;display:flex;align-items:center}.bb-fileField-input{width:100%;padding-right:40px}.bb-fileFieldButton{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:5px;background:transparent;color:#aab4c5;cursor:pointer}.bb-fileFieldButton:hover{background:#ffffff14;color:#f8fafc}.bb-materialPanel{margin-top:8px;border:1px solid rgba(148,163,184,.14);border-radius:6px;background:#0f172a47;overflow:hidden}.bb-materialPanel:first-of-type{margin-top:0}.bb-materialPanelHeader{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;padding:10px 12px;background:#ffffff08;cursor:pointer;text-align:left;color:inherit}.bb-materialPanelHeader:hover{background:#ffffff0f}.bb-materialPanelTitleWrap{display:inline-flex;align-items:center;gap:8px;color:#dbe4f0}.bb-materialPanelChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.bb-materialPanelChevron--open{transform:rotate(0)}.bb-materialPanelTitle{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.bb-materialPanelHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.bb-materialPanelHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.bb-materialPanelBody{padding:12px;border-top:1px solid rgba(148,163,184,.1);display:flex;flex-direction:column;gap:10px}.bb-actionList{display:flex;flex-direction:column;gap:12px}.bb-actionCard{border:1px solid rgba(148,163,184,.14);border-radius:9px;padding:14px;background:#0f172a33}.bb-actionCardHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.bb-actionCardTitle{font-size:13px;font-weight:700;color:#f8fafc}.bb-actionCardMeta{flex-shrink:0;padding:5px 9px;border-radius:999px;background:#94a3b81f;color:#94a3b8;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.bb-actionGrid{display:grid;grid-template-columns:1fr;gap:10px}.bb-actionFooter{margin-top:12px}.bb-actionRemove{width:100%}.bb-cameraRowWithHint{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bb-moveHint{display:inline-flex;align-items:center;flex-wrap:wrap;gap:2px;white-space:nowrap;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffb3;border:1px solid rgba(148,163,184,.18);color:#475569;font-size:12px;font-weight:700}.bb-moveHint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin:0 1px;border-radius:4px;background:#bfbebe5f;border:1px solid rgba(255,255,255,.2);color:#000;font-family:inherit;font-size:10px;font-weight:700;line-height:1}.bb-previewShell{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;padding:5px;overflow:hidden}.bb-previewHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 4px 10px}.bb-previewControls{display:flex;align-items:flex-start;justify-content:flex-end;gap:10px;flex-wrap:wrap}.bb-previewControlsColumn{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.bb-previewTitle{margin:2px 0 0;font-size:20px;line-height:1.05;letter-spacing:-.03em;color:#1f2937}.bb-previewToggles{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.bb-checkbox--compact{gap:5px;padding:0;background:transparent;border:none;font-size:10px;font-weight:500;line-height:1;color:#4b5563}.bb-checkbox--compact:hover{background:transparent;transform:none}.bb-checkbox--compact input[type=checkbox]{width:11px;height:11px}.bb-previewMeta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.bb-removeModelButton{background-color:#ae3636;min-height:34px;padding:0 14px}.bb-removeModelButton:hover{background-color:#a31414}.bb-previewMeta span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#ffffffb3;border:1px solid rgba(148,163,184,.18);color:#475569;font-size:12px;font-weight:700}.bb-preview{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:hidden;border-radius:14px;background:radial-gradient(circle at top left,#ffffffeb,#ecf0f4d1),#f8fafc;border:1px solid rgba(148,163,184,.24);box-shadow:0 24px 48px #94a3b833,inset 0 1px #ffffffb3}.bb-loadingOverlay{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#f8fafcd1;backdrop-filter:blur(2px)}.bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(148,163,184,.3);border-top-color:#2563eb;animation:bb-spin .8s linear infinite}.bb-loadingProgressRow{display:flex;align-items:center;gap:8px;width:100%;max-width:240px}.bb-loadingProgress{flex:1;height:6px;border-radius:999px;background:#94a3b84d;overflow:hidden}.bb-loadingProgress__bar{height:100%;border-radius:inherit;background:#2563eb;transition:width .15s ease-out}.bb-loadingProgress__label{flex-shrink:0;min-width:34px;text-align:right;color:#475569;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.bb-loadingMessage{max-width:320px;color:#475569;font-size:13px;font-weight:600;line-height:1.5}.bb-previewStatus{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-previewStatus--success{background:#22c55e1f!important;border-color:#22c55e4d!important;color:#15803d!important}.bb-previewStatus--error{background:#ef44441f!important;border-color:#ef44444d!important;color:#b91c1c!important}.bb-previewModelName{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-previewPlaceholder{position:relative;display:flex;height:100%;width:100%;align-items:center;justify-content:center;padding:40px;text-align:center;color:#64748b;font-size:15px;line-height:1.7;border-radius:14px;border:2px dashed rgba(148,163,184,.24);background:radial-gradient(circle at top,rgba(251,191,36,.12),transparent 30%),linear-gradient(180deg,#ffffffd1,#eef2f8e6);transition:border-color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}.bb-previewPlaceholder>div{max-width:420px;display:flex;flex-direction:column;align-items:center;gap:14px}.bb-previewPlaceholderTitle{font-size:28px;line-height:1.05;letter-spacing:-.03em;font-weight:800;color:#1f2937}.bb-previewPlaceholderButton{margin-top:8px;border:0;border-radius:999px;padding:13px 22px;background:#135bc0;color:#fff;font-size:14px;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.bb-previewPlaceholderButton:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px #135bc047}.bb-previewPlaceholderButton:disabled{opacity:.6;cursor:not-allowed}.bb-previewPlaceholder--dragActive{border-color:#f59e0bbf;background:radial-gradient(circle at top,rgba(251,191,36,.22),transparent 32%),linear-gradient(180deg,#fffcf5f2,#fff4e6eb);transform:scale(.995);box-shadow:inset 0 0 0 1px #f59e0b24}.bb-sectionHeader{cursor:pointer;user-select:none}.bb-iconButton{background:none;border:none;cursor:pointer;font-size:16px;color:var(--bb-sidebar-subtle-text);transition:color .2s ease;padding:4px 8px;border-radius:4px}.bb-iconButton:hover{color:var(--bb-sidebar-text);background:var(--bb-sidebar-surface-strong)}.bb-cameraLive,.bb-cameraSaved{background:#0f172a70;border-radius:8px;padding:14px;margin-bottom:16px;border:1px solid rgba(148,163,184,.15);transition:all .2s ease}.bb-cameraLive:hover,.bb-cameraSaved:hover{border-color:#94a3b840;background:#0f172a85}.bb-cameraLiveHeader,.bb-cameraSavedHeader{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(148,163,184,.15)}.bb-cameraLiveBadge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;letter-spacing:.5px;text-transform:uppercase}.bb-cameraSavedBadge{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;letter-spacing:.5px;text-transform:uppercase}.bb-cameraLiveLabel,.bb-cameraSavedLabel{font-size:12px;font-weight:600;color:#cbd5e1}.bb-cameraValues{display:flex;flex-direction:column;gap:8px}.bb-cameraRow{display:flex;align-items:center;gap:10px;font-size:12px;flex-wrap:wrap}.bb-cameraLabel{font-weight:600;color:#94a3b8;min-width:58px;font-size:11px;letter-spacing:.02em}.bb-cameraCode{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:11px;background:#0000004d;padding:3px 8px;border-radius:4px;color:#fcd34d;letter-spacing:.02em;word-break:break-all}.bb-cameraPlaceholder{color:#94a3b8;font-size:12px;text-align:center;padding:16px;font-style:italic}.bb-cameraControls{display:flex;gap:10px;margin-bottom:14px;flex-wrap:wrap}.bb-button--primary:hover:not(:disabled){background:#1a68d6;transform:translateY(-1px)}.bb-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.bb-cameraMessage{padding:10px 14px;border-radius:6px;margin-bottom:14px;font-size:12px;font-weight:500;animation:slideIn .3s ease-out}.bb-cameraMessage--success{background:#10b98126;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.bb-cameraMessage--error{background:#ef444426;color:#ffe5e55c;border:1px solid rgba(255,248,248,.3)}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.bb-readonly{background:#94a3b814;color:#9ca3af;cursor:default}@media(max-width:980px){.bb-sidebar--left{width:100%;max-height:42vh}.bb-sidebar--collapsed{width:100%}.bb-previewShell{padding:14px}.bb-preview{min-height:44vh}.bb-previewHeader{flex-direction:column;align-items:flex-start}.bb-previewControls{width:100%;justify-content:flex-start}.bb-previewMeta{justify-content:flex-start}.bb-grid,.bb-actionGrid,.bb-statRow{grid-template-columns:1fr}}.bb-emptyAnnotations{padding:32px;text-align:center;background:#f5f5f5;border-radius:4px;color:#666;font-size:14px}.bb-annotationCard{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;padding:12px;transition:all .2s ease}.bb-annotationCard:hover{background:#fff;border-color:#4caf50;box-shadow:0 2px 8px #0000001a}.bb-annotationBadge{background:#4caf50;color:#fff;padding:2px 8px;border-radius:2px;font-size:11px;font-weight:600}.bb-annotationActions{display:flex;gap:8px}.bb-annotationEdit,.bb-annotationDelete{background:transparent;border:none;cursor:pointer;padding:4px;border-radius:2px;font-size:14px;transition:all .2s ease}.bb-annotationEdit:hover{background:#e8f5e9;transform:scale(1.05)}.bb-annotationDelete:hover{background:#ffebee;transform:scale(1.05)}.bb-annotationTitle{font-weight:600;font-size:14px;color:#333;margin-bottom:6px}.bb-annotationDescription{font-size:13px;color:#666;margin-bottom:8px;line-height:1.4}.bb-annotationPosition{font-size:11px;font-family:monospace;color:#999;background:#f0f0f0;padding:4px 6px;border-radius:2px;display:inline-block}.bb-modalOverlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-modal{background:#fff;border-radius:6px;width:500px;max-width:90%;box-shadow:0 8px 32px #0003;animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.bb-modalHeader{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e0e0e0}.bb-modalHeader h3{margin:0;font-size:18px;font-weight:600}.bb-modalClose{background:transparent;border:none;font-size:20px;cursor:pointer;color:#999;transition:color .2s ease}.bb-modalClose:hover{color:#333}.bb-modalBody{padding:20px}.bb-modalFooter{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e0e0e0}.bb-annotationsInfo{margin-top:8px}.bb-annotationsList{display:flex;flex-direction:column;gap:12px}.bb-annotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bb-annotationActions{display:flex;gap:4px}.bb-annotationAction{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:2px;display:flex;align-items:center;justify-content:center;transition:all .2s}.bb-annotationAction--edit:hover{border-radius:50%;background:#3b82f633;color:#3b82f6}.bb-annotationAction--delete:hover{border-radius:50%;background:#ef444433;color:#ef4444}.bb-editSpotOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-editSpotPopup{background:linear-gradient(180deg,#141b2dfa,#192239f2),#121826;border-radius:8px;padding:24px;min-width:400px;max-width:500px;border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 48px #0f172a4d}.bb-editSpotHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bb-editSpotTitle{color:#f8fafc;font-size:18px;font-weight:600;margin:0}.bb-editSpotClose{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;padding:0 4px;transition:color .2s ease}.bb-editSpotClose:hover{color:#f8fafc}.bb-editSpotBody{display:flex;flex-direction:column;gap:12px}.bb-editSpotBody .bb-input,.bb-editSpotBody .bb-textarea{background:#0f172a66;border-color:#94a3b833;color:#f8fafc}.bb-editSpotBody .bb-input:focus,.bb-editSpotBody .bb-textarea:focus{border-color:#fbbf24a6;box-shadow:0 0 0 4px #fbbf241f}.bb-editSpotBody .bb-label{color:#d7dee9}.bb-editSpotActions{display:flex;gap:8px;margin-top:8px}.bb-editSpotActions .bb-button{background:#ffffff0a;border:1px solid rgba(148,163,184,.18);color:#e5edf7}.bb-editSpotActions .bb-button:hover{background:#ffffff14;border-color:#94a3b852;transform:translateY(-1px)}.bb-button--danger{background:#ef4444;color:#fff;border:none;padding:8px 16px;border-radius:7px;cursor:pointer;font-size:13px;font-weight:700;display:flex;align-items:center;gap:4px;transition:all .2s ease}.bb-button--danger:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 10px 18px #ef444440}.bb-button--primary{background:#135bc0;border-color:transparent;color:#fff}.bb-button--primary:hover{background:#1a68d6}.bb-annotationCard{background:#0f172a70;border-left:4px solid #22d3ee;border-radius:8px;padding:16px;transition:all .2s ease;border:1px solid rgba(148,163,184,.15);box-shadow:inset 0 1px #ffffff08}.bb-annotationCard:hover{transform:translate(4px);background:#0f172a99;border-color:#94a3b840;box-shadow:0 4px 12px #0f172a4d}.bb-annotationBadge{display:inline-block;background:#22d3ee;color:#06343c;padding:2px 10px;border-radius:10px;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.bb-annotationTitle{font-weight:700;font-size:15px;color:#f8fafc;margin-bottom:8px;line-height:1.3}.bb-annotationDescription{font-size:13px;color:#cbd5e1;margin-bottom:12px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.bb-annotationPosition{font-size:11px;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;color:#94a3b8;background:#0000004d;padding:4px 8px;border-radius:4px;display:inline-block;margin-top:4px;letter-spacing:.02em}.bb-emptyAnnotations{padding:32px;text-align:center;background:#0f172a70;border-radius:10px;border:1px solid rgba(148,163,184,.15);color:#94a3b8;font-size:14px}@media(max-width:1280px){.bb-cameraRow{flex-direction:column;align-items:flex-start;gap:4px}.bb-cameraLabel{min-width:auto}.bb-cameraControls{flex-direction:column}.bb-cameraControls .bb-button{width:100%}}@media(max-width:1120px){.bb-sidebar--left{width:320px}.bb-sidebar--right{width:220px}.bb-grid,.bb-statRow{grid-template-columns:1fr}}@media(max-width:980px){.bb-root{flex-direction:column;height:auto;min-height:0}.bb-sidebar--left{width:100%!important;max-height:45vh;border-right:none;border-bottom:1px solid rgba(148,163,184,.18);box-shadow:0 18px 42px #0f172a1f}.bb-sidebar--right{width:100%!important;max-height:45vh;border-left:none;border-top:1px solid rgba(148,163,184,.18);box-shadow:0 -18px 42px #0f172a1f;order:3}.bb-sidebar--collapsed{width:100%!important;max-height:72px;overflow:hidden}.bb-sidebar--collapsed .bb-nodeList,.bb-sidebar--collapsed .bb-tabRow,.bb-sidebar--collapsed .bb-toolbar{display:none}.bb-previewShell{flex:1 1 auto;min-height:50vh;padding:14px;order:2}.bb-preview{min-height:44vh;border-radius:10px}.bb-previewHeader{flex-direction:column;align-items:flex-start;gap:12px}.bb-previewControls{width:100%;justify-content:flex-start;flex-wrap:wrap}.bb-previewMeta{justify-content:flex-start}.bb-previewMeta span{font-size:11px;padding:0 10px;min-height:30px}.bb-grid,.bb-actionGrid,.bb-statRow{grid-template-columns:1fr}.bb-editor{padding:12px 12px 20px}.bb-editorHeader{flex-direction:column;align-items:stretch;padding:14px}.bb-editorTitle{font-size:20px}.bb-editorBadge{align-self:flex-start}.bb-toolbar{flex-direction:column;gap:12px;padding:16px 20px 18px}.bb-toolbarDivider{width:100%;height:1px;margin:0}.bb-tabRow{padding:12px 16px 0;gap:6px}.bb-tab{font-size:10px;padding:8px 10px}.bb-header{padding:14px 16px 12px}.bb-header--sidebar{min-height:60px}.bb-title{font-size:17px}.bb-subtitle{font-size:13px}.bb-statChip{padding:10px 12px}.bb-statChip strong{font-size:12px}.bb-nodeButton{padding:10px 12px}.bb-nodeName{font-size:12px}.bb-nodeMeta{font-size:10px}.bb-section{padding:14px}.bb-sectionTitle{font-size:9px}.bb-field{gap:4px}.bb-label{font-size:11px}.bb-input,.bb-select,.bb-textarea{padding:9px 11px;font-size:12px}.bb-textarea{min-height:80px}.bb-button,.bb-fileLabel{min-height:36px;padding:0 14px;font-size:12px}.bb-previewPlaceholderTitle{font-size:22px}.bb-previewPlaceholderButton{padding:10px 18px;font-size:13px}.bb-editSpotPopup{min-width:90%;max-width:90%;padding:20px}.bb-modal{width:95%;max-width:95%}.bb-annotationCard{padding:12px}.bb-annotationTitle{font-size:14px}.bb-annotationDescription{font-size:12px}}@media(max-width:640px){.bb-root{flex-direction:column;height:auto;min-height:0}.bb-sidebar--left,.bb-sidebar--right{max-height:40vh;width:100%!important}.bb-previewShell{min-height:40vh;padding:10px}.bb-preview{min-height:35vh;border-radius:8px}.bb-previewHeader{flex-direction:column;align-items:flex-start;gap:8px;padding:0 0 12px}.bb-previewTitle{font-size:17px}.bb-previewControls{gap:6px}.bb-previewMeta span{font-size:10px;padding:0 8px;min-height:26px}.bb-editor{padding:10px 10px 16px}.bb-editorHeader{padding:12px;flex-direction:column;align-items:stretch}.bb-editorTitle{font-size:18px}.bb-editorMeta{font-size:11px;gap:6px 8px}.bb-editorBadge{font-size:9px;padding:4px 10px;align-self:flex-start}.bb-section{padding:12px;margin-bottom:12px}.bb-sectionTitle{font-size:9px;margin-bottom:10px}.bb-grid{gap:8px}.bb-field--full{grid-column:1 / -1}.bb-label{font-size:11px}.bb-input,.bb-select,.bb-textarea{padding:8px 10px;font-size:12px;border-radius:6px}.bb-textarea{min-height:70px}.bb-button,.bb-fileLabel{min-height:34px;padding:0 12px;font-size:11px;border-radius:6px}.bb-toolbar{padding:12px 14px 14px;gap:10px}.bb-tabRow{padding:10px 12px 0;gap:4px}.bb-tab{font-size:9px;padding:6px 8px;border-radius:4px}.bb-header{padding:10px 12px 8px}.bb-header--sidebar{min-height:52px}.bb-title{font-size:15px}.bb-subtitle{font-size:12px}.bb-eyebrow{font-size:9px;padding:4px 8px;margin-bottom:8px}.bb-statRow{gap:6px;margin-top:14px}.bb-statChip{padding:8px 10px;border-radius:6px}.bb-statChip strong{font-size:11px}.bb-statLabel{font-size:9px}.bb-sidebarToggle{width:30px;height:30px;font-size:14px;border-radius:5px}.bb-nodeItems{padding:4px 6px}.bb-nodeButton{padding:8px 10px;border-radius:6px;margin-bottom:4px}.bb-nodeName{font-size:11px}.bb-nodeMeta{font-size:10px}.bb-search{padding:8px 10px}.bb-statusCard{padding:10px 12px;border-radius:7px}.bb-status{font-size:12px}.bb-statusTitle{font-size:10px}.bb-checkboxRow{gap:6px}.bb-checkbox{padding:6px 10px;font-size:12px;border-radius:5px}.bb-actionCard{padding:10px;border-radius:7px}.bb-actionCardTitle{font-size:12px}.bb-actionCardMeta{font-size:9px;padding:3px 7px}.bb-previewPlaceholder{padding:24px;border-radius:8px}.bb-previewPlaceholderTitle{font-size:18px}.bb-previewPlaceholderButton{padding:8px 14px;font-size:12px;border-radius:999px}.bb-editSpotPopup{min-width:95%;max-width:95%;padding:16px;border-radius:6px}.bb-editSpotTitle{font-size:16px}.bb-editSpotActions .bb-button{padding:8px 12px;font-size:12px}.bb-modal{width:98%;max-width:98%;border-radius:5px}.bb-modalHeader{padding:12px 16px}.bb-modalHeader h3{font-size:16px}.bb-modalBody{padding:14px}.bb-modalFooter{padding:12px 16px;flex-direction:column;gap:8px}.bb-modalFooter .bb-button{width:100%;justify-content:center}.bb-annotationCard{padding:10px;border-left-width:3px;border-radius:6px}.bb-annotationTitle{font-size:13px}.bb-annotationDescription{font-size:11px}.bb-annotationPosition{font-size:10px;padding:3px 6px}.bb-annotationBadge{font-size:9px;padding:2px 8px}.bb-emptyAnnotations{padding:20px;font-size:12px;border-radius:7px}.bb-removeModelButton{min-height:30px;padding:0 10px;font-size:11px}.bb-annotationsList{gap:8px}.bb-cameraLive,.bb-cameraSaved{padding:10px;border-radius:6px}.bb-cameraLiveHeader,.bb-cameraSavedHeader{flex-wrap:wrap}.bb-cameraLiveLabel,.bb-cameraSavedLabel{font-size:11px}.bb-cameraRow{font-size:11px;gap:4px}.bb-cameraCode{font-size:10px;padding:2px 6px}.bb-cameraControls{flex-direction:column;gap:6px}.bb-cameraControls .bb-button{width:100%;justify-content:center}.bb-cameraMessage{font-size:11px;padding:8px 12px}.bb-readonly{font-size:11px;padding:6px 8px}}@media(max-width:420px){.bb-sidebar--left,.bb-sidebar--right{max-height:35vh}.bb-previewShell{min-height:35vh;padding:6px}.bb-preview{min-height:30vh;border-radius:6px}.bb-previewTitle{font-size:15px}.bb-previewMeta span{font-size:9px;padding:0 6px;min-height:22px}.bb-editorTitle{font-size:16px}.bb-title{font-size:13px}.bb-tab{font-size:8px;padding:5px 6px}.bb-button,.bb-fileLabel{font-size:10px;min-height:30px;padding:0 10px}.bb-input,.bb-select,.bb-textarea{font-size:11px;padding:6px 8px}.bb-statChip{padding:6px 8px}.bb-statChip strong{font-size:10px}.bb-previewPlaceholderTitle{font-size:15px}.bb-previewPlaceholderButton{font-size:11px;padding:6px 12px}.bb-editSpotPopup{padding:14px;border-radius:5px}.bb-editSpotTitle{font-size:14px}.bb-editSpotBody .bb-input,.bb-editSpotBody .bb-textarea{font-size:12px;padding:6px 8px}.bb-modalHeader h3{font-size:14px}.bb-annotationTitle{font-size:12px}}@media(max-width:980px){.bb-sidebar--collapsed .bb-header--sidebar{min-height:52px}.bb-sidebar--collapsed .bb-title{font-size:14px}.bb-sidebar--collapsed .bb-sidebarToggle{width:28px;height:28px;font-size:12px}}@media(hover:none)and (pointer:coarse){.bb-nodeButton:hover,.bb-button:hover,.bb-fileLabel:hover,.bb-tab:hover,.bb-sidebarToggle:hover,.bb-annotationCard:hover{transform:none}.bb-nodeButton:active,.bb-button:active,.bb-fileLabel:active,.bb-tab:active,.bb-sidebarToggle:active{transform:scale(.97);transition:transform .1s ease}}@media print{.bb-root{height:auto;min-height:0;background:#fff}.bb-sidebar--left,.bb-sidebar--right{width:100%!important;max-height:none!important;background:#fff!important;color:#000!important;border:1px solid #ddd!important;box-shadow:none!important}.bb-previewShell{min-height:auto!important;padding:10px!important}.bb-preview{min-height:auto!important;border-radius:4px!important;border:1px solid #ddd!important;box-shadow:none!important}.bb-button,.bb-fileLabel,.bb-sidebarToggle,.bb-tab,.bb-annotationAction,.bb-iconButton{display:none!important}.bb-nodeList{overflow:visible!important}.bb-previewPlaceholderButton{display:none!important}}.bb-checkboxRow{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:4px 0}.bb-checkbox{display:inline-flex;align-items:center;gap:8px;border-radius:7px;font-weight:600;font-size:13px;color:#f3eeee;cursor:pointer;user-select:none;transition:all .2s ease}.bb-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#f59e0b;cursor:pointer;flex-shrink:0}.bb-editorDivider{height:1px;background:#94a3b824;margin:4px 0 16px;width:100%}.bb-preview{position:relative;width:100%;height:100%;overflow:hidden}.ri-viewer{width:100%!important;height:100%!important;position:relative!important}.ri-buttonContainer{position:absolute!important;bottom:20px!important;right:20px!important;z-index:10000!important;display:flex!important;gap:10px!important;pointer-events:auto!important}.ri-downloadButton{display:flex!important;align-items:center!important;gap:6px!important;padding:10px 12px!important;background:#2f302f74!important;color:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer!important;font-size:12px!important;font-weight:500!important;box-shadow:0 2px 8px #00000026!important;opacity:1!important;visibility:visible!important}.ri-downloadButton svg{width:14px!important;height:14px!important}.ri-resetButton{display:flex!important;align-items:center!important;justify-content:center!important;padding:6px!important;background:#2f302f74!important;border:none!important;border-radius:6px!important;cursor:pointer!important;opacity:1!important;visibility:visible!important}.ri-resetButton svg{width:14px!important;height:14px!important}.bb-reset-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);animation:bb-fade-in .2s ease}.bb-reset-dialog{background:#1a1f2e;border-radius:12px;max-width:480px;width:90%;border:1px solid rgba(148,163,184,.18);box-shadow:0 24px 48px #00000080;animation:bb-slide-up .25s ease}.bb-reset-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(148,163,184,.1)}.bb-reset-title{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:700;color:#f8fafc}.bb-reset-title .bb-icon-warning{color:#f59e0b;flex-shrink:0}.bb-reset-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.bb-reset-close:hover{color:#f8fafc;background:#ffffff0f}.bb-reset-body{padding:20px 24px 24px}.bb-reset-message{margin:0 0 12px;font-size:15px;color:#e2e8f0;line-height:1.5}.bb-reset-message strong{color:#f8fafc}.bb-reset-details{color:#94a3b8;text-align:center;font-size:13px;line-height:1.6;margin:0 0 12px}.bb-reset-warning{display:flex;align-items:center;gap:8px;color:#f59e0b;font-size:13px;font-weight:600;margin:4px 0 0;padding:10px 12px;background:#f59e0b14;border-radius:6px;border:1px solid rgba(245,158,11,.15)}.bb-reset-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px 20px;border-top:1px solid rgba(148,163,184,.1)}.bb-reset-btn{padding:8px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid rgba(148,163,184,.18);background:#ffffff0a;color:#e2e8f0}.bb-reset-btn:hover{background:#ffffff14;transform:translateY(-1px)}.bb-reset-btn-danger{padding:8px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;background:#dc2626;color:#fff}.bb-reset-btn-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}@keyframes bb-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bb-slide-up{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.se-tabContent{display:flex;flex-direction:column}.se-tabContent *{box-sizing:border-box}.se-subTabRow{display:flex;justify-content:space-between;gap:6px;padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.1);margin-bottom:4px}.se-subTab{padding:8px 12px;display:flex;justify-items:center;border-radius:10px;border:1px solid rgba(148,163,184,.18);background:#ffffff0a;color:#b3bfd2;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.se-subTab:hover{background:#ffffff14;border-color:#94a3b852}.se-subTab--active{background:#6366f12e;border-color:#6366f166;color:#f8fafc}.se-generalContent{display:flex;flex-direction:column;padding-top:0}.se-placeholder{font-size:13px;color:#93a4c0}.se-section{margin-bottom:10px;border-radius:7px;background:#ffffff08;border:1px solid rgba(148,163,184,.12);overflow:hidden;padding:0}.se-section:last-child{margin-bottom:0}.se-sectionTitle{margin:0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c3cbdb;padding:11px 14px;border-bottom:1px solid rgba(148,163,184,.1)}.se-sectionBody{display:flex;flex-direction:column;gap:12px;padding:14px}.se-field{display:flex;flex-direction:column;gap:5px}.se-fieldInline{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.se-fieldLabel{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;color:#d7dee9}.se-fieldValue{font-variant-numeric:tabular-nums;font-size:12px;color:#93a4c0}.se-slider{width:100%;accent-color:#2aa8d8;cursor:pointer}.se-checkbox{width:18px;height:18px;accent-color:#2aa8d8;cursor:pointer}.se-select,.se-textInput,.se-numberInput{background:#0f172a47;border:1px solid rgba(148,163,184,.2);border-radius:7px;color:#f8fafc;font-size:13px;padding:11px 13px;outline:none}.se-select:focus,.se-textInput:focus,.se-numberInput:focus{outline:none;border-color:#2aa8d8a6;box-shadow:0 0 0 4px #2aa8d81f}.se-select{min-width:130px;text-transform:capitalize}.se-textInput,.se-numberInput{width:100%}.se-swatch{display:flex;align-items:center;justify-content:flex-end;min-width:96px;height:30px;padding:0 8px;border-radius:8px;border:1px solid rgba(148,163,184,.35);cursor:pointer;box-shadow:inset 0 0 0 1px #00000026}.se-swatchCode{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:#fff;mix-blend-mode:difference}.se-colorPicker{margin-top:6px;display:flex;flex-direction:column;gap:8px;width:fit-content}.se-colorPicker .react-colorful{width:100%;height:140px}.se-inlineColorPicker .react-colorful{width:100%;height:240px}.se-colorPickerPopover{z-index:1000;padding:10px;border-radius:8px;background:#1b2333;border:1px solid rgba(148,163,184,.25);box-shadow:0 12px 28px #0006}.se-colorPickerPopover .react-colorful{width:200px;height:160px}.se-vectorRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.se-vectorAxis{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#93a4c0}.se-panel{margin-bottom:10px;overflow:hidden;border:1px solid rgba(148,163,184,.12);border-radius:7px;background:#ffffff08}.se-panel:last-child{margin-bottom:0}.se-panelHeader{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;border:none;background:#ffffff08;padding:11px 14px;color:#e5e7eb;cursor:pointer;text-align:left}.se-panelHeader:hover{background:#ffffff0f}.se-panelHeaderMain{display:flex;min-width:0;align-items:center;gap:8px}.se-panelChevron{flex-shrink:0;color:#8b97ab;transform:rotate(-90deg);transition:transform .18s ease}.se-panelChevron--open{transform:rotate(0)}.se-panelTitle{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c3cbdb}.se-panelHelp{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:18px;height:18px;margin-left:2px;border-radius:999px;color:#b9c0ca;cursor:help;transition:background .18s ease,color .18s ease,transform .18s ease}.se-panelHelp:hover{background:#ffffff14;color:#eef2ff;transform:translateY(-.5px)}.se-panelTrailing{display:flex;align-items:center}.se-panelBody{display:flex;flex-direction:column;gap:12px;padding:14px;border-top:1px solid rgba(148,163,184,.1);background:transparent}.se-iconButton{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:#ffffff14;color:#d7dde8;cursor:pointer}.se-iconButton:hover{background:#ffffff1f}.se-axisStepperGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.se-axisStepper{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;min-height:30px;border-radius:10px;background:#1118279e;border:1px solid rgba(255,255,255,.05)}.se-axisStepperButton{display:inline-flex;align-items:center;justify-content:center;height:100%;border:none;background:transparent;color:#f3f4f6;cursor:pointer}.se-axisStepperButton:hover{background:#ffffff0a}.se-axisStepperLabel{text-align:center;font-size:15px;color:#f3f4f6}.se-segmentedControl{display:grid;grid-auto-flow:column;overflow:hidden;border-radius:10px;background:#1118279e}.se-segmentedControl--renderer{grid-template-columns:repeat(3,minmax(0,1fr))}.se-segmentedControl--renderer .se-segmentedOption{padding-inline:6px;font-size:12px}.se-segmentedOption{min-height:35px;border:none;background:transparent;color:#d1d5db;font-size:14px;text-transform:uppercase;cursor:pointer}.se-segmentedOption--active{background:#2aa8d8;color:#fff}.se-helperCard{padding:32px;text-align:center;background:#0f172a70;border-radius:10px;border:1px solid rgba(148,163,184,.15);color:#94a3b8;font-size:14px}.se-helperCard strong{font-size:14px}.se-helperCard span{font-size:13px;line-height:1.4;color:#c7d0df}.se-switch{position:relative;display:inline-flex;align-items:center}.se-switch input[type=checkbox]{position:absolute;left:0;top:0;z-index:10;width:100%;height:100%;cursor:pointer;opacity:0}.se-switchTrack{position:relative;display:inline-flex;align-items:center;gap:8px}.se-switchTrack:before{content:"";width:36px;height:20px;background:#4b5563;display:inline-block;border-radius:20px;transition:background-color .2s ease-in}.se-switchThumb{position:absolute;width:16px;height:16px;border-radius:50%;left:2px;top:2px;z-index:2;background:#fff;box-shadow:0 0 5px #0003;transition:.2s ease-in}.se-switch input[type=checkbox]:hover+.se-switchTrack .se-switchThumb{box-shadow:0 2px 15px #0003,0 3px 8px #0000001a}.se-switch input[type=checkbox]:checked+.se-switchTrack:before{background:#376fcb}.se-switch input[type=checkbox]:checked+.se-switchTrack .se-switchThumb{background:#4285f4;left:18px}.se-switchLabel{font-size:12px;font-weight:700;letter-spacing:.06em;color:#e5e7eb}.se-switch input[type=checkbox]:checked~.se-switchTrack .se-switchLabel{color:#2aa8d8}.se-lightList{display:flex;flex-direction:column;gap:4px}.se-lightRow{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.1);background:#ffffff08;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.se-lightRow:hover{background:#ffffff0f}.se-lightRow--active{background:#2aa8d81f;border-color:#2aa8d859}.se-lightRowLabel{font-size:13px;color:#d8e0ee}.se-lightActions{display:flex;gap:8px}.se-lightProps{display:flex;flex-direction:column;gap:14px;padding-top:4px;border-top:1px solid rgba(148,163,184,.1)}.se-animationList{display:flex;flex-direction:column;gap:14px}.se-animationCard{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:14px;border:1px solid rgba(148,163,184,.16);background:#0f172a7a}.se-animationCard--active{border-color:#2aa8d873;box-shadow:inset 0 0 0 1px #2aa8d829}.se-animationHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.se-animationHeading{display:flex;min-width:0;flex-direction:column;gap:6px}.se-animationTitleRow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.se-animationStatus,.se-animationBadge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.se-animationStatus{background:#2aa8d829;color:#9fe8ff}.se-animationBadge{background:#6366f12e;color:#d9ddff}.se-animationSource{font-size:12px;color:#93a4c0;word-break:break-word}.se-animationMeta{display:flex;flex-wrap:wrap;gap:8px}.se-animationMeta span{border-radius:999px;background:#ffffff0f;padding:4px 9px;font-size:12px;color:#c6d0e2}.se-animationDangerButton,.se-animationButton,.se-animationAutoplayButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:#ffffff0a;color:#e2e8f0;cursor:pointer;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.se-animationButton:disabled{opacity:.45;cursor:not-allowed}.se-animationDangerButton{width:36px;height:36px;color:#fca5a5}.se-animationDangerButton:hover,.se-animationButton:hover,.se-animationAutoplayButton:hover{background:#ffffff14;border-color:#94a3b857}.se-animationButtonRow{display:flex;flex-wrap:wrap;gap:10px}.se-animationButton{min-height:36px;padding:0 14px;font-size:13px;font-weight:600}.se-animationButton--icon{flex:1;min-width:0;padding:0;height:38px}.se-animationSeekRow{display:flex;align-items:center;gap:10px}.se-animationSeek{flex:1;min-width:0}.se-animationSeekTime{flex-shrink:0;min-width:86px;text-align:right;font-variant-numeric:tabular-nums;font-size:12px;color:#97a3b6}.se-animationGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.se-animationSpeedRow{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:10px;align-items:center}.se-animationSpeedInput{text-align:right}.se-animationAutoplayButton{align-self:flex-start;min-height:36px;padding:0 14px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.se-animationAutoplayButton--active{background:#2aa8d82e;border-color:#2aa8d86b;color:#dff8ff}.se-removedAnimations{overflow:hidden;border-radius:12px;border:1px solid rgba(148,163,184,.14);background:#ffffff08}.se-removedAnimationList{display:flex;flex-direction:column;gap:10px;padding:14px}.se-removedAnimationRow{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:10px;background:#0f172a6b;padding:12px}.se-removedAnimationName{font-size:13px;font-weight:600;color:#e2e8f0}@media(max-width:900px){.se-animationGrid,.se-animationSpeedRow{grid-template-columns:1fr}}.bb-viewSpotOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);animation:bb-fadeIn .2s ease}.bb-viewSpotPopup{background:#1e1e20;border-radius:12px;max-width:480px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;border:1px solid #333335;animation:bb-slideUp .25s ease}.bb-viewSpotHeader{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #2a2a2c}.bb-viewSpotTitle{font-size:18px;font-weight:600;color:#e8e8ea;margin:0}.bb-viewSpotClose{background:none;border:none;color:#888;font-size:24px;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.bb-viewSpotClose:hover{color:#e8e8ea}.bb-viewSpotBody{padding:24px}.bb-viewSpotDescription{color:#c8c8ca;font-size:14px;line-height:1.6;margin-bottom:20px;white-space:pre-wrap;word-break:break-word}.bb-viewSpotPosition{background:#141416;border-radius:8px;padding:12px 16px;margin-bottom:24px;font-size:13px;color:#a0a0a2;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bb-viewSpotLabel{font-weight:500;color:#888}.bb-viewSpotCode{background:#0a0a0c;padding:4px 10px;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:12px;color:#8be9fd}.bb-viewSpotActions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.bb-editAnnotationOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.bb-editAnnotationPopup{background:#0f141e;border-radius:16px;padding:24px;min-width:200px;max-width:400px;width:90%;border:1px solid rgba(148,163,184,.18)}.bb-editAnnotationHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(148,163,184,.12)}.bb-editAnnotationTitle{color:#f8fafc;font-size:18px;font-weight:600;margin:0}.bb-editAnnotationClose{background:none;border:none;color:#94a3b8;font-size:24px;cursor:pointer;padding:0 4px}.bb-editAnnotationClose:hover{color:#f8fafc}.bb-editAnnotationBody{display:flex;flex-direction:column;gap:14px}.bb-editAnnotationActions{display:flex;gap:8px;margin-top:8px}.se-cinematicHint{margin:0 0 10px;font-size:12px;line-height:1.5;color:#ffffff8c}.bb-button.se-cinematicAdd{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-bottom:12px;background:#135bc0;color:#fff}.bb-button.se-cinematicAdd:hover:not(:disabled){background:#1a68d6}.se-waypointList{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.se-waypointCard{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08}.se-waypointBadge{flex:none;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#06343c;background:#22d3ee}.se-waypointBody{flex:1;min-width:0}.se-waypointCoords{font-size:11px;line-height:1.4;color:#ffffff80;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.se-waypointActions{flex:none;display:flex;gap:2px}.se-waypointAction{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:6px;background:transparent;color:#ffffff80;cursor:pointer;transition:background .15s ease,color .15s ease}.se-waypointAction:hover:not(:disabled){background:#ffffff14;color:#fff}.se-waypointAction:disabled{opacity:.35;cursor:default}.se-waypointAction--delete:hover:not(:disabled){background:#f8717129;color:#f87171}.se-customBadge{display:inline-block;padding:1px 8px;border-radius:3px;background:#22d3ee26;color:#22d3ee;font-size:10px;font-weight:600;margin-top:4px}.se-customizeToggle{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:#ffffff08;border-radius:8px;border:1px solid rgba(148,163,184,.08);margin:8px 0 12px}.se-toggleLabel{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:#f8fafc;cursor:pointer;user-select:none}.se-toggleLabel input[type=checkbox]{width:16px;height:16px;accent-color:#22d3ee;cursor:pointer}.se-toggleLabel svg{color:#22d3ee;width:14px;height:14px}.se-toggleHint{font-size:11px;color:#fff6;padding-left:28px}.se-segmentBetween{display:flex;flex-direction:column;gap:6px;padding:10px 14px;margin:6px 0 6px 32px;background:#ffffff08;border-radius:6px;border-left:3px solid rgba(34,211,238,.25)}.se-segmentLabel{font-size:11px;font-weight:500;color:#ffffff73}.se-segmentControls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.se-durationLabel{font-size:10px;color:#ffffff59;font-weight:500;white-space:nowrap}.se-segmentSlider{flex:1;min-width:80px;max-width:150px;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;outline:none}.se-segmentSlider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#22d3ee;cursor:pointer;border:2px solid rgba(255,255,255,.2);box-shadow:0 1px 3px #0000004d}.se-segmentSlider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#22d3ee;cursor:pointer;border:2px solid rgba(255,255,255,.2)}.se-segmentValue{font-size:12px;font-weight:600;color:#22d3ee;min-width:36px;text-align:center}.se-presetButtons{display:flex;gap:4px}.se-presetButton{padding:2px 8px;background:#ffffff0f;border:1px solid rgba(148,163,184,.15);border-radius:4px;font-size:10px;color:#fff9;cursor:pointer;transition:all .2s ease;font-weight:500}.se-presetButton:hover{background:#22d3ee;color:#06343c;border-color:#22d3ee}.se-totalDuration{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 8px;margin:8px 0 12px;border-top:1px solid rgba(148,163,184,.1)}.se-totalLabel{font-size:12px;color:#ffffff80;font-weight:500}.se-totalValue{font-size:14px;font-weight:600;color:#22d3ee}.se-totalHint{font-size:11px;color:#ffffff59;font-weight:400;margin-left:8px}.se-row{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-radius:8px;border:1px solid rgba(148,163,184,.1);background:#ffffff08;transition:background-color .15s ease,border-color .15s ease}.se-row:hover{background:#ffffff0f}.se-row__label{font-size:12px;font-weight:700;color:#d7dee9}.se-row__value{display:flex;align-items:center}.se-toggle-btn{background:none;border:none;cursor:pointer;padding:0;margin:0}.se-toggle{position:relative;display:inline-flex;align-items:center;width:36px;height:20px;border-radius:20px;background:#4b5563;transition:background-color .2s ease-in}.se-toggle:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 5px #0003;transition:left .2s ease-in}.se-toggle--checked{background:#376fcb}.se-toggle--checked:after{left:18px;background:#4285f4}.se-toggle-btn:hover .se-toggle:after{box-shadow:0 2px 15px #0003,0 3px 8px #0000001a}.se-toggle-btn:active .se-toggle{opacity:.9}.se-row__checkbox{width:18px;height:18px;accent-color:#2aa8d8;cursor:pointer}.smv-root{--smv-panel-font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif;--smv-panel-bg: #141824;--smv-panel-bg-strong: #1a1f2e;--smv-panel-bg-strong-hover: #252b3b;--smv-panel-border: rgba(255, 255, 255, .06);--smv-panel-border-strong: rgba(255, 255, 255, .08);--smv-panel-border-active: rgba(255, 255, 255, .18);--smv-panel-shadow-left: 4px 0 24px rgba(0, 0, 0, .35);--smv-panel-shadow-right: -4px 0 24px rgba(0, 0, 0, .35);--smv-panel-text: #f1f5f9;--smv-panel-text-emphasis: #ffffff;--smv-panel-text-muted: #94a3b8;--smv-panel-text-subtle: #64748b;--smv-panel-surface: rgba(255, 255, 255, .05);--smv-panel-surface-hover: rgba(255, 255, 255, .1);--smv-panel-surface-soft: rgba(255, 255, 255, .04);--smv-panel-accent: #3b82f6;--smv-panel-accent-contrast: #ffffff;position:relative;width:100%;height:100%;min-height:0;overflow:hidden;display:flex;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-synthesis:none}.smv-canvasArea{flex:1;position:relative;min-width:0}.smv-upload-input{display:none}.smv-upload-toolbar{position:absolute;top:12px;left:50%;z-index:120;display:flex;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:5px 6px;border:1px solid var(--smv-panel-border-strong);border-radius:10px;background:#141824e0;color:var(--smv-panel-text);box-shadow:0 16px 30px #00000047;backdrop-filter:blur(14px);transform:translate(-50%)}.smv-upload-toolbar__name{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--smv-panel-text-muted);font-size:12px;font-weight:500}.smv-upload-toolbar__button{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 14px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#3b82f62e;color:var(--smv-panel-text-emphasis);font-size:12px;font-weight:600;cursor:pointer}.smv-upload-toolbar__button--ghost{background:var(--smv-panel-surface);color:var(--smv-panel-text-muted)}.smv-upload-empty-state{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:24px}.smv-upload-empty-state__card{width:min(440px,100%);padding:28px;border:1px dashed rgba(255,255,255,.2);border-radius:8px;color:var(--smv-panel-text);text-align:center;box-shadow:0 24px 40px #00000047;backdrop-filter:blur(14px)}.smv-upload-empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;margin-bottom:18px;border-radius:10px;background:#3b82f62e;color:#bfdbfe}.smv-upload-empty-state__title{margin:0 0 10px;color:var(--smv-panel-text-emphasis);font-size:24px;line-height:1.15}.smv-upload-empty-state__body{margin:0 0 18px;color:var(--smv-panel-text-muted);font-size:14px;font-weight:700;line-height:1.6}.smv-upload-empty-state__body code{color:var(--smv-panel-text-emphasis);font-family:var(--smv-panel-font-family)}.smv-upload-empty-state__button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 18px;border:none;border-radius:8px;background:#3b82f6;color:#eff6ff;font-size:13px;font-weight:700;cursor:pointer}.smv-upload-drop-overlay{position:absolute;inset:0;z-index:130;display:flex;align-items:center;justify-content:center;padding:24px;background:#080c147a;backdrop-filter:blur(4px)}.smv-upload-drop-overlay__card{display:inline-flex;align-items:center;gap:10px;padding:16px 20px;border:1px dashed rgba(191,219,254,.75);border-radius:10px;background:#1e293beb;color:#dbeafe;font-size:14px;font-weight:700;box-shadow:0 18px 36px #00000047}.smv-canvasArea .bb-loadingOverlay{position:absolute;inset:0;z-index:110;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;border-radius:14px;background:#0f172a75;backdrop-filter:blur(1px)}.smv-canvasArea .bb-loadingSpinner{width:40px;height:40px;border-radius:999px;border:3px solid rgba(226,232,240,.24);border-top-color:#93c5fd;animation:bb-spin .8s linear infinite}.smv-canvasArea .bb-loadingProgressRow{display:flex;align-items:center;gap:8px;width:100%;max-width:240px}.smv-canvasArea .bb-loadingProgress{flex:1;height:6px;border-radius:999px;background:#e2e8f03d;overflow:hidden}.smv-canvasArea .bb-loadingProgress__bar{height:100%;border-radius:inherit;background:#93c5fd;transition:width .15s ease-out}.smv-canvasArea .bb-loadingProgress__label{flex-shrink:0;min-width:34px;text-align:right;color:#f7f8fa;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.smv-canvasArea .bb-loadingMessage{max-width:320px;color:#f7f8fa;font-size:13px;font-weight:600;line-height:1.5}@keyframes bb-spin{to{transform:rotate(360deg)}}.right-panel-wrapper{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible}.right-panel-wrapper--open{width:300px;flex-shrink:0}.right-panel-wrapper--closed{width:0;flex-shrink:0}.left-panel-wrapper{height:100%;transition:width .45s cubic-bezier(.4,0,.2,1);overflow:visible;order:-1}.left-panel-wrapper--open{width:280px;flex-shrink:0}.left-panel-wrapper--closed{width:0;flex-shrink:0}.side-panel__open-btn.side-panel__open-btn--left{left:12px;right:auto}.side-panel.side-panel--left{left:0;right:auto;width:280px;transform:translate(-100%);border-left:none;border-right:1px solid var(--smv-panel-border);box-shadow:var(--smv-panel-shadow-left)}.side-panel.side-panel--open-left{transform:translate(0)}.side-panel.side-panel--closed-left{transform:translate(-100%)}.env-controls{display:flex;flex-direction:column;overflow-y:auto;flex:1}.env-section{border-bottom:1px solid var(--smv-panel-border-strong)}.env-section__header{display:flex;align-items:center;gap:6px;width:100%;padding:9px 14px;border:none;background:var(--smv-panel-surface-soft);color:var(--smv-panel-text-muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.env-section__chevron{transition:transform .15s}.env-section__chevron--collapsed{transform:rotate(-90deg)}.env-section__body{display:flex;flex-direction:column}.env-row{display:flex;gap:6px;align-items:center;min-height:32px;border-bottom:1px solid var(--smv-panel-surface)}.env-row__label{flex:0 0 42%;padding:0 0 0 14px;font-size:11.5px;font-weight:500;color:var(--smv-panel-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.env-row__value{flex:1;display:flex;align-items:center;padding:5px 10px 5px 8px;min-width:0}.env-row__value--slider{gap:6px}.env-checkbox-btn{display:flex;align-items:center;cursor:pointer;background:none;border:none;padding:0}.env-checkbox{width:15px;height:15px;border-radius:3px;border:1.5px solid var(--smv-panel-border-active);background:var(--smv-panel-surface-soft);display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.env-checkbox--checked{background:var(--smv-panel-accent);border-color:var(--smv-panel-accent)}.env-select{width:100%;padding:5px 8px;border-radius:4px;border:none;background:var(--smv-panel-surface-hover);color:var(--smv-panel-text);font-size:11.5px;outline:none;box-sizing:border-box;text-transform:capitalize}.env-color-swatch{position:relative;width:100%;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.env-color-swatch__hex{font-size:10.5px;font-weight:700;color:#0f172a;text-shadow:0 1px 1px rgba(255,255,255,.35);pointer-events:none;text-transform:uppercase}.env-color-swatch__input{position:absolute;inset:0;width:100%;height:100%;border:none;padding:0;opacity:0;cursor:pointer}.env-slider{flex:1;accent-color:var(--smv-panel-accent);cursor:pointer;min-width:0}.env-slider__value{flex-shrink:0;min-width:32px;padding:2px 5px;border-radius:4px;background:var(--smv-panel-surface-hover);color:var(--smv-panel-accent);font-size:10.5px;font-weight:600;text-align:center}.side-panel__open-btn{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:7px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-bg-strong);cursor:pointer;font-size:13px;font-weight:500;color:var(--smv-panel-text);z-index:190;transition:background .15s}.side-panel__open-btn:hover{background:var(--smv-panel-bg-strong-hover)}.side-panel{position:absolute;top:0;right:0;width:300px;height:100%;background:var(--smv-panel-bg);display:flex;flex-direction:column;font-family:var(--smv-panel-font-family);transform:translate(100%);transition:transform .45s cubic-bezier(.4,0,.2,1);z-index:200;border-left:1px solid var(--smv-panel-border);box-shadow:var(--smv-panel-shadow-right)}.side-panel--open{transform:translate(0)}.side-panel--closed{transform:translate(100%)}.side-panel__header{padding:24px 20px 16px;border-bottom:1px solid var(--smv-panel-border-strong)}.side-panel__header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.side-panel__eyebrow{font-size:15px;font-weight:700;letter-spacing:.12em;color:var(--smv-panel-text-subtle);text-transform:uppercase}.side-panel__title{font-size:22px;font-weight:700;color:var(--smv-panel-text);margin:0;line-height:1.2}.side-panel__close-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-surface);cursor:pointer;color:var(--smv-panel-text-muted);transition:background .15s,color .15s;flex-shrink:0}.side-panel__close-btn:hover{background:var(--smv-panel-surface-hover);color:var(--smv-panel-text)}.side-panel__search-wrap{padding:14px 16px;border-bottom:1px solid var(--smv-panel-border-strong)}.side-panel__search{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--smv-panel-border-strong);background:var(--smv-panel-surface);color:var(--smv-panel-text);font-size:13px;outline:none;box-sizing:border-box;transition:border-color .15s,background .15s}.side-panel__search::placeholder{color:var(--smv-panel-text-subtle)}.side-panel__search:focus{border-color:var(--smv-panel-border-active);background:var(--smv-panel-surface-hover)}.side-panel__list{display:flex;flex-direction:column;padding:10px 0;overflow-y:auto;flex:1}.side-panel__list::-webkit-scrollbar{width:4px}.side-panel__list::-webkit-scrollbar-track{background:transparent}.side-panel__list::-webkit-scrollbar-thumb{background:var(--smv-panel-surface-hover);border-radius:4px}.side-panel__row{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;cursor:pointer;transition:background .12s;border-bottom:1px solid var(--smv-panel-surface-soft)}.side-panel__row:hover,.side-panel__row--hovered{background:var(--smv-panel-surface)}.side-panel__label{font-size:14px;font-weight:600;color:var(--smv-panel-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.side-panel__label--hovered{color:var(--smv-panel-text-emphasis)}.side-panel__vis-btn{display:flex;align-items:center;flex-shrink:0;cursor:pointer;background:none;border:none;padding:0;margin-left:10px}.side-panel__checkbox{width:16px;height:16px;border-radius:4px;border:1.5px solid var(--smv-panel-border-active);background:transparent;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.side-panel__checkbox--checked{background:var(--smv-panel-accent);border-color:var(--smv-panel-accent)}@media(max-width:900px){.smv-upload-toolbar{top:56px;gap:8px;max-width:calc(100% - 24px);padding:8px 10px}.smv-upload-toolbar__name{max-width:140px}.right-panel-wrapper--open,.left-panel-wrapper--open{width:0}.side-panel,.side-panel.side-panel--left{width:min(300px,85vw)}}.smv-largeModelBanner{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:20;display:flex;align-items:center;gap:8px;padding:7px 12px 7px 10px;border-radius:8px;background:#1e1400e0;border:1px solid rgba(251,191,36,.35);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fbbf24;font-size:12px;font-weight:500;line-height:1.4;pointer-events:auto;max-width:calc(100% - 32px);text-align:center}.smv-largeModelBanner__icon{flex-shrink:0}.smv-largeModelBanner__dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:2px;background:none;border:none;border-radius:4px;color:#fbbf24b3;cursor:pointer;transition:color .15s ease,background .15s ease}.smv-largeModelBanner__dismiss:hover{color:#fbbf24;background:#fbbf241f}
|