:root{font-size:14px;line-height:normal;font-weight:400;color-scheme:dark;interpolate-size:allow-keywords;--btn-size: 22px;--btn-size-text: 26px;--btn-icon-size: 13px;--btn-text-padding-x: 10px;--btn-radius: 6px;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;-moz-user-select:none;user-select:none;-webkit-user-select:none;touch-action:manipulation;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}img,svg,canvas{-webkit-user-drag:none;-webkit-touch-callout:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}input,textarea,[contenteditable=true]{-moz-user-select:text;user-select:text;-webkit-user-select:text}input,select,button,textarea{font-family:inherit;font-size:inherit}.hidden{display:none!important}#app{display:flex;flex-direction:column;height:100%;padding-right:calc(var(--layers-panel-w, 250px) + var(--inspector-dock-w, 320px));position:relative}body.panels-collapsed #layers-panel,body.panels-collapsed #layer-property-panel,body.panels-collapsed #ucui-files-assets,body.panels-collapsed #resource-window,body.panels-collapsed #history-panel{display:none!important}body.panels-collapsed #app{padding-right:0!important;padding-left:0!important}body.layers-floated #app{padding-right:var(--inspector-dock-w, 320px)}body.lpp-floated #app{padding-right:var(--layers-panel-w, 250px)}body.layers-floated.lpp-floated #app{padding-right:0}body.layers-floated #layers-panel{border-radius:var(--wm-radius);border-left:var(--wm-border);box-shadow:var(--wm-shadow)}body.lpp-floated #layer-property-panel{border-radius:var(--wm-radius);border-right:var(--wm-border);box-shadow:var(--wm-shadow)}.lp-resizer,.lpp-resizer{position:absolute;left:0;top:0;bottom:0;width:5px;cursor:col-resize;background:transparent;z-index:26;transition:background .12s ease}.lp-resizer:hover,.lpp-resizer:hover{background:hsl(var(--primary) / .4)}body.layers-floated #layers-panel .lp-resizer,body.lpp-floated #layer-property-panel .lpp-resizer,body.dock-columns-enabled .lp-resizer,body.dock-columns-enabled .lpp-resizer{display:none}#top-bar{position:fixed;top:0;left:0;right:0;display:flex;align-items:stretch;background:var(--panel);border-bottom:1px solid var(--border);flex-shrink:0;z-index:2500;height:var(--top-bar-h)}#app{padding-top:var(--top-bar-h)}#menu-bar{display:flex;align-items:center;gap:0;padding:0 4px;background:transparent;border-bottom:none;flex-shrink:0;height:100%;order:2;margin-left:auto}.menu-bar-item{position:relative}.menu-bar-btn{background:transparent;border:none;color:hsl(var(--muted-foreground));padding:3px 10px;font-size:.85em;cursor:pointer;border-radius:var(--radius-sm);height:24px;line-height:18px;transition:background-color .12s,color .12s}.menu-bar-btn:hover,.menu-bar-btn.active{background:var(--hover);color:hsl(var(--foreground))}.menubar-dropdown{position:absolute;top:100%;left:0;right:auto;z-index:999999;background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 0;min-width:220px;box-shadow:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d,0 10px 15px -3px #00000059;display:flex;flex-direction:column}.menubar-dropdown.align-right{left:auto;right:0}.menubar-dropdown button{background:transparent;border:none;color:var(--text);text-align:left;padding:5px 12px 5px 20px;font-size:.82em;cursor:pointer;width:100%;display:flex;align-items:center;border-radius:0}.menubar-dropdown button:hover{background:var(--hover);color:hsl(var(--foreground))}.menu-divider{height:1px;background:var(--border);margin:4px 6px;opacity:.6}.menu-shortcut{color:hsl(var(--muted-foreground));font-size:.85em;margin-left:auto;padding-left:20px;text-align:right;white-space:nowrap;font-family:Geist Mono Variable,ui-monospace,monospace;font-feature-settings:"tnum" 1}.menu-check{position:absolute;left:6px;color:hsl(var(--primary));font-size:.9em;width:12px;text-align:center}.menubar-dropdown button{position:relative}#options-bar{display:flex;align-items:center;gap:8px;padding:0 12px;background:transparent;border-bottom:none;position:relative;z-index:20;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;height:100%;order:1}#options-bar>div{display:flex;align-items:center;gap:8px;height:100%}#options-bar>div.hidden{display:none}.options-divider{width:1px;height:24px;background-color:var(--border);opacity:.5;margin:0 4px}.size-label-text{font-size:.75em;color:var(--text-dim)}.fg-bg-colors{position:relative;width:32px;height:36px;flex-shrink:0;grid-column:1 / -1;justify-self:center;margin:4px 0 2px}.tool-color-swatch{padding:3px!important}.tool-color-swatch .tcs-chip{display:block;width:100%;height:100%;min-height:18px;border-radius:var(--radius-sm);background:#000;box-shadow:inset 0 0 0 1px #ffffff2e,inset 0 0 0 2px #00000059}.tool-color-swatch.active{box-shadow:0 0 0 2px hsl(var(--ring) / .45)}.ucui-color-swatch-btn{padding:5px!important}.ucui-color-swatch-btn .tcs-chip{display:block;width:100%;height:100%;min-width:18px;min-height:18px;border-radius:5px;background:#000;box-shadow:inset 0 0 0 1px #fff3,inset 0 0 0 2px #00000059}.ucui-color-swatch-btn.active{box-shadow:0 0 0 2px hsl(var(--ring) / .5)}#color-swatch-popover{position:fixed;z-index:2400;width:-moz-max-content;width:max-content;padding:8px;display:flex;flex-direction:column;gap:7px;background:hsl(var(--card));border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 22px -6px #0000008c,0 0 0 1px #0000000f}#color-swatch-popover.hidden{display:none}#color-swatch-popover .tcs-sb{display:block;border-radius:5px;cursor:crosshair;touch-action:none}#color-swatch-popover .tcs-hue{display:block;border-radius:4px;cursor:ew-resize;touch-action:none}#color-swatch-popover .tcs-row{display:flex;align-items:center;gap:4px}#color-swatch-popover .tcs-hash{font-size:12px;color:hsl(var(--muted-foreground))}#color-swatch-popover .tcs-hex{flex:1;min-width:0;font-size:12px;font-variant-numeric:tabular-nums;text-transform:uppercase;padding:4px 6px;background:hsl(var(--muted) / .4);color:hsl(var(--foreground));border:1px solid var(--border);border-radius:5px}#color-swatch-popover .tcs-hex:focus{outline:none;border-color:var(--accent)}#color-swatch-popover .tcs-recents{display:flex;flex-wrap:wrap;gap:4px}#color-swatch-popover .tcs-recent{width:16px;height:16px;padding:0;border:1px solid hsl(0 0% 0% / .3);border-radius:3px;cursor:pointer;transition:transform 90ms}#color-swatch-popover .tcs-recent:hover{transform:scale(1.15);border-color:hsl(var(--ring))}.fg-color-swatch,.bg-color-swatch{position:absolute;width:22px;height:22px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .12s,box-shadow .12s}.fg-color-swatch:hover,.bg-color-swatch:hover{border-color:hsl(var(--ring));box-shadow:0 0 0 2px hsl(var(--ring) / .2)}.fg-color-swatch::-webkit-color-swatch-wrapper,.bg-color-swatch::-webkit-color-swatch-wrapper{padding:0}.fg-color-swatch::-webkit-color-swatch,.bg-color-swatch::-webkit-color-swatch{border:none;border-radius:calc(var(--radius-sm) - 1px)}.fg-color-swatch{top:0;left:0;z-index:2}.bg-color-swatch{bottom:0;right:0;z-index:1}.fg-bg-swap,.fg-bg-default{position:absolute;background:none;border:none;color:#999;cursor:pointer;font-size:10px;padding:0;line-height:1}.fg-bg-swap{top:0;right:0;font-size:12px}.fg-bg-default{bottom:0;left:0;font-size:9px;font-weight:700}.fg-bg-swap:hover,.fg-bg-default:hover{color:#fff}#workspace{display:flex;flex:1;overflow:hidden}#tools-panel{position:fixed;top:var(--top-bar-h);left:0;width:calc(var(--btn-size) + 8px);height:auto;max-height:calc(100vh - var(--top-bar-h));background-color:var(--panel);border:var(--wm-border);border-left:none;border-radius:0 var(--wm-radius) var(--wm-radius) 0;box-shadow:2px 0 10px #0000004d;display:flex;flex-direction:column}body.toolbox-floated #tools-panel{border-left:var(--wm-border);border-radius:var(--wm-radius)}#tools-panel.hidden{display:none!important}.tools-titlebar{flex-shrink:0;padding:0;justify-content:flex-end;height:14px;background:transparent;border-bottom:none;overflow:hidden}.tools-titlebar>span:first-child{display:none}.tools-titlebar>button{padding:0 4px;font-size:11px;line-height:1;height:100%;color:#555;opacity:.6;transition:opacity .1s,color .1s}.tools-titlebar>button:hover{color:#fff;opacity:1}#tools-palette{display:grid;grid-template-columns:var(--btn-size);gap:2px;padding:4px 6px 4px 2px;overflow-y:auto;min-height:0}body.toolbox-floated #tools-palette{padding:4px 6px}.tools-group-label{grid-column:1 / -1;font-size:.6em;color:#666;text-transform:uppercase;letter-spacing:.8px;padding:2px 2px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tools-divider{grid-column:1 / -1;height:1px;background-color:#333;margin:2px 0}.divider{width:1px;height:28px;background-color:#444;margin:0 4px}button{border-radius:6px;border:1px solid transparent;padding:.5em 1em;font-size:.9em;font-weight:500;font-family:inherit;background-color:#333;cursor:pointer;transition:all .15s ease;color:var(--text)}button:hover{background-color:#444;border-color:var(--accent);color:#fff}.tool-btn{display:flex;align-items:center;justify-content:center;width:var(--btn-size);height:var(--btn-size);padding:0;border-radius:var(--btn-radius);background-color:transparent;border:1px solid transparent;font-size:11px;font-weight:500;color:hsl(var(--foreground));transition:background-color .12s,border-color .12s,color .12s}.tool-btn svg{width:var(--btn-icon-size);height:var(--btn-icon-size);stroke-width:1.8}[data-lucide]{display:inline-block;width:var(--btn-icon-size);height:var(--btn-icon-size);vertical-align:middle}.tool-btn:hover{background-color:var(--hover);border-color:transparent}.tool-btn.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:transparent}.tool-btn.active svg{color:hsl(var(--primary-foreground))}.tool-btn-flyout{position:relative}.tool-flyout-marker{position:absolute;right:2px;bottom:2px;width:0;height:0;border-style:solid;border-width:0 0 5px 5px;border-color:transparent transparent rgba(255,255,255,.55) transparent;pointer-events:none}.tool-btn-flyout.active .tool-flyout-marker{border-color:transparent transparent #fff transparent}.tool-btn-brushcaret{position:relative}.brush-caret{position:absolute;right:0;bottom:-1px;font-size:8px;line-height:1;color:var(--text-dim);padding:1px 1px 2px 2px;border-radius:3px 0 0;cursor:pointer;pointer-events:auto}.brush-caret:hover{color:var(--text);background:var(--hover)}#brush-quick-menu{position:fixed;z-index:1400;min-width:190px;max-height:60vh;overflow:auto;padding:4px;border-radius:var(--radius-sm);background:hsl(var(--popover));border:1px solid var(--border);box-shadow:0 8px 24px #0006;font-size:12px}#brush-quick-menu.hidden{display:none}.bqm-cat{padding:5px 8px 3px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.bqm-item{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;cursor:pointer;color:var(--text);white-space:nowrap}.bqm-item:hover{background:var(--hover)}.bqm-item.active{background:hsl(var(--primary) / .25)}.bqm-swatch{width:22px;height:16px;flex:0 0 auto;border-radius:3px;background:var(--surface);border:1px solid var(--border);background-size:cover;background-position:center}.sb-tip-stack-item{position:relative;width:40px;height:40px;flex:0 0 auto;border-radius:4px;border:1px solid var(--border);background:#000;cursor:grab;overflow:hidden}.sb-tip-stack-item:active{cursor:grabbing}.sb-tip-stack-item canvas{display:block;width:100%;height:100%}.sb-tip-stack-ord{position:absolute;top:0;left:0;min-width:12px;height:12px;padding:0 2px;background:hsl(var(--primary));color:#fff;font-size:8px;line-height:12px;text-align:center;font-family:var(--font-mono, monospace);border-bottom-right-radius:4px}.sb-tip-stack-color{position:absolute;bottom:2px;left:2px;width:8px;height:8px;border-radius:50%;background:conic-gradient(red,#0f0,#00f,red);box-shadow:0 0 0 1px #000}.sb-tip-stack-del{position:absolute;top:-1px;right:-1px;width:14px;height:14px;padding:0;line-height:12px;background:#000000b3;color:#fff;border:none;font-size:11px;cursor:pointer;border-bottom-left-radius:4px}.sb-tip-stack-del:hover{background:#c0392b}#sb-preset-picker{display:flex;align-items:center;gap:6px;width:100%;padding:4px 6px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);cursor:pointer;font-size:12px}#sb-preset-picker:hover{border-color:var(--text-dim)}.sb-preset-sw{width:40px;height:16px;flex:0 0 auto;border-radius:3px;border:1px solid var(--border);background:var(--surface);background-size:cover;background-position:center}#sb-preset-picker-name{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-preset-caret{flex:0 0 auto;color:var(--text-dim);font-size:10px}#sb-preset-menu{position:fixed;z-index:1500;max-height:60vh;overflow:auto;padding:4px;border-radius:var(--radius-sm);background:hsl(var(--popover));border:1px solid var(--border);box-shadow:0 8px 24px #0006;font-size:12px}.spm-cat{padding:5px 8px 3px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}.spm-item{display:flex;align-items:center;gap:8px;padding:5px 8px;border-radius:4px;cursor:pointer;color:var(--text);white-space:nowrap}.spm-item:hover{background:var(--hover)}.spm-item.active{background:hsl(var(--primary) / .25)}.spm-sw{width:44px;height:18px;flex:0 0 auto;border-radius:3px;border:1px solid var(--border);background:var(--surface);background-size:cover;background-position:center}.bqm-size{display:flex;align-items:center;gap:8px;padding:6px 8px 8px;border-bottom:1px solid var(--border);margin-bottom:2px}.bqm-size-label{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);flex:0 0 auto}.bqm-size-slider{flex:1 1 auto;min-width:90px;accent-color:hsl(var(--primary))}.bqm-size-val{flex:0 0 auto;min-width:26px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text);font-family:var(--font-mono, monospace);font-size:11px}.tool-flyout{position:fixed;background:var(--panel);border:1px solid var(--border);border-radius:4px;box-shadow:0 6px 18px #0000008c;padding:3px;z-index:99999;display:flex;flex-direction:column;gap:2px;min-width:140px}.tool-flyout button{display:flex;align-items:center;gap:8px;padding:6px 10px;background:transparent;border:none;color:var(--text);font-size:12px;cursor:pointer;border-radius:3px;text-align:left;width:100%}.tool-flyout button:hover{background:var(--hover)}.tool-flyout button.active{background:var(--accent);color:#fff}.tool-flyout button svg{width:16px;height:16px;flex-shrink:0}input[type=color]{border:none;width:34px;height:34px;padding:0;background:none;cursor:pointer;border-radius:6px}input[type=range]{width:100px;height:var(--slider-track-h, 4px);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer;touch-action:none}input[type=range]::-webkit-slider-runnable-track{height:var(--slider-track-h, 4px);background:linear-gradient(to right,hsl(var(--primary)) 0%,hsl(var(--primary)) var(--slider-pct, 50%),hsl(var(--muted)) var(--slider-pct, 50%));border-radius:9999px;border:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:var(--slider-thumb-size, 14px);height:var(--slider-thumb-size, 14px);border-radius:var(--slider-thumb-radius, 50%);background:hsl(var(--background));border:2px solid hsl(var(--primary));outline:none;margin-top:calc((var(--slider-track-h, 4px) - var(--slider-thumb-size, 14px)) / 2);-webkit-transition:transform .1s ease,box-shadow .15s ease;transition:transform .1s ease,box-shadow .15s ease;box-shadow:0 1px 2px #0006}input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 1px 4px #00000080,0 0 0 4px hsl(var(--primary) / .18)}input[type=range]:active::-webkit-slider-thumb{transform:scale(.95)}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px hsl(var(--ring) / .4)}input[type=range]:focus{outline:none}input[type=range]::-moz-range-track{height:var(--slider-track-h, 4px);background:linear-gradient(to right,hsl(var(--primary)) 0%,hsl(var(--primary)) var(--slider-pct, 50%),hsl(var(--muted)) var(--slider-pct, 50%));border-radius:9999px;border:none}input[type=range]::-moz-range-thumb{width:var(--slider-thumb-size, 14px);height:var(--slider-thumb-size, 14px);border-radius:var(--slider-thumb-radius, 50%);background:hsl(var(--background));border:2px solid hsl(var(--primary));outline:none;-moz-transition:transform .1s ease,box-shadow .15s ease;transition:transform .1s ease,box-shadow .15s ease;box-shadow:0 1px 2px #0006}input[type=range]:hover::-moz-range-thumb{transform:scale(1.12)}input[type=range]:active::-moz-range-thumb{transform:scale(.95)}#size-label{font-size:.75em;color:var(--text-dim);min-width:24px;text-align:center}#canvas-container{flex-grow:1;display:flex;justify-content:center;align-items:center;background-color:var(--canvas-bg);background-image:radial-gradient(circle,rgba(255,255,255,.07) 1px,transparent 1.5px);background-size:var(--ws-dot-spacing, 24px) var(--ws-dot-spacing, 24px);position:relative;overflow:hidden;padding:0;touch-action:none}body.multi-artboard #canvas-container{overflow:auto}canvas#gpu-canvas:not(.artboard-canvas){display:none}canvas#gpu-canvas.artboard-canvas{position:absolute;left:0;top:0;margin:0;transform-origin:0 0;will-change:transform}#gpu-lost-overlay{position:fixed;bottom:20px;right:20px;z-index:999999;pointer-events:none}#gpu-lost-overlay .gpu-lost-modal{pointer-events:auto;background:var(--panel, #1f1f23);color:var(--text, #eaeaea);border:1px solid var(--border, #2a2a2e);border-radius:6px;padding:16px 18px;max-width:380px;box-shadow:0 4px 14px #00000073;font-size:13px;transition:opacity .3s,transform .3s}#gpu-lost-overlay.gpu-lost-recovered .gpu-lost-modal{opacity:0;transform:translateY(8px)}#gpu-lost-overlay .gpu-lost-title{font-size:14px;font-weight:600;margin-bottom:6px}#gpu-lost-overlay .gpu-lost-body{line-height:1.45;color:var(--text-dim, #b8b8b8);margin-bottom:8px;font-size:12px}#gpu-lost-overlay .gpu-lost-message{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;color:var(--text-dim, #888);background:#00000040;padding:5px 7px;border-radius:3px;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#gpu-lost-overlay .gpu-lost-status{font-size:11px;color:var(--text-dim, #9aa0a6);margin-bottom:10px}#gpu-lost-overlay .gpu-lost-actions{display:flex;justify-content:flex-end;gap:6px}#gpu-lost-overlay .gpu-lost-actions button{background:var(--btn-bg, #2a2a2e);color:var(--text, #eaeaea);border:1px solid var(--border, #3a3a3e);padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer}#gpu-lost-overlay #gpu-lost-recover,#gpu-lost-overlay .gpu-lost-primary{background:var(--accent, #9e9e9e);color:#fff;border-color:transparent}#gpu-lost-overlay .gpu-lost-actions button:hover{filter:brightness(1.08)}#gpu-lost-overlay .gpu-lost-actions button:disabled{opacity:.5;cursor:not-allowed}body.canvas-pan-ready #canvas-container,body.canvas-pan-ready #canvas-container canvas{cursor:grab}body.canvas-panning,body.canvas-panning *{cursor:grabbing!important}#ruler-corner{display:none;position:fixed;width:20px;height:20px;background:#2a2a2e;border-right:1px solid #444;border-bottom:1px solid var(--border);z-index:16;cursor:pointer}#ruler-corner:hover{background:#353538}#ruler-h{display:none;position:fixed;height:20px;background:#2a2a2e;border-bottom:1px solid var(--border);z-index:15;cursor:s-resize;image-rendering:pixelated;overflow:hidden}#ruler-v{display:none;position:fixed;width:20px;background:#2a2a2e;border-right:1px solid #444;z-index:15;cursor:e-resize;image-rendering:pixelated;overflow:hidden}#guide-overlay{position:absolute;pointer-events:none;z-index:13;display:none}#guide-overlay line{pointer-events:visibleStroke;cursor:move;stroke-width:3}#guide-overlay line.guide-h{stroke:#9e9e9e;stroke-width:1;stroke-dasharray:4 3}#guide-overlay line.guide-v{stroke:#9e9e9e;stroke-width:1;stroke-dasharray:4 3}#guide-overlay line:hover{stroke:#bdbdbd;stroke-width:2;filter:drop-shadow(0 0 2px #9e9e9e)}#guide-overlay line.guide-dragging{stroke:#f80;stroke-width:2}#guide-settings{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px 20px;z-index:2000;min-width:320px;box-shadow:0 3px 10px #00000073}#guide-settings h3{margin:0 0 12px;font-size:.9em;color:#ddd}.guide-presets-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.guide-presets-row button{padding:4px 10px;font-size:.75em;background:#2a2a30;border:1px solid var(--border);border-radius:4px;color:#bbb;cursor:pointer}.guide-presets-row button:hover{border-color:#9e9e9e;color:#fff}.guide-list{max-height:200px;overflow-y:auto;margin-bottom:12px}.guide-list-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:.8em;color:var(--text)}.guide-list-item input{width:70px;padding:3px 6px;background:#2a2a2e;border:1px solid var(--border);border-radius:3px;color:#eee;font-size:.9em}.guide-list-item .guide-del{background:none;border:none;color:#666;cursor:pointer;font-size:1em;padding:0 4px}.guide-list-item .guide-del:hover{color:#f44}.guide-add-row{display:flex;gap:6px;align-items:center;margin-bottom:12px}.guide-add-row select,.guide-add-row input{padding:4px 8px;background:#2a2a2e;border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.8em}.guide-add-row input{width:80px}.guide-actions{display:flex;gap:8px;justify-content:flex-end}.guide-actions button{padding:5px 14px;font-size:.8em;border-radius:4px;cursor:pointer}.guide-actions .guide-clear-btn{background:#3a2020;border:1px solid #664;color:#f88}.guide-actions .guide-clear-btn:hover{background:#4a2020}.guide-actions .guide-close-btn{background:#2a2a30;border:1px solid var(--border);color:var(--text)}.guide-actions .guide-close-btn:hover{background:var(--surface)}#bottom-bar{position:fixed;bottom:0;left:0;right:0;height:28px;display:flex;align-items:center;justify-content:center;background:hsl(var(--card));border-top:1px solid var(--border);z-index:2500;font-size:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none}#zoom-bar{display:flex;align-items:center;gap:6px;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}.zoom-bar-sep{border-left:1px solid var(--border);height:16px;margin:0 4px;opacity:.6}#zoom-indicator{min-width:42px;text-align:center;font-family:Geist Mono Variable,ui-monospace,monospace;font-size:.85em;color:hsl(var(--muted-foreground))}#zoom-bar button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:hsl(var(--foreground));width:22px;height:22px;font-size:.95em;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background-color .12s,border-color .12s}#zoom-bar button:hover{background:var(--hover)}#zoom-slider{width:120px;cursor:pointer}#fx-brush-panel{width:260px;background-color:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}#fx-brush-panel label{display:grid;grid-template-columns:1fr 36px;grid-template-rows:auto auto;gap:0 4px;color:var(--text);white-space:nowrap;margin-bottom:3px;align-items:center}#fx-brush-panel label input[type=range]{grid-row:2;grid-column:1;width:100%}#fx-brush-panel label span{grid-row:2;grid-column:2;color:var(--accent);font-variant-numeric:tabular-nums;text-align:right}#pattern-stamp-panel{width:260px;background-color:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}#pattern-stamp-panel label{display:grid;grid-template-columns:1fr 36px;grid-template-rows:auto auto;gap:0 4px;color:var(--text);white-space:nowrap;margin-bottom:3px;align-items:center}#pattern-stamp-panel label input[type=range]{grid-row:2;grid-column:1;width:100%}#pattern-stamp-panel label span{grid-row:2;grid-column:2;color:var(--accent);text-align:right;font-variant-numeric:tabular-nums}#ps-pattern-grid button{background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:1px;cursor:pointer;aspect-ratio:1;overflow:hidden}#ps-pattern-grid button.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}#ps-pattern-grid button img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}#brushes-browser-panel{position:fixed;left:88px;top:80px;width:190px;max-height:calc(100vh - 120px);background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);display:flex;flex-direction:column;overflow:hidden}.bb-header{cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.bb-header:active{cursor:grabbing}.floating-panel{position:fixed!important;z-index:1350;border-radius:var(--radius);background:var(--frost-surface, hsl(var(--card)));-webkit-backdrop-filter:blur(var(--panel-blur, 20px)) saturate(var(--panel-saturate, 1.3));backdrop-filter:blur(var(--panel-blur, 20px)) saturate(var(--panel-saturate, 1.3));box-shadow:0 10px 15px -3px #00000080,0 4px 6px -4px #0006,0 0 0 1px #0000000d;border:1px solid var(--frost-border, var(--border));max-height:calc(100vh - 100px);overflow:auto;flex-shrink:0!important;display:flex;flex-direction:column}.fp-titlebar{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:30px;background:hsl(var(--card));-webkit-backdrop-filter:blur(var(--panel-blur, 200px)) saturate(var(--panel-saturate, 1.3));backdrop-filter:blur(var(--panel-blur, 200px)) saturate(var(--panel-saturate, 1.3));color:hsl(var(--foreground));font-weight:500;font-size:12px;letter-spacing:-.01em;border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:sticky;top:0;z-index:1}.fp-titlebar:active{cursor:grabbing}[data-floating=true]>.gl-titlebar,[data-floating=true]>.bb-header,[data-floating=true]>.sg-titlebar,[data-floating=true]>.lpp-titlebar,[data-floating=true]>.console-header,[data-floating=true]>.pp-titlebar,[data-floating=true]>.resource-header,[data-floating=true]>.tools-titlebar,[data-floating=true]>.history-header,[data-floating=true]>.markers-panel-header,[data-floating=true]>.histogram-header,[data-floating=true]>.lb-header,[data-floating=true]>.tl-titlebar{background:hsl(var(--card))!important;-webkit-backdrop-filter:blur(var(--panel-blur, 200px)) saturate(var(--panel-saturate, 1.3));backdrop-filter:blur(var(--panel-blur, 200px)) saturate(var(--panel-saturate, 1.3))}.fp-titlebar button{background:transparent;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:14px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;line-height:1;transition:background-color .12s,color .12s}.fp-titlebar button:hover{background:hsl(var(--destructive) / .15);color:hsl(var(--destructive))}.floating-panel .sb-header{display:none}#stylus-manager-window{width:312px;overflow:visible}#stylus-manager-window .sm-titlebar{display:flex;align-items:center;justify-content:space-between;padding:0 10px;height:30px;background:hsl(var(--card));color:hsl(var(--foreground));font-weight:500;font-size:12px;letter-spacing:-.01em;border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}#stylus-manager-window .sm-titlebar:active{cursor:grabbing}#stylus-manager-window .sm-close{background:transparent;border:none;color:hsl(var(--muted-foreground));cursor:pointer;font-size:15px;line-height:1;width:20px;height:20px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .12s,color .12s}#stylus-manager-window .sm-close:hover{background:hsl(var(--destructive) / .15);color:hsl(var(--destructive))}#stylus-manager-window .sm-body{padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}#stylus-manager-window .sm-enable{display:flex;align-items:center;gap:7px;font-size:12px;color:hsl(var(--foreground));cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}#stylus-manager-window .sm-enable input{cursor:pointer;margin:0}#stylus-manager-window .sm-hint{margin:0;font-size:10.5px;line-height:1.4;color:hsl(var(--muted-foreground))}#stylus-manager-window .sm-graph{width:100%;aspect-ratio:1 / 1;display:block;border:1px solid var(--border);border-radius:6px;touch-action:none;cursor:crosshair;background:hsl(var(--card))}#stylus-manager-window .sm-axislabels{display:flex;justify-content:space-between;font-size:9.5px;color:hsl(var(--muted-foreground));margin-top:-2px}#stylus-manager-window .sm-axislabels span:nth-child(2){opacity:.75}#stylus-manager-window .sm-readout{text-align:center;font-size:11px;font-variant-numeric:tabular-nums;color:hsl(var(--foreground));background:hsl(var(--muted) / .4);border-radius:5px;padding:4px 0}#stylus-manager-window .sm-presets{display:flex;flex-wrap:wrap;gap:5px}#stylus-manager-window .sm-presets button{flex:1 1 auto;min-width:48px;padding:5px 4px;font-size:11px;background:hsl(var(--secondary) / .6);color:hsl(var(--foreground));border:1px solid var(--border);border-radius:5px;cursor:pointer;transition:background-color .12s,border-color .12s}#stylus-manager-window .sm-presets button:hover{background:hsl(var(--accent) / .18);border-color:var(--accent)}#stylus-manager-window .sm-section{display:flex;flex-direction:column;gap:6px;padding-top:9px;margin-top:3px;border-top:1px solid var(--border)}#stylus-manager-window .sm-row{display:flex;align-items:center;gap:8px}#stylus-manager-window .sm-row input[type=range]{flex:1 1 auto;min-width:0}#stylus-manager-window .sm-rowlbl{flex:0 0 64px;font-size:11px;color:hsl(var(--foreground))}#stylus-manager-window .sm-rowval{flex:0 0 38px;text-align:right;font-size:11px;font-variant-numeric:tabular-nums;color:hsl(var(--muted-foreground))}#stylus-manager-window .sm-obs{flex:1 1 auto;font-size:10.5px;font-variant-numeric:tabular-nums;color:hsl(var(--muted-foreground))}#stylus-manager-window .sm-btn{padding:4px 10px;font-size:11px;background:hsl(var(--secondary) / .6);color:hsl(var(--foreground));border:1px solid var(--border);border-radius:5px;cursor:pointer;transition:background-color .12s,border-color .12s}#stylus-manager-window .sm-btn:hover{background:hsl(var(--accent) / .18);border-color:var(--accent)}.bb-header{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;border-bottom:1px solid var(--border);background:var(--surface);gap:4px}.bb-title{font-weight:600;color:var(--text);letter-spacing:.2px;font-size:.85em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bb-header-actions{display:flex;gap:3px;align-items:center;flex-shrink:0}.bb-header-actions button{background:var(--bg);border:1px solid var(--border);color:var(--text-dim);font-size:.78em;padding:2px 6px;border-radius:3px;cursor:pointer;line-height:1.1}.bb-header-actions button:hover{color:var(--text);border-color:var(--accent)}.bb-search-row{padding:5px 8px 3px}.bb-size-row{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;gap:5px;padding:3px 8px 4px;font-size:.78em;color:var(--text-dim)}.bb-size-row input[type=range]{width:100%;accent-color:var(--accent)}.bb-size-row span{color:var(--accent);text-align:right;font-variant-numeric:tabular-nums}.bb-filters{display:flex;flex-wrap:wrap;gap:2px;padding:3px 8px 4px;border-bottom:1px solid var(--border)}.bb-filter{background:var(--bg);border:1px solid var(--border);color:var(--text-dim);font-size:.72em;padding:2px 7px;border-radius:10px;cursor:pointer;transition:border-color .1s,color .1s;line-height:1.2;white-space:nowrap}.bb-filter:hover{color:var(--text)}.bb-filter.active{background:var(--accent);color:#fff;border-color:var(--accent)}#bb-search{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:5px 8px;font-size:.9em;outline:none}#bb-search:focus{border-color:var(--accent)}.bb-recent-wrap{padding:4px 10px 6px}.bb-recent-strip{display:flex;gap:3px;overflow-x:auto;padding:2px 0;min-height:32px;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}.bb-recent-empty{color:var(--text-dim);font-size:.75em;padding:10px;text-align:center;font-style:italic}.bb-recent-item{flex:0 0 28px;width:28px;height:28px;padding:0;border-width:0}.bb-recent-item .bb-card-label{display:none}.bb-recent-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.bb-view-toggle{display:flex;gap:6px;align-items:center;padding:4px 10px;border-top:1px solid var(--border);background:var(--surface)}.bb-view-toggle .bb-filters{flex:1;min-width:0;display:flex;gap:3px;flex-wrap:nowrap;overflow-x:auto;padding:0;border-bottom:none;scrollbar-width:none}.bb-view-toggle .bb-filters::-webkit-scrollbar{display:none}.bb-view-toggle button{background:var(--bg);border:1px solid var(--border);color:var(--text-dim);padding:3px 6px;border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center}.bb-view-toggle button.active{color:var(--accent);border-color:var(--accent)}.bb-view-toggle button:hover{color:var(--text)}.bb-view-toggle svg{width:14px;height:14px}.bb-list{flex:1;overflow-y:auto;padding:6px 0 10px;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}.bb-section{margin-bottom:12px}.bb-section-header{font-size:.72em;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin:8px 0 4px;padding:0 10px}.bb-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:0 8px}.bb-card-tip{background:var(--bg);border:1px solid transparent;border-radius:4px;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;aspect-ratio:1;overflow:hidden;transition:border-color .1s}.bb-card-tip:hover{border-color:var(--accent)}.bb-card-tip img{width:100%;height:100%;flex:1;-o-object-fit:cover;object-fit:cover;display:block}.bb-card-label{font-size:.65em;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;text-align:center;margin-top:2px}.bb-cards-list{display:flex;flex-direction:column;gap:0;width:100%}.bb-card-list{background:transparent;border:none;border-bottom:1px solid var(--border);border-radius:0;padding:2px 10px;cursor:pointer;width:100%;box-sizing:border-box;transition:background .1s}.bb-cards-list .bb-card-list:last-child{border-bottom:none}.bb-card-list:hover{background:#ffffff1a}.bb-card-list.active{background:transparent;box-shadow:inset 0 0 0 2px var(--accent);border-bottom-color:transparent;border-radius:3px}.bb-card-list.active+.bb-card-list{border-top:0}.bb-card-list.active .bb-card-name{color:var(--accent);font-weight:600}.bb-card-list.active:hover{background:#ffffff0f}.bb-card-tip.active{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.bb-card-name{font-size:.82em;color:var(--text);margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bb-card-row{display:flex;gap:6px;align-items:center}.bb-card-tip-thumb{width:24px;height:24px;border-radius:3px;background:var(--surface);-o-object-fit:contain;object-fit:contain;flex-shrink:0}.bb-card-stroke{flex:1;height:24px;border-radius:3px;background:var(--surface);-o-object-fit:cover;object-fit:cover}.bb-empty{padding:20px;color:var(--text-dim);text-align:center;font-size:.85em}#bb-context-menu{position:fixed;z-index:999999;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:3px;min-width:160px;box-shadow:0 4px 12px #00000080}#bb-context-menu button{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text);padding:6px 10px;font-size:.85em;cursor:pointer;border-radius:3px}#bb-context-menu button:hover{background:var(--hover, rgba(255,255,255,.08))}#liquify-panel{width:260px;background-color:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}#liquify-panel label{display:grid;grid-template-columns:1fr 36px;grid-template-rows:auto auto;gap:0 4px;color:var(--text);white-space:nowrap;margin-bottom:3px;align-items:center}#liquify-panel label input[type=range]{grid-row:2;grid-column:1;width:100%}#liquify-panel label span{grid-row:2;grid-column:2;color:var(--accent);font-variant-numeric:tabular-nums;text-align:right}#studio-brush-panel{width:420px;background-color:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}#studio-brush-panel .sb-header,#studio-brush-panel .sb-presetbar{padding:6px 8px;border-bottom:1px solid var(--border);background:var(--surface)}#studio-brush-panel .sb-presetbar-title{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin-bottom:4px}#studio-brush-panel .sb-columns{display:flex;flex:1;overflow:hidden;min-height:0}#studio-brush-panel .sb-nav{width:130px;min-width:130px;border-right:1px solid var(--border);overflow-y:auto;background:var(--panel);scrollbar-width:thin;scrollbar-color:var(--surface) transparent}#studio-brush-panel .sb-nav-item{padding:5px 8px;font-size:.85em;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom:1px solid var(--border);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:4px}#studio-brush-panel .sb-nav-item:hover{background:var(--surface);color:var(--text)}#studio-brush-panel .sb-nav-item.active{background:var(--accent);color:#fff}#studio-brush-panel .sb-nav-toggle{width:13px;height:13px;margin:0;accent-color:var(--accent);cursor:pointer;vertical-align:middle;flex-shrink:0}#studio-brush-panel .sb-content{flex:1;overflow-y:auto;padding:0;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}#studio-brush-panel .sb-content::-webkit-scrollbar{width:5px}#studio-brush-panel .sb-content::-webkit-scrollbar-thumb{background:var(--surface);border-radius:3px}#studio-brush-panel .sb-topbar{padding:6px 8px;border-bottom:1px solid var(--border)}#studio-brush-panel .sb-pane{display:none;padding:6px 8px}#studio-brush-panel .sb-pane.active{display:block}#studio-brush-panel .sb-preview{border-top:1px solid var(--border);background:var(--bg);padding:4px;text-align:center}#studio-brush-panel .sb-preview canvas{width:100%;height:40px;border-radius:3px;background:#1a1a1a}#studio-brush-panel::-webkit-scrollbar{width:5px}#studio-brush-panel::-webkit-scrollbar-thumb{background:var(--surface);border-radius:3px}#studio-brush-panel::-webkit-scrollbar-track{background:transparent}#studio-brush-panel .sb-pane select,#studio-brush-panel .sb-topbar select{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 6px;cursor:pointer}#studio-brush-panel .sb-pane select:focus,#studio-brush-panel .sb-topbar select:focus{border-color:var(--accent);outline:none}#studio-brush-panel .sb-pane{display:none;flex-direction:column;gap:4px}#studio-brush-panel .sb-pane.active{display:flex}#studio-brush-panel .sb-pane label,#studio-brush-panel .sb-topbar label{display:flex;flex-wrap:wrap;align-items:center;gap:4px;color:var(--text);white-space:nowrap;margin-bottom:3px}#studio-brush-panel .sb-pane label:has(input[type=range]),#studio-brush-panel .sb-topbar label:has(input[type=range]){display:grid;grid-template-columns:1fr 36px;grid-template-rows:auto auto;gap:0 4px}#studio-brush-panel .sb-pane label input[type=range],#studio-brush-panel .sb-topbar label input[type=range]{grid-row:2;grid-column:1;width:100%;height:16px;accent-color:var(--accent);-webkit-user-select:auto;-moz-user-select:auto;user-select:auto;cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}#studio-brush-panel .sb-pane label span,#studio-brush-panel .sb-topbar label span{grid-row:2;grid-column:2;color:var(--accent);font-variant-numeric:tabular-nums;text-align:right;cursor:text;border-bottom:1px solid transparent;padding:0 2px;border-radius:2px}#studio-brush-panel .sb-pane label span:hover,#studio-brush-panel .sb-topbar label span:hover{border-bottom-color:var(--accent);background:var(--surface)}#studio-brush-panel .sb-pane label:has(input[type=checkbox]),#studio-brush-panel .sb-topbar label:has(input[type=checkbox]){display:flex;grid-template-columns:unset;grid-template-rows:unset;align-items:center;gap:6px}#studio-brush-panel .sb-pane label input[type=checkbox],#studio-brush-panel .sb-topbar label input[type=checkbox]{width:auto;margin:0;accent-color:var(--accent)}#studio-brush-panel .sb-pane label select,#studio-brush-panel .sb-topbar label select{grid-row:2;grid-column:1 / -1}#studio-brush-panel .sb-pane label input[type=color],#studio-brush-panel .sb-topbar label input[type=color]{grid-row:1;width:28px;height:20px;border:1px solid var(--border);border-radius:3px;padding:0;cursor:pointer}#studio-brush-panel .sb-pane label input[type=checkbox]{accent-color:var(--accent)}.stencil-preview{width:64px;height:64px;border:1px solid var(--border);border-radius:3px;background:var(--bg);margin:4px 0;overflow:hidden;image-rendering:pixelated}.stencil-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}#stencil-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;opacity:.35;image-rendering:pixelated}.stencil-hint{font-size:10px;color:#777;margin:2px 0;font-style:italic}.small-btn{background:var(--hover);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:3px 8px;font-size:11px;cursor:pointer;margin:2px 0}.small-btn:hover{background:#555}#layers-panel{position:fixed;right:0;top:var(--top-bar-h);height:calc(100vh - var(--top-bar-h));width:var(--layers-panel-w, 250px);background-color:var(--panel);border-left:var(--wm-border);display:flex;flex-direction:column;box-shadow:-2px 0 10px #0000004d}#layers-panel.hidden{display:none!important}#layers-panel .lp-tabs{display:flex;align-items:center;gap:4px;padding:6px;border-bottom:1px solid var(--border);flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}#layers-panel .lp-tab{background:none;border:1px solid transparent;border-radius:6px;color:var(--text-dim, #999);cursor:pointer;padding:5px 12px;font-size:12px;font-weight:600}#layers-panel .lp-tab:hover{color:var(--text);background:var(--hover)}#layers-panel .lp-tab.active{color:var(--text);border-color:var(--accent, #9e9e9e);background:transparent}#layers-panel .lp-tabs-spacer{flex:1}#layers-panel .lp-tabs .lb-close{align-self:center}#layers-panel .lp-tab-pane{flex:1;min-height:0;display:flex;flex-direction:column}#layers-panel .lp-tab-pane.hidden{display:none}body.ucui #layers-panel.lp-files-active .layers-search,body.ucui #layers-panel.lp-files-active #btn-add-layer{display:none!important}#layers-panel .lp-files-tabs{display:flex;align-items:center;gap:3px;padding:4px 6px;border-bottom:1px solid var(--border);flex-shrink:0}#layers-panel .lp-files-tab{background:none;border:1px solid transparent;border-radius:5px;color:var(--text-dim, #999);cursor:pointer;padding:2px 8px;font-size:10.5px;font-weight:600}#layers-panel .lp-files-tab:hover{color:var(--text);background:var(--hover)}#layers-panel .lp-files-tab.active{color:var(--text);border-color:var(--accent, #9e9e9e)}#layers-panel .lp-files-tabs-spacer{flex:1}#layers-panel .lp-files-search{display:inline-flex;align-items:center;gap:4px}#layers-panel .lp-files-search-toggle{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:4px;color:var(--text-dim);cursor:pointer;padding:0}#layers-panel .lp-files-search-toggle:hover{background:var(--hover);color:var(--text)}#layers-panel .lp-files-search[data-expanded=true] .lp-files-search-toggle{display:none}#layers-panel .lp-files-search-input{width:0;height:20px;padding:0;margin:0;background:var(--hover);border:1px solid transparent;border-radius:4px;color:var(--text);font:inherit;font-size:11px;outline:none;opacity:0;pointer-events:none;box-sizing:border-box;transition:width .14s cubic-bezier(.4,0,.2,1),padding .14s cubic-bezier(.4,0,.2,1),opacity .14s}#layers-panel .lp-files-search[data-expanded=true] .lp-files-search-input{width:120px;padding:0 8px;opacity:1;pointer-events:auto}#layers-panel .lp-files-tab-pane{flex:1;min-height:0;overflow-y:auto;padding:8px 12px}#layers-panel .lp-files-tab-pane.hidden{display:none}#layers-panel .lp-files-empty{color:var(--text-dim, #777);font-size:12px;padding:6px 0}#layers-panel .lb-close{background:none;border:1px solid transparent;color:var(--text-dim);font-size:16px;cursor:pointer;border-radius:3px;padding:0 6px;line-height:1}#layers-panel .lb-close:hover{background:var(--hover);color:#fff;border-color:var(--border)}#layers-panel #layers-list{flex:1;overflow-y:auto;min-height:0}.panel-header{padding:6px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);gap:4px}.panel-header h3{margin:0;font-size:.9em;text-transform:uppercase;letter-spacing:1px;color:var(--text-dim)}#btn-add-layer{width:var(--btn-size);height:var(--btn-size);padding:0;font-size:16px;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:var(--btn-radius);cursor:pointer;color:var(--accent);display:flex;align-items:center;justify-content:center}#btn-add-layer:hover{color:hsl(var(--primary));background-color:var(--hover);border-color:transparent}#layers-list{flex:1;overflow-y:auto}.layer-item{display:flex;align-items:center;gap:8px;padding:4px 10px;height:36px;margin:1px 4px;background-color:transparent;border-radius:var(--radius-sm);cursor:pointer;transition:background-color .12s;box-sizing:border-box}.layer-item:hover{background-color:hsl(var(--accent) / .4)}.layer-item.active{background-color:hsl(var(--accent) / .6);box-shadow:inset 0 0 0 1px hsl(var(--primary) / .55)}.layer-vec-caret{display:inline-block;font-size:10px;line-height:1;color:#ccc;cursor:pointer;transition:transform .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:2px 4px}.layer-vec-caret:not(.expanded){transform:rotate(-90deg)}.layer-vec-caret:hover{color:#fff}.layer-shapes-tree{display:flex;flex-direction:column;gap:1px;margin:-1px 6px 2px 24px;padding:2px 0;background-color:transparent;border-radius:0;border-top:none}.layer-shape-row{display:flex;align-items:center;gap:8px;padding:4px 10px;height:36px;background-color:transparent;border-radius:var(--radius-sm);margin:1px 4px;color:hsl(var(--foreground));cursor:pointer;box-sizing:border-box;transition:background-color .12s}.layer-shape-row:hover{background-color:hsl(var(--accent) / .4)}.layer-shape-row.active{background-color:hsl(var(--accent) / .6);box-shadow:inset 0 0 0 1px hsl(var(--primary) / .55)}.layer-shape-row .shape-visibility{cursor:pointer;opacity:.85;font-size:.95em;width:16px;text-align:center}.layer-shape-row .shape-visibility.dim{opacity:.25}.layer-shape-row .shape-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:500;color:hsl(var(--foreground))}.layer-shape-row .shape-lock{cursor:pointer;opacity:.7;font-size:11px}.layer-shape-row .shape-lock.locked{opacity:1;color:#ffc07f}.layer-shape-row .shape-lock:hover{opacity:1}.layer-shape-row .shape-delete{background:none;border:none;color:#666;cursor:pointer;font-size:13px;padding:0 2px}.layer-shape-row .shape-delete:hover{color:#f44}.ilp-shape{display:block}.ilp-shape.hidden{display:none}#inlayerprop-section.ilp-path-mode #inlayerprop-resolution,#inlayerprop-section.ilp-path-mode #inlayerprop-params,#inlayerprop-section.ilp-path-mode #inlayerprop-empty,#inlayerprop-section.ilp-path-mode #inlayerprop-active-name,#inlayerprop-section.ilp-path-mode #lpp-add-effect{display:none!important}.shape-appearance{margin:6px 0 10px;padding:6px 8px;background:hsl(var(--accent) / .28);border:1px solid hsl(var(--border, 0 0% 100% / .08));border-radius:6px;display:flex;flex-direction:column;gap:5px}.shape-appearance .sa-title{font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:#8a8a8a;margin-bottom:1px}.shape-appearance .sa-row{display:flex;align-items:center;gap:6px}.shape-appearance .sa-label{flex:0 0 42px;font-size:11px;color:#b8b8b8}.shape-appearance .sa-color{width:26px;height:18px;padding:0;border:1px solid rgba(255,255,255,.15);border-radius:3px;background:none;cursor:pointer}.shape-appearance .sa-color:disabled{opacity:.35;cursor:default}.shape-appearance .sa-none{width:20px;height:18px;font-size:11px;line-height:1;color:#999;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:3px;cursor:pointer}.shape-appearance .sa-none.active{color:#fff;background:hsl(var(--primary, 210 90% 56%) / .85);border-color:transparent}.shape-appearance .sa-opacity{flex:1 1 auto;min-width:40px;height:14px}.shape-appearance .sa-opacity-val,.shape-appearance .sa-unit{flex:0 0 auto;font-size:10px;color:#888;min-width:30px;text-align:right}.shape-appearance .sa-unit{min-width:14px;text-align:left}.shape-appearance .sa-width{width:52px;height:20px;font-size:11px;padding:1px 4px;color:#ddd;background:#00000040;border:1px solid rgba(255,255,255,.12);border-radius:3px}.shape-appearance .sa-select{flex:1 1 auto;height:20px;font-size:11px;color:#ddd;background:#00000040;border:1px solid rgba(255,255,255,.12);border-radius:3px}.shape-appearance .sa-seg{display:inline-flex;border-radius:4px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}.shape-appearance .sa-seg-btn{min-width:26px;height:20px;font-size:12px;line-height:1;color:#aaa;background:#ffffff0a;border:none;border-right:1px solid rgba(255,255,255,.1);cursor:pointer}.shape-appearance .sa-seg-btn:last-child{border-right:none}.shape-appearance .sa-seg-btn:hover{background:#ffffff1a}.shape-appearance .sa-seg-btn.active{color:#fff;background:hsl(var(--primary, 210 90% 56%) / .85)}.layer-item.dragging{opacity:.3}.layer-item.drag-over-top{box-shadow:inset 0 2px #9e9e9e}.layer-item.drag-over-bottom{box-shadow:inset 0 -2px #9e9e9e}.layer-drag-clone{position:fixed;z-index:10000;pointer-events:none;background-color:#3a3a4a;opacity:.9;box-shadow:0 4px 16px #00000080;border-left:3px solid #9e9e9e;border-radius:4px}.layer-visibility-wrap{position:relative;width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.layer-visibility{cursor:pointer;opacity:.85;font-size:.95em;text-align:center;line-height:1}.layer-visibility.layer-hidden{opacity:.25}.layer-thumbnail{width:24px;height:24px;flex-shrink:0;border:none;background:transparent;image-rendering:pixelated;pointer-events:none}.layer-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;height:100%;position:relative;width:100%}.layer-main-default{display:flex;align-items:center;gap:6px;width:100%;height:100%;min-width:0}.layer-main-opacity{display:none;flex-direction:column;justify-content:center;align-items:stretch;gap:3px;width:100%;min-width:0;flex:1 1 auto;height:100%;box-sizing:border-box}.layer-item.opacity-edit .layer-main-default{display:none}.layer-item.opacity-edit .layer-main-opacity{display:flex}.layer-main-opacity .layer-blend-select,.layer-main-opacity .layer-opacity-done,.layer-item.opacity-edit .btn-delete-layer{display:none}.layer-name{flex:1;font-size:12px;font-weight:500;color:#e6e6e6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.layer-icons{display:flex;align-items:center;gap:6px;flex-shrink:0;opacity:.8}.layer-icons>*{font-size:.85em}.layer-anim-indicator{color:var(--accent, #9e9e9e);font-size:.6em!important;line-height:1;animation:layer-anim-pulse 1.6s ease-in-out infinite;pointer-events:none}@keyframes layer-anim-pulse{0%,to{opacity:.6}50%{opacity:1}}.layer-reveal-timeline,.layer-parent-btn{background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:.85em;padding:0 4px;line-height:1;border-radius:3px}.layer-reveal-timeline:hover,.layer-parent-btn:hover{background:#ffffff14;color:var(--accent, #9e9e9e)}.layer-parent-indicator{color:#8a8a8a;font-size:.8em!important;font-weight:700;pointer-events:none}.layer-parent-picker{position:fixed;z-index:12500;background:var(--panel);border:1px solid var(--border);border-radius:6px;box-shadow:0 2px 8px #0006;min-width:180px;max-height:320px;overflow-y:auto;padding:4px;font-size:12px}.layer-parent-picker-item{display:block;width:100%;text-align:left;background:transparent;border:none;color:var(--text);padding:4px 8px;border-radius:3px;cursor:pointer;font-family:inherit;font-size:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-parent-picker-item:hover{background:#ffffff14}.layer-parent-picker-item.active{color:var(--accent, #9e9e9e)}.tl-layer-row.tl-layer-pulse{animation:tl-row-pulse 1.2s ease-out}@keyframes tl-row-pulse{0%{background:var(--accent, #9e9e9e)}to{background:var(--surface, var(--panel))}}.layer-opacity-btn{--opacity-pct: 100;width:18px;height:18px;border-radius:50%;cursor:pointer;display:inline-block;background:conic-gradient(#fff calc(var(--opacity-pct) * 1%),#2a2a2a 0);flex-shrink:0;transition:filter .1s}.layer-opacity-btn:hover{filter:brightness(1.15)}.layer-opacity-label{font-size:13px;color:#e6e6e6;font-family:inherit;line-height:1;padding-left:2px;font-weight:500}.layer-opacity-slider{width:100%;min-width:0;max-width:none;align-self:stretch;display:block;box-sizing:border-box;height:4px;outline:none;background:#2a2a2a;border-radius:2px;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;padding:0}.layer-opacity-slider::-webkit-slider-runnable-track{height:3px;background:#2a2a2a;border-radius:2px}.layer-opacity-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:12px;border-radius:7px;background:#f5f5f5;border:none;margin-top:-4px;cursor:pointer}.layer-opacity-slider::-moz-range-thumb{width:20px;height:12px;border-radius:7px;background:#f5f5f5;border:none;cursor:pointer}.layer-blend-select{background:#2a2a2a;border:1px solid #555;color:#ddd;font-size:10px;padding:1px 2px;border-radius:3px;max-width:80px;flex-shrink:0}.layer-opacity-done{background:none;border:none;color:#bbb;cursor:pointer;font-size:13px;padding:0 2px;flex-shrink:0}.layer-opacity-done:hover{color:#fff}.btn-delete-layer{background:none;border:none;color:#666;cursor:pointer;font-size:1.1em;padding:0 2px;flex-shrink:0}.btn-delete-layer:hover{color:#f44}.layer-mask-add{font-size:.7em;color:#555;cursor:pointer;padding:2px 4px;border:1px dashed #444;border-radius:3px;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-mask-add:hover{color:var(--text-dim);border-color:#666}.layer-mask-icon{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:2px 5px;border:2px solid #555;border-radius:3px;font-size:.7em;font-weight:700;color:var(--text);background:linear-gradient(135deg,#fff 50%,#000 50%);-webkit-user-select:none;-moz-user-select:none;user-select:none;min-width:20px;height:18px;position:relative}.layer-mask-icon .mask-thumb{text-shadow:0 0 2px #000,0 0 2px #000}.layer-mask-icon.editing{border-color:var(--accent);box-shadow:0 0 6px #9e9e9e99}.layer-mask-icon.disabled{opacity:.35}.layer-mask-icon.disabled:after{content:"";position:absolute;top:50%;left:-2px;right:-2px;height:2px;background:#f44;transform:rotate(-45deg)}.layer-mask-icon:hover{border-color:var(--text-dim)}#mask-edit-indicator{position:fixed;bottom:32px;left:50%;transform:translate(-50%,100%);background:#9e9e9ed9;color:#fff;font-size:.75em;font-weight:700;letter-spacing:1px;padding:4px 14px;border-radius:0 0 999px 999px;pointer-events:none;z-index:1500;box-shadow:0 4px 12px #0006}.layer-item.selected{background-color:#2a2a2a;border-left:3px solid #9e9e9e}.layer-item.active.selected{background-color:#333;border-left:3px solid #9e9e9e}.layer-group-header{display:flex;align-items:center;padding:6px 10px;gap:8px;border-bottom:1px solid #2a2a2a;background:#2a2a2e;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-group-header:hover{background:#32323a}.group-collapse-arrow{font-size:.7em;color:var(--text-dim);transition:transform .15s;width:12px;text-align:center}.group-collapse-arrow.collapsed{transform:rotate(-90deg)}.group-name{flex:1;font-size:.85em;font-weight:600;color:#b0b0cc}.group-visibility{cursor:pointer;opacity:.6;font-size:.85em}.group-visibility.layer-hidden{opacity:.2}.group-opacity-slider{width:60px;height:3px;background:var(--hover);border-radius:2px;outline:none;accent-color:var(--text-dim)8ff}.group-controls{display:flex;gap:4px;align-items:center}.btn-ungroup,.btn-delete-group{background:none;border:none;color:#666;cursor:pointer;font-size:.8em;padding:2px 4px}.btn-ungroup:hover{color:var(--text-dim)8ff}.btn-delete-group:hover{color:#f44}.layer-item.in-group{padding-left:32px}.layer-item.in-artboard{padding-left:24px}.layer-item.in-artboard.in-group{padding-left:40px}.artboard-header{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px;background:var(--surface-alt, #1d1d1d);border-bottom:1px solid var(--border, #444);border-top:1px solid var(--border, #444);font-size:11px;font-weight:600;color:var(--text-dim, #aaa);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.artboard-header:hover{background:var(--hover, #2a2a2a);color:var(--text, #fff)}.artboard-header.active{color:#fff;background:linear-gradient(to right,rgba(158,158,158,.18),transparent);border-left:3px solid var(--accent, #9e9e9e);padding-left:5px}.artboard-header.hidden-artboard{opacity:.45}.artboard-header-caret{background:none;border:none;color:inherit;font-size:9px;line-height:1;padding:2px;cursor:pointer;width:14px}.artboard-header-eye{background:none;border:none;color:inherit;cursor:pointer;padding:2px;width:18px;height:18px;display:flex;align-items:center;justify-content:center}.artboard-header-eye i{width:14px;height:14px}.artboard-header-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.3px}.artboard-header-count{color:var(--text-dim, #888);font-size:10px;font-weight:400;padding:0 4px;min-width:14px;text-align:right}.artboard-header-dot{width:8px;height:8px;border-radius:50%;background:transparent;border:1px solid var(--text-dim, #555);flex-shrink:0}.artboard-header-dot.lit{background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e);box-shadow:0 0 4px #9e9e9e99}.artboard-header-rename{flex:1;background:var(--input-bg, #1a1a1a);border:1px solid var(--accent, #9e9e9e);color:var(--text, #fff);font-size:11px;padding:1px 4px;border-radius:2px;text-transform:none}.layer-item.clipped{padding-left:10px}.clip-arrow{position:absolute;top:60%;left:50%;transform:translate(-50%,-5%);display:inline-block;width:11px;height:14px;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;color:inherit;opacity:.9;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2018%2024'%3E%3Cpath%20fill%3D'%23000'%20d%3D'M9%200%20C9%206%2016%2011%2016%2016%20A7%207%200%201%201%202%2016%20C2%2011%209%206%209%200%20Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D'http%3A//www.w3.org/2000/svg'%20viewBox%3D'0%200%2018%2024'%3E%3Cpath%20fill%3D'%23000'%20d%3D'M9%200%20C9%206%2016%2011%2016%2016%20A7%207%200%201%201%202%2016%20C2%2011%209%206%209%200%20Z'/%3E%3C/svg%3E");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}.layer-item.clip-base{border-left:3px solid #9e9e9e44}#btn-group-layers,#btn-ungroup-layers{padding:2px 6px;font-size:.7em;font-weight:700;background-color:transparent;border:1px solid var(--border);border-radius:3px;cursor:pointer;color:var(--text-dim)}#btn-group-layers:not(:disabled):hover,#btn-ungroup-layers:not(:disabled):hover{color:var(--accent);border-color:var(--accent)}#btn-group-layers:disabled,#btn-ungroup-layers:disabled{opacity:.3;cursor:default}canvas{image-rendering:pixelated;cursor:none;touch-action:none}#brush-cursor{position:fixed;top:0;left:0;width:20px;height:20px;border-radius:50%;border:1px solid rgba(255,255,255,.9);box-shadow:0 0 0 1px #000000bf;pointer-events:none;transform:translate(-50%,-50%);z-index:9999;display:none;background:radial-gradient(circle,rgba(0,0,0,.5) 1px,transparent 1.5px)}#brush-cursor.eraser{border:1.5px dashed rgba(220,220,220,.85);box-shadow:0 0 0 1px #0009;background:none}#brush-cursor.blur{border-color:#a7a7a7;box-shadow:0 0 0 1px #000000b3,0 0 8px #9e9e9e73;background:radial-gradient(circle,rgba(158,158,158,.25) 40%,transparent 70%)}#brush-cursor.sharpen{border-color:#ffe44d;box-shadow:0 0 0 1px #000000b3,0 0 6px #ffdc3273;background:radial-gradient(circle,rgba(0,0,0,.4) 1px,transparent 1.5px)}#brush-cursor.dodge{border-color:#ffd966;box-shadow:0 0 0 1px #000000b3,0 0 10px #c8c8c88c;background:radial-gradient(circle,rgba(200,200,200,.18) 50%,transparent 75%),radial-gradient(circle,rgba(0,0,0,.5) 1px,transparent 1.5px)}#brush-cursor.burn{border-color:#f63;box-shadow:0 0 0 1px #000000b3,0 0 9px #ff50288c;background:radial-gradient(circle,rgba(255,60,20,.18) 50%,transparent 75%),radial-gradient(circle,rgba(0,0,0,.5) 1px,transparent 1.5px)}#brush-cursor.sponge{border:1.5px dotted rgba(180,180,180,.8);box-shadow:0 0 0 1px #0009;background:none}#brush-cursor.smudge{border-color:#f94;box-shadow:0 0 0 1px #000000b3,0 0 7px #ff8c3266;background:radial-gradient(circle,rgba(0,0,0,.4) 1px,transparent 1.5px)}#brush-cursor.clone{border-color:#a0a0a0;box-shadow:0 0 0 1px #000000bf,0 0 6px #9664ff59;background:radial-gradient(circle,rgba(150,100,255,.7) 1.5px,transparent 2px),linear-gradient(#ffffffa6 0,#ffffffa6) 50% 0 / 1px 42% no-repeat,linear-gradient(#ffffffa6 0,#ffffffa6) 50% 58% / 1px 42% no-repeat,linear-gradient(90deg,#ffffffa6 0,#ffffffa6) 0 50% / 42% 1px no-repeat,linear-gradient(90deg,#ffffffa6 0,#ffffffa6) 58% 50% / 42% 1px no-repeat}#brush-cursor.studio-brush{border-color:#ffffffe6;box-shadow:0 0 0 1px #000000b3,0 0 4px #fff3;background:radial-gradient(circle,rgba(255,255,255,.1) 40%,transparent 72%),radial-gradient(circle,rgba(0,0,0,.5) 1px,transparent 1.5px)}#brush-cursor.fx-brush{border-color:#acacac;box-shadow:0 0 0 1px #000000b3,0 0 7px #9e9e9e73;background:radial-gradient(circle,rgba(158,158,158,.15) 45%,transparent 72%),radial-gradient(circle,rgba(0,0,0,.5) 1px,transparent 1.5px)}#brush-cursor.liquify{border:1.5px solid #a5a5a5;box-shadow:0 0 0 1px #000000b3,0 0 6px #ff78aa73;background:none}#brush-cursor.pattern-stamp{border:1.5px dashed #6cd97c;box-shadow:0 0 0 1px #000000a6,0 0 5px #64d77859;background:radial-gradient(circle,rgba(100,215,120,.12) 45%,transparent 72%)}#crop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:17}#crop-shade-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.crop-handle{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid #f59e0b;border-radius:2px;transform:translate(-50%,-50%);pointer-events:all;z-index:18;box-shadow:0 1px 4px #0000008c;cursor:nwse-resize}.crop-handle:hover{background:#fef3c7}#crop-tl,#crop-br{cursor:nwse-resize}#crop-tr,#crop-bl{cursor:nesw-resize}#crop-tc,#crop-bc{cursor:ns-resize}#crop-ml,#crop-mr{cursor:ew-resize}#transform-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:18}#txf-box-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.txf-handle{position:absolute;width:10px;height:10px;background:#fff;border:1.5px solid #9e9e9e;border-radius:2px;transform:translate(-50%,-50%);pointer-events:all;z-index:19;box-shadow:0 1px 4px #0000008c;cursor:nwse-resize}#txf-warp-panel{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:60;display:none;align-items:center;gap:6px;padding:5px 10px;background:#23232b;border:1px solid #3a3a44;border-radius:8px;box-shadow:0 4px 16px #00000073;font-size:12px;color:#e6e6ea;-webkit-user-select:none;-moz-user-select:none;user-select:none}#txf-warp-panel .lbl{color:#9aa;margin-right:4px}#txf-warp-panel .v{min-width:16px;text-align:center;font-variant-numeric:tabular-nums}#txf-warp-panel button{background:#34343e;border:1px solid #4a4a56;color:#e6e6ea;border-radius:5px;padding:2px 7px;cursor:pointer;font-size:12px}#txf-warp-panel button:hover{background:#44444f}#txf-warp-panel .sep{width:1px;height:18px;background:#4a4a56;margin:0 2px}#txf-warp-panel select{background:#34343e;border:1px solid #4a4a56;color:#e6e6ea;border-radius:5px;padding:2px 4px;font-size:12px;cursor:pointer}#txf-warp-panel input[type=range]{width:90px;accent-color:#22c55e;cursor:pointer}.txf-warp-handle{position:absolute;width:11px;height:11px;background:#fff;border:1.5px solid #22c55e;border-radius:50%;transform:translate(-50%,-50%);pointer-events:all;z-index:19;box-shadow:0 1px 4px #0000008c;cursor:move}.txf-handle:hover{background:#e4e4e4}#txf-tc,#txf-bc{cursor:ns-resize}#txf-ml,#txf-mr{cursor:ew-resize}#txf-tl,#txf-br{cursor:nwse-resize}#txf-tr,#txf-bl{cursor:nesw-resize}.txf-rot-handle{width:12px;height:12px;border-radius:50%;border-color:#22c55e;cursor:crosshair;background:#fff}.txf-rot-handle:hover{background:#dcfce7}#txf-info-bar{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:4px 10px;pointer-events:all;z-index:20;font-size:.78em;color:var(--text);white-space:nowrap}#txf-info-bar label{display:flex;align-items:center;gap:2px}#txf-info-bar input[type=number]{width:52px;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:#eee;padding:2px 4px;font-size:.95em;text-align:center;-moz-appearance:textfield}#txf-info-bar input[type=number]::-webkit-inner-spin-button,#txf-info-bar input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#txf-info-bar button{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:3px;padding:2px 8px;cursor:pointer;font-size:1em}#txf-info-bar button:hover{background:var(--hover);color:#fff}#txf-apply{color:#4ade80!important}#txf-reset{color:#f87171!important}#text-tool-options{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}#default-options{display:flex;align-items:center;gap:8px}#text-font-family{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:3px 6px;border-radius:4px;font-size:.82em;max-width:130px;cursor:pointer}#text-font-family:focus{outline:none;border-color:var(--accent)}#text-font-size,#text-line-height{width:52px;background:var(--surface);border:1px solid var(--border);color:var(--text);padding:3px 6px;border-radius:4px;font-size:.82em;text-align:center}#text-font-size:focus,#text-line-height:focus{outline:none;border-color:var(--accent)}.text-fmt-btn{width:var(--btn-size);height:var(--btn-size);padding:0;font-size:.85em}.tool-btn-text{width:auto;min-width:0;height:var(--btn-size-text);padding:0 var(--btn-text-padding-x);font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background-color:transparent;border:1px solid transparent;border-radius:var(--btn-radius);color:inherit;cursor:pointer;transition:background-color .12s,border-color .12s,color .12s}.tool-btn-text:hover{background-color:var(--hover);border-color:transparent}.tool-btn-text.active{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.tool-btn-text svg{width:var(--btn-icon-size);height:var(--btn-icon-size);stroke-width:1.8;flex-shrink:0}.option-num-input{width:40px;height:26px;background:#333;color:#eee;border:1px solid #555;border-radius:3px;text-align:center;font-size:11px}.option-select{height:26px;background:#333;color:#eee;border:1px solid #555;border-radius:3px;font-size:11px;padding:2px 6px}.option-checkbox-lbl{font-size:.75em;color:var(--text-dim);margin-left:8px;display:inline-flex;align-items:center;gap:4px}#btn-text-bold{font-weight:700}#btn-text-italic{font-style:italic}#text-box-stage{position:absolute;top:0;left:0;transform-origin:50% 50%;pointer-events:none;z-index:20}#text-box-overlay{position:absolute;min-width:60px;outline:1.5px solid #9e9e9e;outline-offset:0;border-radius:2px;box-shadow:0 0 0 1px #0006;pointer-events:none;transform-origin:50% 50%}#tbx-move-handle{position:absolute;top:100%;left:50%;transform:translate(-50%,10px);pointer-events:all;cursor:move;display:flex;align-items:center;justify-content:center;width:46px;height:24px;background:#9e9e9e;border-radius:12px;box-shadow:0 1px 4px #00000080;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;z-index:21}#tbx-move-handle span{font-size:15px;color:#fff;letter-spacing:1px;line-height:1}#tbx-rotate-handle{position:absolute;bottom:100%;left:50%;transform:translate(-50%,-16px);width:18px;height:18px;border-radius:50%;background:#fff;border:1.5px solid #9e9e9e;box-shadow:0 1px 4px #00000080;pointer-events:all;touch-action:none;cursor:grab;z-index:21}#tbx-rotate-handle:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:1.5px;height:16px;background:#9e9e9e}#tbx-rotate-handle:active{cursor:grabbing}#tbx-cancel-handle{position:absolute;bottom:100%;left:100%;transform:translate(6px,-6px);width:22px;height:22px;border-radius:50%;background:#2a2a32;border:1.5px solid #9e9e9e;box-shadow:0 1px 4px #00000080;display:flex;align-items:center;justify-content:center;pointer-events:all;touch-action:none;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:21}#tbx-cancel-handle span{font-size:12px;color:#ff7b7b;line-height:1}#tbx-cancel-handle:hover{background:#3a2a32}#text-box-textarea{display:block;pointer-events:all;width:100%;box-sizing:border-box;background:#ffffff12;border:none;outline:none;resize:none;overflow:hidden;padding:0;margin:0;min-height:1.4em;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;caret-color:var(--accent)}#text-box-textarea::-moz-selection{background:#9e9e9e59;color:inherit}#text-box-textarea::selection{background:#9e9e9e59;color:inherit}.tbx-handle{position:absolute;width:9px;height:9px;background:#fff;border:1.5px solid #9e9e9e;border-radius:2px;pointer-events:all;z-index:21;box-shadow:0 1px 3px #0006}.tbx-nw{top:-5px;left:-5px;cursor:nw-resize}.tbx-n{top:-5px;left:calc(50% - 4px);cursor:n-resize}.tbx-ne{top:-5px;right:-5px;cursor:ne-resize}.tbx-w{top:calc(50% + 3px);left:-5px;cursor:w-resize}.tbx-e{top:calc(50% + 3px);right:-5px;cursor:e-resize}.tbx-sw{bottom:-5px;left:-5px;cursor:sw-resize}.tbx-s{bottom:-5px;left:calc(50% - 4px);cursor:s-resize}.tbx-se{bottom:-5px;right:-5px;cursor:se-resize}.tbx-handle:hover{background:var(--accent)}#text-box-preview{position:absolute;z-index:19;border:1.5px dashed rgba(158,158,158,.6);background:#9e9e9e0d;pointer-events:none}#selection-overlay{position:absolute;pointer-events:none;overflow:visible;z-index:15}@keyframes march{to{stroke-dashoffset:-20}}.marching-ants{animation:march 2s linear infinite}#sel-ants-bg{stroke:transparent!important}#sel-ants-bg,#sel-ants-fg{vector-effect:non-scaling-stroke}#lasso-tool-options{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}#btn-sel-deselect,#btn-sel-invert{width:auto;padding:0 10px;font-size:.8em}#vector-overlay,#html-select-overlay,#puppet-overlay,#transform3d-overlay{position:absolute;pointer-events:none;overflow:visible}#puppet-overlay{z-index:20}#puppet-overlay .puppet-mesh-edge{stroke:#ffeb3b;stroke-opacity:.9;stroke-width:1.5;stroke-dasharray:6 3;fill:none;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.85))}#puppet-overlay .puppet-pin{fill:hsl(var(--accent));stroke:#fff;stroke-width:1.5;pointer-events:none}#puppet-overlay .puppet-pin:active{cursor:grabbing}#puppet-overlay .puppet-pin.active{fill:#ffeb3b;stroke:#fff;stroke-width:2}#puppet-overlay .puppet-pin.locked{fill:var(--text-dim);stroke:var(--border);cursor:not-allowed}#puppet-overlay .puppet-pin.anchor-pin{fill:#a0a0a0;stroke:#fff;stroke-width:2.5;cursor:move}#puppet-overlay .puppet-parent-bone{stroke:#bbb;stroke-width:2;stroke-dasharray:5 4;opacity:.55;pointer-events:none}#puppet-overlay .puppet-parent-pin{fill:#bdbdbd;stroke:#fff;stroke-width:1.5;opacity:.7;pointer-events:none}#puppet-overlay .puppet-parent-pin.anchor{fill:none;stroke:#bdbdbd;stroke-dasharray:3 3;opacity:.6}#puppet-overlay .puppet-pin-ring{fill:none;stroke:hsl(var(--accent) / .4);stroke-width:1;pointer-events:none}#puppet-overlay .puppet-pin-ring.active{stroke:#ffeb3b;stroke-width:1.5}#puppet-overlay .puppet-pin-notch{stroke:hsl(var(--accent));stroke-width:1.5;pointer-events:none}#puppet-overlay .puppet-pin-notch.active{stroke:#ffeb3b;stroke-width:2}#puppet-overlay .puppet-warp-mesh{fill:none;stroke:#78c8ff80;stroke-width:1;pointer-events:none;filter:drop-shadow(0 0 .5px rgba(0,0,0,.6))}#puppet-overlay .puppet-weight-cell{fill-opacity:.95;stroke:none;pointer-events:none}#puppet-overlay .puppet-weight-cursor{fill:#ffffff0f;stroke:#fff;stroke-width:1.5;stroke-dasharray:4 3;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.9))}#puppet-overlay .bone-arrow{stroke:#4ade80;stroke-opacity:.95;stroke-width:3;stroke-linecap:round;pointer-events:none;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.85))}#puppet-overlay .bone-arrow-head{fill:#4ade80;stroke:none;pointer-events:none;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.85))}#puppet-overlay .bone-bendy{fill:none;stroke:#4ade80;stroke-width:3.5;stroke-linecap:round;pointer-events:none;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.85))}#puppet-overlay .bone-bendy-arm{stroke:#ffd24a;stroke-width:1.4;stroke-opacity:.95;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.85))}#puppet-overlay .bone-bendy-handle{fill:#ffd24a;stroke:#6b4e00;stroke-width:1.2;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.9))}#puppet-overlay .bone-name-label{fill:#eafff0;font:600 11px/1 system-ui,sans-serif;paint-order:stroke;stroke:#000000d9;stroke-width:3px;text-anchor:middle;dominant-baseline:middle;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}#puppet-overlay .gizmo-axis-x{stroke:#ff4d4d;stroke-width:3;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.7))}#puppet-overlay .gizmo-axis-x-head{fill:#ff4d4d;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.7))}#puppet-overlay .gizmo-axis-y{stroke:#3ddc6b;stroke-width:3;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.7))}#puppet-overlay .gizmo-axis-y-head{fill:#3ddc6b;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.7))}#puppet-overlay .puppet-anchor{fill:#ffb42829;stroke:#ffb400;stroke-width:1.5;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.8))}#puppet-overlay .puppet-anchor-cross{stroke:#ffb400;stroke-width:1.5;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.8))}#puppet-overlay .puppet-ik-goal{fill:none;stroke:#ffb454;stroke-width:2;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.85))}#puppet-overlay .puppet-ik-goal.on{fill:#ffb45473}#puppet-overlay .puppet-ik-pole{fill:none;stroke:#9e9e9e;stroke-width:2;pointer-events:none;filter:drop-shadow(0 0 1px rgba(0,0,0,.85))}#puppet-overlay .puppet-ik-pole.on{fill:#9e9e9e80}#puppet-overlay .puppet-ik-poleline{stroke:#9e9e9e;stroke-width:1;stroke-dasharray:3 3;opacity:.75;pointer-events:none}#puppet-overlay .puppet-ik-goalline{stroke:#ffb454;stroke-width:1;stroke-dasharray:2 3;opacity:.5;pointer-events:none}#puppet-overlay .puppet-ik-goalline.on{opacity:.8}body.ucui .ilp-puppet-toprow{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:10px}body.ucui .ilp-puppet-count{color:var(--text-dim);flex:1}body.ucui .ilp-puppet-edit-btn,body.ucui .ilp-bone-edit-btn,body.ucui .ilp-bone-mode,body.ucui .ilp-puppet-reset-btn{height:18px;padding:0 8px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text);font:10px/14px inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease}body.ucui .ilp-puppet-edit-btn:hover,body.ucui .ilp-bone-edit-btn:hover,body.ucui .ilp-bone-mode:hover{background:hsl(var(--accent) / .2);border-color:hsl(var(--accent) / .6);color:hsl(var(--accent))}body.ucui .ilp-bone-moderow{display:flex;align-items:center;gap:4px;margin-bottom:6px}body.ucui .ilp-bone-mode.active{background:hsl(var(--accent) / .85);border-color:hsl(var(--accent));color:#fff}body.ucui .ilp-constrain-row{display:flex;align-items:center;gap:4px;margin:4px 0 6px;flex-wrap:wrap}body.ucui .ilp-constrain-label{color:var(--text-dim);font-size:10px;font-weight:600;margin-right:2px}body.ucui .ilp-constrain-btn{height:18px;padding:0 7px;font-size:10px;border:1px solid hsl(var(--accent) / .35);border-radius:4px;background:hsl(var(--accent) / .08);color:var(--text);cursor:pointer}body.ucui .ilp-constrain-btn:hover{background:hsl(var(--accent) / .2);border-color:hsl(var(--accent) / .6);color:hsl(var(--accent))}body.ucui .ilp-constrain-btn.active{background:hsl(var(--accent) / .85);border-color:hsl(var(--accent));color:#fff}body.ucui .ilp-bone-list-hdr{color:var(--text-dim);font-size:10px;font-weight:600;margin:6px 0 3px}body.ucui .ilp-bonefx-idrow{display:flex;align-items:center;gap:4px}body.ucui .ilp-bonefx-id{flex:1 1 0;min-width:0;font:10px/16px ui-monospace,monospace;color:var(--text-dim);background:var(--bg);border:1px solid var(--border);border-radius:3px;padding:1px 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.ucui .ilp-bonefx-copy{flex:0 0 auto;height:18px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-size:10px;line-height:1;padding:0 6px}body.ucui .ilp-bonefx-copy:hover{border-color:hsl(var(--accent) / .7);color:var(--text)}body.ucui .ilp-bonefx-parent{flex:1 1 0;min-width:0;height:18px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:3px;font:10px/16px inherit;padding:0 4px}body.ucui .ilp-bonefx-parent:focus{border-color:hsl(var(--accent) / .7);outline:none}body.ucui .ilp-bone-list{display:flex;flex-direction:column;gap:3px}body.ucui .ilp-bone-list-row{display:flex;align-items:center;gap:4px}body.ucui .ilp-bone-list-row .ilp-bone-color,body.ucui .ilp-bone-del,body.ucui .ilp-bone-bendy{flex:0 0 auto}body.ucui .ilp-bone-name-input{flex:1 1 0;min-width:0;height:18px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:0 6px;font:10px/16px inherit}body.ucui .ilp-bone-name-input:focus{border-color:hsl(var(--accent) / .7);outline:none}body.ucui .ilp-bone-del{width:18px;height:18px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;line-height:1}body.ucui .ilp-bone-del:hover{background:#ff505026;border-color:#ff505080;color:#ff8080}body.ucui .ilp-bone-bendy{width:18px;height:18px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-size:12px;line-height:1;padding:0}body.ucui .ilp-bone-bendy.on{color:#ffd24a;border-color:#c8c8c899;background:#c8c8c81f}body.ucui .ilp-ik-section.inactive{opacity:.45}body.ucui .ilp-ik-section.inactive:hover{opacity:.7}body.ucui .ilp-joint-ik{flex:0 0 auto;height:18px;padding:0 6px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-size:9px;font-weight:600;line-height:1}body.ucui .ilp-joint-ik:hover{border-color:hsl(var(--accent) / .7);color:var(--text)}body.ucui .ilp-joint-ik.on{color:#9e9e9e;border-color:#9e9e9e99;background:#9e9e9e1f}body.ucui .ilp-bone-bendy:hover{border-color:hsl(var(--accent) / .7)}body.ucui .ilp-ik-row{display:flex;align-items:center;gap:4px}body.ucui .ilp-ik-name{flex:1;font-size:10px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.ucui .ilp-ik-pole,body.ucui .ilp-ik-flip{width:18px;height:18px;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text-dim);cursor:pointer;font-size:10px;line-height:1;padding:0}body.ucui .ilp-ik-pole.on{color:#9e9e9e;border-color:#9e9e9e99}body.ucui .ilp-ik-pole:hover,body.ucui .ilp-ik-flip:hover{border-color:hsl(var(--accent) / .7);color:var(--text)}body.ucui .ilp-ik-add{width:100%;margin-top:5px;height:22px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:3px;cursor:pointer;font-size:10px}body.ucui .ilp-ik-add:hover{border-color:hsl(var(--accent) / .7)}body.ucui .ilp-bone-color{width:18px;height:18px;padding:0;border:1px solid var(--border);border-radius:3px;background:transparent;cursor:pointer;flex:0 0 auto}body.ucui .ilp-bone-color::-webkit-color-swatch-wrapper{padding:1px}body.ucui .ilp-bone-color::-webkit-color-swatch{border:none;border-radius:2px}body.ucui .ilp-weight-toggle{width:100%;height:22px;background:var(--bg);color:var(--text-dim);border:1px solid var(--border);border-radius:3px;cursor:pointer;font-size:10px}body.ucui .ilp-weight-toggle.on{color:var(--text);border-color:hsl(var(--accent) / .7);background:hsl(var(--accent) / .12)}body.ucui .ilp-weight-toggle:hover{border-color:hsl(var(--accent) / .7)}body.ucui .ilp-wbrush-row{display:flex;gap:4px;margin-top:5px}body.ucui .ilp-wbrush{flex:1;height:22px;background:var(--bg);color:var(--text-dim);border:1px solid var(--border);border-radius:3px;cursor:pointer;font-size:10px}body.ucui .ilp-wbrush.on{color:var(--text);border-color:hsl(var(--accent) / .75);background:hsl(var(--accent) / .16)}body.ucui .ilp-wbrush:hover{border-color:hsl(var(--accent) / .7)}body.ucui .ilp-wslider{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:6px;margin-top:4px;font-size:10px;color:var(--text-dim)}body.ucui .ilp-wslider input[type=range]{width:100%;accent-color:hsl(var(--accent))}body.ucui .ilp-wtarget{cursor:pointer;border-radius:3px;padding:1px 2px}body.ucui .ilp-wtarget.active{background:hsl(var(--accent) / .16);outline:1px solid hsl(var(--accent) / .6)}body.ucui .ilp-joint-row{cursor:pointer;border-radius:3px;padding:1px 2px}body.ucui .ilp-joint-row.active{background:hsl(var(--accent) / .16);outline:1px solid hsl(var(--accent) / .6)}body.ucui .ilp-wpalette{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}body.ucui .ilp-wpal{width:22px;height:22px;border-radius:4px;border:1px solid rgba(0,0,0,.35);cursor:pointer;padding:0;box-shadow:inset 0 0 0 1px #ffffff26}body.ucui .ilp-wpal.active{outline:2px solid #fff;outline-offset:1px;border-color:#fff}body.ucui .ilp-wpal:hover{transform:scale(1.08)}body.ucui .ilp-puppet-reset-btn:hover{background:#ff505026;border-color:#ff505080;color:#ff8080}#vector-tool-options{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}#vec-stroke-label{font-size:.75em;color:var(--text-dim);min-width:20px}#vec-tool-hint{font-style:italic;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-type-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:var(--accent);color:#fff;font-size:.7em;font-weight:700;border-radius:3px;vertical-align:middle;margin-right:2px}.layer-type-badge.vec{background:#22c55e}#layer-ctx-menu{position:fixed;z-index:2000;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px;min-width:160px;box-shadow:0 4px 16px #00000080;display:flex;flex-direction:column;gap:2px}#layer-ctx-menu button{background:transparent;border:none;color:var(--text);text-align:left;padding:7px 12px;border-radius:4px;font-size:.85em;cursor:pointer;width:100%}#layer-ctx-menu button:hover{background:var(--hover);color:#fff}#lctx-delete:hover{color:#ff6b6b!important}#canvas-ctx-menu{position:fixed;z-index:2000;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px;min-width:160px;box-shadow:0 4px 16px #00000080;display:flex;flex-direction:column;gap:2px}#canvas-ctx-menu button{background:transparent;border:none;color:var(--text);text-align:left;padding:7px 12px;border-radius:4px;font-size:.85em;cursor:pointer;width:100%}#canvas-ctx-menu button:hover{background:var(--hover);color:#fff}.lctx-divider{height:1px;background:var(--hover);margin:2px 0}.adj-add-wrapper{position:relative}#adj-add-menu,#fx-add-menu{position:absolute;top:100%;right:0;z-index:2000;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px;min-width:160px;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 12px #0006;max-height:70vh;overflow-y:auto}#fx-add-menu::-webkit-scrollbar{width:6px}#fx-add-menu::-webkit-scrollbar-track{background:var(--panel);border-radius:3px}#fx-add-menu::-webkit-scrollbar-thumb{background:#555;border-radius:3px}#fx-add-menu::-webkit-scrollbar-thumb:hover{background:#777}#adj-add-menu button,#fx-add-menu button{background:transparent;border:none;color:var(--text);padding:6px 12px;text-align:left;cursor:pointer;font-size:.85em;border-radius:4px;white-space:nowrap}#adj-add-menu button:hover,#fx-add-menu button:hover{background:var(--hover);color:#fff}#pbr-popup{transition:border-color .12s ease,box-shadow .12s ease}#pbr-popup.pbr-popup-drop{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent),0 4px 20px #00000080}#pbr-popup .adj-section-header{margin-top:8px;font-size:.75em;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);font-weight:600}.pbr-channel-toggles{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:6px 0 8px}.pbr-channel-toggles .tool-btn{width:100%}.pbr-activate-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin:4px 0 8px;padding:8px 12px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:6px;cursor:pointer;font-size:.85em;font-weight:600;transition:filter .12s ease}.pbr-activate-btn i,.pbr-activate-btn svg{width:16px;height:16px}.pbr-activate-btn:hover{filter:brightness(1.1)}.pbr-activate-btn.active{box-shadow:0 0 0 2px #ffffff2e inset}.pbr-activate-btn:not(.active){background:transparent;color:var(--accent)}.lpp-body .adj-popup-header{display:none!important}#adj-popup-close{background:none;border:none;color:var(--text-dim);font-size:1.2em;cursor:pointer;padding:0 2px;line-height:1}#adj-popup-close:hover{color:#fff}.adj-group{display:flex;flex-direction:column;gap:4px}.adj-group label{display:grid;grid-template-columns:80px 1fr 36px;align-items:center;gap:4px;font-size:11px;color:var(--text)}.adj-group input[type=range]{width:100%}.adj-group span{text-align:right;font-variant-numeric:tabular-nums}.layer-type-badge.adj{background:#9e9e9e}.layer-type-badge.fx{background:#f59e0b}.layer-type-badge.rig{background:#22a06b;color:#eafff3}.rig-popup{padding:8px}.rig-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:8px}.rig-tab{flex:1;background:transparent;border:0;color:var(--text-dim);padding:6px 4px;font-size:.78em;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rig-tab.active{color:var(--text);border-bottom-color:var(--accent, #9e9e9e)}.rig-stage{display:flex;justify-content:center;align-items:center;background:linear-gradient(180deg,#16181d,#101216);border:1px solid var(--border);border-radius:8px;padding:8px}.rig-svg{width:168px;height:296px;display:block}.rig-joint:hover circle:last-child{fill:#fff}.rig-props{margin-top:8px}.rig-props-head{font-size:.85em;color:var(--text);margin-bottom:6px}.rig-props-head .rig-dim{color:var(--text-dim);font-weight:400;font-size:.92em}.rig-row{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:6px;font-size:.8em;color:var(--text-dim);margin-bottom:4px}.rig-in{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 6px;width:100%;box-sizing:border-box}.rig-note{font-size:.72em;color:var(--text-dim);margin-top:8px;line-height:1.45;font-style:italic}.rig-placeholder{text-align:center;padding:16px 8px;color:var(--text-dim);font-size:.82em}.rig-fk{grid-template-columns:80px 1fr 52px}.rig-fk .rig-fk-num{padding:3px 4px}.rig-fk input[type=range]{width:100%;accent-color:var(--accent, #9e9e9e)}.rig-bind{margin-top:8px;padding-top:6px;border-top:1px solid var(--border)}.rig-bind-pick,.rig-drive{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:3px 4px;width:100%;box-sizing:border-box;font-size:.92em}.rig-drive:disabled{opacity:.45}.rig-stale{color:#e0683c;font-weight:600;font-style:normal}.rig-actions{display:flex;gap:6px;margin-top:8px}.rig-btn{flex:1;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:.78em;cursor:pointer;white-space:nowrap}.rig-btn:hover{border-color:var(--accent, #9e9e9e)}.rig-btn:disabled{opacity:.4;cursor:default}.rig-goal-list{display:flex;flex-direction:column;gap:3px;margin-bottom:6px}.rig-goal-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:.8em;color:var(--text)}.rig-goal-row.sel{border-color:var(--accent, #9e9e9e);background:#9e9e9e14}.rig-goal-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rig-goal-del{background:transparent;border:0;color:var(--text-dim);cursor:pointer;padding:0 4px;font-size:.9em}.rig-goal-del:hover{color:#e0683c}.rig-goal:hover rect{fill:#ffb454}.layer-type-badge.ae-null{background:transparent;color:#8a8a8a;border:1px dashed #8a8a8a;font-style:italic}.layer-type-badge.ae-solid{font-weight:700}#fill-popup .adj-group label select{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 4px}#fill-popup .adj-group label input[type=checkbox]{width:auto;accent-color:var(--accent)}#fill-popup .adj-group label input[type=color]{width:40px;height:24px;border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer;padding:0}.layer-type-badge.fill{background:gray}.layer-type-badge.style{background:#9e9e9e}#style-popup .adj-group label select{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 4px}.style-upload-area{border:2px dashed #555;border-radius:6px;padding:12px;text-align:center;cursor:pointer;margin:4px 0;transition:border-color .2s}.style-upload-area:hover{border-color:var(--text-dim)}.style-preview-empty{color:#666;font-size:.8em}.style-status{font-size:.75em;color:var(--text-dim);margin-top:6px}.style-status.loading{color:#f59e0b}.style-status.ready{color:#22c55e}.style-status.error{color:#ef4444}.style-recompute-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:.8em;margin-top:4px;width:100%}.style-recompute-btn:hover:not(:disabled){background:var(--hover)}.style-recompute-btn:disabled{opacity:.4;cursor:not-allowed}.video-preview-area{position:relative;background:var(--bg);border-radius:4px;overflow:hidden;margin-bottom:8px;text-align:center}.video-preview-area canvas{display:block;width:100%;height:auto;border-radius:4px}.video-no-file{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#666;font-size:.85em;pointer-events:none}.video-no-file.hidden{display:none}.video-open-btn{width:100%;padding:6px 0;background:#616161;color:#eee;border:none;border-radius:4px;cursor:pointer;font-size:.85em;margin-bottom:6px}.video-open-btn:hover{background:#737373}.video-info{font-size:.75em;color:#999;display:flex;justify-content:space-between;margin-bottom:4px}.video-info.hidden{display:none}.video-controls{margin-top:4px}.video-controls.hidden{display:none}.video-transport{display:flex;align-items:center;gap:6px;margin-bottom:6px}.video-transport-btn{background:var(--surface);border:1px solid var(--border);color:#eee;border-radius:4px;width:28px;height:24px;cursor:pointer;font-size:.8em;text-align:center;padding:0;line-height:24px}.video-transport-btn:hover{background:var(--hover)}.video-transport-btn.playing{color:#f59e0b}.video-time{font-size:.75em;color:var(--text-dim);font-variant-numeric:tabular-nums}.video-controls label{display:flex;align-items:center;gap:6px;font-size:.8em;color:var(--text)}.video-controls input[type=range]{flex:1}#video-frame-val{font-size:.75em;color:var(--text-dim);min-width:36px;font-variant-numeric:tabular-nums}.video-limitations{margin-top:10px;padding:8px;background:var(--bg);border-radius:4px;border:1px solid var(--border);font-size:.7em;color:var(--text-dim)}.video-limitations strong{display:block;margin-bottom:4px;color:var(--text-dim)}.video-limitations ul{margin:0;padding-left:16px;list-style:disc}.video-limitations li{margin:2px 0}.gif-preview-area{position:relative;background:var(--bg);border-radius:4px;overflow:hidden;margin-bottom:8px;text-align:center}.gif-preview-area canvas{display:block;width:100%;height:auto;border-radius:4px}.gif-no-file{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#666;font-size:.85em;pointer-events:none}.gif-no-file.hidden{display:none}.gif-open-btn{width:100%;padding:6px 0;background:#515151;color:#eee;border:none;border-radius:4px;cursor:pointer;font-size:.85em;margin-bottom:6px}.gif-open-btn:hover{background:#7a7a7a}.gif-info{font-size:.75em;color:#999;display:flex;justify-content:space-between;margin-bottom:4px}.gif-info.hidden{display:none}.gif-controls{margin-top:4px}.gif-controls.hidden{display:none}.gif-transport{display:flex;align-items:center;gap:4px;margin-bottom:6px}.gif-transport-btn{background:var(--surface);border:1px solid var(--border);color:#eee;border-radius:4px;width:28px;height:24px;cursor:pointer;font-size:.7em;text-align:center;padding:0;line-height:24px}.gif-transport-btn:hover{background:var(--hover)}.gif-transport-btn.playing{color:#a0a0a0}.gif-frame-info{font-size:.75em;color:var(--text-dim);font-variant-numeric:tabular-nums;margin-left:auto}.gif-controls label{display:flex;align-items:center;gap:6px;font-size:.8em;color:var(--text)}.gif-controls input[type=range]{flex:1}#gif-frame-val,#gif-speed-val{font-size:.75em;color:var(--text-dim);min-width:30px;font-variant-numeric:tabular-nums}.gif-limitations{margin-top:10px;padding:8px;background:var(--bg);border-radius:4px;border:1px solid var(--border);font-size:.7em;color:var(--text-dim)}.gif-limitations strong{display:block;margin-bottom:4px;color:var(--text-dim)}.gif-limitations ul{margin:0;padding-left:16px;list-style:disc}.gif-limitations li{margin:2px 0}.layer-type-badge.gif{background:#7a7a7a;font-size:.7em}.layer-type-badge.cel{background:#9e9e9e;color:#222;font-size:.7em;font-weight:700}.layer-type-badge.smart-object{background:#9e9e9e;color:#fff;font-size:.7em;font-weight:700}#smart-object-popup .so-info{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:8px 10px;background:var(--surface);border:1px solid var(--border);border-radius:4px;font-size:11px}#smart-object-popup .so-info-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}#smart-object-popup .so-info-label{color:var(--text-dim);text-transform:uppercase;font-size:10px;letter-spacing:.4px}#smart-object-popup .so-info-value{color:var(--text);text-align:right;word-break:break-all;flex:1}#smart-object-popup .so-mono{font-family:Consolas,Fira Code,Source Code Pro,monospace}#smart-object-popup .so-actions{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}#smart-object-popup .so-btn{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:6px 10px;font-size:12px;cursor:pointer;text-align:left;transition:background .12s ease,border-color .12s ease}#smart-object-popup .so-btn:not(:disabled):hover{background:var(--hover);border-color:#9e9e9e}#smart-object-popup .so-btn:disabled{opacity:.45;cursor:not-allowed}#smart-object-popup .so-btn-warn:not(:disabled):hover{border-color:#e74c3c}#smart-object-popup .so-hint{color:var(--text-dim);font-size:11px;line-height:1.4;margin:0}@keyframes wcRecBlink{0%,to{opacity:1}50%{opacity:.2}}.sg-graph-btn{width:100%;padding:6px 0;background:#7a7a7a;color:#eee;border:none;border-radius:4px;cursor:pointer;font-size:.85em}.sg-graph-btn:hover{background:#9e9e9e}.layer-type-badge.shader-graph{background:#9e9e9e;font-size:.7em}#particle-graph-window{position:fixed;left:120px;top:100px;width:900px;height:600px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);resize:both;overflow:hidden;display:flex;flex-direction:column}#particle-graph-window.hidden{display:none}#shader-graph-window{position:fixed;left:100px;top:80px;width:900px;height:600px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);resize:both;overflow:hidden;display:flex;flex-direction:column}#shader-graph-window.hidden{display:none}.sg-titlebar{height:32px;min-height:32px;background:#2a2a2a;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 10px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:6px 6px 0 0}.sg-titlebar span:first-child{font-size:.85em;color:var(--text);font-weight:600;flex:1}.sg-titlebar select{margin-right:6px}.sg-titlebar button{background:none;border:none;color:var(--text-dim);font-size:1.2em;cursor:pointer;padding:0 4px;line-height:1}.sg-titlebar button:hover{color:#fff}#sg-preset-select{background:var(--surface);color:#ddd;border:1px solid var(--border);border-radius:3px;font-size:.8em;padding:2px 4px;margin-left:auto;margin-right:8px;cursor:pointer;outline:none}#sg-preset-select:hover{border-color:#7a7a7a}.sg-body{display:flex;flex:1;overflow:hidden}.sg-canvas-area{flex:1;position:relative;overflow:hidden}.sg-canvas-area canvas{width:100%;height:100%;display:block;cursor:crosshair}.sg-sidebar{width:220px;min-width:220px;background:#252525;border-left:1px solid #444;overflow-y:auto;padding:8px;font-size:.8em;color:var(--text)}.sg-sidebar label{display:grid;grid-template-columns:70px 1fr 36px;align-items:center;gap:4px;margin-bottom:4px}.sg-sidebar input[type=range]{width:100%;accent-color:#9e9e9e}.sg-sidebar span{text-align:right;font-variant-numeric:tabular-nums;font-size:.85em;color:var(--text-dim)}.sg-sidebar select{background:var(--surface);color:#eee;border:1px solid var(--border);border-radius:3px;padding:2px 4px;font-size:.9em}.sg-sidebar .sg-node-title{font-weight:600;font-size:.9em;color:#ddd;margin:8px 0 4px;padding-bottom:4px;border-bottom:1px solid var(--border)}.sg-sidebar .sg-global-toggle{display:inline-block;width:18px;height:18px;line-height:18px;text-align:center;font-size:.7em;font-weight:700;border-radius:3px;cursor:pointer;margin-left:2px;background:var(--surface);color:#666;border:1px solid var(--border)}.sg-sidebar .sg-global-toggle.active{background:#7a7a7a;color:#fff;border-color:#9e9e9e}.sg-error-banner{background:#dc2626;color:#fff;padding:6px 14px;font-size:.8em;font-family:Consolas,Menlo,monospace;line-height:1.4;white-space:pre-wrap;word-break:break-all;max-height:80px;overflow-y:auto;border-top:1px solid #991b1b}.sg-error-banner.hidden{display:none}.sg-zoom-controls{position:absolute;bottom:8px;left:8px;display:flex;align-items:center;gap:2px;background:#1e1e2ed9;border:1px solid var(--border);border-radius:6px;padding:2px 4px;z-index:10;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sg-zoom-btn{background:var(--surface);border:1px solid var(--border);color:var(--text);width:26px;height:24px;border-radius:4px;cursor:pointer;font-size:.8em;display:flex;align-items:center;justify-content:center}.sg-zoom-btn:hover{background:#555;color:#fff}.sg-zoom-level{font-size:.75em;color:var(--text-dim);min-width:40px;text-align:center;font-variant-numeric:tabular-nums}.sg-minimap{position:absolute;bottom:8px;right:8px;border:1px solid var(--border);border-radius:4px;background:#1a1a2ee6;z-index:10;cursor:crosshair;pointer-events:auto}.imgsize-info{font-size:.85em;color:var(--text);font-variant-numeric:tabular-nums}.imgsize-unit{font-size:.8em;color:var(--text-dim);padding:0 4px;white-space:nowrap}.imgsize-checkbox-label{display:flex;align-items:center;gap:6px;font-size:.82em;color:#bbb;cursor:pointer}.imgsize-checkbox-label input[type=checkbox]{accent-color:var(--accent)}#imgsize-algorithm{flex:1;padding:6px 8px;border-radius:4px;border:1px solid var(--border);background:#2a2a2e;color:#bbb;font-size:.8em;cursor:pointer}.imgsize-reset-btn{padding:8px 20px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.9em;cursor:pointer}.imgsize-reset-btn:hover{background:var(--hover);color:#fff}#fx-popup .adj-group label input[type=checkbox]{width:auto;accent-color:var(--accent)}#sim-bar{padding:6px 8px;border-bottom:1px solid var(--border);display:flex;justify-content:center}.sim-btn{background:linear-gradient(135deg,#7a7a7a,#4f4f4f);color:#fff;border:none;border-radius:6px;padding:5px 18px;font-size:.82em;font-weight:600;cursor:pointer;letter-spacing:.3px;width:100%;transition:background .15s}.sim-btn:hover{background:linear-gradient(135deg,#9e9e9e,#7a7a7a)}#sim-popup{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2000;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:0;width:280px;box-shadow:none}#sim-popup .adj-popup-header{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border)}#sim-popup .adj-popup-header span{flex:1;font-weight:600;font-size:.9em}.sim-transport{display:flex;gap:4px}.sim-transport-btn{background:var(--surface);border:1px solid var(--border);color:#fff;width:28px;height:24px;border-radius:4px;cursor:pointer;font-size:.85em;display:flex;align-items:center;justify-content:center;transition:background .15s}.sim-transport-btn:hover{background:var(--hover)}.sim-transport-btn.active{background:#7a7a7a;border-color:#9e9e9e}.sim-body{padding:10px 14px}.sim-body label{display:flex;align-items:center;gap:6px;font-size:.8em;color:var(--text);margin-bottom:6px}.sim-body select{flex:1;background:var(--surface);color:#ddd;border:1px solid var(--border);border-radius:4px;padding:3px 6px;font-size:.95em}.sim-params{margin-top:8px}.sim-params label{display:flex;align-items:center;gap:6px;font-size:.78em;color:var(--text-dim);margin-bottom:5px}.sim-params input[type=range]{flex:1;height:3px}.sim-params span{min-width:24px;text-align:right;font-size:.85em;color:var(--text-dim)}.sim-actions{display:flex;gap:6px;margin-top:10px;padding-top:8px;border-top:1px solid var(--border)}.sim-action-btn{flex:1;padding:5px 10px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--text);font-size:.8em;cursor:pointer;transition:background .15s}.sim-action-btn:hover{background:var(--hover)}.sim-action-btn.primary{background:#7a7a7a;border-color:#9e9e9e;color:#fff}.sim-action-btn.primary:hover{background:#9e9e9e}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;justify-content:center;align-items:center;z-index:3000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.kb-dialog{background:var(--panel);border-radius:10px;box-shadow:0 6px 18px #00000080;border:1px solid var(--border);width:680px;max-width:95vw;max-height:85vh;display:flex;flex-direction:column}.kb-body{padding:12px 20px 20px;display:flex;flex-direction:column;gap:10px;overflow:hidden}.kb-search-row{display:flex;gap:8px;align-items:center}.kb-search-row input{flex:1;padding:7px 12px;border-radius:5px;border:1px solid var(--border);background:#2a2a2e;color:#eee;font-size:.85em;outline:none}.kb-search-row input:focus{border-color:#9e9e9e}.kb-grid-wrap{overflow-y:auto;max-height:60vh;border:1px solid var(--border);border-radius:6px}.kb-grid{width:100%;border-collapse:collapse;font-size:.82em}.kb-grid thead{position:sticky;top:0;z-index:1}.kb-grid th,.kb-grid td{border:1px solid #3a3a3e}.kb-grid th{background:#2a2a2e;color:var(--text-dim);font-weight:600;text-transform:uppercase;font-size:.85em;letter-spacing:.04em;padding:8px 12px;text-align:left}.kb-grid td{padding:6px 12px;color:var(--text)}.kb-grid tr:hover td{background:#2a2a30}.kb-grid .kb-num{color:#555;text-align:center;width:36px;font-size:.85em;font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kb-grid .kb-cat{color:var(--text-dim);font-size:.9em;min-width:100px}.kb-grid .kb-action{font-size:.95em}.kb-grid .kb-key-cell{min-width:160px}.kb-key-btn{display:inline-block;padding:3px 10px;border-radius:4px;border:1px solid var(--border);background:var(--surface);color:#ddd;font-family:inherit;font-size:.92em;cursor:pointer;min-width:60px;text-align:center;transition:border-color .15s,background .15s}.kb-key-btn:hover{border-color:#9e9e9e;background:#3a3a44}.kb-key-btn.recording{border-color:#e8a838;background:#3a3520;color:#e8a838;animation:kb-pulse 1s ease-in-out infinite}@keyframes kb-pulse{0%,to{opacity:1}50%{opacity:.6}}.kb-key-btn.empty{color:#666;border-style:dashed}.kb-row-hidden{display:none}.ndd{background:var(--panel);border-radius:10px;box-shadow:0 6px 18px #00000080;border:1px solid var(--border);width:780px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.ndd-titlebar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border);background:#252528}.ndd-titlebar h2{margin:0;font-size:1em;font-weight:600;color:#ddd;letter-spacing:.3px}.ndd-close{background:none;border:none;color:#777;font-size:1.4em;cursor:pointer;padding:0 4px;line-height:1}.ndd-close:hover{color:#fff}.ndd-body{display:flex;flex:1;overflow:hidden}.ndd-presets{width:360px;border-right:1px solid var(--border);display:flex;flex-direction:column;background:var(--bg)}.ndd-presets h3{margin:0;padding:12px 16px 0;font-size:.75em;text-transform:uppercase;letter-spacing:1px;color:#666}.ndd-preset-tabs{display:flex;gap:0;padding:10px 16px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.ndd-tab{background:none;border:none;border-bottom:2px solid transparent;padding:6px 10px;font-size:.75em;color:var(--text-dim);cursor:pointer;white-space:nowrap}.ndd-tab:hover{color:#bbb}.ndd-tab.active{color:#fff;border-bottom-color:var(--accent)}.ndd-preset-list{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}.ndd-preset-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s}.ndd-preset-card:hover{background:#2a2a30}.ndd-preset-card.active{background:#2a2a2a;border-color:var(--accent)}.ndd-preset-icon{width:40px;height:30px;border:1px solid var(--border);border-radius:3px;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:.6em;color:var(--text-dim);flex-shrink:0}.ndd-preset-info{flex:1;min-width:0}.ndd-preset-name{font-size:.85em;font-weight:500;color:#ddd}.ndd-preset-detail{font-size:.7em;color:#777;margin-top:1px}.ndd-open-section{padding:12px 16px;border-top:1px solid var(--border);text-align:center}.ndd-divider-label{font-size:.7em;color:#555;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.ndd-open-btn{width:100%;padding:8px;background:#2a2a30;border:1px solid var(--border);border-radius:6px;color:#bbb;cursor:pointer;font-size:.8em}.ndd-open-btn:hover{background:var(--surface);color:#fff;border-color:var(--accent)}.ndd-props{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.ndd-props h3{margin:0 0 4px;font-size:.75em;text-transform:uppercase;letter-spacing:1px;color:#666}.ndd-prop-row{display:flex;align-items:center;gap:10px}.ndd-prop-row label{width:85px;font-size:.8em;color:#999;flex-shrink:0;text-align:right}.ndd-prop-row input[type=text],.ndd-prop-row input[type=number]{flex:1;padding:6px 8px;border-radius:4px;border:1px solid var(--border);background:#2a2a2e;color:#eee;font-size:.85em;min-width:0}.ndd-prop-row input:focus{border-color:var(--accent);outline:none}.ndd-prop-pair{display:flex;flex-direction:column;gap:8px}.ndd-input-unit{flex:1;display:flex;gap:4px;align-items:center}.ndd-input-unit input{flex:1;padding:6px 8px;border-radius:4px 0 0 4px;border:1px solid var(--border);border-right:none;background:#2a2a2e;color:#eee;font-size:.85em;min-width:0}.ndd-input-unit input:focus{border-color:var(--accent);outline:none}.ndd-input-unit select{padding:6px 4px;border-radius:0 4px 4px 0;border:1px solid var(--border);background:var(--surface);color:#bbb;font-size:.75em;cursor:pointer;min-width:55px}.ndd-orientation{display:flex;gap:4px}.ndd-orient-btn{width:32px;height:28px;border:1px solid var(--border);border-radius:4px;background:#2a2a2e;color:var(--text-dim);cursor:pointer;font-size:1em;display:flex;align-items:center;justify-content:center}.ndd-orient-btn:hover{border-color:#666;color:var(--text)}.ndd-orient-btn.active{border-color:var(--accent);color:var(--accent);background:#2a2a2a}.ndd-bg-row{flex:1;display:flex;gap:6px;align-items:center}.ndd-storage-row{flex:1;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.ndd-storage-mode{display:inline-flex;border:1px solid var(--border);border-radius:4px;overflow:hidden}.ndd-storage-btn{padding:5px 12px;background:#2a2a2e;color:#bbb;border:0;cursor:pointer;font-size:.8em;border-right:1px solid var(--border)}.ndd-storage-btn:last-child{border-right:0}.ndd-storage-btn:hover{background:#3a3a3e}.ndd-storage-btn.active{background:var(--accent, #9e9e9e);color:#fff}#new-doc-tile-size{padding:5px 8px;border-radius:4px;border:1px solid var(--border);background:#2a2a2e;color:#bbb;font-size:.8em;cursor:pointer}#new-doc-tile-size.hidden{display:none}.ndd-storage-hint{font-size:.72em;color:#888;font-style:italic;flex-basis:100%}.ndd-bg-row select{flex:1;padding:6px 8px;border-radius:4px;border:1px solid var(--border);background:#2a2a2e;color:#bbb;font-size:.8em;cursor:pointer}.ndd-color-swatch{width:28px;height:28px;border:1px solid var(--border);border-radius:4px;padding:0;cursor:pointer;background:none}.ndd-color-swatch.hidden-swatch{display:none}.ndd-size-preview{text-align:center;font-size:.75em;color:#555;padding:8px 0;border-top:1px solid #2a2a2a;margin-top:auto}.anchor-grid{display:grid;grid-template-columns:repeat(3,20px);grid-template-rows:repeat(3,20px);gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px;width:-moz-fit-content;width:fit-content}.anchor-dot{width:18px;height:18px;border:1.5px solid #666;border-radius:50%;background:var(--surface);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.anchor-dot:hover{background:#555}.anchor-dot.active{background:var(--accent);border-color:var(--accent);box-shadow:0 0 4px #9e9e9e80}.ndd-actions{display:flex;justify-content:flex-end;padding-top:4px}.ndd-actions button.primary{padding:8px 32px;background:hsl(var(--primary));border:none;border-radius:var(--radius-sm);color:hsl(var(--primary-foreground));font-size:.9em;font-weight:600;cursor:pointer;transition:background-color .12s}.ndd-actions button.primary:hover{background:hsl(var(--primary) / .9)}#html-layer-popup .adj-popup-header{padding:8px 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);font-weight:600;font-size:.85em;color:#eee}#html-layer-popup .adj-popup-header button{background:none;border:none;color:#999;font-size:1.2em;cursor:pointer}.html-section{border-bottom:1px solid var(--border)}.html-section:last-child{border-bottom:none}.html-section-header{padding:6px 12px;font-size:.75em;font-weight:600;color:var(--text-dim);text-transform:lowercase;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;gap:6px}.html-section-header:before{content:"▾";font-size:.7em;transition:transform .15s}.html-section-header.collapsed:before{transform:rotate(-90deg)}.html-section-body{padding:6px 12px 10px}.html-section-header.collapsed+.html-section-body{display:none}.html-asset-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.html-asset-btn{background:#383838;border:1px solid var(--border);border-radius:4px;color:#ddd;font-size:1.1em;padding:6px 0;cursor:pointer;transition:background .15s}.html-asset-btn:hover{background:#4a4a4a;border-color:var(--accent)}.html-tool-bar{display:flex;gap:4px;margin-bottom:8px}.html-tool-btn{background:#383838;border:1px solid var(--border);border-radius:4px;color:#ddd;padding:5px 8px;cursor:pointer;display:flex;align-items:center;justify-content:center}.html-tool-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.html-tool-btn:hover{background:#4a4a4a}.html-tool-btn.active:hover{background:#6c6c6c}.html-tool-props{display:flex;flex-direction:column;gap:5px}.html-tool-props label{display:grid;grid-template-columns:70px 1fr 30px;align-items:center;gap:4px;font-size:.75em;color:var(--text)}.html-tool-props input[type=range]{width:100%;accent-color:var(--accent)}.html-tool-props input[type=color]{width:28px;height:22px;border:1px solid var(--border);border-radius:3px;padding:0;background:none;cursor:pointer}.html-fx-list{display:flex;gap:4px;flex-wrap:wrap}.html-fx-btn{background:#383838;border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.75em;padding:4px 8px;cursor:pointer}.html-fx-btn:hover{background:#4a4a4a}.html-fx-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.html-fx-msg{font-size:.75em;color:#666;padding:4px 0}#html-code-editor{width:100%;min-height:140px;max-height:240px;resize:vertical;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:Consolas,Courier New,monospace;font-size:.75em;line-height:1.4;padding:8px;-moz-tab-size:2;-o-tab-size:2;tab-size:2;white-space:pre;overflow:auto}#html-code-editor:focus{border-color:var(--accent);outline:none}.html-code-actions{display:flex;gap:6px;margin-top:6px}.html-code-actions button{flex:1;background:#383838;border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.75em;padding:4px 8px;cursor:pointer}.html-code-actions button:hover{background:#4a4a4a;border-color:var(--accent)}.layer-type-badge.html{background:gray}.layer-type-badge.video{background:#e11d48;font-size:.7em}.web-layer-iframe{position:absolute;border:none;z-index:1;background:#fff;pointer-events:none}.layer-add-dropdown-wrap{position:relative;display:inline-block}.layer-add-dropdown{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 16px #00000080;z-index:2000;min-width:140px;padding:4px 0;margin-bottom:4px}.layer-add-dropdown button{display:block;width:100%;background:none;border:none;color:#ddd;padding:6px 14px;font-size:.82em;text-align:left;cursor:pointer;white-space:nowrap}.layer-add-dropdown button:hover{background:var(--hover);color:#fff}#web-layer-popup .adj-popup-header{padding:8px 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);font-weight:600;font-size:.85em;color:#eee}#web-layer-popup .adj-popup-header button{background:none;border:none;color:#999;font-size:1.2em;cursor:pointer}.web-popup-body{padding:10px 12px}.web-url-label{font-size:.8em;color:#bbb;display:block}.web-url-row{display:flex;gap:6px;margin-top:4px}.web-url-row input{flex:1;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:#eee;padding:5px 8px;font-size:.85em;font-family:monospace}.web-url-row input:focus{outline:none;border-color:var(--accent)}.web-url-row button{background:var(--accent);border:none;border-radius:4px;color:#fff;padding:5px 12px;font-size:.8em;cursor:pointer;white-space:nowrap}.web-url-row button:hover{background:#6a6a6a}#web-error-banner{margin-top:8px;padding:6px 8px;background:#3a1a1a;border:1px solid #c0392b;border-radius:4px;color:#e74c3c;font-size:.78em;word-break:break-word}.web-status{margin-top:8px;font-size:.78em;color:var(--text-dim)}.web-controls{margin-top:10px;border-top:1px solid #444;padding-top:8px}.web-zoom-label,.web-fix-dim{font-size:.8em;color:#bbb;display:block}.web-zoom-row{display:flex;align-items:center;gap:6px;margin-top:4px}.web-zoom-row button{background:var(--hover);border:1px solid var(--border);border-radius:4px;color:#ddd;width:28px;height:26px;font-size:1em;cursor:pointer;display:flex;align-items:center;justify-content:center}.web-zoom-row button:hover{background:#4a4a4a}#web-zoom-val{min-width:42px;text-align:center;font-size:.85em;color:#eee}#web-zoom-reset{width:auto!important;padding:0 8px;font-size:.78em!important}.web-fix-dim{margin-top:8px;display:flex;align-items:center;gap:6px;cursor:pointer}.web-fix-dim input{cursor:pointer}.web-scroll-label{font-size:.8em;color:#bbb;margin-top:8px}.web-scroll-row{display:flex;align-items:center;gap:6px;margin-top:4px}.web-scroll-row button{background:var(--hover);border:1px solid var(--border);border-radius:4px;color:#ddd;height:26px;font-size:.85em;cursor:pointer;padding:0 8px}.web-scroll-row button:hover{background:#4a4a4a}#web-scroll-val{min-width:42px;text-align:center;font-size:.85em;color:#eee}#web-refresh{margin-left:auto}#web-capture-method{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:#ddd;font-size:.78em;padding:2px 4px;height:26px;cursor:pointer}.layer-type-badge.web{background:#7a7a7a}#layer-style-dialog{position:fixed;z-index:3000}#layer-style-dialog.ls-effect-scope .ls-nav-item[data-style=blendingOptions]{display:none}#layer-style-dialog.ls-effect-scope #ls-p-blendingOptions{display:none!important}#ls-dialog-inner{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 3px 12px #00000080;width:680px;height:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}#ls-title-bar{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:var(--panel);border-bottom:1px solid var(--border);font-weight:600;font-size:.95em;color:#eee;cursor:grab}#ls-title-bar:active{cursor:grabbing}#ls-title-bar button{background:none;border:none;color:var(--text-dim);font-size:1.3em;cursor:pointer;padding:0 4px}#ls-title-bar button:hover{color:#fff}#ls-body{display:flex;flex:1;overflow:hidden}#ls-sidebar{width:180px;min-width:180px;background:var(--panel);border-right:1px solid #444;display:flex;flex-direction:column;padding:6px 0;overflow-y:auto}.ls-nav-item{display:flex;align-items:center;gap:6px;padding:7px 12px;cursor:pointer;font-size:.82em;color:#bbb;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-left:3px solid transparent;transition:background .1s}.ls-nav-item:hover{background:var(--surface)}.ls-nav-item.active{background:#383838;color:#fff;border-left-color:var(--accent)}.ls-nav-item input[type=checkbox]{accent-color:var(--accent);cursor:pointer}#ls-panel{flex:1;padding:12px 16px;overflow-y:auto;min-height:0}.ls-panel-page{display:flex;flex-direction:column;gap:8px}.ls-panel-page h4{margin:0 0 4px;font-size:.95em;color:#eee;border-bottom:1px solid var(--border);padding-bottom:6px}.ls-panel-page label{display:flex;align-items:center;gap:8px;font-size:.8em;color:#bbb}.ls-panel-page label input[type=range]{flex:1;max-width:180px}.ls-panel-page label input[type=color]{width:32px;height:22px;border:1px solid var(--border);border-radius:3px;padding:0;background:transparent;cursor:pointer}.ls-panel-page label select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:2px 6px;font-size:1em}.ls-panel-page label input[type=checkbox]{accent-color:var(--accent)}.ls-val{min-width:36px;text-align:right;font-size:.9em;color:var(--text-dim)}.ls-section-title{font-size:.8em;font-weight:600;color:#999;margin-top:6px;padding-top:6px;border-top:1px solid #444}#ls-chk-blendingOptions{display:none}.ls-bo-channels{display:flex;gap:14px}.ls-bo-channel{display:inline-flex;align-items:center;gap:4px;font-size:.85em;color:#ccc}#ls-p-blendingOptions label input[type=range]{max-width:110px}.dts{position:relative;width:200px;height:18px;flex:1;max-width:220px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.dts-track{position:absolute;top:50%;left:0;right:0;height:4px;transform:translateY(-50%);background:var(--border);border-radius:2px;pointer-events:auto}.dts-fill{position:absolute;top:0;bottom:0;background:var(--accent);border-radius:2px;pointer-events:none}.dts-thumb{position:absolute;top:50%;width:10px;height:14px;background:var(--text);border:1px solid var(--border);border-radius:2px;transform:translate(-50%,-50%);cursor:ew-resize;pointer-events:auto}.dts-thumb:hover{background:var(--accent)}.dts-thumb.dts-split{width:7px;height:12px;opacity:.85}.dts-thumb.dts-thumb-low-a,.dts-thumb.dts-thumb-high-b{background:linear-gradient(90deg,transparent 0 50%,var(--text) 50% 100%)}.dts-thumb.dts-thumb-low-b,.dts-thumb.dts-thumb-high-a{background:linear-gradient(90deg,var(--text) 0 50%,transparent 50% 100%)}.dts-thumb.dts-split.dts-thumb-low-a,.dts-thumb.dts-split.dts-thumb-high-b{background:linear-gradient(90deg,transparent 0 50%,var(--accent) 50% 100%)}.dts-thumb.dts-split.dts-thumb-low-b,.dts-thumb.dts-split.dts-thumb-high-a{background:linear-gradient(90deg,var(--accent) 0 50%,transparent 50% 100%)}#ls-p-blendingOptions .ls-bif-row{display:flex;align-items:center;gap:8px}#ls-p-blendingOptions .ls-bif-row .ls-bif-label{min-width:110px;color:#bbb}#ls-footer{display:flex;justify-content:flex-end;gap:8px;padding:8px 14px;border-top:1px solid #444;background:var(--panel)}#ls-footer button{padding:5px 18px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.85em}#ls-footer button:hover{background:var(--hover);color:#fff}#ls-ok{background:#676767;border-color:#676767;color:#fff}#ls-ok:hover{background:#767676}.layer-style-indicator{font-size:.65em;color:var(--text-dim);cursor:pointer;padding:1px 4px;border-radius:3px}.layer-style-indicator:hover{background:var(--hover);color:var(--text)}.layer-video-indicator{font-size:.65em;color:#e11d48;cursor:pointer;padding:1px 4px;border-radius:3px;margin-left:2px}.layer-video-indicator:hover{background:var(--hover);color:#f43f5e}#layer-browser-dialog{-webkit-backdrop-filter:none;backdrop-filter:none;background:none;pointer-events:none}#layer-browser-dialog.modal-overlay{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;z-index:auto}.lb-browser{background:var(--panel);border-radius:10px;box-shadow:0 6px 18px #00000080;border:1px solid var(--border);width:860px;height:600px;min-width:500px;min-height:350px;display:flex;flex-direction:column;pointer-events:auto;resize:both;overflow:hidden;position:fixed}.lb-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border);flex-shrink:0;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lb-header h2{margin:0;font-size:1.1em;font-weight:600;color:#eee}.fx-browser{background:var(--panel);border-radius:10px;box-shadow:0 6px 18px #00000080;border:1px solid var(--border);width:820px;height:600px;min-width:400px;min-height:300px;display:flex;flex-direction:column;pointer-events:auto;resize:both;overflow:hidden;position:absolute}.fx-browser-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border);flex-shrink:0;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fx-browser-header h2{margin:0;font-size:1.1em;font-weight:600;color:#eee}.fx-browser-controls{display:flex;align-items:center;gap:10px}#fx-search{width:220px;padding:5px 10px;border-radius:5px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;outline:none}#fx-search:focus{border-color:var(--accent)}#fx-search::-moz-placeholder{color:#666}#fx-search::placeholder{color:#666}.fx-view-toggle{display:flex;gap:2px;background:var(--surface);border-radius:5px;padding:2px}.fx-view-btn{background:none;border:none;color:var(--text-dim);font-size:16px;padding:4px 8px;cursor:pointer;border-radius:3px}.fx-view-btn.active{background:var(--accent);color:#fff}.fx-view-btn:hover:not(.active){background:var(--surface);color:var(--text)}.fx-browser-body{display:flex;flex:1;overflow:hidden}.fx-browser-sidebar{width:160px;min-width:160px;border-right:1px solid var(--border);padding:8px 0;overflow-y:auto;flex-shrink:0}.fx-cat-item{padding:7px 16px;color:var(--text-dim);font-size:12px;cursor:pointer;border-left:3px solid transparent}.fx-cat-item:hover{background:var(--surface);color:#ddd}.fx-cat-item.active{color:#fff;background:#2a2a2a;border-left-color:var(--accent);font-weight:600}.fx-browser-content{flex:1;overflow-y:auto;padding:12px}.fx-browser-footer{display:flex;justify-content:space-between;padding:8px 20px;border-top:1px solid var(--border);font-size:11px;color:#666;flex-shrink:0}.fx-browser-hint{font-style:italic}.fx-browser-content.gallery{display:grid;grid-template-columns:repeat(auto-fill,140px);gap:10px;align-content:start}.fx-card{width:140px;height:130px;background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;cursor:grab;transition:border-color .15s,transform .1s;display:flex;flex-direction:column}.fx-card:hover{border-color:var(--accent);transform:translateY(-2px)}.fx-card.dragging{opacity:.5}.fx-card-thumb{width:100%;flex:1;background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:10px;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden;position:relative}.fx-card-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;opacity:1;transition:opacity .15s ease}.fx-card-thumb.loading img{opacity:0}.fx-card-thumb.loading{background:linear-gradient(90deg,#fff0,#ffffff0f,#fff0) 0 0 / 200% 100%,var(--surface);animation:fx-card-shimmer 1.1s linear infinite}@keyframes fx-card-shimmer{0%{background-position:-100% 0,0 0}to{background-position:100% 0,0 0}}.fx-card-info{padding:5px 8px;border-top:1px solid var(--border);flex-shrink:0}.fx-card-name{font-size:11px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fx-card-cat{font-size:9px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-top:1px}.fx-browser-content.list-view{display:flex;flex-direction:column;gap:2px;align-content:start}.fx-list-item{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--surface);border-radius:5px;cursor:grab;transition:background .1s}.fx-list-item:hover{background:var(--surface)}.fx-list-name{font-size:12px;font-weight:600;color:#ddd;min-width:150px}.fx-list-desc{font-size:11px;color:var(--text-dim);flex:1}.fx-list-cat{font-size:10px;color:var(--accent);text-transform:uppercase;letter-spacing:.5px;min-width:80px;text-align:right}.pref-window{background:var(--panel);border-radius:10px;box-shadow:0 6px 18px #00000080;border:1px solid var(--border);width:640px;max-width:95vw;height:480px;max-height:85vh;display:flex;flex-direction:column}.pref-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}.pref-header h2{margin:0;font-size:1.1em;font-weight:600;color:#eee}.pref-body{display:flex;flex:1;overflow:hidden}.pref-sidebar{width:150px;min-width:150px;border-right:1px solid var(--border);padding:8px 0}.pref-nav-item{padding:8px 16px;color:var(--text-dim);font-size:12px;cursor:pointer;border-left:3px solid transparent}.pref-nav-item:hover{background:var(--surface);color:#ddd}.pref-nav-item.active{color:#fff;background:#2a2a2a;border-left-color:var(--accent);font-weight:600}.pref-content{flex:1;padding:20px 24px;overflow-y:auto}.pref-section h3{margin:0 0 16px;font-size:14px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border);padding-bottom:8px}.pref-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid #2a2a2a}.pref-row label{font-size:12px;color:var(--text-dim);min-width:140px}.pref-control{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.pref-control select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 8px;font-size:12px;min-width:160px}.pref-control input[type=range]{width:120px;accent-color:var(--accent)}.pref-control input[type=color]{width:40px;height:26px;border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer;padding:0}.pref-control span{font-size:11px;color:var(--text-dim);min-width:35px;text-align:right}.pref-footer{display:flex;justify-content:flex-end;padding:10px 20px;border-top:1px solid var(--border)}.pref-footer button{background:var(--surface);border:1px solid var(--border);color:var(--text-dim);padding:5px 14px;border-radius:4px;font-size:12px;cursor:pointer}.pref-footer button:hover{background:var(--hover);color:#fff}#pref-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:6px}.pref-icon-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border-radius:6px;background:var(--surface);border:1px solid var(--border)}.pref-icon-cell svg{flex-shrink:0}.pref-icon-label{font-size:9px;color:var(--text-dim);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.pref-icon-cell{cursor:pointer;transition:border-color .15s}.pref-icon-cell:hover{border-color:var(--accent)}.pref-icon-cell.active{border-color:var(--accent);background:var(--hover)}#icon-picker-popup{margin-top:10px;padding:10px;background:var(--surface);border:1px solid var(--border);border-radius:6px}#icon-picker-options{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.icon-pick-option{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:5px;border:1px solid var(--border);background:var(--bg);cursor:pointer;transition:border-color .1s}.icon-pick-option:hover{border-color:var(--accent);background:var(--hover)}.icon-pick-option.selected{border-color:var(--accent);background:var(--accent)}.submenu-parent{position:relative}.submenu-parent>.submenu-trigger{width:100%;text-align:left}.submenu-parent>.submenu{display:none;position:absolute;left:100%;top:-4px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 0;min-width:120px;box-shadow:4px 4px 12px #00000080;z-index:10}.submenu-parent:hover>.submenu{display:block}.submenu-parent>.submenu button{width:100%;text-align:left}.adj-section-header{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent);letter-spacing:1px;margin:4px 0 2px;padding-top:3px;border-top:1px solid var(--border)}.adj-section-header:first-child{border-top:none;padding-top:0;margin-top:0}#console-wrapper{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:row;font-family:Consolas,Fira Code,Source Code Pro,monospace;font-size:13px;box-shadow:var(--wm-shadow);border-radius:var(--wm-radius);overflow:hidden}#console-panel{width:480px;height:400px;background:var(--panel);border:1px solid var(--border);border-radius:6px 0 0 6px;display:flex;flex-direction:column;min-width:360px}#console-wrapper:not(:has(#script-panel:not(.hidden))) #console-panel{border-radius:6px}.console-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:var(--surface);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-dim);letter-spacing:.5px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.console-header button{background:none;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:11px;padding:2px 8px;border-radius:3px;font-family:inherit}.console-header button:hover{background:var(--hover);color:#fff;border-color:#666}#console-toggle-scripts:hover{background:var(--accent)!important;color:#fff!important}#script-templates-btn:hover{background:#ffb74d!important;color:#1e1e1e!important}#console-close{font-size:14px!important;border:none!important}#console-output{flex:1;overflow-y:auto;padding:6px 12px;color:var(--text);white-space:pre-wrap;word-break:break-all;line-height:1.5}#console-output::-webkit-scrollbar{width:6px}#console-output::-webkit-scrollbar-thumb{background:#555;border-radius:3px}.console-input-row{display:flex;align-items:center;padding:6px 12px;border-top:1px solid var(--border)}.console-prompt{color:var(--accent);margin-right:8px;font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}#console-input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:inherit;font-size:inherit;caret-color:var(--accent)}#console-input::-moz-placeholder{color:#555;font-style:italic}#console-input::placeholder{color:#555;font-style:italic}.console-cmd{color:var(--text-dim)}.console-log{color:var(--text)}.console-result{color:#9e9e9e}.console-error{color:#e53935}.console-warn{color:#ffb74d}.console-info{color:#a4a4a4}#script-panel{width:400px;height:400px;background:var(--panel);border:1px solid var(--border);border-left:none;border-radius:0 6px 6px 0;display:flex;flex-direction:column;min-width:300px}#script-tabs{padding:6px 10px;border-bottom:1px solid var(--border);background:var(--surface-alt)}#script-select{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-family:inherit;font-size:12px;cursor:pointer}#script-editor{flex:1;background:var(--bg);color:#e0e0e0;border:none;outline:none;padding:10px 12px;font-family:inherit;font-size:13px;line-height:1.5;resize:none;-moz-tab-size:2;-o-tab-size:2;tab-size:2;caret-color:var(--accent)}#script-editor::-moz-placeholder{color:#555}#script-editor::placeholder{color:#555}#script-template-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 0;min-width:180px;box-shadow:0 4px 16px #00000080;z-index:10;max-height:260px;overflow-y:auto}.script-template-item{padding:5px 12px;color:var(--text);cursor:pointer;font-size:12px;white-space:nowrap}.script-template-item:hover{background:var(--accent);color:#fff}#script-run{color:#9e9e9e!important;border-color:#9e9e9e!important}#script-run:hover{background:#9e9e9e!important;color:#1e1e1e!important}.console-spinner{color:#ffb74d;font-weight:700;animation:console-pulse 1s ease-in-out infinite}@keyframes console-pulse{0%,to{opacity:1}50%{opacity:.5}}#console-stop{color:#e53935!important;border-color:#e53935!important;font-weight:700;animation:stop-blink .8s ease-in-out infinite}#console-stop:hover{background:#e53935!important;color:#fff!important}@keyframes stop-blink{0%,to{opacity:1}50%{opacity:.6}}#histogram-window{position:fixed;top:80px;right:260px;width:280px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);display:flex;flex-direction:column;box-shadow:var(--wm-shadow);font-size:12px;overflow:hidden}.histogram-actions{display:flex;align-items:center;gap:6px}.histogram-source-toggle{display:flex;border:1px solid var(--border);border-radius:4px;overflow:hidden}.histogram-source-toggle .hg-src-btn{padding:0 8px!important;font-size:11px;border-radius:0;background:transparent;color:var(--text-dim)}.histogram-source-toggle .hg-src-btn:hover{background:#ffffff0f;color:var(--text)}.histogram-source-toggle .hg-src-btn{background:transparent;color:var(--text-dim);border:none;padding:2px 8px;font-size:10px;cursor:pointer;text-transform:none;letter-spacing:normal}.histogram-source-toggle .hg-src-btn:hover{background:#ffffff0d}.histogram-source-toggle .hg-src-btn.active{background:var(--accent, #9e9e9e);color:#fff}.histogram-source-toggle .hg-src-btn+.hg-src-btn{border-left:1px solid var(--border)}#histogram-window #hg-refresh,#histogram-window #hg-close{background:transparent;color:var(--text-dim);border:none;width:22px;padding:0!important;font-size:14px;border-radius:3px}#histogram-window #hg-refresh:hover,#histogram-window #hg-close:hover{background:#ffffff14;color:var(--text)}#histogram-window #hg-canvas{display:block;width:100%;height:120px;background:#111;border-bottom:1px solid var(--border)}.histogram-toolbar{display:flex;align-items:center;gap:8px;padding:5px 10px;border-bottom:1px solid var(--border);font-size:11px}.histogram-toolbar label{display:inline-flex;align-items:center;gap:3px;cursor:pointer;color:var(--text-dim)}.histogram-toolbar input[type=checkbox]{accent-color:var(--accent, #9e9e9e)}.histogram-stats{display:flex;flex-wrap:wrap;gap:8px;padding:5px 10px;font-size:10px;color:var(--text-dim);font-variant-numeric:tabular-nums}.histogram-stats b{color:var(--text);font-weight:600}#history-window{position:fixed;top:80px;right:20px;width:220px;max-height:500px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);display:flex;flex-direction:column;box-shadow:var(--wm-shadow);font-size:11px;resize:both;overflow:hidden}.history-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:var(--surface);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-dim);letter-spacing:.5px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.history-header button{background:none;border:1px solid var(--border);color:var(--text-dim);cursor:pointer;font-size:10px;padding:1px 6px;border-radius:3px}.history-header button:hover{background:var(--hover);color:#fff}#history-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:2px 0}#history-list::-webkit-scrollbar{width:4px}#history-list::-webkit-scrollbar-track{background:transparent}#history-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.history-entry{display:flex;align-items:center;gap:6px;padding:3px 8px;cursor:pointer;border-left:3px solid transparent;transition:background .1s}.history-entry:hover{background:var(--hover)}.history-entry.active{background:#9e9e9e26;border-left-color:var(--accent)}.history-entry.dimmed{opacity:.4}.history-thumb{width:36px;height:27px;border-radius:2px;background:var(--surface);-o-object-fit:cover;object-fit:cover;flex-shrink:0;border:1px solid var(--border)}.history-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;color:var(--text)}.history-tier{font-size:9px;padding:1px 4px;border-radius:3px;font-weight:600;text-transform:uppercase;flex-shrink:0}.history-tier.gpu{background:#4caf5033;color:#4caf50}.history-tier.cpu{background:#ffc10733;color:#ffc107}.history-tier.disk{background:#f4433633;color:#f44336}.history-footer{display:flex;justify-content:space-between;padding:4px 8px;font-size:10px;color:var(--text-dim);border-top:1px solid var(--border);background:var(--surface)}#timeline-window{position:fixed;left:50%;top:60%;transform:translate(-50%);width:980px;height:420px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);display:flex;flex-direction:column;box-shadow:var(--wm-shadow);color:var(--text);font-size:12px;resize:both;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;--tl-row-h: 22px}body.ucui #timeline-window{left:0;right:var(--ucui-right-w, 260px);bottom:0;top:auto;width:auto;height:280px;transform:none;border-radius:6px 6px 0 0;resize:none}body.ucui #timeline-window .tl-titlebar{cursor:ns-resize}body.ucui #timeline-window .tl-titlebar button,body.ucui #timeline-window .tl-titlebar input,body.ucui #timeline-window .tl-titlebar select{cursor:default}.tl-titlebar{position:relative;display:flex;align-items:center;gap:14px;padding:6px 10px;background:var(--surface);border-bottom:1px solid var(--border);cursor:move;flex-shrink:0}.tl-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);min-width:100px}.tl-transport,.tl-anim-tools{display:flex;gap:2px;align-items:center}.tl-frame-group{display:inline-flex;align-items:center;gap:4px}.tl-frame-group label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);-webkit-user-select:none;-moz-user-select:none;user-select:none}.tl-titlebar-spacer{flex:1;min-width:12px}.tl-transport-btn,.tl-kf-btn,.tl-graph-toggle-btn,.tl-menu-btn,.tl-close-btn{background:none;border:1px solid transparent;color:var(--text-dim);font-size:13px;padding:2px 6px;border-radius:3px;cursor:pointer;min-width:22px;line-height:1}.tl-transport-btn:hover,.tl-kf-btn:hover,.tl-graph-toggle-btn:hover,.tl-menu-btn:hover,.tl-close-btn:hover,.tl-transport-btn.active{background:var(--hover);color:#fff;border-color:var(--border)}.tl-graph-toggle-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.tl-kf-graph-line{stroke:var(--accent, #9e9e9e);stroke-width:1.5;fill:none;vector-effect:non-scaling-stroke;opacity:.85}.tl-kf-tan-line{stroke:var(--text-dim, #888);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.6}.tl-kf-tan-grip{fill:var(--accent, #9e9e9e);stroke:#fff;stroke-width:1;cursor:move}.tl-kf-tan-grip:hover{fill:#f0d787}#timeline-window.tl-graph-mode .tl-exposed-row,#timeline-window.tl-graph-mode .tl-exposed-track{height:110px}.tl-kf-graph-mid,.tl-kf-graph-grid{stroke:var(--border, #444);stroke-width:1;stroke-dasharray:2 3;opacity:.45;vector-effect:non-scaling-stroke}.tl-kf-axis-label{position:absolute;left:4px;font-size:9px;color:var(--text-dim, #888);pointer-events:none;font-variant-numeric:tabular-nums;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:2}.tl-kf-axis-label.top{top:2px}.tl-kf-axis-label.bottom{bottom:2px}.tl-kf-marquee{position:absolute;border:1px dashed var(--accent, #9e9e9e);background:#9e9e9e1f;pointer-events:none;z-index:4}#tl-drag-readout{position:fixed;background:var(--surface, #222);border:1px solid var(--border, #444);color:var(--text, #ddd);font-size:11px;padding:3px 6px;border-radius:3px;pointer-events:none;z-index:9999;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 2px 8px #0006}.tl-fps-readout{font-size:10px;color:var(--text-dim);padding:2px 6px;border-radius:3px;background:var(--bg);border:1px solid var(--border);min-width:56px;text-align:center;font-variant-numeric:tabular-nums;margin:0 4px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tl-fps-readout.playing{color:#86efac;border-color:#86efac66}.tl-fps-readout.playing.fps-under{color:#fdba74;border-color:#fdba7466}.tl-tools{display:flex;gap:2px;margin:0;align-items:center;flex-wrap:wrap}.tl-tool-btn{background:none;border:1px solid transparent;color:var(--text-dim);font-size:13px;padding:2px 6px;border-radius:3px;cursor:pointer;min-width:22px;line-height:1}.tl-tool-btn:hover{background:var(--hover);color:#fff;border-color:var(--border)}.tl-tool-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.tl-tools-flyout{position:fixed;background:var(--panel);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 12px #00000080;padding:4px;z-index:2100;display:flex;flex-direction:column;gap:1px;min-width:140px}.tl-tools-flyout button{background:transparent;border:none;color:var(--text);text-align:left;padding:5px 10px;font-size:12px;border-radius:2px;cursor:pointer}.tl-tools-flyout button:hover{background:var(--hover)}.tl-tracks.tool-trackFwd{cursor:e-resize}.tl-tracks.tool-razor{cursor:crosshair}.tl-tracks.tool-text{cursor:text}.tl-tracks.tool-pen{cursor:crosshair}.tl-media-clip.selected{outline:2px solid var(--accent);outline-offset:-1px;box-shadow:0 0 0 1px #ffffff1a inset}.tl-media-clip.inspected{outline:2px solid #9e9e9e;outline-offset:-1px}.tl-text-drag-preview{position:absolute;height:100%;min-width:2px;background:linear-gradient(180deg,#9e9e9e59,#9e9e9e26);border:1px dashed rgba(189,189,189,.9);border-radius:3px;pointer-events:none;z-index:4}.tl-kf-btn{color:#9e9e9e;font-size:12px;margin-left:auto}.tl-frame-info{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-dim)}.tl-frame-info>span{white-space:nowrap}.tl-frame-info input{width:52px;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:2px 4px;border-radius:3px;font-size:11px;-moz-appearance:textfield}.tl-frame-info input::-webkit-outer-spin-button,.tl-frame-info input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tl-close-btn{font-size:15px}.tl-body{flex:1;display:flex;min-height:0;background:var(--panel)}.tl-left-col{width:var(--tl-left-w, 220px);flex-shrink:0;display:flex;flex-direction:column;background:var(--surface-alt);border-right:1px solid var(--border);min-width:140px;max-width:600px}.tl-col-resizer{width:4px;flex-shrink:0;cursor:ew-resize;background:transparent;position:relative;z-index:5}.tl-col-resizer:hover,.tl-col-resizer.dragging{background:var(--accent, #9e9e9e)}body.tl-col-resizing,body.tl-col-resizing *{cursor:ew-resize!important;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tl-corner{height:76px;overflow:hidden;background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:4px 8px}.tl-add-lane-btn{background:var(--input-bg);border:1px solid var(--border);color:var(--text);font-size:14px;font-weight:700;width:26px;height:26px;border-radius:4px;cursor:pointer;line-height:1}.tl-add-lane-btn:hover{background:var(--hover);color:#fff}.tl-add-lane-menu{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px 0;font-size:12px;color:var(--text);z-index:10003;box-shadow:0 2px 8px #0006;min-width:180px}.tl-add-lane-menu button{display:block;width:100%;text-align:left;padding:6px 12px;background:none;border:none;color:var(--text);font-size:12px;cursor:pointer}.tl-add-lane-menu button:hover{background:var(--hover);color:#fff}.tl-layer-list{flex:1;overflow-y:auto;overflow-x:hidden}.tl-layer-row{height:var(--tl-row-h, 36px);display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--border);color:var(--text);font-size:12px;background:transparent;cursor:default;content-visibility:auto;contain-intrinsic-size:auto var(--tl-row-h, 36px)}.tl-layer-row:hover{background:var(--hover)}.tl-layer-row.active{background:var(--hover);color:#fff}.tl-layer-row .tl-layer-name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tl-layer-row .tl-layer-caret{font-size:9px;color:var(--text-dim);margin-right:6px;cursor:pointer;width:12px;text-align:center;flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .12s ease,color .12s ease}.tl-layer-row .tl-layer-caret:hover,.tl-layer-row .tl-layer-caret.open{color:var(--text)}.tl-exposed-group{display:flex;align-items:center;gap:4px;height:18px;padding:0 8px 0 14px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);background:#ffffff05;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tl-exposed-group:hover{background:#ffffff0d;color:var(--text)}.tl-exposed-group-caret{display:inline-block;width:10px;font-size:8px;line-height:1;color:var(--text-dim);transition:transform .1s linear;text-align:center}.tl-exposed-group.collapsed .tl-exposed-group-caret{transform:rotate(-90deg)}.tl-exposed-group-label{flex:1}.tl-exposed-group-track{height:18px;background:#ffffff05;border-bottom:1px solid var(--border)}.tl-layer-row .tl-layer-fps{font-size:9px;color:#222;background:#9e9e9e;border-radius:3px;padding:1px 5px;margin-left:6px;font-weight:700}.tl-right-col{flex:1;position:relative;display:flex;flex-direction:column;min-width:0;background:var(--panel);overflow:hidden}.lpp-clip-host{padding:8px 12px 12px;font-size:12px;color:var(--text);display:flex;flex-direction:column}.lpp-clip-host.hidden,.lpp-title-clip,#layer-property-panel.lpp-clip-mode .lpp-title-layer{display:none}#layer-property-panel.lpp-clip-mode .lpp-title-clip{display:inline}#layer-property-panel.lpp-clip-mode .lpp-body,#layer-property-panel.lpp-clip-mode #inlayerprop-section{display:none}.lpp-clip-head{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);margin-bottom:8px}.tl-insp-name{font-size:13px;color:var(--text);margin-bottom:4px;word-break:break-all}.tl-insp-kind{display:inline-block;font-size:10px;padding:1px 6px;border-radius:2px;margin-bottom:10px;background:var(--bg);border:1px solid var(--border);color:var(--text-dim);align-self:flex-start}.tl-insp-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px}.tl-insp-row label{color:var(--text-dim);font-size:11px;min-width:70px}.tl-insp-row input[type=number]{flex:1;height:22px;background:var(--input-bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-size:12px;padding:0 6px;min-width:0}.tl-insp-row input[type=number]:focus{border-color:var(--accent);outline:none}.tl-insp-row .tl-insp-read{font-size:11px;color:var(--text-dim)}.tl-insp-section{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.tl-insp-actions{display:flex;gap:6px;margin-top:10px}.tl-insp-actions button{flex:1;height:26px;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--text);font-size:11px;cursor:pointer}.tl-insp-actions button:hover{background:var(--hover)}.tl-insp-actions button.danger{color:#ef9a9a;border-color:#6b3a3a}.tl-insp-actions button.danger:hover{background:#d9534f33}.tl-time-ruler{height:13px;position:relative;border-bottom:1px solid var(--border);background:var(--surface-alt);flex-shrink:0;overflow:hidden;font-size:8px;letter-spacing:.2px;color:var(--text);text-transform:none}.tl-time-ruler .tl-time-tick{position:absolute;top:0;height:100%;border-left:1px solid rgba(255,255,255,.18);padding-left:3px;line-height:13px;pointer-events:none;white-space:nowrap;font-variant-numeric:tabular-nums}.tl-time-ruler .tl-time-tick.major{border-left-color:#ffffff73;font-weight:600}.tl-marker-bar{position:relative;height:16px;background:#0000002e;border-bottom:1px solid var(--border);flex-shrink:0;overflow:visible;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none}.tl-marker,.tl-media-clip,.tl-media-handle,.tl-kf-dot,.tl-kf-tan-grip,.tl-zoom-window,.tl-zoom-handle,.tl-zoom-bar,.tl-playhead{touch-action:none}.tl-marker{position:absolute;top:1px;width:11px;height:14px;margin-left:-5.5px;cursor:pointer;clip-path:polygon(0 0,100% 0,100% 65%,50% 100%,0 65%);background:var(--marker-fill, #9e9e9e);border:1px solid rgba(0,0,0,.35);box-sizing:border-box;transition:filter .1s ease,transform .1s ease}.tl-marker:hover{filter:brightness(1.25);transform:translateY(-1px)}.tl-marker.dragging{cursor:grabbing;filter:brightness(1.4)}.tl-marker.tl-marker--selected{outline:2px solid var(--accent, #9e9e9e);outline-offset:1px}.tl-marker--red{--marker-fill: #ef4444}.tl-marker--orange{--marker-fill: #f97316}.tl-marker--yellow{--marker-fill: #eab308}.tl-marker--green{--marker-fill: #22c55e}.tl-marker--teal{--marker-fill: #7a7a7a}.tl-marker--blue,.tl-marker--purple,.tl-marker--pink{--marker-fill: #9e9e9e}.tl-marker--chapter:after,.tl-marker--web-link:after,.tl-marker--segmentation:after,.tl-marker--flash-cue:after{content:"";position:absolute;top:2px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#ffffffb3;pointer-events:none}.tl-marker--chapter:after{border-radius:0}.tl-marker--web-link:after{background:#fffffff2}.tl-marker--segmentation:after{width:6px;height:1px;margin-left:-3px;border-radius:0}.tl-marker--flash-cue:after{background:#fffa;transform:rotate(45deg)}.marker-popup{position:fixed;z-index:10000;width:280px;background:#1a1a1f;border:1px solid #333;border-radius:6px;padding:8px;box-shadow:0 2px 10px #00000073;font-size:12px;color:#ddd;-webkit-user-select:none;-moz-user-select:none;user-select:none}.marker-popup.hidden{display:none}.marker-popup-header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.marker-popup-type{flex:1;background:#222;color:#ddd;border:1px solid #333;border-radius:3px;padding:3px 6px;font-size:12px}.marker-popup-close{width:22px;height:22px;background:transparent;border:none;color:#888;cursor:pointer;font-size:16px;line-height:1;border-radius:3px}.marker-popup-close:hover{color:#fff;background:#333}.marker-popup-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.marker-popup-row--block{flex-direction:column;align-items:stretch}.marker-popup-row--block label{margin-bottom:3px}.marker-popup-row label{flex:0 0 56px;font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.5px}.marker-popup-row input[type=text],.marker-popup-row input[type=url],.marker-popup-row select,.marker-popup-row textarea{flex:1;background:#222;color:#ddd;border:1px solid #333;border-radius:3px;padding:4px 6px;font-size:12px;font-family:inherit;resize:vertical}.marker-popup-row input:focus,.marker-popup-row textarea:focus,.marker-popup-row select:focus{outline:none;border-color:#9e9e9e}.marker-popup-time{color:#aaa;font-family:monospace}.marker-popup-swatches{display:flex;gap:4px;flex:1}.marker-popup-swatch{width:20px;height:20px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer;transition:transform .1s ease}.marker-popup-swatch:hover{transform:scale(1.1)}.marker-popup-swatch.selected{border-color:#fff;box-shadow:0 0 0 1px #00000080}.marker-popup-swatch--red{background:#ef4444}.marker-popup-swatch--orange{background:#f97316}.marker-popup-swatch--yellow{background:#eab308}.marker-popup-swatch--green{background:#22c55e}.marker-popup-swatch--teal{background:#7a7a7a}.marker-popup-swatch--blue,.marker-popup-swatch--purple,.marker-popup-swatch--pink{background:#9e9e9e}.marker-popup-footer{display:flex;gap:6px;justify-content:space-between;border-top:1px solid #2a2a2e;margin-top:4px;padding-top:8px}.marker-popup-action{background:#2a2a2e;color:#ddd;border:1px solid #333;border-radius:3px;padding:5px 10px;cursor:pointer;font-size:12px}.marker-popup-action:hover{background:#34343a}.marker-popup-delete{color:#f77}.marker-popup-delete:hover{background:#4a1f1f;color:#faa}.markers-panel-window{position:fixed;top:80px;right:80px;width:460px;height:360px;background:#1a1a1f;border:1px solid #333;border-radius:6px;box-shadow:0 2px 10px #00000073;display:flex;flex-direction:column;font-size:12px;color:#ddd;z-index:9000}.markers-panel-window.hidden{display:none}.markers-panel-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background:#222;border-bottom:1px solid #333;border-radius:6px 6px 0 0;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.markers-panel-title{font-weight:600}.markers-panel-close{width:22px;height:22px;background:transparent;border:none;color:#888;cursor:pointer;font-size:16px;line-height:1;border-radius:3px}.markers-panel-close:hover{color:#fff;background:#333}.markers-panel-toolbar{display:flex;gap:8px;padding:6px 8px;border-bottom:1px solid #2a2a2e;flex-wrap:wrap}.markers-panel-search{flex:0 0 140px;background:#222;color:#ddd;border:1px solid #333;border-radius:3px;padding:3px 6px;font-size:12px}.markers-panel-filter{display:flex;gap:4px;flex-wrap:wrap}.markers-filter-chip{background:#2a2a2e;color:#aaa;border:1px solid #333;border-radius:10px;padding:2px 8px;font-size:11px;cursor:pointer}.markers-filter-chip:hover{background:#34343a;color:#ddd}.markers-filter-chip.active{background:#9e9e9e;color:#fff;border-color:#9e9e9e}.markers-panel-list-wrap{flex:1;overflow:auto;position:relative}.markers-panel-table{width:100%;border-collapse:collapse}.markers-panel-table thead th{position:sticky;top:0;background:#222;color:#aaa;font-size:11px;font-weight:500;text-align:left;padding:5px 8px;border-bottom:1px solid #333;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.markers-panel-table thead th:hover{color:#fff}.markers-panel-table tbody td{padding:4px 8px;border-bottom:1px solid #2a2a2e}.markers-panel-table tbody tr{cursor:pointer}.markers-panel-table tbody tr:hover{background:#232328}.markers-col-color,th.markers-col-color{width:24px}.markers-col-dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle}.markers-col-dot--red{background:#ef4444}.markers-col-dot--orange{background:#f97316}.markers-col-dot--yellow{background:#eab308}.markers-col-dot--green{background:#22c55e}.markers-col-dot--teal{background:#7a7a7a}.markers-col-dot--blue,.markers-col-dot--purple,.markers-col-dot--pink{background:#9e9e9e}.markers-col-time{font-family:monospace;color:#aaa;white-space:nowrap}.markers-col-comment{color:#888;font-size:11px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.markers-panel-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#666}.markers-panel-empty.hidden{display:none}.tl-render-strip{display:block;width:100%;height:5px;background:#00000059;border-bottom:1px solid var(--border);flex-shrink:0;position:relative;z-index:3}.tl-ruler{height:17px;position:relative;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;overflow:hidden;font-size:8.5px;color:var(--text-dim);touch-action:none}.tl-ruler .tl-tick{position:absolute;top:0;height:100%;border-left:1px solid rgba(255,255,255,.06);padding-left:2px;line-height:17px;pointer-events:none}.tl-ruler .tl-tick.major{border-left-color:#fff3}.tl-tracks{flex:1;position:relative;overflow-x:auto;overflow-y:hidden;background:var(--panel);background-image:linear-gradient(var(--surface-alt) 1px,transparent 1px);background-size:100% var(--tl-row-h, 36px);touch-action:none}.tl-track-row{height:var(--tl-row-h, 36px);overflow:hidden;border-bottom:1px solid var(--border);position:relative;content-visibility:auto;contain-intrinsic-size:auto var(--tl-row-h, 36px)}.tl-track-row.active{background:#ffffff0a}.tl-layer-row.tl-layer-hidden .tl-layer-name{opacity:.45;font-style:italic}.tl-exposed-row{display:flex;align-items:center;gap:4px;padding:0 4px 0 32px;height:28px;background:var(--surface-alt);border-bottom:1px solid var(--border);font-size:11px;color:var(--text);min-width:0}.tl-exposed-row.active{background:var(--hover)}.tl-exposed-kf-btn{background:none;border:1px solid transparent;color:#9e9e9e;font-size:11px;padding:1px 4px;cursor:pointer;border-radius:3px;line-height:1}.tl-exposed-kf-btn:hover{background:var(--hover);border-color:var(--border)}.tl-exposed-kf-btn.has-key{color:#fff;background:#9e9e9e;border-color:#9e9e9e}.tl-key-nav{display:inline-flex;align-items:center;gap:1px;flex-shrink:0;margin:0 2px}.tl-key-nav-btn{background:none;border:1px solid transparent;color:var(--text-dim, #888);font-size:9px;padding:1px 3px;cursor:pointer;border-radius:2px;line-height:1;min-width:14px}.tl-key-nav-btn:hover{background:var(--hover);color:#fff;border-color:var(--border)}.tl-key-nav-btn.disabled{opacity:.3;cursor:default}.tl-key-nav-btn.disabled:hover{background:none;color:var(--text-dim, #888);border-color:transparent}.tl-exposed-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.tl-exposed-value{width:44px;flex-shrink:0;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:1px 4px;border-radius:3px;font-size:10px;-moz-appearance:textfield}.tl-exposed-value::-webkit-outer-spin-button,.tl-exposed-value::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tl-exposed-remove{background:none;border:1px solid transparent;color:var(--text-dim);font-size:12px;padding:0 4px;cursor:pointer;border-radius:3px;line-height:1}.tl-exposed-remove:hover{background:var(--hover);color:#fff;border-color:var(--border)}.tl-exposed-track{height:28px;position:relative;border-bottom:1px solid var(--border);background:var(--surface-alt)}.tl-kf-dot{position:absolute;top:50%;width:9px;height:9px;margin-left:-5px;margin-top:-5px;background:#9e9e9e;border:1px solid #111;transform:rotate(45deg);cursor:ew-resize;z-index:1}.tl-kf-dot:hover{background:#f0d787}#timeline-window.tl-graph-mode .tl-kf-dot{cursor:move}.tl-kf-dot.selected{background:#fff;box-shadow:0 0 0 1.5px #9e9e9e;z-index:3}.tl-kf-dot.dragging{background:#fff;box-shadow:0 0 0 2px #9e9e9e99;z-index:3}.tl-kf-dot.interp-linear{border-radius:50%;transform:none;margin-left:-5px;margin-top:-5px}.tl-kf-dot.interp-constant{border-radius:0;transform:none;margin-left:-5px;margin-top:-5px}.tl-kf-dot.interp-easeIn{clip-path:polygon(50% 0%,100% 50%,50% 100%)}.tl-kf-dot.interp-easeOut{clip-path:polygon(0% 50%,50% 0%,50% 100%)}.tl-rect-select{position:absolute;background:#9e9e9e26;border:1px solid rgba(158,158,158,.8);pointer-events:none;z-index:2}.tl-rect-select.hidden{display:none}.tl-kf-ctxmenu,.tl-kf-ctxsub{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px 0;font-size:12px;color:var(--text);z-index:10001;box-shadow:0 6px 18px #00000080;min-width:180px}.tl-kf-ctxmenu button,.tl-kf-ctxsub button{display:block;position:relative;width:100%;text-align:left;padding:6px 12px;background:none;border:none;color:var(--text);font-size:12px;cursor:pointer}.tl-kf-ctxmenu button:hover,.tl-kf-ctxsub button:hover{background:var(--hover);color:#fff}.tl-kf-ctxdiv{height:1px;background:var(--border);margin:4px 0}.tl-kf-ctxsub{display:none;position:absolute;left:100%;top:0;margin-left:2px}.tl-kf-ctxmenu button:hover>.tl-kf-ctxsub,.tl-kf-ctxsub button:hover>.tl-kf-ctxsub{display:block}.tl-exposed-marker{display:inline-block;width:7px;height:7px;background:#9e9e9e;border:1px solid #8a6e24;transform:rotate(45deg);margin-left:4px;vertical-align:middle;flex-shrink:0;pointer-events:none}.tl-exposed-marker.has-key-here{background:#fff;border-color:#9e9e9e}.tl-settings-popup{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:6px 0;font-size:12px;color:var(--text);z-index:10002;box-shadow:0 2px 8px #0006;min-width:220px}.tl-settings-popup .tl-settings-section{padding:4px 12px 6px;border-bottom:1px solid var(--border)}.tl-settings-popup .tl-settings-section:last-child{border-bottom:none}.tl-settings-popup .tl-settings-title{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.tl-settings-popup .tl-fps-row{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.tl-settings-popup .tl-fps-preset{flex:0 0 calc(33.333% - 4px);background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:4px 0;border-radius:3px;font-size:11px;cursor:pointer}.tl-settings-popup .tl-fps-preset:hover{background:var(--hover);color:#fff}.tl-settings-popup .tl-fps-preset.active{background:#9e9e9e;color:#222;border-color:#8a6e24;font-weight:700}.tl-settings-popup .tl-fps-custom{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:11px;color:var(--text-dim)}.tl-settings-popup .tl-fps-custom input{flex:1;background:var(--input-bg);border:1px solid var(--border);color:var(--text);padding:3px 6px;border-radius:3px;font-size:11px;width:60px;-moz-appearance:textfield}.tl-settings-popup .tl-fps-custom input::-webkit-outer-spin-button,.tl-settings-popup .tl-fps-custom input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#tl-ctx-menu{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px 0;font-size:12px;color:var(--text);z-index:10000;box-shadow:0 6px 18px #00000080;min-width:180px}#tl-ctx-menu button{display:block;width:100%;text-align:left;padding:6px 12px;background:none;border:none;color:var(--text);font-size:12px;cursor:pointer}#tl-ctx-menu button:hover{background:var(--hover);color:#fff}.tl-cel-frame-marker{position:absolute;background:center / 100% 100% no-repeat;border:1px solid var(--border);border-radius:2px;pointer-events:none;z-index:1;box-shadow:0 1px 2px #00000059}.tl-cel-frame-marker.no-thumb{width:7px;height:7px;background:#9e9e9e;border-color:#8a6e24}.tl-media-clip{position:absolute;pointer-events:auto;z-index:1;box-sizing:border-box;overflow:hidden;border-radius:3px;cursor:grab;max-height:calc(var(--tl-row-h, 36px) - 2px)}.tl-media-clip:active{cursor:grabbing}.tl-media-clip.video{background:linear-gradient(180deg,#7a7a7a8c,#7a7a7a4d);border:1px solid rgba(167,139,250,.8)}.tl-media-clip.audio{background:linear-gradient(180deg,#22c55e66,#22c55e38);border:1px solid rgba(134,239,172,.8)}.tl-media-clip.unlinked{background:linear-gradient(180deg,#5050508c,#5050504d);border-color:#a0a0a0cc}.tl-media-clip.image{background:linear-gradient(180deg,#ea580c73,#ea580c38);border:1px solid rgba(253,186,116,.8)}.tl-media-image-thumb{position:absolute;top:2px;left:2px;bottom:2px;width:auto;height:calc(100% - 4px);-o-object-fit:cover;object-fit:cover;pointer-events:none;opacity:.85;border-radius:3px}.tl-media-clip.image .tl-media-clip-label{text-shadow:0 1px 2px rgba(0,0,0,.85);background:linear-gradient(90deg,#0006,#0000 60%);padding:2px 4px;border-radius:2px}.tl-media-clip.layer{background:linear-gradient(180deg,#a855f78c,#a855f74d);border:1px solid rgba(216,180,254,.8)}.tl-media-clip.layer-text,.tl-media-clip.text-clip{background:linear-gradient(180deg,#9e9e9e8c,#9e9e9e4d);border:1px solid rgba(189,189,189,.85)}.tl-media-clip.text-clip .tl-media-clip-label{text-shadow:0 1px 2px rgba(0,0,0,.7)}.tl-media-clip.layer-vector{background:linear-gradient(180deg,#ec489980,#ec489947);border:1px solid rgba(249,168,212,.85)}.tl-media-clip.layer .tl-media-clip-label{text-shadow:0 1px 2px rgba(0,0,0,.7)}.tl-media-wave{position:absolute;top:2px;right:2px;bottom:2px;left:2px;width:calc(100% - 4px);height:calc(100% - 4px);pointer-events:none;opacity:.85}.tl-media-clip-label{position:absolute;left:10px;right:24px;top:3px;color:#fff;font-size:10px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.tl-media-split{position:absolute;top:2px;right:2px;background:#00000059;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:10px;padding:0 5px;border-radius:3px;cursor:pointer;line-height:14px;z-index:3}.tl-media-split:hover{background:#0009}.tl-media-handle{position:absolute;top:0;bottom:0;width:8px;background:#ffffff59;cursor:ew-resize;z-index:3}.tl-media-handle.left{left:0;border-right:1px solid rgba(0,0,0,.5)}.tl-media-handle.right{right:0;border-left:1px solid rgba(0,0,0,.5)}.tl-media-handle:hover{background:#fff9}.tl-video-bar{position:absolute;background:linear-gradient(180deg,#7a7a7a8c,#7a7a7a4d);border:1px solid rgba(167,139,250,.8);border-radius:3px;pointer-events:auto;z-index:1;box-sizing:border-box;overflow:hidden;display:flex;align-items:center;min-width:0}.tl-video-bar.unlinked{background:linear-gradient(180deg,#5050508c,#5050504d);border-color:#a0a0a0cc}.tl-video-bar-label{flex:1;min-width:0;padding:0 10px;color:#fff;font-size:10px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.tl-video-link{position:absolute;top:2px;right:2px;background:#00000059;border:1px solid rgba(255,255,255,.35);color:#fff;font-size:11px;padding:1px 5px;border-radius:3px;cursor:pointer;line-height:1;z-index:2}.tl-video-link:hover{background:#0009}.tl-video-handle{position:absolute;top:0;bottom:0;width:8px;background:#ffffff59;cursor:ew-resize;z-index:3}.tl-video-handle.left{left:0;border-right:1px solid rgba(0,0,0,.5)}.tl-video-handle.right{right:0;border-left:1px solid rgba(0,0,0,.5)}.tl-video-handle:hover{background:#fff9}.tl-cel-hold-card{position:absolute;background:#9e9e9e24;border:1px solid rgba(158,158,158,.4);border-radius:3px;pointer-events:none;z-index:0;box-sizing:border-box}.tl-cel-hold-card.current{background:#9e9e9e73;border-color:#9e9e9e;z-index:2}.tl-cel-hold-card.empty{background:#9e9e9e0d;border-style:dashed;border-color:#9e9e9e47}.tl-cel-hold-card.empty.current{background:#9e9e9e29;border-style:dashed;border-color:#9e9e9e}.tl-cel-frame-marker{z-index:1}.tl-layer-tools{display:flex;align-items:center;flex-wrap:wrap;gap:4px;height:auto;min-width:40px}.tl-layer-tools:empty{display:none}.tl-layer-tools .tl-tool-btn{background:var(--input-bg);border:1px solid var(--border);color:var(--text-dim);font-size:11px;padding:2px 7px;border-radius:3px;cursor:pointer;line-height:1;white-space:nowrap}.tl-layer-tools .tl-tool-btn:hover{background:var(--hover);color:#fff}.tl-layer-tools .tl-tool-btn.active{background:#9e9e9e;color:#222;border-color:#8a6e24}.tl-layer-tools .tl-tool-num{width:32px;background:var(--input-bg);border:1px solid var(--border);color:var(--text);font-size:10px;padding:2px 4px;border-radius:3px;-moz-appearance:textfield}.tl-layer-tools .tl-tool-num::-webkit-outer-spin-button,.tl-layer-tools .tl-tool-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tl-layer-tools .tl-tool-label{font-size:10px;color:var(--text-dim)}.tl-zoom-bar{position:relative;height:14px;background:var(--surface);border-bottom:1px solid var(--border);cursor:pointer;flex-shrink:0}.tl-zoom-window{position:absolute;top:2px;bottom:2px;min-width:20px;background:#ffffff14;border:1px solid rgba(255,255,255,.3);border-radius:2px;cursor:grab}.tl-zoom-window:active{cursor:grabbing}.tl-zoom-handle{position:absolute;top:-1px;bottom:-1px;width:5px;background:#ffffff40;cursor:ew-resize}.tl-zoom-handle.left{left:-1px;border-radius:2px 0 0 2px}.tl-zoom-handle.right{right:-1px;border-radius:0 2px 2px 0}.tl-playhead{position:absolute;top:0;bottom:0;width:1px;background:var(--accent);pointer-events:none;z-index:2}.tl-playhead:before{content:"";position:absolute;top:0;left:-5px;width:11px;height:10px;background:var(--accent);clip-path:polygon(0 0,100% 0,50% 100%)}.tl-drop-indicator{position:absolute;top:0;bottom:0;width:2px;background:#9e9e9e;box-shadow:0 0 8px #9e9e9e;pointer-events:none;z-index:3;display:none}.tl-drop-indicator:before{content:"";position:absolute;top:0;left:-5px;width:12px;height:12px;background:#9e9e9e;border-radius:2px;clip-path:polygon(0 0,100% 0,50% 100%)}#resource-window{position:fixed;top:60px;left:50%;transform:translate(-50%);width:620px;max-height:70vh;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);display:flex;flex-direction:column;overflow:hidden}.resource-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--border);font-weight:600;cursor:move}.resource-header button{background:none;border:none;color:var(--text);cursor:pointer;font-size:16px}.resource-categories{display:flex;gap:2px;padding:6px 8px;border-bottom:1px solid var(--border);flex-wrap:wrap}.resource-cat-btn{padding:3px 10px;border:1px solid var(--border);border-radius:3px;background:var(--bg);color:var(--text-dim);cursor:pointer;font-size:.85em}.resource-cat-btn:hover{background:var(--surface);color:var(--text)}.resource-cat-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.resource-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;padding:6px;overflow-y:auto;flex:1;min-height:200px}.resource-tile{width:100%;padding-bottom:100%;border:2px solid transparent;border-radius:4px;overflow:hidden;cursor:pointer;position:relative;background:var(--bg)}.resource-tile:hover{border-color:var(--text-dim)}.resource-tile.selected{border-color:var(--accent)}.resource-tile canvas{position:absolute;top:0;left:0;width:100%;height:100%;display:block}.resource-tile .resource-tile-label{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;font-size:.65em;padding:2px 3px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .15s}.resource-tile:hover .resource-tile-label{opacity:1}.resource-actions{display:flex;gap:4px;padding:6px 8px;border-top:1px solid var(--border);align-items:center;flex-wrap:wrap}.resource-actions button{padding:3px 8px;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.85em}.resource-actions button:hover{background:var(--accent);color:#fff}.ge-stop{position:absolute;width:13px;height:18px;transform:translate(-50%);cursor:pointer;z-index:1}.ge-stop:before{content:"";display:block;width:0;height:0;border-left:6.5px solid transparent;border-right:6.5px solid transparent;border-bottom:7px solid var(--border)}.ge-stop:after{content:"";display:block;width:11px;height:9px;margin:0 1px;border:1px solid var(--border);border-radius:1px;background:var(--ge-color, #fff)}.ge-stop.selected:before{border-bottom-color:var(--text)}.ge-stop.selected:after{border-color:var(--text);box-shadow:0 0 0 1px var(--accent)}#ge-lib-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;max-height:120px;overflow-y:auto;scrollbar-width:thin}.ge-lib-swatch{height:20px;border:2px solid transparent;border-radius:3px;cursor:pointer;position:relative;overflow:hidden}.ge-lib-swatch:hover{border-color:var(--text-dim)}.ge-lib-swatch.selected{border-color:var(--accent)}.ge-lib-swatch canvas{display:block;width:100%;height:100%}.ge-lib-swatch .ge-lib-label{position:absolute;bottom:0;left:0;right:0;background:#000000a6;color:#fff;font-size:.6em;padding:0 2px;text-align:center;white-space:nowrap;overflow:hidden;opacity:0;transition:opacity .15s;pointer-events:none}.ge-lib-swatch:hover .ge-lib-label{opacity:1}#ge-lib-grid .ge-lib-separator{grid-column:1 / -1;height:1px;background:var(--border);margin:2px 0}.sm-tip-thumb{width:48px;height:48px;border:2px solid var(--border);border-radius:4px;overflow:hidden;cursor:pointer;position:relative;background:#000}.sm-tip-thumb canvas{width:100%;height:100%;display:block}.sm-tip-thumb.selected{border-color:var(--accent)}.sm-tip-thumb .sm-tip-del{position:absolute;top:0;right:0;background:#000000b3;color:#fff;border:none;cursor:pointer;font-size:10px;padding:0 3px;line-height:14px;display:none}.sm-tip-thumb:hover .sm-tip-del{display:block}.pn-effect-item{display:flex;align-items:center;gap:4px;padding:4px 6px;background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pn-effect-item:hover{border-color:var(--text-dim)}.pn-effect-item.selected{border-color:var(--accent);background:var(--bg)}.pn-effect-item .pn-collapse{width:16px;text-align:center;color:var(--text-dim);font-size:10px;cursor:pointer}.pn-effect-item .pn-name{flex:1;color:var(--text);font-size:.85em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pn-effect-item .pn-name:focus{outline:1px solid var(--accent);background:var(--bg)}.pn-effect-item .pn-del{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:12px;padding:0 2px}.pn-effect-item .pn-del:hover{color:#f87171}.pn-effect-body{padding:4px 6px;border:1px solid var(--border);border-top:none;border-radius:0 0 4px 4px;background:var(--bg)}.pn-menu-item{display:block;width:100%;padding:4px 12px;background:none;border:none;color:var(--text);text-align:left;cursor:pointer;font-size:.85em}.pn-menu-item:hover{background:var(--surface)}#gradient-library-window{position:fixed;top:80px;left:50%;transform:translate(-50%);width:460px;height:500px;min-width:320px;min-height:400px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);display:flex;flex-direction:column;resize:both;overflow:auto}#gradient-library-window.hidden{display:none}.gl-swatch{width:28px;height:28px;border-radius:2px;cursor:pointer;border:2px solid transparent;overflow:hidden;flex-shrink:0}.gl-swatch:hover{border-color:var(--text-dim)}.gl-swatch.selected{border-color:#fff;box-shadow:0 0 0 1px var(--accent)}.gl-swatch canvas{width:100%;height:100%;display:block}.fp-titlebar,.bb-header,.history-header,.resource-header,.sg-titlebar,.console-header,.lb-header,.adj-popup-header,.ndd-titlebar,.histogram-header,#ls-title-bar{height:var(--wm-titlebar-h);min-height:var(--wm-titlebar-h);box-sizing:border-box;padding:0 12px;font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:none;color:var(--text);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-radius:0;flex-shrink:0;touch-action:none;margin-bottom:0}.fp-titlebar:active,.bb-header:active,.history-header:active,.resource-header:active,.sg-titlebar:active,.console-header:active,.lb-header:active,.adj-popup-header:active,.ndd-titlebar:active,.histogram-header:active,#ls-title-bar:active{cursor:grabbing}.fp-titlebar>span:first-child,.bb-title,.history-header>span,.resource-header>span,.sg-titlebar>span:first-child,.console-header>span:first-child,.lb-header>h2,.adj-popup-header>span:first-child,.ndd-titlebar>h2,.histogram-header>span:first-child,#ls-title-bar>span:first-child{font-size:12px;font-weight:600;letter-spacing:.3px;text-transform:none;color:var(--text);margin:0}.fp-titlebar>button,.bb-header-actions button,.history-header button,.resource-header button,.sg-titlebar button,.console-header button,.lb-header button,.adj-popup-header button,.ndd-titlebar button,.histogram-header button,#ls-title-bar button{height:22px;font-size:12px;padding:0 8px;line-height:1}#project-panel-window{position:fixed;top:80px;left:80px;width:380px;height:520px;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);box-shadow:var(--wm-shadow);display:flex;flex-direction:column;font-size:12px;overflow:hidden}#project-panel-window.hidden{display:none}#project-panel-window.pp-drag-hover{outline:2px dashed #9e9e9e;outline-offset:-4px}.pp-titlebar{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--surface-alt);border-bottom:1px solid var(--border);cursor:move}.pp-title{font-weight:600;margin-right:6px;white-space:nowrap}.pp-search{flex:1;min-width:60px;height:22px;padding:0 6px;background:var(--input-bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-size:12px}.pp-view-btn,.pp-close-btn{width:24px;height:22px;background:transparent;border:1px solid transparent;border-radius:3px;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.pp-view-btn:hover,.pp-close-btn:hover{background:var(--hover)}.pp-view-btn.active{background:var(--accent);color:#000;border-color:var(--accent)}.pp-import-btn{height:22px;padding:0 10px;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--text);cursor:pointer;font-size:11px;white-space:nowrap}.pp-import-btn:hover{background:var(--hover)}.pp-close-btn{font-size:16px}.pp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 8px;background:var(--bg);border-bottom:1px solid var(--border);color:var(--text-dim);font-size:11px}.pp-sort-label{display:flex;align-items:center;gap:4px}#pp-sort{height:20px;background:var(--input-bg);border:1px solid var(--border);border-radius:3px;color:var(--text);font-size:11px;padding:0 4px}.pp-count{color:var(--text-dim)}.pp-body{flex:1;display:flex;min-height:0}.pp-bins{width:130px;border-right:1px solid var(--border);background:var(--bg);display:flex;flex-direction:column;overflow:hidden}.pp-bin-list{flex:1;overflow-y:auto;padding:4px 2px;display:flex;flex-direction:column;gap:1px}.pp-bin-row{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:3px;cursor:pointer;font-size:12px;color:var(--text);white-space:nowrap}.pp-bin-row:hover{background:var(--surface)}.pp-bin-row.active{background:#9e9e9e2e;color:#9e9e9e}.pp-bin-row.pp-bin-drop{outline:2px dashed #9e9e9e;outline-offset:-2px}.pp-bin-icon{color:var(--text-dim);font-size:10px}.pp-bin-row.active .pp-bin-icon{color:#9e9e9e}.pp-bin-name{flex:1;overflow:hidden;text-overflow:ellipsis}.pp-bin-count{font-size:10px;color:var(--text-dim)}.pp-new-bin{margin:4px;height:24px;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--text);cursor:pointer;font-size:11px}.pp-new-bin:hover{background:var(--hover)}.pp-main{flex:1;display:flex;flex-direction:column;min-width:0;position:relative}.pp-list{flex:1;overflow-y:auto;padding:4px;display:flex;flex-direction:column;gap:2px}.pp-list.pp-list-grid{flex-direction:row;flex-wrap:wrap;gap:6px;padding:8px}.pp-row{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:4px;cursor:grab;background:var(--surface-alt);border:1px solid transparent;min-height:52px}.pp-row:hover{background:var(--surface);border-color:var(--border)}.pp-row-dragging{opacity:.5}.pp-list.pp-list-grid .pp-row{flex-direction:column;width:100px;height:120px;padding:6px;align-items:flex-start}.pp-thumb{width:64px;height:48px;flex-shrink:0;background:#0a0a0a;border:1px solid var(--border);border-radius:3px;overflow:hidden;display:flex;align-items:center;justify-content:center}.pp-list.pp-list-grid .pp-thumb{width:88px;height:66px}.pp-thumb canvas{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pp-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pp-name{font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-meta{font-size:10px;color:var(--text-dim)}.pp-rename-input{height:18px;padding:0 4px;background:var(--input-bg);border:1px solid var(--accent);border-radius:2px;color:var(--text);font-size:12px;width:100%}.pp-badges{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.pp-kind-badge{font-size:10px;padding:1px 5px;border-radius:2px;background:var(--bg);border:1px solid var(--border);color:var(--text-dim);white-space:nowrap}.pp-kind-video{color:#ff8a65}.pp-kind-audio{color:#9e9e9e}.pp-kind-gif{color:#ffd54f}.pp-kind-image{color:#81c784}.pp-uses-badge{font-size:10px;padding:1px 5px;border-radius:2px;background:#9e9e9e26;color:#9e9e9e;white-space:nowrap}.pp-filmstrip-badge{font-size:10px;padding:1px 5px;border-radius:2px;white-space:nowrap}.pp-filmstrip-ready{background:#4caf5026;color:#81c784}.pp-filmstrip-generating{background:#9e9e9e26;color:#9e9e9e}.pp-filmstrip-error{background:#d9534f26;color:#ef9a9a}.pp-filmstrip-pending{background:#ffd54f1f;color:#ffd54f}.pp-proxy-badge{font-size:10px;padding:1px 5px;border-radius:2px;white-space:nowrap}.pp-proxy-ready{background:#9575cd2e;color:#ababab}.pp-proxy-generating{background:#9e9e9e26;color:#9e9e9e}.pp-proxy-error{background:#d9534f26;color:#ef9a9a}.pp-proxy-pending{background:#ffd54f1f;color:#ffd54f}.pp-uses-badge{border:none;cursor:pointer;font:inherit}.pp-uses-badge:hover{background:#9e9e9e4d}.pp-row-selected{background:#9e9e9e2e!important;border-color:#9e9e9e!important}@keyframes asset-use-flash-kf{0%{box-shadow:0 0 #9e9e9e00;background-color:transparent}15%{box-shadow:0 0 0 3px #9e9e9ebf;background-color:#9e9e9e40}to{box-shadow:0 0 #9e9e9e00;background-color:transparent}}.asset-use-flash{animation:asset-use-flash-kf 1.4s ease-out}.pp-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-dim);padding:20px;text-align:center}.pp-empty-title{font-size:14px}.pp-empty-hint{font-size:12px}.pp-ctx-menu{position:fixed;background:var(--panel);border:1px solid var(--border);border-radius:4px;box-shadow:0 4px 12px #0009;padding:4px;z-index:2000;min-width:160px;display:flex;flex-direction:column;gap:1px}.pp-ctx-menu button{background:transparent;border:none;color:var(--text);text-align:left;padding:5px 10px;font-size:12px;border-radius:2px;cursor:pointer}.pp-ctx-menu button:hover:not(:disabled){background:var(--hover)}.pp-ctx-menu button:disabled{color:var(--text-dim);cursor:not-allowed}.pp-storage-banner{background:#4a2a1a;color:#ffb380;border-bottom:1px solid #6b3a22;padding:6px 10px;font-size:11px;line-height:1.3}.pp-footer{padding:4px 10px;border-top:1px solid var(--border);background:var(--surface-alt);font-size:10px;color:var(--text-dim);display:flex;justify-content:flex-end}.pp-storage-usage.pp-usage-warn{color:#ffb380}.pp-progress{padding:6px 8px;border-bottom:1px solid var(--border);background:var(--bg);display:flex;flex-direction:column;gap:4px}.pp-progress-row{display:flex;flex-direction:column;gap:2px;background:var(--surface-alt);border-radius:3px;padding:4px 6px;font-size:11px;color:var(--text)}.pp-progress-label{color:var(--text)}.pp-progress-err{color:#ffb380;font-size:10px}.pp-progress-bar{height:2px;background:linear-gradient(to right,transparent 0%,#9e9e9e 40%,#9e9e9e 60%,transparent 100%);background-size:200% 100%;animation:pp-progress-slide 1.2s linear infinite;border-radius:1px}.pp-progress-ready .pp-progress-bar{animation:none;background:#4caf50}.pp-progress-error .pp-progress-bar{animation:none;background:#d9534f}@keyframes pp-progress-slide{0%{background-position:200% 0}to{background-position:-100% 0}}.vb-source-ring{fill:none;stroke:var(--accent, #9e9e9e);stroke-width:1.5;stroke-dasharray:6 3;vector-effect:non-scaling-stroke;pointer-events:none}.vb-spine-ring{fill:none;stroke:#fa3;stroke-width:1.5;stroke-dasharray:2 4;vector-effect:non-scaling-stroke;pointer-events:none}.vb-source-label{fill:var(--accent, #9e9e9e);font-size:12px;font-weight:700;font-family:-apple-system,system-ui,sans-serif;pointer-events:none}.magnetic-lasso-anchor{fill:#fff;stroke:#000;stroke-width:1;pointer-events:none;vector-effect:non-scaling-stroke}body:not(.multi-artboard) .artboard-overlay,body:not(.multi-artboard) .artboard-frame,body:not(.multi-artboard) .artboard-label,body:not(.multi-artboard) .artboard-resize-handle,body:not(.multi-artboard) .artboard-header,body:not(.multi-artboard) #btn-add-artboard{display:none!important}body:not(.multi-artboard) .layer-item.in-artboard{padding-left:10px}body:not(.multi-artboard) .layer-item.in-artboard.in-group{padding-left:32px}body.multi-artboard #canvas-container{display:block;background-color:#1a1a1a;background-image:radial-gradient(circle,#2a2a2e 1px,transparent 1px);background-size:24px 24px;padding:40px}body.multi-artboard .artboard-canvas{position:absolute!important;border:none;background:transparent;margin:0!important}.artboard-chrome{position:absolute;pointer-events:none;transform-origin:50% 50%}body.multi-artboard .artboard-canvas.active{border:none}body.multi-artboard .artboard-canvas.hidden{display:none}body.multi-artboard.artboard-focus #canvas-container{display:flex!important;background:var(--canvas-bg)!important;padding:0!important;justify-content:center;align-items:center}body.multi-artboard.artboard-focus .artboard-canvas{display:none}body.multi-artboard.artboard-focus .artboard-canvas.focused{display:block;position:relative!important;left:0!important;top:0!important;width:100%!important;height:100%!important;border:none!important;margin:0!important}body.multi-artboard.artboard-focus .artboard-frame-overlay{display:none!important}.artboard-overlay{position:absolute;pointer-events:none;z-index:5}.artboard-frame{position:absolute;border:none;pointer-events:none;cursor:pointer}body.tool-transform .artboard-frame{pointer-events:auto}.artboard-frame.active{border:none}.artboard-chrome.outline .artboard-frame{border:1px solid color-mix(in srgb,var(--text, #fff) 22%,transparent);background:color-mix(in srgb,var(--text, #fff) 5%,transparent);box-sizing:border-box;pointer-events:auto}.artboard-chrome.outline .artboard-frame:hover{border-color:color-mix(in srgb,var(--accent, #9e9e9e) 70%,transparent);background:color-mix(in srgb,var(--accent, #9e9e9e) 12%,transparent)}.artboard-workspace-mask{z-index:0}.artboard-resize-handle{position:absolute;width:10px;height:10px;margin-left:-5px;margin-top:-5px;background:var(--accent, #9e9e9e);border:1px solid #fff;pointer-events:none;display:none;z-index:6}body.tool-transform .artboard-resize-handle{display:block;pointer-events:auto}.artboard-resize-handle.pos-n{transform:translate(calc(var(--ab-w) / 2))}.artboard-resize-handle.pos-s{transform:translate(calc(var(--ab-w) / 2),var(--ab-h))}.artboard-resize-handle.pos-w{transform:translateY(calc(var(--ab-h) / 2))}.artboard-resize-handle.pos-e{transform:translate(var(--ab-w),calc(var(--ab-h) / 2))}.artboard-resize-handle.pos-nw{transform:translate(0)}.artboard-resize-handle.pos-ne{transform:translate(var(--ab-w))}.artboard-resize-handle.pos-sw{transform:translateY(var(--ab-h))}.artboard-resize-handle.pos-se{transform:translate(var(--ab-w),var(--ab-h))}.artboard-label{position:absolute;height:18px;display:flex;align-items:center;gap:4px;padding:0 6px;font-size:11px;color:var(--text-dim, #aaa);background:var(--surface, #2a2a2a);border:1px solid var(--border, #444);border-radius:3px 3px 0 0;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;max-width:240px;cursor:pointer}.artboard-label.active{color:#fff;background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e)}.artboard-label-name{font-weight:500;overflow:hidden;text-overflow:ellipsis}.artboard-label-close{background:none;border:none;color:inherit;font-size:14px;line-height:1;padding:0 2px;cursor:pointer;opacity:.6}.artboard-label-close:hover{opacity:1}.artboard-label-rename{background:var(--input-bg, #1a1a1a);border:1px solid var(--accent, #9e9e9e);color:var(--text, #fff);font-size:11px;padding:1px 4px;border-radius:2px;width:120px}#btn-add-artboard{background:var(--surface, #2a2a2a);border:1px solid var(--border, #444);color:var(--text-dim, #aaa);padding:4px 8px;border-radius:3px;cursor:pointer;font-size:11px;margin:0 4px}#btn-add-artboard:hover{background:var(--hover, #3a3a3a);color:#fff;border-color:var(--accent, #9e9e9e)}.ndd-artboards-hint{font-size:11px;color:var(--text-dim, #888);margin-left:6px}#new-doc-artboards{cursor:pointer;width:16px;height:16px;accent-color:var(--accent, #9e9e9e)}.artboard-presets-popover{position:fixed;background:var(--surface, #2a2a2a);border:1px solid var(--border, #444);border-radius:4px;box-shadow:0 4px 16px #00000080;z-index:9999;min-width:220px;padding:4px 0}.artboard-preset-btn{display:block;width:100%;padding:6px 12px;background:none;border:none;color:var(--text, #ddd);text-align:left;font-size:12px;cursor:pointer}.artboard-preset-btn:hover{background:var(--hover, #3a3a3a);color:#fff}.artboard-preset-section-label{padding:6px 12px 2px;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--text-dim, #888);text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none}.artboard-preset-section-label:not(:first-child){margin-top:4px;border-top:1px solid var(--border, #444)}:root{--inspector-dock-w: 320px;--layers-panel-w: 250px}:root{--wm-radius: 6px;--wm-shadow: 0 2px 8px rgba(0, 0, 0, .4);--wm-border: 1px solid var(--border);--wm-titlebar-h: 32px;--top-bar-h: 34px}#layer-property-panel{position:fixed;right:var(--layers-panel-w, 250px);top:var(--top-bar-h);height:calc(100vh - var(--top-bar-h));width:var(--inspector-dock-w);display:flex;flex-direction:column;background:var(--panel);border-right:var(--wm-border);box-shadow:-2px 0 10px #0000004d}body:not(.lpp-floated) #layer-property-panel{background:var(--panel)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}#layer-property-panel .lpp-titlebar{flex-shrink:0;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}#layer-property-panel .lpp-titlebar:active{cursor:grabbing}#layer-property-panel .lpp-titlebar>span{font-size:11px;text-transform:lowercase;letter-spacing:.3px;color:var(--text-dim)}#layer-property-panel .lpp-titlebar .lb-close{font-size:18px;background:none;border:1px solid transparent;color:var(--text-dim);cursor:pointer;padding:0 6px;border-radius:3px;line-height:1}#layer-property-panel .lpp-titlebar .lb-close:hover{background:var(--hover);color:#fff;border-color:var(--border)}#layer-property-panel .lpp-scrollarea{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column}#layer-property-panel .lpp-body{flex:0 0 auto;padding:6px 8px}#layer-property-panel .lpp-body>#adj-popup,#layer-property-panel .lpp-body>#pbr-popup,#layer-property-panel .lpp-body>#fill-popup,#layer-property-panel .lpp-body>#style-popup,#layer-property-panel .lpp-body>#fx-popup,#layer-property-panel .lpp-body>#video-popup,#layer-property-panel .lpp-body>#gif-popup,#layer-property-panel .lpp-body>#webcam-popup,#layer-property-panel .lpp-body>#screen-recorder-popup,#layer-property-panel .lpp-body>#shader-graph-popup,#layer-property-panel .lpp-body>#html-layer-popup,#layer-property-panel .lpp-body>#web-layer-popup,#layer-property-panel .lpp-body>#chip-design-popup,#layer-property-panel .lpp-body>#inspector-empty{position:static;width:auto;height:auto;max-height:none;border:none;border-radius:0;box-shadow:none;padding:0;background:transparent;z-index:auto;display:block}.lpp-expand-tab{position:absolute;left:-18px;top:50%;transform:translateY(-50%);width:18px;height:60px;border:1px solid var(--border);border-right:none;border-radius:4px 0 0 4px;background:var(--surface);color:var(--text-dim);cursor:pointer}.lpp-expand-tab:hover{color:#fff;background:var(--hover)}body.lpp-collapsed #layer-property-panel{display:none!important}body.lpp-collapsed #app{padding-right:var(--layers-panel-w, 250px)}body.lpp-collapsed .lpp-expand-tab{display:block}#btn-toggle-inspector-dock{display:none!important}#inspector-empty{display:none}#inspector-empty:not(.hidden){display:flex;align-items:center;justify-content:center;padding:24px;background:transparent;color:var(--text-dim);text-align:center}#inspector-empty .inspector-empty-inner{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:240px}#inspector-empty .inspector-empty-inner i{width:32px;height:32px;opacity:.55}#inspector-empty .inspector-empty-inner p{margin:0;font-size:.9em;font-weight:600;color:var(--text)}#inspector-empty .inspector-empty-inner span{font-size:.78em;line-height:1.4;color:var(--text-dim)}#tl-export-dialog,#tl-export-progress{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;pointer-events:none}#tl-export-dialog.hidden,#tl-export-progress.hidden{display:none}#tl-export-dialog .tle-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;pointer-events:auto}#tl-export-dialog .tle-dialog{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:420px;max-height:calc(100vh - 80px);background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 3px 12px #00000080;display:flex;flex-direction:column;pointer-events:auto;font-size:12px;color:var(--text);overflow:hidden}#tl-export-dialog .tle-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border);font-weight:600;letter-spacing:.3px}#tl-export-dialog .tle-close{background:transparent;border:none;color:var(--text-dim);font-size:18px;line-height:1;cursor:pointer;padding:2px 6px;border-radius:3px}#tl-export-dialog .tle-close:hover{background:#ffffff14;color:var(--text)}#tl-export-dialog .tle-body{padding:12px 14px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}#tl-export-dialog .tle-row{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:10px}#tl-export-dialog .tle-row label{color:var(--text-dim);font-size:11.5px}#tl-export-dialog .tle-row select,#tl-export-dialog .tle-row input[type=number]{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-size:12px}#tl-export-dialog .tle-row input[type=range]{flex:1;accent-color:var(--accent, #9e9e9e)}#tl-export-dialog .tle-pair{display:flex;align-items:center;gap:6px}#tl-export-dialog .tle-pair input[type=number]{width:88px}#tl-export-dialog .tle-dash{color:var(--text-dim)}#tl-export-dialog .tle-custom-res.hidden{display:none}#tl-export-dialog .tle-hint{grid-template-columns:1fr;font-size:11px;color:var(--text-dim);font-style:italic}#tl-export-dialog .tle-footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 14px;background:var(--surface);border-top:1px solid var(--border)}.tle-btn{border:1px solid var(--border);border-radius:4px;padding:6px 14px;font-size:12px;cursor:pointer;background:var(--bg);color:var(--text)}.tle-btn:hover{background:#ffffff0f}.tle-btn-primary{background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e);color:#fff;font-weight:600}.tle-btn-primary:hover{background:#959595}.tle-btn-secondary{color:var(--text-dim)}.tle-preset-group{display:flex;gap:6px;flex:1}.tle-preset{flex:1;padding:5px 8px;border:1px solid var(--border, #3a3a3a);border-radius:5px;background:transparent;color:var(--text-dim);cursor:pointer;font-size:12px}.tle-preset:hover{border-color:var(--accent, #9e9e9e);color:var(--text, #eee)}.tle-preset-active{background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e);color:#fff;font-weight:600}#tl-export-progress{pointer-events:none;display:flex;align-items:flex-end;justify-content:center;padding:0 0 32px}#tl-export-progress .tle-progress-card{pointer-events:auto;width:360px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px 14px;box-shadow:0 3px 12px #00000073;font-size:12px;color:var(--text);display:flex;flex-direction:column;gap:8px}#tl-export-progress .tle-progress-title{font-weight:600;font-size:13px}#tl-export-progress .tle-progress-status{color:var(--text-dim);font-variant-numeric:tabular-nums}#tl-export-progress .tle-progress-bar{height:8px;background:var(--bg);border:1px solid var(--border);border-radius:4px;overflow:hidden}#tl-export-progress .tle-progress-fill{height:100%;background:var(--accent, #9e9e9e);transition:width 80ms linear}#tl-export-progress .tle-progress-actions{display:flex;justify-content:flex-end}.tl-settings-sep{height:1px;background:var(--border);margin:6px 0}.tl-export-btn{display:block;width:100%;text-align:left;background:transparent;border:1px solid var(--border);color:var(--text);padding:6px 10px;border-radius:4px;font-size:12px;cursor:pointer}.tl-export-btn:hover{background:#ffffff0f}#chip-design-popup-close{background:none;border:none;color:var(--text-dim);font-size:1.2em;cursor:pointer;padding:0 2px;line-height:1}#chip-design-popup-close:hover{color:#fff}#chip-design-popup .cd-section-label{font-size:.72em;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);font-weight:600;margin:4px 0}#chip-design-popup .cd-mask-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);border-radius:4px;padding:2px;background:#0003;max-height:280px;overflow-y:auto;scrollbar-width:thin}#chip-design-popup .cd-mask-row{display:grid;grid-template-columns:18px 14px 1fr 28px;align-items:center;gap:6px;padding:3px 4px;border-radius:3px;font-size:.8em;color:var(--text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chip-design-popup .cd-mask-row:hover{background:#ffffff0a}#chip-design-popup .cd-mask-row.active{background:#9e9e9e2e;outline:1px solid var(--accent, #9e9e9e)}#chip-design-popup .cd-mask-eye{text-align:center;font-size:.95em;cursor:pointer;opacity:1}#chip-design-popup .cd-mask-eye.dim{opacity:.3}#chip-design-popup .cd-mask-swatch{width:14px;height:14px;border:1px solid rgba(0,0,0,.5);border-radius:2px;display:inline-block}#chip-design-popup .cd-mask-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#chip-design-popup .cd-mask-count{text-align:right;font-variant-numeric:tabular-nums;font-size:.75em;color:var(--text-dim)}#chip-design-popup .cd-btn-disabled{opacity:.5;cursor:not-allowed}#chip-design-popup .cd-active-mask{width:100%}#chip-design-popup .cd-drc-list{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);border-radius:4px;background:#0003;padding:2px;max-height:220px;overflow-y:auto;scrollbar-width:thin}#chip-design-popup .cd-drc-row{display:grid;grid-template-columns:110px 1fr;gap:4px;padding:3px 4px;border-radius:3px;font-size:.72em;color:var(--text);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}#chip-design-popup .cd-drc-row:hover{background:#ffffff0a}#chip-design-popup .cd-drc-row.active{background:#e74c3c38;outline:1px solid #e74c3c}#chip-design-popup .cd-drc-rule{color:#e74c3c;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#chip-design-popup .cd-drc-desc{color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-dock-hosted=true]>.fp-titlebar,[data-dock-hosted=true]>.lb-header,[data-dock-hosted=true]>.histogram-header,[data-dock-hosted=true]>.pp-titlebar,[data-dock-hosted=true]>.bb-header,[data-dock-hosted=true]>.console-header,[data-dock-hosted=true]>.sg-titlebar,[data-dock-hosted=true]>.lpp-titlebar,[data-dock-hosted=true]>.resource-header,[data-dock-hosted=true]>.gl-titlebar,[data-dock-hosted=true]>.rw-titlebar,[data-dock-hosted=true]>.tools-titlebar,[data-dock-hosted=true]>.history-header{display:none!important}[data-dock-hosted=true]>.tl-titlebar>.tl-title,[data-dock-hosted=true]>.tl-titlebar>.tl-close-btn{display:none}[data-dock-hosted=true]>.tl-titlebar{cursor:default}.dock-floating-window{background:hsl(var(--card));border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 10px 15px -3px #00000080,0 4px 6px -4px #0006;display:flex;flex-direction:column;min-width:160px;min-height:80px}.dock-tab-group{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;background:var(--panel);border-radius:3px}.dock-tab-strip{display:flex;align-items:stretch;min-height:32px;height:32px;background:var(--surface);border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:grab;flex-shrink:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.dock-tab-strip:active{cursor:grabbing}.dock-tab-strip::-webkit-scrollbar{height:4px}.dock-tab-strip::-webkit-scrollbar-thumb{background:var(--border)}.dock-tab{display:flex;align-items:center;gap:6px;padding:0 10px 0 12px;font-size:12px;font-weight:500;color:var(--text-dim);border-right:1px solid var(--border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-width:80px;max-width:200px;flex-shrink:0;position:relative;transition:background .12s ease,color .12s ease}.dock-tab:hover{color:var(--text);background:#ffffff08}.dock-tab.active{color:hsl(var(--foreground));background:hsl(var(--card));box-shadow:inset 0 -2px hsl(var(--primary))}.dock-tab.dragging{opacity:.4}.dock-tab>i,.dock-tab>svg{width:14px;height:14px;flex-shrink:0}.dock-tab>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.dock-tab-close{background:none;border:none;color:var(--text-dim);font-size:14px;line-height:1;padding:2px 4px;margin-left:2px;border-radius:2px;cursor:pointer;opacity:0;transition:opacity .12s ease,background .12s ease,color .12s ease}.dock-tab:hover .dock-tab-close,.dock-tab.active .dock-tab-close{opacity:1}.dock-tab-close:hover{background:var(--hover);color:#fff}.dock-tab-body{flex:1;min-height:0;position:relative;overflow:hidden}.dock-tab-body>[data-dock-hosted=true]{position:relative!important;width:100%!important;height:100%!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;border:none!important;border-radius:0!important;box-shadow:none!important;margin:0!important;z-index:auto!important;background:hsl(var(--card))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.dock-tab-ghost{position:fixed;z-index:10000;background:var(--surface);color:var(--text);font-size:12px;font-weight:500;padding:6px 12px;border:1px solid var(--border);border-radius:3px;box-shadow:0 4px 12px #0006;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.dock-tab-insert-indicator{position:fixed;width:2px;background:hsl(var(--primary));z-index:10001;pointer-events:none;box-shadow:0 0 4px hsl(var(--primary) / .6)}.dock-tab-insert-indicator.hidden{display:none}.dock-drop-indicator{position:fixed;z-index:10001;pointer-events:none;transition:opacity .08s ease}.dock-drop-indicator.hidden{opacity:0;display:none}.dock-drop-indicator.drop-indicator-line{background:hsl(var(--primary));box-shadow:0 0 4px hsl(var(--primary) / .6)}.dock-drop-indicator.drop-indicator-band{background:hsl(var(--primary) / .18);border:1px solid hsl(var(--primary));box-shadow:inset 0 0 12px hsl(var(--primary) / .25)}.dock-split{display:flex;flex:1;min-width:0;min-height:0}.dock-split-row{flex-direction:row}.dock-split-column{flex-direction:column}.dock-split-cell{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.dock-splitter{background:var(--border);flex-shrink:0;position:relative;z-index:1;transition:background .12s ease}.dock-splitter:hover{background:hsl(var(--primary) / .4)}.dock-splitter-row{width:4px;cursor:col-resize}.dock-splitter-column{height:4px;cursor:row-resize}body.dock-columns-enabled #workspace.dock-host{display:flex;flex-direction:row;align-items:stretch}body.dock-columns-enabled #workspace.dock-host>#canvas-container{flex:1 1 auto;min-width:0}.dock-column{display:flex;background:var(--panel);border:none;flex-shrink:0;overflow:hidden;position:relative}.dock-column-left{flex-direction:row;border-right:1px solid var(--border)}.dock-column-right{flex-direction:row;border-left:1px solid var(--border)}.dock-column-bottom{flex-direction:column;border-top:1px solid var(--border)}.dock-column-content{flex:1;display:flex;min-width:0;min-height:0;overflow:hidden}.dock-column-resizer{flex-shrink:0;background:transparent;position:relative;z-index:2;transition:background .12s ease}.dock-column-resizer:hover{background:hsl(var(--primary) / .4)}.dock-column-resizer-left,.dock-column-resizer-right{width:4px;cursor:col-resize}.dock-column-resizer-bottom{height:4px;cursor:row-resize}body.dock-columns-enabled #app,body.dock-columns-enabled.lpp-collapsed #app{padding-right:0}body.dock-columns-enabled .lpp-expand-tab,body.dock-columns-enabled #lpp-collapse,body.dock-columns-enabled #lpp-expand{display:none!important}body.dock-columns-enabled.lpp-collapsed [data-dock-hosted=true]#layer-property-panel{display:flex!important}#rec-gallery-grid{display:flex;flex-direction:column;gap:4px;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--surface) transparent}.rec-take-tile{display:grid;grid-template-columns:64px 1fr auto;gap:6px;align-items:center;padding:4px;border:1px solid var(--border);border-radius:4px;background:var(--bg);cursor:pointer;transition:background .12s,border-color .12s}.rec-take-tile:hover{background:var(--surface)}.rec-take-tile.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,var(--bg))}.rec-take-thumb{width:64px;height:36px;background:#000;border-radius:2px;overflow:hidden;display:flex;align-items:center;justify-content:center}.rec-take-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.rec-take-meta{display:flex;flex-direction:column;font-size:.75em;color:var(--text);line-height:1.3;min-width:0}.rec-take-meta .rec-take-dur{color:var(--text);font-variant-numeric:tabular-nums}.rec-take-meta .rec-take-size{color:var(--text-dim)}.rec-take-actions{display:flex;gap:2px}.rec-take-actions button{background:var(--surface);color:var(--text-dim);border:1px solid var(--border);border-radius:3px;width:22px;height:22px;font-size:.8em;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.rec-take-actions button:hover{color:var(--text);background:var(--bg)}.rec-take-actions button[data-act=del]:hover{color:#e74c3c;border-color:#e74c3c}body.ucui{--ucui-left-w: 220px;--ucui-right-w: 260px;--ucui-left-split: 42vh;--ucui-right-split: 64px;--group-indent: 20px;font-size:var(--text-sm);letter-spacing:var(--tracking-tight)}body.ucui #ucui-files-assets,body.ucui #ucui-alignment,body.ucui #layers-panel,body.ucui #layer-property-panel,body.ucui #ucui-logo-menu,body.ucui .ucui-logo-sub,body.ucui #ucui-tool-dock,body.ucui .ucui-tool-flyout{font-size:var(--text-sm)}body.ucui .ucui-fa-title,body.ucui .ucui-align-title{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-section);text-transform:uppercase}body.ucui .ucui-fa-tab,body.ucui .ucui-logo-row{font-size:var(--text-sm);font-weight:var(--font-weight-medium)}body.ucui .ucui-fa-tab.active,body.ucui .ucui-logo-row[aria-expanded=true]{font-weight:var(--font-weight-semibold)}body.ucui .menu-shortcut,body.ucui .fti-shortcut,body.ucui .ucui-tool-caret{font-size:var(--text-xs)}body.ucui .layer-row,body.ucui #layer-property-panel .adj-group,body.ucui #layer-property-panel label{font-size:var(--text-sm)}body.ucui .layer-name{color:#d6d6d6;font-size:var(--text-sm);font-weight:400;letter-spacing:var(--tracking-tight)}body.ucui #app,body.ucui.layers-floated #app,body.ucui.lpp-floated #app{padding-top:0!important;padding-left:var(--ucui-left-w);padding-right:var(--ucui-right-w)}body.ucui #menu-bar,body.ucui #tools-panel,body.ucui #top-bar{display:none!important}body.ucui #workspace{padding-top:0!important}body.ucui #layers-panel{position:fixed!important;top:34px!important;left:0!important;right:auto!important;bottom:0!important;width:var(--ucui-left-w)!important;min-width:200px!important;height:auto!important;border-left:0;border-top:var(--wm-border);border-right:1px solid var(--border);border-radius:0!important;box-shadow:none!important;transform:none!important}body.ucui #layer-property-panel{position:fixed!important;top:0!important;right:0!important;left:auto!important;bottom:0!important;width:var(--ucui-right-w)!important;min-width:220px!important;height:auto!important;border-right:0;border-top:0;border-left:1px solid var(--border);border-radius:0!important;box-shadow:none!important;transform:none!important}body.ucui .lp-resizer,body.ucui .lpp-resizer{display:none}body.ucui #btn-group-layers,body.ucui #btn-ungroup-layers,body.ucui #btn-merge-visible{display:none!important}body.ucui #layers-panel .panel-header{display:contents}body.ucui #layers-panel #btn-add-layer{width:18px;height:18px;padding:0;background:transparent;border:1px solid transparent;border-radius:4px;color:var(--text);font:600 13px/16px inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body.ucui #layers-panel #btn-add-layer:hover{background:var(--hover);border-color:var(--border)}body.ucui #layers-panel>.lb-header,body.ucui #layer-property-panel>.lpp-titlebar,body.ucui #ucui-files-assets>.ucui-fa-title,body.ucui #ucui-alignment>.ucui-align-title{pointer-events:none;cursor:default}body.ucui #layers-panel>.lb-header>*,body.ucui #layer-property-panel>.lpp-titlebar>*,body.ucui #ucui-files-assets>.ucui-fa-title>*,body.ucui #ucui-alignment>.ucui-align-title>*{pointer-events:auto}body.ucui .layer-group-header{position:relative;box-sizing:border-box!important;height:32px!important;min-height:32px!important;padding-top:3px!important;padding-bottom:3px!important;padding-left:calc(14px + var(--depth, 0) * var(--group-indent, 20px))!important;padding-right:56px!important;margin:0!important;gap:8px;background:transparent;border-bottom:none;border-radius:0;transition:background-color 90ms ease}body.ucui .layer-item.in-group{padding-left:calc(28px + var(--in-group-depth, 0) * var(--group-indent, 20px))!important}body.ucui #layers-panel #layers-list .group-spine-overlay{position:absolute;width:1px;background:#ffffff52;pointer-events:none}body.ucui .layer-group-header:hover{background-color:#ffffff0f}body.ucui .layer-group-header.group-active{background-color:#ffffff38;box-shadow:inset 3px 0 hsl(var(--primary))}body.ucui #layers-list:focus-within .layer-item.kb-focus,body.ucui #layers-list:focus-within .layer-group-header.kb-focus{box-shadow:inset 0 0 0 2px hsl(var(--primary) / .85);outline:none}body.ucui.ucui-dragging-layer #layers-list .layer-item.kb-focus,body.ucui.ucui-dragging-layer #layers-list .layer-group-header.kb-focus{box-shadow:none}body.ucui #layers-list:focus{outline:none}body.ucui #layers-panel>.lb-header{justify-content:flex-start!important;gap:8px;padding-right:34px;background:transparent}body.ucui #layers-panel>.lb-header h2{font-size:11px;font-weight:400;text-transform:lowercase;letter-spacing:.3px;color:var(--text-dim)}body.ucui .layers-search{display:inline-flex;align-items:center;margin-left:8px;gap:4px;pointer-events:auto}body.ucui .layers-search-toggle{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:4px;color:var(--text-dim);cursor:pointer;padding:0;transition:background .12s ease,color .12s ease}body.ucui .layers-search-toggle:hover{background:#ffffff14;color:var(--text)}body.ucui .layers-search[data-expanded=true] .layers-search-toggle{display:none}body.ucui .layers-search-input{width:0;height:18px;padding:0;margin:0;background:#ffffff14;border:1px solid transparent;border-radius:4px;color:var(--text);font:inherit;outline:none;opacity:0;pointer-events:none;box-sizing:border-box;transition:width .14s cubic-bezier(.4,0,.2,1),padding .14s cubic-bezier(.4,0,.2,1),opacity .1s ease}body.ucui .layers-search[data-expanded=true] .layers-search-input{width:110px;padding:0 8px;opacity:1;pointer-events:auto}body.ucui .layers-search-input::-moz-placeholder{color:var(--text-dim)}body.ucui .layers-search-input::placeholder{color:var(--text-dim)}body.ucui .layers-search-input:focus{background:#ffffff1f;border-color:hsl(var(--primary) / .5)}body.ucui .layers-search-input::-webkit-search-cancel-button{-webkit-appearance:none;display:none}body.ucui .layer-group-header>.group-collapse-arrow{font-size:9px;width:12px;color:var(--text-dim);transition:transform .12s cubic-bezier(.4,0,.2,1)}body.ucui .layer-group-header>.group-collapse-arrow.collapsed{transform:rotate(-90deg)}body.ucui .layer-group-header>.group-visibility{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:13px;cursor:pointer;border-radius:4px;opacity:0;transition:opacity .12s ease,background .12s ease;z-index:2}body.ucui .layer-group-header>.group-visibility:hover{background:var(--hover)}body.ucui .layer-group-header:hover>.group-visibility,body.ucui .layer-group-header>.group-visibility.layer-hidden{opacity:1}@media (hover: none),(pointer: coarse){body.ucui .layer-group-header>.group-visibility{opacity:1!important}}body.ucui .layer-group-header>.group-name{flex:1;color:#d6d6d6;font-size:var(--text-sm);font-weight:400;letter-spacing:var(--tracking-tight);text-transform:none;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.ucui .layer-group-header>.group-opacity-slider{display:none}body.ucui .layer-group-header .group-controls,body.ucui .layer-group-header .btn-ungroup,body.ucui .layer-group-header .btn-delete-group{display:none}body.ucui .layer-item{position:relative;padding-right:56px}body.ucui #layers-list .layer-item{margin:0;border-radius:0;border-bottom:1px solid var(--border)}body.ucui #layers-list .layer-item:hover{background-color:#292929}body.ucui #layers-list .layer-item.active,body.ucui #layers-list .layer-item.selected,body.ucui #layers-list .layer-item.active.selected{background-color:#363636;border-left:0;box-shadow:inset 2px 0 #757575}body.ucui .layer-item>.layer-visibility-wrap{position:absolute;top:50%;right:6px;transform:translateY(-50%);margin:0;z-index:2;width:auto;height:auto;opacity:0;transition:opacity .12s ease;pointer-events:none}body.ucui .layer-item>.layer-visibility-wrap>*{pointer-events:auto}body.ucui .layer-item:hover>.layer-visibility-wrap,body.ucui .layer-item>.layer-visibility-wrap:has(.layer-hidden){opacity:1}body.ucui .layer-visibility,body.ucui .layer-visibility.layer-hidden{opacity:1}body.ucui .ucui-layer-icon-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;border-radius:4px;color:var(--text);cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent;touch-action:manipulation;font:inherit;transition:opacity .12s ease,background .12s ease}body.ucui .ucui-layer-icon-btn:hover{background:var(--hover)}body.ucui .ucui-layer-icon-btn svg{display:block}body.ucui .ucui-layer-lock{position:absolute;top:50%;right:28px;transform:translateY(-50%);z-index:2;opacity:0;transition:opacity .12s ease}body.ucui .layer-item:hover .ucui-layer-lock,body.ucui .ucui-layer-lock.locked{opacity:1!important;color:hsl(var(--accent))}body.ucui .ucui-layer-mask{position:absolute;top:50%;right:50px;transform:translateY(-50%);z-index:2;opacity:0;transition:opacity .12s ease}body.ucui .layer-item:hover .ucui-layer-mask,body.ucui .ucui-layer-mask.active{opacity:1!important;color:hsl(var(--accent))}body.ucui .ucui-layer-mask.editing{opacity:1!important;color:#fff;box-shadow:0 0 0 1px #fff,0 0 6px #ffffff8c;border-radius:4px}canvas.mask-editing{box-shadow:inset 0 0 0 3px #ff9a3c,0 0 0 2px #ff9a3c,0 0 24px #ff9a3c66;outline:none!important}#canvas-container.mask-editing:before{content:none}canvas.mask-viewing{box-shadow:inset 0 0 0 3px #9e9e9e,0 0 0 2px #9e9e9e,0 0 24px #3cd0ff66;outline:none!important}#canvas-container.mask-viewing:before{content:'Viewing layer mask (B&W) — right-click the mask icon → "Exit mask view" to return.';position:absolute;top:8px;left:50%;transform:translate(-50%);z-index:100;background:#9e9e9e;color:#161616;font-size:11px;font-weight:600;padding:4px 10px;border-radius:4px;box-shadow:0 2px 8px #0006;pointer-events:none;white-space:nowrap}body.ucui .layer-item{margin:0!important;border-radius:4!important;height:32px!important;padding:3px 56px 3px 32px!important}body.ucui .layer-item.has-mask-stack{border-top:1px solid var(--accent, #9e9e9e);border-left:1px solid var(--accent, #9e9e9e);border-right:1px solid var(--accent, #9e9e9e);border-bottom:0!important;border-radius:6px 6px 0 0!important}body.ucui .layer-item.mask-stack-item{position:relative;display:flex!important;align-items:center;gap:6px;height:24px!important;padding:0 56px 0 32px!important;border-left:1px solid var(--accent, #9e9e9e);border-right:1px solid var(--accent, #9e9e9e);border-bottom:0!important;border-radius:0!important;background:#9e9e9e0a;cursor:pointer;font-size:11px;color:var(--text)}body.ucui .layer-item.mask-stack-item.mask-stack-last{border-bottom:1px solid var(--accent, #9e9e9e);border-radius:0 0 6px 6px!important}body.ucui .layer-item.mask-stack-item.mask-editing-active{background-color:hsl(var(--accent) / .55);background-image:linear-gradient(45deg,rgba(255,255,255,.08) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.08) 75%),linear-gradient(45deg,rgba(255,255,255,.08) 25%,transparent 25%,transparent 75%,rgba(255,255,255,.08) 75%);background-size:8px 8px;background-position:0 0,4px 4px;box-shadow:inset 0 0 0 1px hsl(var(--primary, var(--accent)) / .55),inset 3px 0 0 0 var(--accent, #9e9e9e);color:#fff}body.ucui .layer-item.mask-stack-item.mask-hidden .mask-row-name,body.ucui .layer-item.mask-stack-item.mask-hidden .mask-row-badge{opacity:.45;font-style:italic}body.ucui .mask-row-vis,body.ucui .mask-row-lock{position:absolute;top:50%;transform:translateY(-50%);opacity:0;transition:opacity .12s ease,background .12s ease;z-index:2}body.ucui .mask-row-vis{right:6px}body.ucui .mask-row-lock{right:30px}body.ucui .layer-item.mask-stack-item:hover .mask-row-vis,body.ucui .layer-item.mask-stack-item:hover .mask-row-lock,body.ucui .layer-item.mask-stack-item.mask-hidden .mask-row-vis,body.ucui .mask-row-lock.locked{opacity:1}body.ucui .mask-row-badge{display:inline-flex;align-items:center;justify-content:center;width:16px;height:14px;font-size:9px;font-weight:700;border-radius:2px;background:#9e9e9e38;color:var(--accent, #9e9e9e);flex-shrink:0}body.ucui .mask-row-name{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}body.ucui #layers-panel #layers-list{position:relative;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}body.ucui #layers-panel #layers-list::-webkit-scrollbar{width:8px}body.ucui #layers-panel #layers-list::-webkit-scrollbar-track{background:transparent}body.ucui #layers-panel #layers-list::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:4px}body.ucui #layers-panel #layers-list::-webkit-scrollbar-thumb:hover{background:#ffffff52}body.ucui .layer-item{cursor:grab}body.ucui.ucui-dragging-layer,body.ucui.ucui-dragging-layer *{cursor:grabbing!important}body.ucui.ucui-drag-invalid,body.ucui.ucui-drag-invalid *{cursor:not-allowed!important}body.ucui.ucui-drag-invalid .ucui-drag-clone-v2{filter:brightness(1.05) hue-rotate(-20deg) saturate(1.4);box-shadow:0 12px 28px #dc323273,0 0 0 1px #ff5a5a8c inset}@keyframes ucui-drag-expand-pulse{0%,to{background-color:#ffffff0f}50%{background-color:#78b4ff38}}body.ucui .layer-group-header.ucui-drag-expand-pending{animation:ucui-drag-expand-pulse .6s ease-in-out}body.ucui .ucui-drag-multi-badge{position:absolute;top:-8px;right:-8px;min-width:20px;height:20px;padding:0 6px;display:flex;align-items:center;justify-content:center;background:hsl(var(--primary));color:#fff;border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.02em;box-shadow:0 2px 6px #0006;z-index:10001;pointer-events:none}body.ucui .layer-item{touch-action:none}body.ucui .layer-item{transition:transform 90ms cubic-bezier(.4,0,.2,1),background-color 80ms ease,opacity 80ms ease}body.ucui .ucui-drag-clone-v2{transition:none!important}body.ucui .layer-item.ucui-shifted{transform:translateY(var(--layer-shift-y, 0px))}body.ucui .layer-item.ucui-drag-source,body.ucui .layer-group-header.ucui-drag-source{visibility:hidden;pointer-events:none}@keyframes ucui-drop-line-in{to{opacity:1}}body.ucui .layer-item.drag-over-top:after,body.ucui .layer-item.drag-over-bottom:after{opacity:0;animation:ucui-drop-line-in 80ms cubic-bezier(.4,0,.2,1) forwards}body.ucui .layer-name-input{font:inherit;color:inherit;background:transparent;border:1px solid hsl(var(--primary) / .5);border-radius:3px;padding:0 4px;margin:0;width:100%;min-width:0;outline:none;box-sizing:border-box}body.ucui .layer-name-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .25)}body.ucui .ucui-drag-clone-v2{border-radius:6px!important;border:1px solid hsl(var(--primary) / .55)!important;box-shadow:0 12px 32px #0009,0 0 0 1px hsl(var(--primary) / .25)!important;background-color:var(--surface)!important;opacity:.85;overflow:hidden}body.ucui .layer-item.drag-over-top:after,body.ucui .layer-item.drag-over-bottom:after,body.ucui .layer-group-header.drag-over-top:after,body.ucui .layer-group-header.drag-over-bottom:after,body.ucui .artboard-header.drag-over-top:after,body.ucui .artboard-header.drag-over-bottom:after{content:"";position:absolute;left:var(--drop-indent, 0px);right:0;height:2px;background:hsl(var(--primary, var(--accent, #9e9e9e)));border-radius:1px;pointer-events:none;z-index:5}body.ucui .artboard-header{position:relative}body.ucui .artboard-header.drag-over-top:after{top:0}body.ucui .artboard-header.drag-over-bottom:after{bottom:0}body.ucui .artboard-header.drag-over-bottom{background:#9e9e9e1f}body.ucui .layer-item.drag-over-top,body.ucui .layer-item.drag-over-bottom{box-shadow:none!important}body.ucui .layer-item.drag-over-top:after,body.ucui .layer-group-header.drag-over-top:after{top:-2px}body.ucui .layer-item.drag-over-bottom:after,body.ucui .layer-group-header.drag-over-bottom:after{bottom:-2px}body.ucui .layer-item.dragging{opacity:.55!important;background-color:#ffffff0a!important}body.ucui .layer-drag-clone{background-color:var(--surface)!important;border:1px solid hsl(var(--primary) / .5)!important;border-radius:6px!important;box-shadow:0 12px 32px #0009,0 0 0 1px hsl(var(--primary) / .3)!important}body.ucui .layer-item:hover{background-color:#ffffff0f!important}body.ucui .layer-item.active{background-color:#ffffff29!important;box-shadow:none!important;border-left:0!important}body.ucui .layer-item.selected{background-color:#ffffff1a!important;border-left:0!important}body.ucui .layer-item.active.selected{background-color:#ffffff38!important;border-left:0!important}body.ucui .clip-arrow{display:none!important}body.ucui .layer-item.clipped{position:relative;padding-left:36px!important}body.ucui .layer-item.clipped:before{content:"";position:absolute;left:18px;top:0;bottom:0;width:1.5px;background:hsl(var(--accent) / .7);pointer-events:none;z-index:1}body.ucui .layer-item.clipped:after{content:"⌄";position:absolute;left:11px;top:50%;transform:translateY(-50%);font-size:14px;line-height:1;color:hsl(var(--accent));opacity:.95;pointer-events:none;z-index:2}body.ucui .layer-item.clipped.clip-chain-bottom:after{font-size:16px;font-weight:600;opacity:1}body.ucui .layer-item.clip-base{position:relative;border-left:0;background-image:none}body.ucui .layer-item.clip-base .layer-name{text-decoration:underline;text-decoration-color:hsl(var(--accent) / .7);text-decoration-thickness:1.5px;text-underline-offset:3px}body.ucui .layer-item.clip-base:before{content:"";position:absolute;left:18px;top:0;height:50%;width:1.5px;background:hsl(var(--accent) / .7);pointer-events:none;z-index:1}body.ucui .layer-item.clip-base:after{content:"";position:absolute;left:18px;top:50%;transform:translateY(-50%);width:8px;height:1.5px;background:hsl(var(--accent) / .7);pointer-events:none;z-index:1}@media (hover: none),(pointer: coarse){body.ucui .ucui-layer-lock,body.ucui .layer-item>.layer-visibility-wrap{opacity:1!important}}body.ucui #layers-panel .lb-close,body.ucui #layer-property-panel .lb-close,body.ucui #tools-panel .lb-close,body.ucui #lpp-collapse{display:none!important}#ucui-logo-btn{display:none;position:fixed;top:4px;left:6px;z-index:2600;width:26px;height:26px;border-radius:5px;background:hsl(var(--accent));color:hsl(var(--accent-foreground, var(--foreground)));border:1px solid var(--border);font:700 13px/24px Inter Variable,system-ui,sans-serif;text-align:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;padding:0}body.ucui #ucui-logo-btn{display:block}#ucui-logo-btn:hover,#ucui-logo-btn.active{filter:brightness(1.15)}#ucui-notif-btn{position:fixed;top:4px;left:36px;z-index:2600;width:26px;height:26px;border-radius:5px;background:var(--surface);color:var(--text);border:1px solid var(--border);display:none;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;padding:0}body.ucui #ucui-notif-btn{display:flex}#ucui-notif-btn:hover,#ucui-notif-btn.active{background:var(--surface-alt, var(--panel));filter:brightness(1.1)}#ucui-notif-btn.loading{animation:ucui-notif-blink .9s ease-in-out infinite}@keyframes ucui-notif-blink{0%{color:#828282}25%{color:#2ecc71}50%{color:#f1c40f}75%{color:#636363}to{color:#828282}}.ucui-notif-ico{display:inline-flex;align-items:center;justify-content:center}.ucui-notif-ico .spin{animation:ucui-notif-spin .8s linear infinite;transform-origin:center}@keyframes ucui-notif-spin{to{transform:rotate(360deg)}}.ucui-notif-badge{position:absolute;top:-2px;right:-2px;min-width:9px;height:9px;padding:0 2px;border-radius:5px;background:#636363;color:#fff;font:700 6px/9px Inter Variable,system-ui,sans-serif;text-align:center;box-shadow:0 0 0 1px var(--surface)}.ucui-notif-badge.hidden{display:none}.ucui-notif-panel{position:fixed;z-index:2650;width:300px;max-height:60vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000073;overflow:hidden;font-family:inherit}.ucui-notif-panel.hidden{display:none}.ucui-notif-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:.82em;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.ucui-notif-clear{border:none;background:transparent;color:var(--text-dim);font-size:.85em;cursor:pointer;padding:2px 4px;border-radius:4px}.ucui-notif-clear:hover{color:var(--text);background:var(--surface)}.ucui-notif-list{overflow-y:auto}.ucui-notif-empty{display:none;padding:18px 12px;text-align:center;color:var(--text-dim);font-size:.78em}.ucui-notif-panel.is-empty .ucui-notif-empty{display:block}.ucui-notif-panel.is-empty .ucui-notif-list{display:none}.ucui-notif-row{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-bottom:1px solid var(--border)}.ucui-notif-row:last-child{border-bottom:none}.ucui-notif-icon{flex-shrink:0;width:18px;text-align:center;font-size:.85em;line-height:1.4;color:var(--text-dim)}.ucui-notif-row.state-success .ucui-notif-icon{color:#2ecc71}.ucui-notif-row.state-error .ucui-notif-icon{color:#c0392b}.ucui-notif-body{flex:1 1 auto;min-width:0}.ucui-notif-title{font-size:.78em;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ucui-notif-status{font-size:.7em;color:var(--text-dim);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ucui-notif-bar{height:4px;margin-top:4px;background:var(--surface);border-radius:2px;overflow:hidden}.ucui-notif-fill{height:100%;width:0;background:var(--accent);transition:width .2s ease}.ucui-notif-bar.indeterminate .ucui-notif-fill{width:100%;background:linear-gradient(90deg,var(--accent) 25%,transparent 50%,var(--accent) 75%);background-size:200% 100%;animation:oa-indeterminate 1.2s linear infinite}.ucui-notif-cancel{flex-shrink:0;width:18px;height:18px;line-height:1;padding:0;border:none;border-radius:4px;background:var(--surface);color:var(--text-dim);cursor:pointer;font-size:.8em}.ucui-notif-cancel:hover{color:var(--text)}.ucui-notif-cancel:disabled{opacity:.5;cursor:default}@keyframes oa-indeterminate{0%{background-position:0% 0}to{background-position:200% 0}}#ucui-logo-menu{position:fixed;z-index:2700;background:var(--surface);border:1px solid var(--border);border-radius:5px;box-shadow:0 4px 12px #0006;padding:3px;min-width:140px;display:none}#ucui-logo-menu.open{display:block}.ucui-logo-row{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;border-radius:3px;cursor:pointer;font-size:.9em;color:var(--text);-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.ucui-logo-row:hover,.ucui-logo-row[aria-expanded=true]{background:var(--hover)}.ucui-logo-row:after{content:"›";opacity:.5;margin-left:8px}.ucui-logo-sub{position:fixed;z-index:2701;background:var(--surface);border:1px solid var(--border);border-radius:5px;box-shadow:0 4px 12px #0006;padding:3px;min-width:180px;display:none}.ucui-logo-sub.open{display:block}.ucui-logo-sub>.menubar-dropdown{display:block!important;position:static!important;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;max-height:70vh;overflow-x:hidden;overflow-y:auto}#ucui-files-assets{display:none;position:fixed;top:34px;left:0;width:var(--ucui-left-w, 220px);height:calc(var(--ucui-left-split, 42vh) - 34px);background:var(--panel);border-right:var(--wm-border);border-top:var(--wm-border);border-bottom:var(--wm-border);flex-direction:column;z-index:1000}body.ucui #ucui-files-assets{display:flex}body.ucui #color-palette-panel.ucui-color-palette-embedded{position:static!important;top:auto!important;left:auto!important;right:auto!important;width:auto!important;min-width:0!important;border:none!important;border-top:1px solid var(--border)!important;border-radius:0!important;box-shadow:none!important;flex:1 1 auto;min-height:0;overflow-y:auto}body.ucui #color-palette-panel.ucui-color-palette-embedded #cp-close{display:none!important}.ucui-fa-title{height:var(--wm-titlebar-h);min-height:var(--wm-titlebar-h);padding:0 12px;display:flex;align-items:center;background:var(--surface);border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-dim)}.ucui-fa-tabs{display:flex;gap:2px;padding:2px 4px;border-bottom:1px solid var(--border)}.ucui-fa-tab{padding:4px 8px;background:transparent;border:0;border-radius:3px;color:var(--text-dim);font-size:.9em;cursor:pointer;min-height:26px;touch-action:manipulation}.ucui-fa-tab.active{background:var(--hover);color:var(--text)}.ucui-fa-body{flex:1;overflow-y:auto;padding:4px;display:flex;flex-direction:column;gap:3px}.ucui-fa-btn{display:flex;align-items:center;gap:6px;padding:5px 8px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.95em;text-align:left;cursor:pointer;min-height:28px;touch-action:manipulation}.ucui-fa-btn:hover{background:var(--hover)}.ucui-fa-btn .ucui-fa-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.panel-section-body{padding:6px 12px 10px}.panel-section-body .prop-widget{margin-bottom:4px}.panel-section-body .prop-widget:last-child{margin-bottom:0}.prop-widget label>span:first-child{text-align:left!important;justify-self:start}.prop-widget{max-width:100%;box-sizing:border-box}.prop-widget label{max-width:100%;min-width:0}.prop-widget label input[type=text],.prop-widget label input[type=number],.prop-widget label select{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.prop-widget label>input[type=range]+span{min-width:44px}.prop-scrubber{cursor:ns-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-variant-numeric:tabular-nums;text-align:right;padding:1px 6px;border-radius:3px;border:1px solid transparent;background:transparent;color:var(--text);min-width:44px;outline:none;touch-action:none}.prop-scrubber:hover{background:var(--hover)}.prop-scrubber:focus,.prop-scrubber[contenteditable=true]{cursor:text;border-color:var(--accent, #9e9e9e);background:var(--input-bg, var(--bg));-webkit-user-select:text;-moz-user-select:text;user-select:text}input.prop-scrubber{font:inherit}.prop-widget label:has(input[type=text]),.prop-widget label:has(input[type=number]):not(:has(input[type=range])),.prop-widget label:has(select),.prop-widget label:has(input[type=color]),.prop-widget label:has(input[type=checkbox]){grid-template-columns:80px 1fr!important}body.ucui #inlayerprop-section .ilp-body,body.ucui #inlayerprop-section .ilp-resolution{max-width:100%;box-sizing:border-box;overflow:hidden}body.ucui .ilp-res-row{flex-wrap:wrap}.prop-widget label input[type=checkbox],.prop-widget label input[type=color]{justify-self:start}body.ucui .ucui-fa-body .prop-widget{margin-bottom:3px}body.ucui .ucui-fa-body .prop-action-btn{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text);font-size:.95em;text-align:left;cursor:pointer;min-height:28px;touch-action:manipulation}body.ucui .ucui-fa-body .prop-action-btn:hover{background:var(--hover)}#ucui-alignment{display:none;position:fixed;top:0;right:0;width:var(--ucui-right-w, 260px);height:var(--ucui-right-split, 64px);background:var(--panel);border-left:var(--wm-border);border-bottom:var(--wm-border);flex-direction:column;z-index:1000;padding:0}body.ucui #ucui-alignment{display:flex}.ucui-align-title{height:var(--wm-titlebar-h);min-height:var(--wm-titlebar-h);padding:0 12px;display:flex;align-items:center;background:var(--surface);border-bottom:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;color:var(--text-dim)}.ucui-align-row{display:flex;align-items:center;gap:2px;padding:6px 8px}.ucui-align-btn{width:36px;height:36px;background:transparent;border:1px solid transparent;color:var(--text);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;touch-action:manipulation}.ucui-align-btn:not(:disabled):hover{background:var(--hover);border-color:var(--border)}.ucui-align-btn:disabled{opacity:.35;cursor:not-allowed}.ucui-align-sep{width:1px;background:var(--border);margin:4px 8px;align-self:stretch}.ucui-resize-handle{display:none;position:fixed;z-index:1400;background:transparent;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}body.ucui .ucui-resize-handle{display:block}.ucui-resize-handle:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;transition:background .12s ease}.ucui-resize-handle:hover:before,.ucui-resize-handle.dragging:before{background:hsl(var(--accent));opacity:.55}.ucui-resize-handle.v{top:0;bottom:0;width:6px;cursor:col-resize}.ucui-resize-handle.v[data-side=left]{left:calc(var(--ucui-left-w, 220px) - 3px)}.ucui-resize-handle.v[data-side=right]{right:calc(var(--ucui-right-w, 260px) - 3px)}.ucui-resize-handle.h{height:6px;cursor:row-resize}.ucui-resize-handle.h[data-side=left]{display:none}.ucui-resize-handle.h[data-side=right]{right:0;width:var(--ucui-right-w, 260px);top:calc(var(--ucui-right-split, 64px) - 3px)}#ucui-tool-dock{display:none;position:fixed;z-index:1500;bottom:max(10px,env(safe-area-inset-bottom,10px));left:50%;transform:translate(-50%);background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 8px #0006;padding:4px;flex-direction:row;align-items:center;gap:5px;transition:border-color .15s ease,box-shadow .15s ease}body.mask-editing #ucui-tool-dock{border-width:2px;border-color:#9e9e9ed9;box-shadow:0 8px 24px #00000080,0 0 0 2px #9e9e9ed9,0 0 18px #9e9e9e73}body.ucui #ucui-tool-dock{display:flex}#ucui-tool-dock{transition:bottom .18s ease,left .18s ease,top .18s ease}body.timeline-open #ucui-tool-dock{flex-direction:column;left:calc(var(--ucui-left-w, 220px) + 12px);right:auto;bottom:auto;top:44px;transform:none;gap:2px;max-height:calc(100vh - var(--timeline-h, 280px) - 56px);overflow-y:auto}body.timeline-open #ucui-tool-dock .uc-collapsed,body.timeline-open #ucui-tool-dock .ucui-tool-sep{display:none!important}body.timeline-open #ucui-tool-dock .ucui-tool-group-btn{height:30px}body.ucui #workspace{transition:padding-bottom .18s ease}body.ucui.timeline-open #workspace{padding-bottom:var(--timeline-h, 280px)}body.ucui #layers-panel{transition:bottom .18s ease}body.ucui.timeline-open #layers-panel{bottom:var(--timeline-h, 280px)!important}.ucui-tool-group-btn{position:relative;min-width:0;height:36px;background:transparent;border:0;border-radius:6px;color:var(--text);display:flex;align-items:center;justify-content:center;gap:0;padding:0}.ucui-tool-main-btn.active{background:var(--accent, #9e9e9e);color:#fff}.ucui-tool-main-btn.active svg,.ucui-tool-main-btn.active svg *{color:#fff;stroke:#fff}.ucui-tool-main-btn.active:hover{background:color-mix(in srgb,var(--accent, #9e9e9e) 78%,#fff 22%)}.ucui-tool-main-btn,.ucui-tool-caret-btn{background:transparent;border:0;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 6px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.ucui-tool-main-btn{width:28px;height:28px;min-width:28px;padding:0;border-radius:6px;position:relative}.ucui-tool-main-btn.has-flyout:after{content:"";position:absolute;right:2px;bottom:2px;width:0;height:0;border-style:solid;border-width:0 0 4px 4px;border-color:transparent transparent color-mix(in srgb,var(--text, #fff) 55%,transparent) transparent;pointer-events:none}.ucui-tool-main-btn.has-flyout.active:after{border-bottom-color:color-mix(in srgb,var(--text, #fff) 85%,transparent)}.ucui-tool-caret-btn{min-width:14px;padding:0 4px;border-radius:6px;opacity:.7}.ucui-tool-main-btn:hover,.ucui-tool-caret-btn:hover{background:var(--hover)}.ucui-tool-caret-btn:hover{opacity:1}.ucui-tool-caret{font-size:8px;line-height:1}.ucui-tool-group-btn svg{width:18px;height:18px}.uc-collapse{overflow:hidden;opacity:1;transition:max-width .24s cubic-bezier(.2,0,0,1),opacity .16s ease,padding .24s cubic-bezier(.2,0,0,1),margin .24s cubic-bezier(.2,0,0,1)}.uc-collapsed{max-width:0!important;min-width:0!important;opacity:0;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;pointer-events:none}.ucui-sel-ops{display:flex;align-items:center;gap:3px;padding:2px 4px;border-radius:8px;background:color-mix(in srgb,var(--text, #ffffff) 13%,transparent);max-width:240px}.ucui-sel-ops .ucui-tool-main-btn{width:24px;height:24px;min-width:24px}.ucui-sel-ops .ucui-tool-main-btn svg{width:13px;height:13px}.ucui-sel-ops .ucui-tool-sep{height:18px}.ucui-sel-mode,.ucui-sel-deselect{max-width:30px}.ucui-sel-deselect-sep{max-width:4px}.ucui-sel-deselect:hover{background:color-mix(in srgb,#e5484d 24%,transparent);color:#e5484d}.ucui-dock-zoom{display:flex;align-items:center;gap:1px;height:28px}.ucui-dock-zoom .ucui-zoom-step,.ucui-dock-zoom .ucui-zoom-val{background:transparent;border:0;color:var(--text);cursor:pointer;height:24px;border-radius:5px;font:inherit;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ucui-dock-zoom .ucui-zoom-step{width:20px;min-width:20px;font-size:16px;line-height:1}.ucui-dock-zoom .ucui-zoom-val{width:48px;min-width:48px;padding:0 4px;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text-dim, #aaa);text-align:center;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:ew-resize;touch-action:none}.ucui-dock-zoom .ucui-zoom-step:hover,.ucui-dock-zoom .ucui-zoom-val:hover{background:var(--hover);color:var(--text)}.ucui-dock-zoom .ucui-zoom-val:not([readonly]){cursor:text;background:var(--hover);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent, #9e9e9e)}body.timeline-open #ucui-tool-dock .ucui-dock-zoom{height:auto;flex-wrap:wrap;justify-content:center;max-width:56px}.ucui-tool-flyout{display:none;position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:0 2px 8px #0006;padding:4px;z-index:1600;min-width:200px}.ucui-tool-flyout.open{display:block}.ucui-brush-inline-preview{display:flex;align-items:center;height:28px;padding:0 2px;flex:0 0 auto;max-width:140px;cursor:pointer;border-radius:4px}.ucui-brush-inline-preview:hover{background:var(--hover)}.ucui-bpi-sep{max-width:4px}.ucui-brush-inline-preview.hidden{display:none}.ucui-brush-inline-preview .ucui-bpi-canvas{display:block;width:96px;height:24px;border-radius:5px;box-shadow:inset 0 0 0 1px #ffffff1f}body.timeline-open #ucui-tool-dock .ucui-brush-inline-preview{position:relative;width:36px;height:100px;max-width:none;padding:0}body.timeline-open #ucui-tool-dock .ucui-brush-inline-preview .ucui-bpi-canvas{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(90deg)}.ucui-tool-flyout-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:4px;cursor:pointer;color:var(--text);font-size:.9em;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-height:36px;touch-action:manipulation}.ucui-tool-flyout-item:hover{background:var(--hover)}.ucui-tool-flyout-item .fti-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--text)}.ucui-tool-flyout-item .fti-icon svg{width:18px;height:18px}.ucui-tool-flyout-item .fti-label{flex:1}.ucui-tool-flyout-item .fti-shortcut{opacity:.5;font-size:.85em;margin-left:8px}.ucui-tool-flyout-item.active{background:hsl(var(--accent));color:hsl(var(--accent-foreground, var(--foreground)))}body.ucui .lpp-titlebar-actions{position:relative;display:inline-flex;align-items:center;margin-left:auto;margin-right:4px}body.ucui .lpp-add-effect-btn{height:18px;padding:0 6px;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text);font:600 10px/14px inherit;letter-spacing:.04em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,color .12s ease}body.ucui .lpp-add-effect-btn:hover{background:#ffffff14;color:hsl(var(--accent));border-color:hsl(var(--accent) / .5)}body.ucui .lpp-add-effect-menu{position:absolute;top:22px;right:0;width:180px;max-height:340px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 6px 16px #00000080;z-index:100;padding:4px 0}body.ucui .lpp-add-effect-menu.hidden{display:none}body.ucui .lpp-add-effect-item{display:block;width:100%;padding:4px 10px;background:transparent;border:0;text-align:left;color:var(--text);font:11px/16px inherit;cursor:pointer}body.ucui .lpp-add-effect-item:hover{background:hsl(var(--accent) / .25);color:#fff}body.ucui .lpp-add-effect-search{position:sticky;top:0;background:var(--surface);padding:4px 6px 5px;margin-top:-4px;border-bottom:1px solid var(--border);z-index:2}body.ucui .lpp-add-effect-search-input{width:100%;box-sizing:border-box;padding:3px 7px;background:#00000040;border:1px solid var(--border);border-radius:3px;color:var(--text);font:11px/16px inherit;outline:none}body.ucui .lpp-add-effect-search-input::-moz-placeholder{color:#ffffff59}body.ucui .lpp-add-effect-search-input::placeholder{color:#ffffff59}body.ucui .lpp-add-effect-search-input:focus{border-color:hsl(var(--accent) / .85)}body.ucui .lpp-fx-cat-trigger{display:flex;align-items:center;justify-content:space-between;font-weight:600}body.ucui .lpp-fx-cat-trigger:after{content:"›";opacity:.6;margin-left:8px;font-size:14px;line-height:1}body.ucui .lpp-fx-sub{position:fixed;min-width:160px;max-height:70vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 6px 16px #00000080;z-index:1001;padding:4px 0}body.ucui .lpp-fx-noresult{padding:8px 10px;color:#fff6;font:11px/16px inherit}body.ucui .lpp-layer-add-menu,body.ucui .lpp-layer-add-sub{position:fixed;min-width:172px;max-height:72vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 6px 16px #00000080;z-index:1001;padding:4px 0}body.ucui .lpp-la-row,body.ucui .lpp-la-item{display:block;width:100%;text-align:left;padding:5px 12px;background:transparent;border:0;color:var(--text);font:12px/16px inherit;cursor:pointer}body.ucui .lpp-la-row:hover,body.ucui .lpp-la-item:hover{background:hsl(var(--accent) / .25);color:#fff}body.ucui .lpp-la-cat{display:flex;align-items:center;justify-content:space-between;font-weight:600}body.ucui .layer-fx-caret{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;font-size:9px;color:var(--text-dim);cursor:pointer;transition:transform .12s cubic-bezier(.4,0,.2,1)}body.ucui .layer-fx-caret.expanded{transform:rotate(90deg);color:hsl(var(--accent))}body.ucui .layer-fx-tree{padding-left:28px}body.ucui .layer-fx-row{display:flex;align-items:center;gap:6px;padding:2px 8px;height:22px;font-size:11px;color:var(--text);cursor:pointer;transition:background .08s ease}body.ucui .layer-fx-row:hover{background:#ffffff0d}body.ucui .layer-fx-row.active{background:#ffffff1f;box-shadow:inset 3px 0 hsl(var(--accent))}body.ucui .layer-fx-row[draggable=true]{cursor:grab}body.ucui .layer-fx-row.fx-dragging{opacity:.5;cursor:grabbing}body.ucui .layer-fx-row.fx-drop-above{box-shadow:inset 0 2px 0 0 var(--accent, #9e9e9e)}body.ucui .layer-fx-row.fx-drop-below{box-shadow:inset 0 -2px 0 0 var(--accent, #9e9e9e)}body.ucui .layer-fx-row .layer-fx-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:14px;font-size:9px;font-weight:700;text-transform:uppercase;color:hsl(var(--accent));background:hsl(var(--accent) / .12);border-radius:2px}body.ucui .layer-fx-row .shape-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.ucui .layer-fx-row .shape-visibility{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;background:transparent;border:0;color:var(--text);cursor:pointer;border-radius:3px}body.ucui .layer-fx-row .shape-visibility.dim{color:var(--text-dim);opacity:.5}body.ucui .layer-fx-row .shape-visibility:hover{background:#ffffff14}body.ucui .layer-fx-row .layer-fx-delete{width:18px;height:18px;background:transparent;border:0;color:var(--text-dim);font-size:13px;cursor:pointer;border-radius:3px;opacity:0;transition:opacity .12s ease,color .12s ease}body.ucui .layer-fx-row:hover .layer-fx-delete{opacity:1}body.ucui .layer-fx-row .layer-fx-delete:hover{background:#ff50502e;color:#ff8080}body.ucui #inlayerprop-section{flex:0 0 auto;border-top:1px solid var(--border);display:flex;flex-direction:column}body.ucui #inlayerprop-section .ilp-titlebar{flex-shrink:0;display:flex;align-items:center;height:22px;padding:0 8px;background:var(--surface);border-bottom:1px solid var(--border);position:relative}body.ucui #inlayerprop-section .ilp-titlebar>span{font-size:11px;text-transform:lowercase;letter-spacing:.3px;color:var(--text-dim);flex:1}body.ucui #inlayerprop-section .ilp-body{padding:6px 8px;display:flex;flex-direction:column;gap:4px}body.ucui #inlayerprop-section .ilp-empty{font-size:10px;color:var(--text-dim);line-height:1.5;padding:4px 2px}body.ucui #inlayerprop-section .ilp-empty code{font-family:inherit;background:#ffffff0f;border:1px solid var(--border);border-radius:3px;padding:0 4px;color:var(--text)}body.ucui #inlayerprop-section .ilp-active-name{font-size:11px;font-weight:600;color:hsl(var(--accent));padding:2px 0 4px;border-bottom:1px dashed var(--border);margin-bottom:2px}body.ucui #inlayerprop-section .ilp-active-name.hidden,body.ucui #inlayerprop-section .ilp-params.hidden,body.ucui #inlayerprop-section .ilp-empty.hidden{display:none}.ilp-text{display:flex;flex-direction:column;gap:4px;padding:2px 0 6px;border-bottom:1px dashed var(--border);margin-bottom:2px}.ilp-text.hidden{display:none}.ilp-text-row{display:flex;align-items:center;gap:4px}.ilp-text-row select,.ilp-text-row input[type=number]{flex:1;min-width:0;height:22px;font-size:11px;background:var(--surface, #1d1d22);color:var(--text, #ddd);border:1px solid var(--border, #333);border-radius:4px;padding:0 4px}.ilp-text-row input[type=number]{max-width:64px}.ilp-text-row input[type=color]{width:28px;height:22px;padding:0;border:1px solid var(--border, #333);border-radius:4px;background:none}.ilp-text-row button{height:22px;min-width:26px;font-size:11px;background:var(--surface, #1d1d22);color:var(--text, #ddd);border:1px solid var(--border, #333);border-radius:4px;cursor:pointer}.ilp-text-row button.active{background:#9e9e9e33;border-color:#9e9e9e;color:#bdbdbd}body.ucui #inlayerprop-section .ilp-params{display:flex;flex-direction:column;gap:3px}body.ucui #inlayerprop-section .ilp-param-row{display:grid;grid-template-columns:80px 1fr 40px;align-items:center;gap:6px;height:18px;font-size:10px}body.ucui #inlayerprop-section .ilp-cg-region{display:flex;flex-direction:column;align-items:center;gap:6px;margin:8px 0 10px}body.ucui #inlayerprop-section .ilp-cg-region-title{align-self:flex-start;font-size:10px;font-weight:600;color:var(--text-dim)}body.ucui #inlayerprop-section .ilp-cg-region .ilp-param-row{width:100%}body.ucui #inlayerprop-section .ilp-cg-wheel{position:relative;width:104px;height:104px;border-radius:50%;cursor:crosshair;touch-action:none;background:radial-gradient(circle at center,#fff,#fff0 65%),conic-gradient(from 90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);box-shadow:inset 0 0 0 1px #00000059,0 1px 3px #0006}body.ucui #inlayerprop-section .ilp-cg-handle{position:absolute;width:12px;height:12px;border-radius:50%;background:#ffffff26;border:2px solid #fff;box-shadow:0 0 0 1px #0009;transform:translate(-50%,-50%);pointer-events:none}body.ucui #inlayerprop-section .ilp-param-label{color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.ucui #inlayerprop-section .ilp-param-slider{width:100%;height:14px;margin:0;accent-color:hsl(var(--accent))}body.ucui #inlayerprop-section .ilp-param-value{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;font-size:10px}body.ucui #inlayerprop-section .ilp-param-select{width:100%;height:16px;font-size:10px;background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:0 4px}body.ucui #inlayerprop-section .ilp-param-checkbox{justify-self:start;margin:0}body.ucui #inlayerprop-section .ilp-flipbook-list{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}body.ucui #inlayerprop-section .ilp-flipbook-empty{font-size:10px;color:var(--text-dim, #888);padding:6px 2px}body.ucui #inlayerprop-section .ilp-flipbook-thumb{position:relative;width:44px;height:44px;border:1px solid var(--border);border-radius:3px;overflow:hidden;background:linear-gradient(45deg,#2a2a2a 25%,transparent 25%,transparent 75%,#2a2a2a 75%) 0 0 / 10px 10px,linear-gradient(45deg,#2a2a2a 25%,#1a1a1a 25%,#1a1a1a 75%,#2a2a2a 75%) 5px 5px / 10px 10px}body.ucui #inlayerprop-section .ilp-flipbook-img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}body.ucui #inlayerprop-section .ilp-flipbook-idx{position:absolute;left:1px;top:1px;font-size:8px;line-height:1;padding:1px 3px;background:#0009;color:#fff;border-radius:2px;pointer-events:none}body.ucui #inlayerprop-section .ilp-flipbook-del,body.ucui #inlayerprop-section .ilp-flipbook-mv{position:absolute;width:14px;height:14px;font-size:11px;line-height:12px;text-align:center;padding:0;border:none;border-radius:2px;background:#0009;color:#fff;cursor:pointer;opacity:0;transition:opacity .1s}body.ucui #inlayerprop-section .ilp-flipbook-thumb:hover .ilp-flipbook-del,body.ucui #inlayerprop-section .ilp-flipbook-thumb:hover .ilp-flipbook-mv{opacity:1}body.ucui #inlayerprop-section .ilp-flipbook-del{right:1px;top:1px;background:#b42828d9}body.ucui #inlayerprop-section .ilp-flipbook-mv{bottom:1px}body.ucui #inlayerprop-section .ilp-flipbook-mv:first-of-type{left:1px}body.ucui #inlayerprop-section .ilp-flipbook-mv:nth-of-type(2){right:1px}body.ucui #inlayerprop-section .ilp-flipbook-add{width:100%;height:22px;font-size:11px;background:var(--bg, #1a1a1a);color:var(--text);border:1px dashed var(--border);border-radius:3px;cursor:pointer;margin-bottom:4px}body.ucui #inlayerprop-section .ilp-flipbook-add:hover{border-color:var(--accent, #9e9e9e);color:var(--accent, #9e9e9e)}body.ucui #inlayerprop-section .ilp-flipbook-thumb{cursor:pointer}body.ucui #inlayerprop-section .ilp-flipbook-thumb.is-selected{border-color:var(--accent, #9e9e9e);box-shadow:0 0 0 1px var(--accent, #9e9e9e)}body.ucui #inlayerprop-section .ilp-flipbook-tf{margin:2px 0 4px;padding:4px 0 0;border-top:1px solid var(--border)}body.ucui #inlayerprop-section .ilp-flipbook-tf-head{font-size:10px;color:var(--accent, #9e9e9e);margin-bottom:3px}body.ucui #inlayerprop-section .ilp-params{gap:6px}body.ucui .ilp-fx-section{border:1px solid var(--border);border-radius:4px;background:#0000002e;overflow:hidden}body.ucui .ilp-fx-section.active{border-color:hsl(var(--accent) / .6);box-shadow:inset 2px 0 hsl(var(--accent))}body.ucui .ilp-fx-section.disabled .ilp-fx-name,body.ucui .ilp-fx-section.disabled .ilp-fx-body{opacity:.45}body.ucui .ilp-fx-header{display:flex;align-items:center;gap:4px;height:20px;padding:0 6px;background:#ffffff0a;border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}body.ucui .ilp-fx-section.collapsed .ilp-fx-header{border-bottom:0}body.ucui .ilp-fx-header:hover{background:#ffffff14}body.ucui .ilp-fx-grip{display:inline-flex;align-items:center;justify-content:center;width:10px;height:14px;margin-right:2px;font-size:9px;letter-spacing:-2px;color:var(--text-dim);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}body.ucui .ilp-fx-grip:hover{color:hsl(var(--accent))}body.ucui .ilp-fx-grip:active{cursor:grabbing}body.ucui .ilp-fx-section.ilp-fx-drop-above{box-shadow:inset 0 2px 0 0 var(--accent, #9e9e9e)}body.ucui .ilp-fx-section.ilp-fx-drop-below{box-shadow:inset 0 -2px 0 0 var(--accent, #9e9e9e)}body.ucui .ilp-fx-section{transition:opacity .12s ease,transform .16s cubic-bezier(.2,.8,.2,1)}body.ucui .ilp-fx-section.ilp-fx-ghost{opacity:.3;pointer-events:none;transform:scale(.98)}body.ucui .ilp-fx-drag-clone{background:var(--surface, #222);border:1px solid var(--accent, #9e9e9e);border-radius:6px;box-shadow:0 4px 12px #00000059;transform:scale(1) rotate(0);transform-origin:top left;opacity:.95;cursor:grabbing;transition:transform .14s cubic-bezier(.2,.8,.2,1),box-shadow .14s ease,top 60ms cubic-bezier(.2,.8,.2,1)}body.ucui .ilp-fx-drag-clone.lift-in{transform:scale(1.03) rotate(-.4deg);box-shadow:0 16px 36px #0009,0 0 0 1px #9e9e9e8c}body.ucui .ilp-fx-drop-slot{position:absolute;left:4px;right:4px;background:#9e9e9e2e;border:1px dashed var(--accent, #9e9e9e);border-radius:6px;pointer-events:none;z-index:5;animation:ucFxSlotPulse 1.4s ease-in-out infinite;transition:top 80ms cubic-bezier(.2,.8,.2,1)}@keyframes ucFxSlotPulse{0%,to{background:#9e9e9e24}50%{background:#9e9e9e47}}body.ucui .ilp-fx-section.ilp-fx-dragging{opacity:.5}.ilp-fx-drop-line{position:absolute;left:6px;right:6px;height:2px;max-width:calc(100% - 12px);box-sizing:border-box;background:#9e9e9e;border-radius:1px;pointer-events:none;box-shadow:0 0 4px #9e9e9ed9,0 0 10px #9e9e9e8c,0 0 18px #9e9e9e40;z-index:5;transition:top 80ms cubic-bezier(.2,.8,.2,1)}.ilp-fx-drop-line:before{content:"";position:absolute;top:-3px;right:-2px;bottom:-3px;left:-2px;border-radius:3px;background:#9e9e9e2e;animation:ucFxDropLinePulse 1.1s ease-in-out infinite;pointer-events:none}@keyframes ucFxDropLinePulse{0%,to{opacity:.35}50%{opacity:.9}}#inlayerprop-params{position:relative}body.ucui .ilp-fx-ctxmenu{position:fixed;z-index:100000;min-width:160px;background:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:0 6px 16px #00000080;padding:4px 0}body.ucui .ilp-fx-ctxmenu-item{display:block;width:100%;text-align:left;background:transparent;border:0;padding:5px 12px;color:var(--text);font:11px/16px inherit;cursor:pointer}body.ucui .ilp-fx-ctxmenu-item:hover:not(:disabled){background:hsl(var(--accent) / .25);color:#fff}body.ucui .ilp-fx-ctxmenu-item:disabled{opacity:.4;cursor:default}body.ucui .ilp-fx-ctxmenu-sep{height:1px;margin:4px 0;background:var(--border)}body.ucui .ilp-fx-caret{display:inline-flex;align-items:center;justify-content:center;width:12px;font-size:9px;color:var(--text-dim);transition:transform .12s cubic-bezier(.4,0,.2,1)}body.ucui .ilp-fx-section.collapsed .ilp-fx-caret{transform:rotate(-90deg)}body.ucui .ilp-fx-name{flex:1;font-size:11px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.ucui .ilp-fx-vis,body.ucui .ilp-fx-delete,body.ucui .ilp-fx-more{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--text-dim);font-size:11px;cursor:pointer;border-radius:3px}body.ucui .ilp-fx-vis:hover,body.ucui .ilp-fx-more:hover{background:#ffffff14;color:var(--text)}body.ucui .ilp-fx-delete:hover{background:#ff50502e;color:#ff8080}body.ucui .ilp-fx-more{font-size:14px;font-weight:700;letter-spacing:-1px}body.ucui .ilp-fx-body{padding:6px 8px;display:flex;flex-direction:column;gap:3px}body.ucui .ilp-fx-section.collapsed .ilp-fx-body{display:none}body.ucui .ilp-fx-no-params{font-size:10px;color:var(--text-dim);font-style:italic;padding:2px 0}body.ucui .ilp-resolution{padding:6px 0;border-bottom:1px solid var(--border);background:transparent}body.ucui #inlayerprop-section .ilp-body{padding:6px 12px 10px!important}body.ucui .ilp-res-title,body.ucui .ilp-res-row{padding-left:0;margin-left:0}body.ucui #layer-property-panel .lpp-titlebar,body.ucui #layer-property-panel .ilp-titlebar{padding-left:12px!important;padding-right:12px!important;background:transparent}body.ucui #layer-property-panel .lpp-body,body.ucui #layer-property-panel .ilp-body{padding-left:0;padding-right:0}.model3d-props.hidden{display:none}.model3d-props .model3d-body{display:flex;flex-direction:column;gap:8px;padding:8px 12px 12px}.model3d-props #m3d-load{height:28px;border:1px solid var(--border, #555);background:var(--surface, #2a2a30);color:var(--text, #ddd);border-radius:6px;cursor:pointer;font-size:11.5px}.model3d-props #m3d-load:hover{background:var(--hover)}.model3d-props .m3d-row{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:8px;font-size:11px;color:var(--text-dim, #aaa)}.model3d-props .m3d-row input[type=range]{width:100%;min-width:0}.model3d-props .m3d-row input[type=checkbox]{justify-self:start}.model3d-props .model3d-body.hidden{display:none}.model3d-props .m3d-sec{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim, #888);padding:6px 0 3px;margin-top:2px;border-bottom:1px solid var(--border, #555)}.model3d-props .m3d-row select{width:100%;min-width:0;height:24px;background:var(--surface, #2a2a30);color:var(--text, #ddd);border:1px solid var(--border, #555);border-radius:5px;font-size:11px}.model3d-props .m3d-bg{display:flex;align-items:center;gap:6px;justify-self:start}.model3d-props .m3d-bg input[type=color]{width:34px;height:22px;padding:1px}.model3d-props .m3d-vrow{display:grid;grid-template-columns:64px 1fr 1fr 1fr;align-items:center;gap:5px;font-size:11px;color:var(--text-dim, #aaa)}.model3d-props .m3d-vrow input[type=number]{width:100%;min-width:0;height:24px;background:var(--surface, #2a2a30);color:var(--text, #ddd);border:1px solid var(--border, #555);border-radius:5px;font-size:11px;padding:0 4px}body.ucui #inlayerprop-section{margin-top:0}body.ucui .ilp-res-title{font-size:10px;text-transform:uppercase;color:var(--text-dim, #888);letter-spacing:.5px;margin-bottom:4px}body.ucui .ilp-res-row{display:flex;align-items:center;gap:6px;font-size:11px}body.ucui .ilp-res-row+.ilp-res-row{margin-top:4px}body.ucui .ilp-res-info{flex:1;font-family:monospace;color:var(--text)}body.ucui .ilp-res-info-dim{flex:1;color:var(--text-dim, #888)}body.ucui .ilp-res-change{background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:2px 8px;cursor:pointer;font-size:11px}body.ucui .ilp-res-change:hover{background:var(--accent-dim, #333)}body.ucui .ilp-res-density{background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:1px 4px;font-size:11px}#layer-resolution-dialog{position:fixed;z-index:3000}#lrd-inner{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 3px 12px #00000080;width:420px;display:flex;flex-direction:column;overflow:hidden;color:var(--text);font-size:12px}#lrd-title-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--surface-2, var(--surface));border-bottom:1px solid var(--border);cursor:move}#lrd-title-label{font-weight:600}#lrd-close{background:transparent;border:0;color:var(--text);font-size:18px;cursor:pointer;line-height:1;padding:0 4px}#lrd-close:hover{color:var(--accent, #fff)}#lrd-body{padding:12px;display:flex;flex-direction:column;gap:8px}.lrd-row{display:flex;align-items:center;gap:8px;min-height:24px}.lrd-label{width:110px;flex:0 0 110px;color:var(--text-dim, #aaa)}.lrd-row input[type=number]{width:64px;background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:2px 4px}.lrd-suffix{color:var(--text-dim, #aaa)}.lrd-presets{display:flex;gap:4px;flex:1}.lrd-preset{flex:1;background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:3px 0;cursor:pointer;font-size:11px}.lrd-preset:hover{background:var(--accent-dim, #333)}.lrd-hint{color:var(--text-dim, #888);font-size:11px;font-style:italic}.lrd-anchor-row{align-items:flex-start}#lrd-anchor-grid{display:grid;grid-template-columns:repeat(3,22px);grid-template-rows:repeat(3,22px);gap:2px}.lrd-anchor-cell{width:22px;height:22px;background:var(--bg, #1a1a1a);border:1px solid var(--border);border-radius:2px;cursor:pointer;padding:0}.lrd-anchor-cell:hover{background:var(--accent-dim, #333)}.lrd-anchor-cell.active{background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e)}.lrd-anchor-disabled .lrd-anchor-cell{opacity:.4;pointer-events:none}#lrd-density{flex:1;background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:2px 4px}.lrd-memory{font-family:monospace;color:var(--text)}.lrd-memory.lrd-mem-warn{color:#f4a73c}.lrd-warn{color:#f4a73c;font-size:11px}#lrd-footer{display:flex;justify-content:flex-end;gap:6px;padding:8px 12px;border-top:1px solid var(--border);background:var(--surface-2, var(--surface))}#lrd-apply,#lrd-cancel{background:var(--bg, #1a1a1a);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:4px 14px;cursor:pointer}#lrd-apply{background:var(--accent, #9e9e9e);border-color:var(--accent, #9e9e9e);color:#fff}#lrd-apply:hover{filter:brightness(1.1)}#lrd-cancel:hover{background:var(--accent-dim, #333)}.lrd-row.hidden{display:none}#engine-load-indicator{position:fixed;top:10px;left:50%;transform:translate(-50%);z-index:99999;display:flex;align-items:center;gap:7px;padding:5px 14px;border-radius:999px;background:#ff5722eb;color:#fff;font:600 12px/1.2 system-ui,sans-serif;letter-spacing:.02em;box-shadow:0 2px 10px #ff572259;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s}#engine-load-indicator.visible{opacity:1;visibility:visible;animation:uc-load-pulse 1.1s ease-in-out infinite}#engine-load-indicator svg{width:14px;height:14px;animation:uc-pen-write .9s ease-in-out infinite;transform-origin:30% 80%}@keyframes uc-load-pulse{0%,to{background:#ff5722eb}50%{background:#d8320ef5}}@keyframes uc-pen-write{0%,to{transform:rotate(-6deg) translateY(0)}30%{transform:rotate(4deg) translateY(.5px)}60%{transform:rotate(-2deg) translateY(-.5px)}}.ndd.ndd2{display:flex;flex-direction:column;width:min(720px,92vw);height:min(540px,88vh);max-width:none;max-height:none;overflow:hidden}.ndd2 .ndd2-body{flex:1;display:flex;flex-direction:row;min-height:0;overflow:hidden}.ndd2 .ndd2-main{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.ndd2 .ndd2-presets-label{display:flex;align-items:center;justify-content:flex-start;gap:12px;font-size:12px;font-weight:600;color:var(--text, #ddd);padding:8px 14px 0}.ndd2 .ndd2-search{display:flex;align-items:center;gap:6px;height:28px;flex:1;width:auto;max-width:none;padding:0 10px;background:var(--surface, #2a2a30);border:1px solid var(--border, #555);border-radius:13px;color:var(--text-dim, #999)}.ndd2 .ndd2-search:focus-within{border-color:#9e9e9e;color:var(--text, #ddd)}.ndd2 .ndd2-search svg{flex:none;opacity:.8}.ndd2 .ndd2-search input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text, #ddd);font-size:11.5px;font-weight:400}.ndd2 .ndd2-search input::-moz-placeholder{color:var(--text-dim, #888)}.ndd2 .ndd2-search input::placeholder{color:var(--text-dim, #888)}.ndd2 .ndd2-search input::-webkit-search-cancel-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.ndd2 .ndd-preset-empty{font-size:12px;color:var(--text-dim, #888);font-style:italic}.ndd2 .ndd2-tabs{display:flex;align-items:center;gap:12px;padding:4px 14px 8px;border-bottom:none}.ndd2 .ndd-tab{display:inline-flex;align-items:center;gap:5px;background:none;border:none;padding:2px;font-size:11.5px;color:var(--text-dim, #999);cursor:pointer}.ndd2 .ndd-tab svg{flex:none;opacity:.7}.ndd2 .ndd-tab:hover{color:var(--text, #ccc)}.ndd2 .ndd-tab.active{color:var(--text, #fff);font-weight:600}.ndd2 .ndd-tab.active svg{opacity:1}.ndd2 .ndd2-tabs-spacer{flex:1}.ndd2 .ndd2-open-link{background:none;border:none;font-size:11.5px;color:var(--text-dim, #999);cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.ndd2 .ndd2-open-link:hover{color:var(--text, #fff)}.ndd2 .ndd2-cards{flex:1;min-width:0;position:relative;display:flex;flex-direction:column;padding:0 20px 24px;overflow-y:auto;scroll-snap-type:y mandatory;scroll-padding-top:34px;border:1px solid var(--border, #555);border-left:none;border-right:none}.ndd2 .ndd-preset-section{display:block}.ndd2 .ndd-preset-section-title{position:sticky;top:0;z-index:2;margin:0 -20px;padding:9px 20px 7px;background:var(--panel);font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.02em;color:var(--text-dim, #9a9aa2)}.ndd2 .ndd-preset-head-icon{display:inline-flex;flex:none}.ndd2 .ndd-preset-head-icon svg{display:block;width:15px;height:15px}.ndd2 .ndd-preset-subgroup{scroll-snap-align:start;padding-top:2px}.ndd2 .ndd-preset-subtitle{display:flex;align-items:center;gap:7px;padding:7px 2px 3px;font-size:11.5px;font-weight:600;color:var(--text, #d4d4db)}.ndd2 .ndd-preset-subtitle .ndd-preset-head-icon svg{width:17px;height:17px}.ndd2 .ndd-preset-subgroup .ndd-preset-card{scroll-snap-align:none}.ndd2 .ndd-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px;padding:6px 0 12px}.ndd2 .ndd-preset-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:9px 6px 8px;background:transparent;border:1px solid transparent;border-radius:9px;cursor:pointer;scroll-snap-align:start;transition:border-color .12s ease,background .12s ease,transform .12s ease}.ndd2 .ndd-preset-card:hover{background:color-mix(in srgb,var(--text, #fff) 6%,transparent);border-color:color-mix(in srgb,var(--text, #fff) 32%,transparent)}.ndd2 .ndd-preset-card.active{border-color:#ffffffe6;background:#ffffff14;box-shadow:0 0 0 1px #ffffff80}.ndd2 .ndd-preset-preview{height:72px;display:flex;align-items:center;justify-content:center}.ndd2 .ndd-preset-icon{display:flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--text, #bbb) 45%,transparent);background:color-mix(in srgb,var(--text, #fff) 3%,transparent);border-radius:2px}.ndd2 .ndd-preset-card:hover .ndd-preset-icon{border-color:color-mix(in srgb,var(--text, #fff) 65%,transparent)}.ndd2 .ndd-preset-tile{display:inline-flex;flex:none}.ndd2 .ndd-preset-tile svg{width:100%;height:100%;display:block}.ndd2 .ndd-preset-info{text-align:center;width:100%}.ndd2 .ndd-preset-name{font-size:11px;line-height:1.25;color:var(--text, #ddd);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ndd2 .ndd-preset-detail{font-size:10px;color:var(--text-dim, #888);margin-top:3px}.ndd2 .ndd2-bottombar{display:flex;align-items:center;gap:7px;padding:12px 14px 16px;flex-wrap:nowrap}.ndd2 .ndd2-bottombar.ndd2-side{flex:none;width:224px;flex-direction:column;align-items:stretch;gap:4px;padding:12px 14px 14px;border-left:1px solid var(--border, #555);overflow-y:auto}.ndd2 .ndd2-side .ndd2-sec{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim, #888);padding:9px 0 5px;margin-top:6px;border-bottom:1px solid var(--border, #555)}.ndd2 .ndd2-side .ndd2-sec:first-child{margin-top:0}.ndd2 .ndd2-side .ndd2-prop{display:grid;grid-template-columns:72px 1fr 38px;align-items:center;gap:6px;min-height:26px}.ndd2 .ndd2-side .ndd2-prop>span:first-child{grid-column:1;font-size:11px;color:var(--text-dim, #aaa);text-align:left;min-width:0}.ndd2 .ndd2-side .ndd2-prop>input,.ndd2 .ndd2-side .ndd2-prop>select{grid-column:2;width:100%;min-width:0}.ndd2 .ndd2-side .ndd2-prop>.ndd2-unit{grid-column:3;width:100%;min-width:0;padding:0 3px}.ndd2 .ndd2-side .ndd2-prop>.ndd2-suffix{grid-column:3;font-size:10px;color:var(--text-dim, #888);text-align:left}.ndd2 .ndd2-side .ndd2-prop>.ndd2-color{grid-column:2;width:40px;height:26px;padding:1px;justify-self:start}.ndd2 .ndd2-side .ndd2-prop>#ndd2-artboards-btn{grid-column:2;width:40px;justify-self:start}.ndd2 .ndd2-side .ndd2-orient{grid-column:2;display:flex;gap:4px;justify-self:start}.ndd2 .ndd2-side .ndd2-side-spacer{flex:1 1 auto;min-height:12px}.ndd2 .ndd2-side .ndd2-create{width:100%;height:30px;margin-top:6px}.ndd2 .ndd2-bottombar input,.ndd2 .ndd2-bottombar select{height:26px;background:var(--surface, #2a2a30);color:var(--text, #ddd);border:1px solid var(--border, #555);border-radius:5px;font-size:11.5px;padding:0 6px}.ndd2 .ndd2-name{flex:1;min-width:90px}.ndd2 .ndd2-lbl{font-size:11px;color:var(--text-dim, #999)}.ndd2 .ndd2-num{width:52px}.ndd2 .ndd2-unit{width:46px}.ndd2 .ndd2-orient{display:flex;gap:3px}.ndd2 .ndd-orient-btn{height:26px;width:28px;background:var(--surface, #2a2a30);color:var(--text-dim, #999);border:1px solid var(--border, #555);border-radius:5px;cursor:pointer;font-size:13px;line-height:1}.ndd2 .ndd-orient-btn.active{color:#bdbdbd;border-color:#9e9e9e}.ndd2 .ndd2-field{display:flex;flex-direction:column;align-items:center;gap:1px}.ndd2 .ndd2-field>span{font-size:9.5px;color:var(--text-dim, #888);line-height:1}.ndd2 .ndd2-field .ndd2-num{width:46px}.ndd2 .ndd2-field select{width:52px}.ndd2 .ndd2-color{width:34px;padding:1px}#ndd2-artboards-btn{width:34px;height:26px;background:var(--surface, #2a2a30);color:var(--text-dim, #999);border:1px solid var(--border, #555);border-radius:5px;cursor:pointer;font-size:14px;line-height:1}#ndd2-artboards-btn.active{color:#bdbdbd;border-color:#9e9e9e;background:#9e9e9e22}.ndd2 .ndd2-create{height:28px;padding:0 16px;font-weight:600;border-radius:6px}.ndd2 .ndd2-hidden{display:none!important}#memory-window{position:fixed;top:80px;right:260px;width:340px;max-height:70vh;background:var(--panel);border:var(--wm-border);border-radius:var(--wm-radius);display:flex;flex-direction:column;box-shadow:var(--wm-shadow);font-size:12px;overflow:hidden}.mem-header{height:var(--wm-titlebar-h);min-height:var(--wm-titlebar-h);box-sizing:border-box;padding:0 12px;display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;letter-spacing:.3px;color:var(--text);background:var(--surface);border-bottom:1px solid var(--border);cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mem-actions{display:flex;align-items:center;gap:6px}.mem-actions button{height:22px;padding:0 8px;font-size:11px;background:transparent;color:var(--text-dim);border:1px solid var(--border);border-radius:4px;cursor:pointer}.mem-actions button:hover{background:#ffffff0f;color:var(--text)}#mem-close{border:none;font-size:15px;padding:0 4px}.mem-totals{display:flex;flex-wrap:wrap;gap:4px 12px;padding:7px 12px;border-bottom:1px solid var(--border);color:var(--text-dim)}.mem-totals b{color:var(--text);font-weight:600}.mem-table-wrap{overflow-y:auto}.mem-table{width:100%;border-collapse:collapse}.mem-table th{text-align:left;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-dim);padding:5px 12px;position:sticky;top:0;background:var(--panel)}.mem-table td{padding:5px 12px;border-top:1px solid var(--border);color:var(--text);white-space:nowrap}.mem-table tr.mem-active td{background:color-mix(in srgb,var(--accent, #9e9e9e) 12%,transparent)}.mem-table tr.mem-moving td{animation:mem-pulse 1s ease-in-out infinite}@keyframes mem-pulse{0%,to{background:transparent}50%{background:#ffc85029}}.mem-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:middle}.mem-dot.on{background:#4ade80}.mem-dot.off{background:#555}.mem-badge{display:inline-block;padding:1px 7px;border-radius:10px;font-size:10px;font-weight:600}.mem-badge.tier-gpu{background:#15803d44;color:#4ade80;border:1px solid #4ade8055}.mem-badge.tier-ram{background:#92400e44;color:#fbbf24;border:1px solid #fbbf2455}.mem-badge.tier-disk{background:#3a3a3a44;color:#9e9e9e;border:1px solid #9e9e9e55}.mem-state{font-size:10px;color:var(--text-dim)}.mem-state.evicting{color:#fbbf24}.mem-state.restoring{color:#9e9e9e}.mem-state.active{color:#4ade80}.ucui-m3d-group{display:flex;align-items:center;gap:2px}body.ucui.timeline-open #ucui-tool-dock .ucui-m3d-group{flex-direction:column}.layer-m3d-obj{gap:7px}.layer-m3d-obj .m3d-obj-icon{width:14px;flex:none;text-align:center;opacity:.5;font-size:10px}.layer-m3d-obj .shape-name.dim{opacity:.4}.layer-shape-row.layer-m3d-obj.active{box-shadow:none;background-color:#383838}body.ucui #layers-list .layer-shape-row.layer-m3d-obj.active{box-shadow:inset 2px 0 #757575;background-color:#363636}#layer-property-panel.m3d-object-selected>.lpp-titlebar,#layer-property-panel.m3d-object-selected .lpp-body,#layer-property-panel.m3d-object-selected #inlayerprop-section{display:none!important}.model3d-props .hidden{display:none!important}.model3d-props .m3d-row input[type=color]{width:34px;height:22px;padding:1px;justify-self:start}.layer-m3d-tree .layer-m3d-obj{gap:4px;height:18px;min-height:18px;margin:0 4px;padding-top:0;padding-bottom:0;padding-left:calc(8px + var(--m3d-depth, 0) * 14px);font-size:11px}.layer-m3d-tree .layer-m3d-obj .shape-name{font-size:11px}.layer-m3d-tree .layer-m3d-obj .m3d-obj-icon{font-size:9px}.layer-m3d-obj .m3d-node-caret{width:12px;flex:none;text-align:center;font-size:9px;opacity:.7;cursor:pointer}.layer-m3d-obj.drop-inside{background-color:#9e9e9e22;box-shadow:inset 0 0 0 1px #9e9e9e99}.layer-m3d-obj.drop-before{box-shadow:inset 0 2px #9e9e9e}.layer-m3d-obj.drop-after{box-shadow:inset 0 -2px #9e9e9e}:root{--neutral-900: 0 0% 7%;--neutral-800: 0 0% 15%;--neutral-700: 0 0% 20%;--neutral-600: 0 0% 39%;--neutral-300: 0 0% 73%;--neutral-200: 0 0% 84%;--neutral-100: 0 0% 96%;--background: var(--neutral-900);--foreground: 0 0% 92%;--card: 0 0% 12%;--card-foreground: 0 0% 92%;--popover: var(--neutral-800);--popover-foreground:0 0% 92%;--primary: 0 0% 62%;--primary-foreground: var(--neutral-900);--secondary: 0 0% 13%;--secondary-foreground: 0 0% 92%;--accent: 0 0% 26%;--accent-foreground: 0 0% 98%;--destructive: 0 42% 46%;--destructive-foreground:0 0% 98%;--muted: var(--neutral-700);--muted-foreground: var(--neutral-600);--input: 0 0% 9%;--ring: 0 0% 62%;--radius: .5rem;--radius-sm: .375rem;--bg: hsl(var(--background));--panel: hsl(var(--card));--surface: hsl(var(--popover));--text: hsl(var(--foreground));--text-dim: hsl(var(--muted-foreground));--canvas-bg: hsl(var(--background));--input-bg: hsl(var(--input));--hover: hsl(0 0% 26%);--surface-alt: hsl(var(--secondary));--border: hsl(0 0% 20%);--accent: hsl(0 0% 62%);--panel-blur: 200px;--panel-saturate: 1.3;--frost-surface: hsl(var(--card));--frost-border: var(--border);--frost-shadow: 0 14px 34px hsl(0 0% 0% / .32)}.frosted-panel,[data-floating=true]{background:var(--frost-surface)!important;-webkit-backdrop-filter:blur(var(--panel-blur)) saturate(var(--panel-saturate))!important;backdrop-filter:blur(var(--panel-blur)) saturate(var(--panel-saturate))!important;border:.5px solid var(--frost-border);box-shadow:var(--frost-shadow)}:root{--font-display: "Plus Jakarta Sans Variable", "Inter Variable", system-ui, sans-serif;--font-body: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono Variable", "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, Consolas, monospace}:where(html,body){font-family:var(--font-body)}:where(code,kbd,pre,samp,.font-mono,.numeric-input,input[type=number],input[type=time]){font-family:var(--font-mono);font-feature-settings:"tnum" 1,"zero" 1}.font-display{font-family:var(--font-display)}:root{--text-xs: 10px;--text-sm: 11px;--text-md: 12px;--text-lg: 14px;--text-xl: 16px;--text-2xl: 21px;--text-3xl: 28px;--text-4xl: 34px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold:600;--font-weight-bold: 700;--tracking-tight: -.005em;--tracking-display: -.015em;--tracking-section: .04em}:where(:focus-visible){outline:2px solid hsl(var(--ring));outline-offset:2px}.btn-primary,.btn-secondary,.btn-ghost,.btn-destructive{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--btn-size-text);padding:0 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .12s,border-color .12s,color .12s,box-shadow .12s}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-primary:hover{background:hsl(var(--primary) / .9)}.btn-primary:active{background:hsl(var(--primary) / .85)}.btn-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground));border-color:var(--border)}.btn-secondary:hover{background:hsl(var(--secondary) / .85)}.btn-ghost{background:transparent;color:hsl(var(--foreground))}.btn-ghost:hover{background:var(--hover)}.btn-destructive{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.btn-destructive:hover{background:hsl(var(--destructive) / .9)}.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled,.btn-destructive:disabled{opacity:.5;cursor:not-allowed}.snap-guide-line{position:fixed;background:hsl(var(--primary));pointer-events:none;z-index:10002;opacity:.85;box-shadow:0 0 4px hsl(var(--primary) / .5)}.snap-guide-line.axis-x{width:1px;height:100vh;top:0}.snap-guide-line.axis-y{width:100vw;height:1px;left:0}.snap-guide-line.hidden{display:none}.dock-drop-titlebar-hover{background:hsl(var(--primary) / .18)!important;box-shadow:inset 0 0 0 1px hsl(var(--primary)),inset 0 -2px hsl(var(--primary))}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--muted));border-radius:9999px;border:2px solid hsl(var(--background))}::-webkit-scrollbar-thumb:hover{background:hsl(var(--muted-foreground))}::-webkit-scrollbar-corner{background:transparent}:root{scrollbar-color:hsl(var(--muted)) transparent;scrollbar-width:thin}:where(select){-moz-appearance:none;appearance:none;-webkit-appearance:none;background-color:hsl(var(--input));color:hsl(var(--foreground));border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 24px 4px 8px;font-size:12px;line-height:1.2;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;background-size:12px;transition:border-color .12s,background-color .12s}:where(select):hover{background-color:hsl(var(--accent) / .05);border-color:hsl(var(--border) / .7)}:where(select):focus-visible{border-color:hsl(var(--ring))}:where(input[type=checkbox],input[type=radio]){-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;background:hsl(var(--input));border:1px solid hsl(var(--muted-foreground) / .4);cursor:pointer;margin:0;flex-shrink:0;position:relative;display:inline-grid;place-content:center;transition:background-color .12s,border-color .12s}:where(input[type=checkbox]){border-radius:3px}:where(input[type=radio]){border-radius:9999px}:where(input[type=checkbox]):hover,:where(input[type=radio]):hover{border-color:hsl(var(--primary))}:where(input[type=checkbox]):checked,:where(input[type=radio]):checked{background:hsl(var(--primary));border-color:hsl(var(--primary))}:where(input[type=checkbox]):checked:after{content:"";width:8px;height:8px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center}:where(input[type=radio]):checked:after{content:"";width:6px;height:6px;border-radius:9999px;background:hsl(var(--primary-foreground))}#dv-host{position:fixed;top:var(--top-bar-h);bottom:0;left:0;right:0;background:hsl(var(--background))}#dv-host.hidden{display:none}.dv-content-container>[data-dv-hosted=true],[data-dv-hosted=true]{position:relative!important;width:100%!important;height:100%!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;border:none!important;border-radius:0!important;box-shadow:none!important;margin:0!important;z-index:auto!important;background:hsl(var(--card))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}[data-dv-hosted=true]>.fp-titlebar,[data-dv-hosted=true]>.lb-header,[data-dv-hosted=true]>.histogram-header,[data-dv-hosted=true]>.pp-titlebar,[data-dv-hosted=true]>.bb-header,[data-dv-hosted=true]>.console-header,[data-dv-hosted=true]>.sg-titlebar,[data-dv-hosted=true]>.lpp-titlebar,[data-dv-hosted=true]>.resource-header,[data-dv-hosted=true]>.gl-titlebar,[data-dv-hosted=true]>.rw-titlebar,[data-dv-hosted=true]>.tools-titlebar,[data-dv-hosted=true]>.history-header,[data-dv-hosted=true]>.markers-panel-header,[data-dv-hosted=true]>.adj-popup-header{display:none!important}[data-dv-hosted=true]>.tl-titlebar>.tl-title,[data-dv-hosted=true]>.tl-titlebar>.tl-close-btn{display:none}[data-dv-hosted=true]>.tl-titlebar{cursor:default}.dockview-theme-dark#dv-host{--dv-tabs-and-actions-container-background-color: hsl(var(--card));--dv-tabs-and-actions-container-height: 30px;--dv-tabs-and-actions-container-font-size: 12px;--dv-tabs-container-scrollbar-color: hsl(var(--muted));--dv-activegroup-visiblepanel-tab-background-color: hsl(var(--card));--dv-activegroup-visiblepanel-tab-color: hsl(var(--foreground));--dv-activegroup-hiddenpanel-tab-background-color: hsl(var(--muted));--dv-activegroup-hiddenpanel-tab-color: hsl(var(--muted-foreground));--dv-inactivegroup-visiblepanel-tab-background-color: hsl(var(--card));--dv-inactivegroup-visiblepanel-tab-color: hsl(var(--muted-foreground));--dv-inactivegroup-hiddenpanel-tab-background-color: hsl(var(--muted));--dv-inactivegroup-hiddenpanel-tab-color: hsl(var(--muted-foreground));--dv-group-view-background-color: hsl(var(--background));--dv-tab-divider-color: hsl(var(--border));--dv-separator-border: hsl(var(--border));--dv-sash-color: hsl(var(--border));--dv-active-sash-color: hsl(var(--primary));--dv-drag-over-background-color: hsl(var(--primary) / .18);--dv-drag-over-border-color: hsl(var(--primary));--dv-floating-box-shadow: 0 10px 15px -3px hsl(0 0% 0% / .5), 0 4px 6px -4px hsl(0 0% 0% / .4);--dv-floating-border: 1px solid hsl(var(--border));--dv-icon-hover-background-color: hsl(var(--accent) / .3);--dv-tab-border-radius: 0;--dv-border-radius: var(--radius-sm)}#dv-host .dv-active-tab.dv-active-group{box-shadow:inset 0 -2px hsl(var(--primary))}#dv-host,#dv-host .dv-tab,#dv-host .dv-default-tab,#dv-host .dv-default-tab-content{font-family:Inter Variable,system-ui,sans-serif!important}.\!container{width:100%!important}.container{width:100%}@media (min-width: 640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (min-width: 768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (min-width: 1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (min-width: 1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (min-width: 1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.flex-shrink,.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.flex-row{flex-direction:row}.content-center{align-content:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clip{text-overflow:clip}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.italic{font-style:italic}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.\!ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color) !important;--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color) !important;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)!important}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.invert{--tw-invert: invert(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur: blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}
