@import "https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,300..900;1,14..32,300..900&display=swap";.ref-drawer-outer{border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface2);transition:height .2s,border-color .15s;overflow:hidden}.ref-drawer-outer:not(.ref-drawer-outer--open){border-color:#0000}.ref-drawer{border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface2);flex-direction:column;gap:0;display:flex}.ref-drawer-outer>.ref-drawer{background:0 0;border:none;border-radius:0}.ref-drawer-toggle{width:100%;color:var(--c-text-dim);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;padding:6px 8px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;transition:background .12s,color .12s;display:flex}.ref-drawer-toggle:hover{background:var(--c-surface3);color:var(--c-text)}.ref-drawer-chevron{color:var(--c-text-muted);flex-shrink:0;transition:transform .15s;transform:rotate(-90deg)}.ref-drawer-toggle--open .ref-drawer-chevron{transform:rotate(0)}.ref-drawer-badge{background:var(--c-accent);color:#fff;border-radius:10px;margin-left:auto;padding:1px 6px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;line-height:1.4}.ref-drawer-slide{border-top:1px solid var(--c-border)}.ref-drawer-body-inner{gap:6px;padding:6px 8px 8px;display:flex}.ref-slot{aspect-ratio:1;border:1px dashed var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface3);cursor:pointer;flex:1;min-width:0;transition:border-color .15s,background .15s;position:relative;overflow:visible}.ref-slot-thumb,.ref-slot-thumb-crop,.ref-slot-empty{border-radius:calc(var(--radius-sm) - 1px);overflow:hidden}.ref-slot:hover:not(.ref-slot--loaded):not(.ref-slot--disabled){border-color:var(--c-border-act);background:var(--c-accent-subtle)}.ref-slot--loaded{border-style:solid;border-color:var(--c-border-hi);cursor:default}.ref-slot--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.ref-slot-thumb{object-fit:cover;width:100%;height:100%;display:block}.ref-slot-thumb-crop{width:100%;height:100%;position:relative;overflow:hidden}.ref-slot-thumb-crop-img{object-fit:cover;display:block;position:absolute}.ref-slot-num{z-index:1;font-family:Helvetica,Helvetica Neue,Arial,sans-serif;font-weight:700;font-size:calc(var(--ref-thumb,88px) * .5);color:#ffffff80;pointer-events:none;-webkit-user-select:none;user-select:none;text-shadow:0 1px 3px #00000059;line-height:.82;position:absolute;bottom:2%;left:5%}.ref-slot-clear{color:#ffffffe6;cursor:pointer;opacity:0;background:#1414128c;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:11px;line-height:1;transition:opacity .12s,background .12s;display:flex;position:absolute;top:3px;right:3px}.ref-slot--loaded:hover .ref-slot-clear{opacity:1}.ref-slot-clear:hover{background:#b43214cc}.ref-slot-empty{height:100%;color:var(--c-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.ref-slot-label{letter-spacing:.08em;text-transform:uppercase;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.ref-slot-req{color:var(--c-accent);letter-spacing:.06em;opacity:.7;font-family:Inter,sans-serif;font-size:8px}.ref-lightbox{z-index:10020;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#141412cc;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:fixed;inset:0}.ref-lightbox-close{color:#ffffffd9;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background .12s;display:flex;position:absolute;top:16px;right:16px}.ref-lightbox-close:hover{background:#ffffff40}.ref-lightbox-img{object-fit:contain;border-radius:var(--radius-sm);cursor:default;max-width:85vw;max-height:80vh;box-shadow:0 8px 40px #0006}.ref-lightbox-name{color:#fff9;letter-spacing:.06em;font-family:Inter,sans-serif;font-size:10px}.ref-lightbox-img-wrap{-webkit-user-select:none;user-select:none;display:inline-block;position:relative}.ref-lightbox-img-wrap .ref-lightbox-img{display:block}.ref-lightbox-bbox{cursor:move;border:1.5px dashed #ffffffd9;position:absolute;box-shadow:0 0 0 1px #00000040}.ref-bbox-dim{pointer-events:none;background:#00000073;position:absolute}.ref-bbox-dim--top{width:100%;top:0;left:0}.ref-bbox-dim--bottom{width:100%;left:0}.ref-bbox-dim--left{left:0}.ref-bbox-handle{z-index:2;background:#fff;border:1px solid #0000004d;border-radius:2px;width:10px;height:10px;position:absolute}.ref-bbox-handle--tl{cursor:nw-resize;top:-5px;left:-5px}.ref-bbox-handle--tr{cursor:ne-resize;top:-5px;right:-5px}.ref-bbox-handle--bl{cursor:sw-resize;bottom:-5px;left:-5px}.ref-bbox-handle--br{cursor:se-resize;bottom:-5px;right:-5px}.ref-bbox-edge{z-index:1;position:absolute}.ref-bbox-edge--t{cursor:n-resize;height:8px;top:-4px;left:10px;right:10px}.ref-bbox-edge--b{cursor:s-resize;height:8px;bottom:-4px;left:10px;right:10px}.ref-bbox-edge--l{cursor:w-resize;width:8px;top:10px;bottom:10px;left:-4px}.ref-bbox-edge--r{cursor:e-resize;width:8px;top:10px;bottom:10px;right:-4px}.ref-slot-bbox-dot{background:var(--c-accent);pointer-events:none;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;left:4px;box-shadow:0 0 0 1px #0000004d}.ref-extract-btn{width:100%;color:var(--c-text-dim);letter-spacing:.06em;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;gap:5px;padding:5px 8px;font-family:Inter,sans-serif;font-size:9px;transition:color .12s,background .12s;display:flex}.ref-extract-btn:hover:not(:disabled){color:var(--c-accent);background:var(--c-accent-subtle)}.ref-extract-btn:disabled{opacity:.4;cursor:not-allowed}.ref-slot-pick-btns{z-index:2;gap:4px;display:inline-flex;position:absolute;bottom:4px;right:4px}.ref-slot-layers-btn{border:1px solid var(--c-border-hi);background:var(--c-surface3);width:20px;height:20px;color:var(--c-text-dim);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;transition:color .12s,background .12s,border-color .12s;display:flex;position:static}.ref-slot-layers-btn:hover{color:var(--c-accent);border-color:var(--c-border-act);background:var(--c-accent-subtle)}.ref-layer-picker-shell{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:12px;padding:10px 4px 10px 10px;overflow:hidden;box-shadow:0 8px 24px #0000002e}.ref-layer-picker-shell--compact{padding:6px 4px 6px 6px}.ref-layer-picker--compact{grid-template-columns:1fr 1fr 1fr;gap:4px;max-height:none;padding-right:4px}.ref-layer-picker-shell--compact{overflow-y:auto}.ref-layer-picker--compact .ref-layer-picker-name{padding:14px 6px 4px;font-size:10px;font-weight:500}.ref-layer-picker-empty{text-align:center;color:var(--c-text-muted,#888);padding:18px 12px;font-family:Inter,sans-serif;font-size:11px;line-height:1.5}.ref-layer-picker{grid-template-columns:1fr 1fr;grid-auto-rows:min-content;gap:8px;max-height:460px;padding-right:6px;display:grid;overflow:hidden auto}.ref-layer-picker-item{aspect-ratio:4/5;cursor:pointer;border:1px solid var(--c-border);background:var(--c-surface-alt,#0000);border-radius:4px;min-width:0;min-height:0;transition:border-color .1s,transform .1s;position:relative;overflow:hidden}.ref-layer-picker-item:hover{border-color:var(--c-border-act);transform:translateY(-1px)}.ref-layer-picker-thumb{object-fit:cover;width:100%;height:100%;display:block}.ref-layer-picker-name{letter-spacing:-.01em;color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:linear-gradient(#0000 0%,#00000040 40%,#000000a6 100%);border-radius:0 0 4px 4px;padding:28px 12px 10px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.layer-picker-popup--compact{padding:6px 2px 6px 6px}.layer-picker-popup--compact .ref-layer-picker{gap:4px;max-height:320px;padding-right:4px}.layer-picker-popup--compact .ref-layer-picker-name{padding:14px 6px 5px;font-size:10px}.layer-picker-popup--compact .ref-layer-picker-thumb{image-rendering:auto;image-rendering:-webkit-optimize-contrast}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:focus,:focus-visible{outline:none}.focus-ring:focus-visible{outline:2px solid var(--c-accent-glow);outline-offset:1px}:root{--c-bg:#d0cec8;--c-surface:#f2f0ec;--c-surface2:#eae8e3;--c-surface3:#e0ddd7;--c-surface-deep:#d6d3cc;--c-border:#00000012;--c-border-hi:#0000001f;--c-border-act:#b873337a;--c-border-island:#0000001f;--c-text:#2a2a28;--c-text-1:#2a2a28;--c-text-2:#5a5955;--c-text-3:#7d7974;--c-text-dim:#555550;--c-text-muted:#7a7975;--c-accent:#b87333;--c-accent-hi:#c84;--c-accent-glow:#b8733333;--c-accent-subtle:#b8733314;--c-stage:#908e88;--c-inset-highlight:#ffffff80;--gap:1px;--left-w:230px;--panel-w:230px;--props-w:210px;--menubar-h:36px;--contextbar-h:4px;--row-h:58px;--radius-sm:3px;--radius:4px;--radius-lg:6px;--island-gap:8px;--island-radius:14px;--island-btn-radius:10px;--fw-display:900;--fw-title:700;--fw-body:400;--fw-caption:500;--fs-title:10px;--fs-body:12px;--fs-caption:9px;--tracking-display:.14em;--tracking-title:.08em;--tracking-body:.01em;--tracking-caption:.06em;--c-title:var(--c-text-2);--c-caption:var(--c-text-muted);font-family:Inter,sans-serif;font-size:11px;font-weight:400}:where(.canvas-statusbar,.canvas-statusbar *,.gen-review-counter,.pd-scrub-field,.pd-scrub-field--inline,[class*=-count],[class*=-num],[class*=-coord]){font-variant-numeric:tabular-nums lining-nums}[data-theme=dark]{--c-bg:#181816;--c-surface:#1a1a18;--c-surface2:#242422;--c-surface3:#2e2e2c;--c-surface-deep:#101010;--c-border:#ffffff12;--c-border-hi:#ffffff1f;--c-border-act:#cc88448c;--c-border-island:#fff3;--c-text:#ededeb;--c-text-1:#ededeb;--c-text-2:#c0c0bc;--c-text-3:#7d7d78;--c-text-dim:#c4c4c0;--c-text-muted:#908f8b;--c-accent:#c84;--c-accent-hi:#dda055;--c-accent-glow:#cc884440;--c-accent-subtle:#cc88441a;--c-title:#c99c3f;--c-stage:#28292d;--c-inset-highlight:#ffffff0a}html,body,#root{background:var(--c-bg);height:100%;color:var(--c-text);-webkit-font-smoothing:antialiased;overflow:hidden}*{scrollbar-width:thin;scrollbar-color:var(--c-border-hi) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--c-border-act)}::-webkit-scrollbar-corner{background:0 0}.app-shell:before{content:"";pointer-events:none;z-index:9999;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-size:128px 128px;position:fixed;inset:0}.app-shell{gap:var(--gap);background:var(--c-bg);flex-direction:column;width:100vw;height:100vh;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #00000014}.app-body{gap:var(--gap);flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.left-sidebar-wrap{z-index:25;width:var(--left-w);z-index:25;width:var(--left-w);position:fixed;top:20px;bottom:12px;left:20px;overflow:visible}.resize-handle{cursor:col-resize;z-index:20;opacity:1;background:0 0;border-radius:0;width:8px;height:100%;margin-left:-3px;transition:background .15s;position:absolute;top:0}.resize-handle:hover,.resize-handle--active{background:var(--c-accent-glow);opacity:1}.resize-handle--right{right:calc(-1 * var(--gap,6px))}.resize-handle--left{left:calc(-1 * var(--gap,6px))}.right-column>.resize-handle--left{height:var(--right-content-h,100%)}.left-sidebar-wrap>.resize-handle--right{height:var(--left-content-h,100%)}.left-sidebar{z-index:2;gap:var(--island-gap);width:100%;height:100%;box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;padding-top:0;display:flex;position:relative;overflow:visible}.sidebar-header,.menu-panel,.scene-nav-scenes,.scene-nav-library,.nd-palette,.chat-panel{background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border-island);border-radius:var(--island-radius);box-shadow:none;overflow:hidden}.scene-navigator{gap:var(--island-gap);min-height:0;box-shadow:none;background:0 0;border:none;flex-direction:column;flex:1;display:flex;overflow:visible}.left-sidebar .scene-navigator{display:contents}.left-sidebar .panel-zone--layers.right-island--flex:not(.right-island--collapsed){min-height:0;flex-grow:var(--left-layers-grow,1)!important;flex-shrink:1!important;flex-basis:0!important}.left-sidebar .scene-nav-library:not(.scene-nav-library--collapsed){flex-grow:var(--left-lib-grow,1)!important;flex-shrink:1!important;flex-basis:0!important;min-height:0!important}.left-resize-grip{cursor:ns-resize;z-index:20;background:0 0;flex:0 0 8px;margin:-8px 0;transition:background .15s}.left-resize-grip:hover,.left-resize-grip:active{background:var(--c-accent-glow)}.scene-nav-scenes{flex-direction:column;flex-shrink:0;display:flex}.sidebar-title{border-bottom:1px solid var(--c-border);letter-spacing:0;text-transform:none;height:34px;color:var(--c-text-3);-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:space-between;align-items:center;padding:0 12px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.sidebar-title-actions{gap:2px;display:flex}.sidebar-title-btn{border-radius:var(--radius-sm,4px);width:22px;height:22px;color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.sidebar-title-btn:hover:not(:disabled){background:var(--c-bg-hover,#0000000f);color:var(--c-text)}.sidebar-title-btn:disabled{opacity:.35;cursor:default}.sidebar-tabs{background:var(--c-surface-deep);border-radius:var(--radius-sm);border-bottom:none;flex-direction:row;flex-shrink:0;gap:0;height:auto;margin:8px 10px;padding:2px;display:flex;position:relative;box-shadow:inset 0 1px 3px #0000001a,inset 0 0 1px #0000000f}.sidebar-tabs:before{content:"";background:var(--c-surface);border-radius:calc(var(--radius-sm) - 1px);width:calc(50% - 2px);height:calc(100% - 4px);box-shadow:0 1px 2px #00000014, 0 0 0 1px #0000000a, inset 0 1px 0 var(--c-inset-highlight);transform:translateX(calc(var(--tab-idx) * 100%));z-index:0;transition:transform .2s;position:absolute;top:2px;left:2px}.sidebar-tab{letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted);cursor:pointer;border-radius:calc(var(--radius-sm) - 1px);z-index:1;-webkit-user-select:none;user-select:none;background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:6px 10px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;transition:color .15s;display:flex;position:relative}.sidebar-tab--active{color:var(--c-text)}.sidebar-panel{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.sidebar-panel--empty{justify-content:center;align-items:center}.sidebar-empty-label{letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.chat-overlay-actions{z-index:10;opacity:.7;align-self:flex-end;gap:4px;margin-right:6px;transition:opacity .15s;display:flex;position:sticky;bottom:6px}.chat-overlay-actions:hover{opacity:1}.chat-overlay-btn{all:unset;border-radius:var(--radius-sm);width:28px;height:28px;color:var(--c-text-dim);cursor:pointer;background:var(--c-surface);border:1px solid var(--c-border);justify-content:center;align-items:center;display:flex}.chat-overlay-btn:hover:not(:disabled){color:var(--c-text);background:var(--c-surface2)}.chat-overlay-btn:disabled{opacity:.3;cursor:default}.panel-zone{flex-direction:column;flex-shrink:0;display:flex}.panel-zone--layers{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.panel-zone-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 10px 4px;display:flex}.panel-zone-label{letter-spacing:0;text-transform:none;color:var(--c-text-3);font-family:Inter,sans-serif;font-size:13px;font-weight:600}.panel-zone-add{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:26px;height:26px;color:var(--c-text-dim);cursor:pointer;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);justify-content:center;align-items:center;transition:color .12s,background .12s,border-color .12s,box-shadow .12s;display:flex}.panel-zone-add:hover:not(:disabled){color:var(--c-text);background:var(--c-surface);border-color:var(--c-border-hi);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.layer-add-menu-wrap{position:relative}.layer-add-menu{z-index:30;background:var(--c-surface,#fff);border:1px solid var(--c-border);border-radius:var(--radius-sm);min-width:130px;padding:4px 0;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.layer-add-menu-item{all:unset;box-sizing:border-box;width:100%;color:var(--c-text-2);cursor:pointer;padding:5px 12px;font-size:11px;display:block}.layer-add-menu-item:hover{background:var(--c-surface2);color:var(--c-text-1)}.layer-add-section{flex-shrink:0;padding:10px 8px 6px}.layer-add-row{gap:0;display:flex}.layer-add-btn{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-dim);cursor:pointer;border-radius:0;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 0;transition:all .12s;display:flex}.layer-add-row>.layer-add-btn:first-child,.layer-add-row>:first-child .layer-add-btn{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.layer-add-row>.layer-add-btn:last-child,.layer-add-row>:last-child .layer-add-btn{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.layer-add-row>.layer-add-btn+.layer-add-btn,.layer-add-row>*+* .layer-add-btn,.layer-add-row>*+.layer-add-btn{border-left:none}.layer-add-btn:hover{color:var(--c-text);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.layer-add-btn:active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act)}.layer-add-3d-wrap{flex:1;position:relative}.layer-add-3d-wrap .layer-add-btn{width:100%}.layer-add-3d-menu{z-index:100;background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);flex-direction:column;width:max-content;padding:3px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 20px #00000026}.layer-add-3d-item{white-space:nowrap;color:var(--c-text-dim);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:5px 10px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:background .1s,color .1s}.layer-add-3d-item:hover{background:var(--c-surface3);color:var(--c-text)}.layer-toolbar{flex-shrink:0;justify-content:space-around;align-items:center;gap:2px;padding:6px 8px 0;display:flex}.layer-toolbar-btn{width:28px;height:26px;color:var(--c-text-dim);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.layer-toolbar-btn:hover:not(:disabled){color:var(--c-text);background:var(--c-surface3)}.layer-toolbar-btn:disabled{opacity:.25;cursor:default}.layer-blend-bar{flex-shrink:0;align-items:center;gap:5px;padding:4px 8px 6px;display:flex}.layer-blend-bar--disabled{opacity:.35;pointer-events:none}.layer-blend-bar__label{font-family:Inter,sans-serif;font-size:10px;font-weight:var(--fw-caption);letter-spacing:var(--tracking-caption);text-transform:uppercase;color:var(--c-text-dim);flex-shrink:0}.layer-blend-bar__label+.chat-model-select-wrap+.layer-blend-bar__label{margin-left:auto}.layer-blend-bar>.chat-model-select-wrap{flex:0 auto;min-width:0}.pd-make3d-row{flex-direction:column;gap:4px;margin-bottom:6px;display:flex}.pd-make3d-row>.chat-model-select-wrap{flex:1 1 0;min-width:0;max-width:none}.pd-make3d-row .chat-model-select{text-overflow:clip;width:100%;overflow:visible}.pd-make3d-row .chat-model-select-wrap:after{right:7px}.pd-make3d-row .chat-model-dropdown{width:max-content;min-width:100%;padding:2px;left:0;right:auto}.pd-make3d-run.chat-btn{flex:none;width:100%;height:28px;min-height:0;padding:6px 8px}.pd-make3d-prompt{box-sizing:border-box;background:var(--c-surface2);border:1px solid var(--c-border);width:100%;height:24px;color:var(--c-text);border-radius:8px;outline:none;margin-bottom:6px;padding:0 8px;font-family:Inter,sans-serif;font-size:10px;transition:border-color .12s}.pd-make3d-prompt::placeholder{color:var(--c-text-muted)}.pd-make3d-prompt:focus{border-color:var(--c-accent)}.layer-blend-bar>.chat-model-select-wrap .chat-model-select{text-transform:none;letter-spacing:0;width:auto;color:var(--c-text);padding:4px 18px 4px 6px;font-size:10px;font-weight:400}.layer-blend-bar>.chat-model-select-wrap .chat-model-dropdown{width:auto;min-width:0;padding:2px 0;left:0;right:auto}.layer-blend-bar>.chat-model-select-wrap .chat-model-dropdown-item{text-transform:none;letter-spacing:0;white-space:nowrap;padding:4px 8px;font-size:10px;font-weight:400}.layer-blend-bar__opacity{box-sizing:border-box;letter-spacing:0;width:42px;color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:ew-resize;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);flex-shrink:0;justify-content:center;align-items:center;padding:5px 6px;font-family:Inter,sans-serif;font-size:10px;font-weight:400;transition:color .12s,border-color .12s;display:flex}.layer-blend-bar__opacity:hover{border-color:var(--c-border-hi);color:var(--c-text)}.layer-blend-bar__opacity--editing{box-sizing:border-box;letter-spacing:0;width:42px;color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-accent);border-radius:var(--radius-sm);text-align:center;outline:none;flex-shrink:0;padding:5px 6px;font-family:Inter,sans-serif;font-size:10px;font-weight:400}.layer-genmask-row{cursor:pointer;border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:8px;height:52px;margin:1px 4px;padding:0 8px;transition:background .12s;display:flex}.layer-genmask-row:hover{background:var(--c-surface2)}.layer-genmask-row--active{background:var(--c-accent-subtle);outline:1px solid var(--c-border-act)}.canvas-row{align-items:stretch;gap:var(--gap);flex-direction:row;flex:1;min-height:0;display:flex;position:relative;overflow:visible}.right-column{z-index:25;width:var(--panel-w);gap:var(--island-gap);box-shadow:none;background:0 0;flex-direction:column;display:flex;position:fixed;top:20px;bottom:12px;right:20px;overflow:visible}.panel-zone--layers,.gen-info-panel,.right-island{background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border-island);border-radius:var(--island-radius);box-shadow:none;overflow:hidden}.right-island{flex-direction:column;flex-shrink:0;display:flex}.right-island--flex:not(.right-island--collapsed){flex:var(--layers-grow,1) 1 0;min-height:0}.right-island--collapsed{flex:none}.right-island__header{flex-shrink:0;align-items:center;gap:4px;padding:8px 10px 8px 12px;display:flex}.right-island__toggle{min-width:0;color:var(--c-text-3);cursor:pointer;text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:6px;padding:0;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.right-island__chevron{color:var(--c-text-muted);flex-shrink:0;transition:transform .15s;transform:rotate(-90deg)}.right-island__chevron--open{transform:rotate(0)}.right-island__subtitle{color:var(--c-text-muted);white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-left:4px;font-weight:400;overflow:hidden}.right-island__actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.right-island__body{flex-direction:column;flex:1;min-height:0;display:flex}.right-island__body--scroll{overflow:hidden auto}.right-island__body--scroll::-webkit-scrollbar{width:2px}.right-island__body--scroll::-webkit-scrollbar-track{background:0 0}.right-island__body--scroll::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:2px}.right-island--properties{flex-shrink:0}.right-island--properties:not(.right-island--collapsed){flex:var(--props-grow,1) 1 0;min-height:80px}.right-island--properties>.right-island__body{min-height:0}.layer-panel-header{border-bottom:1px solid var(--c-border);flex-direction:row;flex-shrink:0;justify-content:space-between;align-items:center;height:34px;padding:0 8px 0 14px;display:flex}.layer-panel-title{color:var(--c-text-dim);font-family:Inter,sans-serif;font-size:13px;font-weight:600}.layer-panel-add{width:20px;height:20px;color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.layer-panel-add:hover{background:var(--c-surface2);color:var(--c-text)}.layer-bbox-row{background:var(--c-surface);cursor:pointer;border-radius:var(--radius-sm);flex-shrink:0;align-items:center;gap:8px;height:52px;margin:1px 4px;padding:0 8px;transition:background .12s;display:flex}.layer-bbox-row:hover{background:var(--c-surface3)}.layer-bbox-row--active{background:var(--c-accent-subtle);outline-offset:-1px;outline:1px solid #c2621a38}.layer-bbox-icon{border-radius:var(--radius-sm);background:var(--c-surface2);border:1px solid var(--c-border);width:38px;height:38px;color:var(--c-text-dim);flex-shrink:0;justify-content:center;align-items:center;display:flex}.layer-bbox-label{color:var(--c-text);flex:1;font-family:Inter,sans-serif;font-size:11.5px}.layer-bbox-dims{color:var(--c-text-muted);font-variant-numeric:tabular-nums;font-family:Inter,sans-serif;font-size:9px}.layer-list{flex:1;min-height:0;padding:4px 0;overflow-y:auto}.layer-list::-webkit-scrollbar{width:2px}.layer-list::-webkit-scrollbar-track{background:0 0}.layer-list::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:2px}.layer-row{height:var(--row-h);cursor:grab;border-radius:var(--radius-sm);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin:1px 4px;padding:0 8px;transition:background .12s;display:flex}.layer-row:active{cursor:grabbing}.layer-row:hover{background:var(--c-surface2)}.layer-row--active{outline-offset:-1px;outline:1px solid #c2621a47;background:#c2621a14!important}.layer-row--selected{background:color-mix(in srgb, var(--c-accent,#5b8af5) 8%, transparent);outline:1px solid color-mix(in srgb, var(--c-accent,#5b8af5) 25%, transparent);outline-offset:-1px;border-radius:var(--radius-sm)}.layer-row--hidden{opacity:.3}.layer-actions{opacity:.35;flex-direction:row;align-items:center;gap:0;margin-left:-4px;transition:opacity .12s;display:flex}.layer-row:hover .layer-actions,.layer-row--active .layer-actions{opacity:1}.layer-action{width:26px;height:26px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.layer-action:hover{color:var(--c-text);background:var(--c-surface3)}.layer-action--locked{cursor:default;opacity:.3}.layer-action--locked:hover{color:var(--c-text-dim);background:0 0}.layer-vis--off{opacity:.35}.layer-vis--off:hover{opacity:1}.layer-vis-toggle{width:20px;height:20px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;transition:color .12s,background .12s;display:flex}.layer-vis-toggle svg{width:14px;height:14px}.layer-vis-toggle:hover{color:var(--c-text);background:var(--c-surface3)}.layer-vis-toggle--off{color:var(--c-text-muted);opacity:.4}.layer-vis-toggle--off:hover{opacity:1}.layer-scene-addgroup{width:20px;height:20px;color:var(--c-text-dim);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;transition:color .12s,background .12s,opacity .12s;display:flex}.layer-row--scene:hover .layer-scene-addgroup{opacity:.7}.layer-scene-addgroup:hover{color:var(--c-text);background:var(--c-surface3);opacity:1}.layer-row--drop-target{box-shadow:inset 0 0 0 1px var(--c-accent);background:var(--c-accent-subtle)}.layer-toggles{flex-direction:column;flex-shrink:0;align-items:center;gap:1px;display:flex}.layer-cog-toggle{width:20px;height:18px;color:var(--c-text-muted);cursor:pointer;opacity:.55;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,background .12s,opacity .12s;display:flex}.layer-cog-toggle:hover{color:var(--c-text);background:var(--c-surface3);opacity:1}.layer-thumb{border-radius:var(--radius-sm);background:var(--c-surface2);border:1px solid var(--c-border);flex-shrink:0;justify-content:center;align-self:stretch;align-items:center;width:40px;margin:5px 0;transition:border-color .15s;display:flex;overflow:hidden}.layer-row:hover .layer-thumb{border-color:var(--c-border-hi)}.layer-thumb-img{object-fit:cover;width:100%;height:100%}.layer-thumb-color{border-radius:inherit;width:100%;height:100%}.layer-thumb-icon{color:var(--c-text-dim)}.layer-color-swatch{cursor:pointer;border-radius:6px;width:100%;height:100%;transition:filter .15s;display:block;position:relative}.layer-color-swatch:hover{filter:brightness(1.15)}.layer-color-swatch:after{content:"";pointer-events:none;border:2px solid #0000;border-radius:8px;transition:border-color .15s;position:absolute;inset:-2px}.layer-thumb:hover .layer-color-swatch:after{border-color:var(--c-accent)}.layer-color-input{opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.ctx-mask-blur-slider{appearance:none;background:var(--c-border-hi);cursor:pointer;touch-action:none;border-radius:2px;outline:none;flex-shrink:0;width:86px;height:4px}.ctx-mask-blur-slider::-webkit-slider-thumb{appearance:none;background:var(--c-accent);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px}.ctx-mask-blur-slider::-moz-range-thumb{background:var(--c-accent);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px}.layer-mask-chip{border-radius:var(--radius-sm);border:1px solid var(--c-border);cursor:pointer;background:#000;flex-shrink:0;align-self:stretch;width:52px;margin:6px 0;transition:border-color .15s;position:relative;overflow:hidden}.layer-mask-chip:hover{border-color:var(--c-border-hi)}.layer-mask-chip--active{outline:1px solid var(--c-accent);outline-offset:1px;border-color:var(--c-accent)!important}.layer-mask-thumb{object-fit:cover;filter:grayscale();width:100%;height:100%;display:block}.layer-mask-chip--disabled{opacity:.35}.layer-mask-chip--disabled .layer-mask-thumb{filter:grayscale()opacity(.5)}.layer-mask-chip-disabled{color:#fff;border-radius:var(--radius-sm);background:#00000073;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.layer-mask-chip-icon{color:#ffffffb3;line-height:0;position:absolute;bottom:2px;right:2px}.layer-info{flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:0;display:flex}.layer-type-badge{border-radius:var(--radius-sm);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:4px;width:fit-content;padding:1px 6px 1px 4px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;display:inline-flex}.badge-2d,.badge-color{background:var(--c-accent-subtle);color:var(--c-accent);border:1px solid #c2621a2e;margin-top:4px}.badge-camera{color:#5a8abf;background:#648cc821;border:1px solid #648cc838}.layer-type-badge--object{color:var(--c-text-2);background:#6478b41a;border:1px solid #6478b42e;margin-top:2px}.layer-name{white-space:nowrap;text-overflow:ellipsis;color:var(--c-text);font-family:Inter,sans-serif;font-size:12px;font-weight:400;overflow:hidden}.layer-name-input{font:inherit;background:var(--c-surface3);border:1px solid var(--c-accent);color:var(--c-text);border-radius:var(--radius-sm);outline:none;width:100%;padding:2px 6px;font-size:12px}.layer-badge{letter-spacing:.07em;text-transform:uppercase;border-radius:4px;align-items:center;gap:3px;width:fit-content;padding:1px 5px;font-family:Inter,sans-serif;font-size:8.5px;font-weight:500;display:inline-flex}.badge-3d{color:#257050;background:#24825017;border:1px solid #24825033}.badge-2d{color:#4540a0;background:#463caa17;border:1px solid #463caa2e}.badge-color{color:#9a4810;background:#c2621a17;border:1px solid #c2621a38}.layer-row--dragging{opacity:.35}.layer-row--scene{background:var(--c-surface-2)}.scene-collapse-btn{cursor:pointer;width:16px;height:16px;color:var(--c-text-muted);opacity:.5;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:flex}.scene-collapse-btn:hover{opacity:1}.layer-row--collection{background:var(--c-surface-1);text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-muted);cursor:default;font-size:10px}.layer-row--object{background:var(--c-surface-0);height:auto;padding-top:2px;padding-bottom:2px}.layer-row--object .layer-thumb--icon{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:40px;height:40px}.layer-collection-chevron{all:unset;cursor:pointer;color:var(--c-text-muted);flex-shrink:0;align-items:center;padding:0 4px 0 0;display:flex}.layer-collection-chevron:hover{color:var(--c-text)}.layer-thumb--icon{width:28px;height:28px;color:var(--c-text-muted);flex-shrink:0;justify-content:center;align-items:center;margin:0;display:flex}.prim-menu{background:var(--c-surface-2);border:1px solid var(--c-border);z-index:200;border-radius:6px;min-width:110px;padding:4px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #0000001a}.prim-menu-item{all:unset;box-sizing:border-box;width:100%;color:var(--c-text);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;font-size:11px;display:flex}.prim-menu-item:hover{background:var(--c-surface-act)}.ctx-active-object{color:var(--c-text-muted);white-space:nowrap;font-size:11px}.ctx-active-object-kind{opacity:.6}.layer-group{border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in srgb, var(--c-bg-2,var(--c-surface)) 40%, transparent);border-left:none;margin:4px 0 4px 4px;padding-top:2px;padding-bottom:2px}.layer-group--over{border-left-color:var(--c-accent,#5b8af5);background:color-mix(in srgb, var(--c-accent,#5b8af5) 8%, transparent)}.layer-row--group{flex-wrap:wrap;gap:4px;height:auto;min-height:28px;padding-left:6px;font-weight:600}.layer-row--group .layer-info{gap:0;width:100%}.layer-group-header{align-items:center;gap:2px;width:100%;display:flex}.layer-row--group .layer-group-name{flex:1;min-width:0}.layer-group-chevron{all:unset;cursor:pointer;width:18px;height:20px;color:var(--c-text-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.layer-group-chevron:hover{color:var(--c-text-1)}.layer-group-children{margin-top:2px;padding-left:8px}.layer-group-name{color:var(--c-text);cursor:default;font-size:12px;font-weight:500}.layer-group-count{font:var(--f-mono);color:var(--c-text-3);margin-left:4px;font-size:9px}.layer-row--dragging-overlay{opacity:1;box-shadow:0 4px 12px #0000001f, 0 0 0 1px var(--c-border-act);background:var(--c-surface2);border-radius:var(--radius-sm)}.layer-load{width:22px;height:22px;color:var(--c-accent);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .12s,background .12s;display:flex}.layer-load:hover{background:var(--c-accent-subtle)}.gen-denoise-row{align-items:center;gap:8px;padding:4px 0 6px;display:flex}.gen-denoise-slider{appearance:none;background:var(--c-surface3);border:1px solid var(--c-border-hi);cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px}.gen-denoise-slider::-webkit-slider-thumb{appearance:none;background:linear-gradient(to bottom, var(--c-surface) 0%, var(--c-surface2) 100%);border:1.5px solid var(--c-accent);cursor:pointer;border-radius:3px;width:12px;height:20px;box-shadow:0 1px 3px #0000001a}.gen-denoise-slider::-webkit-slider-thumb:hover{box-shadow:0 0 0 3px var(--c-accent-glow)}.gen-denoise-value{font-variant-numeric:tabular-nums;color:var(--c-text);flex-direction:column;align-items:flex-end;gap:1px;min-width:56px;font-family:Inter,sans-serif;font-size:11px;display:flex}.gen-denoise-hint{color:var(--c-text-muted);letter-spacing:.04em;font-size:9px}.gen-mode-pill{align-items:center;gap:0;display:flex}.gen-mode-pill-btn{border:1px solid var(--c-border-hi);background:linear-gradient(to bottom, var(--c-surface), var(--c-surface2));height:28px;color:var(--c-text-muted);letter-spacing:.08em;box-shadow:0 1px 2px #00000014, 0 2px 4px #0000000a, inset 0 1px 0 var(--c-inset-highlight);text-transform:uppercase;cursor:pointer;border-radius:0;flex:1;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:all .15s;position:relative}.gen-mode-pill-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.gen-mode-pill-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.gen-mode-pill-btn+.gen-mode-pill-btn{margin-left:-1px}.gen-mode-pill-btn:hover:not(:disabled):not(.gen-mode-pill-btn--active){color:var(--c-text);z-index:1}.gen-mode-pill-btn:active:not(:disabled),.gen-mode-pill-btn--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act);z-index:2;transform:translateY(.5px);box-shadow:inset 0 2px 4px #0000001f,inset 0 1px 1px #0000000f}.gen-mode-pill-btn--active{transform:none}.gen-mode-pill-btn:disabled{opacity:.4;cursor:not-allowed}.gen-mode-pill-btn--soon{opacity:.45;font-style:italic}.props-drawer-wrap{top:0;right:calc(100% + var(--island-gap));pointer-events:none;flex-direction:row;align-items:flex-start;display:flex;position:absolute}.props-drawer-wrap--visible{pointer-events:auto}.props-drawer-wrap:not(.props-drawer-wrap--has-content){display:none}.props-drawer-toggle{background:var(--c-surface);border:1px solid var(--c-border-hi);width:16px;height:40px;color:var(--c-text-muted);cursor:pointer;pointer-events:auto;border-right:none;border-radius:6px 0 0 6px;flex-shrink:0;justify-content:center;align-items:center;margin-right:-1px;transition:color .12s,box-shadow .15s;display:flex;box-shadow:-2px 0 6px #00000014}.props-drawer-toggle:hover{color:var(--c-text)}.props-drawer{flex-direction:row;height:auto;display:flex}.props-drawer--visible{pointer-events:auto}.props-drawer--no-tabs .props-drawer__content{border-radius:var(--island-radius)}.props-drawer__content{width:var(--props-w);background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border-island);border-radius:var(--island-radius);flex-direction:column;max-height:calc(100vh - 120px);padding-bottom:10px;display:flex;overflow:hidden}.props-drawer__head{min-height:34px;color:var(--c-text-3);flex-shrink:0;justify-content:space-between;align-items:center;padding:0 8px 0 11px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.props-drawer__collapse{width:22px;height:22px;color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.props-drawer__collapse:hover{color:var(--c-text);background:var(--c-surface2)}.props-drawer__scroll{flex:1;min-height:0;padding:0 11px;overflow:visible auto}.props-drawer__scroll::-webkit-scrollbar{width:6px}.props-drawer__scroll::-webkit-scrollbar-track{background:0 0}.props-drawer__scroll::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:3px}.props-drawer__scroll::-webkit-scrollbar-thumb:hover{background:var(--c-border-act)}.props-drawer__tabs{flex-direction:column;flex-shrink:0;gap:0;margin:0;padding:0;display:flex}.props-tab{all:unset;writing-mode:vertical-rl;text-orientation:mixed;cursor:pointer;font-family:Inter,sans-serif;font-size:var(--fs-caption);font-weight:var(--fw-caption);letter-spacing:var(--tracking-caption);text-transform:uppercase;color:var(--c-caption);background:var(--c-surface3);border:1px solid var(--c-border-hi);border-radius:0 var(--radius-sm) var(--radius-sm) 0;border-left:none;flex-shrink:0;justify-content:center;align-items:center;margin-top:-1px;padding:10px 4px;transition:color .12s,background .12s,border-color .12s;display:flex}.props-tab:first-child{margin-top:0}.props-tab:hover:not(.props-tab--active){color:var(--c-text);background:var(--c-surface2)}.props-tab--active{color:var(--c-text);background:var(--c-surface);border-color:var(--c-border-hi);border-right-color:var(--c-surface);z-index:1}.bbox-props{flex-direction:column;display:flex}.bbox-props-section{flex-direction:column;gap:6px;display:flex}.bbox-props-title{letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted);margin-bottom:2px;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.bbox-props-row{align-items:center;gap:8px;display:flex}.bbox-props-label{letter-spacing:.06em;color:var(--c-text-muted);flex-shrink:0;width:20px;font-family:Inter,sans-serif;font-size:9px}.bbox-props-input{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);height:26px;color:var(--c-text);flex:1;padding:0 6px;font-family:Inter,sans-serif;font-size:11px;box-shadow:inset 0 1px 2px #0000000a}.bbox-props-input:focus{border-color:var(--c-border-act)}.bbox-props-lock{cursor:pointer;color:var(--c-text-muted);background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;padding:2px;transition:color .12s;display:flex}.bbox-props-lock:hover{color:var(--c-text)}.bbox-props-lock--on{color:var(--c-accent)}.bbox-reset-btn{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;width:100%;height:26px;color:var(--c-text-muted);cursor:pointer;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);font-family:Inter,sans-serif;font-size:9px;transition:all .12s}.bbox-reset-btn:hover{color:var(--c-text);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.bbox-props-scales{gap:0;display:flex}.bbox-props-scale{background:var(--c-surface);border:1px solid var(--c-border);letter-spacing:.04em;height:26px;color:var(--c-text-muted);cursor:pointer;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);flex:1;font-family:Inter,sans-serif;font-size:9px;transition:all .12s}.bbox-props-scale:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.bbox-props-scale:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.bbox-props-scale:not(:last-child){border-right:none}.bbox-props-scale:hover:not(.bbox-props-scale--active){color:var(--c-text);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.bbox-props-scale--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act);box-shadow:inset 0 1px 3px #00000014}.bbox-ratio-row{align-items:center;gap:4px;display:flex}.bbox-ratio-row>.chat-model-select-wrap{flex:1;min-width:0;max-width:none}.bbox-ratio-row>.chat-model-select-wrap .chat-model-select{border-right:1px solid var(--c-border)!important;border-radius:8px!important}.bbox-output-readout{color:var(--c-text-muted);text-align:center;margin-top:2px;font-family:Inter,sans-serif;font-size:10px}.props-drawer__content .chat-model-select,.pd-island-body .chat-model-select{letter-spacing:.04em;text-align:center;text-align-last:center;padding:5px 18px;font-size:10px;font-weight:500;border-right:1px solid var(--c-border)!important;border-radius:8px!important}.props-drawer__content .chat-model-dropdown-item,.pd-island-body .chat-model-dropdown-item{letter-spacing:.04em;text-align:center;white-space:nowrap;justify-content:center;padding:5px 10px;font-size:11px}.pd-island-body{flex-direction:column;padding:10px 11px 16px;display:flex}.pd-island-empty{color:var(--c-text-muted);text-align:center;padding:14px 12px;font-family:Inter,sans-serif;font-size:11px;font-style:italic}.bbox-ratio-flip{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:22px;height:22px;color:var(--c-text);cursor:pointer;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex}.bbox-ratio-flip:hover:not(:disabled){color:var(--c-accent);border-color:var(--c-border-act)}.bbox-ratio-flip:disabled{opacity:.35;cursor:default}.bbox-props-res{color:var(--c-text-dim);text-align:center;padding-top:2px;font-family:Inter,sans-serif;font-size:10px}.bbox-props-compare{border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface3);width:100%;height:28px;color:var(--c-text-dim);cursor:pointer;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.bbox-props-compare:hover:not(:disabled){background:var(--c-surface-deep);border-color:var(--c-border-act);color:var(--c-text)}.bbox-props-compare:disabled{opacity:.4;cursor:not-allowed}.genmask-tools-grid{grid-template-columns:repeat(auto-fill,37px);gap:4px;display:grid}.genmask-tool-btn{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:37px;height:37px;color:var(--c-text-muted);cursor:pointer;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);justify-content:center;align-items:center;transition:all .12s;display:flex}.genmask-tool-btn svg{width:18px;height:18px}.props-drawer__content--compact{width:150px}.props-drawer__content--compact .genmask-tools-grid,.props-drawer__content--compact .layer2d-actions{grid-template-columns:repeat(2,37px);justify-content:center}.props-drawer__content--compact .layer2d-action-btn{aspect-ratio:auto;width:37px;height:37px}.props-drawer__content--compact .layer2d-action-btn svg{width:18px;height:18px}.props-drawer__content--compact .pd-scrub-field{width:52px}.props-drawer__content--compact .pd-scrub-row{gap:4px}.props-drawer__content--compact .pd-transform-row{flex-direction:column;gap:6px}.props-drawer__content--compact .pd-scrub-row--inline{flex:none;width:100%}.props-drawer__content--compact .pd-scrub-field--inline{flex:none;width:44px}.props-drawer__content--mask .props-drawer__scroll{padding-left:9px;overflow-y:hidden}.props-drawer__content--mask .props-drawer__scroll::-webkit-scrollbar{display:none}.genmask-tools-grid--16x9 .genmask-tool-btn{aspect-ratio:16/9}.brush-palette{grid-template-columns:repeat(6,1fr);gap:4px;display:grid}.brush-swatch{aspect-ratio:1;border:1px solid var(--c-border);border-radius:var(--radius-xs,3px);cursor:pointer;width:100%;color:var(--c-text-muted);background:0 0;justify-content:center;align-items:center;padding:0;font-size:11px;line-height:1;transition:transform 80ms,border-color .12s;display:flex}.brush-swatch:hover{border-color:var(--c-text);transform:scale(1.08)}.brush-swatch--active{outline:1.5px solid var(--c-accent);outline-offset:1px}.brush-swatch--empty{background:linear-gradient(45deg, transparent 46%, var(--c-border) 46%, var(--c-border) 54%, transparent 54%), var(--c-surface);cursor:default;pointer-events:none;opacity:.35}.brush-swatch--empty:hover{transform:none}.brush-swatch--add{background:var(--c-surface);font-weight:600}.genmask-tool-btn:hover:not(.genmask-tool-btn--active){color:var(--c-text);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.genmask-tool-btn--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act);box-shadow:inset 0 1px 3px #00000014}.genmask-warning{letter-spacing:.04em;color:var(--c-text-muted);text-align:center;padding:4px 0 2px;font-family:Inter,sans-serif;font-size:8px;display:block}.layer2d-actions{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.layer2d-action-btn{aspect-ratio:1;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);color:var(--c-text-muted);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:all .12s;display:flex}.layer2d-action-btn svg{width:20px;height:20px}.layer2d-action-btn span{display:none}.layer2d-action-btn:hover:not(.layer2d-action-btn--active):not(:disabled){color:var(--c-text);background:var(--c-surface2)}.layer2d-action-btn:disabled{opacity:.35;cursor:not-allowed}.layer2d-action-btn--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act);box-shadow:inset 0 1px 3px #00000014}.pd-section{padding:0 2px 10px}.pd-section__header{align-items:center;gap:4px;margin-bottom:0;padding:10px 0 6px;display:flex}.pd-section__chevron{color:var(--c-text-muted);font-size:10px;line-height:1}.pd-section__title{font-family:Inter,sans-serif;font-size:var(--fs-title);font-weight:var(--fw-title);letter-spacing:var(--tracking-title);text-transform:uppercase;color:var(--c-title)}.pd-section__actions{align-items:center;gap:2px;margin-left:auto;display:inline-flex}.pd-section__sublabel{letter-spacing:0;color:var(--c-text-muted);white-space:nowrap;margin-left:auto;font-family:Inter,sans-serif;font-size:9px}.pd-section__reset{cursor:pointer;color:var(--c-text-dim);background:0 0;border:none;align-items:center;margin-left:auto;padding:2px;transition:color .15s;display:flex}.pd-section__reset:hover{color:var(--c-text)}.pd-axis-lock{width:22px;height:22px;color:var(--c-text-3);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:color .12s,border-color .12s;display:flex}.pd-section__actions .pd-axis-lock{margin-left:0}.pd-axis-lock:hover{color:var(--c-text);border-color:var(--c-border)}.pd-axis-lock--on{color:var(--c-accent);border-color:var(--c-accent)}.pd-field-group{margin-bottom:10px}.pd-field-group__label{letter-spacing:.06em;text-transform:uppercase;color:var(--c-text-muted);margin-bottom:4px;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.pd-field-row{align-items:center;gap:5px;margin-bottom:3px;display:flex}.pd-field-row__axis{letter-spacing:.04em;color:var(--c-text-muted);flex-shrink:0;width:10px;font-family:Inter,sans-serif;font-size:9px;font-weight:600}.pd-field-row__input{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);min-width:0;height:22px;color:var(--c-text);text-align:right;outline:none;flex:1;padding:0 6px;font-family:Inter,sans-serif;font-size:10px;transition:border-color .12s}.pd-field-row__input:not(:disabled):focus{border-color:var(--c-accent)}.pd-field-row__input:disabled{opacity:.55;cursor:default}.pd-section__body{flex-direction:column;gap:8px;padding-bottom:2px;display:flex}.pd-row{align-items:center;gap:8px;min-height:26px;display:flex}.pd-row--knob{align-items:center;gap:6px}.pd-row__label{letter-spacing:.05em;text-transform:uppercase;color:var(--c-text-muted);flex:1;font-family:Inter,sans-serif;font-size:10px;font-weight:500}.pd-row__value{color:var(--c-text-dim);text-align:right;flex-shrink:0;min-width:24px;font-family:Inter,sans-serif;font-size:9px}.pd-nav-modes{gap:4px;display:flex}.pd-nav-mode-btn{all:unset;font:var(--f-mono);text-transform:uppercase;letter-spacing:.03em;border-radius:var(--radius-sm);color:var(--c-text-2);cursor:pointer;background:var(--c-surface2,var(--c-bg));border:1px solid var(--c-border);padding:3px 8px;font-size:9px}.pd-nav-mode-btn:hover{background:var(--c-surface);border-color:var(--c-border-hi,var(--c-border))}.pd-nav-mode-btn--active{color:var(--c-text-1);background:var(--c-accent-soft,#c2621a1f);border-color:var(--c-accent,#c2621a)}.pd-toggle{all:unset;background:var(--c-border-hi);cursor:pointer;border-radius:9px;flex-shrink:0;width:34px;height:18px;transition:background .15s;position:relative}.pd-toggle:after{content:"";background:var(--c-surface);border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:3px;left:3px}.pd-toggle--on{background:var(--c-accent)}.pd-toggle--on:after{transform:translate(16px)}.pd-knob{cursor:ns-resize;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0}.pd-knob--disabled{opacity:.45;cursor:default}.pd-btn{all:unset;text-align:center;letter-spacing:.06em;text-transform:uppercase;width:100%;color:var(--c-text-dim);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;padding:5px 0;font-family:Inter,sans-serif;font-size:9px;font-weight:500;transition:background .12s,color .12s;display:block}.pd-btn:hover:not(:disabled){background:var(--c-surface3);color:var(--c-text)}.pd-btn:disabled{opacity:.45;cursor:default}.pd-btn--active{background:var(--c-accent-subtle);border-color:var(--c-accent);color:var(--c-accent-hi)}.pd-btn--active:hover:not(:disabled){background:var(--c-accent-glow);color:var(--c-accent-hi)}.pd-chip-row{flex-wrap:wrap;gap:4px;display:flex}.pd-chip{all:unset;letter-spacing:.05em;text-transform:uppercase;color:var(--c-text-muted);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;padding:5px 9px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:background .12s,color .12s,border-color .12s}.pd-chip--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-accent)}.pd-chip:disabled{opacity:.45;cursor:default}.pd-figure-row{gap:6px;display:flex}.pd-figure-chip{all:unset;height:32px;color:var(--c-text-muted);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;flex:1;justify-content:center;align-items:center;transition:background .12s,color .12s,border-color .12s;display:flex}.pd-figure-chip:hover{color:var(--c-text);border-color:var(--c-border-hi)}.pd-figure-chip--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-accent)}.pd-color-swatch{border-radius:var(--radius-sm);border:1px solid var(--c-border);cursor:pointer;flex:1;height:26px}.pd-color-well-wrap{aspect-ratio:1;border-radius:var(--radius-sm);border:1px solid var(--c-border);cursor:pointer;width:100%;overflow:hidden}.pd-color-well-wrap--inline{aspect-ratio:auto;flex-shrink:0;width:32px;height:26px}.pd-color-inline{align-items:center;gap:8px;min-height:26px;display:flex}.pd-color-well{cursor:pointer;border:none;width:100%;height:100%;padding:0;display:block}.pd-color-well::-webkit-color-swatch-wrapper{padding:0}.pd-color-well::-webkit-color-swatch{border:none}.pd-color-well::-moz-color-swatch{border:none}.pd-color-hex{box-sizing:border-box;text-align:right;min-width:0;height:26px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);flex:1;padding:0 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:border-color .12s}.pd-color-hex:hover{border-color:var(--c-accent)}.pd-color-hex:focus{border-color:var(--c-accent);outline:none}.pd-scrub-row{align-items:center;gap:8px;min-height:26px;display:flex}.pd-scrub-row--inline{flex:1;gap:0;min-width:0}.pd-transform-row{flex-direction:row;gap:3px}.pd-scrub-field.pd-scrub-field--inline{flex:1;justify-content:flex-end;gap:0;width:auto;min-width:0;padding:0 3px 0 10px;font-size:10px;position:relative}.pd-scrub-field__label{letter-spacing:0;text-transform:uppercase;color:var(--c-text-dim);opacity:.7;font-family:Inter,sans-serif;font-size:7px;font-weight:600;position:absolute;top:2px;left:3px}.pd-scrub-row__label{letter-spacing:.05em;text-transform:uppercase;color:var(--c-text-muted);flex:none;font-family:Inter,sans-serif;font-size:10px;font-weight:500}.pd-scrub-field{box-sizing:border-box;background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:56px;height:24px;color:var(--c-text);text-align:right;cursor:ew-resize;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:flex-end;align-items:center;margin-left:auto;padding:0 8px;font-family:Inter,sans-serif;font-size:12px;font-weight:400;transition:border-color .12s;display:flex}.pd-scrub-field:hover:not(.pd-scrub-field--disabled){border-color:var(--c-accent)}.pd-scrub-field--editing{cursor:text;border-color:var(--c-accent);outline:none;padding:0 8px;display:block}.pd-scrub-field--disabled{cursor:default;opacity:.5;pointer-events:none}.pd-empty-hint{color:var(--c-text-3);padding:4px 0;font-size:10px}.pd-primitive-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.pd-prim-wrap{position:relative}.pd-prim-tooltip{background:var(--c-surface-inv,#1a1a1a);color:var(--c-text-inv,#f0ece6);white-space:nowrap;pointer-events:none;opacity:0;z-index:100;border-radius:3px;padding:3px 6px;font:9px/1 Inter,sans-serif;transition:opacity 80ms;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.pd-prim-wrap:hover .pd-prim-tooltip{opacity:1}.pd-primitive-btn{all:unset;border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-surface2);color:var(--c-text-muted);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;width:100%;padding:5px;transition:background .12s,color .12s,border-color .12s;display:flex}.pd-primitive-btn svg{width:22px;height:22px}.pd-primitive-btn:hover{background:var(--c-surface3);color:var(--c-text);border-color:var(--c-border-hi)}.pd-primitive-btn--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-accent)}.pd-gizmo-grid{grid-template-columns:repeat(5,1fr);gap:0;display:grid}.pd-gizmo-btn{background:var(--c-surface);color:var(--c-text-dim);cursor:pointer;border:none;border-radius:0;justify-content:center;align-items:center;padding:8px 0;transition:all .12s;display:flex}.pd-gizmo-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.pd-gizmo-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.pd-gizmo-btn:hover:not(.pd-gizmo-btn--active){color:var(--c-text);background:var(--c-surface2)}.pd-gizmo-btn--active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-act)}.pd-gizmo-actions{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.pd-gizmo-action{background:var(--c-surface);color:var(--c-text-dim);cursor:pointer;border-radius:var(--radius-sm);border:none;justify-content:center;align-items:center;padding:10px 0;transition:color .12s,background .12s;display:flex}.pd-gizmo-action:hover{color:var(--c-text);background:var(--c-surface2)}.pd-gizmo-action--active{color:var(--c-accent);background:var(--c-accent-subtle)}.pd-lens-body{flex-direction:column;align-items:center;padding-top:14px;padding-bottom:16px;display:flex}.pd-fov-barrel-wrap{flex-direction:column;align-items:center;gap:12px;padding:6px 0 0;display:flex}.pd-fov-barrel-row{justify-content:center;align-items:center;gap:6px;width:100%;display:flex}.pd-fov-label{letter-spacing:.08em;color:var(--c-text-dim);text-transform:uppercase;pointer-events:none;z-index:3;font-family:Inter,sans-serif;font-size:10px;font-weight:500;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.pd-fov-label--left{left:6px}.pd-fov-label--right{right:6px}.pd-fov-readout{justify-content:center;align-items:baseline;gap:2px;display:flex}.pd-fov-mm-num{font-variant-numeric:tabular-nums;color:var(--c-accent);letter-spacing:-.01em;font-family:Inter,sans-serif;font-size:28px;font-weight:500;line-height:1}.pd-fov-mm-unit{color:var(--c-text-muted);letter-spacing:.1em;text-transform:uppercase;font-family:Inter,sans-serif;font-size:11px;font-weight:500;line-height:1.4}.pd-light-section{padding-bottom:14px}.pd-light-sphere-wrap{justify-content:center;padding:4px 0 2px;display:flex}.pd-light-sphere{touch-action:none;-webkit-user-select:none;user-select:none;border-radius:50%;max-width:100%;display:block}.pd-sphere-base{fill:#6b6058}.pd-spread-slider{appearance:none;background:var(--c-border-hi);cursor:pointer;border-radius:2px;outline:none;flex:1;min-width:0;height:4px}.pd-spread-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--c-accent);border:2px solid var(--c-surface);cursor:pointer;border-radius:50%;width:14px;height:14px}.pd-empty-state{letter-spacing:.06em;color:var(--c-text-muted);text-align:center;padding:20px 10px;font-family:Inter,sans-serif;font-size:9px;line-height:1.5}.pd-placeholder{letter-spacing:.06em;text-transform:uppercase;color:var(--c-text-muted);text-align:center;padding:16px 10px;font-family:Inter,sans-serif;font-size:9px}.qa-verdict-row{align-items:center;gap:6px;display:flex}.qa-verdict{letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-sm);padding:2px 6px;font-family:Inter,sans-serif;font-size:9px;font-weight:600}.qa-verdict--pass{color:#5a8a4a;background:#5a8a4a1f}.qa-verdict--fail{color:#b84a3a;background:#b84a3a1f}[data-theme=dark] .qa-verdict--pass{color:#6ea85a;background:#6ea85a24}[data-theme=dark] .qa-verdict--fail{color:#d06050;background:#d0605024}.qa-verdict-summary{color:var(--c-text-muted);font-size:10px}.qa-progress{color:var(--c-text-muted);text-align:center;letter-spacing:.06em;padding:4px 0;font-family:Inter,sans-serif;font-size:9px}.qa-label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.qa-textarea,.qa-region-textarea{resize:none;border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface3);color:var(--c-text);padding:6px 8px;font-family:inherit;font-size:11px;line-height:1.45}.qa-textarea:focus,.qa-region-textarea:focus{border-color:var(--c-border-act);outline:none}.qa-region-textarea{field-sizing:content;min-height:36px;font-size:10px;overflow:hidden}.qa-runall-row{justify-content:stretch;margin-bottom:4px;display:flex}.qa-runall-btn{background:var(--c-accent);color:#fff;letter-spacing:.02em;cursor:pointer;border:none;border-radius:20px;flex:1;justify-content:center;align-items:center;gap:4px;height:26px;padding:0 10px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .12s;display:inline-flex}.qa-runall-btn:hover{background:var(--c-accent-hi)}.qa-runall-btn:disabled{opacity:.4;cursor:not-allowed}.qa-runall-btn--cancel{background:var(--c-surface3);color:var(--c-text-dim);border:1px solid var(--c-border-hi)}.qa-runall-btn--cancel:hover{background:var(--c-surface-deep)}.qa-region-card{border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-surface);flex-direction:column;gap:4px;padding:6px 8px;transition:border-color .15s,opacity .15s;display:flex}.qa-region-card--fail{border-color:var(--c-border-hi)}.qa-region-card--selected{border-color:var(--c-accent);background:var(--c-accent-subtle)}.qa-region-card--active{border-color:var(--c-border-act);box-shadow:0 0 0 2px var(--c-accent-glow)}.qa-region-card--dimmed{opacity:.55}.qa-region-card--dimmed:hover{opacity:.85}.qa-region-header{justify-content:space-between;align-items:flex-start;gap:4px;min-height:16px;display:flex}.qa-region-header-left{flex:1;align-items:center;gap:5px;min-width:0;display:flex}.qa-region-title{color:var(--c-text);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;line-height:1.3;overflow:hidden}.qa-region-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.qa-region-dot--pass{background:#5a8a4a}[data-theme=dark] .qa-region-dot--pass{background:#6ea85a}.qa-region-check{width:12px;height:12px;accent-color:var(--c-accent);cursor:pointer;flex-shrink:0}.qa-region-meta{align-items:center;gap:4px;display:flex}.qa-region-badge{letter-spacing:.08em;text-transform:uppercase;border-radius:3px;flex-shrink:0;padding:1px 4px;font-family:Inter,sans-serif;font-size:8px;font-weight:500;line-height:1.4}.qa-region-badge--pass{color:#5a8a4a;background:#5a8a4a1a}.qa-region-badge--fail{color:#b84a3a;background:#b84a3a1a}[data-theme=dark] .qa-region-badge--pass{color:#6ea85a;background:#6ea85a1f}[data-theme=dark] .qa-region-badge--fail{color:#d06050;background:#d060501f}.qa-region-sev{letter-spacing:.08em;text-transform:uppercase;font-family:Inter,sans-serif;font-size:8px;font-weight:500;line-height:1.4}.qa-region-sev--critical{color:#b84a3a}.qa-region-sev--major{color:#b07830}.qa-region-sev--minor{color:#9a8a30}[data-theme=dark] .qa-region-sev--critical{color:#d06050}[data-theme=dark] .qa-region-sev--major{color:#d0983e}[data-theme=dark] .qa-region-sev--minor{color:#c0b050}.qa-region-location{color:var(--c-text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:10px;font-style:italic;line-height:1.35;display:-webkit-box;overflow:hidden}.qa-region-prompt{flex-direction:column;gap:2px;display:flex}.qa-region-actions{flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;display:flex}.qa-region-region-btn,.qa-region-refs-btn,.qa-region-fix-btn{letter-spacing:.02em;cursor:pointer;border-radius:11px;align-items:center;gap:3px;height:22px;padding:0 8px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:background .12s,border-color .12s;display:inline-flex;position:relative}.qa-region-region-btn,.qa-region-refs-btn{background:var(--c-surface3);color:var(--c-text-dim);border:1px solid var(--c-border-hi)}.qa-region-region-btn:hover,.qa-region-refs-btn:hover{background:var(--c-surface-deep);border-color:var(--c-border-act)}.qa-region-region-btn--active{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.qa-region-region-btn--has-bbox{border-color:var(--c-border-act)}.qa-region-region-dot{background:var(--c-accent);border-radius:50%;width:5px;height:5px;margin-left:2px}.qa-region-refs-btn--open,.qa-region-refs-btn--has-refs{border-color:var(--c-border-act)}.qa-region-refs-badge{background:var(--c-accent);color:#fff;letter-spacing:0;text-align:center;border-radius:7px;min-width:12px;margin-left:2px;padding:1px 4px;font-size:8px;font-weight:600;line-height:1}.qa-region-fix-btn{background:var(--c-accent);color:#fff;border:none;margin-left:auto}.qa-region-fix-btn:hover{background:var(--c-accent-hi)}.qa-region-fix-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--c-accent)}.qa-region-refs{grid-template-columns:repeat(4,1fr);gap:4px;margin-top:2px;display:grid}.qa-region-refs .ref-slot{height:44px}button.qa-region-title{font:inherit;color:inherit;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;flex:1;min-width:0;margin:0;padding:0;font-size:11px;font-weight:500;overflow:hidden}button.qa-region-title:hover{color:var(--c-accent)}.qa-region-card--collapsed{gap:0}.qa-region-thumb{border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface3);width:100%;margin-top:2px;overflow:hidden}.qa-region-thumb img{object-fit:contain;background:var(--c-bg);width:100%;max-height:110px;display:block}.qa-region-fix-btn--cancel{background:var(--c-surface3);color:var(--c-text-dim);border:1px solid var(--c-border-hi);justify-content:center;width:28px;padding:0}.qa-region-fix-btn--cancel:hover{background:var(--c-surface-deep);border-color:var(--c-border-act);color:var(--c-text)}.pd-appearance{flex-direction:column;gap:8px;display:flex}.pd-appearance__tag-row{align-items:stretch;gap:8px;display:flex}.pd-appearance__tag{box-sizing:border-box;min-width:0;height:26px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);flex:1;padding:0 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:border-color .12s}.pd-appearance__tag:hover,.pd-appearance__tag:focus{border-color:var(--c-accent);outline:none}.pd-appearance__action{box-sizing:border-box;width:100%;height:26px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:0 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:border-color .12s}.pd-appearance__action::placeholder{color:var(--c-text-muted);font-style:italic}.pd-appearance__action:hover,.pd-appearance__action:focus{border-color:var(--c-accent);outline:none}.pd-appearance__add-action{height:22px;color:var(--c-text-muted);border:1px dashed var(--c-border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;align-self:flex-start;padding:0 8px;font-family:Inter,sans-serif;font-size:10.5px;font-weight:500;transition:color .12s,border-color .12s}.pd-appearance__add-action:hover{color:var(--c-text);border-color:var(--c-border-act)}.pd-scene-slot{flex-direction:column;gap:6px;display:flex}.pd-scene-slot__text{box-sizing:border-box;width:100%;height:26px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:0 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:border-color .12s}.pd-scene-slot__text::placeholder{color:var(--c-text-muted);font-style:italic}.pd-scene-slot__text:hover,.pd-scene-slot__text:focus{border-color:var(--c-accent);outline:none}.pd-scene-slot__textarea{box-sizing:border-box;width:100%;min-height:56px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);resize:vertical;padding:6px 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;line-height:1.4;transition:border-color .12s}.pd-scene-slot__textarea::placeholder{color:var(--c-text-muted);font-style:italic}.pd-scene-slot__textarea:hover,.pd-scene-slot__textarea:focus{border-color:var(--c-accent);outline:none}.right-resize-grip{cursor:ns-resize;z-index:20;background:0 0;flex:0 0 8px;margin:-8px 0;transition:background .15s}.right-resize-grip:hover,.right-resize-grip:active{background:var(--c-accent-glow)}.cam-bm-empty{color:var(--c-text-3);padding:6px 2px;font-size:11px}.cam-bm-list{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.cam-bm-tile{aspect-ratio:16/10;border:1px solid var(--c-border);background:var(--c-surface);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;width:100%;transition:border-color .12s;position:relative;overflow:hidden}.cam-bm-tile:hover{border-color:var(--c-border-hi)}.cam-bm-tile img{object-fit:cover;width:100%;height:100%;display:block}.cam-bm-tile__placeholder{background:linear-gradient(135deg,#7f7f7f1f,#7f7f7f38);width:100%;height:100%}.cam-bm-tile__name{font-family:Inter,sans-serif;font-size:11px;font-weight:var(--fw-body);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:linear-gradient(#0000 0%,#0000004d 40%,#000000b3 100%);border-radius:0 0 4px 4px;padding:14px 6px 4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.cam-bm-tile__name>span{pointer-events:auto}.cam-bm-tile__name-input{width:100%;font:inherit;color:#fff;border:1px solid var(--c-accent);pointer-events:auto;background:#00000073;border-radius:3px;outline:none;padding:1px 4px}.cam-bm-tile__actions{opacity:0;pointer-events:none;gap:3px;transition:opacity .12s;display:flex;position:absolute;top:3px;right:3px}.cam-bm-tile:hover .cam-bm-tile__actions{opacity:1;pointer-events:auto}.cam-bm-tile__btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:background .12s;display:inline-flex}.cam-bm-tile__btn:hover{background:var(--c-accent)}.cam-bm-tile--square{aspect-ratio:1!important}.cam-bm-tile--square img{object-fit:cover;background:var(--c-bg-2,#7f7f7f14)}.canvas-area{gap:var(--gap);background:var(--c-bg);flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.tools-overlay{z-index:80;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tools-overlay-card{background:color-mix(in srgb, var(--c-surface) 82%, transparent);border:1px solid var(--c-border);pointer-events:auto;border-radius:10px;flex-direction:column;align-items:center;gap:10px;min-width:160px;padding:18px 28px;display:flex}.tools-overlay-label{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-dim);font-family:Inter,sans-serif;font-size:10px}.tools-overlay-status{color:var(--c-text);font-size:11px;font-weight:500}.tools-overlay-cancel{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--c-border);color:var(--c-text-dim);cursor:pointer;background:0 0;border-radius:5px;padding:4px 12px;font-family:Inter,sans-serif;font-size:10px}.tools-overlay-cancel:hover{color:var(--c-text);border-color:var(--c-text-dim)}.canvas-statusbar{bottom:12px;right:calc(var(--panel-w) + 32px);color:var(--c-text-dim);background:var(--c-surface);border:1px solid var(--c-border-hi);pointer-events:auto;z-index:20;border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;font-family:Inter,sans-serif;font-size:11px;display:flex;position:fixed}.canvas-island .right-island__body{container:canvaspanel/inline-size}.canvas-island .canvas-statusbar{z-index:auto;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;width:auto;min-height:64px;margin:0 auto;padding:8px 12px;position:static;inset:auto}.canvas-island .canvas-statusbar-top,.canvas-island .canvas-statusbar-bottom{align-items:center}@container canvaspanel (width>=300px){.canvas-island .canvas-statusbar{flex-flow:row;justify-content:center;gap:14px}}.canvas-statusbar-top{align-items:center;gap:6px;display:flex}.canvas-statusbar-bottom{opacity:.5;align-items:center;gap:4px;font-size:11px;display:flex}.canvas-statusbar-fit{cursor:pointer;color:var(--c-text-dim);background:0 0;border:none;align-items:center;padding:0 2px;line-height:1;transition:color .1s;display:flex}.canvas-statusbar-fit:hover{color:var(--c-text)}.canvas-statusbar-field{border-radius:var(--radius-sm);color:var(--c-text-dim);background:0 0;border:none;padding:1px 4px;font-family:Inter,sans-serif;font-size:11px;transition:background .1s}.canvas-statusbar-field--scrub{cursor:ew-resize;-webkit-user-select:none;user-select:none}.canvas-statusbar-field:hover{background:var(--c-surface2);color:var(--c-text)}.canvas-statusbar-field--off{opacity:.35}.canvas-statusbar-sep{color:var(--c-text-muted);opacity:.6}.canvas-statusbar-input{width:60px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border-act);border-radius:var(--radius-sm);text-align:center;outline:none;padding:1px 4px;font-family:Inter,sans-serif;font-size:11px}.canvas-statusbar-select{color:var(--c-text-dim);border-radius:var(--radius-sm);cursor:pointer;appearance:none;background:0 0;border:none;outline:none;padding:1px 2px;font-family:Inter,sans-serif;font-size:11px}.canvas-statusbar-select:hover{background:var(--c-surface2);color:var(--c-text)}.gen-review-bar{background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border);z-index:20;pointer-events:auto;border-radius:8px;align-items:center;gap:2px;padding:4px 6px;animation:.2s ease-out gen-review-slide-up;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}@keyframes gen-review-slide-up{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.gen-review-counter{letter-spacing:.04em;color:var(--c-text);text-align:center;-webkit-user-select:none;user-select:none;min-width:48px;font-family:Inter,sans-serif;font-size:11px}.gen-review-sep{background:var(--c-border-hi);flex-shrink:0;width:1px;height:18px;margin:0 4px}.gen-review-btn{width:28px;height:28px;color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;transition:all .12s;display:flex}.gen-review-btn:hover:not(:disabled){background:var(--c-surface2);color:var(--c-text)}.gen-review-btn:active:not(:disabled){transform:scale(.92)}.gen-review-btn:disabled{opacity:.3;cursor:not-allowed}.gen-review-btn--active{color:var(--c-accent)}.gen-review-btn--accept{color:#3b9e5a}.gen-review-btn--accept:hover:not(:disabled){color:#2d8046;background:#3b9e5a1f}.gen-review-btn--discard{color:var(--c-text-dim)}.gen-review-btn--discard:hover:not(:disabled){color:#c83c3c;background:#c83c3c1a}.gen-review-btn--danger{color:var(--c-text-dim)}.gen-review-btn--danger:hover:not(:disabled){color:#c83c3c;background:#c83c3c1a}.canvas-toolbar-row{z-index:30;gap:var(--island-gap);align-items:center;display:flex;position:absolute;top:20px;left:50%;transform:translate(-50%)}.canvas-toolbar{background:color-mix(in srgb, var(--c-surface) 92%, transparent);border:1px solid var(--c-border-island);border-radius:var(--island-radius);gap:4px;padding:4px;display:flex;box-shadow:0 4px 12px #00000026}.canvas-toolbar-btn{width:30px;height:30px;color:var(--c-text-dim);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.canvas-toolbar-btn:hover{color:var(--c-text);background:var(--c-surface2)}.canvas-toolbar-btn--active{color:var(--c-accent);background:var(--c-accent-subtle)}.canvas-toolbar-btn:focus,.canvas-toolbar-btn:focus-visible{outline:none}.canvas-toolbar-btn--with-label{gap:3px;width:auto;min-width:38px;padding:0 6px}.canvas-toolbar-btn-label{letter-spacing:.04em;font-family:Inter,sans-serif;font-size:9px;font-weight:600}.canvas-toolbar-3d-wrap{position:relative}.canvas-toolbar-3d-menu{z-index:101;background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border-island);border-radius:var(--island-radius);flex-direction:column;gap:1px;width:max-content;padding:6px;display:flex;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 4px 12px #00000026}.canvas-toolbar-3d-item{color:var(--c-text-dim);text-align:left;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:background .1s,color .1s}.canvas-toolbar-3d-item:hover{background:var(--c-surface3);color:var(--c-text)}.canvas-toolbar-add-wrap{position:relative}.canvas-toolbar-add-menu{z-index:101;background:var(--c-surface);border:1px solid var(--c-border-island);border-radius:var(--island-radius);flex-direction:column;gap:1px;width:max-content;padding:6px;display:flex;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 4px 12px #00000026}.canvas-toolbar-add-item{color:var(--c-text-dim);text-align:left;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;transition:background .1s,color .1s}.canvas-toolbar-add-item:hover{background:var(--c-surface3);color:var(--c-text)}.canvas-toolbar-add-sep{background:var(--c-border-hi);height:1px;margin:4px 6px}.canvas-camera-island .canvas-toolbar-add-wrap{position:static}.canvas-camera-panel{z-index:101;background:var(--c-surface);border:1px solid var(--c-border-island);border-radius:var(--island-radius);flex-direction:row;align-items:flex-start;gap:14px;width:max-content;padding:12px;display:flex;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #00000026}.cam-card{flex-direction:column;gap:8px;min-width:0;display:flex}.cam-card__title{letter-spacing:.06em;text-transform:uppercase;color:var(--c-accent);white-space:nowrap;align-items:center;gap:8px;font-family:Inter,sans-serif;font-size:10px;font-weight:600;display:flex}.cam-card__body{flex-direction:column;gap:6px;display:flex}.cam-card__btns{flex-direction:column;gap:4px;display:flex}.cam-card--focal{align-self:stretch}.cam-focal{-webkit-user-select:none;user-select:none}.cam-focal__value{cursor:ew-resize;align-items:baseline;gap:4px;display:flex}.cam-focal__num{color:var(--c-accent);letter-spacing:-.01em;font-family:Inter,sans-serif;font-size:38px;font-weight:700;line-height:1}.cam-focal__unit{color:var(--c-text-dim);letter-spacing:.04em;font-family:Inter,sans-serif;font-size:13px;font-weight:600}.cam-focal__input{width:64px;color:var(--c-accent);background:var(--c-surface2);border:1px solid var(--c-accent);border-radius:var(--radius-sm);outline:none;padding:0 4px;font-family:Inter,sans-serif;font-size:32px;font-weight:700}.cam-sq-toggle{border:1.5px solid var(--c-text-dim);cursor:pointer;background:0 0;border-radius:3px;flex-shrink:0;width:13px;height:13px;padding:0;transition:background .12s,border-color .12s}.cam-sq-toggle:hover{border-color:var(--c-text)}.cam-sq-toggle--on{background:var(--c-accent);border-color:var(--c-accent)}.cam-icon-btn{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.cam-icon-btn:hover{color:var(--c-text);background:var(--c-surface2)}.cam-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.cam-row__label{color:var(--c-text-dim);font-family:Inter,sans-serif;font-size:11px}.cam-row2{gap:8px;display:flex}.cam-row3{gap:6px;display:flex}.cam-card--transform{flex-direction:row;gap:16px}.cam-transform-group{flex-direction:column;gap:6px;display:flex}.canvas-camera-panel .pd-scrub-field.pd-scrub-field--inline{align-items:flex-end;height:36px;padding-top:10px;padding-bottom:3px}.canvas-camera-panel .pd-scrub-field__label{opacity:.8;font-size:8px;top:4px}.canvas-camera-panel .pd-scrub-row{min-height:36px}.cam-speed-wrap{position:relative}.cam-speed-btn{color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:6px 14px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;transition:border-color .12s,background .12s}.cam-speed-btn:hover{background:var(--c-surface3);border-color:var(--c-accent)}.cam-speed-menu{z-index:102;background:var(--c-surface);border:1px solid var(--c-border-island);border-radius:var(--radius-sm);width:max-content;padding:4px 0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #00000026}.cam-speed-item{all:unset;box-sizing:border-box;width:100%;color:var(--c-text-dim);cursor:pointer;text-align:right;padding:6px 16px;font-family:Inter,sans-serif;font-size:13px;display:block}.cam-speed-item:hover{background:var(--c-surface3);color:var(--c-text)}.cam-speed-item--active{color:var(--c-text);font-weight:600}.cam-icon-btn--on{color:var(--c-accent);background:var(--c-accent-subtle)}.cam-icon-btn--on:hover{color:var(--c-accent)}.canvas-regions-island .canvas-toolbar-add-wrap{position:static}.canvas-bbox-panel{gap:22px}.canvas-bbox-panel .cam-card{min-width:0}.canvas-bbox-panel .chat-model-select-wrap{width:64px}.canvas-bbox-panel .cam-card__title{width:120px;height:20px}.canvas-bbox-panel .cam-card__title>.cam-icon-btn:last-child{margin-left:auto}.canvas-bbox-panel .bbox-output-row{align-items:center;gap:10px;display:flex}.canvas-bbox-panel .bbox-output-row .chat-model-select-wrap:first-child .chat-model-select{border-right:1px solid var(--c-border);border-radius:8px}.canvas-bbox-panel .bbox-output-readout{white-space:nowrap;color:var(--c-text-dim);font-family:Inter,sans-serif;font-size:10px}.canvas-bbox-panel .bbox-tools-grid{grid-template-columns:repeat(6,1fr);width:238px}.canvas-genmask-panel{gap:22px}.canvas-genmask-panel .cam-card{min-width:0}.canvas-genmask-panel .cam-card__title{height:20px}.canvas-genmask-panel .cam-card__title>.cam-icon-btn:last-child{margin-left:auto}.canvas-genmask-panel .genmask-tools-compact{grid-template-columns:repeat(6,1fr);gap:4px;width:238px}.canvas-genmask-panel .genmask-tools-compact .layer2d-action-btn svg{width:18px;height:18px}.canvas-genmask-panel .genmask-actions-compact{grid-template-columns:1fr;width:37px}.canvas-genmask-panel .cam-card__body>.pd-scrub-row{width:48px}.canvas-genmask-panel .cam-card__body>.pd-scrub-row .pd-scrub-field{width:100%}.canvas-lighting-island .canvas-toolbar-add-wrap{position:static}.canvas-lighting-panel{gap:22px}.canvas-lighting-panel .cam-card{min-width:0}.canvas-lighting-panel .cam-card__title{height:20px}.canvas-lighting-panel .lighting-dir-body{flex-direction:row;align-items:center;gap:18px}.canvas-lighting-panel .lighting-dir-body .cam-row2{flex-direction:column;gap:6px}.canvas-lighting-panel .pd-light-sphere-wrap{flex:none}.canvas-lighting-panel .pd-light-sphere{width:78px;height:78px}.canvas-lighting-panel .pd-row{min-width:132px}.canvas-lighting-panel .cam-card__body:not(.lighting-dir-body){gap:4px}.canvas-lighting-panel .pd-row,.canvas-lighting-panel .pd-scrub-row{min-height:22px}.canvas-views-panel{flex-direction:column;align-items:stretch;gap:8px}.canvas-camera-panel__head{align-items:center;gap:8px;display:flex}.canvas-camera-panel__title{letter-spacing:.06em;text-transform:uppercase;color:var(--c-accent);margin-right:auto;font-family:Inter,sans-serif;font-size:10px;font-weight:600}.cam-bm-list--strip{scrollbar-width:auto;flex-flow:row;gap:6px;max-width:min(820px,100vw - 96px);padding-bottom:8px;display:flex;overflow:auto hidden}.cam-bm-list--strip::-webkit-scrollbar{height:12px}.cam-bm-list--strip::-webkit-scrollbar-track{background:0 0}.cam-bm-list--strip::-webkit-scrollbar-thumb{background:var(--c-border-hi);background-clip:padding-box;border:3px solid #0000;border-radius:6px}.cam-bm-list--strip::-webkit-scrollbar-thumb:hover{background:var(--c-text-dim,var(--c-border-hi));background-clip:padding-box}.cam-bm-list--strip .cam-bm-tile{flex:0 0 106px;width:106px}.mode-tabs{--tab-count:3;background:var(--c-surface-deep);border-radius:10px;flex-shrink:0;align-items:stretch;gap:0;min-height:34px;padding:3px;display:flex;position:relative;box-shadow:inset 0 1px 3px #0000001f,inset 0 0 1px #00000014,0 1px 4px #0000001a,0 0 0 1px #0000000f}.mode-tabs:before{content:"";width:calc((100% - 6px) / var(--tab-count));background:var(--c-surface);height:calc(100% - 6px);box-shadow:0 1px 2px #00000014, 0 0 0 1px #0000000a, inset 0 1px 0 var(--c-inset-highlight);transform:translateX(calc(var(--tab-idx) * 100%));z-index:0;border-radius:8px;transition:transform .2s;position:absolute;top:3px;left:3px}.mode-tab{font-size:var(--fs-title);font-weight:var(--fw-title);letter-spacing:var(--tracking-title);text-transform:uppercase;color:color-mix(in srgb, var(--c-title) 45%, transparent);cursor:pointer;z-index:1;-webkit-user-select:none;user-select:none;white-space:nowrap;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;padding:5px 14px;font-family:Inter,sans-serif;transition:color .15s;display:flex;position:relative}.mode-tab:hover:not(.mode-tab--active){color:color-mix(in srgb, var(--c-title) 75%, transparent)}.mode-tab--active{color:var(--c-title)}.canvas-toolbar-mode{align-items:stretch}.canvas-toolbar-mode .chat-model-select-wrap{align-self:stretch;display:flex}.canvas-toolbar-mode .chat-model-sizer{height:30px}.canvas-toolbar-mode .chat-model-select{text-align:center;text-transform:uppercase;width:100%;font-size:var(--fs-title);font-weight:var(--fw-title);letter-spacing:var(--tracking-title);color:var(--c-accent);box-shadow:none;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding-left:14px;padding-right:28px;display:flex}.canvas-toolbar-mode .chat-model-select:hover{background:var(--c-surface2);color:var(--c-accent)}.canvas-toolbar-mode .chat-model-dropdown-item{text-align:center;text-transform:uppercase;justify-content:center;align-items:center;padding-top:7px;padding-bottom:7px;line-height:1;display:flex}.seam-strip{height:var(--contextbar-h);background:var(--c-bg);flex-shrink:0;display:none;box-shadow:inset 0 1px 2px #00000014}.ctx-nav-speed-wrap{z-index:9999;margin-left:6px;position:relative}.ctx-nav-speed-btn{font:var(--f-mono);color:var(--c-text-2);background:var(--c-surface2,var(--c-bg));border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;outline:none;padding:3px 8px;font-size:9px}.ctx-nav-speed-btn:hover{background:var(--c-surface);border-color:var(--c-border-hi,var(--c-border))}.pd-row .ctx-nav-speed-btn,.pd-row .ctx-nav-speed-item{font-size:12px}.ctx-nav-speed-menu{z-index:9999;background:var(--c-surface,#fff);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:max-content;padding:4px 0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #0000001f}.ctx-nav-speed-item{all:unset;box-sizing:border-box;width:100%;font:var(--f-mono);color:var(--c-text-2);cursor:pointer;text-align:right;padding:3px 8px;font-size:9px;display:block}.ctx-nav-speed-item:hover{background:var(--c-surface2);color:var(--c-text-1)}.ctx-nav-speed-item--active{color:var(--c-text-1);font-weight:600}.ctx-fov-barrel-outer{border-radius:4px;flex-shrink:0;width:126px;height:22px;position:relative;overflow:hidden}.ctx-fov-barrel{background:var(--c-surface3);border:1px solid var(--c-border-hi);cursor:ew-resize;-webkit-user-select:none;user-select:none;border-radius:4px;flex-shrink:0;width:22px;height:126px;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-50%)rotate(90deg)}[data-theme=dark] .ctx-fov-barrel{background:#1e1a14;border-color:#c8a05033}.ctx-fov-barrel-ticks{will-change:transform;position:absolute;top:0;left:0;overflow:visible}.ctx-fov-barrel-ticks line{stroke:#0000004d}[data-theme=dark] .ctx-fov-barrel-ticks line{stroke:#dcb97866}[data-theme=dark] .ctx-fov-barrel-ticks line.major{stroke:#dcb978a6}.ctx-fov-barrel-marker{background:var(--c-accent);pointer-events:none;z-index:2;height:4px;margin-top:-2px;position:absolute;top:50%;left:0;right:0}.ctx-fov-barrel-fade{pointer-events:none;background:linear-gradient(to bottom, var(--c-surface3) 0%, transparent 22%, transparent 78%, var(--c-surface3) 100%);border-radius:3px;position:absolute;inset:0}.ctx-shader-pill{background:var(--c-surface3);border:1px solid var(--c-border-hi);border-radius:5px;align-items:center;gap:1px;padding:2px;display:flex}.ctx-shader-btn{height:20px;color:var(--c-text-muted);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:0 6px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;transition:background .1s,color .1s}.ctx-shader-btn:hover{color:var(--c-text-dim)}.ctx-shader-btn--active{background:var(--c-surface);color:var(--c-text);border:1px solid var(--c-border-hi);box-shadow:0 1px 3px #00000014}.canvas-stage{background-color:var(--c-stage);contain:layout style;border:none;border-radius:0;flex:1;position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #0000001a,inset 0 0 2px #0000000f}.canvas-doc{will-change:transform;border-radius:2px;position:absolute;overflow:visible;box-shadow:0 0 0 1px #0000001a}.canvas-layer{width:100%;height:100%;position:absolute;inset:0}.canvas-layer--3d{z-index:10}.canvas-layer--2d{z-index:20;object-fit:contain;pointer-events:none}.canvas-layer--bg-img{z-index:5;object-fit:cover}.viewport-mount{width:100%;height:100%}.canvas-doc-dimmask{pointer-events:none;z-index:15;position:absolute;inset:0;box-shadow:0 0 0 9999px #0006}.uniform-scale-handle{transform-origin:50%;cursor:grab;z-index:10;pointer-events:auto;background:#ffe066;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;box-shadow:0 0 0 1.5px #00000059,0 2px 6px #0006}.z-depth-handle{transform-origin:50%;cursor:move;z-index:10;pointer-events:auto;background:#48f;border:2px solid #fff;border-radius:50%;width:20px;height:20px;position:absolute;box-shadow:0 0 0 1.5px #00000059,0 2px 6px #0006}.z-depth-pill{transform-origin:50%;cursor:ns-resize;z-index:10;pointer-events:auto;background:#48f;border:1.5px solid #fff;border-radius:4px;width:10px;height:24px;position:absolute;box-shadow:0 0 0 1.5px #00000059,0 2px 6px #0006}.canvas-doc--dropping{outline:2px dashed var(--c-accent);outline-offset:-2px}.drop-overlay{z-index:200;pointer-events:none;background:#c2621a0a;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.drop-overlay span{color:var(--c-accent-hi);border:1px dashed var(--c-accent);border-radius:var(--radius);letter-spacing:.05em;background:#c2621a14;padding:10px 20px;font-family:Inter,sans-serif;font-size:11px}.gen-progress-bar{background:var(--c-border);border-radius:2px;height:3px;margin:8px 0;overflow:hidden}.gen-progress-fill{background:var(--c-accent);border-radius:2px;height:100%;transition:width .5s ease-out}.gen-skeleton{background:linear-gradient(-45deg, var(--c-accent-subtle) 0%, var(--c-accent-glow) 40%, var(--c-accent-subtle) 60%, var(--c-accent-glow) 100%);border:1px dashed var(--c-border-act);background-size:400% 400%;border-radius:2px;animation:1.8s ease-in-out infinite gen-shimmer}@keyframes gen-shimmer{0%{background-position:100% 100%}50%{background-position:0 0}to{background-position:100% 100%}}.gen-gallery-backdrop{z-index:2000;background:#00000073;justify-content:center;align-items:center;padding:40px;display:flex;position:fixed;inset:0}.gen-gallery{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:8px;flex-direction:column;width:fit-content;max-width:1100px;max-height:85vh;display:flex;overflow:hidden;box-shadow:0 12px 48px #00000040}.gen-gallery-header{border-bottom:1px solid var(--c-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.gen-gallery-title{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:10px;font-weight:500}.gen-gallery-close{border:1px solid var(--c-border-hi);width:24px;height:24px;color:var(--c-text-dim);cursor:pointer;background:0 0;border-radius:12px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.gen-gallery-close:hover{background:var(--c-surface-deep);color:var(--c-text);border-color:var(--c-border-act)}.gen-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;padding:14px;display:grid;overflow-y:auto}.gen-gallery-thumb{aspect-ratio:1;background:var(--c-surface3);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);cursor:pointer;padding:0;transition:border-color .12s,transform .12s;position:relative;overflow:hidden}.gen-gallery-thumb:hover{border-color:var(--c-border-act)}.gen-gallery-thumb--current{border-color:var(--c-accent);box-shadow:0 0 0 2px var(--c-accent-glow)}.gen-gallery-thumb img{object-fit:cover;width:100%;height:100%;display:block}.gen-gallery-thumb-idx{color:#fff;letter-spacing:.04em;pointer-events:none;background:#0009;border-radius:3px;padding:2px 6px;font-family:Inter,sans-serif;font-size:9px;font-weight:600;position:absolute;top:6px;left:6px}.loupe{z-index:1500;background:var(--c-surface);border:1px solid var(--c-border-hi);-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 32px #00000038,0 4px 12px #0000001a}.loupe__title{background:var(--c-surface2);border-bottom:1px solid var(--c-border);cursor:grab;flex-shrink:0;justify-content:space-between;align-items:center;height:26px;padding:0 4px 0 10px;display:flex}.loupe__title:active{cursor:grabbing}.loupe__title-text{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.loupe__close{width:20px;height:20px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.loupe__close:hover{background:var(--c-surface-deep);color:var(--c-text)}.loupe__viewport{background:var(--c-bg);flex:auto;justify-content:center;align-items:center;min-height:140px;display:flex;position:relative;overflow:hidden}.loupe__img-frame{width:auto;max-width:100%;height:auto;max-height:100%;display:flex;position:relative}.loupe__crop-label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-muted);background:var(--c-surface2);border-top:1px solid var(--c-border);flex-shrink:0;padding:4px 10px 2px;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.loupe__crop-wrap{background:var(--c-bg);border-top:1px solid var(--c-border);flex:0 0 38%;justify-content:center;align-items:center;padding:8px;display:flex;overflow:hidden}.loupe__crop{object-fit:contain;background-color:var(--c-surface3);border-radius:var(--radius-sm);width:auto;max-width:100%;height:auto;max-height:100%;display:block}.loupe__img{object-fit:contain;width:100%;height:100%;display:block}.loupe__nav{color:#fff;cursor:pointer;background:#00000073;border:none;border-radius:12px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .12s,opacity .12s;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.loupe__nav:hover:not(:disabled){background:#000000a6}.loupe__nav:disabled{opacity:.25;cursor:default}.loupe__nav--prev{left:6px}.loupe__nav--next{right:6px}.loupe__footer{border-top:1px solid var(--c-border);background:var(--c-surface2);flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:6px 8px;display:flex}.loupe__meta{color:var(--c-text-dim);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-family:Inter,sans-serif;font-size:10px;overflow:hidden}.loupe__actions{flex-shrink:0;align-items:center;gap:3px;display:inline-flex}.loupe__btn{background:var(--c-surface3);border:1px solid var(--c-border-hi);height:22px;color:var(--c-text-dim);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:3px;padding:0 7px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.loupe__btn:hover{background:var(--c-surface-deep);border-color:var(--c-border-act);color:var(--c-text)}.loupe__btn--active{background:var(--c-accent-subtle);border-color:var(--c-accent);color:var(--c-accent)}.loupe__btn--primary{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.loupe__btn--primary:hover{background:var(--c-accent-hi);border-color:var(--c-accent-hi);color:#fff}.loupe__resize{cursor:nwse-resize;background:linear-gradient(135deg, transparent 50%, var(--c-border-hi) 50%, var(--c-border-hi) 60%, transparent 60%, transparent 70%, var(--c-border-hi) 70%, var(--c-border-hi) 80%, transparent 80%);width:14px;height:14px;position:absolute;bottom:0;right:0}body.resin-dragging-library-image .unified-overlay,body.resin-dragging-library-pose .unified-overlay{pointer-events:none!important}.chat-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.chat-messages{background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);outline:none;flex-direction:column;flex:1;gap:8px;min-height:0;margin:8px 10px;padding:10px;display:flex;position:relative;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{cursor:pointer;background:0 0}.chat-messages::-webkit-scrollbar-thumb{background:var(--c-border-hi);cursor:pointer;border-radius:2px}.chat-msg{align-items:flex-start;gap:6px;display:flex}.chat-msg--user{flex-direction:row-reverse}.chat-msg-icon{width:16px;height:16px;color:var(--c-accent);flex-shrink:0;justify-content:center;align-items:center;margin-top:3px;display:flex}.chat-msg-bubble{overflow-wrap:break-word;word-break:break-word;border-radius:10px;min-width:0;max-width:92%;padding:7px 10px;font-family:Inter,sans-serif;font-size:12px;font-weight:300;line-height:1.6}.chat-msg--assistant .chat-msg-bubble{background:var(--c-surface2);color:var(--c-text);border-radius:3px 10px 10px}.chat-msg--user .chat-msg-bubble{background:var(--c-accent);color:#fff;border-radius:10px 3px 10px 10px;font-weight:400}.chat-msg-bubble--thinking{align-items:center;gap:4px;padding:10px 14px;display:flex}.thinking-dot{background:var(--c-text-muted);border-radius:50%;width:4px;height:4px;animation:.9s ease-in-out infinite thinking}.thinking-dot:nth-child(2){animation-delay:.2s}.thinking-dot:nth-child(3){animation-delay:.4s}@keyframes thinking{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.chat-tool-action{border-left:2px solid var(--c-accent);background:color-mix(in srgb, var(--c-accent) 8%, transparent)}.chat-tool-label{text-transform:uppercase;letter-spacing:.1em;color:var(--c-accent);margin-bottom:2px;font-family:Inter,sans-serif;font-size:9px;display:block}.chat-tool-mode{text-transform:uppercase;letter-spacing:.08em;color:var(--c-bg);background:var(--c-accent);vertical-align:middle;border-radius:3px;margin-left:4px;padding:1px 5px;font-family:Inter,sans-serif;font-size:8px;display:inline-block}.chat-tool-reason{color:var(--c-text);font-size:12px}.chat-tool-stop{background:var(--c-surface3);border:1px solid var(--c-border-hi);color:var(--c-text-dim);cursor:pointer;border-radius:10px;margin-top:4px;padding:2px 8px;font-size:10px}.chat-tool-stop:hover{border-color:var(--c-border-act);color:var(--c-text)}.chat-split-handle{cursor:row-resize;flex-shrink:0;justify-content:center;align-items:center;height:6px;display:flex;position:relative}.chat-split-handle:after{content:"";background:var(--c-border-hi);border-radius:2px;width:32px;height:3px;transition:opacity .15s,background .15s}.chat-split-handle:hover:after{background:var(--c-accent)}.chat-input-area{flex-direction:column;flex-shrink:0;gap:8px;padding:10px;display:flex}.chat-input{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);color:var(--c-text);resize:none;outline:none;min-height:80px;padding:7px 9px;font-family:Inter,sans-serif;font-size:12px;font-weight:300;line-height:1.55;transition:border-color .15s,box-shadow .15s}.chat-input::placeholder{color:var(--c-text-muted);font-style:italic}.chat-input:focus{border-color:var(--c-border-hi);box-shadow:none;outline:none}.chat-input::-webkit-scrollbar{width:8px}.chat-input::-webkit-scrollbar-track{cursor:pointer;background:0 0}.chat-input::-webkit-scrollbar-thumb{background:var(--c-border-hi);cursor:pointer;border-radius:2px}:is(.chat-input:invalid,.chat-input:-moz-ui-invalid){box-shadow:none;outline:none}.chat-input:disabled{opacity:.5;cursor:not-allowed}.chat-action-row{gap:6px;margin-top:2px;display:flex}.chat-utility-row{justify-content:flex-start;gap:16px;padding:4px 0 18px;display:flex}.chat-utility-btn{all:unset;text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-muted);cursor:pointer;opacity:.6;align-items:center;gap:4px;font:600 11px/1 Inter,sans-serif;transition:opacity .15s;display:flex}.chat-utility-btn:hover:not(:disabled){opacity:1}.chat-utility-btn--active{opacity:1;color:var(--c-accent)}.chat-utility-btn:disabled{opacity:.25;cursor:default}.chat-btn{background:var(--c-surface3);height:28px;color:var(--c-text-dim);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);letter-spacing:.04em;cursor:pointer;flex:1 0;justify-content:center;align-items:center;gap:5px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .15s,box-shadow .15s,border-color .15s;display:flex}.chat-btn:hover:not(:disabled){background:var(--c-surface-deep);border-color:var(--c-border-act)}.chat-btn--primary{background:var(--c-accent);color:#fff;border-color:#0000}.chat-btn--primary:hover:not(:disabled){background:var(--c-accent-hi);box-shadow:0 0 0 3px var(--c-accent-glow);border-color:#0000}.chat-btn:disabled{opacity:.4;cursor:not-allowed}.chat-btn--busy{background:var(--c-surface3);border-color:var(--c-border-hi);color:var(--c-text-dim)}.chat-btn--square{flex:0 0 28px;width:28px;padding:0}.chat-btn--active{background:var(--c-accent);color:#fff;border-color:#0000}.chat-btn--active:hover:not(:disabled){background:var(--c-accent-hi);border-color:#0000}.chat-btn-group{flex:1;gap:0;display:flex}.chat-btn-group .chat-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none}.chat-btn-group .chat-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.spinner{border:1.5px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:9px;height:9px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-badge{color:#d06060;background:#c8464612;border:1px solid #c8464638;border-radius:8px;padding:3px 8px;font-family:Inter,sans-serif;font-size:10px}.btn-export{background:var(--c-surface2);height:22px;color:var(--c-text-dim);border:1px solid var(--c-border-hi);letter-spacing:.03em;cursor:pointer;border-radius:11px;align-items:center;gap:5px;padding:0 10px;font-family:Inter,sans-serif;font-size:10.5px;font-weight:500;transition:background .12s,color .12s;display:flex}.btn-export:hover{background:var(--c-surface3);color:var(--c-text)}.gen-mode-row{flex-shrink:0;align-items:center;gap:7px;display:flex}.gen-mode-label{letter-spacing:.11em;text-transform:uppercase;color:var(--c-text-muted);flex-shrink:0;font-family:Inter,sans-serif;font-size:8.5px;font-weight:500}.gen-mode-select{appearance:none;background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);color:var(--c-text);cursor:pointer;outline:none;flex:1;padding:4px 8px;font-family:Inter,sans-serif;font-size:10.5px;font-weight:500;transition:border-color .15s,box-shadow .15s}.gen-mode-select:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.gen-mode-select:disabled{opacity:.4;cursor:not-allowed}.gen-mode-hint{color:var(--c-text-muted);font-variant-numeric:tabular-nums;background:var(--c-accent-subtle);border-radius:var(--radius-sm);border:1px solid #c2621a2e;flex-shrink:0;padding:3px 6px;font-family:Inter,sans-serif;font-size:9.5px;line-height:1.4}.gen-info-panel>.right-island__body{gap:10px;padding:12px 12px 14px}.gen-info-panel--empty .gen-info-label,.gen-info-panel--empty .gen-info-value,.gen-info-panel--empty .gen-info-title,.gen-info-panel--empty .gen-info-reuse,.gen-info-panel--empty .gen-info-prompt{opacity:.3;pointer-events:none}.gen-info-header{justify-content:space-between;align-items:center;display:flex}.gen-info-title{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9.5px;font-weight:500}.gen-info-reuse{color:var(--c-text-dim);letter-spacing:.06em;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:4px;padding:2px 6px;font-family:Inter,sans-serif;font-size:9px;transition:color .12s,background .12s;display:flex}.gen-info-reuse:hover{color:var(--c-accent);background:var(--c-accent-subtle)}.gen-info-grid{flex-direction:column;gap:6px;display:flex}.gen-info-row{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.gen-info-label{color:var(--c-text-muted);flex-shrink:0;font-family:Inter,sans-serif;font-size:11px}.gen-info-value{color:var(--c-text-dim);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-family:Inter,sans-serif;font-size:11px;overflow:hidden}.gen-info-row--full{flex-direction:column;align-items:flex-start;gap:3px}.gen-info-prompt{white-space:pre-wrap;word-break:break-word;width:100%;max-height:110px;color:var(--c-text-dim);cursor:pointer;border-radius:var(--radius-sm);background:var(--c-surface2);border:1px solid var(--c-border-hi);padding:7px 9px;line-height:1.4;overflow-y:auto}.gen-info-prompt::-webkit-scrollbar{width:8px}.gen-info-prompt::-webkit-scrollbar-track{background:0 0}.gen-info-prompt::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:2px}.gen-info-value--clickable{cursor:pointer;border-radius:3px;padding:0 2px;transition:background .1s,color .1s}.gen-info-value--clickable:hover{background:var(--c-hover,#8080801a);color:var(--c-text)}.chat-show-me{color:var(--c-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;padding:6px 2px 2px;font-family:Inter,sans-serif;font-size:12px;transition:color .15s;display:flex}.chat-show-me:has(.chat-show-me-checkbox:checked){color:var(--c-accent)}.chat-show-me-checkbox{accent-color:var(--c-accent);cursor:pointer;flex-shrink:0;width:13px;height:13px}.chat-show-me:has(.chat-show-me-checkbox:disabled){opacity:.4;cursor:not-allowed}.chat-model-hint{cursor:pointer;border-radius:4px;justify-content:space-between;gap:4px;padding:4px 8px;display:flex}.chat-model-hint:hover{background:var(--c-hover)}.chat-model-hint span{text-transform:uppercase;letter-spacing:.04em;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px}.chat-model-row{gap:6px;padding:2px 0;display:flex}.chat-model-select-wrap{flex:0 auto;min-width:0;max-width:180px;position:relative}.chat-model-sizer{visibility:hidden;box-sizing:border-box;text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border:1px solid #0000;padding:6px 20px 6px 10px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;display:block;overflow:hidden}.chat-model-select-wrap:has(.chat-model-sizer) .chat-model-select{position:absolute;inset:0}.chat-model-select-wrap:not(:only-child):first-child .chat-model-select{border-right:none;border-radius:8px 0 0 8px}.chat-model-select-wrap:not(:only-child):last-child .chat-model-select{border-radius:0 8px 8px 0}.chat-model-select{text-align:left;background:var(--c-surface);border:1px solid var(--c-border);text-transform:uppercase;letter-spacing:.06em;width:100%;color:var(--c-text-dim);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;box-shadow:0 1px 2px #0000000f, inset 0 1px 0 var(--c-inset-highlight);border-radius:8px;padding:6px 20px 6px 10px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:color .12s,border-color .12s,box-shadow .12s;overflow:hidden}.chat-model-select:hover{border-color:var(--c-border-hi);color:var(--c-text);box-shadow:0 2px 4px #00000014, inset 0 1px 0 var(--c-inset-highlight)}.chat-model-select:focus{outline:none}.chat-model-select-wrap:after{content:"";pointer-events:none;border-left:3px solid #0000;border-right:3px solid #0000;border-top:4px solid var(--c-text-muted);width:0;height:0;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.chat-model-dropdown{background:var(--c-surface);border:1px solid var(--c-border-hi);z-index:100;border-radius:8px;padding:3px;position:absolute;top:calc(100% + 3px);left:0;right:0;overflow:hidden;box-shadow:0 4px 16px #0000001f,0 1px 3px #0000000f}.chat-model-dropdown-item{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-dim);white-space:nowrap;cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:6px 10px;font-family:Inter,sans-serif;font-size:10px;font-weight:600;transition:background .1s,color .1s;display:flex}.chat-model-dropdown-item:hover{background:var(--c-surface2);color:var(--c-text)}.chat-model-dropdown-item--active{color:var(--c-accent)}.chat-model-check{color:var(--c-accent);font-size:11px;line-height:1}.prompt-insert-wrap{flex:none;width:auto;max-width:140px}.prompt-insert-btn{align-items:center;display:flex}.prompt-insert-label{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.prompt-insert-dropdown{min-width:320px;max-width:420px;max-height:360px;right:auto;overflow-y:auto}.prompt-insert-dropdown .chat-model-dropdown-item{text-overflow:ellipsis;text-transform:none;letter-spacing:normal;font-weight:500;overflow:hidden}.gen-options-panel{border-top:1px solid var(--c-border);flex-direction:column;gap:6px;margin-top:2px;padding:8px 0 4px;display:flex}.gen-options-panel .gen-field{flex-direction:row;justify-content:space-between;align-items:center;gap:8px;display:flex}.gen-options-panel .gen-label{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-muted);flex-shrink:0;width:36px;font-family:Inter,sans-serif;font-size:9px}.gen-options-panel .gen-select,.gen-options-panel .gen-input{flex:1;min-width:0}.gen-options-panel .gen-seed-row{flex:1;gap:4px;display:flex}.prompt-bar{z-index:30;pointer-events:auto;width:840px;max-width:calc(100vw - var(--panel-w) - var(--left-w) - 48px);background:color-mix(in srgb, var(--c-surface) 88%, transparent);border:1px solid var(--c-border);border-radius:10px;flex-direction:column;padding:0;transition:bottom .2s;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 4px 24px #0000001f,0 1px 4px #0000000f}.prompt-bar-resize{cursor:ns-resize;z-index:2;justify-content:center;align-items:flex-start;height:14px;display:flex;position:absolute;top:0;left:16px;right:16px;overflow:hidden}.prompt-bar-resize:before{content:"";background:var(--c-border-hi);opacity:1;border-radius:3px;width:56px;height:6px;margin-top:3px;transition:background .12s}.prompt-bar-resize:hover:before{background:var(--c-text-dim)}.prompt-bar .gen-review-bar{border:none;border-bottom:1px solid var(--c-border);z-index:auto;background:0 0;border-radius:10px 10px 0 0;justify-content:center;padding:4px 8px;animation:none;position:static;transform:none}.prompt-bar-progress{border-radius:10px 10px 0 0;flex-shrink:0;height:2px;overflow:hidden}.prompt-bar-progress-fill{background:var(--c-accent);height:100%;transition:width .5s ease-out}.prompt-bar-main{flex-direction:column;align-items:stretch;gap:8px;padding:14px 8px 6px;display:flex}.prompt-bar-controls{align-items:center;gap:6px;width:100%;display:flex}.prompt-bar-controls .prompt-bar-generate{flex:none;order:-1}.prompt-bar-controls .prompt-bar-right-start{margin-left:auto}.prompt-bar-model{flex:none}.prompt-bar-model .chat-model-select{border-radius:6px;height:32px}.prompt-bar-model .chat-model-sizer{height:32px}.prompt-bar-input{resize:none;border:1px solid var(--c-border-hi);background:var(--c-surface2);width:100%;min-width:0;min-height:30px;color:var(--c-text);box-sizing:border-box;scrollbar-width:auto;border-radius:6px;outline:none;flex:none;height:auto;max-height:150px;padding:5px 18px 5px 10px;font-family:Inter,sans-serif;font-size:13px;line-height:1.4;transition:border-color .15s;overflow-y:auto}.prompt-bar-input:focus{border-color:var(--c-border-act)}.prompt-bar-input::placeholder{color:var(--c-text-muted);opacity:.6}.prompt-bar-input:disabled{opacity:.5}.prompt-bar-input::-webkit-scrollbar{width:20px}.prompt-bar-input::-webkit-scrollbar-track{background:0 0}.prompt-bar-input::-webkit-scrollbar-thumb{background:var(--c-text-dim);background-clip:padding-box;border:6px solid #0000;border-radius:10px}.prompt-bar-input::-webkit-scrollbar-thumb:hover{background:var(--c-text);background-clip:padding-box}.prompt-bar-icon-btn{border:1px solid var(--c-border-hi);background:var(--c-surface2);width:32px;height:32px;color:var(--c-text-muted);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:border-color .15s,color .15s,background .15s;display:flex;position:relative}.prompt-bar-icon-btn:hover{border-color:var(--c-border-act);color:var(--c-text)}.prompt-bar-icon-btn--active{border-color:var(--c-accent);color:var(--c-accent);background:var(--c-accent-subtle)}.prompt-bar-icon-btn--has-refs{color:var(--c-accent)}.prompt-bar-ref-badge{background:var(--c-accent);color:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.prompt-bar-generate{background:var(--c-accent);color:#fff;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;flex-shrink:0;height:32px;padding:0 14px;font-family:Inter,sans-serif;font-size:10px;font-weight:600;transition:opacity .15s,background .15s}.prompt-bar-generate:hover{opacity:.9}.prompt-bar-generate:disabled{opacity:.35;cursor:default}.prompt-bar-generate--cancel{background:var(--c-surface2);color:var(--c-text);border:1px solid var(--c-border-hi);min-width:110px;transition:opacity .15s;position:relative;overflow:hidden}.prompt-bar-generate--cancel:hover{border-color:var(--c-border-act);opacity:1}.prompt-bar-cancel-fill{background:var(--c-accent);border-radius:6px 0 0 6px;transition:width .5s ease-out;position:absolute;top:0;bottom:0;left:0}.prompt-bar-cancel-text{z-index:1;position:relative}.prompt-bar-error{color:#d06060;background:#c8464612;border:1px solid #c8464638;border-radius:6px;margin:0 8px;padding:2px 8px;font-family:Inter,sans-serif;font-size:10px}.prompt-bar-icon-btn--cog,.prompt-bar-icon-btn--chat{border-radius:6px;width:32px;height:32px}.prompt-bar-settings{grid-template-rows:0fr;transition:grid-template-rows .2s;display:grid}.prompt-bar-settings--open{grid-template-rows:1fr}.prompt-bar-settings-content{overflow:hidden}.prompt-bar-settings-content--visible{overflow:visible}.prompt-bar-options{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 8px 6px;display:flex}.prompt-bar:not(:has(.prompt-bar-refs--open)) .prompt-bar-settings--open .prompt-bar-options{padding-top:14px}.prompt-bar-options .chat-model-row{flex:none;min-width:0}.prompt-bar-seed{flex:none;align-items:center;gap:4px;min-width:0;display:flex}.prompt-bar-seed .gen-seed-row{flex:none;gap:3px}.prompt-bar-seed .gen-input{box-sizing:border-box;width:96px;height:32px}.prompt-bar-seed .gen-lock-btn{box-sizing:border-box;width:32px;height:32px}.prompt-bar-options .lib-thumb-slider{margin-left:auto}.prompt-bar-reset{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;color:var(--c-text-muted);opacity:.6;background:0 0;border:none;border-radius:3px;align-items:center;gap:3px;padding:4px 6px;font-family:Inter,sans-serif;font-size:9px;font-weight:600;transition:opacity .15s;display:flex}.prompt-bar-reset:hover{opacity:1}.prompt-bar-reset:disabled{opacity:.3;cursor:default}.review-prompt-bar-split{gap:4px;display:flex}.review-prompt-bar-retry{flex:none;background:var(--c-surface-hi)!important;color:var(--c-text)!important;padding:6px 10px!important}.review-prompt-bar-retry:hover{background:var(--c-border)!important}.prompt-bar-refs{grid-template-rows:0fr;transition:grid-template-rows .2s;display:grid}.prompt-bar-refs--open{grid-template-rows:1fr}.prompt-bar-refs-content{overflow:hidden}.prompt-bar-refs--open .prompt-bar-refs-content{padding:14px 8px 6px}.prompt-bar-refs-clear-all{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,background .12s;display:inline-flex}.prompt-bar-refs-clear-all:hover:not(:disabled){color:#e0552e;background:var(--c-surface3)}.prompt-bar-refs-clear-all:disabled{opacity:.35;cursor:default}.prompt-bar-refs-inner{scrollbar-width:auto;flex-flow:row;align-items:stretch;gap:6px;padding-bottom:8px;display:flex;overflow:auto hidden}.prompt-bar-refs .ref-slot{width:var(--ref-thumb,88px);flex:0 0 var(--ref-thumb,88px);aspect-ratio:1}.prompt-bar-refs-inner::-webkit-scrollbar{height:12px}.prompt-bar-refs-inner::-webkit-scrollbar-track{background:0 0}.prompt-bar-refs-inner::-webkit-scrollbar-thumb{background:var(--c-border-hi);background-clip:padding-box;border:3px solid #0000;border-radius:6px}.prompt-bar-refs-inner::-webkit-scrollbar-thumb:hover{background:var(--c-text-dim,var(--c-border-hi));background-clip:padding-box}.prompt-bar-refs .ref-extract-btn{width:100%}.prompt-bar-n{background:var(--c-surface2);border:1px solid var(--c-border-hi);height:32px;color:var(--c-text-dim);-webkit-user-select:none;user-select:none;border-radius:6px;flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:0 6px 0 10px;transition:border-color .15s;display:inline-flex}.prompt-bar-n:hover{border-color:var(--c-border-act)}.prompt-bar-n-value{color:var(--c-text);text-align:center;min-width:10px;font-family:Inter,sans-serif;font-size:11px;font-weight:600}.prompt-bar-n-arrows{flex-direction:column;gap:1px;display:flex}.prompt-bar-n-arrow{width:16px;height:12px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:inline-flex}.prompt-bar-n-arrow:hover:not(:disabled){background:var(--c-surface-deep);color:var(--c-text)}.prompt-bar-n-arrow:disabled{opacity:.3;cursor:default}.prompt-bar .chat-model-dropdown{top:auto;bottom:calc(100% + 3px)}.left-sidebar-wrap{transition:transform .2s,opacity .15s}.left-sidebar-wrap--collapsed{opacity:0;pointer-events:none;transform:translate(-100%)}.left-sidebar-wrap--collapsed .resize-handle{display:none}.chat-input-area--compact{border-top:1px solid var(--c-border);padding-top:8px}.prompt-bar-input--dirty{color:var(--c-text-dim);font-style:italic}.prompt-bar-input--invalid{color:var(--c-danger,#d97757);font-style:normal}.prompt-bar-recompile{width:22px;height:22px;color:var(--c-text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;margin-left:-4px;margin-right:2px;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.prompt-bar-recompile:hover{color:var(--c-text);border-color:var(--c-border-act);background:var(--c-surface2)}.prompt-bar-recompile:disabled{opacity:.4;cursor:default}.motion-transport{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.motion-scrubber{min-width:80px;accent-color:var(--c-accent);flex:1}.motion-time{color:var(--c-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10.5px}.gen-panel{flex-direction:column;flex:1;gap:16px;min-height:0;padding:12px 12px 16px;display:flex;overflow-y:auto}.gen-panel::-webkit-scrollbar{width:2px}.gen-panel::-webkit-scrollbar-track{background:0 0}.gen-panel::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:2px}.gen-section{flex-direction:column;gap:8px;display:flex}.gen-section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-muted);border-bottom:1px solid var(--c-border);padding-bottom:2px;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.gen-field{flex-direction:column;gap:5px;display:flex}.gen-label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.gen-select{appearance:none;background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);color:var(--c-text);cursor:pointer;outline:none;width:100%;padding:6px 10px;font-family:Inter,sans-serif;font-size:12px;font-weight:400;transition:border-color .15s,box-shadow .15s}.gen-select:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.gen-seed-row{align-items:center;gap:6px;display:flex}.gen-input{background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);color:var(--c-text);outline:none;flex:1;min-width:0;padding:6px 8px;font-family:Inter,sans-serif;font-size:11px;transition:border-color .15s,box-shadow .15s}.gen-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.gen-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gen-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.gen-input[type=number]{-moz-appearance:textfield}.gen-input--dim{color:var(--c-text-muted)}.gen-lock-btn{background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--c-text-muted);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;transition:color .12s,background .12s,border-color .12s;display:flex}.gen-lock-btn:hover{color:var(--c-text);background:var(--c-surface3)}.gen-lock-btn--locked{color:var(--c-accent);border-color:var(--c-border-act);background:var(--c-accent-subtle)}.gen-key-row{align-items:center;gap:6px;display:flex}.gen-key-row .gen-input{flex:1;min-width:0}.gen-key-notice{color:var(--c-text-muted);margin-top:4px;font-size:9px;font-style:italic;display:block}.conn-cards{flex-direction:column;display:flex}.conn-card{border-bottom:1px solid var(--c-border);padding:8px 0}.conn-card:last-child{border-bottom:none}.conn-card-header{justify-content:space-between;align-items:center;margin-bottom:3px;display:flex}.conn-card-left{align-items:center;gap:6px;display:flex}.conn-card-name{color:var(--c-text);font-family:Inter,sans-serif;font-size:11px;font-weight:500}.conn-card-detail{color:var(--c-text-dim);padding-left:12px;font-family:Inter,sans-serif;font-size:10px}.conn-card-hint{color:var(--c-text-muted);padding-left:12px;font-size:9px}.conn-card-input-area{padding-left:12px}.conn-card-error{color:#b33a2a;margin-top:3px;font-size:9px}.conn-card-warn{color:var(--c-text-muted);margin-top:2px;padding-left:12px;font-size:9px;font-style:italic}.conn-dot{background:var(--c-text-muted);opacity:.4;border-radius:50%;flex-shrink:0;width:6px;height:6px}.conn-dot--ok{opacity:1;background:#4a8c3f}.conn-dot--err{opacity:1;background:#b33a2a}.conn-dot--busy{background:var(--c-accent);opacity:1;animation:1s ease-in-out infinite conn-pulse}@keyframes conn-pulse{0%,to{opacity:.4}50%{opacity:1}}.conn-spinner{border:1.5px solid var(--c-text-muted);border-top-color:var(--c-accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:.6s linear infinite conn-spin}@keyframes conn-spin{to{transform:rotate(360deg)}}.conn-input{box-sizing:border-box;background:var(--c-surface3);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);width:100%;color:var(--c-text);outline:none;padding:4px 6px;font-family:Inter,sans-serif;font-size:10px;transition:border-color .15s}.conn-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.conn-input--err{border-color:#b33a2a}.conn-input:disabled{opacity:.5}.conn-link{color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-family:Inter,sans-serif;font-size:9px;text-decoration:underline}.conn-link:hover{color:var(--c-text)}.conn-key-link{color:var(--c-accent);margin-top:3px;font-size:9px;text-decoration:none;display:inline-block}.conn-key-link:hover{text-decoration:underline}.conn-btn-google{color:#fff;cursor:pointer;background:#4285f4;border:none;border-radius:12px;padding:3px 10px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;transition:background .12s}.conn-btn-google:hover{background:#3367d6}.gen-dim-row{align-items:center;gap:6px;display:flex}.gen-dim-row .gen-input{text-align:center;flex:1}.gen-dim-sep{color:var(--c-text-muted);flex-shrink:0;font-family:Inter,sans-serif;font-size:11px}.sidebar-header{-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;gap:8px;height:42px;padding:0 12px;display:flex}.sidebar-header-burger{margin-left:auto}.menu-panel{top:0;left:calc(100% + var(--island-gap));z-index:40;flex-direction:column;width:160px;padding:4px 0;display:flex;position:absolute}.menu-panel-section{border-top:1px solid var(--c-border);padding:2px 0}.menu-panel-section:first-child{border-top:none}.sidebar-header-name{letter-spacing:.005em;min-width:0;color:var(--c-text);white-space:nowrap;text-overflow:ellipsis;cursor:text;border-radius:var(--radius-sm);flex:1;margin-left:-6px;padding:4px 6px;font-family:Inter,sans-serif;font-size:13px;font-weight:500;transition:background .12s,color .12s;overflow:hidden}.sidebar-header-name:hover{background:var(--c-surface2)}.sidebar-header-name--empty{color:var(--c-text-muted);font-style:italic}.sidebar-header-name--editing{letter-spacing:.005em;min-width:0;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-accent);border-radius:var(--radius-sm);outline:none;flex:1;margin-left:-6px;padding:4px 6px;font-family:Inter,sans-serif;font-size:13px;font-weight:500}.sidebar-header-meta{align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.sidebar-header-user{color:var(--c-text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-family:Inter,sans-serif;font-size:11.5px;font-weight:500;overflow:hidden}.sidebar-header-credits{color:var(--c-accent);white-space:nowrap;background:var(--c-accent-subtle);border-radius:6px 0 0 6px;align-items:center;gap:4px;margin-right:-12px;padding:3px 10px 3px 7px;font-family:Inter,sans-serif;font-size:11.5px;font-weight:500;display:flex}.sidebar-header-credits svg{flex-shrink:0}.menu-float{z-index:200;flex-shrink:0;position:relative}.menu-float-btn{width:28px;height:28px;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:color .12s,background .12s;display:flex}.menu-float-btn:hover,.menu-float-btn--active{color:var(--c-text);background:var(--c-surface2)}.menu-float-dropdown{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:10px;width:auto;min-width:130px;padding:3px 0;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden;box-shadow:0 4px 24px #0000001f,0 1px 4px #0000000f}.menu-float-section{border-top:1px solid var(--c-border);padding:2px 0}.menu-float-section:first-child{border-top:none}.menu-float-section:nth-child(2n){background:var(--c-surface2)}.menu-float-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-dim);padding:6px 12px 4px;font-family:Inter,sans-serif;font-size:9px;font-weight:500;display:block}.menu-float-item{color:var(--c-text);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;padding:4px 10px;font-size:11px;transition:background .1s,color .1s;display:flex}.menu-float-item:hover{background:var(--c-accent-subtle);color:var(--c-accent)}.menu-float-item--disabled{color:var(--c-text-muted);cursor:default;pointer-events:none}.menu-float-shortcut{color:var(--c-text-muted);opacity:.7;margin-left:auto;padding-left:16px;font-family:Inter,sans-serif;font-size:10px}.save-modal-card{width:320px}.save-toggle-group{gap:4px;display:flex}.save-toggle-btn{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);color:var(--c-text-dim);cursor:pointer;flex:1;padding:5px 10px;font-family:Inter,sans-serif;font-size:12px;transition:background .1s,color .1s,border-color .1s}.save-toggle-btn:hover{background:var(--c-surface3);color:var(--c-text)}.save-toggle-btn--active{background:var(--c-accent-subtle);border-color:var(--c-border-act);color:var(--c-accent)}.save-toggle-btn--disabled{opacity:.4;cursor:not-allowed}.save-quality-slider{width:100%;accent-color:var(--c-accent);cursor:pointer;margin-top:6px}.modal-label{color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.04em;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;font-family:Inter,sans-serif;font-size:11px;display:flex}.save-quality-readout{color:var(--c-accent);font-family:Inter,sans-serif;font-size:11px}.save-note{color:var(--c-text-muted);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:8px 10px;font-size:11px;line-height:1.5}.save-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-btn-cancel{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius);color:var(--c-text-dim);cursor:pointer;padding:7px 16px;font-family:Inter,sans-serif;font-size:12px}.modal-btn-cancel:hover{background:var(--c-surface3);color:var(--c-text)}.video-layer-play{z-index:30;color:#fff;cursor:pointer;pointer-events:auto;background:#1414139e;border:1px solid #ffffff59;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;transition:background .12s;display:flex;position:absolute}.video-layer-play svg{margin-left:2px}.video-layer-play:hover{background:#141413d1}.video-hud{z-index:40;pointer-events:auto;white-space:nowrap;background:#141413d1;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;display:flex;position:absolute;box-shadow:0 4px 14px #0000004d}.video-hud-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:5px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.video-hud-btn:hover{background:#ffffff24}.video-hud-scrub{min-width:90px;accent-color:var(--c-accent);cursor:pointer;flex:1}.video-hud-time{font-variant-numeric:tabular-nums;color:#ffffffd1;text-align:right;flex:none;min-width:58px;font-size:10px}.video-viewer{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--island-radius);flex-direction:column;gap:10px;max-width:min(82vw,1100px);max-height:86vh;padding:12px;display:flex;box-shadow:0 8px 32px #0000001f,0 32px 80px #00000014,0 0 0 1px #00000014}.video-viewer-head{justify-content:space-between;align-items:center;gap:12px;padding:0 2px;display:flex}.video-viewer-title{color:var(--c-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.video-viewer-actions{gap:4px;display:flex}.video-viewer-btn{border:1px solid var(--c-border);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--c-text-dim);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.video-viewer-btn:hover{color:var(--c-text);border-color:var(--c-border-hi)}.video-viewer-textbtn{border:1px solid var(--c-border);border-radius:var(--radius-sm);height:24px;color:var(--c-text-dim);cursor:pointer;background:0 0;align-items:center;padding:0 10px;font-size:11px;font-weight:600;display:flex}.video-viewer-textbtn:hover{color:var(--c-text);border-color:var(--c-border-hi)}.video-viewer-textbtn--primary{background:var(--c-text);border-color:var(--c-text);color:var(--c-surface)}.video-viewer-textbtn--primary:hover{opacity:.88;color:var(--c-surface)}.video-viewer-video{border-radius:var(--radius-sm);background:#000;max-width:100%;max-height:calc(86vh - 70px);display:block}.modal-overlay{z-index:1000;background:#282826a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-card{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);flex-direction:column;gap:16px;width:375px;padding:30px;display:flex;box-shadow:0 8px 32px #0000001f,0 32px 80px #00000014,0 0 0 1px #00000014}.settings-modal-card{border-radius:var(--island-radius);width:400px;max-height:88vh;overflow:hidden}.settings-tabs{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--island-btn-radius);gap:4px;padding:4px;display:flex}.settings-tab{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-muted);border-radius:calc(var(--island-btn-radius) - 4px);cursor:pointer;background:0 0;border:none;flex:1;padding:6px 4px;font-family:DM Mono,monospace;font-size:10px;transition:background .12s,color .12s}.settings-tab:hover{color:var(--c-text-dim)}.settings-tab--active{background:var(--c-surface);color:var(--c-text);box-shadow:0 1px 2px #00000014}.settings-tab-body{height:440px;min-height:0;overflow-y:auto}.settings-modal-section{flex-direction:column;gap:10px;display:flex}.settings-theme-row{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.settings-theme-label{color:var(--c-text-dim);font-size:12px}.settings-theme-dropdown{position:relative}.settings-theme-btn{color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);cursor:pointer;outline:none;align-items:center;padding:4px 10px;font-size:11px;display:flex}.settings-theme-btn:hover{border-color:var(--c-border-hi);background:var(--c-surface2)}.settings-theme-menu{z-index:50;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-sm);width:max-content;padding:4px 0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #0000001f}.settings-theme-menu-item{all:unset;box-sizing:border-box;width:100%;color:var(--c-text-dim);cursor:pointer;padding:5px 12px;font-size:11px;display:block}.settings-theme-menu-item:hover{background:var(--c-surface2);color:var(--c-text)}.settings-theme-menu-item--active{color:var(--c-text);font-weight:500}.settings-modal-label{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px}.settings-modal-dim-row{align-items:center;gap:8px;display:flex}.settings-autosave-toggle{color:var(--c-text-dim);cursor:pointer;align-items:center;gap:6px;font-size:11px;display:flex}.settings-autosave-toggle input{cursor:pointer}.settings-autosave-grid{grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;margin-top:10px;display:grid}.settings-autosave-fieldlabel{color:var(--c-text-dim);white-space:nowrap;font-size:11px}.settings-autosave-folder{align-items:center;gap:6px;min-width:0;display:flex}.settings-autosave-foldername{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);flex:1;padding:5px 8px;font-size:11px;overflow:hidden}.settings-autosave-foldername--note{white-space:normal;color:var(--c-text-muted);background:0 0;border:none;flex:none;padding:0;line-height:1.4;overflow:visible}.settings-autosave-inline{align-items:center;gap:8px;display:flex}.settings-autosave-num{width:72px}.settings-autosave-unit{color:var(--c-text-muted);font-size:11px}.settings-autosave-hint{color:var(--c-text-muted);margin:10px 0 0;font-size:11px;line-height:1.4}.settings-autosave-hint code{background:var(--c-surface2);border:1px solid var(--c-border);border-radius:3px;padding:1px 4px;font-size:10px}.settings-autosave-status{margin:8px 0 0;font-size:11px;line-height:1.4}.settings-autosave-status--ok{color:var(--c-text-dim)}.settings-autosave-status--error{color:#d9534f}.settings-autosave-list{border-top:1px solid var(--c-border);margin-top:12px;padding-top:10px}.settings-autosave-list-head{color:var(--c-text-dim);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;display:flex}.settings-autosave-row{border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-surface2);justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;padding:6px 8px;display:flex}.settings-autosave-rowinfo{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-autosave-rowname{color:var(--c-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.settings-autosave-rowmeta{color:var(--c-text-muted);font-size:10px}.settings-autosave-rowactions{flex-shrink:0;gap:6px;display:flex}.settings-modal-hint{color:var(--c-text-muted);font-size:11px;line-height:1.4}.modal-title{color:var(--c-text-muted);letter-spacing:.11em;text-transform:uppercase;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.modal-subtitle{color:var(--c-text-dim);margin-top:-12px;font-family:Inter,sans-serif;font-size:12px;font-weight:300;line-height:1.55}.modal-field{flex-direction:column;gap:7px;display:flex}.modal-label{text-transform:uppercase;letter-spacing:.11em;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.modal-select,.modal-input{background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:var(--radius-sm);color:var(--c-text);-webkit-appearance:none;outline:none;width:100%;padding:9px 11px;font-family:Inter,sans-serif;font-size:11px;transition:border-color .15s,box-shadow .15s}.modal-select:focus,.modal-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.modal-card--narrow{width:260px;padding:20px 24px}.modal-desc{color:var(--c-text-dim);font-size:12px;line-height:1.5}.modal-actions{gap:8px;margin-top:8px;display:flex}.modal-actions--stack{flex-direction:column;gap:6px;margin-top:14px}.modal-actions--stack .modal-btn-create,.modal-actions--stack .modal-btn-cancel{justify-content:center;width:100%}.modal-btn-text{color:var(--c-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-family:Inter,sans-serif;font-size:12px;transition:color .12s}.modal-btn-text:hover{color:var(--c-text)}.modal-dimensions{align-items:flex-end;gap:10px;display:flex}.modal-dimensions .modal-field{flex:1}.modal-dim-sep{color:var(--c-text-dim);flex-shrink:0;padding-bottom:9px;font-size:11px}.modal-preview{flex-direction:column;align-items:center;gap:8px;padding:2px 0;display:flex}.modal-preview-canvas{background:var(--c-surface2);border:1px solid var(--c-border-hi);border-radius:3px;max-width:72px;max-height:72px}.modal-preview-label{color:var(--c-text-dim);font-variant-numeric:tabular-nums;font-family:Inter,sans-serif;font-size:10.5px}.modal-btn-create{background:var(--c-accent);color:#fff;border-radius:var(--radius-sm);letter-spacing:.04em;cursor:pointer;border:1px solid #0000;width:100%;height:28px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .15s,box-shadow .15s,border-color .15s}.modal-btn-create:hover:not(:disabled){background:var(--c-accent-hi);box-shadow:0 0 0 3px var(--c-accent-glow)}.modal-btn-create:disabled{opacity:.4;cursor:not-allowed}.modal-presets{gap:0;display:flex}.modal-preset-btn{border:1px solid var(--c-border-hi);background:linear-gradient(to bottom, var(--c-surface), var(--c-surface2));height:28px;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;box-shadow:0 1px 2px #0000000f, 0 2px 4px #0000000a, inset 0 1px 0 var(--c-inset-highlight);border-radius:0;flex:1;font:500 10px/1 Inter,sans-serif;transition:all .15s}.modal-preset-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.modal-preset-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.modal-preset-btn+.modal-preset-btn{margin-left:-1px}.modal-preset-btn:hover:not(.active){color:var(--c-text);z-index:1}.modal-preset-btn.active{color:var(--c-accent);background:var(--c-accent-subtle);border-color:var(--c-border-hi);z-index:2;box-shadow:inset 0 2px 4px #0000001f,inset 0 1px 1px #0000000f}.modal-doc-type{gap:0;display:flex}.modal-doc-type-btn{aspect-ratio:1;border:1px solid var(--c-border-hi);background:linear-gradient(to bottom, var(--c-surface), var(--c-surface2));cursor:pointer;box-shadow:0 1px 2px #0000000f, 0 2px 4px #0000000a, inset 0 1px 0 var(--c-inset-highlight);border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;transition:all .15s;display:flex}.modal-doc-type-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.modal-doc-type-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.modal-doc-type-btn+.modal-doc-type-btn{margin-left:-1px}.modal-doc-type-btn:hover:not(.active){color:var(--c-text)}.modal-doc-type-btn.active{background:var(--c-accent-subtle);border-color:var(--c-border-hi);box-shadow:inset 0 2px 4px #0000001f,inset 0 1px 1px #0000000f}.modal-doc-type-title{color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.08em;font:500 10px/1 Inter,sans-serif}.modal-doc-type-btn.active .modal-doc-type-title{color:var(--c-accent)}.modal-doc-type-desc{color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.06em;letter-spacing:.02em;font:500 9px/1.4 Inter,sans-serif}.storage-warning-banner{z-index:9999;color:#fff;background:#b8500a;justify-content:center;align-items:center;gap:12px;padding:6px 16px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;display:flex;position:fixed;top:0;left:0;right:0}.storage-warning-banner button{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:4px;padding:2px 8px;font-family:Inter,sans-serif;font-size:10px}.storage-warning-banner button:hover{background:#ffffff4d}.health-status-wrap{margin-left:10px;position:relative}.health-status{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:6px;padding:2px 8px;transition:background .12s;display:flex}.health-status:hover,.health-status--active{background:var(--c-surface2)}.health-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;transition:background .3s}.health-dot--ok{background:#5ce07a}.health-dot--warn{background:#fc5}.health-dot--down{background:#c05050}.health-label{color:var(--c-text-muted);white-space:nowrap;font-family:Inter,sans-serif;font-size:10px}.health-popover{z-index:200;background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--radius);flex-direction:column;gap:6px;width:300px;padding:10px;display:flex;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 16px #0000001f}.health-popover-label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-muted);font-family:Inter,sans-serif;font-size:9px;font-weight:500}.health-popover-input{background:var(--c-surface3);border:1px solid var(--c-border-hi);border-radius:var(--radius);width:100%;color:var(--c-text);box-sizing:border-box;padding:5px 8px;font-family:Inter,sans-serif;font-size:11px}.health-popover-input:focus{border-color:var(--c-border-act);outline:none}.health-popover-actions{gap:8px;margin-top:8px;display:flex}.health-popover-btn{border-radius:var(--radius-sm);cursor:pointer;background:var(--c-surface);height:30px;color:var(--c-text-dim);border:1px solid var(--c-border-hi);flex:1;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .12s,color .12s}.health-popover-btn:hover{background:var(--c-surface2);color:var(--c-text);border-color:var(--c-border-act)}.health-popover-btn--primary{background:var(--c-accent);color:#fff;border:none}.health-popover-btn--primary:hover{background:var(--c-accent-hi)}.health-popover-btn--danger{color:#d9534f;padding-left:8px;padding-right:8px;font-weight:600}.health-popover-btn--danger:hover{color:#fff;background:#d9534f;border-color:#d9534f}.conn-modal-card{background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:8px;width:320px;overflow:hidden;box-shadow:0 8px 32px #0000001f,0 32px 80px #00000014}.conn-modal-header{border-bottom:1px solid var(--c-border);padding:16px 20px 12px}.conn-modal-wordmark{letter-spacing:.2em;text-transform:uppercase;color:var(--c-text);font-family:Inter,sans-serif;font-size:11px;font-weight:500;display:block}.conn-modal-subtitle{color:var(--c-text-dim);margin-top:4px;font-family:Inter,sans-serif;font-size:12px;display:block}.conn-modal-body{padding:0 20px}.conn-modal-footer{border-top:1px solid var(--c-border);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.conn-modal-done{background:var(--c-accent);color:#fff;cursor:pointer;border:none;border-radius:20px;padding:6px 16px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .12s}.conn-modal-done:hover{background:var(--c-accent-hi);box-shadow:0 0 0 3px var(--c-accent-glow)}.scene-navigator{flex-direction:column;height:100%;display:flex;overflow:hidden}.scene-nav-header{flex-shrink:0;justify-content:space-between;align-items:center;height:34px;padding:0 16px;display:flex}.scene-nav-title{color:var(--c-text-3);font-family:Inter,sans-serif;font-size:13px;font-weight:600}button.scene-nav-title--toggle{cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}button.scene-nav-title--toggle:hover{color:var(--c-text)}.scene-nav-section-header{justify-content:space-between;align-items:center;padding:10px 0 16px;display:flex}.scene-nav-section-header>.scene-nav-title{padding:0}.scene-nav-add{width:22px;height:22px;color:var(--c-text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.scene-nav-add:hover{background:var(--c-hover);color:var(--c-text)}.scene-nav-add:disabled{opacity:.4;cursor:default}.scene-nav-list{flex:0 auto;grid-template-columns:1fr 1fr;grid-auto-rows:min-content;align-content:start;gap:6px;min-height:60px;max-height:240px;padding:10px 12px;display:grid;overflow-y:auto}.scene-nav-resize{cursor:row-resize;flex:0 0 14px;justify-content:center;align-items:center;margin:4px 0;display:flex;position:relative}.scene-nav-resize:before{content:"";background:var(--c-border-hi);border-radius:2px;width:36px;height:4px;transition:background .12s,width .12s}.scene-nav-resize:hover:before{background:var(--c-accent);width:48px}.scene-card{box-sizing:border-box;aspect-ratio:4/3;background:var(--c-surface2,var(--c-hover));cursor:pointer;text-align:left;width:100%;height:auto;font:inherit;color:var(--c-text);border:1.5px solid #0000;border-radius:6px;flex:none;margin:0;padding:0;transition:border-color .15s;display:block;position:relative;overflow:hidden}.scene-card:hover{border-color:var(--c-border-hi)}.scene-card--active{border-color:var(--c-accent)}.scene-card--switching{opacity:.5;cursor:wait}.scene-card--renaming{background:0 0;height:auto;padding:4px 6px}.scene-card-img,.scene-card-empty{object-fit:cover;width:100%;height:100%;display:block}.scene-card-empty{background:var(--c-surface2,var(--c-hover))}.scene-card-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;cursor:text;-webkit-user-select:none;user-select:none;background:linear-gradient(#0000 0%,#0000004d 40%,#000000b3 100%);border-radius:0 0 4px 4px;padding:16px 8px 5px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.scene-card-actions{opacity:0;pointer-events:none;gap:3px;transition:opacity .12s;display:flex;position:absolute;top:3px;right:3px}.scene-card:hover .scene-card-actions{opacity:1;pointer-events:auto}.scene-card-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:background .12s;display:inline-flex}.scene-card-btn:hover{background:var(--c-accent)}.scene-card-btn:disabled{opacity:.4;cursor:not-allowed}.scene-rename-input{border:1px solid var(--c-accent);background:var(--c-surface);width:100%;color:var(--c-text);border-radius:4px;outline:none;padding:3px 6px;font-family:inherit;font-size:11px}.scene-nav-library{flex-direction:column;padding-bottom:10px;display:flex;overflow:hidden}.scene-nav-library:not(.scene-nav-library--collapsed){flex:1;min-height:80px}.scene-nav-library-head{align-items:center;gap:8px;padding-right:12px;display:flex}.scene-nav-library-head>.scene-nav-title{flex:1;min-width:0}.scene-nav-library-head>.scene-nav-title,.scene-nav-library>.scene-nav-title{align-items:center;min-height:34px;padding:0 12px;display:flex}.lib-thumb-slider{appearance:none;background:var(--c-border-hi);cursor:pointer;border-radius:2px;outline:none;flex-shrink:0;width:72px;height:4px}.lib-thumb-slider::-webkit-slider-thumb{appearance:none;background:var(--c-accent);border:2px solid var(--c-surface);cursor:pointer;border-radius:50%;width:12px;height:12px}.lib-thumb-slider::-moz-range-thumb{background:var(--c-accent);border:2px solid var(--c-surface);cursor:pointer;border-radius:50%;width:12px;height:12px}.scene-nav-library>.scene-nav-section-header{padding-left:12px;padding-right:12px}.scene-nav-library>.lib-panel,.scene-nav-library>.ds-panel{scrollbar-width:thin;scrollbar-color:var(--c-border-hi) transparent;flex:auto;padding:0 12px 12px;overflow:visible auto}.scene-nav-library>.lib-panel::-webkit-scrollbar{width:6px}.scene-nav-library>.ds-panel::-webkit-scrollbar{width:6px}.scene-nav-library>.lib-panel::-webkit-scrollbar-track{background:0 0}.scene-nav-library>.ds-panel::-webkit-scrollbar-track{background:0 0}.scene-nav-library>.lib-panel::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:3px}.scene-nav-library>.ds-panel::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:3px}.scene-nav-library>.lib-panel::-webkit-scrollbar-thumb:hover{background:var(--c-border-act)}.scene-nav-library>.ds-panel::-webkit-scrollbar-thumb:hover{background:var(--c-border-act)}.scene-nav-library--collapsed{flex:none;min-height:0;max-height:none;padding-bottom:0;overflow:visible}.scene-nav-library--collapsed>.scene-nav-title{padding-bottom:0}.scene-nav-datasets{flex-direction:column;flex:1 1 0;min-height:120px;max-height:none;display:flex;overflow:visible}.scene-nav-datasets.scene-nav-library--collapsed{flex:none;min-height:0}.scene-ctx-menu{z-index:1000;background:var(--c-surface);border:1px solid var(--c-border);border-radius:6px;min-width:120px;padding:4px 0;position:fixed;box-shadow:0 4px 16px #00000026}.scene-ctx-item{width:100%;color:var(--c-text);text-align:left;cursor:pointer;background:0 0;border:none;padding:5px 12px;font-family:inherit;font-size:11px;display:block}.scene-ctx-item:hover{background:var(--c-hover)}.scene-ctx-item--danger{color:var(--c-danger,#d44)}.scene-ctx-item:disabled{opacity:.35;cursor:default}.scene-ctx-item:disabled:hover{background:0 0}.lib-panel{padding:0}.lib-empty{color:var(--c-text-3,var(--c-text-2));padding:4px 0 10px;font-size:10px}.lib-section{margin-bottom:2px}.lib-section-toggle{width:100%;color:var(--c-title);font-size:var(--fs-title);font-weight:var(--fw-title);text-transform:uppercase;letter-spacing:var(--tracking-title);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;padding:4px 0;font-family:inherit;display:flex}.ds-row>.lib-section-header>.lib-section-toggle{font-size:var(--fs-body);font-weight:var(--fw-body);text-transform:none;letter-spacing:var(--tracking-body);color:var(--c-text)}.lib-section-toggle:hover{color:var(--c-text)}.ds-rename-input{border:1px solid var(--c-border-act);background:var(--c-surface);min-width:0;color:var(--c-text);text-transform:uppercase;letter-spacing:.06em;border-radius:3px;outline:none;flex:1;margin:-2px 0;padding:1px 4px;font-family:inherit;font-size:10px;font-weight:500}.ds-rename-input:focus{border-color:var(--c-accent)}.lib-chevron{transition:transform .15s;transform:rotate(-90deg)}.lib-chevron--open{transform:rotate(0)}.lib-section-count{color:var(--c-text-3,var(--c-text-2));margin-left:auto;font-size:9px}.lib-section-body{flex-direction:column;gap:1px;padding-bottom:4px;display:flex}.lib-item{border-radius:4px;align-items:center;gap:5px;padding:3px 4px;transition:background .1s;display:flex}.lib-item:hover{background:var(--c-hover)}.lib-item-icon{color:var(--c-text-2);flex-shrink:0;align-items:center;display:flex}.lib-item-name{text-overflow:ellipsis;white-space:nowrap;color:var(--c-text);flex:1;font-size:10.5px;overflow:hidden}.lib-item-text{text-overflow:ellipsis;white-space:nowrap;color:var(--c-text);cursor:pointer;flex:1;font-size:10px;overflow:hidden}.lib-item-text:hover{color:var(--c-accent)}.lib-item-add,.lib-item-remove{width:18px;height:18px;color:var(--c-text-3,var(--c-text-2));cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:opacity .1s,background .1s,color .1s;display:flex}.lib-item:hover .lib-item-add,.lib-item:hover .lib-item-remove{opacity:1}.lib-item-add:hover{background:var(--c-accent-bg,var(--c-hover));color:var(--c-accent)}.lib-item-remove:hover{background:var(--c-danger-bg,var(--c-hover));color:var(--c-danger,#d44)}.lib-section-header{align-items:center;gap:4px;display:flex}.lib-section-header>.lib-section-toggle{flex:1;min-width:0}.lib-import-btn{width:20px;height:20px;color:var(--c-text-3,var(--c-text-2));cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.lib-import-btn:hover:not(:disabled){background:var(--c-hover);color:var(--c-text)}.lib-import-btn:disabled{opacity:.35;cursor:default}.lib-import-btn--active,.lib-import-btn--active:hover{background:var(--c-accent-subtle);color:var(--c-accent)}.lib-section-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.lib-grid{grid-template-columns:repeat(auto-fill, minmax(var(--lib-thumb,100px), 1fr));gap:4px;padding:2px 0 4px;display:grid}.lib-thumb{aspect-ratio:1;border:1px solid var(--c-border);background:var(--c-surface);border-radius:4px;transition:border-color .12s;position:relative;overflow:hidden}.lib-thumb:hover{border-color:var(--c-border-hi)}.lib-thumb img,.lib-thumb video{object-fit:cover;width:100%;height:100%;display:block}.lib-thumb--video .lib-thumb-badge{color:#fff;pointer-events:none;background:#0009;border-radius:3px;padding:2px 4px;font-size:9px;line-height:1;position:absolute;bottom:4px;left:4px}.lib-thumb-placeholder{width:100%;height:100%;color:var(--c-text-muted);justify-content:center;align-items:center;display:flex}.lib-thumb-spinner{border:1.5px solid var(--c-border-hi);border-top-color:var(--c-text-dim);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite lib-spin}@keyframes lib-spin{to{transform:rotate(360deg)}}.lib-thumb-viewer-canvas{cursor:grab;width:100%;height:100%;display:block}.lib-thumb-viewer-canvas:active{cursor:grabbing}.lib-thumb-name{font-family:Inter,sans-serif;font-size:11px;font-weight:var(--fw-body);color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:linear-gradient(#0000 0%,#0000004d 40%,#000000b3 100%);border-radius:0 0 4px 4px;padding:14px 6px 4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.lib-thumb-name>span{pointer-events:auto}.lib-thumb-name-input{width:100%;font:inherit;color:#fff;border:1px solid var(--c-accent);pointer-events:auto;background:#00000073;border-radius:3px;outline:none;padding:1px 4px}.lib-thumb-actions{opacity:0;pointer-events:none;gap:3px;transition:opacity .12s;display:flex;position:absolute;top:3px;right:3px}.lib-thumb:hover .lib-thumb-actions{opacity:1;pointer-events:auto}.lib-thumb-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:background .12s;display:inline-flex}.lib-thumb-btn:hover{background:var(--c-accent)}.lib-thumb-btn[disabled],.lib-thumb-btn[disabled]:hover{color:#ffffff59;cursor:not-allowed;background:#0006}.lib-thumb--pose img{object-fit:contain;background:var(--c-bg-2,#7f7f7f14)}.layer-pin-btn{width:20px;height:20px;color:var(--c-text-3,var(--c-text-2));cursor:pointer;opacity:0;background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .1s,background .1s,color .1s;display:flex}.layer-row:hover .layer-pin-btn{opacity:1}.layer-pin-btn:hover{background:var(--c-accent-bg,var(--c-hover));color:var(--c-accent)}.ds-row-name{text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;overflow:hidden}.ds-row-delete{color:var(--c-text-3,var(--c-text-2))}.ds-row-delete:hover{background:var(--c-danger-bg,var(--c-hover));color:var(--c-danger,#d44)}.ds-body{padding:4px 0 6px}.ds-actions{align-items:center;gap:6px;margin-bottom:6px;display:flex}.ds-search-controls{flex:none;align-items:center;gap:4px;display:inline-flex}.ds-icon-btn{border:1px solid var(--c-border);background:var(--c-surface);width:28px;height:28px;color:var(--c-text-2);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;padding:0;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.ds-icon-btn:hover:not(:disabled){border-color:var(--c-border-hi,var(--c-accent));color:var(--c-text)}.ds-icon-btn:disabled{opacity:.45;cursor:not-allowed}.ds-threshold{cursor:ew-resize;flex:none;align-items:center;height:28px;padding:0 4px;display:inline-flex;position:relative}.ds-tip-host{display:inline-flex}.ds-tooltip--portal{box-sizing:border-box;background:var(--c-text);width:150px;color:var(--c-bg,#fff);letter-spacing:.01em;pointer-events:none;white-space:normal;z-index:9999;border-radius:4px;flex-direction:column;gap:3px;padding:8px 10px;font-size:10px;line-height:1.35;display:flex;position:fixed}.ds-tooltip strong{letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:600}.ds-tooltip b{margin-right:4px;font-family:Inter,sans-serif;font-weight:600}.ds-tooltip-hint{opacity:.7;border-top:1px solid #ffffff26;margin-top:4px;padding-top:4px}.rsn-tooltip{background:var(--c-surface2);max-width:340px;color:var(--c-text);border:1px solid var(--c-border-hi);letter-spacing:.01em;pointer-events:none;white-space:normal;overflow-wrap:break-word;z-index:9999;border-radius:5px;padding:5px 9px;font-family:Inter,sans-serif;font-size:11px;font-weight:400;line-height:1.3;display:inline-block;position:fixed;box-shadow:0 4px 14px #00000038}.ds-threshold .pd-scrub-row{margin:0;padding:0}.ds-threshold .pd-scrub-field--inline{color:var(--c-text);text-align:center;cursor:ew-resize;min-width:30px;font-family:Inter,sans-serif;font-size:12px;font-weight:600}.ds-query-preview{border:1px solid var(--c-border);background:var(--c-surface);border-radius:4px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.ds-query-preview img{object-fit:cover;width:100%;height:100%;display:block}.ds-search-btn{border:1px solid var(--c-border);background:var(--c-surface);height:28px;color:var(--c-text-2);letter-spacing:.03em;cursor:pointer;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:500;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.ds-search-btn:hover:not(:disabled){border-color:var(--c-border-hi,var(--c-accent));color:var(--c-text)}.ds-search-btn:disabled{opacity:.45;cursor:not-allowed}.ds-search-btn--clear{color:var(--c-text-3,var(--c-text-2));background:0 0}.ds-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.ds-thumb{aspect-ratio:1;border:1px solid var(--c-border);background:var(--c-surface);border-radius:4px;padding:0;transition:border-color .12s;position:relative;overflow:hidden}.ds-thumb:hover{border-color:var(--c-accent,var(--c-border-hi))}.ds-thumb img{object-fit:cover;width:100%;height:100%;display:block}.ds-thumb-actions{opacity:0;pointer-events:none;justify-content:flex-end;gap:3px;transition:opacity .12s;display:flex;position:absolute;top:3px;right:3px}.ds-thumb:hover .ds-thumb-actions{opacity:1;pointer-events:auto}.ds-thumb-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:3px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:background .12s,color .12s;display:inline-flex}.ds-thumb-btn:hover{background:var(--c-accent,#b87830)}.ds-thumb-score{color:#fff;letter-spacing:.02em;background:#0000008c;border-radius:3px;padding:1px 4px;font-family:Inter,sans-serif;font-size:9px;font-weight:600;position:absolute;bottom:3px;left:3px}.ds-search-all{border:1px solid var(--c-border);background:var(--c-surface);width:100%;height:30px;color:var(--c-text);letter-spacing:.03em;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:6px;margin:4px 0 6px;padding:0 12px;font-size:12px;font-weight:500;transition:border-color .12s,background .12s;display:flex}.ds-search-all:hover:not(:disabled){border-color:var(--c-accent,var(--c-border-hi));background:var(--c-hover)}.ds-search-all:disabled{opacity:.55;cursor:progress}.ds-thumb-source{color:#fff;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;background:#0000008c;border-radius:3px;max-width:calc(100% - 38px);padding:1px 4px;font-family:Inter,sans-serif;font-size:9px;font-weight:600;position:absolute;top:3px;left:3px;overflow:hidden}.ds-load-more{border:1px solid var(--c-border);width:100%;height:22px;color:var(--c-text-3,var(--c-text-2));letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:4px;margin-top:6px;padding:0 8px;font-size:10px;font-weight:500;transition:border-color .12s,color .12s}.ds-load-more:hover:not(:disabled){border-color:var(--c-border-hi,var(--c-accent));color:var(--c-text)}.ds-load-more:disabled{opacity:.45;cursor:not-allowed}.ds-add-btn{border:1px dashed var(--c-border);width:100%;height:24px;color:var(--c-text-3,var(--c-text-2));letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:4px;margin-top:8px;padding:0 8px;font-size:10px;font-weight:500;transition:border-color .12s,color .12s,background .12s}.ds-add-btn:hover{border-color:var(--c-accent,var(--c-border-hi));color:var(--c-text);background:var(--c-hover)}.ds-ingest{background:var(--c-surface);border:1px solid var(--c-border);border-radius:4px;margin-top:8px;padding:8px}.ds-ingest-label{color:var(--c-text-2);margin-bottom:6px;font-size:10px}.ds-ingest-bar{background:color-mix(in srgb, var(--c-surface) 70%, var(--c-text-3));border-radius:2px;height:3px;position:relative;overflow:hidden}.ds-ingest-bar-fill{background:var(--c-accent,#b87830);border-radius:2px;width:0;height:100%;transition:width .24s cubic-bezier(.4,0,.2,1)}.ds-ingest-cancel{height:20px;color:var(--c-text-3,var(--c-text-2));letter-spacing:.04em;cursor:pointer;background:0 0;border:none;margin-top:6px;padding:0 8px;font-size:10px;font-weight:500;text-decoration:underline}.ds-ingest-cancel:hover{color:var(--c-text)}.ds-error{color:var(--c-danger,#b84a3a);margin-top:6px;font-size:10px}.make3d-panel__backdrop{z-index:10000;background:#0000008c;position:fixed;inset:0}.make3d-panel{z-index:10001;background:var(--c-surface);border:1px solid var(--c-border-hi);border-radius:var(--island-radius);width:920px;height:640px;color:var(--c-text);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 12px 40px #00000040,0 32px 96px #0000002e}.make3d-panel__title{background:var(--c-surface2);border-bottom:1px solid var(--c-border-hi);cursor:grab;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:500;display:flex}.make3d-panel__title:active{cursor:grabbing}.make3d-panel__close{color:var(--c-text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;margin-left:auto;padding:4px 6px;display:inline-flex}.make3d-panel__close:hover{background:var(--c-surface3);color:var(--c-text)}.make3d-panel__body{flex:1;grid-template-columns:220px 1fr 150px;min-height:0;display:grid}.make3d-panel__rail{flex-direction:column;gap:12px;padding:14px;font-size:11px;display:flex;overflow-y:auto}.make3d-panel__rail--left{border-right:1px solid var(--c-border-hi);background:var(--c-surface)}.make3d-panel__rail--right{border-left:1px solid var(--c-border-hi);background:var(--c-surface)}.make3d-panel__rail-bottom{flex-direction:column;gap:8px;margin-top:auto;display:flex}.make3d-panel__section{flex-direction:column;gap:6px;display:flex}.make3d-panel__section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-2);margin-bottom:2px;font-size:10px}.make3d-panel__hint{color:var(--c-text-2);font-size:11px;line-height:1.45}.make3d-panel__input{background:var(--c-surface2);border:1px solid var(--c-border-hi);width:100%;color:var(--c-text);border-radius:4px;padding:6px 8px;font-family:inherit;font-size:11px}.make3d-panel__input:focus{border-color:var(--c-accent);outline:none}.make3d-panel__run{background:var(--c-accent);color:#fff;cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:8px 12px;font-size:11px;font-weight:500;display:inline-flex}.make3d-panel__run:hover:not(:disabled){background:var(--c-accent-hi)}.make3d-panel__run:disabled{opacity:.5;cursor:not-allowed}.make3d-panel__run--cancel{background:var(--c-surface3);color:var(--c-text)}.make3d-panel__run--cancel:hover:not(:disabled){background:var(--c-surface-deep)}.make3d-panel__status{color:var(--c-text-2);padding:4px 0;font-size:10px}.make3d-panel__status--error{color:var(--c-danger,#b84a3a)}.make3d-panel__source{flex-direction:column;gap:6px;display:flex}.make3d-panel__source img{object-fit:contain;background:var(--c-surface-deep);border:1px solid var(--c-border-hi);border-radius:4px;width:100%;max-height:160px}.make3d-panel__preview{background:#1a1a1c;min-height:0;position:relative}.make3d-panel__preview canvas{display:block;width:100%!important;height:100%!important}.make3d-panel__empty{color:#aaa;pointer-events:none;background:#00000040;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;inset:0}.make3d-panel__presets{grid-template-columns:1fr 1fr 1fr;gap:4px;display:grid}.make3d-panel__presets button{background:var(--c-surface2);border:1px solid var(--c-border-hi);color:var(--c-text);cursor:pointer;border-radius:4px;padding:6px 4px;font-size:10px}.make3d-panel__presets button:hover:not(:disabled){background:var(--c-surface3)}.make3d-panel__presets button:disabled{opacity:.4;cursor:not-allowed}.make3d-panel__actions{grid-template-columns:1fr 1fr;gap:6px;display:grid}.make3d-panel__reset{background:var(--c-surface2);border:1px solid var(--c-border-hi);color:var(--c-text);cursor:pointer;border-radius:4px;margin-top:4px;padding:6px 8px;font-size:10px}.make3d-panel__reset:hover:not(:disabled){background:var(--c-surface3)}.make3d-panel__reset:disabled{opacity:.4;cursor:not-allowed}.make3d-panel__btn{cursor:pointer;border:1px solid var(--c-border-hi);border-radius:4px;padding:8px 10px;font-size:11px;font-weight:500}.make3d-panel__btn--secondary{background:var(--c-surface2);color:var(--c-text)}.make3d-panel__btn--secondary:hover:not(:disabled){background:var(--c-surface3)}.make3d-panel__btn--primary{background:var(--c-accent);color:#fff;border-color:#0000}.make3d-panel__btn--primary:hover:not(:disabled){background:var(--c-accent-hi)}.make3d-panel__btn:disabled{opacity:.5;cursor:not-allowed}.appearance-drop-modal{background:var(--c-surface);border:1px solid var(--c-border-act);border-radius:var(--radius-lg);width:280px;font-family:Inter,sans-serif;overflow:hidden;box-shadow:0 8px 32px #00000073,0 2px 6px #00000040}.appearance-drop-modal__header{border-bottom:1px solid var(--c-border);background:var(--c-surface-deep);padding:8px 12px}.appearance-drop-modal__title{letter-spacing:.06em;text-transform:uppercase;color:var(--c-accent);font-size:10.5px;font-weight:600}.appearance-drop-modal__body{flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.appearance-drop-modal__row{align-items:stretch;gap:8px;display:flex}.appearance-drop-modal__name{box-sizing:border-box;min-width:0;height:32px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);flex:1;padding:0 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:500}.appearance-drop-modal__name:focus{border-color:var(--c-accent);outline:none}.appearance-drop-modal__thumb{border-radius:var(--radius-sm);background:var(--c-surface-deep);border:1px solid var(--c-border);flex-shrink:0;width:56px;height:56px;overflow:hidden}.appearance-drop-modal__thumb img{object-fit:cover;width:100%;height:100%;display:block}.appearance-drop-modal__action{box-sizing:border-box;width:100%;height:32px;color:var(--c-text);background:var(--c-surface2);border:1px solid var(--c-border);border-radius:var(--radius-sm);padding:0 8px;font-family:Inter,sans-serif;font-size:11px}.appearance-drop-modal__action::placeholder{color:var(--c-text-muted);font-style:italic}.appearance-drop-modal__action:focus{border-color:var(--c-accent);outline:none}.appearance-drop-modal__actions{justify-content:flex-end;gap:6px;margin-top:2px;display:flex}.appearance-drop-modal__btn{border-radius:var(--radius-sm);border:1px solid var(--c-border);cursor:pointer;height:28px;padding:0 14px;font-family:Inter,sans-serif;font-size:11px;font-weight:600;transition:background .12s,border-color .12s,color .12s}.appearance-drop-modal__btn--ghost{color:var(--c-text-muted);background:0 0}.appearance-drop-modal__btn--ghost:hover{color:var(--c-text);border-color:var(--c-border-act)}.appearance-drop-modal__btn--primary{background:var(--c-accent);color:#fff;border-color:#0000}.appearance-drop-modal__btn--primary:hover{background:var(--c-accent-hi)}.appearance-hover-tag{color:var(--c-text);background:var(--c-surface);border:1px solid var(--c-border-act);border-radius:var(--radius-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;padding:4px 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;box-shadow:0 4px 12px #00000059}.motion-panel{flex-direction:column;gap:6px;min-width:220px;max-width:260px;padding:8px;display:flex}.motion-panel-pathrow{align-items:center;gap:4px;display:flex}.motion-panel-pathselect{flex:1;min-width:0}.motion-panel-btn{border:1px solid var(--c-border-hi);background:var(--c-surface2);color:var(--c-text-muted);cursor:pointer;white-space:nowrap;border-radius:5px;padding:5px 7px;font-size:11px;line-height:1}.motion-panel-btn:hover{color:var(--c-text)}.motion-panel-btn:disabled{opacity:.4;cursor:default}.motion-panel-btn--primary{color:var(--c-accent);border-color:var(--c-accent);background:var(--c-accent-subtle)}.motion-panel-btn--danger:hover{color:#e66;border-color:#e66}.motion-panel-rename{border:1px solid var(--c-border-hi);background:var(--c-surface2);color:var(--c-text);border-radius:5px;padding:5px 7px;font-size:11px}.motion-panel-import{position:relative}.motion-panel-importmenu{z-index:40;border:1px solid var(--c-border-hi);background:var(--c-surface2);border-radius:6px;flex-direction:column;width:max-content;min-width:120px;max-width:260px;max-height:180px;display:flex;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 6px 18px #00000040}.motion-panel-importmenu button{color:var(--c-text-muted);text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 9px;font-size:11px}.motion-panel-importmenu button:hover{background:var(--c-accent-subtle);color:var(--c-text)}.motion-panel-list{flex-direction:column;gap:2px;max-height:260px;display:flex;overflow-y:auto}.motion-panel-cam{cursor:pointer;border-radius:5px;align-items:center;gap:4px;padding:3px 4px;display:flex}.motion-panel-cam:hover{background:var(--c-surface3)}.motion-panel-cam--selected{background:var(--c-accent-subtle);outline:1px solid var(--c-accent)}.motion-panel-cam-name{color:var(--c-text);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;padding:3px 2px;font-size:11px}.motion-panel-note{color:var(--c-text-muted);padding:2px 2px 0;font-size:10.5px}.motion-panel--bar{flex-direction:column;align-items:stretch;gap:8px;min-width:0;max-width:none;min-height:172px;padding:10px 12px 6px;overflow:hidden}.motion-panel--bar .motion-panel-controls{flex-direction:row;flex:none;order:2;align-items:center;gap:6px;display:flex}.motion-panel--bar .motion-panel-pathselect{flex:none;width:150px}.motion-panel--bar .motion-panel-import{flex:none}.motion-panel--bar .motion-panel-importmenu{top:auto;bottom:calc(100% + 4px)}.motion-panel--bar .motion-panel-list{flex-direction:row;flex:1;align-items:stretch;gap:7px;max-height:none;padding-bottom:4px;overflow:auto hidden}.motion-panel--bar .motion-panel-cam{border:1px solid var(--c-border-hi);flex-direction:column;align-items:stretch;gap:5px;min-width:172px;max-width:210px;padding:6px 9px}.motion-panel-cam-titlebar{justify-content:space-between;align-items:center;gap:6px;display:flex}.motion-panel-cam-titlebar .motion-panel-cam-name{flex:1;min-width:0}.motion-panel-cam-actions{flex:none;gap:3px;display:flex}.motion-panel-cam-actions .motion-panel-btn--icon{width:22px;height:22px;font-size:12px;line-height:1}.motion-panel-cam-fields{align-items:center;gap:4px;display:flex}.motion-panel-cam-fields>*{flex:1;min-width:0}.motion-panel-cam-thumb{border:1px solid var(--c-border);background:#000;border-radius:4px;width:100%;height:auto;display:block}.motion-panel--bar .motion-panel-cam--selected{border-color:var(--c-accent)}.motion-panel--bar .motion-panel-note{white-space:nowrap;align-self:center;margin:auto 0}.motion-panel-iconrow{gap:3px;display:flex}.motion-panel-btn--icon{flex:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:flex}.motion-panel-field--dim{opacity:.35;pointer-events:none}.motion-ref-strip{flex-wrap:wrap;align-items:center;gap:8px;padding:2px;display:flex}.motion-ref-slot{border-radius:6px;flex:none;width:68px;height:68px;padding:0;position:relative;overflow:hidden}.motion-ref-slot--empty{border:1px dashed var(--c-border-hi);background:var(--c-surface2);color:var(--c-text-dim);cursor:pointer;justify-content:center;align-items:center;font-size:20px;display:flex}.motion-ref-slot--empty:hover{border-color:var(--c-accent);color:var(--c-text)}.motion-ref-slot--filled{border:1px solid var(--c-border-hi)}.motion-ref-media{object-fit:cover;width:100%;height:100%;display:block}.motion-ref-kind{letter-spacing:.04em;color:#fff;background:#0009;border-radius:3px;padding:1px 4px;font-size:8px;font-weight:700;position:absolute;bottom:3px;left:3px}.motion-ref-clear{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:13px;line-height:1;display:flex;position:absolute;top:2px;right:2px}.motion-ref-clear:hover{background:#c83c3cd9}.motion-ref-note{color:var(--c-text-dim);max-width:220px;font-size:10px;line-height:1.35}.nd-panel{background:var(--c-bg);flex-direction:column;flex:1;min-height:0;display:flex}.nd-body{flex:1;min-height:0;display:flex;position:relative}.nd-canvas{cursor:grab;background:radial-gradient(circle, var(--c-border) 1px, transparent 1px);background-size:24px 24px;flex:1;position:relative;overflow:hidden}.nd-canvas:active{cursor:grabbing}.nd-canvas-inner{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.nd-canvas-inner>*{pointer-events:auto}.nd-edges-svg{pointer-events:none;z-index:0;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.nd-edge{stroke-width:1.25px;fill:none}.nd-edge-group{pointer-events:all}.nd-edge-delete{cursor:pointer;opacity:0;transition:opacity .15s}.nd-edge-delete-x{opacity:0;transition:opacity .15s}.nd-edge-group:hover .nd-edge-delete,.nd-edge-group:hover .nd-edge-delete-x{opacity:1}.nd-edge-delete:hover{r:8}.nd-card-wrap{z-index:1;-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;position:absolute}.nd-card-wrap--selected>.nd-card{border-color:var(--c-accent-subtle);box-shadow:0 0 0 1px var(--c-accent-subtle)}.nd-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:8px;flex-direction:column;flex:auto;gap:6px;min-height:0;padding:8px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:visible;box-shadow:0 1px 3px #0003}.nd-card:hover{border-color:var(--c-border-hover,var(--c-text-3))}.nd-status--running{border-color:var(--c-accent);box-shadow:0 0 0 1px var(--c-accent), 0 1px 4px #0000001a}.nd-status--done{border-color:var(--c-success,#4a9)}.nd-status--error{border-color:var(--c-danger,#c44)}.nd-header{letter-spacing:0;text-transform:none;color:var(--c-text-1);align-items:center;gap:6px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.nd-header-title{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.nd-header-timer{color:var(--c-accent);letter-spacing:.02em;font-family:Inter,sans-serif;font-size:9px}.nd-header-actions{opacity:0;align-items:center;gap:2px;margin-left:auto;transition:opacity .1s;display:flex}.nd-card:hover .nd-header-actions{opacity:1}.nd-header-btn{width:20px;height:20px;color:var(--c-text-3);cursor:pointer;background:0 0;border:none;border-radius:3px;justify-content:center;align-items:center;padding:0;display:flex}.nd-header-btn:hover{background:var(--c-hover);color:var(--c-text)}.nd-header-btn--accent,.nd-header-btn--accent:hover{color:var(--c-accent)}.nd-field{flex-direction:column;gap:2px;display:flex}.nd-field--half{flex:1;min-width:0}.nd-row{gap:6px;display:flex}.nd-label{text-transform:uppercase;letter-spacing:.06em;color:var(--c-text-3);font-family:Inter,sans-serif;font-size:9px}.nd-select,.nd-input{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);border-radius:4px;outline:none;padding:4px 6px;font-size:11px}.nd-select:focus,.nd-input:focus{border-color:var(--c-accent)}.nd-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nd-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.nd-input[type=number]{-moz-appearance:textfield}.nd-textarea{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);resize:none;border-radius:4px;outline:none;flex:1;min-height:28px;padding:4px 6px;font-family:inherit;font-size:11px}.nd-textarea:focus{border-color:var(--c-accent)}.nd-prompt-actions{flex:none;justify-content:flex-start;display:flex}.nd-textarea,.nd-splitter-items,.nd-outputlive-text,.nd-img-grid,.nd-assistant-response,.nd-router-preview,.nd-batch-grid,.nd-palette-tmpl-list{scrollbar-width:auto}.nd-textarea::-webkit-scrollbar{width:12px}.nd-splitter-items::-webkit-scrollbar{width:12px}.nd-outputlive-text::-webkit-scrollbar{width:12px}.nd-textarea::-webkit-scrollbar-track{background:0 0}.nd-splitter-items::-webkit-scrollbar-track{background:0 0}.nd-outputlive-text::-webkit-scrollbar-track{background:0 0}.nd-textarea::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-splitter-items::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-outputlive-text::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-gen-settings{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.nd-gen-settings .chat-model-select-wrap{flex:none;min-width:0}.nd-gen-settings .chat-model-select{border-radius:var(--radius-sm);border-right:1px solid var(--c-border)}.nd-gen-dim{text-align:center;flex:none;width:48px}.nd-gen-x{color:var(--c-text-3);flex-shrink:0;font-family:Inter,sans-serif;font-size:10px}.nd-lock-btn{border:1px solid var(--c-border);width:22px;height:22px;color:var(--c-text-3);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:color .1s,border-color .1s;display:flex}.nd-lock-btn:hover{color:var(--c-text);border-color:var(--c-border-hi,var(--c-text-3))}.nd-lock-btn--active{color:var(--c-accent);border-color:var(--c-accent)}.nd-hint{color:var(--c-text-3);font-size:10px;font-style:italic}.nd-error{color:var(--c-danger,#c44);font-size:10px}.nd-thumb-wrap{background:var(--c-bg);border:1px solid var(--c-border);border-radius:4px;overflow:hidden}.nd-thumb{object-fit:contain;width:100%;display:block}.nd-btn{letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);cursor:pointer;border-radius:6px;padding:5px 10px;font-family:Inter,sans-serif;font-size:10px;transition:background .1s,border-color .1s}.nd-btn:hover{background:var(--c-hover);border-color:var(--c-border-hover,var(--c-text-3))}.nd-btn:disabled{opacity:.4;cursor:not-allowed}.nd-btn--run{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.nd-btn--run:hover{filter:brightness(1.08);background:var(--c-accent)}.nd-btn--run-all{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}.nd-btn--run-all:hover{filter:brightness(1.08);background:var(--c-accent)}.nd-btn--cancel{background:var(--c-surface2);color:var(--c-text);border:1px solid var(--c-border-hi);min-width:90px;transition:opacity .15s;position:relative;overflow:hidden}.nd-btn--cancel:hover{border-color:var(--c-border-act);opacity:1}.nd-cancel-fill{background:var(--c-accent);border-radius:6px 0 0 6px;transition:width .5s ease-out;position:absolute;top:0;bottom:0;left:0}.nd-cancel-text{z-index:1;position:relative}.nd-btn-icon{border:1px solid var(--c-border);background:var(--c-surface);width:26px;height:26px;color:var(--c-text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:13px;display:flex}.nd-btn-icon:hover{background:var(--c-hover)}.nd-btn-icon:disabled{opacity:.3;cursor:not-allowed}.nd-btn-remove{width:18px;height:18px;color:var(--c-text-3);background:0 0;border:none;border-radius:4px;margin-left:auto;font-size:12px}.nd-btn-remove:hover{background:var(--c-danger,#c44);color:#fff}.nd-spinner{border:2px solid var(--c-border);border-top-color:var(--c-accent);border-radius:50%;width:10px;height:10px;animation:.6s linear infinite nd-spin}@keyframes nd-spin{to{transform:rotate(360deg)}}.nd-prompt-bar{justify-content:center;align-items:center;gap:8px;padding:8px 14px;display:flex}.nd-port{cursor:crosshair;stroke-width:2px;pointer-events:all;transition:r .1s}.nd-port:hover{r:7}.nd-port:not(.nd-port--in){stroke:var(--c-surface)}.nd-port--in.nd-port--hollow{stroke-width:2px;fill:#0000!important}.nd-port--in.nd-port--filled{stroke-width:2px}.nd-port--compatible{stroke-width:2.5px;r:7}.nd-port--dimmed{opacity:.25}:root{--c-port-prompt:#5b9bd5;--c-port-image:#6bb57a;--c-port-model:#d4915e;--c-port-seed:#9b7dc5;--c-port-glb:#c46b8a}.nd-resize-handle{cursor:nwse-resize;z-index:5;width:12px;height:12px;position:absolute;bottom:0;right:0}.nd-resize-handle:after{content:"";border-right:1.5px solid var(--c-text-3);border-bottom:1.5px solid var(--c-text-3);opacity:0;width:6px;height:6px;transition:opacity .1s;position:absolute;bottom:3px;right:3px}.nd-resize-handle:hover:after{opacity:0}.nd-btn--sm{border-radius:4px;padding:3px 8px;font-size:9px}.nd-btn--active{background:var(--c-accent-bg,#0000000a);border-color:var(--c-accent)}.nd-img-picker-wrap{grid-template-rows:0fr;transition:grid-template-rows .2s ease-out;display:grid;overflow:hidden}.nd-img-picker-wrap--open{grid-template-rows:1fr}.nd-img-grid{grid-template-columns:1fr 1fr;grid-auto-rows:min-content;gap:4px;min-height:0;max-height:220px;padding:2px;display:grid;overflow-y:auto}.nd-img-grid::-webkit-scrollbar{width:12px}.nd-img-grid::-webkit-scrollbar-track{background:0 0}.nd-img-grid::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-img-tile{aspect-ratio:4/5;cursor:pointer;border:1px solid var(--c-border);background:var(--c-surface);border-radius:4px;min-width:0;min-height:0;transition:border-color .1s,transform .1s;position:relative;overflow:hidden}.nd-img-tile:hover{border-color:var(--c-border-hi);transform:translateY(-1px)}.nd-img-tile--selected{border-color:var(--c-accent);box-shadow:0 0 0 1px var(--c-accent)}.nd-img-tile-thumb{object-fit:cover;width:100%;height:100%;display:block}.nd-img-tile-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;background:linear-gradient(#0000 0%,#0000004d 40%,#000000b3 100%);border-radius:0 0 4px 4px;padding:14px 6px 4px;font-family:Inter,sans-serif;font-size:10px;font-weight:500;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.nd-image-label{color:var(--c-text-3);text-align:center;text-transform:uppercase;letter-spacing:.04em;padding:2px 0;font-family:Inter,sans-serif;font-size:9px}.nd-assistant-response{color:var(--c-text);background:var(--c-bg);border:1px solid var(--c-border);white-space:pre-wrap;word-break:break-word;cursor:text;-webkit-user-select:text;user-select:text;border-radius:4px;flex:auto;min-height:60px;padding:6px 8px;font-size:11px;line-height:1.5;overflow-y:auto}.nd-assistant-response::-webkit-scrollbar{width:12px}.nd-assistant-response::-webkit-scrollbar-track{background:0 0}.nd-assistant-response::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-seg{background:var(--c-bg);border:1px solid var(--c-border);border-radius:6px;gap:2px;margin-bottom:6px;padding:2px;display:flex}.nd-seg-btn{color:var(--c-text-3);cursor:pointer;background:0 0;border:none;border-radius:4px;flex:1;padding:3px 0;font-size:10px;transition:background .12s,color .12s}.nd-seg-btn:hover{color:var(--c-text)}.nd-seg-btn--active{background:var(--c-accent);color:#fff}.nd-router-count{text-align:center;margin-top:2px}.nd-router-preview{color:var(--c-text);background:var(--c-bg);border:1px solid var(--c-border);white-space:pre-wrap;word-break:break-word;-webkit-user-select:text;user-select:text;border-radius:4px;max-height:120px;padding:6px 8px;font-size:11px;line-height:1.45;overflow-y:auto}.nd-router-preview::-webkit-scrollbar{width:12px}.nd-router-preview::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-scrub-arrows{flex-direction:column;flex-shrink:0;gap:1px;margin-left:4px;display:flex}.nd-scrub-arrow{border:1px solid var(--c-border);background:var(--c-surface);width:16px;height:11px;color:var(--c-text-2,var(--c-text));cursor:pointer;border-radius:3px;justify-content:center;align-items:center;padding:0;transition:background .1s,color .1s,border-color .1s;display:flex}.nd-scrub-arrow:hover:not(:disabled){background:var(--c-accent);border-color:var(--c-accent);color:#fff}.nd-scrub-arrow:disabled{opacity:.35;cursor:default}.nd-splitter-sep{align-items:center;gap:6px;margin-bottom:6px;display:flex}.nd-splitter-sep-label{color:var(--c-text-3);flex-shrink:0;font-size:10px}.nd-splitter-sep-input{border:1px solid var(--c-border);background:var(--c-bg);min-width:0;color:var(--c-text);border-radius:4px;flex:1;padding:3px 6px;font-family:ui-monospace,monospace;font-size:11px}.nd-splitter-count{font-variant-numeric:tabular-nums;color:var(--c-text-3);background:var(--c-accent-bg,#0000000d);border-radius:4px;flex:none;padding:2px 6px;font-size:10px}.nd-splitter-items{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex;overflow-y:auto}.nd-splitter-empty{color:var(--c-text-3);padding:8px 2px;font-size:10px}.nd-splitter-item{flex-direction:column;flex:none;gap:3px;display:flex}.nd-splitter-item-head{justify-content:space-between;align-items:center;gap:6px;min-height:16px;display:flex}.nd-splitter-item-idx{font-variant-numeric:tabular-nums;color:var(--c-text-3);background:var(--c-accent-bg,#0000000d);border-radius:4px;place-items:center;width:16px;height:16px;font-size:10px;font-weight:600;display:grid}.nd-splitter-reset{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-accent);cursor:pointer;border-radius:3px;padding:1px 6px;font-size:10px}.nd-splitter-reset:hover{border-color:var(--c-accent)}.nd-splitter-edit{box-sizing:border-box;resize:none;border:1px solid var(--c-border);background:var(--c-bg);width:100%;color:var(--c-text);white-space:pre-wrap;word-break:break-word;border-radius:4px;padding:6px 8px;font-size:11px;line-height:1.45;overflow:hidden}.nd-splitter-edit:focus{border-color:var(--c-accent);outline:none}.nd-imgsplitter-head{justify-content:flex-end;display:flex}.nd-imgsplitter-count{font-variant-numeric:tabular-nums;color:var(--c-text-3);background:var(--c-accent-bg,#0000000d);border-radius:4px;padding:2px 6px;font-size:10px}.nd-imgsplitter-grid{flex:auto;grid-template-columns:repeat(2,1fr);align-content:start;gap:6px;min-height:0;display:grid;overflow-y:auto}.nd-imgsplitter-cell{aspect-ratio:1;border:1px solid var(--c-border);background:var(--c-bg);border-radius:6px;position:relative;overflow:hidden}.nd-imgsplitter-thumb{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.nd-imgsplitter-idx{font-variant-numeric:tabular-nums;color:#fff;background:#0009;border-radius:4px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9px;font-weight:600;display:grid;position:absolute;top:3px;left:3px}.nd-viewer3d-canvas-wrap{background:var(--c-surface2);border-radius:4px;flex:1;width:100%;min-height:180px;position:relative;overflow:hidden}.nd-viewer3d-canvas{width:100%;height:100%;display:block}.nd-viewer3d-empty{color:var(--c-text-3);pointer-events:none;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute;inset:0}.nd-batch-grid{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:3px;max-height:160px;padding:2px;display:grid;overflow-y:auto}.nd-batch-grid::-webkit-scrollbar{width:12px}.nd-batch-grid::-webkit-scrollbar-track{background:0 0}.nd-batch-grid::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:6px}.nd-batch-thumb-wrap{aspect-ratio:1;border:1px solid var(--c-border);border-radius:3px;position:relative;overflow:hidden}.nd-batch-thumb{object-fit:cover;width:100%;height:100%;display:block}.nd-batch-remove{color:#fff;cursor:pointer;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;padding:0;font-size:9px;line-height:1;display:none;position:absolute;top:1px;right:1px}.nd-batch-thumb-wrap:hover .nd-batch-remove,.nd-img-tile:hover .nd-batch-remove{display:flex}.nd-img-tile .nd-batch-remove{z-index:2}.nd-img-tile--draggable{cursor:grab}.nd-img-tile--draggable:active{cursor:grabbing}.nd-img-tile-idx{font-variant-numeric:tabular-nums;color:#fff;z-index:2;pointer-events:none;background:#0009;border-radius:4px;place-items:center;min-width:14px;height:14px;padding:0 3px;font-size:9px;font-weight:600;display:grid;position:absolute;top:1px;left:1px}.nd-img-tile-replace{color:#fff;cursor:pointer;z-index:2;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;padding:0;font-size:10px;line-height:1;display:none;position:absolute;bottom:1px;right:1px}.nd-img-tile:hover .nd-img-tile-replace{display:flex}.nd-img-tile--dragging{opacity:.4}.nd-img-tile--droptarget{outline:2px solid var(--c-accent);outline-offset:-2px}.nd-batch-replace-hint{color:var(--c-accent);background:var(--c-accent-bg,#0000000d);border:1px solid var(--c-accent);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;font-size:10px;display:flex}.nd-batch-replace-cancel{color:var(--c-text-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:10px;text-decoration:underline}.nd-batch-replace-cancel:hover{color:var(--c-text)}.nd-batch-order{align-items:center;gap:6px}.nd-batch-order-label{color:var(--c-text-3);flex-shrink:0;font-size:10px}.nd-batch-slider{width:100%;margin-top:2px}.nd-batch{overflow:hidden}.nd-img-grid--fluid{flex:auto;grid-auto-rows:1fr;min-height:0;max-height:none;overflow:hidden}.nd-img-grid--fluid .nd-img-tile{aspect-ratio:auto;height:auto;min-height:0}.nd-img-grid--fluid .nd-img-tile-thumb{object-fit:contain;width:100%;height:100%}.nd-generate .nd-batch-thumb-wrap{cursor:pointer}.nd-lightbox{z-index:9999;cursor:pointer;background:#000000d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.nd-lightbox-img{object-fit:contain;cursor:default;border-radius:6px;max-width:85vw;max-height:80vh;box-shadow:0 8px 40px #00000080}.nd-lightbox-close{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:background .15s;display:flex;position:absolute;top:20px;right:24px}.nd-lightbox-close:hover{background:#ffffff40}.nd-lightbox-nav{align-items:center;gap:16px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.nd-lightbox-btn{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:background .15s;display:flex}.nd-lightbox-btn:hover{background:#ffffff40}.nd-lightbox-btn:disabled{opacity:.3;cursor:default}.nd-lightbox-count{color:#ffffffb3;font-family:Inter,sans-serif;font-size:12px}.nd-compare-slider{border:1px solid var(--c-border);cursor:ew-resize;-webkit-user-select:none;user-select:none;border-radius:4px;position:relative;overflow:hidden}.nd-compare-img{pointer-events:none;width:100%;display:block}.nd-compare-clip{height:100%;position:absolute;top:0;left:0;overflow:hidden}.nd-compare-clip .nd-compare-img{width:var(--nd-compare-w,100%);max-width:none;display:block}.nd-compare-handle{pointer-events:none;width:0;position:absolute;top:0;bottom:0;transform:translate(-50%)}.nd-compare-handle-line{background:#fff;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0;left:50%;box-shadow:0 0 4px #0006}.nd-drop-zone{border:1.5px dashed var(--c-border);text-align:center;color:var(--c-text-3);cursor:pointer;background:var(--c-surface);border-radius:4px;padding:16px 8px;font-size:10px;transition:border-color .15s,background .15s}.nd-drop-zone:hover{border-color:var(--c-accent);background:var(--c-accent-bg,#00000005)}.nd-output-list{flex-direction:column;gap:4px;display:flex}.nd-output-row{background:var(--c-surface);border:1px solid var(--c-border);color:var(--c-text-2);border-radius:4px;align-items:center;gap:6px;min-width:0;padding:5px 7px;font-size:10px;display:flex}.nd-output-idx{background:var(--c-accent-bg,#0000000d);width:14px;height:14px;color:var(--c-text-3);font-variant-numeric:tabular-nums;border-radius:3px;flex:none;place-items:center;font-size:9px;display:grid}.nd-output-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.nd-outputlive-body{flex-direction:column;gap:6px;min-height:0;display:flex}.nd-outputlive-status{color:var(--c-accent);align-items:center;gap:6px;font-size:10px;font-weight:500;display:flex}.nd-outputlive-dot{background:var(--c-accent);border-radius:50%;flex:none;width:7px;height:7px;animation:1.6s ease-in-out infinite nd-live-pulse}@keyframes nd-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.nd-outputlive-text{color:var(--c-text-2);background:var(--c-surface);border:1px solid var(--c-border);white-space:pre-wrap;word-break:break-word;border-radius:4px;max-height:96px;padding:6px 8px;font-size:10px;line-height:1.45;overflow-y:auto}.nd-palette{padding:8px 0}.nd-palette--nodes{flex:1;min-height:0;overflow-y:auto}.nd-palette--nodes.nd-palette--collapsed{flex:none;overflow-y:visible}.nd-palette-header{color:var(--c-text-3);justify-content:space-between;align-items:center;padding:0 10px 8px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.nd-palette-title-toggle{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}.nd-palette-title-toggle:hover{color:var(--c-text)}.nd-palette-reset{width:20px;height:20px;color:var(--c-text-3);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:color .1s,background .1s;display:flex}.nd-palette-reset:hover{color:var(--c-text);background:var(--c-hover)}.nd-palette-section{padding:0 0 6px}.nd-palette-section+.nd-palette-section{padding-top:4px}.nd-palette-section-label{letter-spacing:.1em;text-transform:uppercase;color:var(--c-text-3);padding:2px 10px 3px;font-family:Inter,sans-serif;font-size:8px;font-weight:500}.nd-palette-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:4px;padding:0 8px;display:grid}.nd-palette-btn{aspect-ratio:16/9;cursor:grab;border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);letter-spacing:.02em;text-align:center;overflow-wrap:break-word;word-break:break-word;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:center;align-items:center;padding:4px 2px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;line-height:1.2;transition:background .1s,border-color .1s;display:flex}.nd-palette-btn:hover{background:var(--c-surface2);border-color:var(--c-border-hi)}.nd-palette-btn:active{cursor:grabbing}.nd-palette-templates{flex-shrink:0}.nd-palette-templates .nd-palette-tmpl-list{padding:0 8px}.nd-palette-templates-header{color:var(--c-text-3);justify-content:space-between;align-items:center;padding:0 10px 6px;font-family:Inter,sans-serif;font-size:13px;font-weight:600;display:flex}.nd-palette-tmpl-list{grid-template-columns:1fr 1fr;gap:4px;max-height:50vh;padding:0 8px;display:grid;overflow-y:auto}.nd-palette-tmpl-list::-webkit-scrollbar{width:8px}.nd-palette-tmpl-list::-webkit-scrollbar-track{background:0 0}.nd-palette-tmpl-list::-webkit-scrollbar-thumb{background:var(--c-border-hi);border-radius:4px}.nd-palette-tmpl-row{position:relative}.nd-palette-tmpl-btn{border:1px solid var(--c-border-hi);background:var(--c-surface2);width:100%;color:var(--c-text);letter-spacing:.02em;text-align:center;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;padding:8px 4px;font-family:Inter,sans-serif;font-size:11px;font-weight:500;transition:background .1s,border-color .1s;display:flex;overflow:hidden}.nd-palette-tmpl-btn:hover{background:var(--c-surface-deep);border-color:var(--c-accent)}.nd-palette-tmpl-delete{width:14px;height:14px;color:var(--c-text-3);cursor:pointer;background:#00000014;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:10px;line-height:1;display:none;position:absolute;top:2px;right:2px}.nd-palette-tmpl-row:hover .nd-palette-tmpl-delete{display:flex}.nd-palette-tmpl-delete:hover{color:var(--c-text);background:#00000026}.nd-ctx-menu{z-index:100;background:var(--c-surface);border:1px solid var(--c-border);-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;min-width:150px;padding:4px;display:flex;position:absolute;box-shadow:0 4px 16px #00000026}.nd-ctx-item{cursor:pointer;text-align:left;-webkit-appearance:none;background:0 0;border:none;border-radius:5px;outline:none;align-items:center;gap:8px;width:100%;padding:6px 10px;transition:background .1s;display:flex}.nd-ctx-item:hover,.nd-ctx-item:focus-visible{background:var(--c-accent-bg,#0000000f)}.nd-ctx-label{color:var(--c-text);font-size:11px;font-weight:500}.nd-ctx-desc{color:var(--c-text-3);font-family:Inter,sans-serif;font-size:9px}.nd-group{border:1px solid var(--c-border);pointer-events:none;border-radius:10px}.nd-group-header{background:color-mix(in srgb, var(--c-surface) 50%, transparent);cursor:grab;pointer-events:auto;-webkit-user-select:none;user-select:none;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;padding:6px 12px;display:flex}.nd-group-header:active{cursor:grabbing}.nd-group-title{letter-spacing:.06em;text-transform:uppercase;font-family:Inter,sans-serif;font-size:11px;font-weight:600}.nd-group-title-input{letter-spacing:.06em;text-transform:uppercase;background:var(--c-surface);border:1px solid var(--c-border-hi);color:inherit;border-radius:3px;outline:none;width:120px;padding:2px 6px;font-family:Inter,sans-serif;font-size:11px;font-weight:600}.nd-group-delete{width:22px;height:22px;color:inherit;cursor:pointer;opacity:0;pointer-events:auto;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:opacity .15s,background .1s;display:flex}.nd-group:hover .nd-group-delete{opacity:.6}.nd-group-delete:hover{background:#0000001a;opacity:1!important}.nd-ctx-group{padding:4px 0}.nd-ctx-group+.nd-ctx-group{border-top:1px solid var(--c-border);margin-top:2px}.nd-ctx-group-label{letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-muted);padding:4px 10px 3px;font-family:Inter,sans-serif;font-size:9px;font-weight:500}.nd-ctx-item--accent{border-bottom:1px solid var(--c-border);margin-bottom:2px}.nd-ctx-item--accent .nd-ctx-label{color:var(--c-accent);font-weight:600}.nd-ctx-name-input{border:1px solid var(--c-border-hi);background:var(--c-surface);width:100%;color:var(--c-text);border-radius:4px;outline:none;padding:4px 8px;font-family:Inter,sans-serif;font-size:11px;font-weight:500}.nd-ctx-name-input:focus{border-color:var(--c-border-act)}.nd-box-select{border:1.5px dashed var(--c-accent);background:color-mix(in srgb, var(--c-accent) 8%, transparent);pointer-events:none;z-index:50;border-radius:3px;position:absolute}.pose-scan-modal{width:540px}.pose-scan-body{flex-direction:column;gap:14px;display:flex}.pose-scan-drop{aspect-ratio:4/3;border:1px dashed var(--c-border-hi);border-radius:var(--radius-sm);background:var(--c-surface-2,#0000000a);cursor:pointer;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.pose-scan-drop.has-image{cursor:default;border-style:solid}.pose-scan-drop img{object-fit:contain;background:#000;width:100%;height:100%}.pose-scan-preview-canvas{cursor:zoom-in;background:#000;width:100%;height:100%;display:block}.pose-scan-drop-empty{text-align:center;pointer-events:none}.pose-scan-drop-hint{font-family:var(--font-mono,"DM Mono", monospace);color:var(--c-text);font-size:13px}.pose-scan-drop-sub{color:var(--c-text-2);margin-top:6px;font-size:11px}.pose-scan-replace,.pose-scan-crop{color:#fff;border-radius:var(--radius-xs,4px);font-size:11px;font-family:var(--font-mono,"DM Mono", monospace);cursor:pointer;background:#0000008c;border:none;padding:4px 10px;position:absolute;top:8px}.pose-scan-replace{right:8px}.pose-scan-crop{right:76px}.pose-scan-replace:hover,.pose-scan-crop:hover{background:#000000bf}.pose-scan-status{flex-direction:column;gap:8px;min-height:60px;display:flex}.pose-scan-msg{font-family:var(--font-mono,"DM Mono", monospace);color:var(--c-text-2);font-size:12px}.pose-scan-msg-running{color:var(--c-text)}.pose-scan-msg-success{color:var(--c-accent,#5fb878)}.pose-scan-msg-error{color:#d35a5a}.pose-scan-msg-warn{color:#d6a23b}.pose-scan-stats{font-family:var(--font-mono,"DM Mono", monospace);color:var(--c-text-2);border-radius:var(--radius-xs,4px);background:#0000000a;flex-direction:column;gap:4px;padding:8px 10px;font-size:11px;display:flex}.pose-scan-stats details{cursor:pointer}.pose-scan-stats code{opacity:.7;word-break:break-all;margin-top:6px;font-size:10px;display:block}.pose-scan-footer{justify-content:space-between;gap:10px;display:flex}.pose-scan-btn-cancel,.pose-scan-btn-apply{font-family:var(--font-mono,"DM Mono", monospace);border-radius:var(--radius-xs,4px);border:1px solid var(--c-border-hi);cursor:pointer;background:var(--c-surface);color:var(--c-text);padding:8px 18px;font-size:12px}.pose-scan-btn-apply{background:var(--c-accent,#5fb878);color:#fff;border-color:var(--c-accent,#5fb878)}.pose-scan-btn-apply:disabled{opacity:.4;cursor:not-allowed}.pose-scan-btn-cancel:hover,.pose-scan-btn-apply:hover:not(:disabled){filter:brightness(1.05)}
