.viewport3d-shell{border:1px solid color-mix(in srgb,var(--border-color) 80%,transparent);border-radius:var(--radius-md);height:100%;min-height:320px;overflow:hidden;position:relative}.viewport3d-stage{min-height:0;position:absolute;transform-origin:top left;transition:transform var(--viewport3d-stage-motion-duration,0s) var(--viewport3d-stage-motion-easing,ease);will-change:transform}.viewport3d-canvas{display:block;height:100%;width:100%}.viewport3d-model-progress{align-items:center;background:color-mix(in srgb,var(--bg-panel,#1f1f1e) 88%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 80%,transparent);border-radius:999px;bottom:var(--space-3,8px);box-shadow:var(--shadow-sm);display:flex;gap:8px;left:50%;padding:5px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:9}.viewport3d-model-progress__bar{background:color-mix(in srgb,var(--border-color) 60%,transparent);border-radius:999px;height:3px;overflow:hidden;width:72px}.viewport3d-model-progress__fill{background:var(--accent-fill,#1a5fb4);border-radius:999px;height:100%;transition:width .18s ease}.viewport3d-model-progress__label{color:var(--text-secondary,#a8a7a1);font-family:var(--font-sans,system-ui,sans-serif);font-size:10px;font-weight:600;letter-spacing:.02em;line-height:1;white-space:nowrap}@keyframes viewport3d-hand-swing{0%{transform:translateX(-16px)}50%{transform:translateX(16px)}to{transform:translateX(-16px)}}@keyframes viewport3d-hint-fadein{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.viewport3d-rotate-hint{align-items:center;animation:viewport3d-hint-fadein .45s ease .5s both;bottom:28px;display:flex;flex-direction:column;gap:9px;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);z-index:3}.viewport3d-rotate-hint__icon{animation:viewport3d-hand-swing 1.6s ease-in-out infinite;color:#fff;filter:drop-shadow(0 1px 5px rgba(0,0,0,.6));line-height:0}.viewport3d-rotate-hint__label{background:rgba(0,0,0,.48);border-radius:var(--radius-lg);color:#fff;font-size:var(--fs-4);font-weight:600;letter-spacing:.03em;padding:5px 13px;white-space:nowrap}.viewport3d-mini-btn,.viewport3d-primary-btn,.viewport3d-secondary-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--fs-4);font-weight:600;line-height:1;padding:var(--space-3) var(--space-region);transition:background .1s ease,border-color .1s ease,color .1s ease,box-shadow .1s ease}.viewport3d-flag-toggle:hover,.viewport3d-mini-btn:hover,.viewport3d-secondary-btn:hover{background:var(--bg-dark);border-color:color-mix(in srgb,var(--border-color) 70%,var(--accent-line) 30%)}.viewport3d-mini-btn:disabled,.viewport3d-primary-btn:disabled,.viewport3d-secondary-btn:disabled{cursor:not-allowed;opacity:.45}.viewport3d-primary-btn{background:var(--accent-fill);border-color:var(--accent-text);color:var(--accent-on-fill)}.viewport3d-primary-btn:hover:not(:disabled){background:var(--accent-fill-hover);border-color:var(--accent-fill-hover)}.viewport3d-flag-toggle{align-items:center;display:inline-flex;gap:var(--space-3)}.viewport3d-flag-toggle.is-active{background:var(--accent-blue-tint-8);border-color:color-mix(in srgb,var(--accent-line) 50%,var(--border-color));color:var(--accent-text)}.viewport3d-flag-toggle__icon{color:var(--accent-text);font-size:var(--fs-3);line-height:1;opacity:.7}.viewport3d-flag-toggle:not(.is-active) .viewport3d-flag-toggle__icon{color:var(--text-muted)}.viewport3d-mini-btn--danger,.viewport3d-secondary-btn--danger{border-color:var(--danger-soft-border);color:var(--status-danger)}.viewport3d-mini-btn--danger:hover,.viewport3d-secondary-btn--danger:hover{background:var(--danger-soft-bg);border-color:var(--status-danger)}.vp3d-lock-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;font:inherit;height:16px;justify-content:center;line-height:1;padding:0;pointer-events:auto;transition:background .1s ease,border-color .1s ease,color .1s ease,box-shadow .1s ease;width:16px;z-index:3}.vp3d-lock-btn:hover{background:var(--bg-dark);border-color:color-mix(in srgb,var(--border-color) 50%,var(--accent-line) 50%);color:var(--text-primary)}.vp3d-lock-btn--locked{background:color-mix(in srgb,var(--bg-panel) 60%,#f59e0b 40%);border-color:#f59e0b;color:#b45309;box-shadow:0 0 0 2px color-mix(in srgb,transparent 70%,#f59e0b 30%)}.vp3d-lock-btn--locked:hover{background:color-mix(in srgb,var(--bg-panel) 40%,#f59e0b 60%);border-color:#d97706;color:#92400e}html[data-theme=dark] .vp3d-lock-btn--locked{background:color-mix(in srgb,var(--bg-panel) 60%,#92400e 40%);border-color:#d97706;color:#fbbf24}html[data-theme=dark] .vp3d-lock-btn--locked:hover{border-color:#f59e0b;color:#fde68a}@keyframes vp3d-lock-badge-shake{0%{transform:translate(-50%,-50%) scale(1)}20%{transform:translate(-50%,-50%) scale(1.5) rotate(-12deg)}40%{transform:translate(-50%,-50%) scale(1.4) rotate(10deg)}60%{transform:translate(-50%,-50%) scale(1.25) rotate(-7deg)}80%{transform:translate(-50%,-50%) scale(1.1) rotate(4deg)}to{transform:translate(-50%,-50%) scale(1)}}.vp3d-lock-badge{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--bg-panel) 60%,#f59e0b 40%);border:1px solid #f59e0b;border-radius:var(--radius-sm);box-shadow:0 0 0 2px color-mix(in srgb,transparent 70%,#f59e0b 30%);color:#b45309;cursor:pointer;display:flex;font:inherit;height:16px;justify-content:center;padding:0;pointer-events:auto;transition:background .1s ease,border-color .1s ease;width:16px;z-index:2}.vp3d-lock-badge:hover{background:color-mix(in srgb,var(--bg-panel) 40%,#f59e0b 60%);border-color:#d97706}.vp3d-lock-badge--shake{animation:vp3d-lock-badge-shake .5s ease-in-out}html[data-theme=dark] .vp3d-lock-badge{background:color-mix(in srgb,var(--bg-panel) 60%,#92400e 40%);border-color:#d97706;color:#fbbf24}html[data-theme=dark] .vp3d-lock-badge:hover{border-color:#f59e0b;color:#fde68a}.vp3d-line-end-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--bg-panel) 74%,var(--accent-fill) 26%);border:1px solid color-mix(in srgb,var(--accent-line) 68%,white 32%);border-radius:var(--radius-sm);box-shadow:0 0 0 2px color-mix(in srgb,transparent 72%,var(--accent-line) 28%);color:color-mix(in srgb,var(--accent-text) 78%,black 22%);cursor:-webkit-grab;cursor:grab;display:flex;font:inherit;height:18px;justify-content:center;padding:0;pointer-events:auto;transition:background .1s ease,border-color .1s ease,color .1s ease,box-shadow .1s ease;width:18px;z-index:3}.vp3d-line-end-btn:hover{background:color-mix(in srgb,var(--bg-panel) 56%,var(--accent-fill) 44%);border-color:var(--accent-text);box-shadow:0 0 0 2px color-mix(in srgb,transparent 56%,var(--accent-line) 44%);color:var(--text-primary)}html[data-theme=dark] .vp3d-line-end-btn{background:color-mix(in srgb,var(--bg-panel) 70%,#1d4ed8 30%);border-color:color-mix(in srgb,#60a5fa 70%,white 30%);color:#bfdbfe}html[data-theme=dark] .vp3d-line-end-btn:hover{border-color:#60a5fa;box-shadow:0 0 0 2px color-mix(in srgb,transparent 52%,#60a5fa 48%);color:#eff6ff}.vp3d-line-point-badge{align-items:center;background:color-mix(in srgb,var(--bg-panel) 82%,var(--accent-fill) 18%);border:1px solid color-mix(in srgb,var(--accent-line) 60%,white 40%);border-radius:var(--radius-pill);box-shadow:0 1px 3px color-mix(in srgb,transparent 70%,black 30%);color:color-mix(in srgb,var(--accent-text) 80%,black 20%);display:flex;font-size:var(--fs-2);font-weight:600;height:16px;justify-content:center;line-height:1;min-width:16px;padding:0 3px;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:4}html[data-theme=dark] .vp3d-line-point-badge{background:color-mix(in srgb,var(--bg-panel) 74%,#1d4ed8 26%);border-color:color-mix(in srgb,#60a5fa 64%,white 36%);color:#dbeafe}.vp3d-child-pick-label{align-items:flex-start;background:color-mix(in srgb,var(--bg-panel) 90%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 74%,var(--accent-line) 26%);border-radius:var(--radius-md);box-shadow:0 10px 26px rgba(15,23,42,.16);color:var(--text-primary);flex-direction:column;gap:3px;max-width:min(240px,calc(100% - 24px));padding:7px 10px 8px;pointer-events:none;white-space:nowrap;z-index:4}.vp3d-child-pick-label strong{color:var(--text-primary);font-size:var(--fs-4);font-weight:700}.vp3d-child-pick-label span,.vp3d-child-pick-label strong{line-height:1.1;max-width:100%;overflow:hidden;text-overflow:ellipsis}.vp3d-child-pick-label span{color:var(--text-muted);font-size:var(--fs-3)}html[data-theme=dark] .vp3d-child-pick-label{background:color-mix(in srgb,var(--bg-panel) 78%,#0f172a 22%);border-color:color-mix(in srgb,var(--border-color) 58%,#60a5fa 42%);box-shadow:0 14px 32px rgba(2,6,23,.34)}.viewport3d-builder-hint,.viewport3d-empty-state,.viewport3d-missing-assets,.viewport3d-selection-pill{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--text-primary);position:absolute;z-index:2}.viewport3d-editor-header{align-items:center;background:color-mix(in srgb,var(--bg-panel) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(215,223,235,.7);border-radius:var(--radius-md) var(--radius-md) 0 0;container-type:inline-size;display:flex;justify-content:space-between;left:0;padding:var(--space-2) var(--space-3);pointer-events:auto;position:absolute;right:0;top:0;z-index:4}html[data-theme=dark] .viewport3d-editor-header{background:color-mix(in srgb,var(--bg-panel) 88%,transparent);border-bottom-color:rgba(255,255,255,.08)}.viewport3d-editor-header__left,.viewport3d-editor-header__right{align-items:center;display:flex;gap:var(--space-1);position:relative;z-index:1}.viewport3d-editor-header__center{left:50%;max-width:calc(100% - 300px);pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:0}.viewport3d-editor-header__bound-editor{align-items:center;display:flex;justify-content:center;left:50%;max-width:calc(100% - 240px);pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:2}.viewport3d-editor-header--simple .viewport3d-editor-header__center,.viewport3d-editor-header--simple .viewport3d-editor-header__left{display:none}.viewport3d-editor-header--simple .viewport3d-editor-header__right{margin-left:auto}.viewport3d-editor-header--merged{-webkit-backdrop-filter:none;backdrop-filter:none;background:transparent;border:0;border-radius:0;box-shadow:none;flex:1 1;height:auto;min-width:0;padding:0;position:relative}.viewport3d-editor-header--merged .viewport3d-tool-group{gap:1px;padding:1px}.viewport3d-editor-header--merged .viewport3d-tool-group__btn{height:20px;min-height:20px;min-width:20px;padding:1px 2px}.viewport3d-editor-header--merged .viewport3d-tool-group__icon{flex-basis:14px;height:14px;width:14px}.viewport3d-editor-header--merged .viewport3d-tool-group__icon svg{height:10px;width:10px}.viewport3d-editor-header--merged .vp3d-axes-toolbar{height:26px}.viewport3d-editor-header--merged .vp3d-axes-toolbar:not(:hover):not(:focus-within){width:24px}.viewport3d-editor-header--merged .vp3d-axes-toolbar .viewport3d-tool-group__btn.is-active{flex:0 0 20px;max-width:20px;min-width:20px;width:20px}.viewport3d-editor-header--merged .vp3d-axes-toolbar:focus-within .viewport3d-tool-group__btn,.viewport3d-editor-header--merged .vp3d-axes-toolbar:hover .viewport3d-tool-group__btn{min-width:20px}.viewport3d-editor-header--merged .canvas2d-craft-manager__name{height:20px;padding-bottom:1px;padding-top:1px}.viewport3d-editor-header--merged .canvas2d-workspace-toggle{gap:2px;padding:2px}.viewport3d-editor-header--merged .canvas2d-workspace-toggle__btn{font-size:10px;gap:3px;min-height:18px;padding:1px 5px}.viewport3d-editor-header--merged .canvas2d-workspace-toggle__icon svg{height:10px;width:10px}.viewport3d-editor-header--merged .canvas2d-workspace-toggle__pill{bottom:2px;top:2px}.viewport3d-editor-header .viewport3d-mini-btn{align-items:center;background:transparent;border-color:transparent;border-radius:var(--radius-sm);display:flex;height:28px;justify-content:center;padding:5px;width:28px}.viewport3d-tool-group{align-items:center;background:color-mix(in srgb,var(--bg-panel) 92%,var(--bg-subtle) 8%);border:1px solid var(--border-color);border-radius:var(--radius-md);display:inline-flex;gap:var(--space-1);padding:var(--space-1);position:relative}html[data-theme=dark] .viewport3d-tool-group{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}.viewport3d-tool-group__btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--fs-3);font-weight:600;height:24px;justify-content:center;line-height:1;min-width:24px;outline:none;overflow:hidden;padding:0;transition:background .15s ease,border-color .15s ease,color .15s ease}.viewport3d-tool-group__btn:hover{background:var(--bg-hover,rgba(74,144,226,.08));border-color:color-mix(in srgb,var(--border-color) 80%,transparent);color:var(--text-primary)}.viewport3d-tool-group__btn:disabled{cursor:not-allowed;opacity:.38}.viewport3d-tool-group__icon{align-items:center;display:inline-flex;flex:0 0 24px;height:24px;justify-content:center;width:24px}.viewport3d-tool-group__label-wrap{display:block;margin-left:0;max-width:0;min-width:0;opacity:0;overflow:hidden;transition:max-width .16s cubic-bezier(.4,0,.2,1),margin-left .16s cubic-bezier(.4,0,.2,1),opacity .12s ease}.viewport3d-tool-group__label-wrap>.viewport3d-tool-group__label{min-width:0}.viewport3d-tool-group__btn.is-active .viewport3d-tool-group__label-wrap,.viewport3d-tool-group__btn:hover .viewport3d-tool-group__label-wrap{max-width:160px;margin-left:var(--space-px);opacity:1}.viewport3d-tool-group__label{display:inline-block;min-width:0;overflow:hidden;padding-right:var(--space-3);white-space:nowrap}.viewport3d-tool-group__btn--force-label .viewport3d-tool-group__label-wrap{max-width:160px;margin-left:var(--space-px);opacity:1}@container (max-width: 600px){.viewport3d-tool-group__btn--force-label .viewport3d-tool-group__label-wrap{max-width:0;margin-left:0;opacity:0}}.viewport3d-tool-menu-wrap{display:flex;position:relative}.viewport3d-editor-header .viewport3d-mini-btn.is-active{background:var(--accent-blue-tint-8,rgba(74,144,226,.12));border-color:var(--accent-text,#4a90e2);color:var(--accent-text,#4a90e2)}.viewport3d-editor-header .viewport3d-mini-btn:hover:not(:disabled){background:var(--accent-blue-tint-8,rgba(74,144,226,.1));border-color:color-mix(in srgb,var(--accent-line,#4a90e2) 40%,var(--border-color));color:var(--accent-text,#4a90e2)}html[data-theme=dark] .viewport3d-editor-header .viewport3d-mini-btn:hover:not(:disabled){background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.1);color:var(--text-primary)}.viewport3d-ui-panel-layer{bottom:0;left:0;pointer-events:none;position:absolute;right:0;z-index:3;transition:top .14s ease}.view-element:not(.view-element--strip):focus-within:has(.viewport3d-shell) .viewport3d-ui-panel-layer,.view-element:not(.view-element--strip):hover:has(.viewport3d-shell) .viewport3d-ui-panel-layer{top:40px!important}.viewport3d-ui-panel-shell{pointer-events:none;position:absolute}.viewport3d-ui-panel-shell>*{pointer-events:auto}.viewport3d-ui-panel__clip{inset:0;overflow:visible;position:absolute}.viewport3d-ui-panel__clip--floating{overflow:visible}.viewport3d-ui-panel-shell--floating.is-floating-collapsed{overflow:visible;cursor:pointer;pointer-events:auto}.viewport3d-ui-panel-shell--floating.is-collapse-animating{transition:left .3s cubic-bezier(.22,1,.36,1),top .3s cubic-bezier(.22,1,.36,1),width .3s cubic-bezier(.22,1,.36,1),height .3s cubic-bezier(.22,1,.36,1)}.viewport3d-ui-panel__floating-pill{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;cursor:pointer;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--bg-panel) 92%,white 8%);border:1px solid color-mix(in srgb,var(--border-color) 84%,transparent);color:var(--text-primary);box-shadow:0 10px 26px rgba(15,23,42,.12)}.viewport3d-ui-panel__collapse-reveal,.viewport3d-ui-panel__floating-pill{opacity:.2;transition:opacity .45s ease}.viewport3d-shell--chrome-idle .viewport3d-ui-panel__collapse-reveal,.viewport3d-shell--chrome-idle .viewport3d-ui-panel__floating-pill{opacity:0}.viewport3d-ui-panel-shell--floating:hover .viewport3d-ui-panel__floating-pill,.viewport3d-ui-panel__collapse-reveal:focus-visible,.viewport3d-ui-panel__collapse-reveal:hover{opacity:1;transition:opacity .14s ease}.viewport3d-ui-panel__collapse-reveal.is-collapse-hiding{opacity:0;pointer-events:none;transition:opacity .14s ease}@media (prefers-reduced-motion:reduce){.viewport3d-ui-panel-shell--floating:hover .viewport3d-ui-panel__floating-pill,.viewport3d-ui-panel__collapse-reveal,.viewport3d-ui-panel__collapse-reveal.is-collapse-hiding,.viewport3d-ui-panel__collapse-reveal:hover,.viewport3d-ui-panel__floating-pill{transition-duration:1ms}}.viewport3d-ui-panel-shell--floating.is-floating-collapsed .viewport3d-ui-panel__clip{opacity:0;pointer-events:none;transition:opacity .14s ease}.viewport3d-ui-panel{background:color-mix(in srgb,var(--bg-panel) 94%,white 6%);border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--text-primary);display:flex;flex-direction:column;min-width:0;overflow:hidden;pointer-events:auto;position:absolute}.viewport3d-ui-panel:has(.viewport3d-ui-panel__select-shell.is-open){overflow:visible}html[data-theme=dark] .viewport3d-ui-panel{background:color-mix(in srgb,var(--bg-panel) 90%,#0f172a 10%);border-color:rgba(255,255,255,.08)}.viewport3d-ui-panel.is-selected{border-color:color-mix(in srgb,var(--accent-line) 52%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 72%,var(--accent-line) 28%)}.viewport3d-ui-panel.is-transparent-bg{background:transparent;box-shadow:none;pointer-events:none}.viewport3d-ui-panel.is-transparent-bg>*{pointer-events:auto}.viewport3d-ui-panel.is-transparent-bg .viewport3d-ui-panel__header{background:color-mix(in srgb,var(--bg-panel) 94%,white 6%);border-radius:var(--radius-md) var(--radius-md) 0 0;margin:-1px -1px 0;padding:var(--space-1) var(--space-px)}.viewport3d-ui-panel--chrome-hidden.is-transparent-bg,html[data-theme=dark] .viewport3d-ui-panel--chrome-hidden.is-transparent-bg{border:none;outline:none;box-shadow:none;background:transparent}.viewport3d-ui-panel--chrome-hidden.is-transparent-bg .viewport3d-ui-panel__header{background:transparent}.viewport3d-assistant-focus-target{border-radius:var(--radius-md);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-line) 48%,transparent);animation:viewport3d-assistant-focus-pulse 1s ease-in-out 2}@keyframes viewport3d-assistant-focus-pulse{0%,to{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-line) 24%,transparent);background:transparent}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-line) 58%,transparent);background:color-mix(in srgb,var(--accent-fill) 10%,transparent)}}.viewport3d-ui-panel.is-ancestor-selected{border-color:color-mix(in srgb,var(--accent-line) 34%,var(--border-color))}.viewport3d-ui-panel--chrome-hidden{background:transparent;border-color:transparent;box-shadow:none}.viewport3d-ui-panel--pinned{border-radius:0;transition:transform var(--viewport3d-ui-panel-slide-duration,.5s) var(--viewport3d-ui-panel-slide-easing,cubic-bezier(.22,1,.36,1)),opacity var(--viewport3d-ui-panel-slide-duration,.5s) ease,box-shadow .2s ease,border-color .12s ease;will-change:transform,opacity}.viewport3d-ui-panel--top{border-top-color:transparent!important;border-left-color:transparent!important;border-right-color:transparent!important}.viewport3d-ui-panel--bottom{border-bottom-color:transparent!important;border-left-color:transparent!important;border-right-color:transparent!important}.viewport3d-ui-panel--left{border-left-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.viewport3d-ui-panel--right{border-right-color:transparent!important;border-top-color:transparent!important;border-bottom-color:transparent!important}.viewport3d-ui-panel--pinned.is-collapsed{opacity:.08;pointer-events:none}.viewport3d-ui-panel--top.is-collapsed{transform:translate3d(0,-100%,0)}.viewport3d-ui-panel--bottom.is-collapsed{transform:translate3d(0,100%,0)}.viewport3d-ui-panel--left.is-collapsed{transform:translate3d(-100%,0,0)}.viewport3d-ui-panel--right.is-collapsed{transform:translate3d(100%,0,0)}.viewport3d-ui-panel--bottom,.viewport3d-ui-panel--top{left:0;right:0}.viewport3d-ui-panel--left,.viewport3d-ui-panel--right{top:0;bottom:0}.viewport3d-ui-panel__header{align-items:center;background:color-mix(in srgb,var(--bg-subtle) 82%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border-color) 76%,transparent);cursor:-webkit-grab;cursor:grab;display:flex;gap:var(--space-4);min-height:34px;padding:var(--space-3) var(--space-4)}.viewport3d-ui-panel__header-actions{align-items:center;display:flex;gap:var(--space-3);margin-left:auto}.viewport3d-ui-panel__saved-header{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-4);min-height:0;padding:var(--space-5) var(--space-5) 0}.viewport3d-ui-panel__saved-header.is-draggable{cursor:-webkit-grab;cursor:grab}.viewport3d-ui-panel__saved-header.is-chrome-hidden{background:transparent;padding-left:0;padding-right:0;padding-top:0}.viewport3d-ui-panel__saved-title{color:color-mix(in srgb,var(--text-primary) 90%,var(--text-secondary) 10%);flex:1 1;font-size:var(--fs-6);font-weight:600;letter-spacing:-.015em;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-ui-panel--saved-inline-header .viewport3d-ui-panel__collapse-btn{height:20px;width:20px}.viewport3d-ui-panel__title,.viewport3d-ui-panel__title-input{color:var(--text-primary);flex:1 1;font:inherit;font-size:var(--fs-4);font-weight:600;min-width:0}.viewport3d-ui-panel__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-ui-panel__title-input{background:transparent;border:none;outline:none;padding:0}.viewport3d-ui-panel__title-input::placeholder{color:var(--text-muted)}.viewport3d-ui-panel__menu-wrap{display:flex;gap:var(--space-3);position:relative}.viewport3d-ui-panel__add-btn,.viewport3d-ui-panel__collapse-btn,.viewport3d-ui-panel__layout-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:24px;justify-content:center;padding:0;transition:background 80ms ease,border-color 80ms ease,color 80ms ease;width:24px}.viewport3d-ui-panel__add-btn:hover,.viewport3d-ui-panel__collapse-btn:hover,.viewport3d-ui-panel__layout-btn.is-active,.viewport3d-ui-panel__layout-btn:hover{background:var(--bg-hover);border-color:color-mix(in srgb,var(--border-color) 80%,transparent);color:var(--text-primary)}.viewport3d-ui-panel__collapse-reveal{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--bg-panel) 92%,white 8%);border:1px solid color-mix(in srgb,var(--border-color) 84%,transparent);border-radius:var(--radius-sm);box-shadow:0 10px 26px rgba(15,23,42,.12);color:var(--text-primary);cursor:pointer;display:inline-flex;gap:var(--space-4);max-width:calc(100% - 12px);min-height:24px;padding:var(--space-2) var(--space-5);position:absolute;transition:opacity .45s ease,background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease,transform .24s ease;z-index:2}.viewport3d-ui-panel__collapse-reveal:hover{background:color-mix(in srgb,var(--bg-hover) 86%,var(--bg-panel));border-color:color-mix(in srgb,var(--accent-line) 35%,var(--border-color))}.viewport3d-ui-panel__collapse-reveal.is-selected{border-color:color-mix(in srgb,var(--accent-line) 55%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 64%,var(--accent-line) 36%),0 10px 26px rgba(15,23,42,.12)}.viewport3d-ui-panel__collapse-reveal--bottom,.viewport3d-ui-panel__collapse-reveal--top{left:50%;transform:translateX(-50%);justify-content:center;min-width:44px;padding:3px 14px}.viewport3d-ui-panel__collapse-reveal--top{top:0;bottom:auto;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.viewport3d-ui-panel__collapse-reveal--bottom{bottom:0;top:auto;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.viewport3d-ui-panel__collapse-reveal--left,.viewport3d-ui-panel__collapse-reveal--right{top:50%;justify-content:center;max-width:none;min-height:44px;min-width:0;padding:14px 3px;transform:translateY(-50%);transform-origin:center;width:22px}.viewport3d-ui-panel__collapse-reveal--left{left:0;right:auto;border-radius:0 var(--radius-lg) var(--radius-lg) 0}.viewport3d-ui-panel__collapse-reveal--right{right:0;left:auto;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.viewport3d-ui-panel__collapse-reveal-icon{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center}.viewport3d-ui-panel__collapse-reveal-label{font-size:var(--fs-3);font-weight:600;line-height:1;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-ui-panel__layout-btn.is-active{background:color-mix(in srgb,var(--accent-fill) 14%,var(--bg-panel));border-color:color-mix(in srgb,var(--accent-line) 55%,var(--border-color));color:var(--accent-text)}.viewport3d-ui-panel__menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(15,23,42,.18);display:flex;flex-direction:column;gap:var(--space-1);min-width:180px;padding:var(--space-2);position:absolute;right:0;top:calc(100% + 6px);z-index:8}.viewport3d-ui-panel__menu--tool{min-width:190px}.viewport3d-ui-panel__menu-section{border-top:1px solid var(--border-color);color:var(--text-muted);font-size:var(--fs-3);font-weight:600;margin-top:var(--space-2);padding:var(--space-4) var(--space-4) var(--space-2)}.viewport3d-ui-panel__menu-item{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-4);gap:var(--space-4);padding:7px 8px;text-align:left}.viewport3d-ui-panel__menu-item:hover{background:var(--bg-subtle)}.viewport3d-ui-panel__menu-icon{color:var(--accent-text);flex:0 0 18px;height:18px;width:18px}.viewport3d-ui-panel__abbr,.viewport3d-ui-panel__menu-icon{align-items:center;display:inline-flex;justify-content:center}.viewport3d-ui-panel__abbr{font-size:var(--fs-1);font-weight:700}.viewport3d-ui-panel__menu-label{color:inherit}.viewport3d-ui-panel__body{display:flex;flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:var(--space-4);container-type:size;container-name:viewport3d-ui-panel-body}.viewport3d-ui-panel__body:has(.viewport3d-ui-panel__select-shell.is-open){overflow:visible}.viewport3d-ui-panel__body--chrome-hidden{padding:0}.viewport3d-ui-panel__body--preset-simple{padding:var(--space-5)}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__list>:first-child,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__list>:first-child,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__list>:first-child,.viewport3d-vp-list--vertical>:first-child{margin-top:var(--vp3d-preset-space-block-start,0)}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__list>:last-child,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__list>:last-child,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__list>:last-child,.viewport3d-vp-list--vertical>:last-child{margin-bottom:var(--vp3d-preset-space-block-end,0)}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__list>:first-child,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__list>:first-child,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__list>:first-child,.viewport3d-vp-list--horizontal>:first-child{margin-left:var(--vp3d-preset-space-inline-start,0)}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__list>:last-child,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__list>:last-child,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__list>:last-child,.viewport3d-vp-list--horizontal>:last-child{margin-right:var(--vp3d-preset-space-inline-end,0)}@container viewport3d-ui-panel-body (max-width: 177px){.viewport3d-ui-panel__body .viewport3d-model-spawner__empty,.viewport3d-ui-panel__body .viewport3d-prefab-switcher__empty,.viewport3d-ui-panel__body .viewport3d-scene-visibility__empty,.viewport3d-ui-panel__body .viewport3d-vp-empty{display:none}}.viewport3d-ui-panel__body--with-saved-header{padding-top:var(--space-3)}.viewport3d-ui-panel__body--partition{overflow:hidden}.viewport3d-ui-panel__body--partition:has(.viewport3d-ui-panel__select-shell.is-open){overflow:visible}.viewport3d-ui-panel__partition-shell{display:grid;flex:1 1;grid-template-columns:0 minmax(0,1fr) 0;grid-template-rows:0 minmax(0,1fr) 0;min-height:0;min-width:0;overflow:hidden;position:relative;transition:grid-template-columns .14s ease,grid-template-rows .14s ease}.viewport3d-ui-panel__partition-shell:has(.viewport3d-ui-panel__select-shell.is-open){overflow:visible}.viewport3d-ui-panel__partition-root{display:flex;flex:1 1;flex-direction:column;gap:clamp(var(--space-3),1.4cqh,8px);grid-column:2;grid-row:2;min-height:0;min-width:0}.viewport3d-ui-panel__quick-add-wrap{display:flex;opacity:0;pointer-events:none;position:absolute;transition:opacity .14s ease;z-index:3}.viewport3d-ui-panel__quick-add-wrap--top{left:50%;top:0;transform:translateX(-50%)}.viewport3d-ui-panel__quick-add-wrap--bottom{bottom:0;left:50%;transform:translateX(-50%)}.viewport3d-ui-panel__quick-add-wrap--left{left:0;top:50%;transform:translateY(-50%)}.viewport3d-ui-panel__quick-add-wrap--right{right:0;top:50%;transform:translateY(-50%)}.viewport3d-ui-panel__partition-shell.is-quick-add-bottom-active .viewport3d-ui-panel__quick-add-wrap--bottom,.viewport3d-ui-panel__partition-shell.is-quick-add-left-active .viewport3d-ui-panel__quick-add-wrap--left,.viewport3d-ui-panel__partition-shell.is-quick-add-right-active .viewport3d-ui-panel__quick-add-wrap--right,.viewport3d-ui-panel__partition-shell.is-quick-add-top-active .viewport3d-ui-panel__quick-add-wrap--top{opacity:1;pointer-events:auto}.viewport3d-ui-panel__quick-add{position:relative;z-index:1}.viewport3d-ui-panel__edge-handle{--vp3d-edge-handle-opacity:1;--vp3d-edge-handle-scale:1;align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;cursor:pointer;display:inline-flex;justify-content:center;padding:0;transform:scale(var(--vp3d-edge-handle-scale));transform-origin:center;transition:opacity .12s ease,transform .12s ease,filter .12s ease;opacity:var(--vp3d-edge-handle-opacity);filter:drop-shadow(0 6px 14px rgba(8,37,43,.18))}.viewport3d-ui-panel__edge-handle--bottom,.viewport3d-ui-panel__edge-handle--top{height:18px;width:45px}.viewport3d-ui-panel__edge-handle--left,.viewport3d-ui-panel__edge-handle--right{height:45px;width:18px}.viewport3d-ui-panel__edge-handle-art{align-items:center;display:flex;height:18px;justify-content:center;overflow:visible;pointer-events:none;transform-origin:center;width:45px}.viewport3d-ui-panel__edge-handle-art--left,.viewport3d-ui-panel__edge-handle-art--right{height:45px;width:18px}.viewport3d-ui-panel__edge-handle-svg{display:block;height:18px;overflow:visible;transform-origin:center;width:45px}.viewport3d-ui-panel__edge-handle-art--top .viewport3d-ui-panel__edge-handle-svg{transform:rotate(180deg)}.viewport3d-ui-panel__edge-handle-art--left .viewport3d-ui-panel__edge-handle-svg{transform:rotate(90deg)}.viewport3d-ui-panel__edge-handle-art--right .viewport3d-ui-panel__edge-handle-svg{transform:rotate(-90deg)}.viewport3d-ui-panel__edge-handle-fill{fill:#188e99;transition:fill .12s ease}.viewport3d-ui-panel__edge-handle-plus{fill:#f8fafd}.viewport3d-ui-panel__edge-handle.is-active,.viewport3d-ui-panel__edge-handle:hover{filter:drop-shadow(0 8px 18px rgba(8,37,43,.24))}.viewport3d-ui-panel__edge-handle.is-active .viewport3d-ui-panel__edge-handle-fill,.viewport3d-ui-panel__edge-handle:hover .viewport3d-ui-panel__edge-handle-fill{fill:color-mix(in srgb,#188e99 82%,white 18%)}.viewport3d-ui-panel__edge-handle:active{transform:scale(calc(var(--vp3d-edge-handle-scale) * .96))}.viewport3d-ui-panel.is-layout-editing{box-shadow:0 0 0 1px color-mix(in srgb,transparent 50%,var(--accent-line) 50%),0 8px 24px rgba(15,23,42,.08)}.viewport3d-ui-panel__layout-hint{background:color-mix(in srgb,var(--accent-fill) 10%,var(--bg-panel));border:1px solid color-mix(in srgb,var(--accent-line) 30%,var(--border-color));border-radius:var(--radius-md);color:var(--text-secondary);font-size:clamp(10px,1.8cqh,11px);line-height:1.35;padding:clamp(4px,1cqh,var(--space-3)) clamp(var(--space-3),1.4cqw,8px);pointer-events:none}.viewport3d-ui-panel__partition{display:flex;flex:1 1;min-height:0;min-width:0}.viewport3d-ui-panel__partition.is-split-pulsing{animation:viewport3d-partition-pulse 1s ease-in-out infinite;border-radius:var(--radius-lg);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-line) 48%,transparent)}.viewport3d-ui-panel__partition--row{flex-direction:column}.viewport3d-ui-panel__partition--column{flex-direction:row}.viewport3d-ui-panel__partition-segment{display:flex;flex:1 1;min-height:0;min-width:0}.viewport3d-ui-panel__partition-divider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(90deg,transparent 0,transparent 35%,color-mix(in srgb,var(--border-color) 82%,transparent) 35%,color-mix(in srgb,var(--border-color) 82%,transparent) 65%,transparent 65%,transparent 100%);border:none;flex:0 0 auto;opacity:.45;padding:0;transition:background 80ms ease,opacity 80ms ease,box-shadow 80ms ease}.viewport3d-ui-panel__partition-divider--column{cursor:ew-resize}.viewport3d-ui-panel__partition-divider--row{background:linear-gradient(180deg,transparent 0,transparent 35%,color-mix(in srgb,var(--border-color) 82%,transparent) 35%,color-mix(in srgb,var(--border-color) 82%,transparent) 65%,transparent 65%,transparent 100%);cursor:ns-resize}.viewport3d-ui-panel__partition-divider:not(:disabled):hover{box-shadow:inset 0 0 0 1px color-mix(in srgb,transparent 40%,var(--accent-line) 60%);opacity:1}.viewport3d-ui-panel__partition-divider--column:not(:disabled):hover{background:linear-gradient(90deg,transparent 0,transparent 25%,color-mix(in srgb,var(--accent-fill) 68%,var(--border-color)) 25%,color-mix(in srgb,var(--accent-fill) 68%,var(--border-color)) 75%,transparent 75%,transparent 100%)}.viewport3d-ui-panel__partition-divider--row:not(:disabled):hover{background:linear-gradient(180deg,transparent 0,transparent 25%,color-mix(in srgb,var(--accent-fill) 68%,var(--border-color)) 25%,color-mix(in srgb,var(--accent-fill) 68%,var(--border-color)) 75%,transparent 75%,transparent 100%);opacity:.95}.viewport3d-ui-panel__partition-divider:disabled{cursor:default;opacity:.2}.viewport3d-ui-panel__partition-slot{background:color-mix(in srgb,var(--bg-subtle) 88%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 80%,transparent);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;min-height:0;min-width:0;padding:clamp(var(--space-3),1.8cqh,10px) clamp(8px,1.6cqw,10px);position:relative;container-type:size}.viewport3d-ui-panel__partition-slot:hover{background:var(--bg-hover)}.viewport3d-ui-panel__partition-slot.has-selected-child,.viewport3d-ui-panel__partition-slot.is-layout-editing,.viewport3d-ui-panel__partition-slot.is-selected{border-color:color-mix(in srgb,var(--accent-line) 40%,var(--border-color))}.viewport3d-ui-panel__partition-slot.is-layout-editing{border-style:dashed}.viewport3d-ui-panel__partition-slot-content{display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0}.viewport3d-ui-panel__partition-slot-element{border:1px solid transparent;border-radius:var(--radius-md);display:flex;flex:1 1;min-height:0;min-width:0}.viewport3d-ui-panel__partition-slot-element:hover{background:color-mix(in srgb,var(--bg-hover) 72%,transparent)}.viewport3d-ui-panel__partition-slot-element.is-selected{background:color-mix(in srgb,var(--accent-fill) 9%,transparent);border-color:color-mix(in srgb,var(--accent-line) 52%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 72%,var(--accent-line) 28%)}.viewport3d-ui-panel__partition-slot-element-body{display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0}.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>*{pointer-events:none}.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-animation-switcher,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-animation-switcher *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-model-spawner,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-model-spawner *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-prefab-switcher,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-prefab-switcher *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-scene-visibility,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-scene-visibility *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__grid,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__grid *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-viewpoints,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-viewpoints *,.viewport3d-ui-panel__partition-slot-element.is-builder-selectable>.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-viewpoints .viewport3d-vp-add{pointer-events:auto}.viewport3d-ui-panel__partition-slot-content>*{max-width:100%;min-width:0}.viewport3d-ui-panel--auto-arrange .viewport3d-ui-panel__partition-slot-element-body{justify-content:center}.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__button,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__field,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__grid,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__icon-preview,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__image-frame,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__image-placeholder,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__input,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__select{width:100%}.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__grid,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__icon-preview,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__image-frame,.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__image-placeholder{flex:1 1;min-height:0}.viewport3d-ui-panel__partition-slot-element-body>.viewport3d-ui-panel__button{align-self:stretch}.viewport3d-ui-panel__partition-slot-empty{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:clamp(var(--space-3),1.5cqh,10px);justify-content:center;min-height:0;min-width:0}.viewport3d-ui-panel__partition-slot-label{color:var(--text-muted);font-size:var(--fs-3);line-height:1.2;max-width:16ch;text-align:center}@container viewport3d-ui-panel-body (max-height: 320px){.viewport3d-ui-panel__partition-slot-label{max-width:14ch}}@container (max-height: 72px){.viewport3d-ui-panel__partition-slot-empty{flex-direction:row;gap:var(--space-4)}.viewport3d-ui-panel__partition-slot-label{max-width:none;text-align:left}}@container (max-height: 48px){.viewport3d-ui-panel__partition-slot-empty{gap:var(--space-3)}.viewport3d-ui-panel__partition-slot-label{font-size:var(--fs-2)}}.viewport3d-ui-panel__partition-edge-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-panel);border:1px solid color-mix(in srgb,var(--accent-line) 45%,var(--border-color));border-radius:var(--radius-sm);box-shadow:0 6px 18px rgba(15,23,42,.12);color:var(--accent-text);cursor:pointer;display:inline-flex;height:20px;justify-content:center;position:absolute;width:20px;z-index:2}.viewport3d-ui-panel__partition-edge-btn:hover{background:color-mix(in srgb,var(--accent-fill) 10%,var(--bg-panel))}.viewport3d-ui-panel__partition-preview{background:color-mix(in srgb,var(--accent-fill) 76%,white 24%);border-radius:var(--radius-pill);box-shadow:0 0 0 1px color-mix(in srgb,transparent 45%,var(--accent-line) 55%);pointer-events:none;position:absolute;z-index:2}.viewport3d-ui-panel__partition-clear-btn{z-index:1}@keyframes viewport3d-partition-pulse{0%{box-shadow:0 0 0 1px color-mix(in srgb,transparent 70%,var(--accent-line) 30%)}50%{box-shadow:0 0 0 2px color-mix(in srgb,transparent 28%,var(--accent-line) 72%)}to{box-shadow:0 0 0 1px color-mix(in srgb,transparent 70%,var(--accent-line) 30%)}}.viewport3d-ui-panel__children{display:flex;flex:1 1;flex-direction:column;gap:var(--space-3);min-width:0;overflow-x:hidden}.viewport3d-ui-panel__preset-simple{display:flex;flex:1 1;min-height:0;min-width:0}.viewport3d-ui-panel__preset-simple.is-builder-selectable{cursor:-webkit-grab;cursor:grab}.viewport3d-ui-panel__preset-simple-body{display:flex;flex:1 1;min-height:0;min-width:0}.viewport3d-ui-panel__body--preset-simple .viewport3d-ui-panel__preset-simple-body>.viewport3d-animation-switcher,.viewport3d-ui-panel__body--preset-simple .viewport3d-ui-panel__preset-simple-body>.viewport3d-model-spawner,.viewport3d-ui-panel__body--preset-simple .viewport3d-ui-panel__preset-simple-body>.viewport3d-prefab-switcher,.viewport3d-ui-panel__body--preset-simple .viewport3d-ui-panel__preset-simple-body>.viewport3d-scene-visibility,.viewport3d-ui-panel__body--preset-simple .viewport3d-ui-panel__preset-simple-body>.viewport3d-viewpoints{background:transparent;border:none;border-radius:0;box-shadow:none;padding:0}.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>*{pointer-events:none}.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-animation-switcher,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-animation-switcher *,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-model-spawner,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-model-spawner *,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-prefab-switcher,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-prefab-switcher *,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-scene-visibility,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-scene-visibility *,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-viewpoints,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-viewpoints *,.viewport3d-ui-panel__preset-simple.is-builder-selectable>.viewport3d-ui-panel__preset-simple-body>.viewport3d-viewpoints .viewport3d-vp-add{pointer-events:auto}.viewport3d-ui-panel__empty{align-items:center;border:1px dashed color-mix(in srgb,var(--border-color) 84%,transparent);border-radius:var(--radius-md);color:var(--text-muted);display:flex;flex:1 1;font-size:var(--fs-4);justify-content:center;min-height:72px;text-align:center}.viewport3d-ui-panel__element{background:color-mix(in srgb,var(--bg-subtle) 88%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 80%,transparent);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-5);text-align:left}.viewport3d-ui-panel__element:hover{background:var(--bg-hover)}.viewport3d-ui-panel__element.is-selected{border-color:color-mix(in srgb,var(--accent-line) 48%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 72%,var(--accent-line) 28%)}.viewport3d-ui-panel__element-body{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>*{pointer-events:none}.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-animation-switcher,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-animation-switcher *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-model-spawner,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-model-spawner *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-prefab-switcher,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-prefab-switcher *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-scene-visibility,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-scene-visibility *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-ui-panel__grid,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-ui-panel__grid *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-viewpoints,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-viewpoints *,.viewport3d-ui-panel__element.is-builder-selectable>.viewport3d-ui-panel__element-body>.viewport3d-viewpoints .viewport3d-vp-add{pointer-events:auto}.viewport3d-ui-panel__text{line-height:1.45;white-space:pre-wrap;word-break:break-word}.viewport3d-ui-panel__field{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-ui-panel__field-row{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between}.viewport3d-ui-panel__field-label{color:var(--text-secondary);font-size:var(--fs-3);font-weight:500}.viewport3d-ui-panel__field-value{align-self:flex-end;color:var(--text-muted);font-size:var(--fs-3)}.viewport3d-ui-panel__input,.viewport3d-ui-panel__select{align-items:center;background:var(--bg-panel);border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--radius-md);color:var(--text-primary);display:flex;font-size:var(--fs-4);justify-content:space-between;min-height:34px;padding:var(--space-4) var(--space-5)}.viewport3d-ui-panel__input{color:var(--text-muted);justify-content:flex-start}.viewport3d-ui-panel__image-frame,.viewport3d-ui-panel__image-placeholder{align-items:center;background:color-mix(in srgb,var(--bg-dark) 70%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--radius-md);display:flex;justify-content:center;overflow:hidden;width:100%}.viewport3d-ui-panel__image{display:block;height:100%;width:100%}.viewport3d-ui-panel__image-placeholder{color:var(--text-muted);font-size:var(--fs-3);padding:var(--space-5);text-align:center}.viewport3d-ui-panel__grid{display:grid;height:100%;width:100%;min-height:0;min-width:0}.viewport3d-ui-panel__grid--vertical{align-items:start;align-content:start;grid-auto-rows:max-content}.viewport3d-ui-panel__grid--vertical.is-slot-scrollable{overflow-x:hidden;overflow-y:auto}.viewport3d-ui-panel__grid--horizontal{grid-auto-columns:max-content;grid-auto-flow:column;overflow-x:hidden;padding-bottom:var(--space-1)}.viewport3d-ui-panel__grid--horizontal.is-slot-scrollable{overflow-x:auto;overflow-y:hidden}.viewport3d-ui-panel__grid--horizontal.is-scrollable{overflow-x:auto}.viewport3d-ui-panel__grid-item{background:var(--bg-panel);border:1px solid color-mix(in srgb,var(--border-color) 82%,transparent);border-radius:var(--radius-md);color:var(--text-primary);display:flex;flex-direction:column;font-size:var(--fs-4);min-height:0;min-width:0;position:relative}.viewport3d-ui-panel__grid--horizontal .viewport3d-ui-panel__grid-item.is-empty,.viewport3d-ui-panel__grid--horizontal .viewport3d-ui-panel__grid-item:has(>.viewport3d-ui-panel__grid-item-content>.viewport3d-ui-panel__icon-preview){aspect-ratio:1/1}.viewport3d-ui-panel__grid-item.is-empty{border-style:dashed;opacity:.7}.viewport3d-ui-panel__grid-item.is-selected{border-color:color-mix(in srgb,var(--accent-line) 48%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 72%,var(--accent-line) 28%)}.viewport3d-ui-panel__grid-item-content{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;min-width:0;padding:var(--space-5)}.viewport3d-ui-panel__grid-item-content>*{max-height:100%;max-width:100%;width:100%}.viewport3d-ui-panel__grid-item-content.is-builder-selectable{cursor:pointer}.viewport3d-ui-panel__grid-item-content.is-builder-selectable>*{pointer-events:none}.viewport3d-ui-panel__grid-item-content.is-builder-selectable>.viewport3d-ui-panel__grid,.viewport3d-ui-panel__grid-item-content.is-builder-selectable>.viewport3d-ui-panel__grid *,.viewport3d-ui-panel__grid-item-content.is-builder-selectable>.viewport3d-viewpoints .viewport3d-vp-add{pointer-events:auto}.viewport3d-ui-panel__select-shell{display:block;position:relative;width:100%}.viewport3d-ui-panel__input--native,.viewport3d-ui-panel__select--native{font-family:inherit;font-size:var(--fs-4);outline:none}.viewport3d-ui-panel__select--native{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;padding-right:28px;width:100%}.viewport3d-ui-panel__select--custom{position:relative;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding-right:28px;transition:all .2s ease}.viewport3d-ui-panel__select--custom.is-open{border-color:color-mix(in srgb,var(--accent-line) 48%,var(--border-color))}.viewport3d-ui-panel__select-shell.is-open{z-index:10000}.viewport3d-ui-panel:has(.viewport3d-ui-panel__select-shell.is-open),.viewport3d-ui-panel__partition-slot-element:has(.viewport3d-ui-panel__select-shell.is-open){z-index:10000!important}.viewport3d-ui-panel__select-list{position:absolute;top:calc(100% + 4px);left:0;width:100%;max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-1);background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(15,23,42,.18);margin:0;padding:var(--space-2);list-style:none;z-index:10000}.viewport3d-ui-panel__select-item{flex:0 0 auto;border-radius:var(--radius-md);padding:7px 8px;font-size:var(--fs-4);line-height:1.35;color:var(--text-primary);cursor:pointer;transition:background .1s ease,color .1s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-ui-panel__select-item:hover{background:var(--bg-subtle)}.viewport3d-ui-panel__select-item.is-selected{background:color-mix(in srgb,var(--accent-fill) 12%,transparent);color:var(--accent-text);font-weight:600}.viewport3d-ui-panel__select-icon{color:var(--text-muted);pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%);transition:transform .2s ease}.viewport3d-ui-panel__select-icon.is-open{transform:translateY(-50%) rotate(180deg)}.viewport3d-ui-panel__input--native:focus,.viewport3d-ui-panel__select--native:focus{border-color:color-mix(in srgb,var(--accent-line) 48%,var(--border-color));box-shadow:0 0 0 1px color-mix(in srgb,transparent 72%,var(--accent-line) 28%)}.viewport3d-ui-panel__input--native{cursor:text}.viewport3d-ui-panel__input--native::placeholder{color:var(--text-muted)}.viewport3d-ui-panel__grid-item-content>.viewport3d-ui-panel__icon-preview,.viewport3d-ui-panel__grid-item-content>.viewport3d-ui-panel__image-frame{aspect-ratio:1/1;height:auto;width:100%}.viewport3d-ui-panel__card-menu-wrap{align-items:center;display:flex;flex:1 1;justify-content:center;position:relative}.viewport3d-ui-panel__card-assign-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--bg-subtle) 80%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:20px;justify-content:center;transition:background 80ms ease,color 80ms ease;width:20px}.viewport3d-ui-panel__card-assign-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.viewport3d-ui-panel__card-clear-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;height:14px;justify-content:center;opacity:0;position:absolute;right:4px;top:4px;transition:background 80ms ease,color 80ms ease,opacity 80ms ease;width:14px}.viewport3d-ui-panel__grid-item:hover .viewport3d-ui-panel__card-clear-btn{opacity:1}.viewport3d-ui-panel__card-clear-btn:hover{background:var(--accent-red,#ef4444);border-color:var(--accent-red,#ef4444);color:#fff}.viewport3d-ui-panel__card-menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 2px 7px rgba(15,23,42,.07);display:flex;flex-direction:column;gap:var(--space-1);min-width:160px;padding:var(--space-2)}.viewport3d-ui-panel__card-menu--shell{position:absolute;z-index:50}.viewport3d-menu-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);background:var(--bg-subtle)}.viewport3d-menu-tabs--top{margin-bottom:var(--space-2)}.viewport3d-menu-tabs--bottom{margin-top:var(--space-2);border-top:1px solid var(--border-color);padding-top:var(--space-2);border-radius:0 0 var(--radius-md) var(--radius-md)}.viewport3d-menu-tab{flex:1 1;padding:var(--space-2) var(--space-3);font-size:var(--fs-3);font-weight:400;font-family:inherit;border-radius:var(--radius-sm);border:none;background:transparent;cursor:pointer;color:var(--text-secondary);white-space:nowrap;line-height:1.3;transition:color .12s,background .12s}.viewport3d-menu-tab:hover:not(.viewport3d-menu-tab--active){color:var(--text-primary)}.viewport3d-menu-tab--active{background:var(--bg-panel);color:var(--accent-text);font-weight:500;box-shadow:0 1px 3px rgba(15,23,42,.06)}.viewport3d-menu-presets-empty{padding:var(--space-8) 0;text-align:center;font-size:var(--fs-3);color:var(--text-muted)}.viewport3d-viewpoints{display:flex;flex-direction:column;gap:var(--space-5);width:100%;height:100%;min-width:0;min-height:0;padding:var(--space-2);border-radius:var(--radius-md);border:1px dashed var(--border-color);background:var(--bg-subtle);box-sizing:border-box;overflow:hidden}.viewport3d-viewpoints--vertical{align-items:stretch}.viewport3d-viewpoints--horizontal{flex-direction:row;align-items:stretch}.viewport3d-viewpoints__controls{display:flex;flex:0 0 auto}.viewport3d-viewpoints--horizontal .viewport3d-viewpoints__add{width:auto;white-space:nowrap}.viewport3d-viewpoints__add{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;align-self:stretch;justify-content:center;gap:var(--space-3);min-height:32px;width:100%;padding:0 var(--space-region);border:1px dashed color-mix(in srgb,var(--accent-line) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 3.5%,transparent);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);font-weight:600;line-height:1;transition:border-color .12s ease,color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-viewpoints__add:hover{background:color-mix(in srgb,var(--accent-line) 7%,transparent);border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);color:var(--text-primary)}.viewport3d-viewpoints__add:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent-line) 38%,transparent);box-shadow:var(--ring-focus)}.viewport3d-viewpoints__add-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--accent-text);flex:0 0 auto}.viewport3d-vp-list{display:flex;flex:1 1 auto;gap:var(--space-5);min-width:0;min-height:0}.viewport3d-vp-list--vertical{align-items:stretch;flex-direction:column;overflow-x:hidden;overflow-y:auto}.viewport3d-vp-list--horizontal{align-items:stretch;flex-direction:row;overflow-x:auto;overflow-y:hidden}.viewport3d-vp-item{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:rgba(15,23,42,.06);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;max-width:100%;text-align:center;flex-shrink:0;overflow:hidden;transition:background .12s,border-color .12s,box-shadow .12s}.viewport3d-vp-item:hover{background:color-mix(in srgb,var(--bg-hover) 90%,color-mix(in srgb,var(--accent-line) 8%,transparent) 10%);border-color:color-mix(in srgb,var(--accent-line) 35%,var(--border-color))}.viewport3d-vp-thumb{object-fit:cover;display:block;background:var(--bg-dark)}.viewport3d-vp-thumb,.viewport3d-vp-thumb--empty{width:100%;aspect-ratio:44/29;flex:0 0 auto;border-radius:var(--radius-md)}.viewport3d-vp-thumb--empty{background:var(--bg-dark,#1a1a1a);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:var(--fs-8)}.viewport3d-vp-thumb--color{--vp3d-chip:#2b96a8;color:#fff;border-radius:var(--radius-md);background:var(--vp3d-chip)}.viewport3d-vp-label,.viewport3d-vp-thumb--color{display:flex;align-items:center;justify-content:center}.viewport3d-vp-label{width:100%;min-width:0;min-height:28px;font-size:var(--fs-2);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;background:transparent}.viewport3d-viewpoints--vertical .viewport3d-vp-item,.viewport3d-viewpoints--vertical .viewport3d-vp-list{width:100%}.viewport3d-viewpoints--horizontal .viewport3d-vp-empty,.viewport3d-viewpoints--horizontal .viewport3d-vp-item{flex:0 0 172px}.viewport3d-vp-item.is-thumbnail-only{padding:0;background:rgba(15,23,42,.06)}.viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{aspect-ratio:1/1;flex:1 1 auto;height:auto;min-width:0;width:100%}.viewport3d-viewpoints--vertical .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-viewpoints--vertical .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{align-self:stretch;width:100%}.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only{width:auto;height:auto}.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{width:100%;height:auto;aspect-ratio:44/29;flex:1 1 auto}.viewport3d-vp-empty{display:flex;align-items:flex-start;gap:9px;width:100%;min-height:58px;padding:10px 11px;border-radius:var(--radius-lg);border:1px dashed color-mix(in srgb,var(--accent-line) 20%,transparent);background:color-mix(in srgb,var(--accent-line) 5%,transparent);color:var(--text-secondary);text-align:left}.viewport3d-vp-empty__badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);flex:0 0 auto}.viewport3d-vp-empty__copy{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:3px}.viewport3d-vp-empty__title{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;line-height:1.25}.viewport3d-vp-empty__hint{color:var(--text-muted);font-size:var(--fs-2);line-height:1.35}.viewport3d-model-spawner{display:flex;gap:var(--space-5);width:100%;height:100%;min-width:0;min-height:0;padding:var(--space-2);border-radius:var(--radius-md);border:1px dashed var(--border-color);background:var(--bg-subtle);box-sizing:border-box;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-model-spawner.is-drop-active{border-color:var(--accent-text);background:rgba(74,144,226,.08);box-shadow:inset 0 0 0 1px rgba(74,144,226,.2)}.viewport3d-model-spawner--vertical{flex-direction:column}.viewport3d-model-spawner--horizontal{align-items:stretch;flex-direction:row}.viewport3d-model-spawner__controls{display:flex;flex:0 0 auto}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__add{width:auto;white-space:nowrap}.viewport3d-model-spawner__add{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;align-self:stretch;justify-content:center;gap:var(--space-3);min-height:32px;width:100%;padding:0 var(--space-region);border:1px dashed color-mix(in srgb,var(--accent-line) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 3.5%,transparent);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);font-weight:600;line-height:1;transition:border-color .12s ease,color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-model-spawner__add:hover{background:color-mix(in srgb,var(--accent-line) 7%,transparent);border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);color:var(--text-primary)}.viewport3d-model-spawner__add:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent-line) 38%,transparent);box-shadow:var(--ring-focus)}.viewport3d-model-spawner__add-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--accent-text);flex:0 0 auto}.viewport3d-model-spawner__list{display:flex;flex:1 1 auto;min-width:0;min-height:0;gap:var(--space-5)}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__list{flex-direction:column;overflow-y:auto;overflow-x:hidden}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__list{flex-direction:row;overflow-x:auto;overflow-y:hidden;align-items:stretch}.viewport3d-model-spawner__card,.viewport3d-model-spawner__empty{display:flex;align-items:center;gap:9px;min-width:0;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:rgba(15,23,42,.06);box-sizing:border-box}.viewport3d-model-spawner__card{container-type:inline-size;position:relative;flex:0 0 auto;overflow:hidden;padding:var(--space-4)}.viewport3d-model-spawner__card.is-runtime-actionable{cursor:pointer}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card,.viewport3d-model-spawner--vertical .viewport3d-model-spawner__empty{width:100%}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card{width:172px}.viewport3d-model-spawner__thumb{width:64px;height:52px;flex:0 0 64px;object-fit:cover;display:block;background:var(--bg-dark);border-radius:var(--radius-md)}.viewport3d-model-spawner__thumb--empty{align-items:center;color:var(--accent-text);background:color-mix(in srgb,var(--accent-fill) 10%,transparent);display:flex;justify-content:center;border-radius:var(--radius-md)}.viewport3d-model-spawner__copy{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:var(--space-1)}.viewport3d-model-spawner__label{color:var(--text-primary);font-size:var(--fs-3);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-model-spawner__meta{color:var(--text-muted);font-size:var(--fs-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-model-spawner__card.is-thumbnail-only{gap:0;padding:var(--space-3)}.viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty{aspect-ratio:1/1;height:auto;min-width:0}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only{align-items:stretch}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty{width:64px;flex:0 0 64px;align-self:stretch}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only{width:auto}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty{width:64px;flex:0 0 64px}.viewport3d-model-spawner__remove{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 auto;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer}.viewport3d-model-spawner__remove:hover{border-color:var(--border-color);background:var(--bg-hover);color:var(--text-primary)}.viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__remove{position:absolute;top:8px;right:8px;z-index:1;border-color:rgba(255,255,255,.55);background:rgba(15,23,42,.7);color:#fff}.viewport3d-model-spawner__empty{align-items:flex-start;justify-content:flex-start;min-height:58px;padding:10px 11px;border-style:dashed;border-color:color-mix(in srgb,var(--accent-line) 20%,transparent);background:color-mix(in srgb,var(--accent-line) 5%,transparent);color:var(--text-secondary);text-align:left}.viewport3d-model-spawner__empty-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);flex:0 0 auto}.viewport3d-model-spawner__empty-copy{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:3px}.viewport3d-model-spawner__empty-title{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;line-height:1.25}.viewport3d-model-spawner__empty-hint{color:var(--text-muted);font-size:var(--fs-2);line-height:1.35}@container (max-width: 169px){.viewport3d-model-spawner__card:not(.is-thumbnail-only){align-items:stretch;flex-direction:column;gap:var(--space-4)}.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb,.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb--empty{align-self:stretch;flex:0 0 auto;width:100%;max-width:none}.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb{aspect-ratio:auto;height:auto}.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb--empty{min-height:72px}.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__copy{width:100%}.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__remove{position:absolute;top:8px;right:8px;z-index:1;border-color:rgba(255,255,255,.55);background:rgba(15,23,42,.7);color:#fff}}.viewport3d-prefab-switcher{display:flex;gap:var(--space-5);width:100%;height:100%;min-width:0;min-height:0;padding:var(--space-2);border-radius:var(--radius-md);border:1px dashed var(--border-color);background:var(--bg-subtle)}.viewport3d-prefab-switcher.is-drop-active{border-color:var(--accent-text);background:color-mix(in srgb,var(--bg-subtle) 72%,var(--accent-fill) 12%)}.viewport3d-prefab-switcher--vertical{flex-direction:column}.viewport3d-prefab-switcher--horizontal{flex-direction:row;align-items:stretch}.viewport3d-prefab-switcher__controls{display:flex;flex:0 0 auto;gap:var(--space-4)}.viewport3d-prefab-switcher__controls--runtime{align-items:flex-start}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__controls--runtime{align-items:stretch;min-width:0;width:auto}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__controls{width:auto;flex:0 0 auto}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__add{width:auto;white-space:nowrap}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__select-wrap{width:auto;min-width:140px}.viewport3d-prefab-switcher__add{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;align-self:stretch;justify-content:center;gap:var(--space-3);min-height:32px;width:100%;padding:0 var(--space-region);border:1px dashed color-mix(in srgb,var(--accent-line) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 3.5%,transparent);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);font-weight:600;line-height:1;transition:border-color .12s ease,color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-prefab-switcher__add:hover{background:color-mix(in srgb,var(--accent-line) 7%,transparent);border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);color:var(--text-primary)}.viewport3d-prefab-switcher__add:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent-line) 38%,transparent);box-shadow:var(--ring-focus)}.viewport3d-prefab-switcher__add-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--accent-text);flex:0 0 auto}.viewport3d-prefab-switcher__add:focus-visible .viewport3d-prefab-switcher__add-icon,.viewport3d-prefab-switcher__add:hover .viewport3d-prefab-switcher__add-icon{color:color-mix(in srgb,var(--accent-text) 78%,var(--text-primary) 22%)}.viewport3d-prefab-switcher__select-wrap{display:flex;flex:1 1 auto;flex-direction:column;gap:5px;min-width:0}.viewport3d-prefab-switcher__list>.viewport3d-prefab-switcher__select-wrap{flex:0 0 auto}.viewport3d-prefab-switcher__list>.viewport3d-prefab-switcher__select-wrap--icon{width:auto}.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__list>.viewport3d-prefab-switcher__select-wrap--icon{margin-left:var(--vp3d-preset-space-inline-start,0);margin-right:var(--vp3d-preset-space-inline-end,0)}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__list>.viewport3d-prefab-switcher__select-wrap--icon{min-width:0;margin-top:var(--vp3d-preset-space-block-start,0);margin-bottom:var(--vp3d-preset-space-block-end,0)}.viewport3d-ui-panel__select--icon{display:inline-flex;align-items:center;justify-content:center;width:34px;min-width:0;height:34px;padding:0;color:var(--text-primary)}.viewport3d-ui-panel__select--icon .viewport3d-ui-panel__select-icon{display:none}.viewport3d-ui-panel__select--icon.is-static{cursor:default}.viewport3d-prefab-switcher__thumb--icon{align-items:center;color:var(--accent-text);display:flex;justify-content:center}.viewport3d-prefab-switcher__select-label{color:var(--text-muted);font-size:var(--fs-2);letter-spacing:.01em}.viewport3d-prefab-switcher__select-label--single{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-switcher__list{display:flex;flex:1 1 auto;gap:var(--space-5);min-width:0;min-height:0}.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__list{flex-direction:column;overflow-y:auto}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__list{flex-direction:row;align-items:stretch;overflow-x:auto;overflow-y:hidden}.viewport3d-prefab-switcher__card,.viewport3d-prefab-switcher__empty{display:flex;align-items:center;gap:9px;min-width:0;padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border-color);background:rgba(15,23,42,.06)}.viewport3d-prefab-switcher__card{container-type:inline-size;position:relative}.viewport3d-prefab-switcher__card--runtime{cursor:pointer}.viewport3d-prefab-switcher__card--runtime.is-active{border-color:color-mix(in srgb,var(--accent-line) 72%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 36%,transparent)}.viewport3d-prefab-switcher__card.is-thumbnail-only{gap:0;padding:var(--space-3)}.viewport3d-prefab-switcher__card.is-stale{opacity:.62}.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__empty{width:100%}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__empty{flex:0 0 172px}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only{flex:0 0 auto;width:auto;align-items:center;justify-content:center}.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only{align-items:stretch}.viewport3d-prefab-switcher__thumb{width:64px;height:52px;flex:0 0 64px;object-fit:cover;border-radius:var(--radius-md);background:var(--bg-dark)}.viewport3d-prefab-switcher__thumb--empty{display:inline-flex;align-items:center;justify-content:center;color:var(--accent-text);background:color-mix(in srgb,var(--accent-fill) 10%,transparent);border-radius:var(--radius-md)}.viewport3d-animation-switcher__thumb-wrap{position:relative;display:inline-flex;flex:0 0 auto}.viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-animation-switcher__thumb-wrap,.viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty{aspect-ratio:1/1;height:auto;min-width:0}.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-animation-switcher__thumb-wrap,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty{width:64px;flex:0 0 64px;align-self:stretch}.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-animation-switcher__thumb-wrap,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty{width:64px;flex:0 0 64px}.viewport3d-animation-switcher__thumb-caption{position:absolute;left:6px;right:6px;bottom:6px;padding:3px var(--space-3);border-radius:var(--radius-md);background:rgba(15,23,42,.78);color:#fff;font-size:var(--fs-1);font-weight:600;line-height:1.2;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.viewport3d-prefab-switcher__copy{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-1);min-width:0}.viewport3d-prefab-switcher__label,.viewport3d-prefab-switcher__meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-switcher__label{color:var(--text-primary);font-size:var(--fs-3)}.viewport3d-prefab-switcher__meta{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-prefab-switcher__card-actions{display:inline-flex;align-items:center;gap:var(--space-1);flex:0 0 auto}.viewport3d-prefab-switcher__member-add,.viewport3d-prefab-switcher__remove{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 auto;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-muted);cursor:pointer}.viewport3d-prefab-switcher__member-add:hover{background:color-mix(in srgb,var(--accent-line) 12%,transparent);color:var(--accent-text)}.viewport3d-prefab-switcher__card.is-drop-active{border-color:var(--accent-text);background:color-mix(in srgb,var(--bg-subtle) 72%,var(--accent-fill) 14%)}@container (max-width: 169px){.viewport3d-prefab-switcher__card:not(.is-thumbnail-only){align-items:stretch;flex-direction:column;gap:var(--space-4)}.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb--empty{align-self:stretch;flex:0 0 auto;width:100%;max-width:none}.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb{aspect-ratio:auto;height:auto}.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb--empty{min-height:72px}.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__copy{width:100%}.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__card-actions{position:absolute;top:8px;right:8px}}.viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__card-actions{position:absolute;top:4px;right:4px;z-index:1}.viewport3d-prefab-switcher__remove:hover{color:var(--text-primary)}.viewport3d-prefab-switcher__empty{align-items:flex-start;justify-content:flex-start;min-height:58px;padding:10px 11px;border-style:dashed;border-color:color-mix(in srgb,var(--accent-line) 20%,transparent);background:color-mix(in srgb,var(--accent-line) 5%,transparent);color:var(--text-secondary);text-align:left}.viewport3d-prefab-switcher__empty-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);flex:0 0 auto}.viewport3d-prefab-switcher__empty-copy{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:3px}.viewport3d-prefab-switcher__empty-title{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;line-height:1.25}.viewport3d-prefab-switcher__empty-hint{color:var(--text-muted);font-size:var(--fs-2);line-height:1.35}.viewport3d-scene-visibility{display:flex;flex-direction:column;gap:var(--space-3);width:100%;height:100%;min-width:0;min-height:0;padding:var(--space-2);border-radius:var(--radius-md);border:1px dashed var(--border-color);background:var(--bg-subtle);box-sizing:border-box;transition:border-color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-scene-visibility.is-drop-active{border-color:var(--accent-text);background:rgba(74,144,226,.08);box-shadow:inset 0 0 0 1px rgba(74,144,226,.2)}.viewport3d-scene-visibility--horizontal{flex-direction:row;align-items:stretch}.viewport3d-scene-visibility__controls{display:flex;gap:var(--space-4);flex:0 0 auto;flex-wrap:wrap}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__controls{width:auto;flex-direction:row;flex-wrap:nowrap;align-items:center}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__add,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__tag-add{flex:0 0 auto;width:auto}.viewport3d-scene-visibility__add,.viewport3d-scene-visibility__tag-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;align-self:stretch;flex:1 1 104px;justify-content:center;gap:var(--space-3);min-height:32px;min-width:104px;padding:0 var(--space-region);border:1px dashed color-mix(in srgb,var(--accent-line) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 3.5%,transparent);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);font-weight:600;line-height:1;transition:border-color .12s ease,color .12s ease,background .12s ease,box-shadow .12s ease}.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__controls{width:100%}.viewport3d-scene-visibility__add:hover,.viewport3d-scene-visibility__tag-add:hover{background:color-mix(in srgb,var(--accent-line) 7%,transparent);border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);color:var(--text-primary)}.viewport3d-scene-visibility__add:focus-visible,.viewport3d-scene-visibility__tag-add:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent-line) 38%,transparent);box-shadow:var(--ring-focus)}.viewport3d-scene-visibility__add-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--accent-text);flex:0 0 auto}.viewport3d-scene-visibility__list{display:flex;flex:1 1 auto;min-width:0;min-height:0;gap:var(--space-5)}.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__list{flex-direction:column;overflow-y:auto;overflow-x:hidden}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__list{flex-direction:row;overflow-x:auto;overflow-y:hidden;align-items:stretch}.viewport3d-scene-visibility__empty,.viewport3d-scene-visibility__row{display:flex;align-items:center;gap:9px;min-width:0;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:rgba(15,23,42,.06);box-sizing:border-box;position:relative}.viewport3d-scene-visibility__row{container-type:inline-size;padding:var(--space-4);flex:0 0 auto}.viewport3d-scene-visibility__row--action{-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;cursor:pointer;font:inherit;text-align:left;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}.viewport3d-scene-visibility__row--action:hover{border-color:color-mix(in srgb,var(--accent-line) 24%,transparent);background:color-mix(in srgb,var(--accent-line) 5%,transparent)}.viewport3d-scene-visibility__row--action:focus-visible{outline:none;border-color:color-mix(in srgb,var(--accent-line) 38%,transparent);box-shadow:var(--ring-focus)}.viewport3d-scene-visibility__empty{align-items:flex-start;justify-content:flex-start;padding:10px 11px;border-style:dashed;border-color:color-mix(in srgb,var(--accent-line) 20%,transparent);background:color-mix(in srgb,var(--accent-line) 5%,transparent);color:var(--text-secondary);text-align:left;width:100%;min-height:58px}.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row{width:100%}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row{width:220px}.viewport3d-scene-visibility__empty-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);flex:0 0 auto}.viewport3d-scene-visibility__empty-copy{display:flex;flex:1 1 auto;min-width:0;flex-direction:column;gap:3px}.viewport3d-scene-visibility__empty-title{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;line-height:1.25}.viewport3d-scene-visibility__empty-hint{color:var(--text-muted);font-size:var(--fs-2);line-height:1.35}.viewport3d-scene-visibility__row.is-stale{border-style:dashed;opacity:.7}.viewport3d-scene-visibility__row.is-active{border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);background:color-mix(in srgb,var(--accent-line) 8%,transparent)}.viewport3d-scene-visibility__row--selectable{cursor:pointer}.viewport3d-scene-visibility__row.is-selected{border-color:color-mix(in srgb,var(--accent-line) 55%,transparent);background:color-mix(in srgb,var(--accent-line) 10%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 40%,transparent)}.viewport3d-scene-visibility__row.is-thumbnail-only.is-selected .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row.is-thumbnail-only.is-selected .viewport3d-scene-visibility__thumb--empty{box-shadow:var(--ring-selected-strong)}.viewport3d-model-spawner__card,.viewport3d-prefab-switcher__card--selectable{cursor:pointer}.viewport3d-prefab-switcher__card.is-selected{border-color:color-mix(in srgb,var(--accent-line) 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 40%,transparent)}.viewport3d-prefab-switcher__card.is-thumbnail-only.is-selected .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card.is-thumbnail-only.is-selected .viewport3d-prefab-switcher__thumb--empty{box-shadow:var(--ring-selected-strong)}.vp3d-slot-list{display:flex;flex-direction:column;gap:var(--space-2)}.vp3d-slot-list__row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid transparent}.vp3d-slot-list__row.is-active{border-color:color-mix(in srgb,var(--accent-line) 35%,transparent);background:color-mix(in srgb,var(--accent-line) 7%,transparent)}.vp3d-slot-list__name{flex:1 1 auto;min-width:0;font:inherit;font-size:var(--fs-3);color:var(--text-primary);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);padding:3px var(--space-3)}.vp3d-slot-list__name:hover{border-color:var(--border-color)}.vp3d-slot-list__name:focus{outline:none;border-color:var(--accent-text);background:var(--bg-panel)}.vp3d-slot-list__count{flex:0 0 auto;font-size:var(--fs-2);color:var(--text-muted);white-space:nowrap}.vp3d-slot-objects{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.vp3d-slot-objects__row{display:flex;align-items:center;gap:var(--space-3);min-width:0;position:relative;cursor:-webkit-grab;cursor:grab}.vp3d-slot-objects__row:active{cursor:-webkit-grabbing;cursor:grabbing}.viewport3d-controls .vp3d-slot-objects__row .el-card-row__remove{width:0;opacity:0;overflow:hidden;pointer-events:none;transition:width .15s ease,opacity .15s ease,background 80ms ease,color 80ms ease}.viewport3d-controls .vp3d-slot-objects__row:focus-within .el-card-row__remove,.viewport3d-controls .vp3d-slot-objects__row:hover .el-card-row__remove{width:20px;opacity:1;pointer-events:auto}.vp3d-slot-objects__row.is-reordering{opacity:.45}.vp3d-slot-objects__row.is-reorder-target:after{background:var(--accent-fill);border-radius:var(--radius-xs);content:"";height:2px;left:0;right:0;pointer-events:none;position:absolute;z-index:2}.vp3d-slot-objects__row.is-reorder-target--before:after{top:-3px}.vp3d-slot-objects__row.is-reorder-target--after:after{bottom:-3px}.vp3d-slot-objects__kind{flex:0 0 auto;padding:1px 5px;border-radius:var(--radius-sm);font-size:var(--fs-1);font-weight:700;background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text)}.vp3d-slot-objects__label{flex:1 1 auto;min-width:0;font-size:var(--fs-3);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp3d-slot-objects__default{flex:0 0 auto;padding:var(--space-px) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-1);font-weight:600;background:color-mix(in srgb,var(--accent-line) 14%,transparent);color:var(--accent-text)}.viewport3d-controls .vp3d-slot-objects__trigger{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--accent-text);cursor:pointer;display:inline-flex;flex:0 0 auto;height:20px;justify-content:center;overflow:hidden;opacity:0;pointer-events:none;transition:width .15s ease,opacity .15s ease,background 80ms ease,color 80ms ease;width:0}.viewport3d-controls .vp3d-slot-objects__row:focus-within .vp3d-slot-objects__trigger,.viewport3d-controls .vp3d-slot-objects__row:hover .vp3d-slot-objects__trigger{opacity:1;pointer-events:auto;width:20px}.viewport3d-controls .vp3d-slot-objects__trigger:hover{background:color-mix(in srgb,var(--accent-line) 14%,transparent)}.vp3d-preset-select-row{align-items:center;display:flex;gap:var(--space-3);min-width:0;width:100%}.vp3d-preset-select-row>.ctl-dd,.vp3d-preset-select-row>select{flex:1 1 auto;min-width:0}.viewport3d-controls .vp3d-preset-trigger-add{flex:0 0 auto;height:26px;opacity:1;pointer-events:auto;width:26px}.vp3d-bound-list{display:flex;flex-direction:column;gap:9px}.vp3d-bound-list__group{display:flex;flex-direction:column;gap:3px}.vp3d-bound-list__card{font-size:var(--fs-3);font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp3d-bound-list__item{display:flex;align-items:center;gap:var(--space-4);padding:5px 8px;border-radius:var(--radius-md);background:var(--bg-subtle);border:1px solid var(--border-color)}.vp3d-bound-list__kind{flex:0 0 auto;font-size:var(--fs-1);font-weight:700;letter-spacing:.02em;padding:2px 5px;border-radius:var(--radius-sm);color:var(--accent-text);background:color-mix(in srgb,var(--accent-line) 12%,transparent)}.vp3d-bound-list__label{min-width:0;font-size:var(--fs-3);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-object-focus-editor__badge,.viewport3d-scene-visibility__toggle{flex:0 0 auto;width:26px;height:26px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-muted)}.viewport3d-object-focus-editor__badge,.viewport3d-scene-visibility__remove,.viewport3d-scene-visibility__toggle{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.viewport3d-scene-visibility__toggle.is-active{color:var(--accent-text);background:rgba(74,144,226,.1)}.viewport3d-scene-visibility__thumb{width:64px;height:52px;flex:0 0 64px;object-fit:cover;border-radius:var(--radius-lg);background:var(--bg-dark)}.viewport3d-scene-visibility__thumb--empty{display:inline-flex;align-items:center;justify-content:center;color:var(--accent-text);background:color-mix(in srgb,var(--accent-fill) 10%,transparent);border-radius:var(--radius-md)}.viewport3d-scene-visibility__toggle:hover{border-color:var(--border-color);background:var(--bg-hover);color:var(--text-primary)}.viewport3d-object-focus-editor__badge{color:var(--text-secondary);cursor:default}.viewport3d-scene-visibility__tag-dot{width:10px;height:10px;border-radius:var(--radius-pill);flex:0 0 auto}.viewport3d-scene-visibility__copy{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:var(--space-1)}.viewport3d-scene-visibility__label{color:var(--text-primary);font-size:var(--fs-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-scene-visibility__meta{color:var(--text-muted);font-size:var(--fs-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-scene-visibility__row.is-thumbnail-only{position:relative;align-items:stretch;flex-direction:column;gap:0;padding:0}.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty{aspect-ratio:1/1;height:auto;min-width:0}.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty{width:100%;flex:1 1 auto;align-self:stretch}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only{align-items:center;justify-content:center;width:64px;min-width:64px;flex:0 0 64px}.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty{width:64px;flex:0 0 64px}.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__remove,.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__toggle{position:absolute;top:8px;z-index:1;border-color:rgba(255,255,255,.55);background:rgba(15,23,42,.7);color:#fff}.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__toggle{left:8px}.viewport3d-scene-visibility__remove{position:absolute;top:12px;left:50px;width:18px;height:18px;border-radius:var(--radius-sm);z-index:1;background:rgba(15,23,42,.65);color:#fff;border:1px solid rgba(255,255,255,.4);opacity:0;transition:opacity .15s ease,background .12s ease}.viewport3d-scene-visibility__row:hover .viewport3d-scene-visibility__remove{opacity:1}.viewport3d-scene-visibility__remove:hover{background:rgba(15,23,42,.9)}.viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__remove{right:8px;left:auto;top:8px}@container (max-width: 169px){.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb),.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb--empty){align-items:stretch;flex-direction:column;gap:var(--space-4)}.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb) .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb) .viewport3d-scene-visibility__thumb--empty,.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb--empty) .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb--empty) .viewport3d-scene-visibility__thumb--empty{align-self:stretch;flex:0 0 auto;width:100%;max-width:none}.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb) .viewport3d-scene-visibility__thumb{aspect-ratio:auto;height:auto}.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb--empty) .viewport3d-scene-visibility__thumb--empty{min-height:72px}.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb) .viewport3d-scene-visibility__copy,.viewport3d-scene-visibility__row:not(.is-thumbnail-only):has(.viewport3d-scene-visibility__thumb--empty) .viewport3d-scene-visibility__copy{width:100%}}.viewport3d-scene-visibility-picker{display:flex;flex-direction:column;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-panel);box-shadow:var(--shadow-md);overflow:hidden;z-index:var(--z-dropdown-elevated)}.viewport3d-scene-visibility-picker__head{display:flex;align-items:center;justify-content:space-between;min-height:34px;padding:0 var(--space-5);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-3)}.viewport3d-scene-visibility-picker__body{display:flex;flex-direction:column;min-height:0;overflow:auto;padding:var(--space-3)}.viewport3d-scene-visibility-picker__row{display:grid;grid-template-columns:18px 22px 20px minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);min-height:30px;padding:0 var(--space-3) 0 calc(var(--space-3) + var(--vp3d-depth, 0) * 14px);border-radius:var(--radius-md);color:var(--text-secondary)}.viewport3d-model-spawner-editor__list{gap:var(--space-5);margin-bottom:var(--space-3)}.viewport3d-model-spawner-editor__row{align-items:flex-start;flex-direction:column;gap:var(--space-5);padding:var(--space-4);border-radius:var(--radius-lg)}.viewport3d-model-spawner-editor__row.is-stale{border-style:dashed;opacity:.78}.viewport3d-model-spawner-editor__add-button{margin-bottom:0}.viewport3d-model-spawner-editor__empty{margin-top:var(--space-1)}.viewport3d-model-spawner-editor__add-menu{width:min(320px,calc(100vw - 24px))}.viewport3d-model-spawner-editor__thumb{width:100%;height:auto;aspect-ratio:44/29;object-fit:cover;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-dark);flex:0 0 auto;align-self:stretch}.viewport3d-model-spawner-editor__thumb--empty{background:var(--bg-subtle)}.viewport3d-model-spawner-editor__copy{display:flex;flex:1 1;min-width:0;width:100%;flex-direction:column;gap:var(--space-3)}.viewport3d-model-spawner-editor__head{display:flex;align-items:center;gap:var(--space-4);min-width:0}.viewport3d-model-spawner-editor__index-badge{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 7px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);font-size:var(--fs-2);font-weight:600;line-height:1.1;flex:0 0 auto}.viewport3d-model-spawner-editor__eyebrow{color:var(--text-muted);font-size:var(--fs-2);font-weight:500;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-model-spawner-editor__name{width:100%;min-width:0;height:30px;border:1px solid color-mix(in srgb,var(--accent-line) 14%,transparent);border-radius:var(--radius-md);background:var(--bg-panel);color:var(--text-primary);font:inherit;font-size:var(--fs-4);font-weight:600;padding:0 9px}.viewport3d-model-spawner-editor__name:focus{outline:none;border-color:color-mix(in srgb,var(--accent-line) 34%,transparent);box-shadow:var(--ring-focus)}.viewport3d-model-spawner-editor__meta{color:var(--text-muted);font-size:var(--fs-2);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:normal}.viewport3d-model-spawner-editor__head .el-card-row__remove{margin-left:auto;margin-top:0}.viewport3d-prefab-switcher-editor__list{display:flex;flex-direction:column;gap:var(--space-5)}.viewport3d-prefab-switcher-editor__add-button{margin-bottom:0}.viewport3d-prefab-switcher-editor__add-menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 10px 30px rgba(15,23,42,.18);display:flex;flex-direction:column;gap:var(--space-1);max-height:min(320px,calc(100vh - 48px));overflow-y:auto;padding:var(--space-2);position:fixed;width:min(320px,calc(100vw - 24px));z-index:var(--z-dropdown-elevated)}.viewport3d-prefab-switcher-editor__add-option{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space-4);padding:var(--space-4);text-align:left;width:100%}.viewport3d-prefab-switcher-editor__add-option:hover{background:var(--bg-hover)}.viewport3d-prefab-switcher-editor__card{border:1px solid color-mix(in srgb,var(--border-color) 78%,transparent);border-radius:var(--radius-md);overflow:hidden}.viewport3d-prefab-switcher-editor__toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex:0 0 auto;height:20px;justify-content:center;padding:0;transition:width .15s ease,opacity .15s ease,margin .15s ease,background 80ms ease,color 80ms ease;width:20px}.viewport3d-controls .viewport3d-prefab-switcher-editor__card .viewport3d-prefab-switcher-editor__toggle{width:0;opacity:0;overflow:hidden;margin-right:-8px;pointer-events:none}.viewport3d-controls .viewport3d-prefab-switcher-editor__card .el-card-row__remove{width:0;opacity:0;overflow:hidden;margin-left:-8px;pointer-events:none;transition:width .15s ease,opacity .15s ease,margin .15s ease,background 80ms ease,color 80ms ease}.viewport3d-controls .viewport3d-prefab-switcher-editor__card:focus-within .viewport3d-prefab-switcher-editor__toggle,.viewport3d-controls .viewport3d-prefab-switcher-editor__card:hover .viewport3d-prefab-switcher-editor__toggle{width:20px;opacity:1;margin-right:0;pointer-events:auto}.viewport3d-controls .viewport3d-prefab-switcher-editor__card:focus-within .el-card-row__remove,.viewport3d-controls .viewport3d-prefab-switcher-editor__card:hover .el-card-row__remove{width:20px;opacity:1;margin-left:0;pointer-events:auto}.viewport3d-prefab-switcher-editor__toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.viewport3d-prefab-switcher-editor__toggle svg{transition:transform .15s ease}.viewport3d-prefab-switcher-editor__card.is-collapsed .viewport3d-prefab-switcher-editor__toggle svg{transform:rotate(-90deg)}.viewport3d-prefab-switcher-editor__row{align-items:center;display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-4)}.viewport3d-prefab-switcher-editor__row.is-stale{opacity:.65}.viewport3d-prefab-switcher-editor__thumb{width:42px;height:28px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-dark);flex:0 0 auto}.viewport3d-prefab-switcher-editor__thumb--empty{background:var(--bg-subtle)}.viewport3d-prefab-switcher-editor__copy{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:3px}.viewport3d-prefab-switcher-editor__meta,.viewport3d-prefab-switcher-editor__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-switcher-editor__name{color:var(--text-primary);font-size:var(--fs-3)}.viewport3d-prefab-switcher-editor__meta{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-prefab-switcher-editor__member-list{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid color-mix(in srgb,var(--border-color) 68%,transparent)}.viewport3d-prefab-switcher-editor__member{align-items:center;display:flex;gap:var(--space-4);min-width:0}.viewport3d-prefab-switcher-editor__member-kind{flex:0 0 auto;padding:1px 5px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent-line) 10%,transparent);color:var(--accent-text);font-size:var(--fs-1);font-weight:700;letter-spacing:.02em}.viewport3d-prefab-switcher-editor__member-name{color:var(--text-secondary);flex:1 1 auto;font-size:var(--fs-3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-switcher-editor__prefab-list{padding:var(--space-4);border-top:1px solid color-mix(in srgb,var(--border-color) 68%,transparent);background:color-mix(in srgb,var(--bg-subtle) 65%,transparent)}.viewport3d-prefab-switcher-editor__prefab-list .el-ctrl--toggle-inline>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-switcher-editor__empty{margin:0}.viewport3d-animation-switcher-editor__clip-list{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-animation-switcher-editor__clip-actions{align-items:flex-end;flex-wrap:wrap;gap:var(--space-4)}.viewport3d-animation-switcher-editor__default-select{flex:1 1 220px;min-width:0}.viewport3d-animation-switcher-editor__default-select .ctl-dd{width:100%}.viewport3d-animation-switcher-editor__action-button{margin-bottom:0}.viewport3d-animation-switcher-editor__toggle-list{gap:var(--space-3)}.viewport3d-animation-switcher-editor__toggle-list .el-ctrl--toggle-inline>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-scene-visibility-picker__row:hover{background:var(--bg-hover)}.viewport3d-scene-visibility-picker__row.is-disabled{opacity:.72}.viewport3d-scene-visibility-picker__row.is-disabled:hover{background:transparent}.viewport3d-scene-visibility-picker__row--tag{grid-template-columns:22px 10px minmax(0,1fr) auto}.viewport3d-scene-visibility-picker__add,.viewport3d-scene-visibility-picker__tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:0}.viewport3d-scene-visibility-picker__tree-toggle.is-empty{cursor:default}.viewport3d-scene-visibility-picker__tree-chevron{transition:transform .12s ease}.viewport3d-scene-visibility-picker__tree-toggle.is-expanded .viewport3d-scene-visibility-picker__tree-chevron{transform:rotate(90deg)}.viewport3d-scene-visibility-picker__tree-dot{width:4px;height:4px;border-radius:var(--radius-pill);background:currentColor;opacity:.65}.viewport3d-scene-visibility-picker__add{width:22px;height:22px;border-radius:var(--radius-sm)}.viewport3d-scene-visibility-picker__add:hover:not(:disabled){background:rgba(74,144,226,.1);color:var(--accent-text)}.viewport3d-scene-visibility-picker__add:disabled{color:var(--text-muted);cursor:default}.viewport3d-scene-visibility-picker__add.is-added{color:var(--accent-green,#22c55e)}.viewport3d-scene-visibility-picker__kind{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--text-muted);font-size:var(--fs-1);font-weight:700}.viewport3d-scene-visibility-picker__kind--group,.viewport3d-scene-visibility-picker__kind--line,.viewport3d-scene-visibility-picker__kind--mesh,.viewport3d-scene-visibility-picker__kind--model,.viewport3d-scene-visibility-picker__kind--point,.viewport3d-scene-visibility-picker__kind--ui{background:var(--bg-subtle)}.viewport3d-scene-visibility-picker__empty,.viewport3d-scene-visibility-picker__label,.viewport3d-scene-visibility-picker__meta{min-width:0;font-size:var(--fs-3)}.viewport3d-scene-visibility-picker__label,.viewport3d-scene-visibility-picker__meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-scene-visibility-picker__label{color:var(--text-primary)}.viewport3d-scene-visibility-picker__empty,.viewport3d-scene-visibility-picker__meta{color:var(--text-muted)}.viewport3d-scene-visibility-picker__empty{padding:18px var(--space-5);text-align:center}.viewport3d-scene-visibility-picker__tag-color{width:10px;height:10px;border-radius:var(--radius-pill)}.viewport3d-vp-editor-row{align-items:center;gap:var(--space-3)}.viewport3d-vp-editor-thumb{width:44px;height:29px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.viewport3d-vp-editor-thumb--empty{background:var(--bg-dark,#1a1a1a)}.viewport3d-vp-editor-name{flex:1 1;min-width:0;font-size:var(--fs-3);padding:3px 5px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-input,var(--bg-subtle));color:var(--text-primary)}.viewport3d-scene-visibility-editor__row{align-items:center;gap:var(--space-4)}.viewport3d-scene-visibility-editor__actions{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.viewport3d-scene-visibility-editor__action-button{margin-bottom:0}.viewport3d-scene-visibility-editor__empty{margin-top:var(--space-1)}.viewport3d-scene-visibility-editor__add-menu--tags{width:min(280px,calc(100vw - 24px))}.viewport3d-scene-visibility-editor__tag-option{align-items:center}.viewport3d-scene-visibility-editor__add-tag-dot{width:12px;height:12px;border-radius:var(--radius-pill);flex:0 0 auto;margin-left:var(--space-1)}.viewport3d-scene-visibility-editor__toggle{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;flex:0 0 auto}.viewport3d-scene-visibility-editor__toggle.is-active{color:var(--accent-text)}.viewport3d-scene-visibility-editor__thumb{width:42px;height:28px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-dark);flex:0 0 auto}.viewport3d-scene-visibility-editor__thumb--empty{display:inline-flex;align-items:center;justify-content:center;background:var(--bg-subtle);color:var(--text-muted)}.viewport3d-scene-visibility-editor__tag-dot{width:10px;height:10px;border-radius:var(--radius-pill);background:var(--accent-fill);flex:0 0 auto;margin-inline:16px}.viewport3d-scene-visibility-editor__copy{display:flex;flex:1 1;min-width:0;flex-direction:column;gap:var(--space-1)}.viewport3d-scene-visibility-editor__label,.viewport3d-scene-visibility-editor__meta{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.viewport3d-scene-visibility-editor__label{color:var(--text-primary);font-size:var(--fs-3)}.viewport3d-scene-visibility-editor__meta{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-ui-panel__card-menu-backdrop{position:absolute;inset:0;z-index:49}.viewport3d-ui-panel__grid-add-card{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--bg-subtle) 60%,transparent);border:1px dashed color-mix(in srgb,var(--border-color) 70%,transparent);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--fs-4);justify-content:center;min-height:36px;min-width:36px;transition:background 80ms ease,border-color 80ms ease,color 80ms ease}.viewport3d-ui-panel__grid-add-card:hover{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-primary)}.viewport3d-ui-panel__button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--fs-4);font-weight:600;justify-content:center;min-height:34px;padding:0 var(--space-region)}.viewport3d-ui-panel__button--primary{background:var(--accent-fill);border-color:var(--accent-text);color:var(--accent-on-fill)}.viewport3d-ui-panel__button--secondary{background:var(--bg-panel);border-color:var(--border-color);color:var(--text-primary)}.viewport3d-ui-panel__button--ghost{background:transparent;border-color:color-mix(in srgb,var(--border-color) 82%,transparent);color:var(--text-secondary)}.viewport3d-ui-panel__button:disabled{cursor:default;opacity:.92}.viewport3d-ui-panel__slider-track{background:color-mix(in srgb,var(--border-color) 72%,transparent);border-radius:var(--radius-pill);height:8px;position:relative}.viewport3d-ui-panel__slider-track-wrap{min-height:18px;position:relative}.viewport3d-ui-panel__slider-track-wrap.is-interactive{cursor:pointer}.viewport3d-ui-panel__slider-native{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer;height:18px;inset:50% 0 auto;margin:0;opacity:0;position:absolute;transform:translateY(-50%);width:100%}.viewport3d-ui-panel__slider-fill{background:var(--accent-fill);border-radius:inherit;bottom:0;left:0;position:absolute;top:0}.viewport3d-ui-panel__slider-thumb{background-color:var(--bg-panel,#fff);background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--border-color,#d7dfeb) 5px,var(--border-color,#d7dfeb) 6.5px);background-position:50%;background-repeat:no-repeat;background-size:5px 100%;border:1.5px solid var(--border-color,#d7dfeb);border-radius:var(--radius-sm);box-shadow:none;cursor:ew-resize;height:22px;position:absolute;top:50%;transform:translate(-50%,-50%);transition:background-color .15s ease,border-color .15s ease;width:11px}.viewport3d-ui-panel__slider-track-wrap.is-interactive:hover .viewport3d-ui-panel__slider-thumb,.viewport3d-ui-panel__slider-track-wrap:has(.viewport3d-ui-panel__slider-native:hover) .viewport3d-ui-panel__slider-thumb{background-color:color-mix(in srgb,var(--accent-fill) 8%,var(--bg-panel,#fff));background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--accent-fill) 5px,var(--accent-fill) 6.5px);border-color:var(--accent-text);box-shadow:none}.viewport3d-ui-panel__slider-track-wrap:has(.viewport3d-ui-panel__slider-native:active) .viewport3d-ui-panel__slider-thumb,.viewport3d-ui-panel__slider-track-wrap:has(.viewport3d-ui-panel__slider-native:focus) .viewport3d-ui-panel__slider-thumb{background-color:var(--accent-text);background-image:repeating-linear-gradient(180deg,transparent,transparent 5px,rgba(255,255,255,.55) 0,rgba(255,255,255,.55) 6.5px);border-color:var(--accent-fill-hover,#1f70d6);box-shadow:none}.viewport3d-ui-panel__icon-preview{align-items:center;display:flex;gap:var(--space-5)}.viewport3d-ui-panel__icon-preview--solo{justify-content:center}.viewport3d-ui-panel__icon-chip{align-items:center;background:color-mix(in srgb,var(--accent-fill) 12%,transparent);border-radius:var(--radius-pill);display:inline-flex;height:42px;justify-content:center;width:42px}.viewport3d-ui-panel__icon-fallback{color:currentColor;font-size:var(--fs-3);font-weight:700}.viewport3d-ui-panel__icon-caption{color:var(--text-primary);font-size:var(--fs-4);font-weight:500}.viewport3d-ui-panel__resize-handle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;position:absolute}.viewport3d-ui-panel__resize-handle--n,.viewport3d-ui-panel__resize-handle--s{height:8px;left:10px;right:10px}.viewport3d-ui-panel__resize-handle--n{cursor:ns-resize;top:-4px}.viewport3d-ui-panel__resize-handle--s{bottom:-4px;cursor:ns-resize}.viewport3d-ui-panel__resize-handle--e,.viewport3d-ui-panel__resize-handle--w{bottom:10px;top:10px;width:8px}.viewport3d-ui-panel__resize-handle--e{cursor:ew-resize;right:-4px}.viewport3d-ui-panel__resize-handle--w{cursor:ew-resize;left:-4px}.viewport3d-ui-panel__resize-handle--ne,.viewport3d-ui-panel__resize-handle--nw,.viewport3d-ui-panel__resize-handle--se,.viewport3d-ui-panel__resize-handle--sw{height:12px;width:12px}.viewport3d-ui-panel__resize-handle--ne{cursor:nesw-resize;right:-4px;top:-4px}.viewport3d-ui-panel__resize-handle--nw{cursor:nwse-resize;left:-4px;top:-4px}.viewport3d-ui-panel__resize-handle--se{bottom:-4px;cursor:nwse-resize;right:-4px}.viewport3d-ui-panel__resize-handle--sw{bottom:-4px;cursor:nesw-resize;left:-4px}.vp3d-ctx-backdrop{inset:0;position:absolute;z-index:59}.vp3d-ctx-menu{background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);box-shadow:0 6px 24px rgba(0,0,0,.14),0 2px 6px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:var(--space-1);min-width:152px;padding:var(--space-2);position:fixed;z-index:60}.vp3d-ctx-item{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-4);font-weight:500;gap:var(--space-4);padding:var(--space-3) 9px;text-align:left;transition:background .1s;width:100%}.vp3d-ctx-item:hover:not(:disabled){background:var(--bg-subtle,rgba(0,0,0,.04))}.vp3d-ctx-item:disabled{cursor:not-allowed;opacity:.4}.vp3d-ctx-item--danger{color:var(--danger,#e05252)}.vp3d-ctx-item--danger:hover:not(:disabled){background:rgba(224,82,82,.08)}.vp3d-ctx-slider-field{border-top:1px solid var(--border-color,rgba(215,223,235,.9));display:flex;flex-direction:column;gap:var(--space-3);min-width:216px;padding:var(--space-4) var(--space-5) var(--space-3)}.vp3d-ctx-slider-field__label{color:var(--text-secondary);font-size:var(--fs-3);font-weight:600}html[data-theme=dark] .vp3d-ctx-menu{background:var(--bg-panel,#1a1a1e);border-color:rgba(255,255,255,.08);box-shadow:0 6px 24px rgba(0,0,0,.45),0 2px 6px rgba(0,0,0,.3)}html[data-theme=dark] .vp3d-ctx-item:hover:not(:disabled){background:rgba(255,255,255,.06)}.vp3d-line-panel{background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-lg);box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.07);display:flex;flex-direction:column;gap:0;min-width:50px;max-width:260px;max-height:calc(100vh - 24px);overflow-y:auto;padding:0;position:fixed;z-index:60;overflow:hidden}.vp3d-line-panel__header{align-items:center;border-bottom:1px solid var(--border-color,rgba(215,223,235,.7));color:var(--text-primary);display:flex;font-size:var(--fs-4);font-weight:600;gap:7px;padding:9px 10px 9px var(--space-5)}.vp3d-line-panel__header span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp3d-line-panel__close{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:20px;justify-content:center;padding:0;transition:color .1s;width:20px}.vp3d-line-panel__close:hover{color:var(--text-primary)}.vp3d-line-panel__section{border-bottom:1px solid var(--border-color,rgba(215,223,235,.4));display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}.vp3d-line-panel__label{color:var(--text-secondary);font-size:var(--fs-2);font-weight:700;letter-spacing:0}.vp3d-line-panel__sublabel{color:var(--text-muted);flex-shrink:0;font-size:var(--fs-3)}.vp3d-line-panel__colors{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.lc-chip{position:relative}.lc-chip-remove{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-circle);color:var(--text-muted);cursor:pointer;display:flex;font-size:var(--fs-0);height:9px;justify-content:center;line-height:1;opacity:0;padding:0;pointer-events:none;position:absolute;right:-3px;top:-3px;transition:opacity .12s;width:9px}.lc-chip:hover .lc-chip-remove{opacity:1;pointer-events:auto}.lc-chip-remove:hover{background:var(--status-danger);border-color:var(--status-danger);color:#fff}.lc-chip-add{align-items:center;background:var(--bg-subtle);border:1.5px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:26px;justify-content:center;transition:border-color .12s,color .12s;width:26px}.lc-chip-add:hover{border-color:var(--accent-text);color:var(--accent-text)}.vp3d-line-panel__color-row{align-items:center;display:flex;gap:7px}.vp3d-line-panel__color-swatch{border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;height:22px;padding:var(--space-px);width:32px}.vp3d-line-panel__color-label{color:var(--text-muted);flex:1 1;font-size:var(--fs-3)}.vp3d-line-panel__color-remove{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;padding:var(--space-1);transition:color .1s}.vp3d-line-panel__color-remove:hover{color:var(--danger,#e05252)}.vp3d-line-panel__add-color{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-3);gap:5px;justify-content:center;padding:var(--space-2) var(--space-4);transition:border-color .1s,color .1s}.vp3d-line-panel__add-color:hover{border-color:var(--accent-text,#4a90e2);color:var(--accent-text,#4a90e2)}.vp3d-line-panel__slider-row{align-items:center;display:flex;gap:var(--space-4)}.vp3d-line-panel__slider{accent-color:var(--accent-text,#4a90e2);flex:1 1;min-width:0}.vp3d-line-panel__slider-val{color:var(--text-secondary);flex-shrink:0;font-size:var(--fs-3);min-width:26px;text-align:right}.vp3d-line-panel__slider-field{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.vp3d-line-panel__chips{display:flex;flex-wrap:wrap;gap:5px}.vp3d-line-panel__chip{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle,rgba(0,0,0,.03));border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--fs-3);font-weight:500;gap:5px;padding:4px 9px;transition:background .1s,border-color .1s,color .1s}.vp3d-line-panel__chip:hover{border-color:color-mix(in srgb,var(--accent-line,#4a90e2) 40%,var(--border-color));color:var(--text-primary)}.vp3d-line-panel__chip.is-on{background:var(--accent-blue-tint-8,rgba(74,144,226,.12));border-color:var(--accent-text,#4a90e2);color:var(--accent-text,#4a90e2)}.vp3d-line-panel__dash-shapes{display:flex;gap:var(--space-2);flex-wrap:wrap}.vp3d-line-panel__dash-shape{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);padding:3px 8px;transition:background .1s,border-color .1s,color .1s}.vp3d-line-panel__dash-shape.is-on{background:var(--accent-blue-tint-8,rgba(74,144,226,.12));border-color:var(--accent-text,#4a90e2);color:var(--accent-text,#4a90e2)}.vp3d-line-panel__divider{border:none;border-top:1px solid var(--border-color,rgba(215,223,235,.6));margin:0}.vp3d-line-panel .vp3d-ctx-item{border-radius:0;padding:var(--space-4)}html[data-theme=dark] .vp3d-line-panel{background:var(--bg-panel,#1a1a1e);border-color:rgba(255,255,255,.08);box-shadow:0 8px 32px rgba(0,0,0,.5),0 2px 8px rgba(0,0,0,.35)}html[data-theme=dark] .vp3d-line-panel__chip.is-on{background:rgba(74,144,226,.18)}html[data-theme=dark] .vp3d-line-panel__add-color{border-color:rgba(255,255,255,.1)}html[data-theme=dark] .vp3d-line-panel__dash-shape.is-on{background:rgba(74,144,226,.18)}.viewport3d-selection-pill{bottom:12px;left:12px;padding:var(--space-2) var(--space-5);font-size:var(--fs-3);font-weight:600;color:var(--text-secondary);background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(215,223,235,.7);border-radius:var(--radius-md);box-shadow:none;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 24px)}.viewport3d-selection-pill--header{bottom:auto;left:auto;max-width:100%;pointer-events:none;position:static}.viewport3d-selection-pill--header.is-missing-assets{cursor:pointer;pointer-events:auto}.viewport3d-selection-pill--header.is-missing-assets .viewport3d-selection-pill__drag-label{color:var(--danger,#dc2626);cursor:pointer;pointer-events:auto}.viewport3d-selection-pill__drag-label.is-drag-source{cursor:-webkit-grab;cursor:grab;pointer-events:auto}.viewport3d-selection-pill__drag-label.is-drag-source:active{cursor:-webkit-grabbing;cursor:grabbing}.viewport3d-selection-pill--header{position:relative}.viewport3d-selection-pill__menu{background:var(--bg-panel,#fff);border:1px solid var(--border-color,#d7dfeb);border-radius:var(--radius-md);box-shadow:0 4px 16px rgba(0,0,0,.12);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5) var(--space-region) var(--space-4);width:max-content}.viewport3d-selection-pill__menu-section{display:flex;flex-direction:column;gap:3px}.viewport3d-selection-pill__menu-label{color:var(--text-muted,#8492a6);font-size:var(--fs-1);font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:0 var(--space-1)}.viewport3d-selection-pill__rename-row{display:flex}.viewport3d-selection-pill__rename-input{background:var(--bg-panel,#fff);border:1px solid var(--border-color,#d7dfeb);border-radius:var(--radius-md);color:var(--text-primary,#0f172a);font:inherit;font-size:var(--fs-3);height:30px;outline:none;padding:0 var(--space-4);transition:border-color .15s ease;width:100%}.viewport3d-selection-pill__rename-input:focus,.viewport3d-selection-pill__rename-input:hover{border-color:var(--grid-border-color,#c8d3e4)}.viewport3d-selection-pill__preset-list{display:flex;flex-direction:column;gap:var(--space-1)}.viewport3d-selection-pill__preset-btn{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-secondary,#5b6474);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-3);font-weight:500;gap:var(--space-4);padding:5px 7px;text-align:left;transition:background .12s ease,color .12s ease;width:100%}.viewport3d-selection-pill__preset-btn:hover{background:var(--bg-subtle,#f8fafd);color:var(--accent-text,#00838f)}.viewport3d-selection-pill__preset-label{flex:1 1}.viewport3d-selection-pill__preset-grid{display:flex;flex-wrap:wrap;gap:var(--space-2)}.viewport3d-selection-pill__preset-grid .viewport3d-selection-pill__preset-btn{align-items:center;background:var(--bg-subtle,#f8fafd);border:1px solid var(--border-color,#d7dfeb);border-radius:var(--radius-sm);color:var(--text-secondary,#5b6474);cursor:pointer;display:flex;font:inherit;font-size:var(--fs-2);font-weight:500;gap:var(--space-2);padding:3px 7px;transition:border-color .12s ease,color .12s ease;width:auto}.viewport3d-selection-pill__preset-grid .viewport3d-selection-pill__preset-btn:hover{border-color:var(--accent-text,#00838f);color:var(--accent-text,#00838f)}html[data-theme=dark] .viewport3d-selection-pill{color:var(--text-primary);background:color-mix(in srgb,var(--bg-panel) 82%,transparent);border-color:rgba(255,255,255,.08);box-shadow:none}.viewport3d-builder-hint,.viewport3d-empty-state,.viewport3d-missing-assets{font-size:var(--fs-5);line-height:1.5;max-width:min(360px,calc(100% - 32px));padding:var(--space-region) var(--space-7)}.viewport3d-builder-hint{bottom:16px;right:16px}.viewport3d-empty-state{left:16px;top:72px}.viewport3d-missing-assets{right:16px;top:72px}.viewport3d-missing-assets__header{font-size:var(--fs-4);font-weight:600;margin-bottom:var(--space-4);color:var(--text-primary);line-height:1.4}.viewport3d-missing-assets__relink-all{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:5px;padding:var(--space-2) var(--space-5);margin-bottom:var(--space-4);border:1px solid var(--accent-line);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-line) 6%,transparent);color:var(--accent-text);font:inherit;font-size:var(--fs-3);font-weight:600;cursor:pointer;transition:background .12s ease}.viewport3d-missing-assets__relink-all:hover{background:color-mix(in srgb,var(--accent-line) 12%,transparent)}.viewport3d-missing-assets__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}.viewport3d-missing-assets__item{display:flex;align-items:center;gap:var(--space-4);padding:5px 8px;border-radius:var(--radius-md);background:var(--bg-subtle)}.viewport3d-missing-assets__item-label{font-size:var(--fs-3);font-weight:550;color:var(--text-primary);flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-missing-assets__picker{position:relative;flex-shrink:0}.viewport3d-missing-assets__picker-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:88px;padding:var(--space-2) var(--space-5);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-panel);color:var(--text-secondary);font:inherit;font-size:var(--fs-3);font-weight:550;cursor:pointer;white-space:nowrap;transition:border-color .12s ease,background .12s ease,color .12s ease}.viewport3d-missing-assets__picker-btn:hover{border-color:var(--accent-text);background:color-mix(in srgb,var(--accent-line) 5%,transparent);color:var(--text-primary)}.viewport3d-missing-assets__picker-btn svg{flex-shrink:0;transition:transform .18s ease}.viewport3d-missing-assets__picker-btn svg.is-open{transform:rotate(180deg)}.viewport3d-missing-assets__dropdown{position:absolute;top:100%;right:0;z-index:99999;margin-top:var(--space-2);min-width:220px;max-height:220px;overflow:auto;list-style:none;padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-panel-elevated);box-shadow:0 8px 24px rgba(0,0,0,.12),0 1px 3px rgba(0,0,0,.06)}.viewport3d-missing-assets__dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;padding:var(--space-3) 9px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font:inherit;font-size:var(--fs-3);font-weight:450;cursor:pointer;text-align:left;transition:background .1s ease}.viewport3d-missing-assets__dropdown-item:hover{background:var(--bg-subtle)}.viewport3d-missing-assets__dropdown-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-missing-assets__dropdown-type{font-size:var(--fs-2);font-weight:500;color:var(--text-muted);flex-shrink:0;padding:var(--space-px) var(--space-3);border-radius:var(--radius-sm);background:var(--bg-subtle)}.viewport3d-missing-assets__dropdown-empty{padding:var(--space-5) var(--space-4);font-size:var(--fs-3);color:var(--text-muted);text-align:center}.viewport3d-missing-prefab-info{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-4);border-radius:var(--radius-md);border:1px solid rgba(var(--danger-rgb,220,38,38),.28);background:rgba(var(--danger-rgb,220,38,38),.06)}.viewport3d-missing-prefab-info__label{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-3);font-weight:650;color:var(--danger,#dc2626)}.viewport3d-missing-prefab-info__picker{position:relative;z-index:10}.viewport3d-missing-prefab-info__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;min-width:0;padding:5px 10px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-panel);color:var(--text-secondary);font:inherit;font-size:var(--fs-3);font-weight:550;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.viewport3d-missing-prefab-info__btn:hover{border-color:var(--accent-text);background:color-mix(in srgb,var(--accent-line) 4%,transparent);color:var(--text-primary)}.viewport3d-missing-prefab-info__btn-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.viewport3d-missing-prefab-info__btn-chevron{flex-shrink:0;transition:transform .18s ease}.viewport3d-missing-prefab-info__btn-chevron.is-open{transform:rotate(180deg)}.viewport3d-missing-prefab-info__dropdown{position:absolute;top:100%;left:0;z-index:9999;margin-top:var(--space-2);min-width:200px;max-height:220px;overflow:auto;list-style:none;padding:var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-panel-elevated);box-shadow:0 8px 24px rgba(0,0,0,.12),0 1px 3px rgba(0,0,0,.06)}.viewport3d-missing-prefab-info__dropdown--portal{position:fixed;z-index:99999}.viewport3d-missing-prefab-info__dropdown-item{display:block;width:100%;padding:var(--space-3) 9px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);font:inherit;font-size:var(--fs-3);font-weight:450;cursor:pointer;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .1s ease}.viewport3d-missing-prefab-info__dropdown-item:hover{background:var(--bg-subtle)}.viewport3d-missing-prefab-info__dropdown-empty{padding:var(--space-5) var(--space-4);font-size:var(--fs-3);color:var(--text-muted);text-align:center}.viewport3d-controls{display:flex;flex:1 1;flex-direction:column;height:auto;min-height:0;overflow:hidden}.viewport3d-controls--fullscreen-split{height:100%;min-height:0}.viewport3d-section-body{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-url-field{flex:1 1}.viewport3d-help-note{color:var(--text-muted);font-size:var(--fs-3);line-height:1.5;padding-top:0}.viewport3d-asset-manager{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.viewport3d-asset-manager__head{border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4)}.viewport3d-asset-manager__toolbar{align-items:center;display:flex;gap:var(--space-3)}.viewport3d-asset-manager__search-field{min-height:24px}.viewport3d-asset-manager__view-toggle{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:inline-flex;flex-shrink:0;gap:var(--space-1);height:24px;padding:var(--space-px)}.viewport3d-asset-manager__view-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;height:20px;justify-content:center;padding:0;transition:background 80ms ease,color 80ms ease;width:20px}.viewport3d-asset-manager__view-btn:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-asset-manager__view-btn.is-active{background:var(--bg-panel);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 18%,var(--border-color));color:var(--text-primary)}.viewport3d-asset-manager__subtabs{display:flex;gap:var(--space-3)}.viewport3d-asset-manager__actions{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-asset-manager__helper{color:var(--text-muted);font-size:var(--fs-3);line-height:1.35;max-width:160px}.viewport3d-asset-manager__body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:var(--space-4) var(--space-5) var(--space-2);position:relative}.viewport3d-asset-manager__message{margin-bottom:var(--space-4)}.viewport3d-asset-list{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-asset-list--grouped{gap:var(--space-5)}.viewport3d-asset-list--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.viewport3d-asset-section{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.viewport3d-asset-section__toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--space-3);min-height:24px;padding:0 var(--space-1);text-align:left;width:100%}.viewport3d-asset-section__toggle:hover{color:var(--text-primary)}.viewport3d-asset-section__chevron{color:var(--text-muted);flex-shrink:0;font-size:var(--fs-3);line-height:1;transition:transform .12s ease}.viewport3d-asset-section__toggle.is-expanded .viewport3d-asset-section__chevron{transform:rotate(90deg)}.viewport3d-asset-section__title{color:inherit;flex:1 1;font-size:var(--fs-4);font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-asset-section__count{align-items:center;background:rgba(0,0,0,.07);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;flex-shrink:0;font-size:var(--fs-1);font-weight:700;justify-content:center;letter-spacing:.04em;min-width:0;padding:var(--space-1) var(--space-3);white-space:nowrap}.viewport3d-asset-section__items{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.viewport3d-asset-section__items--grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(152px,1fr))}.viewport3d-asset-card{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle);border:1px solid var(--border-color);border-left-width:3px;border-radius:var(--radius-md);color:inherit;cursor:default;display:flex;gap:var(--space-5);justify-content:space-between;padding:8px 10px 8px 9px;position:relative;text-align:left;transition:border-color .15s;width:100%}.viewport3d-asset-card:focus-within,.viewport3d-asset-card:has(.is-active),.viewport3d-asset-card:hover{z-index:100}.viewport3d-asset-card__main{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;flex:1 1;gap:var(--space-5);min-width:0;padding:0;text-align:left}.viewport3d-asset-card__main:disabled{cursor:not-allowed}.viewport3d-asset-card--material{border-left-width:1px;cursor:pointer;box-shadow:inset 3px 0 0 var(--vp3d-material-source-accent,var(--accent-line)),inset -3px 0 0 var(--vp3d-material-behavior-accent,var(--accent-line))}.viewport3d-asset-card--prefab{border-left-width:1px;position:relative}.viewport3d-asset-card--image{border-left-color:color-mix(in srgb,var(--accent-line) 28%,var(--border-color))}.viewport3d-asset-card--prefab.is-disabled{opacity:.65}.viewport3d-asset-card-row--material-list{align-items:center;display:flex;gap:var(--space-3)}.viewport3d-asset-card--material-list{flex:1 1;gap:var(--space-3);min-height:26px;overflow:hidden;padding:var(--space-2) var(--space-4)}.viewport3d-asset-card--material-list .viewport3d-asset-card__main{min-width:0}.viewport3d-asset-card--prefab-list{gap:var(--space-5);min-height:62px;overflow:hidden;padding:8px 10px 8px 9px}.viewport3d-asset-card--upload{border-left-color:#d4a72c}.viewport3d-asset-card--sketchfab{border-left-color:#1caad9}.viewport3d-asset-card--sketchfab,.viewport3d-asset-card--upload{position:relative}.viewport3d-asset-card:hover{border-color:color-mix(in srgb,var(--accent-line) 40%,transparent)}.viewport3d-asset-card.is-selected{background:color-mix(in srgb,var(--accent-fill) 10%,var(--bg-subtle));border-color:color-mix(in srgb,var(--accent-line) 55%,var(--border-color));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 18%,transparent)}.viewport3d-asset-card--material.is-selected{box-shadow:inset 3px 0 0 var(--vp3d-material-source-accent,var(--accent-line)),inset -3px 0 0 var(--vp3d-material-behavior-accent,var(--accent-line)),inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 18%,transparent)}.viewport3d-asset-card__thumb{align-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-panel) 88%,white 12%),var(--bg-subtle));border:1px solid color-mix(in srgb,var(--border-color) 84%,transparent);border-radius:var(--radius-md);color:var(--text-secondary);display:flex;flex-shrink:0;height:46px;justify-content:center;width:46px}.viewport3d-asset-card__thumb--material{background:linear-gradient(160deg,color-mix(in srgb,var(--bg-panel) 92%,white 8%),color-mix(in srgb,var(--bg-subtle) 82%,transparent))}.viewport3d-asset-card__thumb--prefab{background:color-mix(in srgb,var(--accent-line) 12%,transparent);color:var(--accent-text)}.viewport3d-asset-card__thumb--image{background:linear-gradient(160deg,color-mix(in srgb,var(--bg-panel) 94%,white 6%),color-mix(in srgb,var(--bg-subtle) 86%,transparent))}.viewport3d-asset-card__thumb-image{display:block;height:100%;object-fit:cover;width:100%}.viewport3d-asset-card__thumb-image--image{background:color-mix(in srgb,var(--bg-panel) 92%,white 8%);object-fit:contain;padding:var(--space-2)}.viewport3d-asset-card__thumb-fallback{font-size:var(--fs-7);font-weight:700}.viewport3d-asset-card__material-swatch{border:1px solid rgba(255,255,255,.65);border-radius:var(--radius-pill);box-shadow:0 0 0 1px rgba(0,0,0,.08);display:block;height:22px;width:22px}.viewport3d-asset-card__meta{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:0}.viewport3d-asset-card__meta--material-list{align-items:center;flex-direction:row}.viewport3d-asset-card--material-list .viewport3d-asset-card__meta--material-list{flex:1 1 auto;min-width:0;overflow:hidden;width:0}.viewport3d-asset-card--material-list .viewport3d-asset-card__thumb{border-radius:var(--radius-sm);height:16px;width:16px}.viewport3d-asset-card--material-list .viewport3d-asset-card__material-swatch{height:12px;width:12px}.viewport3d-asset-card__title-row{align-items:center;display:flex;gap:var(--space-4);min-width:0}.viewport3d-asset-card--material-list .viewport3d-asset-card__title-row{flex:1 1;gap:0;min-width:0;overflow:hidden}.viewport3d-asset-card__index{color:var(--text-muted);flex-shrink:0;font-size:var(--fs-2);font-weight:700;min-width:18px;text-align:right}.viewport3d-asset-card__title{color:var(--text-primary);display:block;font-size:var(--fs-4);font-weight:700;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-asset-card__subline{color:var(--text-muted);font-size:var(--fs-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-asset-card__usage-badge{align-items:center;background:rgba(0,0,0,.07);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;flex-shrink:0;font-size:var(--fs-1);font-weight:700;justify-content:center;letter-spacing:.04em;white-space:nowrap}.viewport3d-asset-card--material-list .viewport3d-asset-card__usage-badge,.viewport3d-asset-card__usage-badge{min-width:0;padding:var(--space-1) var(--space-3)}.viewport3d-asset-card__utility{align-items:center;display:inline-flex;flex-shrink:0;justify-content:flex-end;min-width:56px;position:relative}.viewport3d-asset-card__utility--grid{margin-top:auto;min-width:0;width:100%}.viewport3d-asset-card__utility--list{min-width:0;transition:margin-left .15s ease,min-width .15s ease}.viewport3d-asset-card__utility .viewport3d-asset-card__usage-badge{margin-left:auto;transition:opacity .15s ease,visibility .15s ease}.viewport3d-asset-card__utility-actions{align-items:center;display:inline-flex;gap:var(--space-2);justify-content:flex-end;opacity:0;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:opacity .15s ease}.viewport3d-asset-card__utility--list .viewport3d-asset-card__utility-actions{gap:var(--space-2)}.viewport3d-asset-card--material-list.is-selected .viewport3d-asset-card__usage-badge,.viewport3d-asset-card--material-list:hover .viewport3d-asset-card__usage-badge,.viewport3d-asset-card__usage-badge--selected{background:rgba(0,0,0,.15);color:hsla(0,0%,100%,.85)}.viewport3d-asset-card--material:focus-within .viewport3d-asset-card__utility .viewport3d-asset-card__usage-badge,.viewport3d-asset-card--material:hover .viewport3d-asset-card__utility .viewport3d-asset-card__usage-badge{opacity:0;visibility:hidden}.viewport3d-asset-card--material:focus-within .viewport3d-asset-card__utility-actions,.viewport3d-asset-card--material:hover .viewport3d-asset-card__utility-actions{opacity:1;pointer-events:auto}.viewport3d-asset-card--material-list:focus-within .viewport3d-asset-card__utility--list.viewport3d-asset-card__utility--single-action,.viewport3d-asset-card--material-list:hover .viewport3d-asset-card__utility--list.viewport3d-asset-card__utility--single-action{margin-left:3px;min-width:14px}.viewport3d-asset-card--material-list:focus-within .viewport3d-asset-card__utility--list.viewport3d-asset-card__utility--double-action,.viewport3d-asset-card--material-list:hover .viewport3d-asset-card__utility--list.viewport3d-asset-card__utility--double-action{margin-left:3px;min-width:30px}.viewport3d-asset-card__actions{display:flex;gap:var(--space-2);flex-shrink:0;max-width:0;overflow:hidden;opacity:0;transition:max-width .15s,opacity .15s}.viewport3d-asset-card__actions:has(.is-active){overflow:visible}.viewport3d-asset-card:hover .viewport3d-asset-card__actions{max-width:60px;opacity:1}.viewport3d-asset-card__actions--image,.viewport3d-asset-card__actions--model,.viewport3d-asset-card__actions--prefab{align-self:auto;flex-direction:column;gap:var(--space-3);justify-content:center;max-width:none;overflow:visible;opacity:0;pointer-events:none;position:absolute;right:10px;top:50%;transform:translateY(-50%);width:auto;z-index:100}.viewport3d-asset-card__actions--image .viewport3d-asset-icon-btn,.viewport3d-asset-card__actions--model .viewport3d-asset-icon-btn,.viewport3d-asset-card__actions--prefab .viewport3d-asset-icon-btn{border-radius:var(--radius-sm);height:24px;width:24px}.viewport3d-asset-card__actions--image .viewport3d-asset-icon-btn svg,.viewport3d-asset-card__actions--model .viewport3d-asset-icon-btn svg,.viewport3d-asset-card__actions--prefab .viewport3d-asset-icon-btn svg{height:13px;width:13px}.viewport3d-asset-card--sketchfab:focus-within .viewport3d-asset-card__actions--model,.viewport3d-asset-card--sketchfab:has(.is-active) .viewport3d-asset-card__actions--model,.viewport3d-asset-card--sketchfab:hover .viewport3d-asset-card__actions--model,.viewport3d-asset-card--upload:focus-within .viewport3d-asset-card__actions--model,.viewport3d-asset-card--upload:has(.is-active) .viewport3d-asset-card__actions--model,.viewport3d-asset-card--upload:hover .viewport3d-asset-card__actions--model{opacity:1;pointer-events:auto}.viewport3d-asset-card--prefab:focus-within .viewport3d-asset-card__actions--prefab,.viewport3d-asset-card--prefab:has(.is-active) .viewport3d-asset-card__actions--prefab,.viewport3d-asset-card--prefab:hover .viewport3d-asset-card__actions--prefab{opacity:1;pointer-events:auto}.viewport3d-asset-card--image:focus-within .viewport3d-asset-card__actions--image,.viewport3d-asset-card--image:has(.is-active) .viewport3d-asset-card__actions--image,.viewport3d-asset-card--image:hover .viewport3d-asset-card__actions--image{opacity:1;pointer-events:auto}.viewport3d-asset-card--prefab .viewport3d-asset-card__usage-badge{transition:opacity .15s ease,visibility .15s ease}.viewport3d-asset-card--prefab:focus-within .viewport3d-asset-card__usage-badge,.viewport3d-asset-card--prefab:hover .viewport3d-asset-card__usage-badge{opacity:0;visibility:hidden}.viewport3d-asset-list--grid .viewport3d-asset-card,.viewport3d-asset-section__items--grid .viewport3d-asset-card{align-items:stretch;border-left-width:1px;flex-direction:column;gap:var(--space-4);min-height:176px;padding:var(--space-5)}.viewport3d-asset-list--grid .viewport3d-asset-card__thumb,.viewport3d-asset-section__items--grid .viewport3d-asset-card__thumb{height:90px;width:100%}.viewport3d-asset-list--grid .viewport3d-asset-card__thumb--material,.viewport3d-asset-section__items--grid .viewport3d-asset-card__thumb--material{padding:var(--space-5)}.viewport3d-asset-list--grid .viewport3d-asset-card__material-swatch,.viewport3d-asset-section__items--grid .viewport3d-asset-card__material-swatch{height:54px;width:54px}.viewport3d-asset-list--grid .viewport3d-asset-card__meta,.viewport3d-asset-section__items--grid .viewport3d-asset-card__meta{width:100%}.viewport3d-asset-list--grid .viewport3d-asset-card__actions,.viewport3d-asset-section__items--grid .viewport3d-asset-card__actions{margin-top:auto;max-width:none;opacity:1}.viewport3d-asset-list--grid .viewport3d-asset-card__actions--image,.viewport3d-asset-list--grid .viewport3d-asset-card__actions--model,.viewport3d-asset-list--grid .viewport3d-asset-card__actions--prefab,.viewport3d-asset-section__items--grid .viewport3d-asset-card__actions--image,.viewport3d-asset-section__items--grid .viewport3d-asset-card__actions--model{opacity:0}.viewport3d-asset-list--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--image,.viewport3d-asset-list--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--model,.viewport3d-asset-list--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--prefab,.viewport3d-asset-list--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--image,.viewport3d-asset-list--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--model,.viewport3d-asset-list--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--prefab,.viewport3d-asset-section__items--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--image,.viewport3d-asset-section__items--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--model,.viewport3d-asset-section__items--grid .viewport3d-asset-card:focus-within .viewport3d-asset-card__actions--prefab,.viewport3d-asset-section__items--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--image,.viewport3d-asset-section__items--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--model,.viewport3d-asset-section__items--grid .viewport3d-asset-card:hover .viewport3d-asset-card__actions--prefab{opacity:1}.viewport3d-prefab-bar{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;height:30px;position:relative;transition:border-color .15s ease;width:100%}.viewport3d-asset-image-preview{align-items:center;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-panel) 94%,white 6%),color-mix(in srgb,var(--bg-subtle) 90%,transparent));border:1px solid color-mix(in srgb,var(--border-color) 84%,transparent);border-radius:var(--radius-md);display:flex;justify-content:center;margin-bottom:var(--space-5);min-height:168px;overflow:hidden;padding:var(--space-4)}.viewport3d-asset-image-preview__image{display:block;height:auto;max-height:220px;max-width:100%;object-fit:contain;width:100%}.viewport3d-asset-image-preview__empty{color:var(--text-muted);font-size:var(--fs-4);text-align:center}.viewport3d-prefab-bar:focus-within,.viewport3d-prefab-bar:hover{border-color:var(--grid-border-color)}.viewport3d-prefab-bar__chevron,.viewport3d-prefab-bar__new{align-items:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:background .12s ease,color .12s ease}.viewport3d-prefab-bar__new{border-radius:var(--radius-md) 0 0 var(--radius-md);border-right:1px solid var(--border-color);width:28px}.viewport3d-prefab-bar__chevron{border-left:1px solid var(--border-color);border-radius:0 var(--radius-md) var(--radius-md) 0;width:24px}.viewport3d-prefab-bar__new svg{height:12px;width:12px}.viewport3d-prefab-bar__chevron svg{height:10px;width:10px}.viewport3d-prefab-bar__chevron.is-open,.viewport3d-prefab-bar__chevron:hover,.viewport3d-prefab-bar__new:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-prefab-bar__name-wrap{align-items:center;display:flex;flex:1 1;min-width:0;position:relative}.viewport3d-prefab-bar__name{background:transparent;border:none;color:var(--text-primary);font-size:var(--fs-5);height:28px;outline:none;padding:0 var(--space-4);width:100%}.viewport3d-prefab-bar__edit{align-items:center;background:color-mix(in srgb,var(--accent-fill) 10%,var(--bg-panel) 90%);border:1px solid color-mix(in srgb,var(--accent-line) 28%,transparent);border-radius:var(--radius-sm);color:var(--accent-text);cursor:pointer;display:flex;font-size:var(--fs-3);font-weight:600;gap:0;height:22px;justify-content:center;max-width:22px;min-width:22px;overflow:hidden;opacity:0;padding:0 5px;position:absolute;right:4px;top:50%;transform:translateY(-50%);transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,gap .22s ease,max-width .22s ease,padding .22s ease,opacity .14s ease}.viewport3d-prefab-bar:focus-within .viewport3d-prefab-bar__edit,.viewport3d-prefab-bar:hover .viewport3d-prefab-bar__edit{opacity:1}.viewport3d-prefab-bar__edit:hover:not(:disabled){background:var(--accent-fill);border-color:var(--accent-text);box-shadow:none;color:var(--accent-on-fill);gap:5px;max-width:74px;padding:0 var(--space-4)}.viewport3d-prefab-bar__edit-icon{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center}.viewport3d-prefab-bar__edit-label{line-height:1;max-width:0;overflow:hidden;transition:max-width .22s ease;white-space:nowrap}.viewport3d-prefab-bar__edit:hover:not(:disabled) .viewport3d-prefab-bar__edit-label{max-width:34px}.viewport3d-prefab-bar__name::placeholder{color:var(--text-muted)}.viewport3d-prefab-bar__chevron:disabled,.viewport3d-prefab-bar__edit:disabled,.viewport3d-prefab-bar__name:disabled,.viewport3d-prefab-bar__new:disabled{cursor:not-allowed;opacity:.6}.viewport3d-prefab-bar__menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-1);left:0;min-width:100%;padding:5px;position:absolute;top:calc(100% + 5px);z-index:200}.viewport3d-prefab-bar__menu-item{align-items:center;background:transparent;border-radius:var(--radius-sm);color:var(--text-primary);display:flex;font-size:var(--fs-4);transition:background .12s ease;width:100%}.viewport3d-prefab-bar__menu-item:hover{background:var(--bg-hover)}.viewport3d-prefab-bar__menu-item.is-active{background:color-mix(in srgb,var(--accent-line) 8%,transparent);color:var(--accent-text);font-weight:500}.viewport3d-prefab-bar__menu-label{background:transparent;border:none;color:inherit;cursor:pointer;flex:1 1;font-size:inherit;font-weight:inherit;min-width:0;overflow:hidden;padding:7px 8px 7px 10px;text-align:left;text-overflow:ellipsis;white-space:nowrap}.viewport3d-prefab-bar__menu-empty{color:var(--text-muted);font-size:var(--fs-4);padding:var(--space-5);text-align:center}.viewport3d-material-library-editor{background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-5);padding:var(--space-5)}.viewport3d-material-library-editor__header{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between}.viewport3d-material-library-editor__meta{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.viewport3d-material-library-editor__meta strong{color:var(--text-primary);font-size:var(--fs-4)}.viewport3d-material-library-editor__meta span{color:var(--text-muted);font-size:var(--fs-3)}.viewport3d-material-library-editor__body{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.viewport3d-material-library-editor__fields{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-material-library-editor__name-field{display:flex;flex-direction:column;gap:var(--space-2)}.viewport3d-material-library-editor__name-field input{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--fs-4);outline:none;padding:7px 8px}.viewport3d-material-library-editor__name-field input:focus{border-color:color-mix(in srgb,var(--accent-line) 48%,var(--border-color))}.viewport3d-material-library-editor__read-only{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.viewport3d-material-library-editor__read-only-row{align-items:center;display:flex;gap:var(--space-4);justify-content:space-between}.viewport3d-material-library-editor__read-only-row span{color:var(--text-muted);font-size:var(--fs-3)}.viewport3d-material-library-editor__read-only-row strong{color:var(--text-primary);font-size:var(--fs-3);font-weight:600;text-align:right}.viewport3d-asset-icon-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;height:26px;justify-content:center;padding:0;transition:background .12s,border-color .12s,color .12s;width:26px}.viewport3d-asset-icon-btn--plain{background:transparent;border:none;border-radius:0;color:var(--text-muted);height:auto;width:auto}.viewport3d-asset-icon-btn:hover{background:color-mix(in srgb,var(--accent-line) 8%,transparent);border-color:color-mix(in srgb,var(--accent-line) 40%,transparent);color:var(--accent-text)}.viewport3d-asset-icon-btn--plain:hover{background:transparent;border-color:transparent}.viewport3d-asset-icon-btn:disabled{cursor:not-allowed;opacity:.4}.viewport3d-asset-icon-btn--danger:hover{background:var(--danger-soft-bg);border-color:var(--danger-soft-border);color:var(--status-danger)}.viewport3d-asset-icon-btn--danger.viewport3d-asset-icon-btn--plain:hover{background:transparent;border-color:transparent}.viewport3d-inline-message{border-radius:var(--radius-md);font-size:var(--fs-4);line-height:1.5;padding:var(--space-4) var(--space-5)}.viewport3d-inline-message--floating{box-shadow:var(--shadow-sm);max-width:min(100%,260px);position:absolute;right:0;top:0;z-index:var(--z-raised)}.viewport3d-inline-message--success{background:color-mix(in srgb,var(--accent-green) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-green) 25%,transparent);color:var(--accent-green)}.viewport3d-inline-message--error{background:var(--danger-soft-bg);border:1px solid var(--danger-soft-border);color:var(--status-danger)}.viewport3d-transform-grid{gap:var(--space-3)}.viewport3d-transform-field{min-width:0}.viewport3d-transform-group{display:flex;flex-direction:column;gap:var(--space-2)}.viewport3d-transform-group__title{color:var(--text-secondary);font-size:var(--fs-3);font-weight:600;letter-spacing:.02em}.viewport3d-transform-driver-fields{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3)}.viewport3d-transform-driver-field{align-items:center;display:flex;flex-direction:row;gap:5px;min-width:0}.viewport3d-transform-driver-field__controls{align-items:stretch;display:flex;flex:1 1 auto;min-width:0}.viewport3d-transform-driver-field__label{color:var(--text-secondary);flex-shrink:0;font-size:var(--fs-3);font-weight:600;min-width:12px;text-align:center}.viewport3d-transform-driver-field__dropdown{--viewport3d-transform-driver-menu-extra-width:34px;flex:1 1 auto;min-width:0}.viewport3d-transform-driver-field__dropdown .ctl-dd-trigger{width:100%}.viewport3d-transform-driver-field__dropdown .ctl-dd-menu{min-width:calc(100% + var(--viewport3d-transform-driver-menu-extra-width, 0px))}.viewport3d-transform-driver-field__remove{align-items:center;background:var(--bg-panel,#fff);border:1px solid transparent;border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;height:auto;justify-content:center;margin-left:0;opacity:0;overflow:hidden;padding:0;pointer-events:none;transform:translateX(-4px);transition:width .18s ease,margin-left .18s ease,opacity .12s ease,transform .18s ease,border-color .18s ease,color .18s ease,background-color .18s ease;width:0}.viewport3d-transform-driver-field__controls:focus-within .viewport3d-transform-driver-field__remove,.viewport3d-transform-driver-field__controls:hover .viewport3d-transform-driver-field__remove{border-color:var(--border-color);margin-left:var(--space-3);opacity:1;pointer-events:auto;transform:translateX(0);width:28px}.viewport3d-transform-driver-field__remove:focus-visible,.viewport3d-transform-driver-field__remove:hover{border-color:var(--status-danger);color:var(--status-danger);outline:none}.viewport3d-anim-manager{background:var(--bg-panel,#fff);border-top:1px solid var(--border-color);bottom:0;display:flex;flex-direction:column;gap:var(--space-2);left:0;padding:var(--space-2) var(--space-4);position:absolute;right:0;z-index:30}.viewport3d-anim-manager:not(.is-collapsed) .viewport3d-timeline-track{display:none!important}.viewport3d-anim-manager:not(.is-collapsed) .viewport3d-timeline-playpause{margin-left:auto}.viewport3d-anim-manager.is-collapsed{gap:0;padding:3px 8px}.viewport3d-anim-manager__bar{align-items:center;display:flex;gap:var(--space-3);min-width:0;position:relative}.viewport3d-anim-manager__collapse{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;height:20px;justify-content:center;padding:0;width:20px}.viewport3d-anim-manager__collapse:focus-visible,.viewport3d-anim-manager__collapse:hover{background:var(--accent-blue-tint-8);border-color:var(--accent-text);color:var(--accent-text);outline:none}.viewport3d-anim-manager__body{display:flex;flex-direction:row;gap:0;max-height:400px;min-width:0;overflow:hidden;position:relative;transition:max-height .3s cubic-bezier(.22,1,.36,1),gap .3s cubic-bezier(.22,1,.36,1)}.viewport3d-anim-manager__body.is-collapsed{max-height:0;gap:0}.viewport3d-anim-manager__gutter{border-right:1px solid var(--border-color);flex:0 0 34px;min-width:0;position:relative}.viewport3d-anim-manager__layer-no{color:var(--text-muted);font-size:var(--fs-0);font-weight:600;line-height:1;position:absolute;right:5px;text-align:right;transform:translateY(-50%);-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewport3d-anim-manager__timeline{display:flex;flex:1 1;flex-direction:column;gap:var(--space-2);min-width:0;position:relative}.viewport3d-anim-manager__axis-wrap{background:var(--bg-subtle);border-radius:0 0 0 var(--radius-md);left:0;position:absolute;right:0}.viewport3d-anim-manager__axis{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:space-between;padding:3px 0 4px}.viewport3d-anim-manager__axis-field-wrap{flex:0 0 auto}.viewport3d-anim-manager__axis-editor,.viewport3d-anim-manager__axis-field{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:none;color:var(--text-primary);display:inline-flex;flex-direction:column;font:inherit;justify-content:center;line-height:1;min-width:28px;padding:2px 3px;text-align:center;transition:border-color .18s ease,color .18s ease}.viewport3d-anim-manager__axis-field{cursor:text}.viewport3d-anim-manager__axis-editor:focus,.viewport3d-anim-manager__axis-field:hover{border-color:var(--accent-text);box-shadow:none;color:var(--text-primary);outline:none}.viewport3d-anim-manager__axis-field-label{color:var(--text-muted);font-size:var(--fs-0);font-weight:700;letter-spacing:.05em;line-height:1;text-transform:uppercase}.viewport3d-anim-manager__axis-field-value{font-size:var(--fs-1);font-weight:600;line-height:1.1;margin-top:var(--space-px)}.viewport3d-anim-manager__axis-editor{-moz-appearance:textfield;font-size:var(--fs-1);font-weight:600;height:28px;min-width:34px;width:34px}.viewport3d-anim-manager__axis-editor::-webkit-inner-spin-button,.viewport3d-anim-manager__axis-editor::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;width:0}.viewport3d-anim-manager__axis-scale{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;width:100%}.viewport3d-anim-manager__axis-mode{align-items:center;background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;flex-direction:column;gap:var(--space-px);padding:0}.viewport3d-anim-manager__axis-mode:hover{color:var(--text-secondary)}.viewport3d-anim-manager__axis-mode-track{background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-pill);display:block;height:22px;position:relative;width:12px}.viewport3d-anim-manager__axis-mode-knob{background:var(--text-muted);border-radius:var(--radius-circle);height:8px;left:1px;position:absolute;top:11px;transition:top .16s cubic-bezier(.22,1,.36,1),background .16s ease;width:8px}.viewport3d-anim-manager__axis-mode.is-absolute .viewport3d-anim-manager__axis-mode-track{border-color:var(--accent-text)}.viewport3d-anim-manager__axis-mode.is-absolute .viewport3d-anim-manager__axis-mode-knob{background:var(--accent-fill);top:1px}.viewport3d-anim-manager__axis-mode-label{font-size:var(--fs-0);font-weight:700;letter-spacing:.04em;line-height:1}.viewport3d-anim-manager__axis-mode.is-absolute .viewport3d-anim-manager__axis-mode-label{color:var(--accent-text)}.viewport3d-anim-manager__ruler{border-bottom:1px solid var(--border-color);cursor:ew-resize;height:16px;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewport3d-anim-manager__ruler.is-scrubbing,.viewport3d-anim-manager__ruler.is-scrubbing *{cursor:ew-resize}.viewport3d-anim-manager__tick{color:var(--text-muted);font-size:var(--fs-1);position:absolute;top:2px;transform:translateX(-50%);white-space:nowrap}.viewport3d-anim-manager__rows{min-width:0;position:relative;touch-action:none}.viewport3d-anim-manager__layer{background:var(--bg-subtle,rgba(127,127,127,.06));border-radius:var(--radius-md);left:0;position:absolute;right:0}.viewport3d-anim-manager__strip{align-items:center;background:var(--accent-blue-tint-8);border:1px solid var(--accent-line);border-radius:var(--radius-md);box-sizing:border-box;cursor:-webkit-grab;cursor:grab;display:flex;gap:var(--space-2);min-width:0;overflow:hidden;padding:0 var(--space-2);position:absolute;transition:box-shadow .14s ease}.viewport3d-anim-manager__strip.is-selected{box-shadow:var(--ring-focus-tight)}.viewport3d-anim-manager__strip.is-dragging{cursor:-webkit-grabbing;cursor:grabbing;opacity:.85}.viewport3d-anim-manager__strip.is-muted{background:var(--bg-subtle,rgba(127,127,127,.08));border-color:var(--text-muted);opacity:.6}.viewport3d-anim-graph{inset:0;overflow:hidden;pointer-events:none;position:absolute}.viewport3d-anim-graph--panel{pointer-events:auto;position:relative}.viewport3d-anim-graph__svg{display:block;overflow:visible}.viewport3d-anim-graph__track{color:hsl(var(--vp3d-graph-hue,210) 70% 52%)}.viewport3d-anim-graph--inline .viewport3d-anim-graph__track{opacity:.5}.viewport3d-anim-graph__curve{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.viewport3d-anim-graph--inline .viewport3d-anim-graph__curve{stroke-width:1.2}.viewport3d-anim-graph__baseline{stroke:var(--border-color);stroke-dasharray:2 3;stroke-width:1}.viewport3d-anim-graph__grid-line{stroke:color-mix(in srgb,var(--border-color) 55%,transparent);stroke-width:1}.viewport3d-anim-graph__grid-line.is-edge{stroke:color-mix(in srgb,var(--border-color) 35%,transparent)}.viewport3d-anim-graph__grid-vline{stroke:color-mix(in srgb,var(--border-color) 30%,transparent);stroke-width:1}.viewport3d-anim-graph__key{cursor:-webkit-grab;cursor:grab;fill:var(--bg-panel,#fff);stroke:currentColor;stroke-width:1.6}.viewport3d-anim-graph__key.is-selected{fill:currentColor}.viewport3d-anim-graph__key:active{cursor:-webkit-grabbing;cursor:grabbing}.viewport3d-anim-graph__tether{pointer-events:none;stroke:currentColor;stroke-dasharray:2 2;stroke-width:1}.viewport3d-anim-graph__grip{cursor:-webkit-grab;cursor:grab;fill:var(--accent-color,#b45309);stroke:var(--bg-panel,#fff);stroke-width:1.5}.viewport3d-anim-graph__grip:active{cursor:-webkit-grabbing;cursor:grabbing}.viewport3d-anim-graph__value-pop{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 2px 8px rgba(0,0,0,.35);padding:3px 4px;pointer-events:auto;position:absolute;transform:translate(-50%,calc(-100% - 6px));z-index:5}.viewport3d-anim-graph__value-pop.is-below{transform:translate(-50%,6px)}.viewport3d-anim-graph__value-badge,.viewport3d-anim-graph__value-editor{background:transparent;border:none;box-shadow:none;color:var(--text-primary);display:inline-flex;font:inherit;font-size:var(--fs-2);font-weight:600;height:18px;justify-content:center;line-height:1;min-width:40px;padding:0 var(--space-3);text-align:center;white-space:nowrap}.viewport3d-anim-graph__value-badge{cursor:text}.viewport3d-anim-graph__value-badge:hover{color:var(--text-primary)}.viewport3d-anim-graph__value-editor{-moz-appearance:textfield;min-width:52px}.viewport3d-anim-graph__value-editor:focus{outline:1px solid var(--accent-line);outline-offset:-1px}.viewport3d-anim-graph__value-editor::-webkit-inner-spin-button,.viewport3d-anim-graph__value-editor::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;width:0}.viewport3d-anim-graph__value-mode{border-top:1px solid var(--border-color);display:flex;gap:var(--space-1);margin-top:3px;padding-top:3px}.viewport3d-anim-graph__value-mode-btn{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font:inherit;font-size:var(--fs-0);font-weight:600;line-height:1;padding:3px 5px;transition:color .14s ease,background-color .14s ease,border-color .14s ease}.viewport3d-anim-graph__value-mode-btn:hover{color:var(--text-primary)}.viewport3d-anim-graph__value-mode-btn.is-active{background:var(--bg-subtle);border-color:var(--border-color);color:var(--text-primary)}.viewport3d-anim-manager__graph{background:var(--bg-subtle);border-radius:0 0 var(--radius-md) var(--radius-md);border:1px solid var(--border-color);border-top:0;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-1) var(--space-2) var(--space-2);position:absolute;z-index:2}.viewport3d-anim-manager__graph-legend{align-items:center;display:flex;gap:var(--space-3);height:14px;min-width:0;overflow:hidden}.viewport3d-anim-manager__graph-chip{align-items:center;color:hsl(var(--vp3d-graph-hue,210) 70% 42%);display:inline-flex;font-size:var(--fs-1);font-weight:600;gap:3px;white-space:nowrap}.viewport3d-anim-manager__graph-chip:before{background:currentColor;border-radius:var(--radius-circle);content:"";height:6px;width:6px}.viewport3d-anim-manager__graph-hint{color:var(--text-muted);font-size:var(--fs-1);margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-anim-manager__strip.is-truncated{border-right:2px dashed var(--warning-color,#d97706);border-top-right-radius:0;border-bottom-right-radius:0}.viewport3d-anim-manager__strip.is-orphan{border-color:var(--status-danger);border-style:dashed}.viewport3d-anim-manager__strip-label{color:var(--text-primary);flex:1 1 auto;font-size:var(--fs-2);font-weight:600;min-width:0;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.viewport3d-anim-manager__strip-extend,.viewport3d-anim-manager__strip-fit,.viewport3d-anim-manager__strip-mute,.viewport3d-anim-manager__strip-remove{align-items:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:var(--fs-3);height:16px;justify-content:center;padding:0;width:14px}.viewport3d-anim-manager__strip-remove{color:var(--status-danger)}.viewport3d-anim-manager__strip-extend[aria-pressed=true]{color:var(--accent-text)}.viewport3d-anim-manager__extend-shade{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--accent-line) 16%,transparent) 0,color-mix(in srgb,var(--accent-line) 16%,transparent) 4px,transparent 4px,transparent 9px);border:1px dashed color-mix(in srgb,var(--accent-line) 42%,transparent);border-radius:var(--radius-sm);box-sizing:border-box;pointer-events:none;position:absolute;z-index:0}.viewport3d-anim-manager__strip-grip{bottom:0;cursor:ew-resize;position:absolute;right:0;top:0;width:8px}.viewport3d-anim-manager__strip-grip:after{background:var(--accent-fill);bottom:4px;content:"";opacity:.5;position:absolute;right:2px;top:4px;width:2px}.viewport3d-anim-manager__playhead{background:var(--accent-fill);bottom:0;pointer-events:none;position:absolute;top:0;width:2px;z-index:2}.viewport3d-anim-manager__playhead:before{border-left:4px solid transparent;border-right:4px solid transparent;border-top:6px solid var(--accent-line);content:"";height:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:0}.viewport3d-clip-bar{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;height:24px;min-width:0;position:relative;transition:border-color .15s ease}.viewport3d-clip-bar:focus-within,.viewport3d-clip-bar:hover{border-color:var(--grid-border-color)}.viewport3d-clip-bar__action{align-items:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;height:22px;justify-content:center;padding:0;transition:background .12s ease,color .12s ease}.viewport3d-clip-bar__action:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:1px solid var(--border-color);width:24px}.viewport3d-clip-bar__action:last-child{border-left:1px solid var(--border-color);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:20px}.viewport3d-clip-bar__action.is-active,.viewport3d-clip-bar__action:focus-visible,.viewport3d-clip-bar__action:hover:not(:disabled){background:var(--bg-dark);color:var(--text-primary);outline:none}.viewport3d-clip-bar__action:disabled{cursor:default;opacity:.4}.viewport3d-clip-bar__name{background:transparent;border:none;color:var(--text-primary);flex:1 1;font-size:var(--fs-3);font-weight:600;height:22px;min-width:0;outline:none;padding:0 var(--space-3)}.viewport3d-clip-bar__name::placeholder{color:var(--text-muted)}.viewport3d-clip-bar__name:disabled{cursor:not-allowed;opacity:.6;opacity:.5}.viewport3d-clip-bar__menu{background:var(--bg-panel,#fff);border:1px solid var(--border-color);bottom:calc(100% + 6px);box-shadow:0 8px 24px rgba(0,0,0,.16);flex-direction:column;max-height:220px;min-width:176px;overflow-y:auto;padding:var(--space-2);position:absolute;right:0;z-index:40}.viewport3d-clip-bar__menu,.viewport3d-clip-bar__menu-row{border-radius:var(--radius-md);display:flex;gap:var(--space-px)}.viewport3d-clip-bar__menu-row{align-items:center}.viewport3d-clip-bar__menu-row.is-active{background:var(--accent-blue-tint-8)}.viewport3d-clip-bar__menu-item{align-items:baseline;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;flex:1 1 auto;font-size:var(--fs-3);gap:var(--space-3);justify-content:space-between;min-width:0;padding:5px var(--space-3);text-align:left}.viewport3d-clip-bar__menu-item:focus-visible,.viewport3d-clip-bar__menu-item:hover{background:var(--bg-subtle,rgba(127,127,127,.08));outline:none}.viewport3d-clip-bar__menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-clip-bar__menu-meta{color:var(--text-muted);flex:0 0 auto;font-size:var(--fs-2)}.viewport3d-clip-bar__menu-action{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex:0 0 auto;height:20px;justify-content:center;opacity:0;padding:0;transition:opacity .16s ease,color .16s ease;width:20px}.viewport3d-clip-bar__menu-action:focus-visible,.viewport3d-clip-bar__menu-row:hover .viewport3d-clip-bar__menu-action{opacity:1}.viewport3d-clip-bar__menu-action:hover{color:var(--accent-text)}.viewport3d-clip-bar__menu-action--danger:hover{color:var(--status-danger)}.viewport3d-anim-timeline-rows{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.viewport3d-anim-card{background:var(--bg-subtle,rgba(127,127,127,.06));border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:5px;min-width:0;padding:var(--space-4) var(--space-5)}.viewport3d-anim-card__title{color:var(--text-secondary);font-size:var(--fs-3);font-weight:600;letter-spacing:.01em}.viewport3d-anim-card__header{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:inherit;cursor:pointer;display:flex;font:inherit;gap:var(--space-2);margin:-3px -5px;padding:3px 5px;text-align:left;width:calc(100% + 10px)}.viewport3d-anim-card__chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s ease}.viewport3d-anim-card.is-collapsed .viewport3d-anim-card__chevron{transform:rotate(-90deg)}.viewport3d-anim-timeline{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.viewport3d-anim-timeline+.viewport3d-anim-timeline{border-top:1px solid var(--border-color);margin-top:3px;padding-top:var(--space-3)}.viewport3d-anim-timeline__head{align-items:center;display:flex;gap:3px;min-width:0;position:relative}.viewport3d-anim-timeline__label{color:var(--text-secondary);flex:1 1 auto;font-size:var(--fs-3);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-anim-timeline__enable{align-items:center;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;flex:0 0 auto;height:18px;justify-content:center;padding:0;transition:color .16s ease;width:16px}.viewport3d-anim-timeline__enable.is-on{color:var(--accent-text)}.viewport3d-anim-timeline__enable:focus-visible,.viewport3d-anim-timeline__enable:hover{color:var(--accent-text);outline:none}.viewport3d-anim-timeline.is-excluded .viewport3d-anim-timeline__body,.viewport3d-anim-timeline.is-excluded .viewport3d-anim-timeline__label{opacity:.55}.viewport3d-anim-timeline.is-excluded .viewport3d-anim-timeline__key{border-color:var(--text-muted)}.viewport3d-anim-timeline.is-excluded .viewport3d-anim-timeline__key.is-selected{background:var(--text-muted)}.viewport3d-anim-timeline__remove{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;height:18px;justify-content:center;opacity:0;padding:0;position:absolute;right:113px;top:50%;transform:translateY(-50%);transition:opacity .16s ease,border-color .16s ease,color .16s ease;width:16px;z-index:1}.viewport3d-anim-timeline:focus-within .viewport3d-anim-timeline__remove,.viewport3d-anim-timeline:hover .viewport3d-anim-timeline__remove{opacity:1}.viewport3d-anim-timeline__remove:focus-visible,.viewport3d-anim-timeline__remove:hover{border-color:var(--status-danger);color:var(--status-danger);opacity:1;outline:none}.viewport3d-anim-timeline__body{display:block;min-width:0}.viewport3d-anim-timeline__loop{align-items:center;display:flex;flex:0 0 auto;gap:var(--space-px);min-width:0}.viewport3d-anim-timeline__loop-icon{align-items:center;color:var(--accent-text);display:inline-flex;justify-content:center;pointer-events:none}.viewport3d-anim-timeline.is-excluded .viewport3d-anim-timeline__loop-icon{color:var(--text-muted)}.viewport3d-anim-timeline__duration-dropdown,.viewport3d-anim-timeline__loop-dropdown{flex:0 0 auto;min-width:0}.ctl-dd.viewport3d-anim-timeline__loop-dropdown{width:54px}.ctl-dd.viewport3d-anim-timeline__duration-dropdown{width:40px}.viewport3d-anim-timeline__duration-dropdown .ctl-dd-trigger,.viewport3d-anim-timeline__loop-dropdown .ctl-dd-trigger{font-size:var(--fs-2);gap:var(--space-px);height:18px;padding:0 3px;width:100%}.viewport3d-anim-timeline__loop-dropdown .ctl-dd-menu{min-width:190px}.viewport3d-anim-timeline__duration-dropdown .ctl-dd-menu{min-width:92px}.viewport3d-anim-timeline__track{align-items:center;cursor:crosshair;display:block;height:24px;margin:0 7px 0 5px;position:relative;touch-action:none}.viewport3d-anim-timeline__track.is-dragging{cursor:ew-resize}.viewport3d-anim-timeline__track-line{background:var(--border-color);border-radius:var(--radius-xs);height:3px;left:0;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%)}.viewport3d-anim-timeline__key{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--accent-text);cursor:-webkit-grab;cursor:grab;display:flex;height:14px;justify-content:center;margin:0;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:box-shadow .14s ease,color .14s ease;width:14px;z-index:1}.viewport3d-anim-timeline__key:focus-visible,.viewport3d-anim-timeline__key:hover{box-shadow:0 0 0 4px var(--accent-blue-tint-8);outline:none}.viewport3d-anim-timeline__key.is-selected{box-shadow:0 0 0 4px var(--accent-blue-tint-8);cursor:-webkit-grabbing;cursor:grabbing}.viewport3d-anim-key-shape{fill:var(--bg-panel,#fff);stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}.viewport3d-anim-timeline__key.is-selected .viewport3d-anim-key-shape{fill:currentColor}.viewport3d-anim-key-shape--bezier{stroke-width:1.2}.viewport3d-anim-timeline__hint{color:var(--text-muted);font-size:var(--fs-1);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-axis-field.is-animation-enabled{background:color-mix(in srgb,var(--accent-fill) 11%,var(--bg-subtle));border-color:var(--accent-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 14%,transparent)}.viewport3d-axis-field.is-animation-enabled .viewport3d-axis-label{align-items:center;align-self:stretch;background:var(--accent-fill);border-radius:var(--radius-xs) 0 0 var(--radius-xs);color:var(--accent-on-fill);display:flex;justify-content:center;padding:0 7px}.viewport3d-axis-field.is-animation-enabled input{color:var(--accent-text);font-weight:500}.viewport3d-axis-field__animation-indicator{align-items:center;color:var(--accent-text);display:inline-flex;flex-shrink:0;justify-content:center;margin-right:var(--space-1);opacity:.7}.viewport3d-axis-field:focus-within .viewport3d-axis-label,.viewport3d-axis-field:hover .viewport3d-axis-label{flex-shrink:1;opacity:0;overflow:hidden;padding-left:0;padding-right:0;transition:opacity .12s ease,padding .12s ease;width:0}.viewport3d-axis-field:focus-within .viewport3d-axis-field__animation-indicator,.viewport3d-axis-field:focus-within .viewport3d-axis-field__driver-indicator,.viewport3d-axis-field:hover .viewport3d-axis-field__animation-indicator,.viewport3d-axis-field:hover .viewport3d-axis-field__driver-indicator{display:none}.viewport3d-axis-field.is-keyframe-editing{border-color:var(--accent-text);box-shadow:var(--ring-focus-tight)}.viewport3d-driven-field{display:flex;flex-direction:column;gap:0;min-width:0}.viewport3d-line-config{display:flex;flex-direction:column;gap:0;padding-bottom:var(--space-2)}.viewport3d-line-config>.vp3d-line-order-transform{order:1}.viewport3d-line-config>.vp3d-line-order-template{order:2}.viewport3d-line-config>.vp3d-line-order-general{order:3}.viewport3d-line-config>.vp3d-line-order-2d{order:4}.viewport3d-line-config>.vp3d-line-order-3d{order:5}.viewport3d-line-config>.vp3d-line-order-connections{order:6}.viewport3d-line-config>.vp3d-line-order-points{order:7}.viewport3d-line-config__axes{margin-bottom:var(--space-3)}.viewport3d-line-config .viewport3d-prop-section__body{gap:var(--space-4)}.viewport3d-line-field{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-line-field__label{color:var(--text-secondary);font-size:var(--fs-4);font-weight:400}.viewport3d-line-color-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3)}.viewport3d-line-field-stack,.viewport3d-line-points-list{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-line-template-manager{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;height:30px;position:relative;transition:border-color .15s ease}.viewport3d-line-template-manager:focus-within,.viewport3d-line-template-manager:hover{border-color:color-mix(in srgb,var(--border-color) 40%,var(--accent-line) 60%)}.viewport3d-line-template-manager__chevron,.viewport3d-line-template-manager__new{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;display:flex;flex:0 0 auto;height:100%;justify-content:center;padding:0;transition:background .14s ease,color .14s ease;width:26px}.viewport3d-line-template-manager__new{border-right:1px solid var(--border-color);border-radius:var(--radius-md) 0 0 var(--radius-md)}.viewport3d-line-template-manager__chevron{border-left:1px solid var(--border-color);border-radius:0 var(--radius-md) var(--radius-md) 0}.viewport3d-line-template-manager__chevron:hover,.viewport3d-line-template-manager__new:hover{background:var(--bg-hover);color:var(--text-primary)}.viewport3d-line-template-manager__chevron.is-open{color:var(--accent-text)}.viewport3d-line-template-manager__name-wrap{flex:1 1 auto;min-width:0;position:relative}.viewport3d-line-template-manager__name{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--text-primary);font-size:var(--fs-4);height:28px;min-height:0!important;min-width:0;outline:none!important;padding:0 var(--space-4)!important;transition:padding-right .2s ease;width:100%}.viewport3d-line-template-manager__name--with-action{padding-right:34px!important}.viewport3d-line-template-manager__name-wrap:has(.viewport3d-line-template-manager__action:hover) .viewport3d-line-template-manager__name--with-action{padding-right:82px!important}.viewport3d-line-template-manager__action{align-items:center;background:var(--accent-fill);border:1px solid var(--accent-line);border-radius:var(--radius-sm);color:var(--accent-on-fill);cursor:pointer;display:flex;font-size:var(--fs-3);font-weight:600;gap:0;height:22px;justify-content:center;max-width:22px;min-width:22px;overflow:hidden;padding:0 5px;position:absolute;right:4px;top:50%;transform:translateY(-50%);transition:max-width .2s ease,gap .2s ease,padding .2s ease,background .14s ease}.viewport3d-line-template-manager__action:hover{background:color-mix(in srgb,var(--accent-fill) 84%,black 16%);gap:5px;max-width:74px;padding:0 var(--space-4)}.viewport3d-line-template-manager__action-label{max-width:0;overflow:hidden;white-space:nowrap}.viewport3d-line-template-manager__action:hover .viewport3d-line-template-manager__action-label{max-width:60px}.viewport3d-line-template-manager__unlink{align-self:flex-start;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--fs-3);margin-top:var(--space-3);padding:var(--space-1) 0;text-decoration:underline}.viewport3d-line-template-manager__unlink:hover{color:var(--accent-text)}.viewport3d-line-template-manager__menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm,0 8px 24px rgba(0,0,0,.18));display:flex;flex-direction:column;gap:var(--space-1);min-width:0;padding:5px;position:fixed;z-index:1200}.viewport3d-line-template-manager__menu-item{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:var(--fs-4);overflow:hidden;padding:0}.viewport3d-line-template-manager__menu-item:hover{background:var(--bg-hover)}.viewport3d-line-template-manager__menu-item.is-active{background:color-mix(in srgb,var(--accent-fill) 12%,transparent);color:var(--accent-text);font-weight:500}.viewport3d-line-template-manager__menu-select{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;flex:1 1;font:inherit;min-width:0;padding:0;text-align:left}.viewport3d-line-template-manager__menu-title{overflow:hidden;padding:7px var(--space-3) 7px 10px;text-overflow:ellipsis;white-space:nowrap}.viewport3d-line-template-manager__menu-delete{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:16px;justify-content:center;margin-right:5px;opacity:0;padding:0;transition:color .14s,background .14s,opacity .14s;width:16px}.viewport3d-line-template-manager__menu-item:hover .viewport3d-line-template-manager__menu-delete{opacity:1}.viewport3d-line-template-manager__menu-delete:hover{background:color-mix(in srgb,#ef4444 14%,transparent);color:#ef4444}.viewport3d-line-template-manager__menu-empty{color:var(--text-muted,var(--text-secondary));font-size:var(--fs-4);padding:var(--space-5);text-align:center}.viewport3d-line-point-row{align-items:center;display:flex;gap:var(--space-4)}.viewport3d-line-point-remove{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-panel,#fff);color:var(--text-secondary);cursor:pointer;transition:background .12s,color .12s}.viewport3d-line-point-remove:hover:not(:disabled){background:var(--danger,#dc2626);border-color:var(--danger,#dc2626);color:#fff}.viewport3d-line-point-remove:disabled{opacity:.4;cursor:default}.viewport3d-line-point-row__index{align-items:center;background:color-mix(in srgb,var(--bg-panel) 80%,var(--accent-fill) 20%);border:1px solid color-mix(in srgb,var(--accent-line) 55%,white 45%);border-radius:var(--radius-pill);color:var(--text-primary);display:flex;flex:0 0 auto;font-size:var(--fs-3);font-weight:600;height:20px;justify-content:center;min-width:20px;padding:0 var(--space-2)}.viewport3d-line-point-row__field{flex:1 1 auto;min-width:0}.viewport3d-line-point-entry{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-line-point-entry__body{width:100%}.viewport3d-line-point-row__index{cursor:pointer;transition:background .12s,border-color .12s,color .12s}.viewport3d-line-point-row__index:hover{background:color-mix(in srgb,var(--bg-panel) 70%,var(--accent-fill) 30%)}.viewport3d-line-point-row__index-num{display:flex;align-items:center;justify-content:center}.viewport3d-line-point-row__index-chevron{align-items:center;display:none;justify-content:center;transition:transform .12s}.viewport3d-line-point-row:hover .viewport3d-line-point-row__index-num,.viewport3d-line-point-row__index.is-open .viewport3d-line-point-row__index-num{display:none}.viewport3d-line-point-row:hover .viewport3d-line-point-row__index-chevron,.viewport3d-line-point-row__index.is-open .viewport3d-line-point-row__index-chevron{display:flex}.viewport3d-line-point-row__index.is-open .viewport3d-line-point-row__index-chevron{transform:rotate(180deg)}.viewport3d-scene-item-picker__clear{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;flex:0 0 auto;height:20px;justify-content:center;margin-right:var(--space-1);opacity:0;padding:0;pointer-events:none;transition:opacity .1s ease,background .1s ease,color .1s ease;width:20px}.viewport3d-scene-item-picker--clearable:focus-within .viewport3d-scene-item-picker__clear,.viewport3d-scene-item-picker--clearable:hover .viewport3d-scene-item-picker__clear{opacity:1;pointer-events:auto}.viewport3d-scene-item-picker__clear:hover{background:color-mix(in srgb,var(--bg-panel) 60%,#ef4444 40%);color:#b91c1c}html[data-theme=dark] .viewport3d-scene-item-picker__clear:hover{background:color-mix(in srgb,var(--bg-panel) 60%,#7f1d1d 40%);color:#fca5a5}.vp3d-optional-slider-field{display:flex;flex-direction:column;gap:var(--space-3)}.vp3d-optional-slider-field__controls{align-items:center;display:flex;gap:var(--space-5);min-width:0}.vp3d-optional-slider-field__label{color:var(--text-secondary);font-size:var(--fs-4);font-weight:400}.vp3d-optional-slider-field .el-ctrl--toggle-inline{flex:0 0 auto}.vp3d-optional-slider-field .viewport3d-bounded-slider{flex:1 1 auto;margin-top:var(--space-px);min-width:0}.vp3d-optional-slider-field.is-auto .viewport3d-bounded-slider{opacity:.58}.viewport3d-line-config .el-ctrl--toggle-inline,.vp3d-segmented-slider{width:-moz-fit-content;width:fit-content}.vp3d-segmented-slider{align-items:center;align-self:center;background:color-mix(in srgb,var(--bg-panel) 92%,var(--bg-subtle) 8%);border:1px solid var(--border-color);border-radius:var(--radius-md);display:inline-flex;gap:2px;max-width:100%;min-width:0;padding:2px;position:relative}.viewport3d-editor-header__axes{align-items:stretch;display:inline-flex;margin-right:var(--space-3)}.vp3d-axes-toolbar{align-items:center;gap:0;height:30px;justify-content:flex-start;min-width:0;overflow:hidden}.vp3d-axes-toolbar:not(:hover):not(:focus-within){justify-content:center;width:30px}.vp3d-axes-toolbar:not(:hover):not(:focus-within) .viewport3d-tool-group__btn.is-active{border-width:0;justify-content:center;transform:translateX(2px)}.vp3d-axes-toolbar:not(:hover):not(:focus-within) .viewport3d-tool-group__btn.is-active .viewport3d-tool-group__label-wrap{max-width:0;margin-left:0;opacity:0}.vp3d-axes-toolbar .viewport3d-tool-group__label-wrap{transition:max-width .32s cubic-bezier(.22,1,.36,1),margin-left .32s cubic-bezier(.22,1,.36,1),opacity .24s ease}.vp3d-axes-toolbar .viewport3d-tool-group__btn{max-width:140px;transition:max-width .34s cubic-bezier(.22,1,.36,1),opacity .26s ease,background .15s ease,border-color .15s ease,color .15s ease}.vp3d-axes-toolbar .viewport3d-tool-group__btn:not(.is-active){border-width:0;flex:0 0;max-width:0;min-width:0;opacity:0;pointer-events:none;width:0}.vp3d-axes-toolbar .viewport3d-tool-group__btn.is-active{color:var(--text-secondary);flex:0 0 24px;max-width:24px;min-width:24px;width:24px}.vp3d-axes-toolbar .viewport3d-tool-group__btn.is-active:focus-visible,.vp3d-axes-toolbar .viewport3d-tool-group__btn.is-active:hover{color:var(--text-primary)}.vp3d-axes-toolbar:focus-within,.vp3d-axes-toolbar:hover{gap:var(--space-1)}.vp3d-axes-toolbar:focus-within .viewport3d-tool-group__btn,.vp3d-axes-toolbar:hover .viewport3d-tool-group__btn{border-width:1px;flex:0 0 auto;max-width:140px;min-width:24px;opacity:1;pointer-events:auto;width:auto}@media (max-width:1080px){.viewport3d-editor-header__axes{margin-right:var(--space-2)}}.vp3d-segmented-slider__pill{background:var(--accent-fill);border-radius:var(--radius-sm);bottom:2px;box-shadow:none;left:var(--vp3d-pill-left,2px);pointer-events:none;position:absolute;top:2px;transition:none;width:var(--vp3d-pill-width,24px);z-index:0}.vp3d-segmented-slider.is-switching .vp3d-segmented-slider__pill{transition:left .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1)}.vp3d-anchor-pivot{display:flex;flex-direction:column;gap:var(--space-5)}.vp3d-anchor-pivot__hint{color:var(--text-muted,var(--text-secondary));font-size:var(--fs-3);line-height:1.4;margin:0}.vp3d-anchor-pivot__row{align-items:center;display:flex;gap:var(--space-5);justify-content:space-between}.vp3d-anchor-pivot__label{color:var(--text-secondary);font-size:var(--fs-4)}.vp3d-anchor-pivot__stretch{display:flex;flex-direction:column;gap:var(--space-3)}.vp3d-anchor-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);grid-gap:3px;gap:3px;width:66px;height:66px;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-2);flex:0 0 auto}.vp3d-anchor-grid__cell{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;justify-content:center;padding:0;transition:background-color .12s ease}.vp3d-anchor-grid__cell:hover{background:color-mix(in srgb,var(--text-secondary) 14%,transparent)}.vp3d-anchor-grid__dot{background:var(--text-secondary);border-radius:var(--radius-circle);height:5px;width:5px;opacity:.5;transition:all .12s ease}.vp3d-anchor-grid__cell.is-active{background:color-mix(in srgb,var(--accent-fill) 22%,transparent)}.vp3d-anchor-grid__cell.is-active .vp3d-anchor-grid__dot{background:var(--accent-fill);opacity:1;height:6px;width:6px}.vp3d-anchor-grid__cell.is-stretch .vp3d-anchor-grid__dot{border-radius:var(--radius-xs);width:9px;height:4px}.vp3d-segmented-slider__option{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:11px;font-weight:500;height:24px;justify-content:center;line-height:1;min-width:24px;outline:none;overflow:hidden;padding:0;position:relative;max-width:160px;transition:max-width .22s cubic-bezier(.4,0,.2,1),opacity .18s ease,background-color .15s ease,border-color .15s ease,color .15s ease;z-index:1}.vp3d-segmented-slider__option:hover:not(.is-active){background:var(--bg-hover);border-color:color-mix(in srgb,var(--border-color) 80%,transparent);color:var(--text-primary)}.vp3d-segmented-slider__icon{align-items:center;display:inline-flex;flex:0 0 24px;height:24px;justify-content:center;width:24px}.vp3d-segmented-slider__icon svg{display:block}.vp3d-segmented-slider__label-wrap{display:grid;grid-template-columns:0fr;margin-left:0;opacity:0;transition:grid-template-columns .2s cubic-bezier(.4,0,.2,1),margin-left .2s cubic-bezier(.4,0,.2,1),opacity .16s ease}.vp3d-segmented-slider__option.is-active .vp3d-segmented-slider__label-wrap,.vp3d-segmented-slider__option:focus-visible .vp3d-segmented-slider__label-wrap,.vp3d-segmented-slider__option:hover .vp3d-segmented-slider__label-wrap{grid-template-columns:1fr;margin-left:1px;opacity:1}.vp3d-segmented-slider:has(.vp3d-segmented-slider__option:focus-visible:not(.is-active)) .vp3d-segmented-slider__option.is-active .vp3d-segmented-slider__label-wrap,.vp3d-segmented-slider:has(.vp3d-segmented-slider__option:hover:not(.is-active)) .vp3d-segmented-slider__option.is-active .vp3d-segmented-slider__label-wrap{grid-template-columns:0fr;margin-left:0;opacity:0}.viewport3d-pane--lower .el-ctrl--segmented-inline:not(:hover):not(:focus-within) .vp3d-segmented-slider__option:not(.is-active){border-width:0;flex:0 0;max-width:0;min-width:0;opacity:0;pointer-events:none}.viewport3d-pane--lower .el-ctrl--segmented-inline:not(:hover):not(:focus-within) .vp3d-segmented-slider__option.is-active{flex:0 0 auto}.viewport3d-pane--lower .el-ctrl--segmented-inline:not(:hover):not(:focus-within) .vp3d-segmented-slider{gap:0}.viewport3d-pane--lower .el-ctrl--segmented-inline:not(:hover):not(:focus-within) .vp3d-segmented-slider__pill{left:2px;width:calc(100% - 4px)}.vp3d-segmented-slider__label{color:inherit;display:inline-block;font-size:10px;font-weight:inherit;line-height:1;min-width:0;overflow:hidden;padding-right:5px;white-space:nowrap}.vp3d-segmented-slider__option.is-active{color:var(--text-on-accent,#fff);font-weight:550}.vp3d-segmented-slider__option:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.vp3d-segmented-slider__option:disabled{cursor:not-allowed;opacity:.5}.vp3d-segmented-slider.is-disabled .vp3d-segmented-slider__pill{opacity:.5}html[data-theme=dark] .vp3d-segmented-slider{background:var(--bg-panel);border-color:var(--border-color)}html[data-theme=dark] .vp3d-segmented-slider__option.is-active{color:#fff}.vp3d-axes-wrap{width:100%}.vp3d-axes-track{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:var(--space-1);padding:3px 4px;position:relative;width:100%}.vp3d-axes-pill{background:var(--accent-fill);border-radius:var(--radius-md);bottom:3px;box-shadow:none;left:var(--vp3d-pill-left,5px);pointer-events:none;position:absolute;top:3px;transition:none;width:var(--vp3d-pill-width,calc(25% - 4px));z-index:0}.vp3d-axes-track.is-switching .vp3d-axes-pill{transition:left .26s cubic-bezier(.4,0,.2,1),width .26s cubic-bezier(.4,0,.2,1)}.vp3d-axes-btn{background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;flex:1 1;height:32px;padding:0;position:relative;transition:color .15s ease,background .15s ease;z-index:1}.vp3d-axes-btn,.vp3d-axes-btn__icon{align-items:center;justify-content:center}.vp3d-axes-btn__icon{display:inline-flex;flex:0 0 auto}.vp3d-axes-btn__text{color:inherit;display:inline-block;font-size:var(--fs-2);font-weight:500;line-height:1;max-width:100%;overflow:hidden;padding:0 4px;text-overflow:ellipsis;white-space:nowrap}.viewport3d-tool-group.is-disabled,.vp3d-axes-wrap.is-disabled .vp3d-axes-track{opacity:.45}.viewport3d-tool-group.is-disabled .viewport3d-tool-group__btn,.vp3d-axes-wrap.is-disabled .vp3d-axes-btn{cursor:default}.vp3d-axes-btn__label-wrap{display:grid;grid-template-columns:0fr;margin-left:0;opacity:0;transition:grid-template-columns .2s cubic-bezier(.4,0,.2,1),margin-left .2s cubic-bezier(.4,0,.2,1),opacity .16s ease}.vp3d-axes-btn__label{color:inherit;display:inline-block;font-size:var(--fs-2);font-weight:inherit;line-height:1;min-width:0;overflow:hidden;padding-right:var(--space-3);white-space:nowrap}.vp3d-axes-btn:hover:not(.is-active){background:var(--bg-hover);color:var(--text-primary)}.vp3d-axes-btn.is-active{color:#fff}.vp3d-axes-btn.is-active svg{filter:brightness(0) invert(1)}.vp3d-axes-swatch{border-radius:var(--radius-pill);box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);height:16px;width:16px}.vp3d-axes-btn.is-active .vp3d-axes-swatch{box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.vp3d-axes-labels{display:flex;gap:var(--space-1);max-height:0;opacity:0;overflow:hidden;padding:0 5px;transition:max-height .22s cubic-bezier(.4,0,.2,1),opacity .18s ease,margin-top .22s cubic-bezier(.4,0,.2,1)}.vp3d-axes-wrap:has(.vp3d-axes-btn:focus-visible) .vp3d-axes-labels,.vp3d-axes-wrap:hover .vp3d-axes-labels{margin-top:5px;max-height:20px;opacity:1}.vp3d-axes-wrap--labels-persistent .vp3d-axes-labels{margin-top:5px;max-height:20px;opacity:1}.vp3d-axes-label{color:var(--text-muted);flex:1 1;font-size:var(--fs-2);font-weight:500;line-height:1;text-align:center;transition:color .15s ease}.vp3d-axes-label.is-active{color:var(--accent-text);font-weight:600}.viewport3d-transform-row{display:grid;grid-gap:var(--space-2);gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.viewport3d-transform-row--field-actions{padding-top:var(--space-region)}.viewport3d-axis-field-shell{min-width:0;position:relative}.viewport3d-axis-field-shell.is-actions-open{z-index:4}.viewport3d-axis-field{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;gap:0;min-width:0;overflow:hidden}.viewport3d-axis-field.is-actions-open{border-color:var(--accent-text)}.viewport3d-axis-field.is-endpoint-enabled{background:color-mix(in srgb,var(--accent-fill) 11%,var(--bg-subtle));border-color:var(--accent-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 14%,transparent)}.viewport3d-axis-field.is-endpoint-enabled .viewport3d-axis-label{align-items:center;align-self:stretch;background:var(--accent-fill);border-radius:var(--radius-xs) 0 0 var(--radius-xs);color:var(--accent-on-fill);display:flex;justify-content:center;padding:0 7px}.viewport3d-axis-field.is-endpoint-enabled input{color:var(--accent-text);font-weight:500}.viewport3d-axis-label{color:var(--text-muted);cursor:ew-resize;flex-shrink:0;font-size:var(--fs-3);font-weight:700;line-height:1;padding:0 5px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewport3d-axis-field input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:var(--text-primary);flex:1 1;font:inherit;font-size:var(--fs-4);min-width:0;outline:none;padding:5px var(--space-3) 5px 2px}.viewport3d-axis-field__driver-indicator{align-items:center;color:var(--accent-text);display:inline-flex;flex-shrink:0;justify-content:center;margin-right:7px;opacity:.8}.viewport3d-axis-field__dropdown{flex:1 1;min-width:0}.viewport3d-axis-field__dropdown .ctl-dd-trigger{background:none;border:none;border-radius:0;min-height:0;padding:5px var(--space-3) 5px 2px}.viewport3d-axis-field__dropdown .ctl-dd-trigger:focus-visible{outline:none}.viewport3d-axis-field__dropdown .ctl-dd-label{font-size:var(--fs-4)}.viewport3d-axis-field__dropdown .ctl-dd-chevron{margin-left:var(--space-3)}.viewport3d-axis-field__dropdown .ctl-dd-menu{min-width:220px}.vp3d-no-spin::-webkit-inner-spin-button,.vp3d-no-spin::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;width:0}.vp3d-no-spin{-moz-appearance:textfield}.viewport3d-axis-field:focus-within{border-color:var(--accent-text)}.viewport3d-axis-field-actions{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-pill);display:flex;gap:var(--space-2);left:50%;opacity:0;padding:var(--space-1);pointer-events:none;position:absolute;top:0;transform:translate(-50%,-60%);transition:opacity .16s ease,transform .16s ease,border-color .16s ease;z-index:5}.viewport3d-axis-field-shell.is-actions-open .viewport3d-axis-field-actions{opacity:1;pointer-events:auto;transform:translate(-50%,-72%)}.viewport3d-axis-field-action{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;height:18px;justify-content:center;padding:0;transition:background-color .16s ease,border-color .16s ease,color .16s ease;width:18px}.viewport3d-axis-field-action svg{height:12px;width:12px}.viewport3d-axis-field-action:focus-visible,.viewport3d-axis-field-action:hover{background:var(--accent-blue-tint-8);border-color:var(--accent-text);color:var(--accent-text);outline:none}.viewport3d-axis-field-action.is-active{background:var(--accent-blue-tint-8);border-color:var(--accent-text);color:var(--accent-text)}@media (max-width:900px){.viewport3d-asset-manager__toolbar{align-items:stretch;flex-direction:column}.viewport3d-asset-manager__view-toggle{align-self:flex-end}.viewport3d-asset-card{align-items:stretch;flex-direction:column}.viewport3d-asset-list--grid{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.viewport3d-asset-card__actions,.viewport3d-toolbar{flex-wrap:wrap}}.viz-wizard-section__header{align-items:flex-start;display:flex;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.viz-wizard-section__title{color:var(--text-primary);font-size:var(--fs-3);font-weight:700;letter-spacing:0}.viz-wizard-section__subtitle{color:var(--text-muted);font-size:var(--fs-3);line-height:1.45;margin-top:var(--space-px)}.viz-wizard-section__body{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-5) var(--space-5)}.viewport3d-pane{border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;min-height:0;overflow:hidden}.viewport3d-pane--upper{flex-shrink:0}.viewport3d-pane--upper:has(+.viewport3d-split-handle){border-bottom:0}.split-pane>.viewport3d-pane--upper{border-bottom:0}.viewport3d-pane--lower{border-bottom:none;flex:1 1}.viewport3d-tabs{align-items:flex-end;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;padding:0 var(--space-2)}.viewport3d-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);cursor:pointer;font:inherit;font-size:var(--fs-3);font-weight:600;letter-spacing:.03em;margin-bottom:-1px;padding:7px 10px var(--space-3);transition:color .1s ease,border-bottom-color .1s ease;white-space:nowrap}.viewport3d-tab:hover{color:var(--text-primary)}.viewport3d-tab.is-active{border-bottom-color:var(--accent-text);color:var(--accent-text)}.viewport3d-pane-body{display:flex;flex:1 1;flex-direction:column;gap:0;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4) var(--space-3) var(--space-2) calc(var(--space-3) + var(--scrollbar-size) * 2)}.viewport3d-pane-body:has(.viewport3d-outliner-wrap){padding:0}.viewport3d-pane-body:has(.viewport3d-asset-manager){padding:0}.viewport3d-outliner-wrap{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.viewport3d-outliner-scroll{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.viewport3d-outliner-search{align-items:center;display:flex;flex-shrink:0;gap:var(--space-3);max-height:0;opacity:0;overflow:hidden;padding-bottom:0;padding-left:var(--space-3);padding-right:var(--space-3);padding-top:0;pointer-events:none;transition:max-height .18s ease .32s,opacity .16s ease .32s,padding-top .16s ease .32s,padding-bottom .16s ease .32s}.viewport3d-outliner-wrap:focus-within .viewport3d-outliner-search,.viewport3d-outliner-wrap:has(.viewport3d-outliner-search__input:not(:placeholder-shown)) .viewport3d-outliner-search,.viewport3d-outliner-wrap:has(.viewport3d-tag-manager.is-open) .viewport3d-outliner-search,.viewport3d-outliner-wrap:has(.viewport3d-tag-manager__trigger.is-active) .viewport3d-outliner-search,.viewport3d-outliner-wrap:hover .viewport3d-outliner-search{max-height:52px;opacity:1;padding-bottom:5px;padding-top:5px;pointer-events:auto;transition:max-height .18s ease 0s,opacity .12s ease 0s,padding-top .12s ease 0s,padding-bottom .12s ease 0s}.viewport3d-outliner-search__field{align-items:center;background:var(--bg-input,var(--bg-subtle));border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex:1 1;gap:var(--space-2);min-width:0;padding:3px var(--space-3)}.viewport3d-outliner-search__icon{color:var(--text-muted);flex-shrink:0}.viewport3d-outliner-search__input{background:transparent;border:none;color:var(--text-primary);flex:1 1;font-size:var(--fs-4);min-width:0;outline:none;padding:0}.viewport3d-outliner-search__input::placeholder{color:var(--text-muted)}.viewport3d-outliner-search__clear{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--fs-4);height:16px;justify-content:center;line-height:1;padding:0;transition:background 80ms ease,color 80ms ease;width:16px}.viewport3d-outliner-search__clear:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-outliner-search__mode-toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;padding:0;transition:background 80ms ease,border-color 80ms ease,color 80ms ease;width:18px}.viewport3d-outliner-search__mode-toggle:hover{background:var(--bg-dark);border-color:var(--border-color);color:var(--text-primary)}.viewport3d-outliner-search__mode-toggle.is-active{background:color-mix(in srgb,var(--accent-fill) 12%,transparent);border-color:color-mix(in srgb,var(--accent-line) 35%,transparent);color:var(--accent-text)}.viewport3d-tag-manager{flex-shrink:0;position:relative}.viewport3d-tag-manager__trigger{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--fs-3);font-weight:500;gap:var(--space-2);padding:3px 7px;transition:background 80ms ease,border-color 80ms ease,color 80ms ease;white-space:nowrap}.viewport3d-tag-manager.is-open .viewport3d-tag-manager__trigger,.viewport3d-tag-manager__trigger.is-active,.viewport3d-tag-manager__trigger:hover{background:var(--accent-blue-tint-8);border-color:var(--accent-text);color:var(--accent-text)}.viewport3d-tag-manager__menu{background:var(--bg-elevated,var(--bg-panel));border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:256px;padding:var(--space-5);position:fixed;z-index:var(--z-dropdown-elevated)}.viewport3d-tag-manager__menu-head{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding-bottom:var(--space-4)}.viewport3d-tag-manager__menu-head strong{color:var(--text-secondary);font-size:var(--fs-2);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.viewport3d-tag-manager__add,.viewport3d-tag-manager__row-delete{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;height:22px;justify-content:center;padding:0;transition:background 80ms ease,border-color 80ms ease,color 80ms ease;width:22px}.viewport3d-tag-manager__add:hover{background:var(--accent-blue-tint-8);border-color:color-mix(in srgb,var(--accent-line) 30%,transparent);color:var(--accent-text)}.viewport3d-tag-manager__row-delete:hover{background:color-mix(in srgb,var(--accent-red,#dc3545) 8%,transparent);border-color:color-mix(in srgb,var(--accent-red,#dc3545) 28%,transparent);color:var(--accent-red,#dc3545)}.viewport3d-tag-manager__menu-body{display:flex;flex-direction:column;gap:var(--space-1);max-height:280px;overflow-y:auto;padding-top:var(--space-3)}.viewport3d-tag-manager__empty{color:var(--text-muted);font-size:var(--fs-3);padding:var(--space-region) var(--space-2);text-align:center}.viewport3d-tag-manager__row{align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);display:flex;gap:5px;min-height:30px;padding:2px 3px;transition:background 80ms ease,border-color 80ms ease}.viewport3d-tag-manager__row:hover{background:var(--bg-subtle)}.viewport3d-tag-manager__row.is-active{background:var(--accent-blue-tint-8);border-color:color-mix(in srgb,var(--accent-line) 35%,transparent)}.viewport3d-tag-manager__row-filter{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;padding:0;transition:background 80ms ease,border-color 80ms ease,color 80ms ease;width:20px}.viewport3d-tag-manager__row-filter:hover{background:var(--bg-dark);border-color:var(--text-muted);color:var(--text-secondary)}.viewport3d-tag-manager__row-filter.is-active{background:color-mix(in srgb,var(--accent-fill) 12%,transparent);border-color:color-mix(in srgb,var(--accent-line) 40%,transparent);color:var(--accent-text)}.viewport3d-tag-manager__row-color{display:flex;flex-shrink:0}.viewport3d-tag-manager__row-name{background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);flex:1 1;font-size:var(--fs-4);min-width:0;outline:none;padding:var(--space-px) var(--space-1);transition:background 80ms ease}.viewport3d-tag-manager__row-name:focus{background:var(--accent-blue-tint-8)}.viewport3d-tag-manager__row-name::placeholder{color:var(--text-muted)}.viewport3d-outliner-filters{display:flex;flex-shrink:0;gap:var(--space-2);max-height:0;opacity:0;overflow:hidden;padding-bottom:0;padding-left:var(--space-4);padding-right:var(--space-4);padding-top:0;pointer-events:none;transition:max-height .18s ease .32s,opacity .16s ease .32s,padding-top .16s ease .32s,padding-bottom .16s ease .32s}.viewport3d-outliner-wrap:focus-within .viewport3d-outliner-filters,.viewport3d-outliner-wrap:has(.viewport3d-outliner-filter.is-active) .viewport3d-outliner-filters,.viewport3d-outliner-wrap:hover .viewport3d-outliner-filters{max-height:28px;opacity:1;padding-bottom:var(--space-px);padding-top:var(--space-px);pointer-events:auto;transition:max-height .18s ease 0s,opacity .12s ease 0s,padding-top .12s ease 0s,padding-bottom .12s ease 0s}.viewport3d-outliner-filter{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:var(--fs-3);font-weight:500;line-height:1;padding:var(--space-1) var(--space-3);transition:background 80ms ease,border-color 80ms ease,color 80ms ease}.viewport3d-outliner-filter:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-outliner-filter.is-active{background:var(--accent-blue-tint-8);border-color:var(--accent-text);color:var(--accent-text)}.viewport3d-outliner-list{display:flex;flex-direction:column}.viewport3d-outliner-item{align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;display:flex;gap:0;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);position:relative;transition:background 80ms ease;z-index:1}.viewport3d-outliner-item:last-child{border-bottom:none}.viewport3d-outliner-item:focus-within,.viewport3d-outliner-item:has(.is-active),.viewport3d-outliner-item:hover{z-index:100}.viewport3d-outliner-item:hover{background:var(--bg-subtle)}.viewport3d-outliner-item.is-selected{background:var(--accent-blue-tint-8)}.viewport3d-outliner-item.is-ancestor-selected{background:color-mix(in srgb,var(--accent-blue-tint-8) 60%,transparent)}.viewport3d-outliner-item.is-reordering{opacity:.45}.viewport3d-outliner-item.is-reorder-target:after{background:var(--accent-fill);border-radius:var(--radius-xs);content:"";height:2px;left:4px;pointer-events:none;position:absolute;right:4px;z-index:200}.viewport3d-outliner-item.is-reorder-target--before:after{top:-1px}.viewport3d-outliner-item.is-reorder-target--after:after{bottom:-1px}.viewport3d-outliner-item.is-attach-target{background:var(--accent-blue-tint-8);box-shadow:var(--ring-selected)}.viewport3d-outliner-item--attached .viewport3d-outliner-item__child-kind--line,.viewport3d-outliner-item--attached .viewport3d-outliner-item__child-kind--point{background:color-mix(in srgb,var(--accent-fill) 16%,transparent);color:var(--accent-text)}.viewport3d-outliner-item--child{padding-left:calc(14px + (var(--vp3d-depth, 1) * 14px))}.viewport3d-outliner-item__tree-toggle{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;margin-right:var(--space-1);padding:0;transition:background 80ms ease,color 80ms ease,transform .12s ease;width:18px}.viewport3d-outliner-item__tree-toggle:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-outliner-item__tree-toggle.is-empty{cursor:default}.viewport3d-outliner-item__tree-chevron{display:inline-flex;font-size:var(--fs-3);line-height:1;transform:translateX(0);transition:transform .12s ease}.viewport3d-outliner-item__tree-toggle.is-expanded .viewport3d-outliner-item__tree-chevron{transform:rotate(90deg)}.viewport3d-outliner-item__tree-dot{background:var(--border-color);border-radius:var(--radius-pill);display:inline-block;height:4px;width:4px}.viewport3d-outliner-item__child-kind{align-items:center;background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-pill);color:var(--text-muted);display:inline-flex;flex-shrink:0;font-size:var(--fs-2);font-weight:700;height:18px;justify-content:center;margin-right:var(--space-3);width:18px}.viewport3d-outliner-item__child-kind-toggle{display:grid;flex:0 0 18px;height:18px;margin-right:var(--space-3);place-items:center}.viewport3d-outliner-item__child-kind-toggle>*{grid-area:1/1}.viewport3d-outliner-item__child-kind-toggle .viewport3d-outliner-item__child-kind{margin-right:0;pointer-events:none;transition:opacity 80ms ease}.viewport3d-outliner-item__child-kind--mesh{color:var(--accent-text)}.viewport3d-outliner-item__child-kind--group{color:#d97706}.viewport3d-outliner-item__child-kind--ui{color:#7c3aed}.viewport3d-outliner-item__label{align-items:center;color:var(--text-primary);display:flex;flex:1 1;font-size:var(--fs-4);font-weight:500;gap:var(--space-3);margin-right:0;min-width:0;overflow:hidden;padding:0 var(--space-2);text-overflow:ellipsis;transition:margin-right .18s ease;white-space:nowrap}.viewport3d-outliner-item.is-locked .viewport3d-outliner-item__label{margin-right:var(--space-10)}.viewport3d-outliner-item.is-missing-asset{background:rgba(var(--danger-rgb,220,38,38),.05);border-bottom-color:rgba(var(--danger-rgb,220,38,38),.12)}.viewport3d-outliner-item.is-missing-asset:hover{background:rgba(var(--danger-rgb,220,38,38),.09)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__label,.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__label-text{color:var(--danger,#dc2626)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__label-separator{color:rgba(var(--danger-rgb,220,38,38),.55);opacity:1}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__label-count{color:rgba(var(--danger-rgb,220,38,38),.65)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__icon{color:rgba(var(--danger-rgb,220,38,38),.7)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__icon:hover{color:var(--danger,#dc2626)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__num{color:rgba(var(--danger-rgb,220,38,38),.65)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__tree-dot{background:rgba(var(--danger-rgb,220,38,38),.35)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__tree-toggle{color:rgba(var(--danger-rgb,220,38,38),.6)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-item__tree-toggle:hover{color:var(--danger,#dc2626)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-tag-slot__trigger{color:rgba(var(--danger-rgb,220,38,38),.6)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-tag-slot__trigger:hover{color:var(--danger,#dc2626)}.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-tag-slot__dot,.viewport3d-outliner-item.is-missing-asset .viewport3d-outliner-tag-slot__dots{background:rgba(var(--danger-rgb,220,38,38),.4)}.viewport3d-outliner-item:focus-within .viewport3d-outliner-item__label,.viewport3d-outliner-item:has(.viewport3d-outliner-tag-slot.is-open) .viewport3d-outliner-item__label,.viewport3d-outliner-item:hover .viewport3d-outliner-item__label{margin-right:68px}.viewport3d-outliner-item:has(.viewport3d-outliner-item__actions--prefab-root):focus-within .viewport3d-outliner-item__label,.viewport3d-outliner-item:has(.viewport3d-outliner-item__actions--prefab-root):has(.viewport3d-outliner-tag-slot.is-open) .viewport3d-outliner-item__label,.viewport3d-outliner-item:has(.viewport3d-outliner-item__actions--prefab-root):hover .viewport3d-outliner-item__label{margin-right:var(--space-10)}.viewport3d-outliner-item--child:focus-within .viewport3d-outliner-item__label,.viewport3d-outliner-item--child:has(.viewport3d-outliner-tag-slot.is-open) .viewport3d-outliner-item__label,.viewport3d-outliner-item--child:hover .viewport3d-outliner-item__label{margin-right:0}.viewport3d-outliner-item__label-prefix{align-items:center;display:inline-flex;flex:0 1 auto;gap:5px;max-width:100%;min-width:0;opacity:.68;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-outliner-item__label-separator{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center;opacity:.42}.viewport3d-outliner-item__label-main{align-items:center;display:inline-flex;flex:1 1;font-weight:600;gap:5px}.viewport3d-outliner-item__label-main,.viewport3d-outliner-item__label-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-outliner-item__label-count{align-items:center;background:rgba(0,0,0,.07);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;flex:0 0 auto;font-size:var(--fs-1);font-weight:700;justify-content:center;letter-spacing:.04em;min-width:16px;padding:2px 5px;white-space:nowrap}.viewport3d-outliner-item.is-selected .viewport3d-outliner-item__label-count{background:color-mix(in srgb,var(--accent-fill) 12%,transparent);color:var(--accent-text)}.viewport3d-outliner-item.is-hidden .viewport3d-outliner-item__label-count{color:var(--text-muted)}.viewport3d-outliner-item.is-selected .viewport3d-outliner-item__label{color:var(--accent-text)}@keyframes viewport3d-outliner-label-pulse{0%{color:var(--accent-text);text-shadow:0 0 0 color-mix(in srgb,var(--accent-line) 0%,transparent)}18%{color:#f59e0b;text-shadow:0 0 14px color-mix(in srgb,#f59e0b 55%,transparent)}42%{color:var(--accent-text);text-shadow:0 0 6px color-mix(in srgb,var(--accent-line) 36%,transparent)}64%{color:#f59e0b;text-shadow:0 0 12px color-mix(in srgb,#f59e0b 48%,transparent)}to{color:var(--accent-text);text-shadow:0 0 0 color-mix(in srgb,var(--accent-line) 0%,transparent)}}.viewport3d-outliner-item__label--pulse{animation:viewport3d-outliner-label-pulse 1.8s ease-in-out infinite}.viewport3d-outliner-item.is-hidden .viewport3d-outliner-item__label{color:var(--text-muted);text-decoration:line-through;-webkit-text-decoration-color:var(--text-muted);text-decoration-color:var(--text-muted)}.vp3d-outliner-highlight{background:#FFFF03;border-radius:var(--radius-xs);color:#000;padding:0 var(--space-px)}.viewport3d-outliner-tag-slot{display:inline-flex;flex-shrink:0;position:relative}.viewport3d-outliner-tag-slot__dots,.viewport3d-outliner-tag-slot__trigger{align-items:center;display:inline-flex;height:22px;justify-content:center;width:22px}.viewport3d-outliner-tag-slot__dots{gap:0;pointer-events:none;transition:opacity 80ms ease}.viewport3d-outliner-tag-slot__dot{border:1px solid var(--bg-panel);border-radius:var(--radius-circle);box-shadow:none;block-size:11px;display:block;inline-size:11px;margin-left:-3px;max-height:11px;max-width:11px;min-height:11px;min-width:11px;aspect-ratio:1/1}.viewport3d-outliner-tag-slot__dot:first-child{margin-left:0}.viewport3d-outliner-tag-slot__trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;padding:0;position:absolute;transition:background 80ms ease,color 80ms ease,opacity 80ms ease}.viewport3d-outliner-tag-slot__trigger:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-outliner-tag-slot__menu{background:var(--bg-elevated,var(--bg-panel));border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:180px;padding:var(--space-3);position:fixed;z-index:var(--z-dropdown-elevated)}.viewport3d-outliner-tag-slot__empty{color:var(--text-muted);font-size:var(--fs-3);padding:var(--space-3)}.viewport3d-outliner-tag-slot__option{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space-3);padding:5px var(--space-3);text-align:left;transition:background 80ms ease;width:100%}.viewport3d-outliner-tag-slot__option.is-active,.viewport3d-outliner-tag-slot__option:hover{background:var(--bg-subtle)}.viewport3d-outliner-tag-slot__option-check{align-items:center;color:var(--text-muted);display:inline-flex;flex-shrink:0;justify-content:center}.viewport3d-outliner-tag-slot__option-color{aspect-ratio:1/1;border-radius:var(--radius-circle);display:block;flex-shrink:0;height:12px;max-height:12px;max-width:12px;min-height:12px;min-width:12px;width:12px}.viewport3d-outliner-tag-slot__option-label{font-size:var(--fs-3);min-width:0}.viewport3d-outliner-item:hover .viewport3d-outliner-tag-slot__dots,.viewport3d-outliner-tag-slot.is-open .viewport3d-outliner-tag-slot__dots{opacity:0}.viewport3d-outliner-item:hover .viewport3d-outliner-tag-slot__trigger,.viewport3d-outliner-tag-slot.is-open .viewport3d-outliner-tag-slot__trigger{opacity:1}.viewport3d-outliner-tag-slot.is-empty .viewport3d-outliner-tag-slot__dots{opacity:0}.viewport3d-outliner-item__num-wrap{display:grid;flex-shrink:0;height:22px;place-items:center;width:22px}.viewport3d-outliner-item__num-wrap>*{grid-area:1/1}.viewport3d-outliner-item__num{color:var(--text-muted);font-size:var(--fs-2);font-weight:600;line-height:1;opacity:1;pointer-events:none;transition:opacity 80ms ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewport3d-outliner-item:hover .viewport3d-outliner-item__num{opacity:0}.viewport3d-outliner-item__icon{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-shrink:0;height:22px;justify-content:center;opacity:0;padding:0;transition:color 80ms ease,background 80ms ease,opacity 80ms ease;width:22px}.viewport3d-outliner-item__icon:disabled{cursor:not-allowed;opacity:.28}.viewport3d-outliner-item__actions--child .viewport3d-outliner-item__icon:disabled{opacity:.28}.viewport3d-outliner-item:hover .viewport3d-outliner-item__icon{opacity:1}.viewport3d-outliner-item__icon--child-kind-toggle{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-pill);height:18px;opacity:0;position:relative;width:18px;z-index:1}.viewport3d-outliner-item:focus-within .viewport3d-outliner-item__child-kind-toggle .viewport3d-outliner-item__child-kind,.viewport3d-outliner-item:hover .viewport3d-outliner-item__child-kind-toggle .viewport3d-outliner-item__child-kind{opacity:0}.viewport3d-outliner-item:focus-within .viewport3d-outliner-item__child-kind-toggle .viewport3d-outliner-item__icon--child-kind-toggle,.viewport3d-outliner-item:hover .viewport3d-outliner-item__child-kind-toggle .viewport3d-outliner-item__icon--child-kind-toggle{opacity:1}.viewport3d-outliner-item__icon:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-outliner-item__icon--danger:hover{background:var(--danger-soft-bg);color:var(--status-danger)}.viewport3d-outliner-item__icon--lock{transition:color 80ms ease,background 80ms ease,opacity 80ms ease,transform .2s ease}.viewport3d-outliner-item.is-locked .viewport3d-outliner-item__icon--lock{color:#b45309;opacity:1;transform:translateX(46px)}.viewport3d-outliner-item.is-locked:hover .viewport3d-outliner-item__icon--lock{transform:translateX(0)}.viewport3d-outliner-item__icon--lock-active:hover{background:color-mix(in srgb,var(--bg-dark) 60%,#f59e0b 40%);color:#92400e}html[data-theme=dark] .viewport3d-outliner-item.is-locked .viewport3d-outliner-item__icon--lock{color:#fbbf24}html[data-theme=dark] .viewport3d-outliner-item__icon--lock-active:hover{background:color-mix(in srgb,var(--bg-dark) 60%,#92400e 40%);color:#fde68a}.viewport3d-outliner-item__actions{align-items:center;display:flex;flex-shrink:0;gap:var(--space-px);justify-content:flex-end;min-width:68px;pointer-events:none;position:absolute;right:4px;top:50%;transform:translateY(-50%);z-index:1}.viewport3d-outliner-item:focus-within .viewport3d-outliner-item__actions,.viewport3d-outliner-item:hover .viewport3d-outliner-item__actions,.viewport3d-outliner-item__actions:has(.is-active),.viewport3d-outliner-item__actions:has(.viewport3d-outliner-tag-slot.is-open){pointer-events:auto}.viewport3d-outliner-tag-slot--top{left:-23px;position:absolute;top:0;transform:translateX(23px);transition:transform .2s ease}.viewport3d-outliner-item:hover .viewport3d-outliner-tag-slot--top,.viewport3d-outliner-tag-slot--top.is-open{transform:translateX(0)}.viewport3d-outliner-item__actions--prefab-root{justify-content:flex-end;min-width:24px}.viewport3d-outliner-tag-slot--prefab-root{left:auto;position:static;top:auto;transform:none}.viewport3d-outliner-item:hover .viewport3d-outliner-tag-slot--prefab-root,.viewport3d-outliner-tag-slot--prefab-root.is-open{transform:none}.viewport3d-outliner-item__actions--child{min-width:0;pointer-events:auto;position:static;right:auto;top:auto;transform:none;z-index:auto}.viewport3d-outliner-tag-slot--child{margin-right:var(--space-2)}.viewport3d-child-selection-summary{align-items:center;display:flex;gap:var(--space-5)}.viewport3d-child-selection-summary__text{display:flex;flex-direction:column;gap:var(--space-1)}.viewport3d-child-selection-summary__text strong{color:var(--text-primary);font-size:var(--fs-4)}.viewport3d-child-selection-summary__text span{color:var(--text-muted);font-size:var(--fs-3)}.viewport3d-ui-panel-editor__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.viewport3d-ui-panel-editor__actions--icon-strip{flex-wrap:nowrap}.viewport3d-ui-panel-editor__action-chip{align-items:center;display:inline-flex;flex:0 1 auto;gap:0;min-width:0;overflow:hidden;padding:var(--space-3) 7px;white-space:nowrap}.viewport3d-ui-panel-editor__action-chip--danger{color:var(--status-danger)}.viewport3d-ui-panel-editor__action-chip-icon{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center}.viewport3d-ui-panel-editor__action-chip-label{display:inline-block;max-width:0;opacity:0;overflow:hidden;transform:translateX(-4px);transition:max-width .18s ease,opacity .16s ease,margin-left .18s ease,transform .18s ease}.viewport3d-ui-panel-editor__action-chip:focus-visible .viewport3d-ui-panel-editor__action-chip-label,.viewport3d-ui-panel-editor__action-chip:focus-within .viewport3d-ui-panel-editor__action-chip-label,.viewport3d-ui-panel-editor__action-chip:hover .viewport3d-ui-panel-editor__action-chip-label{margin-left:var(--space-3);max-width:72px;opacity:1;transform:translateX(0)}.viewport3d-ui-panel-editor__textarea{min-height:88px;resize:vertical}.viewport3d-ui-panel-editor__number-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.viewport3d-child-material-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:1fr}.viewport3d-child-material-slots{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-child-material-slots__label{color:var(--text-muted);font-size:var(--fs-3);font-weight:600}.viewport3d-child-material-alpha{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-child-material-alpha__distance-row{align-items:center;grid-column-gap:var(--space-4);column-gap:var(--space-4);display:grid;grid-template-columns:84px minmax(0,1fr);grid-row-gap:0;row-gap:0}.viewport3d-child-material-alpha__distance-row>span{color:var(--text-secondary);font-size:var(--fs-3);font-weight:600;line-height:1.2}.viewport3d-child-material-alpha__distance-row .viewport3d-bounded-slider,.viewport3d-child-material-alpha__distance-row .viewport3d-dual-distance{justify-self:stretch;min-width:0;width:100%}.viewport3d-material-assignment{width:100%}.viewport3d-material-preview{--viewport3d-material-preview-backdrop:radial-gradient(circle at 32% 24%,rgba(255,255,255,0.95) 0%,rgba(255,255,255,0.64) 18%,rgba(255,255,255,0) 42%),linear-gradient(180deg,#f7f9fc,#eef2f8);--viewport3d-material-preview-overlay:linear-gradient(180deg,rgba(255,255,255,0.26),rgba(255,255,255,0) 26%);width:100%}html[data-theme=dark] .viewport3d-material-preview{--viewport3d-material-preview-backdrop:radial-gradient(circle at 32% 24%,rgba(255,255,255,0.16) 0%,rgba(148,163,184,0.12) 18%,rgba(255,255,255,0) 42%),linear-gradient(180deg,#202938,#101723);--viewport3d-material-preview-overlay:linear-gradient(180deg,rgba(255,255,255,0.08),rgba(255,255,255,0) 30%)}.viewport3d-material-preview__stage{aspect-ratio:1/.82;background:var(--viewport3d-material-preview-backdrop);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;position:relative;width:100%}.viewport3d-material-preview__stage:after{background:var(--viewport3d-material-preview-overlay);content:"";inset:0;pointer-events:none;position:absolute}.viewport3d-material-preview__canvas{display:block;height:100%;inset:0;position:absolute;width:100%}.viewport3d-material-preview__color{bottom:12px;left:12px;position:absolute;z-index:10}.viewport3d-material-preview__color .viewport3d-color-field__trigger{box-shadow:none;outline:1px solid rgba(255,255,255,.4);outline-offset:-1px}.viewport3d-material-preview__texture{bottom:12px;position:absolute;right:12px;z-index:10}.viewport3d-material-preview__texture .viewport3d-color-field__trigger{box-shadow:none;outline:1px solid rgba(255,255,255,.4);outline-offset:-1px}.viewport3d-texture-field{display:inline-flex;position:relative}.viewport3d-texture-field__thumb{border-radius:var(--radius-sm);display:block;height:18px;object-fit:cover;width:18px}.viewport3d-texture-field__popup{background:color-mix(in srgb,var(--bg-panel) 97%,#000 3%);border:1px solid color-mix(in srgb,var(--border-color) 70%,transparent);border-radius:var(--radius-lg);box-shadow:0 4px 12px rgba(15,23,42,.1);display:flex;flex-direction:column;gap:var(--space-1);max-height:240px;overflow-y:auto;padding:var(--space-3);position:fixed;width:min(210px,calc(100vw - 16px));z-index:9999}.viewport3d-texture-field__section-label{color:var(--text-muted);font-size:var(--fs-3);padding:var(--space-2) var(--space-3) var(--space-1)}.viewport3d-texture-field__option{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--fs-4);gap:var(--space-4);padding:5px var(--space-3);text-align:left;width:100%}.viewport3d-texture-field__option:hover{background:var(--bg-hover)}.viewport3d-texture-field__option.is-active{background:var(--bg-hover);color:var(--accent-text)}.viewport3d-texture-field__option-icon{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:22px;justify-content:center;overflow:hidden;width:22px}.viewport3d-texture-field__option-img{display:block;height:100%;object-fit:cover;width:100%}.viewport3d-texture-field__option-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-texture-field__option-text{display:flex;flex:1 1;flex-direction:column;gap:var(--space-px);min-width:0}.viewport3d-texture-field__option-sub{color:var(--text-muted);font-size:var(--fs-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-material-tiling-row{align-items:flex-end;display:flex;gap:var(--space-3)}.viewport3d-material-tiling-row .el-ctrl{flex:1 1;min-width:0}.viewport3d-material-tiling-lock{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;height:28px;justify-content:center;margin-bottom:0;padding:0 var(--space-2);transition:background .12s ease,color .12s ease}.viewport3d-material-tiling-lock:hover{background:var(--bg-hover);color:var(--text-primary)}.viewport3d-material-tiling-lock.is-locked{color:var(--accent-text)}.viewport3d-prefab-thumbnail-panel{display:flex;flex-direction:column;gap:var(--space-5)}.viewport3d-prefab-thumbnail-preview,.viewport3d-prefab-thumbnail-preview__stage{width:100%}.viewport3d-prefab-thumbnail-preview__empty,.viewport3d-prefab-thumbnail-preview__image{inset:0;position:absolute}.viewport3d-prefab-thumbnail-preview__image{display:block;height:100%;object-fit:cover;width:100%}.viewport3d-prefab-thumbnail-preview__empty{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;line-height:1.45;padding:18px;text-align:center}.viewport3d-prefab-thumbnail-preview__empty span{font-size:var(--fs-4)}.viewport3d-prefab-thumbnail-preview__capture-btn{color:var(--text-primary)}.viewport3d-material-assignment__trigger{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space-4);justify-content:space-between;min-height:32px;padding:7px 9px;text-align:left;width:100%}.viewport3d-material-assignment__trigger.is-open,.viewport3d-material-assignment__trigger:hover{border-color:var(--accent-text)}.viewport3d-material-assignment__label{font-size:var(--fs-4);line-height:1.35}.viewport3d-material-assignment__chevron{color:var(--text-muted);flex:0 0 auto;font-size:var(--fs-3)}.viewport3d-material-assignment__menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-height:340px;overflow:hidden;position:fixed;width:min(320px,calc(100vw - 16px));z-index:var(--z-dropdown-elevated)}.viewport3d-material-assignment__menu-head{border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.viewport3d-material-assignment__search{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--fs-4);min-height:32px;padding:7px 9px}.viewport3d-material-assignment__search:focus{border-color:var(--accent-text);outline:none}.viewport3d-material-assignment__reset{align-self:flex-start;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-3);padding:var(--space-2) var(--space-5)}.viewport3d-material-assignment__reset:hover{border-color:var(--accent-text);color:var(--text-primary)}.viewport3d-material-assignment__menu-body{display:flex;flex-direction:column;gap:var(--space-5);max-height:260px;overflow-y:auto;padding:var(--space-5)}.viewport3d-material-assignment__group{display:flex;flex-direction:column;gap:5px}.viewport3d-material-assignment__group-title{color:var(--text-muted);font-size:var(--fs-2);font-weight:700}.viewport3d-material-assignment__option{align-items:center;background:var(--bg-subtle);border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space-4);justify-content:space-between;padding:7px 8px;text-align:left;width:100%}.viewport3d-material-assignment__option.is-active,.viewport3d-material-assignment__option:hover{border-color:var(--accent-text)}.viewport3d-material-assignment__option-main{align-items:center;display:flex;gap:var(--space-4);min-width:0}.viewport3d-material-assignment__swatch{background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-pill);flex:0 0 14px;height:14px;width:14px}.viewport3d-material-assignment__option-text{display:flex;flex-direction:column;font-size:var(--fs-3);gap:var(--space-px);min-width:0}.viewport3d-material-assignment__option-text strong{font-size:var(--fs-3);font-weight:700}.viewport3d-material-assignment__option-text span{color:var(--text-secondary)}.viewport3d-material-assignment__check{color:var(--accent-text);font-size:var(--fs-4);font-weight:700}.viewport3d-material-assignment__empty{color:var(--text-muted);font-size:var(--fs-3)}.viewport3d-dual-distance{align-items:center;display:flex;gap:var(--space-4);min-width:0;width:100%}.viewport3d-dual-distance__edge{color:var(--text-muted);flex:0 0 auto;font-size:var(--fs-3);line-height:1}.viewport3d-dual-distance__track-slot{flex:1 1;height:24px;min-width:0;position:relative}.viewport3d-dual-distance__fill,.viewport3d-dual-distance__track{border-radius:var(--radius-sm);height:13px;position:absolute;top:50%;transform:translateY(-50%)}.viewport3d-dual-distance__track{background:var(--border-color);inset-inline-start:0;width:100%}.viewport3d-dual-distance__fill{background:var(--accent-fill)}.viewport3d-dual-distance__input{inset:0;position:absolute;width:100%}.viewport3d-dual-distance__badge-shell{left:0;position:absolute;top:-22px;transform:translateX(-50%);z-index:10}.viewport3d-dual-distance__badge{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);display:inline-flex;font-size:var(--fs-3);height:20px;justify-content:center;min-width:var(--vp3d-slider-badge-w,34px);padding:0 7px}.viewport3d-child-material-empty{margin-top:var(--space-2)}.viewport3d-scene-item-row{padding-bottom:var(--space-3)}.viewport3d-scene-item-picker{width:100%}.viewport3d-scene-item-picker__shell{align-items:center;background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;height:30px;overflow:hidden;transition:border-color .15s ease}.viewport3d-scene-item-picker--open .viewport3d-scene-item-picker__shell,.viewport3d-scene-item-picker__shell:focus-within,.viewport3d-scene-item-picker__shell:hover{border-color:var(--grid-border-color)}.viewport3d-scene-item-picker__input{color:var(--text-primary);flex:1 1;font:inherit;font-size:var(--fs-5);height:28px!important;min-width:0;outline:none!important}.el-ctrl .viewport3d-scene-item-picker__input,.viewport3d-scene-item-picker__input{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;min-height:0!important;padding:0 var(--space-4)!important}.viewport3d-scene-item-picker__input::placeholder{color:var(--text-muted)}.viewport3d-scene-item-picker__chevron{align-items:center;align-self:stretch;background:transparent;border:none;border-left:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;flex:0 0 24px;justify-content:center;padding:0;transition:background .12s ease,color .12s ease}.viewport3d-scene-item-picker__chevron svg{height:10px;width:10px}.viewport3d-scene-item-picker--open .viewport3d-scene-item-picker__chevron,.viewport3d-scene-item-picker__chevron:hover{background:var(--bg-dark);color:var(--text-primary)}.viewport3d-scene-item-picker--disabled .viewport3d-scene-item-picker__shell{opacity:.55}.viewport3d-scene-item-picker--disabled .viewport3d-scene-item-picker__chevron,.viewport3d-scene-item-picker--disabled .viewport3d-scene-item-picker__input{cursor:not-allowed}.viewport3d-prop-section{border-top:1px solid var(--border-color)}.viewport3d-prop-section--overlay-open{position:relative;z-index:3}.viewport3d-prop-section__header{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;font-size:10.5px;font-weight:700;gap:5px;letter-spacing:0;padding:7px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.viewport3d-prop-section__header:hover{color:var(--text-primary)}.viewport3d-prop-section__chevron{color:var(--text-muted);flex-shrink:0;transition:transform .15s ease}.viewport3d-prop-section.is-closed .viewport3d-prop-section__chevron{transform:rotate(-90deg)}.viewport3d-prop-section__body{display:flex;flex-direction:column;gap:10px;overflow-x:hidden;padding:0 0 10px}.viewport3d-prop-section--overlay-open .viewport3d-prop-section__body{overflow:visible}.viewport3d-bounded-slider{--vp3d-slider-badge-w:34px;--vp3d-slider-track-height:13px;--vp3d-slider-thumb-width:11px;--vp3d-slider-thumb-height:22px;align-items:center;box-sizing:border-box;display:flex;gap:8px;min-width:0;overflow:visible;width:100%}.viewport3d-bounded-slider__edge{color:var(--text-muted);flex:0 0 auto;font-size:11px;line-height:1}.viewport3d-bounded-slider__track-slot{flex:1 1;height:24px;min-width:0;position:relative}.viewport3d-bounded-slider__value-shell{left:clamp(calc(var(--vp3d-slider-badge-w, 34px) / 2),calc(var(--vp3d-fill-pct) * 1%),calc(100% - var(--vp3d-slider-badge-w, 34px) / 2));position:absolute;top:calc(50% - 1px);transform:translate(-50%,-50%);transition:top .18s ease,transform .18s ease;z-index:2}.viewport3d-bounded-slider--multi.is-overlapping-handles .viewport3d-bounded-slider__value-shell--start.is-overlap-peer{transform:translate(calc(-50% - var(--vp3d-overlap-offset, 0px)),-50%)}.viewport3d-bounded-slider--multi.is-overlapping-handles .viewport3d-bounded-slider__value-shell--end.is-overlap-peer{transform:translate(calc(-50% + var(--vp3d-overlap-offset, 0px)),-50%)}.viewport3d-bounded-slider.is-active .viewport3d-bounded-slider__value-shell,.viewport3d-bounded-slider.is-editing .viewport3d-bounded-slider__value-shell,.viewport3d-bounded-slider__value-shell.is-active-handle{top:-24px;transform:translate(-50%)}.viewport3d-bounded-slider--multi.is-overlapping-handles .viewport3d-bounded-slider__value-shell--start.is-active-handle.is-overlap-peer{transform:translate(calc(-50% - var(--vp3d-overlap-offset, 0px)))}.viewport3d-bounded-slider--multi.is-overlapping-handles .viewport3d-bounded-slider__value-shell--end.is-active-handle.is-overlap-peer{transform:translate(calc(-50% + var(--vp3d-overlap-offset, 0px)))}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__value-shell{top:calc(50% - 1px);transform:translate(-50%,-50%)}.viewport3d-bounded-slider__legend{align-items:center;color:var(--text-muted);display:grid;font-size:11px;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:6px}.viewport3d-bounded-slider__legend--split{padding-inline:28px}.viewport3d-bounded-slider__legend--split>span:first-child{text-align:left}.viewport3d-bounded-slider__legend--split>span:last-child{text-align:right}.viewport3d-bounded-slider__editor,.viewport3d-bounded-slider__value-badge{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:4px;box-shadow:none;color:var(--text-primary);display:inline-flex;font:inherit;font-size:11px;height:20px;justify-content:center;line-height:1;min-width:var(--vp3d-slider-badge-w,34px);padding:0 7px;text-align:center;white-space:nowrap;transition:border-color .18s ease,color .18s ease,opacity .18s ease}.viewport3d-bounded-slider__value-badge{cursor:text}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__value-badge{cursor:default}.viewport3d-bounded-slider__editor:focus,.viewport3d-bounded-slider__value-badge:hover{border-color:var(--accent-text);box-shadow:none;color:var(--text-primary);outline:none}.viewport3d-bounded-slider__editor{-moz-appearance:textfield;min-width:48px}.viewport3d-bounded-slider__editor::-webkit-inner-spin-button,.viewport3d-bounded-slider__editor::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;width:0}.viewport3d-bounded-slider__track-wrap{align-items:center;display:flex;height:var(--vp3d-slider-track-height);inset-inline:0;min-width:0;overflow:visible;position:absolute;top:50%;transform:translateY(-50%)}.viewport3d-bounded-slider__track{background:var(--border-color);width:100%}.viewport3d-bounded-slider__fill,.viewport3d-bounded-slider__track{border-radius:4px;height:var(--vp3d-slider-track-height);inset-inline-start:0;pointer-events:none;position:absolute}.viewport3d-bounded-slider__fill{background:var(--accent-fill)}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__edge,.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__value-badge{color:var(--text-muted)}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__editor,.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__value-badge{background:var(--bg-subtle);border-color:var(--border-color)}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__track{background:color-mix(in srgb,var(--border-color) 75%,var(--bg-subtle) 25%)}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__fill{background:color-mix(in srgb,var(--text-muted) 35%,var(--border-color) 65%)}.viewport3d-bounded-slider__track-wrap>.vp3d-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;border-radius:0;box-shadow:none;cursor:ew-resize;height:var(--vp3d-slider-track-height);inset:0;margin:0;min-width:0;outline:none;padding:0;position:absolute;width:100%;pointer-events:none}.viewport3d-bounded-slider.is-disabled .viewport3d-bounded-slider__track-wrap>.vp3d-slider{cursor:not-allowed}.viewport3d-bounded-slider__track-wrap>.vp3d-slider:focus{outline:none}.viewport3d-bounded-slider__track-wrap>.vp3d-slider::-webkit-slider-runnable-track{background:transparent;border:0;border-radius:0;height:var(--vp3d-slider-track-height)}.viewport3d-bounded-slider__track-wrap>.vp3d-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:var(--bg-panel,#fff);background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--border-color,#d7dfeb) 5px,var(--border-color,#d7dfeb) 6.5px);background-position:50%;background-repeat:no-repeat;background-size:5px 100%;border:1.5px solid var(--border-color,#d7dfeb);border-radius:4px;box-shadow:none;cursor:ew-resize;height:var(--vp3d-slider-thumb-height);margin-top:calc((var(--vp3d-slider-track-height) - var(--vp3d-slider-thumb-height)) / 2);opacity:0;pointer-events:auto;-webkit-transition:background-color .15s ease,border-color .15s ease,opacity .18s ease;transition:background-color .15s ease,border-color .15s ease,opacity .18s ease;width:var(--vp3d-slider-thumb-width)}.viewport3d-bounded-slider.is-active .viewport3d-bounded-slider__track-wrap>.vp3d-slider::-webkit-slider-thumb,.viewport3d-bounded-slider.is-editing .viewport3d-bounded-slider__track-wrap>.vp3d-slider::-webkit-slider-thumb,.viewport3d-bounded-slider__track-wrap>.vp3d-slider.is-active-handle::-webkit-slider-thumb{opacity:1}.viewport3d-bounded-slider__track-wrap>.vp3d-slider:hover::-webkit-slider-thumb{background-color:color-mix(in srgb,var(--accent-fill) 8%,var(--bg-panel,#fff));background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--accent-fill) 5px,var(--accent-fill) 6.5px);border-color:var(--accent-text);box-shadow:none}.viewport3d-bounded-slider__track-wrap>.vp3d-slider:active::-webkit-slider-thumb,.viewport3d-bounded-slider__track-wrap>.vp3d-slider:focus::-webkit-slider-thumb{background-color:var(--accent-text);background-image:repeating-linear-gradient(180deg,transparent,transparent 5px,rgba(255,255,255,.55) 0,rgba(255,255,255,.55) 6.5px);border-color:var(--accent-fill-hover,#1f70d6);box-shadow:none}.viewport3d-bounded-slider__track-wrap>.vp3d-slider::-moz-range-track{background:transparent;border:0;border-radius:0;height:var(--vp3d-slider-track-height)}.viewport3d-bounded-slider__track-wrap>.vp3d-slider::-moz-range-thumb{background-color:var(--bg-panel,#fff);background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--border-color,#d7dfeb) 5px,var(--border-color,#d7dfeb) 6.5px);background-position:50%;background-repeat:no-repeat;background-size:5px 100%;border:1.5px solid var(--border-color,#d7dfeb);border-radius:4px;box-shadow:none;cursor:ew-resize;height:var(--vp3d-slider-thumb-height);opacity:0;pointer-events:auto;-moz-transition:background-color .15s ease,border-color .15s ease,opacity .18s ease;transition:background-color .15s ease,border-color .15s ease,opacity .18s ease;width:var(--vp3d-slider-thumb-width)}.viewport3d-bounded-slider.is-active .viewport3d-bounded-slider__track-wrap>.vp3d-slider::-moz-range-thumb,.viewport3d-bounded-slider.is-editing .viewport3d-bounded-slider__track-wrap>.vp3d-slider::-moz-range-thumb,.viewport3d-bounded-slider__track-wrap>.vp3d-slider.is-active-handle::-moz-range-thumb{opacity:1}.viewport3d-bounded-slider__track-wrap>.vp3d-slider:hover::-moz-range-thumb{background-color:color-mix(in srgb,var(--accent-fill) 8%,var(--bg-panel,#fff));background-image:repeating-linear-gradient(180deg,transparent 0,transparent 5px,var(--accent-fill) 5px,var(--accent-fill) 6.5px);border-color:var(--accent-text);box-shadow:none}.viewport3d-bounded-slider__track-wrap>.vp3d-slider:active::-moz-range-thumb,.viewport3d-bounded-slider__track-wrap>.vp3d-slider:focus::-moz-range-thumb{background-color:var(--accent-text);background-image:repeating-linear-gradient(180deg,transparent,transparent 5px,rgba(255,255,255,.55) 0,rgba(255,255,255,.55) 6.5px);border-color:var(--accent-fill-hover,#1f70d6);box-shadow:none}.viewport3d-driven-slider{align-items:center;display:flex;gap:var(--space-3);min-width:0;width:100%}.viewport3d-driven-slider--edge-values{position:relative}.viewport3d-driven-slider__control{flex:1 1;min-width:0}.viewport3d-driven-slider__toggle{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);display:inline-flex;flex:0 0;height:24px;justify-content:center;opacity:0;overflow:hidden;padding:0;pointer-events:none;transition:border-color .18s ease,color .18s ease,flex-basis .18s ease,opacity .18s ease,width .18s ease;width:0}.viewport3d-driven-slider.is-animation-enabled .viewport3d-driven-slider__toggle,.viewport3d-driven-slider.is-endpoint-enabled .viewport3d-driven-slider__toggle,.viewport3d-driven-slider:focus-within .viewport3d-driven-slider__toggle,.viewport3d-driven-slider:hover .viewport3d-driven-slider__toggle{flex-basis:24px;opacity:1;pointer-events:auto;width:24px}.viewport3d-driven-slider__toggle:focus-visible,.viewport3d-driven-slider__toggle:hover{border-color:var(--accent-text);color:var(--accent-text);outline:none}.viewport3d-driven-slider__toggle--animation{color:var(--text-muted);opacity:0}.viewport3d-driven-slider__toggle--animation[aria-disabled=true]{color:var(--text-muted)}.viewport3d-driven-slider.is-animation-enabled .viewport3d-driven-slider__toggle--animation,.viewport3d-driven-slider__toggle--endpoint.is-active{background:var(--accent-fill);border-color:var(--accent-text);color:var(--accent-on-fill)}.viewport3d-driven-slider--edge-values .viewport3d-driven-slider__toggle{flex:0 0 auto;position:absolute;top:50%;transform:translateY(-50%);width:24px}.viewport3d-driven-slider--edge-values .viewport3d-driven-slider__toggle--animation{inset-inline-start:0}.viewport3d-driven-slider--edge-values .viewport3d-driven-slider__toggle--endpoint{inset-inline-end:0}.viewport3d-driven-slider--edge-values .viewport3d-bounded-slider__edge{transition:opacity .18s ease}.viewport3d-driven-slider--edge-values.is-animation-enabled .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values.is-endpoint-enabled .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values:focus-within .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values:hover .viewport3d-bounded-slider__edge{opacity:0}.viewport3d-driven-slider--edge-values.is-endpoint-only.is-animation-enabled .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values.is-endpoint-only.is-endpoint-enabled .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values.is-endpoint-only:focus-within .viewport3d-bounded-slider__edge,.viewport3d-driven-slider--edge-values.is-endpoint-only:hover .viewport3d-bounded-slider__edge{opacity:1}.viewport3d-driven-slider--edge-values.is-endpoint-only.is-animation-enabled .viewport3d-bounded-slider__edge:last-child,.viewport3d-driven-slider--edge-values.is-endpoint-only.is-endpoint-enabled .viewport3d-bounded-slider__edge:last-child,.viewport3d-driven-slider--edge-values.is-endpoint-only:focus-within .viewport3d-bounded-slider__edge:last-child,.viewport3d-driven-slider--edge-values.is-endpoint-only:hover .viewport3d-bounded-slider__edge:last-child{opacity:0}.viewport3d-driven-slider.is-disabled .viewport3d-driven-slider__toggle{color:var(--text-muted);pointer-events:none}.viewport3d-driven-slider__dropdown.ctl-dd{width:100%}.viewport3d-driven-slider__dropdown .ctl-dd-trigger{min-height:24px;padding-block:0}.viewport3d-driven-slider__dropdown .ctl-dd-label{font-size:var(--fs-3)}.viewport3d-driver-panel{display:flex;flex-direction:column;gap:var(--space-5)}.viewport3d-driver-row{background:color-mix(in srgb,var(--bg-subtle) 82%,var(--bg-panel) 18%);border:1px solid color-mix(in srgb,var(--border-color) 90%,transparent);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);padding:10px 10px 11px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.viewport3d-driver-row:focus-within,.viewport3d-driver-row:hover{border-color:color-mix(in srgb,var(--accent-line) 36%,var(--border-color));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 14%,transparent)}.viewport3d-driver-row__header{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:space-between}.viewport3d-driver-row__header-start{align-items:center;display:flex;gap:var(--space-2)}.viewport3d-driver-row__meta{display:flex;flex-direction:column;gap:3px;min-width:0}.viewport3d-driver-row__meta strong{color:var(--text-primary);font-size:var(--fs-5);font-weight:500}.viewport3d-driver-row__meta span,.viewport3d-driver-row__meta strong{line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-driver-row__meta span{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-driver-row__switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;cursor:pointer;flex-shrink:0;justify-content:center;padding:0}.viewport3d-driver-row__switch,.viewport3d-driver-row__switch-track{align-items:center;border-radius:var(--radius-pill);display:inline-flex}.viewport3d-driver-row__switch-track{background:var(--accent-fill);height:18px;justify-content:flex-end;padding:var(--space-1);transition:background .15s ease;width:32px}.viewport3d-driver-row.is-disabled{background:color-mix(in srgb,var(--bg-subtle) 92%,var(--bg-panel) 8%);border-color:color-mix(in srgb,var(--border-color) 78%,transparent)}.viewport3d-driver-row.is-disabled .viewport3d-driver-row__switch-track{background:var(--toggle-off-bg);justify-content:flex-start}.viewport3d-driver-row.is-disabled:focus-within,.viewport3d-driver-row.is-disabled:hover{border-color:color-mix(in srgb,var(--border-color) 88%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border-color) 24%,transparent)}.viewport3d-driver-row.is-disabled .viewport3d-driver-row__meta strong{color:var(--text-secondary)}.viewport3d-driver-row.is-disabled .viewport3d-driver-row__meta span,.viewport3d-driver-row.is-disabled .viewport3d-driver-row__value-label{color:var(--text-muted)}.viewport3d-driver-row.is-disabled .viewport3d-driver-row__value{background:color-mix(in srgb,var(--bg-subtle) 72%,var(--bg-panel) 28%);border-color:color-mix(in srgb,var(--border-color) 72%,transparent);color:var(--text-secondary)}.viewport3d-driver-row__switch-thumb{background:var(--toggle-knob-bg);border-radius:var(--radius-pill);box-shadow:none;display:block;height:14px;width:14px}.viewport3d-driver-row__collapse{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;padding:0;transition:background .15s ease,color .15s ease,transform .15s ease;width:20px}.viewport3d-driver-row__collapse:focus-visible,.viewport3d-driver-row__collapse:hover{background:color-mix(in srgb,var(--accent-fill) 8%,transparent);color:var(--accent-text)}.viewport3d-driver-row__collapse svg{transition:transform .15s ease}.viewport3d-driver-row__collapse.is-collapsed svg{transform:rotate(-90deg)}.viewport3d-driver-row__body{margin-top:var(--space-px);min-width:0}.viewport3d-driver-row__dropdown.ctl-dd{min-width:0;width:100%}.viewport3d-driver-row__dropdown .ctl-dd-trigger{min-height:32px;width:100%}.viewport3d-driver-row__value-group{align-items:center;display:flex;gap:var(--space-3);flex-shrink:0;min-height:22px;padding-right:0;position:relative;transition:padding-right .18s ease}.viewport3d-driver-row:focus-within .viewport3d-driver-row__value-group,.viewport3d-driver-row:hover .viewport3d-driver-row__value-group{padding-right:26px}.viewport3d-driver-row__remove{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-muted);cursor:pointer;display:inline-flex;height:20px;justify-content:center;opacity:0;padding:0;pointer-events:none;position:absolute;right:0;top:50%;transform:translateY(-50%) translateX(4px) scale(.92);transition:opacity .18s ease,transform .18s ease,background .15s ease,color .15s ease;visibility:hidden;width:20px}.viewport3d-driver-row:focus-within .viewport3d-driver-row__remove,.viewport3d-driver-row:hover .viewport3d-driver-row__remove,.viewport3d-driver-row__remove:focus-visible{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0) scale(1);visibility:visible}.viewport3d-driver-row__remove:focus-visible,.viewport3d-driver-row__remove:hover{background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger)}.viewport3d-driver-row__value-label{color:var(--text-muted);font-size:var(--fs-2);font-weight:600;line-height:1;white-space:nowrap}.viewport3d-driver-row__value{align-items:center;background:var(--bg-panel);border:1px solid color-mix(in srgb,var(--border-color) 88%,transparent);border-radius:var(--radius-pill);color:var(--text-primary);display:inline-flex;font-size:var(--fs-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;justify-content:center;min-height:22px;min-width:40px;padding:0 var(--space-4);text-align:right}.viewport3d-driver-row.is-collapsed{padding-bottom:var(--space-5)}.vp3d-blend-section{display:flex;flex-direction:column;gap:var(--space-2)}.vp3d-blend-header{color:var(--text-secondary);font-size:var(--fs-4);font-weight:400}.viewport3d-controls .el-ctrl.el-ctrl--slider{display:flex;flex-direction:column;gap:var(--space-2)}.viewport3d-child-material-textures{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-5)}.viewport3d-child-material-textures__header{color:var(--text-primary);font-size:var(--fs-4);font-weight:600}.viewport3d-child-material-textures__list{display:flex;flex-wrap:wrap;gap:var(--space-3)}.viewport3d-child-material-textures__tiling-row{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.viewport3d-child-material-textures__note{color:var(--text-muted);font-size:var(--fs-3);line-height:1.4}.viewport3d-child-material-texture-pill{background:var(--bg-dark);border:1px solid var(--border-color);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--fs-3);padding:var(--space-2) var(--space-4)}.viewport3d-split-handle{align-items:center;background:var(--bg-subtle);border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);cursor:ns-resize;display:flex;flex-shrink:0;height:var(--space-handle);justify-content:center;position:relative;transition:background .12s}.viewport3d-split-handle:before{background:var(--border-color);border-radius:var(--radius-xs);box-shadow:0 2px 0 var(--border-color);content:"";height:2px;transition:background .12s;width:28px}.viewport3d-split-handle:active,.viewport3d-split-handle:hover{background:var(--bg-hover)}.viewport3d-split-handle:active:before,.viewport3d-split-handle:hover:before{background:var(--accent-fill);box-shadow:0 2px 0 var(--accent-line)}.viewport3d-anim-section{border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-4)}.viewport3d-anim-section-header{align-items:center;display:flex;gap:var(--space-4)}.viewport3d-anim-count{background:var(--accent-blue-tint-8);border-radius:var(--radius-lg);color:var(--accent-text);font-size:var(--fs-2);font-weight:600;line-height:1;padding:var(--space-1) var(--space-3)}.viewport3d-anim-body{display:flex;flex-direction:column;gap:var(--space-3)}.viewport3d-anim-empty{color:var(--text-muted);font-size:var(--fs-3);line-height:1.5;padding:var(--space-2) var(--space-1)}.viewport3d-world-config{display:flex;flex-direction:column}.viewport3d-scene-settings__health{display:flex;flex-direction:column;gap:var(--space-5)}.viewport3d-scene-settings__health-header{align-items:center;display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--fs-3)}.viewport3d-scene-settings__health-header span{color:var(--text-muted)}.viewport3d-scene-settings__health-header strong{color:var(--text-primary);font-weight:600}.viewport3d-scene-settings__health-track{background:color-mix(in srgb,var(--border-color) 72%,transparent);border-radius:var(--radius-pill);height:9px;overflow:hidden;position:relative}.viewport3d-scene-settings__health-fill{border-radius:inherit;height:100%;min-width:6px;transition:width .14s ease,background .14s ease}.viewport3d-scene-settings__health-meta{gap:var(--space-2)}.viewport3d-scene-settings__note{color:var(--text-muted);font-size:var(--fs-3);line-height:1.45;margin:0}.viewport3d-scene-settings__relink-info{display:flex;flex-direction:column;gap:var(--space-4)}.viewport3d-scene-settings__relink-text{font-size:var(--fs-3);color:var(--text-secondary);line-height:1.5;margin:0}.viewport3d-scene-settings__relink-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-7);border:1px solid #e53e3e;border-radius:var(--radius-md);background:rgba(229,62,62,.08);color:#e53e3e;font:inherit;font-size:var(--fs-3);font-weight:600;cursor:pointer;transition:background .12s ease;align-self:flex-start}.viewport3d-scene-settings__relink-btn:hover{background:rgba(229,62,62,.16)}.viewport3d-camera-diagram{border:1px solid var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);overflow:hidden;padding:var(--space-5);position:relative}.viewport3d-camera-diagram,html[data-theme=dark] .viewport3d-camera-diagram{background:var(--bg-tertiary)}.viewport3d-camera-diagram__head{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);justify-content:space-between}.viewport3d-camera-diagram__head span:first-child{color:var(--text-primary);font-size:var(--fs-3);font-weight:600}.viewport3d-camera-diagram__head span:last-child{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-camera-diagram__svg{display:block;height:auto;width:100%}.viewport3d-camera-diagram__baseline,.viewport3d-camera-diagram__distance,.viewport3d-camera-diagram__distance-cap{fill:none;opacity:.58;stroke:var(--text-muted);stroke-linecap:round;stroke-width:1.2}.viewport3d-camera-diagram__distance,.viewport3d-camera-diagram__distance-cap{stroke-dasharray:3 4}.viewport3d-camera-diagram__fill{fill:var(--accent-text);opacity:.14}.viewport3d-camera-diagram__frustum{fill:none;stroke:var(--accent-line);stroke-linecap:round;stroke-width:1.4}.viewport3d-camera-diagram__camera-icon{fill:var(--text-primary);opacity:.78}.viewport3d-camera-diagram__plane{stroke-linecap:round;stroke-width:1.6}.viewport3d-camera-diagram__plane--near{opacity:.78;stroke:var(--text-muted)}.viewport3d-camera-diagram__plane--focus{stroke:var(--accent-line);stroke-dasharray:4 3}.viewport3d-camera-diagram__plane--far{stroke:var(--accent-cyan)}.viewport3d-camera-diagram__target{fill:var(--accent-orange);stroke:var(--bg-panel);stroke-width:2}.viewport3d-camera-diagram__arc{fill:none;stroke:var(--accent-orange);stroke-linecap:round;stroke-width:1.5}.viewport3d-camera-diagram__label{fill:var(--text-secondary);font-size:var(--fs-0);font-weight:600}.viewport3d-camera-diagram__label--distance,.viewport3d-camera-diagram__label--fov{fill:var(--text-primary)}.viewport3d-camera-diagram__label--focus{fill:var(--accent-text)}.viewport3d-camera-diagram__meta{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.viewport3d-camera-diagram__stat{background:var(--bg-panel-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:3px;min-width:0;padding:7px 8px}.viewport3d-camera-diagram__stat span{color:var(--text-muted);font-size:var(--fs-2)}.viewport3d-camera-diagram__stat strong{color:var(--text-primary);font-size:var(--fs-4);font-weight:600}.viewport3d-world-config .viewport3d-prop-section__body{gap:var(--space-4)}.viewport3d-anim-list{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;flex-direction:column;max-height:140px;overflow-y:auto}.viewport3d-anim-list-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-4)}.viewport3d-anim-select-all{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-2);font-weight:600;line-height:1;padding:2px 7px;transition:background 80ms ease,color 80ms ease}.viewport3d-anim-select-all:hover{background:var(--bg-dark)}.sf-tab-layout{overflow:hidden}.sf-results-scroll,.sf-tab-layout{display:flex;flex-direction:column;flex:1 1;gap:var(--space-4);min-height:0}.sf-results-scroll{overflow-y:auto;overscroll-behavior:contain;padding-bottom:var(--space-2)}.sf-auth-panel{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.sf-auth-panel__header{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--fs-4);font-weight:600;gap:var(--space-3)}.sf-oauth-btn{align-items:center;background:#1caad9;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;display:flex;font:inherit;font-size:var(--fs-4);font-weight:600;gap:7px;justify-content:center;padding:var(--space-4);transition:background .12s ease;width:100%}.sf-oauth-btn:hover{background:#149eca}.sf-token-row{display:flex;gap:var(--space-3)}.sf-token-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);flex:1 1;font:inherit;font-size:var(--fs-4);min-width:0;outline:none;padding:5px 8px;transition:border-color .1s ease}.sf-token-input:focus{border-color:var(--accent-text)}.sf-get-token-link{color:var(--accent-text);font-size:var(--fs-3);text-decoration:none}.sf-get-token-link:hover{text-decoration:underline}.sf-error-note{background:var(--danger-soft-bg);border:1px solid var(--danger-soft-border);border-radius:var(--radius-sm);color:var(--status-danger);font-size:var(--fs-3);line-height:1.45;padding:var(--space-3) var(--space-4)}.sf-user-bar{align-items:center;background:color-mix(in srgb,#1caad9 8%,transparent);border:1px solid color-mix(in srgb,#1caad9 25%,transparent);border-radius:var(--radius-md);display:flex;gap:var(--space-4);justify-content:space-between;padding:7px 10px}.sf-user-bar__info{align-items:center;display:flex;gap:7px;min-width:0}.sf-user-bar__avatar{border-radius:var(--radius-circle);flex-shrink:0;height:22px;object-fit:cover;width:22px}.sf-user-bar__avatar-icon{color:#1caad9;flex-shrink:0}.sf-user-bar__name{color:var(--text-primary);font-size:var(--fs-4);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-user-bar__logout{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid color-mix(in srgb,#1caad9 30%,transparent);border-radius:var(--radius-sm);color:#1caad9;cursor:pointer;flex-shrink:0;font:inherit;font-size:var(--fs-3);font-weight:600;padding:3px 8px;transition:background .1s ease}.sf-user-bar__logout:hover{background:color-mix(in srgb,#1caad9 12%,transparent)}.sf-card{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:row;flex-shrink:0;overflow:hidden;transition:border-color .15s}.sf-card:hover{border-color:color-mix(in srgb,#1caad9 45%,var(--border-color))}.sf-card__thumb-wrap{background:var(--bg-dark);flex-shrink:0;height:72px;overflow:hidden;width:96px}.sf-card__thumb{display:block;height:100%;object-fit:cover;width:100%}.sf-card__thumb--placeholder{background:linear-gradient(135deg,var(--bg-dark) 0,var(--bg-subtle) 100%);height:100%;width:100%}.sf-card__info{display:flex;flex-direction:column;flex:1 1;gap:3px;min-width:0}.vp3d-info-menu{background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-lg);min-width:240px;max-width:280px;max-height:calc(100vh - 24px);overflow-y:auto;padding-bottom:var(--space-4);position:fixed;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:60}.vp3d-info-menu__tabs{align-items:center;background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);display:inline-flex;gap:3px;margin:0 var(--space-5) var(--space-4);padding:4px 5px;position:relative}.vp3d-tab-pill{background:var(--accent-fill,#1a5fb4);border-radius:var(--radius-md);bottom:4px;box-shadow:none;left:var(--pill-left,5px);pointer-events:none;position:absolute;top:4px;transition:left .22s cubic-bezier(.4,0,.2,1),width .22s cubic-bezier(.4,0,.2,1);width:var(--pill-width,60px);z-index:0}.vp3d-tab-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--fs-2);font-weight:500;flex:0 1 auto;gap:var(--space-2);min-width:22px;outline:none;padding:var(--space-2) var(--space-2);position:relative;transition:none;white-space:nowrap;z-index:1}.vp3d-tab-btn,.vp3d-tab-btn__icon{align-items:center;display:inline-flex;justify-content:center}.vp3d-tab-btn__icon{flex-shrink:0;line-height:0}.vp3d-tab-btn__label{line-height:1}.vp3d-tab-btn:hover:not(.vp3d-tab-btn--active){color:var(--text-primary)}.vp3d-tab-btn--active{color:var(--text-on-accent,#fff);font-weight:550;flex:0 0 auto;padding-left:var(--space-4);padding-right:var(--space-4)}.vp3d-tab-btn:disabled{color:var(--text-muted,#98a2b3);cursor:not-allowed;opacity:.52}.vp3d-info-menu__input{background:var(--bg-dark,#f0f2f5);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);color:var(--text-primary,#1a1a1e);font-size:var(--fs-4);outline:none;padding:5px 8px;width:100%;box-sizing:border-box}.vp3d-info-menu__input:focus{border-color:var(--accent-text,#4da6ff)}.vp3d-info-menu__textarea{background:var(--bg-dark,#f0f2f5);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);color:var(--text-primary,#1a1a1e);font-size:var(--fs-4);outline:none;padding:5px 8px;resize:vertical;width:100%;box-sizing:border-box}.vp3d-info-menu__textarea:focus{border-color:var(--accent-text,#4da6ff)}.vp3d-info-menu__save{background:var(--accent-fill,#4da6ff);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--fs-4);font-weight:600;padding:var(--space-3) var(--space-7);transition:opacity .15s ease;width:100%}.vp3d-info-menu__save:hover{opacity:.88}.vp3d-info-menu__ep-list{border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);display:flex;flex-direction:column;gap:0;margin-top:var(--space-3);max-height:160px;overflow-y:auto}.vp3d-info-menu__ep-option{align-items:center;background:transparent;border:none;border-bottom:1px solid var(--border-color,rgba(215,223,235,.6));color:var(--text-primary,#1a1a1e);cursor:pointer;display:flex;flex-wrap:wrap;gap:var(--space-2);padding:5px 8px;text-align:left;width:100%}.vp3d-info-menu__ep-option:last-child{border-bottom:none}.vp3d-info-menu__ep-option.is-on,.vp3d-info-menu__ep-option:hover{background:color-mix(in srgb,var(--accent-blue,#4da6ff) 12%,transparent)}.vp3d-info-menu__ep-option-name{flex:1 1;font-size:var(--fs-3);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp3d-info-menu__ep-option-path{color:var(--text-secondary,#6b7280);font-size:var(--fs-2);flex-basis:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp3d-info-menu__ep-selected{align-items:center;background:color-mix(in srgb,var(--accent-blue,#4da6ff) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-line,#4da6ff) 40%,transparent);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);padding:5px 8px}.vp3d-info-menu__ep-empty{color:var(--text-secondary,#6b7280);font-size:var(--fs-3);padding:var(--space-4);text-align:center}.vp3d-info-inline{display:flex;flex-direction:column;gap:0;width:100%}.vp3d-info-inline .vp3d-info-menu__tabs{display:flex;margin:var(--space-4) 0;width:100%}.vp3d-info-inline .vp3d-info-menu__tabs:not(.vp3d-info-visibility-tabs){gap:var(--space-1);justify-content:space-between;padding-left:var(--space-2);padding-right:var(--space-2)}.vp3d-info-inline .vp3d-line-panel__section{padding-left:0;padding-right:0}.vp3d-info-inline .vp3d-info-menu__input,.vp3d-info-inline .vp3d-info-menu__save,.vp3d-info-inline .vp3d-info-menu__textarea{width:100%}.vp3d-info-inline-axes{display:flex;flex-direction:column;width:100%}.vp3d-info-inline-axes .vp3d-info-menu__tabs{background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);display:flex;gap:var(--space-1);margin:var(--space-4) 0 0;padding:3px 4px;position:relative;width:100%}.vp3d-info-inline-axes .vp3d-tab-pill{bottom:3px;top:3px}.vp3d-info-inline-axes .vp3d-info-visibility-tab,.vp3d-info-inline-axes .vp3d-tab-btn{flex:1 1;height:32px;padding:0}.vp3d-info-inline-axes .vp3d-tab-btn--active{flex:1 1;padding:0}.vp3d-info-inline-axes .vp3d-axes-labels{margin-top:5px;max-height:none;opacity:1}.vp3d-info-menu .vp3d-info-inline-axes .vp3d-info-menu__tabs:not(.vp3d-info-visibility-tabs){margin:var(--space-3) var(--space-5) var(--space-4);width:calc(100% - var(--space-5) * 2)}.vp3d-info-menu .vp3d-info-inline-axes .vp3d-axes-labels{padding-left:var(--space-5);padding-right:var(--space-5)}.vp3d-info-label-editor{display:flex;flex-direction:column;gap:var(--space-4)}.vp3d-info-label-editor__color-row{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.vp3d-info-label-editor__toggle-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.vp3d-info-label-editor__axis-locks{display:flex;flex-direction:column;gap:var(--space-3)}.vp3d-info-label-editor__axis-lock-buttons{display:flex;flex-wrap:wrap;gap:var(--space-3)}.vp3d-info-label-editor__viewport-actions{display:flex;flex-direction:column;gap:var(--space-3)}.vp3d-info-label-editor__hint{color:var(--text-secondary,#6b7280);font-size:var(--fs-3);line-height:1.45}.vp3d-info-menu__tabs.is-complete .vp3d-tab-pill{background:var(--accent-green,#1f9d55)}.vp3d-info-menu__tabs.is-complete{border-color:color-mix(in srgb,var(--accent-green,#1f9d55) 42%,var(--border-color,#d7dfeb))}.el-ctrl--toggle-inline.is-disabled{cursor:not-allowed;opacity:.56}.el-ctrl--toggle-inline.is-disabled .el-icon-toggle{cursor:not-allowed}.vp3d-tab-pill--visibility{width:var(--pill-width,58px)}.vp3d-info-visibility-tabs{display:flex;gap:var(--space-1);justify-content:space-between;margin:0;padding-left:var(--space-2);padding-right:var(--space-2);width:100%}.vp3d-info-visibility-tab{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;flex:0 1 auto;font:inherit;font-size:var(--fs-2);font-weight:500;justify-content:center;min-width:0;padding:3px 4px;position:relative;text-align:center;transition:color .12s ease;white-space:nowrap;z-index:1}.vp3d-info-visibility-tab.is-enabled:not(.is-active),.vp3d-info-visibility-tab:hover:not(.is-active){color:var(--text-primary)}.vp3d-info-visibility-tab.is-complete:not(.is-active){color:var(--accent-green,#1f9d55);font-weight:600}.vp3d-info-visibility-tab.is-active{color:var(--text-on-accent,#fff);font-weight:550}.vp3d-info-slot-empty{color:var(--text-secondary,#6b7280);font-size:var(--fs-3);line-height:1.45}.vp3d-info-visibility-pills{display:flex;gap:var(--space-2)}.vp3d-info-vis-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-dark,#eef2f8);border:1px solid var(--border-color,#d7dfeb);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;flex:1 1;font:inherit;font-size:var(--fs-3);font-weight:500;outline:none;padding:var(--space-2) 0;text-align:center;transition:background .12s,color .12s,border-color .12s}.vp3d-info-vis-pill:hover:not(.is-active){background:var(--bg-hover,#f1f3f5);color:var(--text-primary)}.vp3d-info-vis-pill.is-active{background:var(--accent-fill,#1a5fb4);border-color:var(--accent-text,#1a5fb4);color:#fff;font-weight:600}.vp3d-info-card{background:var(--bg-panel,#fff);border:1px solid var(--border-color,rgba(215,223,235,.9));border-radius:var(--radius-md);font-size:var(--fs-4);max-width:200px;min-width:120px;pointer-events:auto;position:absolute}.vp3d-info-card:before{border:9px solid transparent;border-bottom:none;border-top:10px solid var(--border-color,rgba(215,223,235,.9));bottom:-10px;z-index:0}.vp3d-info-card:after,.vp3d-info-card:before{content:"";left:50%;position:absolute;transform:translateX(-50%)}.vp3d-info-card:after{border:9px solid transparent;border-bottom:none;border-top:9px solid var(--bg-panel,#fff);bottom:-9px;z-index:1}.vp3d-preset-launcher{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);min-width:132px;max-width:220px}.vp3d-preset-launcher__title{font-size:var(--fs-2);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted,#64748b);padding:var(--space-1) var(--space-3) var(--space-2)}.vp3d-preset-launcher__list{display:flex;flex-direction:column;gap:var(--space-1);max-height:220px;overflow-y:auto}.vp3d-preset-launcher__option{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;border-radius:var(--radius-md);color:var(--text-primary,#0f172a);cursor:pointer;font-size:var(--fs-4);font-weight:500;padding:var(--space-3) var(--space-4);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp3d-preset-launcher__option:hover:not(:disabled){background:color-mix(in srgb,var(--accent-blue,#2f6bff) 16%,transparent)}.vp3d-preset-launcher__option:disabled{cursor:default;opacity:.55}.vp3d-preset-launcher--empty,.vp3d-preset-launcher__empty{color:var(--text-muted,#64748b);font-size:var(--fs-3);padding:var(--space-3) var(--space-4)}.vp3d-info-card__inner{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5)}.vp3d-info-card__icon-row{display:flex;align-items:center}.vp3d-info-card__header{color:var(--text-primary,#1a1a1e);font-size:var(--fs-4);font-weight:600;line-height:1.3}.vp3d-info-card__body{color:var(--text-secondary,#6b7280);font-size:var(--fs-3);line-height:1.4}.vp3d-info-card__ep-header{align-items:center;display:flex;gap:5px}.vp3d-info-card__ep-name{color:var(--text-primary,#1a1a1e);font-size:var(--fs-3);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vp3d-info-card__ep-value{align-items:baseline;display:flex;gap:3px;margin-top:var(--space-1)}.vp3d-info-card__ep-val{color:var(--accent-text,#4da6ff);font-size:var(--fs-7);font-weight:700}.vp3d-info-card__ep-unit{color:var(--text-secondary,#6b7280);font-size:var(--fs-3)}.vp3d-info-card__ep-path{color:var(--text-secondary,#6b7280);font-size:var(--fs-2);margin-top:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html[data-theme=dark] .vp3d-info-menu__input,html[data-theme=dark] .vp3d-info-menu__textarea{background:var(--bg-dark,#18181b)}html[data-theme=dark] .vp3d-info-card:before{border-top-color:rgba(255,255,255,.08)}html[data-theme=dark] .vp3d-info-card:after{border-top-color:var(--bg-panel,#1a1a1e)}.vp3d-info-card--chart{max-width:none;min-width:0;overflow:hidden}.vp3d-info-card__inner--chart{overflow:hidden;padding:0;display:block}.vp3d-info-card__inner--chart .chart-el,.vp3d-info-card__inner--chart .chart-el--media{height:100%!important;padding:0!important}.vp3d-info-card__chart-loading,.vp3d-info-card__chart-missing{align-items:center;color:var(--text-muted,#9ca3af);display:flex;font-size:var(--fs-3);justify-content:center;padding:var(--space-region) var(--space-8)}.sf-card__title{color:var(--text-primary);font-size:var(--fs-4);font-weight:600;word-break:break-word}.sf-card__meta{align-items:center;color:var(--text-muted);display:flex;font-size:var(--fs-3);gap:var(--space-3);overflow:hidden}.sf-card__meta>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sf-card__license{background:color-mix(in srgb,var(--accent-green) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-green) 25%,transparent);border-radius:var(--radius-sm);color:var(--accent-green);flex-shrink:0;font-size:var(--fs-2);font-weight:600;padding:1px 5px;white-space:nowrap}.sf-card__btns{align-items:center;display:flex;gap:var(--space-3);margin-top:auto;padding:var(--space-2) 0 0}.sf-card__import{font-size:var(--fs-3);padding:var(--space-2) var(--space-5)}.sf-card__auth-needed{color:var(--text-muted);flex:1 1;font-size:var(--fs-3);font-style:italic}.sf-card__view{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);display:flex;flex-shrink:0;justify-content:center;padding:5px 8px;text-decoration:none;transition:border-color .12s,color .12s}.sf-card__view:hover{border-color:#1caad9;color:#1caad9}.sf-loading-note{color:var(--text-muted);font-size:var(--fs-4);padding:var(--space-2) 0;text-align:center}.sf-credit{align-items:center;color:var(--text-muted);display:flex;font-size:var(--fs-3);gap:var(--space-2);justify-content:center;padding:var(--space-2) 0 var(--space-1)}.sf-credit a{color:#1caad9;text-decoration:none}.sf-credit a:hover{text-decoration:underline}.viewport3d-anim-item{align-items:center;border-bottom:1px solid color-mix(in srgb,var(--border-color) 50%,transparent);cursor:pointer;display:flex;gap:7px;padding:5px 8px;transition:background 80ms ease}.viewport3d-anim-item:last-child{border-bottom:none}.viewport3d-anim-item:hover{background:var(--bg-hover)}.viewport3d-anim-checkbox{accent-color:var(--accent-text);cursor:pointer;flex-shrink:0;height:13px;width:13px}.viewport3d-anim-name{color:var(--text-primary);font-size:var(--fs-3);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-anim-settings{display:flex;flex-direction:column;gap:5px}.viewport3d-controls .el-ctrl>span,.vp3d-info-menu .el-ctrl>span{font-size:var(--fs-4);font-weight:400;letter-spacing:0;text-transform:none}.viewport3d-controls .el-card-list{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-2)}.viewport3d-controls .el-card-row{align-items:center;background:color-mix(in srgb,var(--bg-subtle) 70%,transparent);border:1px solid color-mix(in srgb,var(--border-color) 76%,transparent);border-radius:var(--radius-md);display:flex;gap:var(--space-3);padding:5px 8px}.viewport3d-controls .el-card-row__index{color:var(--text-muted);flex:0 0 auto;font-size:var(--fs-3)}.viewport3d-controls .el-card-row__type{color:var(--text-primary);flex:1 1;font-size:var(--fs-4);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-controls .el-card-row__remove{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:inline-flex;flex:0 0 auto;height:20px;justify-content:center;transition:background 80ms ease,color 80ms ease;width:20px}.viewport3d-controls .el-card-row__remove:hover{background:color-mix(in srgb,var(--accent-red,#ef4444) 16%,transparent);color:var(--accent-red,#ef4444)}.viewport3d-controls .el-ctrl-action-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px dashed color-mix(in srgb,var(--border-color) 80%,transparent);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--fs-4);gap:5px;justify-content:center;margin-bottom:var(--space-3);padding:var(--space-3) var(--space-5);transition:background 80ms ease,color 80ms ease;width:100%}.viewport3d-controls .el-ctrl-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.viewport3d-controls .el-ctrl.el-ctrl--segmented-inline{align-items:center;display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto}.viewport3d-controls .el-ctrl.el-ctrl--segmented-inline>span{color:var(--text-secondary);line-height:1.2;min-width:0}.viewport3d-world-track-control{align-items:stretch;display:flex;flex-direction:column;gap:var(--space-4);width:100%}.viewport3d-world-track-control>span{color:var(--text-secondary);line-height:1.2;min-width:0}.viewport3d-world-see-through-row,.viewport3d-world-track-control .vp3d-axes-wrap{width:100%}.viewport3d-world-see-through-label{align-items:center;color:var(--text-secondary);display:inline-flex;gap:var(--space-3);line-height:1.2;min-width:0}.el-ctrl--label-row{align-items:center;flex-direction:row;justify-content:space-between}.el-ctrl--label-row>span{flex-shrink:0}.viewport3d-world-inline-color-row{align-items:center;display:flex;gap:var(--space-4)}.viewport3d-world-inline-reset{align-self:auto;white-space:nowrap}.viewport3d-timeline-overlay{align-items:center;background:color-mix(in srgb,var(--bg-panel) 88%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--border-color);border-radius:var(--radius-md);bottom:10px;display:flex;gap:var(--space-4);left:10px;padding:5px 8px;position:absolute;right:10px;z-index:10}.viewport3d-timeline-playpause{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-panel,#fff);border:1.5px solid var(--border-color);border-radius:var(--radius-circle);color:var(--accent-text);cursor:pointer;display:flex;flex-shrink:0;height:26px;justify-content:center;padding:0;transition:border-color .16s ease,color .16s ease,transform .14s ease,box-shadow .16s ease;width:26px}.viewport3d-timeline-playpause:hover{border-color:var(--accent-text);box-shadow:0 0 0 3px var(--accent-blue-tint-8);transform:scale(1.08)}.viewport3d-timeline-playpause:active{transform:scale(.96)}.viewport3d-timeline-playpause.is-paused{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.viewport3d-timeline-playpause.is-paused:hover{border-color:var(--accent-green);box-shadow:0 0 0 3px rgba(31,157,85,.18)}.viewport3d-anim-manager:not(.is-collapsed) .viewport3d-anim-manager__bar .viewport3d-timeline-playpause{margin-left:auto;margin-right:auto}.viewport3d-anim-manager__bar .viewport3d-timeline-duration,.viewport3d-anim-manager__bar .viewport3d-timeline-time{margin-left:auto}.ctl-dd.viewport3d-timeline-duration{flex:0 0 auto;min-width:62px;width:max-content}.viewport3d-timeline-duration .ctl-dd-trigger{font-size:var(--fs-2);font-weight:600}.viewport3d-anim-manager__bar .viewport3d-timeline-playpause{transition:margin .3s cubic-bezier(.22,1,.36,1),transform .14s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.viewport3d-timeline-track{background:var(--border-color);border-radius:var(--radius-sm);cursor:pointer;flex:1 1;height:5px;overflow:hidden;position:relative}.viewport3d-timeline-fill{background:var(--accent-fill);border-radius:var(--radius-sm);height:100%;pointer-events:none;transition:width 33ms linear}.viewport3d-timeline-fill,.viewport3d-timeline-fill--scrub{transform-origin:left center}.viewport3d-timeline-time{color:var(--text-muted);flex-shrink:0;font-size:var(--fs-2);font-weight:600;white-space:nowrap}.viewport3d-prefab-editing{border-radius:var(--radius-md);overflow:hidden;position:relative;transform:translateZ(0)}.viewport3d-prefab-editing:after{content:"";position:absolute;inset:0;border:2px solid var(--accent-line,#1a5fb4);border-radius:var(--radius-md);pointer-events:none;z-index:10}.viewport3d-prefab-editing-banner{position:absolute;top:56px;left:50%;transform:translateX(-50%);z-index:100;display:flex;align-items:center;gap:var(--space-region);padding:var(--space-3) var(--space-region);background:var(--surface-1,#ffffff);border:1px solid var(--border-color,#e5e7eb);border-radius:var(--radius-md);box-shadow:0 4px 12px rgba(0,0,0,.15)}html[data-theme=dark] .viewport3d-prefab-editing-banner{background:var(--surface-2,#1e1e1e);border-color:var(--border-color,#333333)}.viewport3d-prefab-editing-banner-label{font-size:var(--fs-5);font-weight:600;color:var(--text-primary,#111827);display:flex;align-items:center}html[data-theme=dark] .viewport3d-prefab-editing-banner-label{color:#f9fafb}.viewport3d-prefab-exit-btn{background:var(--accent-red,#dc2626);color:#ffffff;border:none;border-radius:var(--radius-sm);padding:var(--space-2) var(--space-5);font-weight:600;font-size:var(--fs-4);cursor:pointer;transition:background .2s ease,transform .1s ease}.viewport3d-prefab-exit-btn:hover{background:color-mix(in srgb,var(--accent-red,#dc2626) 85%,#000);transform:translateY(-1px)}.viewport3d-prefab-exit-btn:active{transform:translateY(1px)}.viewport3d-asset-card__thumb-edit-overlay{position:absolute;inset:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;color:white;opacity:0;transition:opacity .2s ease;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.viewport3d-asset-card:hover .viewport3d-asset-card__thumb-edit-overlay{opacity:1}.viewport3d-asset-card.is-editing .viewport3d-asset-card__thumb-edit-overlay{opacity:1;background:rgba(26,95,180,.6)}.viewport3d-asset-card__thumb-edit-overlay:hover{background:rgba(0,0,0,.6)}.viewport3d-asset-card.is-editing .viewport3d-asset-card__thumb-edit-overlay:hover{background:rgba(26,95,180,.8)}.viewport3d-asset-card__thumb{position:relative;overflow:hidden}.viewport3d-asset-card:has(.is-active){z-index:100;overflow:visible!important}.viewport3d-asset-card--prefab-list:has(.is-active){overflow:visible!important;z-index:100}.viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions{max-width:60px;overflow:visible!important;opacity:1;pointer-events:auto}.viewport3d-asset-list--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--image,.viewport3d-asset-list--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--model,.viewport3d-asset-list--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--prefab,.viewport3d-asset-section__items--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--image,.viewport3d-asset-section__items--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--model,.viewport3d-asset-section__items--grid .viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__actions--prefab{opacity:1;pointer-events:auto;overflow:visible!important}.viewport3d-asset-card:focus-within .viewport3d-asset-card__main,.viewport3d-asset-card:has(.is-active) .viewport3d-asset-card__main,.viewport3d-asset-card:hover .viewport3d-asset-card__main{padding-right:var(--space-11)}.viewport3d-model-spawner__list.is-thumbnail-only-list,.viewport3d-prefab-switcher__list.is-thumbnail-only-list,.viewport3d-scene-visibility__list.is-thumbnail-only-list,.viewport3d-vp-list.is-thumbnail-only-list{flex-direction:row;flex-wrap:wrap;align-items:flex-start;align-content:flex-start;gap:var(--space-3)}.viewport3d-model-spawner__card.is-thumbnail-only,.viewport3d-prefab-switcher__card.is-thumbnail-only,.viewport3d-scene-visibility__row.is-thumbnail-only,.viewport3d-vp-item.is-thumbnail-only{border:none;background:transparent;border-radius:0;box-shadow:none;padding:0}.viewport3d-model-spawner__card.is-thumbnail-only.is-active,.viewport3d-model-spawner__card.is-thumbnail-only:hover,.viewport3d-prefab-switcher__card.is-thumbnail-only.is-active,.viewport3d-prefab-switcher__card.is-thumbnail-only:hover,.viewport3d-scene-visibility__row.is-thumbnail-only.is-active,.viewport3d-scene-visibility__row.is-thumbnail-only:focus-visible,.viewport3d-scene-visibility__row.is-thumbnail-only:hover,.viewport3d-vp-item.is-thumbnail-only.is-active,.viewport3d-vp-item.is-thumbnail-only:hover{border-color:transparent;background:transparent;box-shadow:none}.viewport3d-model-spawner__card.is-thumbnail-only:hover .viewport3d-model-spawner__thumb,.viewport3d-model-spawner__card.is-thumbnail-only:hover .viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher__card.is-thumbnail-only:hover .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card.is-thumbnail-only:hover .viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility__row.is-thumbnail-only:focus-visible .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row.is-thumbnail-only:focus-visible .viewport3d-scene-visibility__thumb--empty,.viewport3d-scene-visibility__row.is-thumbnail-only:hover .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row.is-thumbnail-only:hover .viewport3d-scene-visibility__thumb--empty,.viewport3d-vp-item.is-thumbnail-only:hover .viewport3d-vp-thumb,.viewport3d-vp-item.is-thumbnail-only:hover .viewport3d-vp-thumb--empty{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent-line) 45%,transparent)}.viewport3d-model-spawner__card.is-thumbnail-only.is-active .viewport3d-model-spawner__thumb,.viewport3d-model-spawner__card.is-thumbnail-only.is-active .viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher__card.is-thumbnail-only.is-active .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card.is-thumbnail-only.is-active .viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility__row.is-thumbnail-only.is-active .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row.is-thumbnail-only.is-active .viewport3d-scene-visibility__thumb--empty{box-shadow:var(--ring-selected-strong)}.viewport3d-model-spawner__list:has(.viewport3d-model-spawner__card.is-thumbnail-only),.viewport3d-prefab-switcher__list:has(.viewport3d-prefab-switcher__card.is-thumbnail-only),.viewport3d-scene-visibility__list:has(.viewport3d-scene-visibility__row.is-thumbnail-only),.viewport3d-vp-list:has(.viewport3d-vp-item.is-thumbnail-only){gap:var(--space-3);scrollbar-width:none}.viewport3d-model-spawner__list:has(.viewport3d-model-spawner__card.is-thumbnail-only)::-webkit-scrollbar,.viewport3d-prefab-switcher__list:has(.viewport3d-prefab-switcher__card.is-thumbnail-only)::-webkit-scrollbar,.viewport3d-scene-visibility__list:has(.viewport3d-scene-visibility__row.is-thumbnail-only)::-webkit-scrollbar,.viewport3d-vp-list:has(.viewport3d-vp-item.is-thumbnail-only)::-webkit-scrollbar{width:0;height:0;display:none}.viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility__thumb--empty{container-type:inline-size}.viewport3d-thumb-initials{display:inline-flex;align-items:center;justify-content:center;font-size:36cqw;font-weight:700;line-height:1;letter-spacing:.03em;color:currentColor;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.viewport3d-ui-panel__body--preset-simple:has(.viewport3d-viewpoints--horizontal .is-thumbnail-only,.viewport3d-model-spawner--horizontal .is-thumbnail-only,.viewport3d-prefab-switcher--horizontal .is-thumbnail-only,.viewport3d-scene-visibility--horizontal .is-thumbnail-only){padding-top:var(--space-3);padding-bottom:var(--space-3)}.viewport3d-ui-panel__body--preset-simple:has(.viewport3d-viewpoints--vertical .is-thumbnail-only,.viewport3d-model-spawner--vertical .is-thumbnail-only,.viewport3d-prefab-switcher--vertical .is-thumbnail-only,.viewport3d-scene-visibility--vertical .is-thumbnail-only){padding-left:var(--space-3);padding-right:var(--space-3)}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only,.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only{align-items:stretch;width:auto;height:auto;min-width:0;flex:0 0 auto;aspect-ratio:1/1}.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-model-spawner--horizontal .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-animation-switcher__thumb-wrap,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher--horizontal .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility--horizontal .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty,.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-viewpoints--horizontal .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{width:100%;height:100%;min-width:0;flex:0 0 auto;aspect-ratio:auto}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row.is-thumbnail-only,.viewport3d-viewpoints--vertical .viewport3d-vp-item.is-thumbnail-only{align-items:stretch;width:auto;height:auto;min-height:0;flex:0 0 auto;aspect-ratio:1/1}.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-model-spawner--vertical .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-animation-switcher__thumb-wrap,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher--vertical .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility--vertical .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty,.viewport3d-viewpoints--vertical .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-viewpoints--vertical .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{width:100%;height:100%;flex:1 1 auto;align-self:stretch;aspect-ratio:auto}.viewport3d-pane-body .el-ctrl select,.viewport3d-pane-body select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:var(--space-11);background:var(--bg-panel,#fff) url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='3,5.5 8,10.5 13,5.5' stroke='%235b6474' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center /12px 12px}.viewport3d-multi-select-presets{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-3) var(--space-4) var(--space-4)}.viewport3d-multi-select-presets__header{align-items:center;display:flex;padding:var(--space-1) var(--space-2) 0}.viewport3d-multi-select-presets__count{color:var(--text-muted,#8492a6);font-size:var(--fs-2);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.viewport3d-multi-select-presets__section{display:flex;flex-direction:column}.viewport3d-multi-select-presets__section-label{color:var(--text-muted,#8492a6);font-size:var(--fs-1);font-weight:600;letter-spacing:.05em;margin-bottom:var(--space-2);padding:0 var(--space-2);text-transform:uppercase}.viewport3d-multi-select-presets__empty{color:var(--text-muted,#8492a6);font-size:var(--fs-3);padding:var(--space-4) var(--space-2)}.viewport3d-multi-select-preset-card{align-items:center;background:var(--bg-panel,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md);color:var(--text-primary,#0f172a);cursor:pointer;display:flex;font:inherit;gap:7px;padding:var(--space-3) var(--space-4);text-align:left;transition:border-color .12s ease,background .12s ease;width:100%}.viewport3d-multi-select-preset-card:hover{background:var(--bg-hover,#f8fafc);border-color:var(--accent-text,#00838f)}.viewport3d-multi-select-preset-card:active{background:var(--bg-active,#eef2f6)}.viewport3d-multi-select-preset-card__icon{align-items:center;background:color-mix(in srgb,var(--accent-blue,#00838f) 10%,transparent);border-radius:var(--radius-sm);color:var(--accent-text,#00838f);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.viewport3d-multi-select-preset-card:hover .viewport3d-multi-select-preset-card__icon{background:color-mix(in srgb,var(--accent-blue,#00838f) 16%,transparent)}.viewport3d-multi-select-preset-card__label{font-size:var(--fs-3);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-multi-select-presets__grid,.viewport3d-multi-select-presets__grid--compact{display:flex;flex-direction:column;gap:3px}.viewport3d-single-object-presets{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-2) 0 var(--space-1)}.viewport3d-single-object-presets__header{align-items:center;display:flex;padding:0 var(--space-2)}.viewport3d-single-object-presets__label{color:var(--text-muted,#8492a6);font-size:var(--fs-2);font-weight:600;letter-spacing:.04em;text-transform:uppercase}.viewport3d-single-object-presets__section-label{color:var(--text-muted,#8492a6);font-size:var(--fs-1);font-weight:600;letter-spacing:.05em;margin-top:var(--space-1);padding:0 var(--space-2);text-transform:uppercase}.viewport3d-single-object-presets__grid{display:flex;flex-direction:column;gap:3px}.viewport3d-single-object-preset-card{align-items:center;background:var(--bg-panel,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md);color:var(--text-primary,#0f172a);cursor:pointer;display:flex;font:inherit;gap:7px;padding:5px 8px;text-align:left;transition:border-color .12s ease,background .12s ease;width:100%}.viewport3d-single-object-preset-card:hover{background:var(--bg-hover,#f8fafc);border-color:var(--accent-text,#00838f)}.viewport3d-single-object-preset-card:active{background:var(--bg-active,#eef2f6)}.viewport3d-single-object-preset-card__icon{align-items:center;background:color-mix(in srgb,var(--accent-blue,#00838f) 10%,transparent);border-radius:var(--radius-sm);color:var(--accent-text,#00838f);display:flex;flex-shrink:0;height:22px;justify-content:center;width:22px}.viewport3d-single-object-preset-card:hover .viewport3d-single-object-preset-card__icon{background:color-mix(in srgb,var(--accent-blue,#00838f) 16%,transparent)}.viewport3d-single-object-preset-card__label{font-size:var(--fs-3);font-weight:600;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewport3d-inline-confirm{position:absolute;left:0;right:0;z-index:100}.viewport3d-inline-confirm:before{content:"";position:fixed;inset:0;z-index:99998;background:rgba(0,0,0,.18);pointer-events:auto}.viewport3d-inline-confirm .schema-confirm-dialog{position:relative;z-index:99999;left:auto;top:auto;transform:none;width:auto;margin:0;padding:var(--space-region) var(--space-region) var(--space-5);gap:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--border-color);background:var(--bg-panel-elevated);box-shadow:0 6px 20px rgba(0,0,0,.12),0 1px 3px rgba(0,0,0,.06)}.viewport3d-inline-confirm .schema-confirm-head{gap:var(--space-4)}.viewport3d-inline-confirm .schema-confirm-icon{flex-shrink:0}.viewport3d-inline-confirm .schema-confirm-title{font-size:var(--fs-4);font-weight:650;line-height:1.3;margin:0;color:var(--text-primary)}.viewport3d-inline-confirm .schema-confirm-message{font-size:var(--fs-3);line-height:1.45;color:var(--text-secondary);margin:0}.viewport3d-inline-confirm .schema-confirm-actions{gap:var(--space-3);justify-content:flex-end}.viewport3d-inline-confirm .schema-confirm-btn{font-size:var(--fs-3);padding:var(--space-2) var(--space-region);border-radius:var(--radius-md)}.viewport3d-inline-confirm .schema-confirm-overlay{display:none}.vp3d-entry-icon{flex:0 0 auto;width:44px;min-width:44px}.vp3d-entry-icon .schema-ep-select-trigger{padding:var(--space-2) var(--space-3);min-height:30px}.vp3d-entry-icon .dp-icon-picker__trigger-main{gap:0;min-width:0;overflow:hidden}.vp3d-entry-icon .schema-ep-select{position:relative}.vp3d-entry-icon .schema-ep-select-menu.dp-icon-picker__menu{position:absolute;top:calc(100% + var(--space-2));left:0;margin-top:0;z-index:var(--z-dropdown-elevated);width:280px;max-width:calc(100vw - 24px)}@container viewport3d-ui-panel-body (max-height: 96px){.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb,.viewport3d-model-spawner__card:not(.is-thumbnail-only) .viewport3d-model-spawner__thumb--empty,.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb,.viewport3d-prefab-switcher__card:not(.is-thumbnail-only) .viewport3d-prefab-switcher__thumb--empty,.viewport3d-scene-visibility__row:not(.is-thumbnail-only) .viewport3d-scene-visibility__thumb,.viewport3d-scene-visibility__row:not(.is-thumbnail-only) .viewport3d-scene-visibility__thumb--empty,.viewport3d-vp-item:not(.is-thumbnail-only) .viewport3d-vp-thumb,.viewport3d-vp-item:not(.is-thumbnail-only) .viewport3d-vp-thumb--empty{width:28px;height:28px;min-height:0;flex:0 0 28px;border-radius:var(--radius-md)}}.viewport3d-ui-panel--flex .viewport3d-ui-panel__body{container-type:normal}.viewport3d-ui-panel--flex :is(.viewport3d-scene-visibility__add,.viewport3d-scene-visibility__tag-add,.viewport3d-model-spawner__add,.viewport3d-prefab-switcher__add,.viewport3d-viewpoints__add){flex:0 0 auto;align-self:center;gap:0;min-width:28px;width:28px;min-height:28px;height:28px;padding:0}.viewport3d-ui-panel--flex :is(.viewport3d-scene-visibility__add,.viewport3d-scene-visibility__tag-add,.viewport3d-model-spawner__add,.viewport3d-prefab-switcher__add,.viewport3d-viewpoints__add)>span:not([class*=add-icon]){display:none}@container viewport3d-ui-panel-body (max-width: 200px){:is(.viewport3d-scene-visibility__add,.viewport3d-scene-visibility__tag-add,.viewport3d-model-spawner__add,.viewport3d-prefab-switcher__add,.viewport3d-viewpoints__add){flex:0 0 auto;gap:0;min-width:28px;width:28px;min-height:28px;padding:0}:is(.viewport3d-scene-visibility__add,.viewport3d-scene-visibility__tag-add,.viewport3d-model-spawner__add,.viewport3d-prefab-switcher__add,.viewport3d-viewpoints__add)>span:not([class*=add-icon]){display:none}}.viewport3d-ui-panel--flex .viewport3d-model-spawner__list,.viewport3d-ui-panel--flex .viewport3d-prefab-switcher__list,.viewport3d-ui-panel--flex .viewport3d-scene-visibility__list,.viewport3d-ui-panel--flex .viewport3d-vp-list{align-items:center}.viewport3d-ui-panel--flex .viewport3d-model-spawner__card.is-thumbnail-only,.viewport3d-ui-panel--flex .viewport3d-prefab-switcher__card.is-thumbnail-only,.viewport3d-ui-panel--flex .viewport3d-scene-visibility__row.is-thumbnail-only,.viewport3d-ui-panel--flex .viewport3d-vp-item.is-thumbnail-only{flex:0 0 auto;align-self:center;width:var(--vp3d-flex-card,40px);height:var(--vp3d-flex-card,40px);min-width:var(--vp3d-flex-card,40px);min-height:var(--vp3d-flex-card,40px)}.viewport3d-ui-panel--flex .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb,.viewport3d-ui-panel--flex .viewport3d-model-spawner__card.is-thumbnail-only .viewport3d-model-spawner__thumb--empty,.viewport3d-ui-panel--flex .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb,.viewport3d-ui-panel--flex .viewport3d-prefab-switcher__card.is-thumbnail-only .viewport3d-prefab-switcher__thumb--empty,.viewport3d-ui-panel--flex .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb,.viewport3d-ui-panel--flex .viewport3d-scene-visibility__row.is-thumbnail-only .viewport3d-scene-visibility__thumb--empty,.viewport3d-ui-panel--flex .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb,.viewport3d-ui-panel--flex .viewport3d-vp-item.is-thumbnail-only .viewport3d-vp-thumb--empty{width:100%;height:100%;min-width:0;min-height:0}.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-model-spawner__list,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-prefab-switcher__list,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-scene-visibility__list,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-vp-list{scrollbar-width:none}.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-model-spawner__list::-webkit-scrollbar,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-prefab-switcher__list::-webkit-scrollbar,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-scene-visibility__list::-webkit-scrollbar,.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body .viewport3d-vp-list::-webkit-scrollbar{width:0;height:0;display:none}.viewport3d-ui-panel--preset-simple .viewport3d-ui-panel__body{position:relative}.viewport3d-preset-scrollbar{position:absolute;z-index:4;border-radius:var(--scrollbar-radius);background:var(--scrollbar-thumb);opacity:0;transition:opacity .12s ease;cursor:default;touch-action:none}.viewport3d-preset-scrollbar:before{content:"";position:absolute;inset:-4px}.viewport3d-preset-scrollbar.is-dragging,.viewport3d-ui-panel--preset-simple:hover .viewport3d-preset-scrollbar{opacity:1}.viewport3d-preset-scrollbar.is-dragging,.viewport3d-preset-scrollbar:hover{background:var(--scrollbar-thumb-hover)}.viewport3d-inv-material-import{display:inline-flex;position:relative}.viewport3d-inv-material-import__menu{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 12px 32px rgba(15,23,42,.24);display:flex;flex-direction:column;left:0;max-height:260px;min-width:180px;overflow-y:auto;padding:var(--space-2);position:absolute;top:calc(100% + 4px);z-index:20}.viewport3d-inv-material-import__item{background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:var(--fs-4);overflow:hidden;padding:var(--space-3) var(--space-4);text-align:left;text-overflow:ellipsis;white-space:nowrap}.viewport3d-inv-material-import__item:hover{background:var(--bg-hover)}.viewport3d-inv-material-import__note{color:var(--text-muted);font-size:var(--fs-3);line-height:1.5;padding:var(--space-4)}.if-tab-layout{overflow:hidden;padding:var(--space-4) var(--space-3) var(--space-2) calc(var(--space-3) + var(--scrollbar-size) * 2)}.if-results-scroll,.if-tab-layout{display:flex;flex-direction:column;flex:1 1;gap:var(--space-4);min-height:0}.if-results-scroll{overflow-y:auto;overscroll-behavior:contain;padding-bottom:var(--space-2)}.if-error-note{background:var(--danger-soft-bg);border:1px solid var(--danger-soft-border);border-radius:var(--radius-sm);color:var(--status-danger);font-size:var(--fs-3);line-height:1.45;padding:var(--space-3) var(--space-4)}.if-card{background:var(--bg-panel);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:row;flex-shrink:0;overflow:hidden;transition:border-color .15s}.if-card:hover{border-color:color-mix(in srgb,var(--accent-green,#2fbf71) 45%,var(--border-color))}.if-card__thumb-wrap{align-items:center;background:var(--bg-dark);display:flex;flex-shrink:0;height:72px;justify-content:center;overflow:hidden;width:96px}.if-card__thumb{display:block;height:48px;width:48px}.if-card__info{display:flex;flex-direction:column;flex:1 1;gap:3px;min-width:0}.if-card__title{color:var(--text-primary);font-size:var(--fs-4);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.if-card__meta{align-items:center;color:var(--text-muted);display:flex;font-size:var(--fs-3);gap:var(--space-3);overflow:hidden}.if-card__license,.if-card__meta>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.if-card__license{background:color-mix(in srgb,var(--accent-green) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-green) 25%,transparent);border-radius:var(--radius-sm);color:var(--accent-green);flex-shrink:0;font-size:var(--fs-2);font-weight:600;max-width:140px;padding:1px 5px}.if-card__btns{align-items:center;display:flex;gap:var(--space-3);margin-top:auto;padding:var(--space-2) 0 0}.if-card__import{font-size:var(--fs-3);padding:var(--space-2) var(--space-5)}.if-card__view{align-items:center;background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-muted);display:flex;flex-shrink:0;justify-content:center;padding:5px 8px;text-decoration:none;transition:border-color .12s,color .12s}.if-card__view:hover{border-color:var(--accent-green,#2fbf71);color:var(--accent-green,#2fbf71)}.if-loading-note{color:var(--text-muted);font-size:var(--fs-4);padding:var(--space-2) 0;text-align:center}.if-credit{align-items:center;color:var(--text-muted);display:flex;flex-wrap:wrap;font-size:var(--fs-3);gap:var(--space-2);justify-content:center;padding:var(--space-2) 0 var(--space-1)}.if-credit a{color:var(--accent-green,#2fbf71);text-decoration:none}.if-credit a:hover{text-decoration:underline}