@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:300;src:url(./inter-latin-300-normal-BVlfKGgI.woff2) format("woff2"),url(./inter-latin-300-normal-i8F0SvXL.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(./inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(./inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff")}.pp-scope,.pp-portal{--font: "Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--fs: 12px;--fs-small: 11px;--app: #1b1b1d;--menubar: #1f1f22;--panel: #262629;--panel-2: #2d2d31;--panel-3: #36363b;--panel-4: #414147;--input: #1e1e21;--border: #3a3a40;--border-soft: #313136;--text: #e4e4e8;--text-dim: #a3a3ad;--text-faint: #71717b;--accent: #4f8cff;--accent-hover: #6a9dff;--accent-soft: rgba(79, 140, 255, .18);--accent-2: #a35bff;--danger: #ff5f5f;--success: #3ecf8e;--warning: #ffb547;--pasteboard: #232326;--ruler-bg: #222225;--ruler-tick: #5f5f68;--ruler-text: #8f8f99;--shadow: 0 10px 30px rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .35);--radius: 6px;--radius-sm: 4px;--checker: repeating-conic-gradient(#cfcfcf 0% 25%, #ffffff 0% 50%) 50% / 10px 10px;color-scheme:dark}html[data-theme=medium] :is(.pp-scope,.pp-portal){--app: #3c3c3e;--menubar: #444446;--panel: #4a4a4c;--panel-2: #525255;--panel-3: #5c5c60;--panel-4: #69696d;--input: #3a3a3c;--border: #5f5f63;--border-soft: #545458;--text: #f0f0f2;--text-dim: #c6c6cc;--text-faint: #9c9ca4;--pasteboard: #6b6b6f;--ruler-bg: #47474a;--ruler-tick: #9a9aa2;--ruler-text: #dcdce0;color-scheme:dark}html[data-theme=light] :is(.pp-scope,.pp-portal){--app: #e9e9ec;--menubar: #f3f3f5;--panel: #f0f0f2;--panel-2: #e6e6ea;--panel-3: #dadade;--panel-4: #cdcdd2;--input: #ffffff;--border: #c9c9cf;--border-soft: #d9d9de;--text: #1f1f24;--text-dim: #55555f;--text-faint: #8a8a94;--accent: #2f6fe8;--accent-hover: #4b84f0;--accent-soft: rgba(47, 111, 232, .14);--pasteboard: #c9c9ce;--ruler-bg: #ececef;--ruler-tick: #9a9aa3;--ruler-text: #666670;--shadow: 0 10px 30px rgba(0, 0, 0, .18), 0 2px 6px rgba(0, 0, 0, .12);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .12);color-scheme:light}.pp-scope,:is(.pp-scope,.pp-portal) *{box-sizing:border-box}.pp-scope{height:100%;margin:0;overflow:hidden}.pp-scope{font-family:var(--font);font-size:var(--fs);color:var(--text);background:var(--app);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}:is(.pp-scope,.pp-portal) input,:is(.pp-scope,.pp-portal) textarea,:is(.pp-scope,.pp-portal) select,:is(.pp-scope,.pp-portal) button{font:inherit;color:inherit}:is(.pp-scope,.pp-portal) button{cursor:default}:is(.pp-scope,.pp-portal) ::-webkit-scrollbar{width:10px;height:10px}:is(.pp-scope,.pp-portal) ::-webkit-scrollbar-thumb{background:var(--panel-4);border-radius:10px;border:2px solid transparent;background-clip:padding-box}:is(.pp-scope,.pp-portal) ::-webkit-scrollbar-track{background:transparent}:is(.pp-scope,.pp-portal) .pp-mono{font-family:var(--mono);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-app{display:grid;grid-template-rows:auto auto 1fr;height:100%;background:var(--app)}:is(.pp-scope,.pp-portal) .pp-main{display:flex;min-height:0;min-width:0}:is(.pp-scope,.pp-portal) .pp-center{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--pasteboard)}:is(.pp-scope,.pp-portal) .pp-menubar{display:flex;align-items:center;height:32px;background:var(--menubar);border-bottom:1px solid var(--border-soft);padding:0 6px;gap:2px}:is(.pp-scope,.pp-portal) .pp-menubar .pp-brand{display:flex;align-items:center;gap:7px;padding:0 10px 0 4px;font-weight:650;letter-spacing:.2px;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-menubar-item{height:24px;padding:0 9px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-menubar-item:hover,:is(.pp-scope,.pp-portal) .pp-menubar-item.open{background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-menubar-spacer{flex:1}:is(.pp-scope,.pp-portal) .pp-menubar-right{display:flex;align-items:center;gap:4px}:is(.pp-scope,.pp-portal) .pp-menu{position:fixed;z-index:1000;min-width:220px;max-height:calc(100vh - 40px);overflow-y:auto;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px;animation:pp-pop .08s ease-out}@keyframes pp-pop{0%{opacity:0;transform:translateY(-2px)}}:is(.pp-scope,.pp-portal) .pp-menu-item{display:flex;align-items:center;gap:8px;height:26px;padding:0 10px 0 6px;border-radius:var(--radius-sm);white-space:nowrap;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-menu-item .pp-menu-check{width:16px;display:flex;justify-content:center;color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-menu-item .pp-menu-label{flex:1}:is(.pp-scope,.pp-portal) .pp-menu-item .pp-menu-shortcut{color:var(--text-faint);font-size:var(--fs-small);margin-left:24px}:is(.pp-scope,.pp-portal) .pp-menu-item.active,:is(.pp-scope,.pp-portal) .pp-menu-item:hover:not(.disabled){background:var(--accent);color:#fff}:is(.pp-scope,.pp-portal) .pp-menu-item.active .pp-menu-shortcut,:is(.pp-scope,.pp-portal) .pp-menu-item:hover:not(.disabled) .pp-menu-shortcut,:is(.pp-scope,.pp-portal) .pp-menu-item.active .pp-menu-check,:is(.pp-scope,.pp-portal) .pp-menu-item:hover:not(.disabled) .pp-menu-check{color:#ffffffd9}:is(.pp-scope,.pp-portal) .pp-menu-item.disabled{color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-menu-sep{height:1px;background:var(--border-soft);margin:4px 6px}:is(.pp-scope,.pp-portal) .pp-menu-header{padding:6px 10px 3px 28px;font-size:var(--fs-small);color:var(--text-faint);text-transform:uppercase;letter-spacing:.4px}:is(.pp-scope,.pp-portal) .pp-optionsbar{display:flex;align-items:center;gap:10px;height:40px;padding:0 10px;background:var(--panel);border-bottom:1px solid var(--border-soft);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none}:is(.pp-scope,.pp-portal) .pp-optionsbar::-webkit-scrollbar{display:none}:is(.pp-scope,.pp-portal) .pp-optionsbar .pp-opt-tool{display:flex;align-items:center;gap:6px;padding-right:10px;margin-right:2px;border-right:1px solid var(--border-soft);height:26px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-opt-group{display:flex;align-items:center;gap:6px}:is(.pp-scope,.pp-portal) .pp-opt-sep{width:1px;height:22px;background:var(--border-soft);flex:none}:is(.pp-scope,.pp-portal) .pp-opt-label{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-toolbar{width:44px;flex:none;background:var(--panel);border-right:1px solid var(--border-soft);display:flex;flex-direction:column;align-items:center;padding:6px 0;gap:1px;overflow-y:auto;scrollbar-width:none}:is(.pp-scope,.pp-portal) .pp-toolbar::-webkit-scrollbar{display:none}:is(.pp-scope,.pp-portal) .pp-tool-sep{width:26px;height:1px;background:var(--border-soft);margin:4px 0;flex:none}:is(.pp-scope,.pp-portal) .pp-tool-btn{position:relative;width:34px;height:32px;flex:none;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-tool-btn:hover{background:var(--panel-3);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-tool-btn.active{background:var(--accent);color:#fff}:is(.pp-scope,.pp-portal) .pp-tool-btn .pp-tool-more{position:absolute;right:3px;bottom:3px;width:0;height:0;border-left:4px solid transparent;border-bottom:4px solid currentColor;opacity:.7}:is(.pp-scope,.pp-portal) .pp-colors{position:relative;width:40px;height:46px;margin-top:6px;flex:none}:is(.pp-scope,.pp-portal) .pp-colors .pp-swatch-fg,:is(.pp-scope,.pp-portal) .pp-colors .pp-swatch-bg{position:absolute;width:24px;height:24px;border-radius:3px;border:1.5px solid var(--text-dim);box-shadow:0 0 0 1px #00000080;padding:0}:is(.pp-scope,.pp-portal) .pp-colors .pp-swatch-fg{left:3px;top:3px;z-index:2}:is(.pp-scope,.pp-portal) .pp-colors .pp-swatch-bg{left:14px;top:16px;z-index:1}:is(.pp-scope,.pp-portal) .pp-colors .pp-swap,:is(.pp-scope,.pp-portal) .pp-colors .pp-reset{position:absolute;border:none;background:transparent;color:var(--text-dim);padding:0;display:flex}:is(.pp-scope,.pp-portal) .pp-colors .pp-swap{right:-2px;top:0}:is(.pp-scope,.pp-portal) .pp-colors .pp-reset{left:0;bottom:-2px}:is(.pp-scope,.pp-portal) .pp-colors .pp-swap:hover,:is(.pp-scope,.pp-portal) .pp-colors .pp-reset:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-flyout{position:fixed;z-index:900;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:4px;min-width:210px}:is(.pp-scope,.pp-portal) .pp-tabs{display:flex;align-items:flex-end;height:30px;background:var(--panel);border-bottom:1px solid var(--border-soft);padding:0 6px;gap:2px;overflow-x:auto;scrollbar-width:none}:is(.pp-scope,.pp-portal) .pp-tab{display:flex;align-items:center;gap:6px;height:26px;max-width:260px;padding:0 6px 0 12px;background:transparent;border:1px solid transparent;border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;color:var(--text-dim);white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-tab:hover{color:var(--text);background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-tab.active{background:var(--pasteboard);color:var(--text);border-color:var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-tab-name{overflow:hidden;text-overflow:ellipsis}:is(.pp-scope,.pp-portal) .pp-tab-close{display:flex;border:none;background:transparent;padding:2px;border-radius:3px;color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-tab-close:hover{background:var(--panel-4);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-tab-dirty{width:6px;height:6px;border-radius:50%;background:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-canvas-area{position:relative;flex:1;display:flex;flex-direction:column;min-height:0}:is(.pp-scope,.pp-portal) .pp-canvas-grid{flex:1;display:grid;grid-template-columns:0 1fr;grid-template-rows:0 1fr;min-height:0}:is(.pp-scope,.pp-portal) .pp-canvas-grid.with-rulers{grid-template-columns:20px 1fr;grid-template-rows:20px 1fr}:is(.pp-scope,.pp-portal) .pp-ruler-corner{grid-row:1;grid-column:1;background:var(--ruler-bg);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}:is(.pp-scope,.pp-portal) .pp-ruler{position:relative;overflow:hidden;min-width:0;min-height:0}:is(.pp-scope,.pp-portal) .pp-ruler canvas{position:absolute;left:0;top:0;display:block}:is(.pp-scope,.pp-portal) .pp-ruler-x{grid-row:1;grid-column:2;cursor:s-resize}:is(.pp-scope,.pp-portal) .pp-ruler-y{grid-row:2;grid-column:1;cursor:e-resize}:is(.pp-scope,.pp-portal) .pp-viewport{grid-row:2;grid-column:2;position:relative;overflow:hidden;min-width:0;min-height:0;background:var(--pasteboard)}:is(.pp-scope,.pp-portal) .pp-viewport canvas{position:absolute;inset:0;width:100%;height:100%;display:block}:is(.pp-scope,.pp-portal) .pp-viewport .pp-overlay{touch-action:none}:is(.pp-scope,.pp-portal) .pp-gl-error{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center;color:var(--text-dim);z-index:3}:is(.pp-scope,.pp-portal) .pp-gl-error code{color:var(--danger);font-family:var(--mono)}:is(.pp-scope,.pp-portal) .pp-drop-hint{position:absolute;inset:8px;border:2px dashed var(--accent);border-radius:10px;background:#4f8cff14;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:50}:is(.pp-scope,.pp-portal) .pp-drop-hint div{background:var(--panel-2);border:1px solid var(--border);padding:10px 16px;border-radius:var(--radius);box-shadow:var(--shadow-sm);font-size:13px}:is(.pp-scope,.pp-portal) .pp-statusbar{display:flex;align-items:center;gap:14px;height:26px;padding:0 8px;background:var(--panel);border-top:1px solid var(--border-soft);color:var(--text-dim);font-size:var(--fs-small);white-space:nowrap;overflow:hidden}:is(.pp-scope,.pp-portal) .pp-zoom-input{width:64px;height:20px;padding:0 6px;border:1px solid var(--border-soft);background:var(--input);border-radius:var(--radius-sm);color:var(--text);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-status-hint{flex:1;text-align:right;overflow:hidden;text-overflow:ellipsis;color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-text-input{position:fixed;left:0;top:0;width:2px;height:2px;padding:0;border:0;resize:none;overflow:hidden;opacity:0;pointer-events:none;z-index:-1}:is(.pp-scope,.pp-portal) .pp-welcome{position:absolute;inset:0;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:7vh 24px 40px;z-index:2;background:radial-gradient(1200px 600px at 30% -10%,rgba(91,140,255,.12),transparent 60%),radial-gradient(900px 500px at 90% 0%,rgba(163,91,255,.1),transparent 60%),var(--pasteboard)}:is(.pp-scope,.pp-portal) .pp-welcome-inner{width:min(880px,100%)}:is(.pp-scope,.pp-portal) .pp-welcome-head{display:flex;align-items:center;gap:16px}:is(.pp-scope,.pp-portal) .pp-welcome h1{margin:0;font-size:30px;font-weight:700;letter-spacing:-.4px}:is(.pp-scope,.pp-portal) .pp-welcome-head p{margin:2px 0 0;color:var(--text-dim);font-size:14px}:is(.pp-scope,.pp-portal) .pp-welcome-actions{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 30px}:is(.pp-scope,.pp-portal) .pp-welcome h2{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-faint);font-weight:600;margin:0 0 10px}:is(.pp-scope,.pp-portal) .pp-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}:is(.pp-scope,.pp-portal) .pp-preset-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px;background:var(--panel);border:1px solid var(--border-soft);border-radius:8px;text-align:left;transition:border-color .12s,transform .12s,background .12s}:is(.pp-scope,.pp-portal) .pp-preset-card:hover{border-color:var(--accent);background:var(--panel-2);transform:translateY(-1px)}:is(.pp-scope,.pp-portal) .pp-preset-thumb{width:100%;height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}:is(.pp-scope,.pp-portal) .pp-preset-thumb div{max-width:100%;max-height:100%;background:#fff;border-radius:2px;box-shadow:0 1px 4px #0006}:is(.pp-scope,.pp-portal) .pp-preset-name{font-weight:600}:is(.pp-scope,.pp-portal) .pp-preset-size{color:var(--text-faint);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-welcome-tips{margin-top:26px;display:flex;flex-direction:column;gap:8px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-welcome-tips div{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:26px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel-3);color:var(--text);white-space:nowrap;transition:background .1s,border-color .1s}:is(.pp-scope,.pp-portal) .pp-btn:hover:not(:disabled){background:var(--panel-4)}:is(.pp-scope,.pp-portal) .pp-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}:is(.pp-scope,.pp-portal) .pp-btn.primary:hover:not(:disabled){background:var(--accent-hover)}:is(.pp-scope,.pp-portal) .pp-btn.ghost{background:transparent;border-color:transparent}:is(.pp-scope,.pp-portal) .pp-btn.ghost:hover:not(:disabled){background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-btn.danger{color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-btn.big{height:38px;padding:0 18px;font-size:13px;border-radius:var(--radius)}:is(.pp-scope,.pp-portal) .pp-btn:disabled{opacity:.45}:is(.pp-scope,.pp-portal) .pp-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-dim);padding:0;flex:none}:is(.pp-scope,.pp-portal) .pp-icon-btn:hover:not(:disabled){background:var(--panel-3);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-icon-btn.on{background:var(--accent-soft);color:var(--accent);border-color:#4f8cff59}:is(.pp-scope,.pp-portal) .pp-icon-btn.small{width:22px;height:22px}:is(.pp-scope,.pp-portal) .pp-icon-btn:disabled{opacity:.35}:is(.pp-scope,.pp-portal) .pp-commit-btn{color:var(--success)}:is(.pp-scope,.pp-portal) .pp-cancel-btn{color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-input,:is(.pp-scope,.pp-portal) .pp-select{height:24px;padding:0 7px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input);color:var(--text);outline:none;min-width:0}:is(.pp-scope,.pp-portal) .pp-input:focus,:is(.pp-scope,.pp-portal) .pp-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-input.num{text-align:right;font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) textarea.pp-input{height:auto;padding:6px 7px;resize:vertical;user-select:text}:is(.pp-scope,.pp-portal) .pp-select{padding-right:22px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-dim) 50%),linear-gradient(135deg,var(--text-dim) 50%,transparent 50%);background-position:calc(100% - 11px) 50%,calc(100% - 7px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat}:is(.pp-scope,.pp-portal) .pp-numfield{display:inline-flex;align-items:center;gap:5px}:is(.pp-scope,.pp-portal) .pp-numfield .pp-scrub{color:var(--text-dim);cursor:ew-resize;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-numfield .pp-scrub:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-numfield .pp-input{width:58px}:is(.pp-scope,.pp-portal) .pp-numfield .pp-unit{color:var(--text-faint);margin-left:-2px}:is(.pp-scope,.pp-portal) .pp-numfield .pp-numfield-pop{display:flex;align-items:center;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input)}:is(.pp-scope,.pp-portal) .pp-numfield .pp-numfield-pop .pp-input{border:none;background:transparent;box-shadow:none}:is(.pp-scope,.pp-portal) .pp-numfield .pp-numfield-pop button{border:none;background:transparent;color:var(--text-dim);display:flex;align-items:center;padding:0 3px;height:22px;border-left:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-numfield .pp-numfield-pop button:hover{color:var(--text);background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-slider-pop{position:fixed;z-index:950;padding:10px 12px;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);width:190px}:is(.pp-scope,.pp-portal) .pp-range{-webkit-appearance:none;appearance:none;width:100%;height:16px;background:transparent;margin:0}:is(.pp-scope,.pp-portal) .pp-range::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,var(--accent) 0 var(--p, 0%),var(--panel-4) var(--p, 0%))}:is(.pp-scope,.pp-portal) .pp-range::-moz-range-track{height:4px;border-radius:4px;background:var(--panel-4)}:is(.pp-scope,.pp-portal) .pp-range::-moz-range-progress{height:4px;border-radius:4px;background:var(--accent)}:is(.pp-scope,.pp-portal) .pp-range::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;border:none;margin-top:-4px;box-shadow:0 1px 3px #00000080}:is(.pp-scope,.pp-portal) .pp-range::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:none;box-shadow:0 1px 3px #00000080}:is(.pp-scope,.pp-portal) .pp-range.gradient::-webkit-slider-runnable-track{height:8px;background:var(--track);border:1px solid rgba(0,0,0,.35)}:is(.pp-scope,.pp-portal) .pp-range.gradient::-webkit-slider-thumb{margin-top:-3px;border:2px solid #fff;background:transparent;box-shadow:0 0 0 1px #0009}:is(.pp-scope,.pp-portal) .pp-range.gradient::-moz-range-track{height:8px;background:var(--track)}:is(.pp-scope,.pp-portal) .pp-slider-row{display:grid;grid-template-columns:1fr 64px;grid-template-areas:"label value" "slider slider";align-items:center;gap:2px 8px;margin:6px 0 10px}:is(.pp-scope,.pp-portal) .pp-slider-row .pp-slider-label{grid-area:label;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-slider-row .pp-input{grid-area:value;width:100%}:is(.pp-scope,.pp-portal) .pp-slider-row .pp-range{grid-area:slider}:is(.pp-scope,.pp-portal) .pp-check{display:inline-flex;align-items:center;gap:6px;cursor:default;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-check input{appearance:none;-webkit-appearance:none;width:14px;height:14px;margin:0;border-radius:3px;border:1px solid var(--border);background:var(--input);display:grid;place-content:center;flex:none}:is(.pp-scope,.pp-portal) .pp-check input:after{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px);opacity:0}:is(.pp-scope,.pp-portal) .pp-check input:checked{background:var(--accent);border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-check input:checked:after{opacity:1}:is(.pp-scope,.pp-portal) .pp-check input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-segmented{display:inline-flex;background:var(--input);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:1px;gap:1px}:is(.pp-scope,.pp-portal) .pp-segmented button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:24px;height:22px;padding:0 5px;border:none;border-radius:3px;background:transparent;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-segmented button:disabled{opacity:.4;cursor:default}:is(.pp-scope,.pp-portal) .pp-segmented button:hover{color:var(--text);background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-segmented button.on{background:var(--panel-4);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-color-btn{width:24px;height:22px;border-radius:var(--radius-sm);border:1px solid var(--border);padding:2px;background:var(--input);flex:none}:is(.pp-scope,.pp-portal) .pp-color-btn span{display:block;width:100%;height:100%;border-radius:2px}:is(.pp-scope,.pp-portal) .pp-color-btn.none span{background:linear-gradient(to top right,transparent calc(50% - 1px),var(--danger) calc(50% - 1px),var(--danger) calc(50% + 1px),transparent calc(50% + 1px)),#fff}:is(.pp-scope,.pp-portal) .pp-dropdown-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:6px;height:24px;padding:0 6px 0 8px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input);color:var(--text);min-width:0;text-align:left}:is(.pp-scope,.pp-portal) .pp-dropdown-btn:hover{border-color:var(--border)}:is(.pp-scope,.pp-portal) .pp-dropdown-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-dropdown-btn svg{flex:none;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-font-picker{display:inline-flex;align-items:stretch;height:24px;min-width:0;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input)}:is(.pp-scope,.pp-portal) .pp-font-picker:hover,:is(.pp-scope,.pp-portal) .pp-font-picker:focus-within{border-color:var(--border)}:is(.pp-scope,.pp-portal) .pp-font-picker .pp-font-input{flex:1;min-width:0;height:100%;border:0;background:none;padding:0 4px 0 8px}:is(.pp-scope,.pp-portal) .pp-font-open{flex:none;display:grid;place-items:center;width:20px;border:0;background:none;color:var(--text-dim);cursor:pointer}:is(.pp-scope,.pp-portal) .pp-font-menu{max-height:min(70vh,520px)}:is(.pp-scope,.pp-portal) .pp-font-menu .pp-menu-label{font-size:14px}:is(.pp-scope,.pp-portal) .pp-gfonts{display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-gfonts .pp-row{gap:10px;align-items:center}:is(.pp-scope,.pp-portal) .pp-gfonts textarea{width:100%;resize:vertical}:is(.pp-scope,.pp-portal) .pp-gfonts a{color:var(--accent);white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-gfonts-list{list-style:none;margin:0;padding:0;max-height:200px;overflow-y:auto}:is(.pp-scope,.pp-portal) .pp-gfonts-list li{display:flex;align-items:center;justify-content:space-between;padding:3px 4px;border-bottom:1px solid var(--border-soft);font-size:16px}:is(.pp-scope,.pp-portal) .pp-dock{position:relative;flex:none;display:flex;flex-direction:column;background:var(--panel);border-left:1px solid var(--border-soft);min-height:0;overflow:hidden}:is(.pp-scope,.pp-portal) .pp-dock-resizer{position:absolute;left:-3px;top:0;bottom:0;width:6px;cursor:col-resize;z-index:5}:is(.pp-scope,.pp-portal) .pp-dock-resizer:hover{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-dock-scroll{flex:1;display:flex;flex-direction:column;overflow-y:auto;min-height:0}:is(.pp-scope,.pp-portal) .pp-panel-group{display:flex;flex-direction:column;border-bottom:1px solid var(--border-soft);min-height:0;flex:none}:is(.pp-scope,.pp-portal) .pp-panel-group.grow{flex:1 1 auto;min-height:250px}:is(.pp-scope,.pp-portal) .pp-panel-group:not(.grow)>.pp-panel-body{max-height:40vh;overflow-y:auto}:is(.pp-scope,.pp-portal) .pp-panel-group.shrink{flex:0 1 auto;min-height:31px}:is(.pp-scope,.pp-portal) .pp-panel-group.shrink.open{min-height:140px}:is(.pp-scope,.pp-portal) .pp-panel-group.shrink>.pp-panel-body{flex:1 1 auto;min-height:0}:is(.pp-scope,.pp-portal) .pp-panel-group.grow .pp-panel-body{flex:1;min-height:0}:is(.pp-scope,.pp-portal) .pp-panel-tabs{display:flex;align-items:center;height:30px;background:var(--panel-2);border-bottom:1px solid var(--border-soft);padding:0 4px 0 2px;gap:0;flex:none}:is(.pp-scope,.pp-portal) .pp-panel-tab{height:30px;padding:0 10px;border:none;background:transparent;color:var(--text-faint);font-weight:600;font-size:var(--fs-small);letter-spacing:.2px;border-bottom:2px solid transparent}:is(.pp-scope,.pp-portal) .pp-panel-tab:hover{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-panel-tab.active{color:var(--text);border-bottom-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-panel-tabs .pp-spacer{flex:1}:is(.pp-scope,.pp-portal) .pp-panel-body{display:flex;flex-direction:column;min-height:0}:is(.pp-scope,.pp-portal) .pp-panel-pad{padding:10px}:is(.pp-scope,.pp-portal) .pp-panel-empty{padding:18px 12px;color:var(--text-faint);text-align:center;line-height:1.5}:is(.pp-scope,.pp-portal) .pp-layers{display:flex;flex-direction:column;min-height:0;flex:1}:is(.pp-scope,.pp-portal) .pp-layers-top{display:flex;flex-direction:column;gap:6px;padding:8px;border-bottom:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-layers-row{display:flex;align-items:center;gap:6px}:is(.pp-scope,.pp-portal) .pp-layers-row .pp-dropdown-btn{flex:1}:is(.pp-scope,.pp-portal) .pp-lock-btns{display:flex;gap:1px}:is(.pp-scope,.pp-portal) .pp-layer-list{flex:1;overflow-y:auto;min-height:60px;padding:2px 0;outline:none}:is(.pp-scope,.pp-portal) .pp-layer{position:relative;display:flex;align-items:center;height:40px;padding-right:6px;gap:4px;border-bottom:1px solid var(--border-soft);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-layer:hover{background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-layer.selected{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-layer.active{background:#4f8cff47}:is(.pp-scope,.pp-portal) .pp-layer.hidden-layer .pp-layer-name,:is(.pp-scope,.pp-portal) .pp-layer.hidden-layer .pp-layer-thumb{opacity:.45}:is(.pp-scope,.pp-portal) .pp-layer .pp-eye{width:28px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-dim);border:none;background:transparent;flex:none;border-right:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-layer .pp-eye:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-layer .pp-eye.off{color:transparent}:is(.pp-scope,.pp-portal) .pp-layer .pp-eye.off:hover{color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-layer-indent{flex:none}:is(.pp-scope,.pp-portal) .pp-layer-chevron{display:flex;border:none;background:transparent;color:var(--text-dim);padding:0;width:14px;flex:none}:is(.pp-scope,.pp-portal) .pp-layer-thumb{width:32px;height:32px;flex:none;border-radius:2px;border:1px solid var(--border);background:var(--checker);display:flex;align-items:center;justify-content:center;overflow:hidden}:is(.pp-scope,.pp-portal) .pp-layer-thumb canvas{max-width:100%;max-height:100%;display:block}:is(.pp-scope,.pp-portal) .pp-layer-thumb.icon{background:var(--panel-3);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-layer-thumb.target{outline:2px solid var(--text);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-layer-thumb.mask-thumb{background:#000}:is(.pp-scope,.pp-portal) .pp-layer-thumb.disabled-mask{position:relative}:is(.pp-scope,.pp-portal) .pp-layer-thumb.disabled-mask:after{content:"";position:absolute;inset:0;background:linear-gradient(to top right,transparent calc(50% - 1px),var(--danger) calc(50% - 1px),var(--danger) calc(50% + 1px),transparent calc(50% + 1px))}:is(.pp-scope,.pp-portal) .pp-layer-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:4px}:is(.pp-scope,.pp-portal) .pp-layer-name input{width:100%;height:22px}:is(.pp-scope,.pp-portal) .pp-layer-badges{display:flex;gap:4px;color:var(--text-faint);flex:none}:is(.pp-scope,.pp-portal) .pp-layer-clip{color:var(--text-dim);display:flex;flex:none;margin-right:-2px}:is(.pp-scope,.pp-portal) .pp-layer.drop-above:before,:is(.pp-scope,.pp-portal) .pp-layer.drop-below:after{content:"";position:absolute;left:0;right:0;height:2px;background:var(--accent);z-index:2}:is(.pp-scope,.pp-portal) .pp-layer.drop-above:before{top:-1px}:is(.pp-scope,.pp-portal) .pp-layer.drop-below:after{bottom:-1px}:is(.pp-scope,.pp-portal) .pp-layer.drop-into{box-shadow:inset 0 0 0 2px var(--accent)}:is(.pp-scope,.pp-portal) .pp-layer-tag{width:3px;align-self:stretch;flex:none}:is(.pp-scope,.pp-portal) .pp-panel-footer{display:flex;align-items:center;justify-content:flex-end;gap:2px;padding:4px 6px;border-top:1px solid var(--border-soft);background:var(--panel);flex:none}:is(.pp-scope,.pp-portal) .pp-history{max-height:260px;overflow-y:auto}:is(.pp-scope,.pp-portal) .pp-history-item{display:flex;align-items:center;gap:8px;height:26px;padding:0 10px;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-history-item:hover{background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-history-item.current{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-history-item.future{color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-history-item svg{color:var(--text-dim);flex:none}:is(.pp-scope,.pp-portal) .pp-history-item{padding-left:4px}:is(.pp-scope,.pp-portal) .pp-hist-src{width:18px;height:18px;flex:none;display:grid;place-items:center;border:1px solid transparent;border-radius:3px;background:transparent;padding:0;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-hist-src:hover{border-color:var(--border)}:is(.pp-scope,.pp-portal) .pp-hist-src.on{border-color:var(--border);background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-history-item .pp-hist-src.on svg{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-ruler-readout{font-variant-numeric:tabular-nums;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-color-panel{padding:10px;display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-sv{position:relative;width:100%;height:104px;border-radius:var(--radius-sm);cursor:crosshair;touch-action:none;border:1px solid rgba(0,0,0,.4)}:is(.pp-scope,.pp-portal) .pp-sv-cursor{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #0009,inset 0 0 0 1px #0006;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-hue{position:relative;height:12px;border-radius:6px;background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red);cursor:pointer;touch-action:none;border:1px solid rgba(0,0,0,.4)}:is(.pp-scope,.pp-portal) .pp-hue-cursor{position:absolute;top:-2px;width:8px;height:14px;margin-left:-4px;border-radius:3px;border:2px solid #fff;box-shadow:0 0 0 1px #0009;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-color-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}:is(.pp-scope,.pp-portal) .pp-color-fields label{display:flex;align-items:center;gap:4px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-color-fields .pp-input{width:100%}:is(.pp-scope,.pp-portal) .pp-color-head{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-color-head .pp-input{flex:1;font-family:var(--mono);text-transform:uppercase}:is(.pp-scope,.pp-portal) .pp-fgbg-mini{display:flex;gap:4px}:is(.pp-scope,.pp-portal) .pp-fgbg-mini button{width:26px;height:22px;border-radius:3px;border:1px solid var(--border);padding:0}:is(.pp-scope,.pp-portal) .pp-fgbg-mini button.on{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(18px,1fr));gap:3px;padding:10px}:is(.pp-scope,.pp-portal) .pp-swatch{aspect-ratio:1;border-radius:3px;border:1px solid rgba(0,0,0,.45);padding:0;box-shadow:inset 0 0 0 1px #ffffff0f}:is(.pp-scope,.pp-portal) .pp-swatch:hover{transform:scale(1.15);z-index:1;box-shadow:0 0 0 1px #fff}:is(.pp-scope,.pp-portal) .pp-swatch.add{display:flex;align-items:center;justify-content:center;background:transparent;color:var(--text-dim);border:1px dashed var(--border)}:is(.pp-scope,.pp-portal) .pp-section-label{font-size:var(--fs-small);color:var(--text-faint);padding:8px 10px 0;text-transform:uppercase;letter-spacing:.4px}:is(.pp-scope,.pp-portal) .pp-navigator{padding:10px;display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-nav-view{position:relative;display:flex;align-items:center;justify-content:center;height:150px;background:var(--input);border-radius:var(--radius-sm);overflow:hidden;touch-action:none}:is(.pp-scope,.pp-portal) .pp-nav-view canvas{max-width:100%;max-height:100%;box-shadow:0 1px 4px #0009;background:var(--checker)}:is(.pp-scope,.pp-portal) .pp-nav-rect{position:absolute;border:1.5px solid var(--danger);box-shadow:0 0 0 1px #00000059;cursor:move}:is(.pp-scope,.pp-portal) .pp-nav-zoom{display:flex;align-items:center;gap:6px}:is(.pp-scope,.pp-portal) .pp-nav-zoom .pp-range{flex:1}:is(.pp-scope,.pp-portal) .pp-histogram{padding:10px}:is(.pp-scope,.pp-portal) .pp-histogram canvas{width:100%;height:110px;display:block;background:var(--input);border-radius:var(--radius-sm)}:is(.pp-scope,.pp-portal) .pp-histo-stats{display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;margin-top:8px;color:var(--text-dim);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-info{padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}:is(.pp-scope,.pp-portal) .pp-info div{display:flex;justify-content:space-between;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-info b{color:var(--text);font-weight:500;font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) .pp-props{padding:10px;display:flex;flex-direction:column;gap:8px;container-type:inline-size}:is(.pp-scope,.pp-portal) .pp-props-title{display:flex;align-items:center;gap:8px;font-weight:600;margin-bottom:2px}:is(.pp-scope,.pp-portal) .pp-props-title svg{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-props-grid{display:grid;grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);gap:6px 8px;align-items:center}@container (max-width: 330px){:is(.pp-scope,.pp-portal) .pp-props-grid{grid-template-columns:auto minmax(0,1fr)}}:is(.pp-scope,.pp-portal) .pp-props-grid label{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-props-grid .pp-input{width:100%}:is(.pp-scope,.pp-portal) .pp-props-row{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-props-row>label:first-child{color:var(--text-dim);min-width:70px}:is(.pp-scope,.pp-portal) .pp-props-row .grow{flex:1}:is(.pp-scope,.pp-portal) .pp-adj-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:10px}:is(.pp-scope,.pp-portal) .pp-adj-btn{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-adj-btn:hover{border-color:var(--accent);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-modal-backdrop{position:fixed;inset:0;z-index:800;background:#0000002e}:is(.pp-scope,.pp-portal) .pp-dialog{position:fixed;z-index:810;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);display:flex;flex-direction:column;max-width:calc(100vw - 20px);max-height:calc(100vh - 20px);animation:pp-pop .1s ease-out}:is(.pp-scope,.pp-portal) .pp-dialog-head{display:flex;align-items:center;gap:8px;height:38px;padding:0 8px 0 14px;border-bottom:1px solid var(--border-soft);font-weight:600;cursor:move;flex:none}:is(.pp-scope,.pp-portal) .pp-dialog-head .pp-spacer{flex:1}:is(.pp-scope,.pp-portal) .pp-dialog-body{padding:14px;overflow:auto;min-height:0}:is(.pp-scope,.pp-portal) .pp-dialog-foot{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--border-soft);flex:none}:is(.pp-scope,.pp-portal) .pp-dialog-foot .pp-spacer{flex:1}:is(.pp-scope,.pp-portal) .pp-form{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;align-items:center}:is(.pp-scope,.pp-portal) .pp-form>label{color:var(--text-dim);white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-form-row{display:flex;align-items:center;gap:6px}:is(.pp-scope,.pp-portal) .pp-form .full{grid-column:1 / -1}:is(.pp-scope,.pp-portal) .pp-fieldset{border:1px solid var(--border-soft);border-radius:var(--radius);padding:10px 12px;margin:0 0 12px}:is(.pp-scope,.pp-portal) .pp-fieldset legend{padding:0 6px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-hint-text{color:var(--text-faint);font-size:var(--fs-small);line-height:1.45}:is(.pp-scope,.pp-portal) .pp-new-doc{display:grid;grid-template-columns:200px 1fr;gap:16px;min-width:min(640px,90vw)}:is(.pp-scope,.pp-portal) .pp-preset-list{display:flex;flex-direction:column;max-height:340px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:var(--radius);padding:4px}:is(.pp-scope,.pp-portal) .pp-preset-list .cat{color:var(--text-faint);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.4px;padding:8px 8px 3px}:is(.pp-scope,.pp-portal) .pp-preset-list button{display:flex;justify-content:space-between;gap:12px;width:100%;border:none;background:transparent;padding:5px 8px;border-radius:var(--radius-sm);text-align:left;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-preset-list button span:last-child{color:var(--text-faint);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-preset-list button:hover{background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-preset-list button.on{background:var(--accent);color:#fff}:is(.pp-scope,.pp-portal) .pp-preset-list button.on span:last-child{color:#fffc}:is(.pp-scope,.pp-portal) .pp-preset-list .pp-clip-preset{margin-bottom:2px;border-bottom:1px solid var(--border-soft);border-radius:var(--radius-sm) var(--radius-sm) 0 0}:is(.pp-scope,.pp-portal) .pp-preset-list .pp-clip-preset span:first-child{display:inline-flex;align-items:center;gap:6px}:is(.pp-scope,.pp-portal) .pp-clip-row{display:flex;align-items:center;gap:10px}:is(.pp-scope,.pp-portal) .pp-clip-thumb{max-width:96px;max-height:64px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:repeating-conic-gradient(#8884 0% 25%,transparent 0% 50%) 0 0 / 10px 10px}:is(.pp-scope,.pp-portal) .pp-warn-text{color:var(--warning, #e0a040);margin-top:6px}:is(.pp-scope,.pp-portal) .pp-curve-editor,:is(.pp-scope,.pp-portal) .pp-levels-histo{position:relative;width:256px;height:256px;background:var(--input);border:1px solid var(--border);border-radius:2px;touch-action:none}:is(.pp-scope,.pp-portal) .pp-curve-editor canvas,:is(.pp-scope,.pp-portal) .pp-levels-histo canvas{display:block;width:100%;height:100%}:is(.pp-scope,.pp-portal) .pp-levels-histo{height:120px}:is(.pp-scope,.pp-portal) .pp-levels-slider{position:relative;height:14px;width:256px;margin-top:2px}:is(.pp-scope,.pp-portal) .pp-levels-handle{position:absolute;top:0;width:12px;margin-left:-6px;height:12px;clip-path:polygon(50% 0,100% 100%,0 100%);border:none;padding:0;cursor:ew-resize}:is(.pp-scope,.pp-portal) .pp-gradient-bar{height:14px;border-radius:3px;border:1px solid var(--border)}:is(.pp-scope,.pp-portal) .pp-picker{display:grid;grid-template-columns:256px 20px auto;gap:14px}:is(.pp-scope,.pp-portal) .pp-picker .pp-sv{width:256px;height:256px}:is(.pp-scope,.pp-portal) .pp-hue-v{position:relative;width:20px;height:256px;border-radius:4px;background:linear-gradient(to bottom,red,#f0f,#00f,#0ff,#0f0,#ff0,red);touch-action:none;border:1px solid rgba(0,0,0,.4)}:is(.pp-scope,.pp-portal) .pp-hue-v .pp-hue-cursor{left:-3px;right:-3px;width:auto;height:6px;margin:-3px 0 0;top:0}:is(.pp-scope,.pp-portal) .pp-picker-side{display:flex;flex-direction:column;gap:10px;min-width:190px}:is(.pp-scope,.pp-portal) .pp-picker-compare{display:flex;flex-direction:column;width:70px;border:1px solid var(--border);border-radius:3px;overflow:hidden}:is(.pp-scope,.pp-portal) .pp-picker-compare div{height:30px}:is(.pp-scope,.pp-portal) .pp-picker-fields{display:grid;grid-template-columns:auto 1fr auto auto 1fr;gap:5px 6px;align-items:center}:is(.pp-scope,.pp-portal) .pp-picker-fields label{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-picker-fields .pp-input{width:54px}:is(.pp-scope,.pp-portal) .pp-toasts{position:fixed;right:16px;bottom:40px;z-index:2000;display:flex;flex-direction:column;gap:8px;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-toast{min-width:220px;max-width:380px;padding:10px 14px;border-radius:var(--radius);background:var(--panel-2);border:1px solid var(--border);box-shadow:var(--shadow);border-left:3px solid var(--accent);animation:pp-toast-in .18s ease-out}:is(.pp-scope,.pp-portal) .pp-toast.error{border-left-color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-toast.success{border-left-color:var(--success)}@keyframes pp-toast-in{0%{opacity:0;transform:translate(10px)}}:is(.pp-scope,.pp-portal) .pp-tooltip{position:fixed;z-index:3000;pointer-events:none;background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:5px 8px;max-width:280px;font-size:var(--fs-small);line-height:1.4}:is(.pp-scope,.pp-portal) .pp-tooltip kbd{font-family:var(--font);color:var(--text-dim);margin-left:6px}:is(.pp-scope,.pp-portal) .pp-busy{position:fixed;inset:0;z-index:4000;display:flex;align-items:center;justify-content:center;background:#00000040;cursor:progress}:is(.pp-scope,.pp-portal) .pp-busy div{background:var(--panel-2);border:1px solid var(--border);padding:12px 18px;border-radius:var(--radius);box-shadow:var(--shadow);display:flex;align-items:center;gap:10px}:is(.pp-scope,.pp-portal) .pp-spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--panel-4);border-top-color:var(--accent);animation:pp-spin .8s linear infinite}@keyframes pp-spin{to{transform:rotate(360deg)}}:is(.pp-scope,.pp-portal) .pp-shortcuts{columns:2;column-gap:30px;width:min(720px,85vw)}:is(.pp-scope,.pp-portal) .pp-shortcuts section{break-inside:avoid;margin-bottom:14px}:is(.pp-scope,.pp-portal) .pp-shortcuts h4{margin:0 0 6px;color:var(--text-dim);font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.4px}:is(.pp-scope,.pp-portal) .pp-shortcuts div{display:flex;justify-content:space-between;gap:12px;padding:2px 0}:is(.pp-scope,.pp-portal) .pp-shortcuts kbd{font-family:var(--font);color:var(--text-dim);background:var(--panel-2);border:1px solid var(--border-soft);border-radius:3px;padding:0 5px}:is(.pp-scope,.pp-portal) .pp-filter-preview{width:220px;height:160px;background:var(--checker);border:1px solid var(--border);border-radius:3px;overflow:hidden}@media(max-width:900px){:is(.pp-scope,.pp-portal) .pp-menubar .pp-brand span{display:none}:is(.pp-scope,.pp-portal) .pp-new-doc{grid-template-columns:1fr}}:is(.pp-scope,.pp-portal) .pp-range.bipolar::-webkit-slider-runnable-track{background:var(--trackbg)}:is(.pp-scope,.pp-portal) .pp-range.bipolar::-moz-range-track{background:var(--trackbg)}:is(.pp-scope,.pp-portal) .pp-range.bipolar::-moz-range-progress{background:transparent}:is(.pp-scope,.pp-portal) .pp-grad-ico{display:inline-block;width:14px;height:14px;border-radius:2px;border:1px solid rgba(0,0,0,.4)}:is(.pp-scope,.pp-portal) .pp-grad-chip{display:inline-block;width:14px;height:14px;border-radius:2px;border:1px solid rgba(0,0,0,.35);background-color:#fff;flex:none}:is(.pp-scope,.pp-portal) .pp-grad-chip.wide{width:36px}:is(.pp-scope,.pp-portal) .pp-recovery-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:6px;max-height:220px;overflow:auto}:is(.pp-scope,.pp-portal) .pp-recovery-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 10px;border-bottom:1px solid var(--border)}:is(.pp-scope,.pp-portal) .pp-recovery-list li:last-child{border-bottom:0}:is(.pp-scope,.pp-portal) .pp-recovery-list .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-recovery-list .meta{color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) .pp-fx{display:grid;grid-template-columns:190px 1fr;gap:14px;min-height:380px}:is(.pp-scope,.pp-portal) .pp-fx-list{display:flex;flex-direction:column;border:1px solid var(--border-soft);border-radius:6px;padding:4px;background:var(--panel-2);align-self:start}:is(.pp-scope,.pp-portal) .pp-fx-item{display:flex;align-items:center;gap:2px;height:28px;padding:0 6px;border-radius:var(--radius-sm);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-fx-item:hover{background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-fx-item.active{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-fx-item.heading{border:none;background:transparent;font-weight:600;text-align:left;margin-bottom:4px;border-bottom:1px solid var(--border-soft);border-radius:0}:is(.pp-scope,.pp-portal) .pp-fx-item.heading.active{color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-fx-name{flex:1;border:none;background:transparent;color:inherit;text-align:left;height:100%;padding:0 2px}:is(.pp-scope,.pp-portal) .pp-fx-body h4{margin:2px 0 10px;font-size:13px}:is(.pp-scope,.pp-portal) .pp-fx-row{display:flex;align-items:center;gap:10px;margin:6px 0 10px}:is(.pp-scope,.pp-portal) .pp-fx-row>.pp-slider-label{color:var(--text-dim);min-width:76px}:is(.pp-scope,.pp-portal) .pp-fx-off{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;margin-bottom:10px;border-radius:6px;background:var(--panel-2);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-angle-dial{position:relative;width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--input);flex:none;cursor:pointer;touch-action:none}:is(.pp-scope,.pp-portal) .pp-angle-dial .hand{position:absolute;left:50%;top:50%;width:16px;height:1.5px;margin-top:-.75px;background:var(--text);transform-origin:0 50%}:is(.pp-scope,.pp-portal) .pp-angle-dial .dot{position:absolute;width:6px;height:6px;margin:-3px 0 0 -3px;border-radius:50%;background:var(--accent)}:is(.pp-scope,.pp-portal) .pp-fx-badge{display:inline-flex;align-items:center;gap:1px;height:18px;padding:0 3px 0 5px;border:1px solid var(--border-soft);border-radius:9px;background:transparent;color:var(--text-dim);font-style:italic;font-weight:700;font-size:10.5px;font-family:Georgia,Times New Roman,serif}:is(.pp-scope,.pp-portal) .pp-fx-badge:hover{color:var(--text);border-color:var(--border)}:is(.pp-scope,.pp-portal) .pp-fx-badge.off{opacity:.45}:is(.pp-scope,.pp-portal) .pp-fx-glyph{font-style:italic;font-weight:700;font-family:Georgia,Times New Roman,serif;font-size:13px;line-height:1}:is(.pp-scope,.pp-portal) .pp-fx-rows{border-bottom:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-fx-rows.hidden-layer{opacity:.5}:is(.pp-scope,.pp-portal) .pp-fx-subrow{display:flex;align-items:center;height:22px;gap:4px;font-size:var(--fs-small);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-fx-subrow:hover{background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-fx-subrow.muted .pp-fx-subname{text-decoration:line-through;opacity:.6}:is(.pp-scope,.pp-portal) .pp-fx-subrow .pp-eye{width:28px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-dim);border:none;border-right:1px solid var(--border-soft);background:transparent;flex:none}:is(.pp-scope,.pp-portal) .pp-fx-subrow .pp-eye.off{color:transparent}:is(.pp-scope,.pp-portal) .pp-fx-subrow .pp-eye.off:hover{color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-fx-icon{color:var(--text-faint);flex:none}:is(.pp-scope,.pp-portal) .pp-fx-del{margin-left:auto;margin-right:6px;border:none;background:transparent;color:var(--text-faint);padding:2px;display:flex;opacity:0;flex:none}:is(.pp-scope,.pp-portal) .pp-fx-subrow:hover .pp-fx-del,:is(.pp-scope,.pp-portal) .pp-fx-del:focus-visible{opacity:1}:is(.pp-scope,.pp-portal) .pp-fx-del:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-fx-subname{border:none;background:transparent;color:inherit;padding:0 2px;height:100%;text-align:left;font-size:inherit}:is(.pp-scope,.pp-portal) .pp-fx-subname:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-grad-picker{display:inline-flex;align-items:stretch;height:24px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;flex:none}:is(.pp-scope,.pp-portal) .pp-grad-bar-btn{flex:1;border:none;padding:0;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-grad-bar-btn:hover{box-shadow:inset 0 0 0 1px var(--accent)}:is(.pp-scope,.pp-portal) .pp-grad-arrow{width:20px;border:none;border-left:1px solid var(--border);background:var(--input);color:var(--text-dim);display:flex;align-items:center;justify-content:center;padding:0}:is(.pp-scope,.pp-portal) .pp-grad-arrow:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-grad-pop{padding:8px;width:292px}:is(.pp-scope,.pp-portal) .pp-grad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:6px}:is(.pp-scope,.pp-portal) .pp-grad-cell{position:relative}:is(.pp-scope,.pp-portal) .pp-grad-swatch{width:100%;height:26px;border:1px solid var(--border);border-radius:3px;padding:0;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-grad-swatch:hover{border-color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-grad-swatch.selected{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-grad-del{position:absolute;top:-5px;right:-5px;width:15px;height:15px;border-radius:50%;border:1px solid var(--border);background:var(--panel);color:var(--text-dim);display:none;align-items:center;justify-content:center;padding:0}:is(.pp-scope,.pp-portal) .pp-grad-cell:hover .pp-grad-del{display:flex}:is(.pp-scope,.pp-portal) .pp-pattern-picker{display:inline-flex;align-items:stretch;height:28px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;flex:none}:is(.pp-scope,.pp-portal) .pp-pattern-btn{width:40px;border:none;padding:0;cursor:pointer;image-rendering:pixelated}:is(.pp-scope,.pp-portal) .pp-pattern-btn:hover{box-shadow:inset 0 0 0 1px var(--accent)}:is(.pp-scope,.pp-portal) .pp-pattern-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;max-height:260px;overflow:auto;padding:2px}:is(.pp-scope,.pp-portal) .pp-pattern-swatch{width:100%;aspect-ratio:1;border:1px solid var(--border);border-radius:3px;padding:0;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-pattern-swatch:hover{border-color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-pattern-swatch.selected{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-gradedit{display:flex;flex-direction:column;gap:12px}:is(.pp-scope,.pp-portal) .pp-gradedit-presets{max-height:130px;overflow:auto;padding:6px;border:1px solid var(--border-soft);border-radius:6px;background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-gradedit-name{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-gradedit-name label{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-gradedit-name .pp-input{flex:1}:is(.pp-scope,.pp-portal) .pp-gradedit-editor{padding:0 10px;user-select:none;touch-action:none}:is(.pp-scope,.pp-portal) .pp-gradedit-row{position:relative;height:20px;cursor:copy}:is(.pp-scope,.pp-portal) .pp-gradedit-bar{height:34px;border:1px solid var(--border);border-radius:3px}:is(.pp-scope,.pp-portal) .pp-stop{position:absolute;width:13px;height:17px;margin-left:-6.5px;padding:0;border:none;background:transparent;cursor:ew-resize}:is(.pp-scope,.pp-portal) .pp-stop:before{content:"";position:absolute;inset:0;background:var(--text-dim);clip-path:polygon(50% 0,100% 38%,100% 100%,0 100%,0 38%)}:is(.pp-scope,.pp-portal) .pp-stop:after{content:"";position:absolute;inset:7px 2px 2px;background:var(--stop);border-radius:1px}:is(.pp-scope,.pp-portal) .pp-stop.color{top:2px}:is(.pp-scope,.pp-portal) .pp-stop.opacity{bottom:2px;transform:scaleY(-1)}:is(.pp-scope,.pp-portal) .pp-stop.opacity:after{background:linear-gradient(var(--stop),var(--stop)),#fff}:is(.pp-scope,.pp-portal) .pp-stop.selected:before{background:var(--accent)}:is(.pp-scope,.pp-portal) .pp-stop.removing{opacity:.35}:is(.pp-scope,.pp-portal) .pp-mid{position:absolute;top:6px;width:8px;height:8px;margin-left:-4px;background:var(--text-faint);transform:rotate(45deg);cursor:ew-resize}:is(.pp-scope,.pp-portal) .pp-gradedit-row.top .pp-mid{top:8px}:is(.pp-scope,.pp-portal) .pp-mid:hover{background:var(--accent)}:is(.pp-scope,.pp-portal) .pp-gradedit-props{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1px solid var(--border-soft);border-radius:6px;padding:8px 10px 10px;margin:0;min-height:44px}:is(.pp-scope,.pp-portal) .pp-gradedit-props legend{color:var(--text-dim);padding:0 4px}:is(.pp-scope,.pp-portal) .pp-brush-btn{width:auto!important;padding:0 4px 0 2px;gap:1px;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-brush-pop{width:336px;padding:8px 10px 10px;display:flex;flex-direction:column;gap:6px}:is(.pp-scope,.pp-portal) .pp-brush-head .pp-slider-row{margin:2px 0 6px}:is(.pp-scope,.pp-portal) .pp-brush-list{max-height:330px;overflow-y:auto;border:1px solid var(--border-soft);border-radius:6px;background:var(--panel-2);padding:3px}:is(.pp-scope,.pp-portal) .pp-brush-item{display:grid;grid-template-columns:150px 1fr auto auto;align-items:center;gap:8px;padding:2px 6px 2px 2px;border-radius:var(--radius-sm);cursor:pointer}:is(.pp-scope,.pp-portal) .pp-brush-item:hover{background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-brush-item.active{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-brush-item .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-brush-item .size{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-brush-item .del{visibility:hidden}:is(.pp-scope,.pp-portal) .pp-brush-item:hover .del{visibility:visible}:is(.pp-scope,.pp-portal) .pp-brush-sep{padding:6px 6px 2px;color:var(--text-faint);font-size:var(--fs-small);font-weight:600}:is(.pp-scope,.pp-portal) .pp-brush-foot{display:flex;justify-content:space-between;gap:6px}:is(.pp-scope,.pp-portal) .pp-brush-foot .pp-btn{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:0 8px}:is(.pp-scope,.pp-portal) .pp-brush-name{display:flex;gap:6px;width:100%}:is(.pp-scope,.pp-portal) .pp-brush-name .pp-input{flex:1}:is(.pp-scope,.pp-portal) .pp-stroke-preview,:is(.pp-scope,.pp-portal) .pp-tip-thumb{display:block;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-brushset{display:grid;grid-template-columns:1fr 1fr;gap:18px}:is(.pp-scope,.pp-portal) .pp-brushset h4{margin:4px 0 6px;font-size:12px}:is(.pp-scope,.pp-portal) .pp-brushset section>h4:not(:first-child){margin-top:14px}:is(.pp-scope,.pp-portal) .pp-tip-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:8px}:is(.pp-scope,.pp-portal) .pp-tip-btn{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--panel-2);padding:0}:is(.pp-scope,.pp-portal) .pp-tip-btn:hover{border-color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-tip-btn.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.pp-scope,.pp-portal) .pp-brushset-preview{margin-top:12px;border:1px solid var(--border-soft);border-radius:6px;background:var(--panel-2);display:flex;justify-content:center}:is(.pp-scope,.pp-portal) .pp-paths{display:flex;flex-direction:column;height:100%;min-height:0}:is(.pp-scope,.pp-portal) .pp-path-list{flex:1;overflow-y:auto;min-height:0}:is(.pp-scope,.pp-portal) .pp-path-row{display:flex;align-items:center;gap:8px;height:40px;padding:0 8px;border-bottom:1px solid var(--border-soft);cursor:default}:is(.pp-scope,.pp-portal) .pp-path-row:hover{background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-path-row.active{background:#4f8cff47}:is(.pp-scope,.pp-portal) .pp-path-thumb{flex:none;border:1px solid var(--border-soft);border-radius:2px;background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-path-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-path-name.work{font-style:italic}:is(.pp-scope,.pp-portal) .pp-path-row .pp-input{flex:1}:is(.pp-scope,.pp-portal) .pp-path-meta{color:var(--text-faint);font-size:var(--fs-small);font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) .pp-paths-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 18px;color:var(--text-faint);text-align:center;line-height:1.45}:is(.pp-scope,.pp-portal) .pp-layer-thumb{position:relative}:is(.pp-scope,.pp-portal) .pp-smart-badge{position:absolute;right:0;bottom:0;width:15px;height:15px;display:flex;align-items:center;justify-content:center;border-radius:3px;background:var(--panel);border:1px solid var(--border);color:var(--text);pointer-events:none}:is(.pp-scope,.pp-portal) .pp-smart-badge.vector{background:#ff7a1a;border-color:#ff7a1a;color:#fff}@media(max-height:860px){:is(.pp-scope,.pp-portal) .pp-toolbar{width:74px;flex-direction:row;flex-wrap:wrap;align-content:flex-start;justify-content:center;gap:1px 2px}:is(.pp-scope,.pp-portal) .pp-toolbar .pp-tool-sep{width:60px;margin:3px 0}:is(.pp-scope,.pp-portal) .pp-toolbar .pp-colors{margin:4px 15px}}:is(.pp-scope,.pp-portal) .pp-channel-swatch{width:44px;height:30px;flex:none;border-radius:3px;border:1px solid var(--border);opacity:.85}:is(.pp-scope,.pp-portal) .pp-liquify{display:flex;gap:12px;align-items:flex-start}:is(.pp-scope,.pp-portal) .pp-liquify-tools{display:flex;flex-direction:column;gap:4px}:is(.pp-scope,.pp-portal) .pp-liquify-stage{position:relative;flex:none;background:repeating-conic-gradient(#cfcfcf 0% 25%,#fff 0% 50%) 0 0 / 16px 16px;box-shadow:0 0 0 1px var(--border)}:is(.pp-scope,.pp-portal) .pp-liquify-stage canvas{position:absolute;inset:0;display:block}:is(.pp-scope,.pp-portal) .pp-liquify-overlay{cursor:none;touch-action:none}:is(.pp-scope,.pp-portal) .pp-liquify-props{width:220px;flex:none;display:flex;flex-direction:column;gap:6px}:is(.pp-scope,.pp-portal) .pp-shape-pick{display:inline-flex;align-items:center;gap:3px;padding:2px 6px}:is(.pp-scope,.pp-portal) .pp-shape-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}:is(.pp-scope,.pp-portal) .pp-shape-cell{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--border);border-radius:4px;background:var(--panel-2);color:var(--text);padding:0;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-shape-cell:hover{border-color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-shape-cell.selected{outline:2px solid var(--accent);outline-offset:1px}:is(.pp-scope,.pp-portal) .pp-palette{position:fixed;top:12vh;left:50%;transform:translate(-50%);width:min(620px,92vw);max-height:64vh;display:flex;flex-direction:column;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:0 18px 50px #00000073;z-index:1001;overflow:hidden}:is(.pp-scope,.pp-portal) .pp-palette-input{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--border-soft);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-palette-input input{flex:1;border:none;outline:none;background:transparent;color:var(--text);font-size:15px}:is(.pp-scope,.pp-portal) .pp-palette-list{overflow-y:auto;padding:4px}:is(.pp-scope,.pp-portal) .pp-palette-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-palette-item.sel{background:var(--accent);color:#fff}:is(.pp-scope,.pp-portal) .pp-palette-item.disabled{opacity:.45}:is(.pp-scope,.pp-portal) .pp-palette-icon{width:18px;display:grid;place-items:center;flex:none}:is(.pp-scope,.pp-portal) .pp-palette-label{flex:none}:is(.pp-scope,.pp-portal) .pp-palette-path{flex:1;color:var(--text-faint);font-size:var(--fs-small);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-palette-item.sel .pp-palette-path{color:#ffffffbf}:is(.pp-scope,.pp-portal) .pp-palette-ws{display:inline-flex;flex:none;color:#4f8cff;opacity:.85}:is(.pp-scope,.pp-portal) .pp-palette-ws.vector{color:#ff7a1a}:is(.pp-scope,.pp-portal) .pp-palette-item.sel .pp-palette-ws{color:#fff}:is(.pp-scope,.pp-portal) .pp-palette-item kbd{font-family:inherit;font-size:var(--fs-small);color:var(--text-dim);border:1px solid var(--border);border-radius:4px;padding:0 5px}:is(.pp-scope,.pp-portal) .pp-palette-item.sel kbd{color:#fff;border-color:#ffffff80}:is(.pp-scope,.pp-portal) .pp-spin{animation:pp-spin .9s linear infinite}:is(.pp-scope,.pp-portal) .pp-btn.small{height:22px;padding:0 8px;font-size:var(--fs-small);gap:4px}:is(.pp-scope,.pp-portal) .pp-ai-toggle{display:inline-flex;align-items:center;gap:5px;height:22px;margin-right:8px;padding:0 9px;border-radius:11px;border:1px solid var(--border);background:var(--panel-2);color:var(--text-dim);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-toggle:hover{color:var(--text);border-color:var(--accent-2)}:is(.pp-scope,.pp-portal) .pp-ai-toggle.on{color:#fff;border-color:transparent;background:linear-gradient(135deg,#d97757,var(--accent-2))}:is(.pp-scope,.pp-portal) .pp-ai{position:relative;flex:none;width:340px;display:flex;flex-direction:column;min-height:0;background:var(--panel);border-left:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-ai-head{display:flex;align-items:center;gap:6px;height:34px;padding:0 6px 0 10px;border-bottom:1px solid var(--border-soft);flex:none}:is(.pp-scope,.pp-portal) .pp-ai-logo{color:#d97757}:is(.pp-scope,.pp-portal) .pp-ai-title{font-weight:600;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-ai-model{margin-left:4px;padding:1px 7px;border-radius:9px;border:1px solid var(--border);background:var(--panel-2);color:var(--text-dim);font-size:var(--fs-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}:is(.pp-scope,.pp-portal) .pp-ai-model:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-ai-log{flex:1;min-height:0;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-ai-welcome{margin:auto 0;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:var(--text-dim);padding:12px 6px}:is(.pp-scope,.pp-portal) .pp-ai-welcome>svg{color:#d97757}:is(.pp-scope,.pp-portal) .pp-ai-welcome p{margin:0;line-height:1.5}:is(.pp-scope,.pp-portal) .pp-ai-link{color:var(--accent);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-examples{display:flex;flex-direction:column;gap:6px;width:100%}:is(.pp-scope,.pp-portal) .pp-ai-examples button{text-align:left;padding:7px 10px;border-radius:var(--radius);border:1px solid var(--border-soft);background:var(--panel-2);color:var(--text);line-height:1.4}:is(.pp-scope,.pp-portal) .pp-ai-examples button:hover{border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-user{align-self:flex-end;max-width:88%;padding:7px 10px;border-radius:10px 10px 2px;background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);white-space:pre-wrap;line-height:1.45;overflow-wrap:anywhere}:is(.pp-scope,.pp-portal) .pp-ai-user img{display:block;max-width:100%;max-height:90px;margin-bottom:6px;border-radius:4px;opacity:.9}:is(.pp-scope,.pp-portal) .pp-ai-text{white-space:pre-wrap;line-height:1.5;overflow-wrap:anywhere}:is(.pp-scope,.pp-portal) .pp-ai-text.streaming:after{content:"▍";color:var(--text-faint);animation:pp-blink 1s steps(2) infinite}@keyframes pp-blink{50%{opacity:0}}:is(.pp-scope,.pp-portal) .pp-ai-progress{color:var(--text-dim);font-style:italic;font-size:var(--fs-small);line-height:1.45;white-space:pre-wrap;border-left:2px solid var(--border);padding-left:8px}:is(.pp-scope,.pp-portal) .pp-ai-tool{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:var(--fs-small);color:var(--text-dim);padding:4px 8px;border-radius:var(--radius-sm);background:var(--panel-2)}:is(.pp-scope,.pp-portal) .pp-ai-tool.done svg{color:var(--success)}:is(.pp-scope,.pp-portal) .pp-ai-tool.error svg{color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-ai-tool em{font-style:normal;color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-ai-tool .pp-ai-tool-err{flex-basis:100%;color:var(--danger);padding-left:19px}:is(.pp-scope,.pp-portal) .pp-ai-notice{display:flex;align-items:flex-start;gap:7px;padding:7px 9px;border-radius:var(--radius);line-height:1.45;background:var(--panel-2);flex-wrap:wrap}:is(.pp-scope,.pp-portal) .pp-ai-notice>svg{flex:none;margin-top:2px}:is(.pp-scope,.pp-portal) .pp-ai-notice>span{flex:1;min-width:160px}:is(.pp-scope,.pp-portal) .pp-ai-notice.warn>svg{color:var(--warning)}:is(.pp-scope,.pp-portal) .pp-ai-notice.error{background:color-mix(in srgb,var(--danger) 14%,var(--panel-2))}:is(.pp-scope,.pp-portal) .pp-ai-notice.error>svg{color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-ai-notice.info>svg{color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-choices{display:flex;flex-direction:column;gap:7px;padding:8px 9px;border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2));line-height:1.45}:is(.pp-scope,.pp-portal) .pp-ai-choices-q{display:flex;gap:7px;align-items:flex-start}:is(.pp-scope,.pp-portal) .pp-ai-choices-q>svg{flex:none;margin-top:2px;color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-choices-opts{display:flex;flex-wrap:wrap;gap:6px}:is(.pp-scope,.pp-portal) .pp-ai-choices-opts .pp-btn{height:auto;min-height:24px;white-space:normal;text-align:left}:is(.pp-scope,.pp-portal) .pp-ai-marks{display:flex;flex-direction:column;gap:5px}:is(.pp-scope,.pp-portal) .pp-ai-marks-list{display:flex;flex-wrap:wrap;align-items:center;gap:5px}:is(.pp-scope,.pp-portal) .pp-ai-mark{display:inline-flex;align-items:center;gap:4px;padding:1px 3px 1px 2px;border-radius:10px;background:var(--panel-2);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-mark b{display:inline-grid;place-items:center;min-width:16px;height:16px;border-radius:8px;background:#ff2d55;color:#fff;font-size:10px}:is(.pp-scope,.pp-portal) .pp-ai-mark button{display:inline-grid;place-items:center;border:0;background:none;color:var(--text-dim);padding:1px;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-ai-foot{flex:none;border-top:1px solid var(--border-soft);padding:8px;display:flex;flex-direction:column;gap:7px}:is(.pp-scope,.pp-portal) .pp-ai-status{display:flex;align-items:center;gap:7px;color:var(--text-dim);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-status>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-ai-meter{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:var(--fs-small);color:var(--text-faint);font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) .pp-ai-bar{flex-basis:100%;height:3px;border-radius:2px;background:var(--panel-3);overflow:hidden}:is(.pp-scope,.pp-portal) .pp-ai-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--success),var(--warning));transition:width .3s}:is(.pp-scope,.pp-portal) .pp-ai-undo{align-self:flex-start}:is(.pp-scope,.pp-portal) .pp-ai-input{display:flex;gap:6px;align-items:flex-end}:is(.pp-scope,.pp-portal) .pp-ai-input textarea{flex:1;resize:none;min-height:54px;max-height:180px;padding:7px 9px;border-radius:var(--radius);border:1px solid var(--border);background:var(--input);color:var(--text);font:inherit;line-height:1.45}:is(.pp-scope,.pp-portal) .pp-ai-input textarea:focus{outline:none;border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-send:not(:disabled){color:#fff;background:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-settings{display:flex;flex-direction:column;gap:16px}:is(.pp-scope,.pp-portal) .pp-ai-settings section{display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-ai-settings h4{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--fs);font-weight:600}:is(.pp-scope,.pp-portal) .pp-ai-settings .pp-hint-text{margin:0;line-height:1.5}:is(.pp-scope,.pp-portal) .pp-ai-settings a{color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-key{display:flex;gap:6px;align-items:center}:is(.pp-scope,.pp-portal) .pp-ai-key input{flex:1;height:28px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input);color:var(--text);font-family:var(--mono);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-key input:focus{outline:none;border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-check{display:flex;align-items:center;gap:6px;font-size:var(--fs-small);line-height:1.4}:is(.pp-scope,.pp-portal) .pp-ai-check.ok{color:var(--success)}:is(.pp-scope,.pp-portal) .pp-ai-check.warn{color:var(--warning)}:is(.pp-scope,.pp-portal) .pp-ai-check.error{color:var(--danger)}:is(.pp-scope,.pp-portal) .pp-ai-models{display:flex;flex-direction:column;gap:6px}:is(.pp-scope,.pp-portal) .pp-ai-modelopt{display:grid;grid-template-columns:auto 1fr;column-gap:8px;row-gap:2px;padding:7px 10px;border-radius:var(--radius);border:1px solid var(--border-soft);background:var(--panel-2);cursor:pointer}:is(.pp-scope,.pp-portal) .pp-ai-modelopt.on{border-color:var(--accent);background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-ai-modelopt input{grid-row:span 3;margin-top:2px}:is(.pp-scope,.pp-portal) .pp-ai-modelname{font-weight:600}:is(.pp-scope,.pp-portal) .pp-ai-modelhint{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-ai-modelprice{color:var(--text-faint);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-unavailable{margin-left:8px;font-style:normal;font-weight:400;color:var(--warning);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-tabs{display:flex;gap:2px;margin:-4px 0 14px;border-bottom:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-ai-tabs button{padding:6px 12px;border:0;border-bottom:2px solid transparent;background:none;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-ai-tabs button:hover{color:var(--text)}:is(.pp-scope,.pp-portal) .pp-ai-tabs button.on{color:var(--text);border-bottom-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-modelopt.disabled{opacity:.5;cursor:default}:is(.pp-scope,.pp-portal) .pp-ai-usage{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-variant-numeric:tabular-nums}:is(.pp-scope,.pp-portal) .pp-ai-usage span{color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-ai-style{width:100%;resize:vertical;padding:7px 9px;border-radius:var(--radius);border:1px solid var(--border);background:var(--input);color:var(--text);font:inherit;line-height:1.45}:is(.pp-scope,.pp-portal) .pp-ai-style:focus{outline:none;border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-logo-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}:is(.pp-scope,.pp-portal) .pp-ai-logo-row img{height:36px;max-width:120px;object-fit:contain;background:var(--checker);border-radius:4px}:is(.pp-scope,.pp-portal) .pp-ai-logo-row>span{flex:1;min-width:100px}:is(.pp-scope,.pp-portal) .pp-ai.dropping .pp-ai-log{outline:2px dashed var(--accent);outline-offset:-6px}:is(.pp-scope,.pp-portal) .pp-ai-text{position:relative}:is(.pp-scope,.pp-portal) .pp-ai-copy{display:inline-flex;vertical-align:middle;margin-left:6px;padding:2px;border:0;border-radius:3px;background:none;color:var(--text-faint);opacity:0;transition:opacity .1s}:is(.pp-scope,.pp-portal) .pp-ai-text:hover .pp-ai-copy,:is(.pp-scope,.pp-portal) .pp-ai-copy:focus-visible{opacity:1}:is(.pp-scope,.pp-portal) .pp-ai-copy:hover{color:var(--text);background:var(--panel-3)}:is(.pp-scope,.pp-portal) .pp-ai-thumbs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}:is(.pp-scope,.pp-portal) .pp-ai-user .pp-ai-thumbs img{width:44px;height:44px;max-height:none;margin:0;object-fit:cover}:is(.pp-scope,.pp-portal) .pp-ai-after{display:flex;gap:6px;flex-wrap:wrap}:is(.pp-scope,.pp-portal) .pp-ai-pending{display:flex;gap:6px;flex-wrap:wrap}:is(.pp-scope,.pp-portal) .pp-ai-pending-item{position:relative;width:48px;height:48px;border-radius:4px;overflow:hidden;background:var(--checker);border:1px solid var(--border)}:is(.pp-scope,.pp-portal) .pp-ai-pending-item img{width:100%;height:100%;object-fit:cover}:is(.pp-scope,.pp-portal) .pp-ai-pending-item button{position:absolute;top:2px;right:2px;display:flex;padding:1px;border:0;border-radius:50%;background:#000000a6;color:#fff}:is(.pp-scope,.pp-portal) .pp-ai-input-btns{display:flex;flex-direction:column;gap:4px}:is(.pp-scope,.pp-portal) .pp-ai-actions{width:300px;max-height:min(520px,80vh);overflow-y:auto;padding:6px}:is(.pp-scope,.pp-portal) .pp-ai-actions-title{padding:6px 8px 4px;font-size:var(--fs-small);color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em}:is(.pp-scope,.pp-portal) .pp-ai-action{display:flex;align-items:center}:is(.pp-scope,.pp-portal) .pp-ai-action-run{flex:1;text-align:left;padding:6px 8px;border:0;border-radius:var(--radius-sm);background:none;color:var(--text)}:is(.pp-scope,.pp-portal) .pp-ai-action-run:hover:not(:disabled){background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-ai-action-run:disabled{color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-ai-actions-save{display:flex;gap:6px;padding:8px;border-top:1px solid var(--border-soft);margin-top:6px}:is(.pp-scope,.pp-portal) .pp-ai-actions-save input{flex:1;min-width:0;height:24px;padding:0 6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input);color:var(--text);font:inherit;font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-ai-actions-all{padding:4px 8px 6px}:is(.pp-scope,.pp-portal) .pp-ai-compare{position:relative;user-select:none;cursor:ew-resize;background:var(--checker);line-height:0;touch-action:none}:is(.pp-scope,.pp-portal) .pp-ai-compare img{display:block;width:100%;max-height:70vh;object-fit:contain}:is(.pp-scope,.pp-portal) .pp-ai-compare img+img{position:absolute;inset:0;height:100%}:is(.pp-scope,.pp-portal) .pp-ai-compare-line{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 0 1px #0006}:is(.pp-scope,.pp-portal) .pp-ai-compare-tag{position:absolute;top:8px;padding:2px 8px;border-radius:10px;background:#0009;color:#fff;font-size:var(--fs-small);line-height:1.6}:is(.pp-scope,.pp-portal) .pp-ai-compare-tag.left{left:8px}:is(.pp-scope,.pp-portal) .pp-ai-compare-tag.right{right:8px}:is(.pp-scope,.pp-portal) .pp-ai-unlock{display:flex;flex-wrap:wrap;gap:6px;width:100%}:is(.pp-scope,.pp-portal) .pp-ai-unlock input,:is(.pp-scope,.pp-portal) .pp-ai-settings .pp-form input[type=password]{height:28px;min-width:0;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-ai-unlock input{flex:1}:is(.pp-scope,.pp-portal) .pp-ai-unlock input:focus,:is(.pp-scope,.pp-portal) .pp-ai-settings .pp-form input[type=password]:focus{outline:none;border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-ai-unlock .pp-ai-check{flex-basis:100%;justify-content:center}:is(.pp-scope,.pp-portal) .pp-ai-linkbtn{padding:0;border:none;background:none;color:var(--accent);font:inherit;font-size:var(--fs-small);text-decoration:underline;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-srv{display:flex;flex-direction:column;gap:12px}:is(.pp-scope,.pp-portal) .pp-srv-usage{display:flex;align-items:center;gap:8px;color:var(--text-dim);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-srv-usage .pp-ai-bar{flex:1;max-width:160px}:is(.pp-scope,.pp-portal) .pp-srv-empty{display:flex;justify-content:center;padding:28px 12px;color:var(--text-dim);text-align:center}:is(.pp-scope,.pp-portal) .pp-srv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;max-height:52vh;overflow-y:auto;padding:2px}:is(.pp-scope,.pp-portal) .pp-srv-item{display:flex;flex-direction:column;gap:4px;min-width:0}:is(.pp-scope,.pp-portal) .pp-srv-thumb{display:flex;align-items:center;justify-content:center;aspect-ratio:4 / 3;padding:0;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--input);color:var(--text-dim);cursor:pointer}:is(.pp-scope,.pp-portal) .pp-srv-thumb:hover{border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-srv-thumb{position:relative}:is(.pp-scope,.pp-portal) .pp-srv-kind{position:absolute;left:4px;top:4px;display:flex;padding:3px;border-radius:4px;color:#fff;background:linear-gradient(135deg,#5b8cff,#a35bff)}:is(.pp-scope,.pp-portal) .pp-srv-kind.vector{background:#ff7a1a}:is(.pp-scope,.pp-portal) .pp-srv-thumb img{width:100%;height:100%;object-fit:contain}:is(.pp-scope,.pp-portal) .pp-srv-name{overflow:hidden;font-weight:500;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-srv-item input{width:100%;height:24px;padding:0 6px;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--input);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-srv-meta{color:var(--text-dim);font-size:var(--fs-small);line-height:1.35}:is(.pp-scope,.pp-portal) .pp-srv-actions{display:flex;gap:4px}:is(.pp-scope,.pp-portal) .pp-craw{display:flex;gap:12px;height:min(78vh,860px);min-height:420px}:is(.pp-scope,.pp-portal) .pp-craw-stage{position:relative;flex:1;min-width:0;display:grid;place-items:center;background:var(--pasteboard, #1e1e1e);border-radius:var(--radius);overflow:hidden}:is(.pp-scope,.pp-portal) .pp-craw-stage.picking{cursor:crosshair}:is(.pp-scope,.pp-portal) .pp-craw-picture{position:relative}:is(.pp-scope,.pp-portal) .pp-craw-picture canvas{display:block;image-rendering:auto}:is(.pp-scope,.pp-portal) .pp-craw-eye{position:absolute;border:1.5px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #0009;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-eye.live{border-style:dashed}:is(.pp-scope,.pp-portal) .pp-craw-busy{position:absolute;top:8px;right:8px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-craw-badge{position:absolute;left:50%;top:8px;transform:translate(-50%);padding:3px 10px;border-radius:10px;background:#0009;color:#fff;font-size:var(--fs-small);pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-side{width:330px;flex:none;display:flex;flex-direction:column;gap:6px;min-height:0}:is(.pp-scope,.pp-portal) .pp-craw-hist{width:100%;height:72px;background:var(--panel-2);border-radius:var(--radius-sm)}:is(.pp-scope,.pp-portal) .pp-craw-tools{display:flex;align-items:center;gap:4px}:is(.pp-scope,.pp-portal) .pp-craw-panels{flex:1;min-height:0;overflow-y:auto;padding-right:4px}:is(.pp-scope,.pp-portal) .pp-craw-section{border-top:1px solid var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-craw-section header{display:flex;align-items:center}:is(.pp-scope,.pp-portal) .pp-craw-section-title{flex:1;display:flex;align-items:center;gap:5px;padding:7px 2px;border:0;background:none;color:var(--text);font-weight:600;text-align:left;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-craw-section-body{display:flex;flex-direction:column;gap:2px;padding:0 2px 10px}:is(.pp-scope,.pp-portal) .pp-craw-sep{height:1px;margin:5px 0;background:var(--border-soft)}:is(.pp-scope,.pp-portal) .pp-craw-sub{margin-top:4px;color:var(--text-dim);font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-craw-wheels{display:grid;grid-template-columns:1fr 1fr;gap:8px}:is(.pp-scope,.pp-portal) .pp-craw-wheel-box{display:flex;flex-direction:column;align-items:center;gap:4px}:is(.pp-scope,.pp-portal) .pp-craw-wheel-box .pp-slider-row{width:100%}:is(.pp-scope,.pp-portal) .pp-craw-wheel-title{font-size:var(--fs-small);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-craw-wheel{position:relative;border-radius:50%;background:radial-gradient(circle,#8a8a8a,#8a8a8a00 72%),conic-gradient(from 90deg,red,#f0f,#00f,#0ff,#0f0,#ff0,red);cursor:crosshair;touch-action:none}:is(.pp-scope,.pp-portal) .pp-craw-wheel i{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #0009;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-eye-row{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-craw-eye-row>span{flex:1}:is(.pp-scope,.pp-portal) .pp-craw-foot{display:flex;align-items:center;gap:8px}:is(.pp-scope,.pp-portal) .pp-craw-claude{justify-content:center}:is(.pp-scope,.pp-portal) .pp-craw-overlay,:is(.pp-scope,.pp-portal) .pp-craw-maskstage{position:absolute;left:0;top:0}:is(.pp-scope,.pp-portal) .pp-craw-overlay{pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-maskstage{overflow:visible;touch-action:none}:is(.pp-scope,.pp-portal) .pp-craw-maskstage.pick{cursor:crosshair}:is(.pp-scope,.pp-portal) .pp-craw-maskstage.paint{cursor:none}:is(.pp-scope,.pp-portal) .pp-craw-guide{fill:none;stroke:#ffffff8c;stroke-width:1;filter:drop-shadow(0 0 1px rgba(0,0,0,.8));pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-guide.sel{stroke:#fff;stroke-width:1.5}:is(.pp-scope,.pp-portal) .pp-craw-guide.dashed{stroke-dasharray:5 4}:is(.pp-scope,.pp-portal) .pp-craw-handle{fill:#fff;stroke:#000000b3;stroke-width:1.5;cursor:move}:is(.pp-scope,.pp-portal) .pp-craw-handle.big{fill:var(--accent);stroke:#fff;stroke-width:2}:is(.pp-scope,.pp-portal) .pp-craw-brush{fill:none;stroke:#fff;stroke-width:1.5;filter:drop-shadow(0 0 1px rgba(0,0,0,.9));pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-brush.inner{stroke-dasharray:3 3;stroke-width:1}:is(.pp-scope,.pp-portal) .pp-craw-brush.erase{stroke:#ffb0b0}:is(.pp-scope,.pp-portal) .pp-craw-livestroke{fill:none;stroke:#ff283c73;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}:is(.pp-scope,.pp-portal) .pp-craw-livestroke.erase{stroke:#ffffff73}:is(.pp-scope,.pp-portal) .pp-craw-mask-head{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 6px;font-weight:600}:is(.pp-scope,.pp-portal) .pp-craw-masks{display:flex;flex-direction:column;gap:4px;padding:0 2px 10px}:is(.pp-scope,.pp-portal) .pp-craw-mask-kinds{display:grid;grid-template-columns:1fr 1fr;gap:4px}:is(.pp-scope,.pp-portal) .pp-craw-mask-kinds .pp-btn{justify-content:flex-start}:is(.pp-scope,.pp-portal) .pp-craw-mask-kinds .pp-btn.on{border-color:var(--accent);color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-craw-mask-hint{margin:2px 0;color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-craw-mask-list{display:flex;flex-direction:column;gap:3px;margin-top:6px}:is(.pp-scope,.pp-portal) .pp-craw-mask{border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:2px 4px}:is(.pp-scope,.pp-portal) .pp-craw-mask.selected{border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-craw-mask-row,:is(.pp-scope,.pp-portal) .pp-craw-comp{display:flex;align-items:center;gap:4px}:is(.pp-scope,.pp-portal) .pp-craw-mask-name{flex:1;display:flex;align-items:center;gap:5px;min-width:0;padding:3px 2px;border:0;background:none;color:var(--text);text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.pp-scope,.pp-portal) .pp-craw-mask-name[aria-pressed=true]{font-weight:600}:is(.pp-scope,.pp-portal) .pp-craw-comps{display:flex;flex-direction:column;gap:1px;padding:2px 0 4px 18px}:is(.pp-scope,.pp-portal) .pp-craw-comp.selected .pp-craw-mask-name{color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-craw-comp-op{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--panel-2);color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-craw-comp-add{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}:is(.pp-scope,.pp-portal) .pp-craw-comp-add .pp-dropdown-btn{width:auto}:is(.pp-scope,.pp-portal) .pp-craw-mask-opts{gap:12px}:is(.pp-scope,.pp-portal) .pp-craw-sub-row{display:flex;justify-content:space-between;align-items:center}:is(.pp-scope,.pp-portal) .pp-craw-claude svg{color:var(--accent)}@media(max-width:900px){:is(.pp-scope,.pp-portal) .pp-craw{flex-direction:column;height:auto}:is(.pp-scope,.pp-portal) .pp-craw-stage{min-height:260px}:is(.pp-scope,.pp-portal) .pp-craw-side{width:100%;max-height:50vh}}:is(.pp-scope,.pp-portal) .pp-fx-pending{font-style:normal;color:var(--text-faint)}:is(.pp-scope,.pp-portal) .pp-vector-edit{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:4px;background:transparent;color:#ff7a1a;cursor:pointer;opacity:.75}:is(.pp-scope,.pp-portal) .pp-vector-edit:hover{opacity:1;background:#ff7a1a29}:is(.pp-scope,.pp-portal) .pp-type-toggles{flex-wrap:wrap;gap:2px}:is(.pp-scope,.pp-portal) .pp-type-toggle{min-width:26px;height:24px;padding:0 5px;justify-content:center}:is(.pp-scope,.pp-portal) .pp-type-toggle.active{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}:is(.pp-scope,.pp-portal) .pp-glyph-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(32px,1fr));gap:2px;max-height:220px;overflow:auto}:is(.pp-scope,.pp-portal) .pp-glyph-cell{height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input);color:var(--text);font-size:18px;cursor:pointer;padding:0}:is(.pp-scope,.pp-portal) .pp-glyph-cell:hover{border-color:var(--accent)}:is(.pp-scope,.pp-portal) .pp-type-styles,:is(.pp-scope,.pp-portal) .pp-list-box{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--input);max-height:180px;overflow:auto}:is(.pp-scope,.pp-portal) .pp-type-style,:is(.pp-scope,.pp-portal) .pp-list-box>div{padding:3px 8px;cursor:default;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(.pp-scope,.pp-portal) .pp-type-style.active,:is(.pp-scope,.pp-portal) .pp-list-box>div.active{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-type-style .pp-input{width:100%}:is(.pp-scope,.pp-portal) .pp-spell-context{margin:8px 0;padding:6px 8px;border-radius:var(--radius-sm);background:var(--input);border:1px solid var(--border-soft);white-space:pre-wrap;word-break:break-word}:is(.pp-scope,.pp-portal) .pp-spell-context mark{background:var(--accent-soft);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}:is(.pp-scope,.pp-portal) .pp-layer-filter{gap:6px;align-items:center;padding:4px 8px}:is(.pp-scope,.pp-portal) .pp-kernel-grid{display:grid;grid-template-columns:repeat(5,auto);gap:4px;justify-content:start}:is(.pp-scope,.pp-portal) .pp-fg{display:grid;grid-template-columns:442px minmax(0,1fr) 250px;gap:14px;min-height:420px}:is(.pp-scope,.pp-portal) .pp-fg-preview{display:flex;flex-direction:column;gap:8px}:is(.pp-scope,.pp-portal) .pp-fg-preview canvas,:is(.pp-scope,.pp-portal) .pp-fg-thumb canvas{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--checker);touch-action:none}:is(.pp-scope,.pp-portal) .pp-fg-browser{max-height:440px;overflow:auto;padding-right:4px}:is(.pp-scope,.pp-portal) .pp-fg-folder{display:flex;align-items:center;gap:6px;width:100%;padding:4px 2px;border:0;background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-fg-caret{width:12px;color:var(--text-dim)}:is(.pp-scope,.pp-portal) .pp-fg-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;padding:2px 0 10px 14px}:is(.pp-scope,.pp-portal) .pp-fg-thumb{display:flex;flex-direction:column;align-items:center;gap:3px;padding:3px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--text-dim);font:inherit;font-size:var(--fs-small);text-align:center;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-fg-thumb:hover{border-color:var(--border)}:is(.pp-scope,.pp-portal) .pp-fg-thumb.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}:is(.pp-scope,.pp-portal) .pp-fg-side{display:flex;flex-direction:column;gap:8px;min-width:0}:is(.pp-scope,.pp-portal) .pp-fg-params{max-height:260px;overflow:auto}:is(.pp-scope,.pp-portal) .pp-fg-layers{margin-top:auto;max-height:120px;overflow:auto;border:1px solid var(--border-soft);border-radius:var(--radius-sm)}:is(.pp-scope,.pp-portal) .pp-fg-layer{display:flex;align-items:center;gap:6px;padding:2px 6px;cursor:pointer;font-size:var(--fs-small)}:is(.pp-scope,.pp-portal) .pp-fg-layer.selected{background:var(--accent-soft)}:is(.pp-scope,.pp-portal) .pp-fg-eye{display:flex;border:0;background:none;color:var(--text-dim);padding:1px;cursor:pointer}:is(.pp-scope,.pp-portal) .pp-fg-layer-buttons{display:flex;justify-content:flex-end;gap:4px}.vp-scope,.vp-portal,html[data-theme=dark] :is(.vp-scope,.vp-portal){--app-bg: #1d1d1d;--chrome: #2b2b2b;--chrome-2: #323232;--chrome-3: #3a3a3a;--chrome-hover: #3f3f3f;--chrome-active: #474747;--border: #1a1a1a;--border-soft: #3c3c3c;--divider: #262626;--text: #e3e3e3;--text-dim: #a9a9a9;--text-faint: #777;--input-bg: #1f1f1f;--input-border: #444;--input-border-hover: #5a5a5a;--accent: #3b8bff;--accent-strong: #1d6fe8;--accent-text: #fff;--accent-soft: rgba(59, 139, 255, .18);--danger: #ef5350;--success: #3ccf7a;--menu-bg: #2f2f2f;--menu-hover: #2468d8;--shadow: 0 10px 32px rgba(0, 0, 0, .5), 0 2px 6px rgba(0, 0, 0, .35);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .35);--ruler-bg: #2b2b2b;--ruler-tick: #7c7c7c;--ruler-text: #b3b3b3;--pasteboard: #535353;--checker-a: #3a3a3a;--checker-b: #2e2e2e;--tool-active: #1d1d1d;--scroll-thumb: #4a4a4a;color-scheme:dark}html[data-theme=medium] :is(.vp-scope,.vp-portal){--app-bg: #3a3a3a;--chrome: #474747;--chrome-2: #4d4d4d;--chrome-3: #575757;--chrome-hover: #5b5b5b;--chrome-active: #646464;--border: #333;--border-soft: #5a5a5a;--divider: #3e3e3e;--text: #f0f0f0;--text-dim: #c4c4c4;--text-faint: #9a9a9a;--input-bg: #3a3a3a;--input-border: #626262;--input-border-hover: #777;--menu-bg: #4a4a4a;--ruler-bg: #474747;--ruler-tick: #9a9a9a;--ruler-text: #dcdcdc;--pasteboard: #6b6b6b;--checker-a: #555;--checker-b: #4a4a4a;--tool-active: #333;--scroll-thumb: #6a6a6a;color-scheme:dark}html[data-theme=light] :is(.vp-scope,.vp-portal){--app-bg: #e6e6e6;--chrome: #f0f0f0;--chrome-2: #f7f7f7;--chrome-3: #e9e9e9;--chrome-hover: #e2e2e2;--chrome-active: #d6d6d6;--border: #c9c9c9;--border-soft: #dadada;--divider: #d5d5d5;--text: #1f1f1f;--text-dim: #5c5c5c;--text-faint: #8f8f8f;--input-bg: #fff;--input-border: #c3c3c3;--input-border-hover: #a5a5a5;--accent: #1473e6;--accent-strong: #0d66d0;--accent-soft: rgba(20, 115, 230, .14);--menu-bg: #fbfbfb;--menu-hover: #1473e6;--shadow: 0 10px 32px rgba(0, 0, 0, .16), 0 2px 6px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .12);--ruler-bg: #f0f0f0;--ruler-tick: #8a8a8a;--ruler-text: #555;--pasteboard: #e4e4e4;--checker-a: #fff;--checker-b: #e8e8e8;--tool-active: #d4d4d4;--scroll-thumb: #c4c4c4;color-scheme:light}.vp-scope,:is(.vp-scope,.vp-portal) *{box-sizing:border-box}.vp-scope{height:100%;margin:0;overflow:hidden}.vp-scope{background:var(--app-bg);color:var(--text);font:12px/1.35 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;touch-action:none}:is(.vp-scope,.vp-portal) button,:is(.vp-scope,.vp-portal) input,:is(.vp-scope,.vp-portal) select,:is(.vp-scope,.vp-portal) textarea{font:inherit;color:inherit}:is(.vp-scope,.vp-portal) button{cursor:default}:is(.vp-scope,.vp-portal) kbd{font:10.5px/1 ui-monospace,SF Mono,Menlo,Consolas,monospace;padding:2px 5px;border-radius:3px;background:var(--chrome-3);border:1px solid var(--border-soft);color:var(--text-dim);margin-left:4px;white-space:nowrap}:is(.vp-scope,.vp-portal) ::-webkit-scrollbar{width:10px;height:10px}:is(.vp-scope,.vp-portal) ::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:8px;border:3px solid transparent;background-clip:content-box}:is(.vp-scope,.vp-portal) ::-webkit-scrollbar-track{background:transparent}:is(.vp-scope,.vp-portal) .icon{display:block;flex:none}:is(.vp-scope,.vp-portal) .dim{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .small{font-size:11px}:is(.vp-scope,.vp-portal) .center{text-align:center}:is(.vp-scope,.vp-portal) .spacer{flex:1}:is(.vp-scope,.vp-portal) .app{display:grid;grid-template-rows:30px 1fr 24px;height:100%}:is(.vp-scope,.vp-portal) .workspace{display:flex;min-height:0}:is(.vp-scope,.vp-portal) .doc-area{flex:1;display:flex;flex-direction:column;min-width:0;position:relative;background:var(--pasteboard)}:is(.vp-scope,.vp-portal) .canvas-area{flex:1;position:relative;min-height:0;display:grid;grid-template-columns:0 minmax(0,1fr);grid-template-rows:0 minmax(0,1fr)}:is(.vp-scope,.vp-portal) .canvas-area.with-rulers{grid-template-columns:20px minmax(0,1fr);grid-template-rows:20px minmax(0,1fr)}:is(.vp-scope,.vp-portal) .canvas-wrap{grid-row:2;grid-column:2;position:relative;overflow:hidden;min-width:0;min-height:0}:is(.vp-scope,.vp-portal) .canvas-scene,:is(.vp-scope,.vp-portal) .canvas-overlay{position:absolute;inset:0;display:block}:is(.vp-scope,.vp-portal) .canvas-overlay{outline:none;touch-action:none}:is(.vp-scope,.vp-portal) .ruler-corner{grid-row:1;grid-column:1;background:var(--ruler-bg);border-right:1px solid var(--ruler-tick);border-bottom:1px solid var(--ruler-tick);opacity:.95}:is(.vp-scope,.vp-portal) .ruler{display:block;width:100%;height:100%}:is(.vp-scope,.vp-portal) .ruler-top{grid-row:1;grid-column:2;cursor:s-resize}:is(.vp-scope,.vp-portal) .ruler-left{grid-row:2;grid-column:1;cursor:e-resize}:is(.vp-scope,.vp-portal) .menubar{display:flex;align-items:stretch;background:var(--chrome);border-bottom:1px solid var(--border);padding:0 6px;gap:1px;position:relative;z-index:20}:is(.vp-scope,.vp-portal) .app-logo{display:flex;align-items:center;padding:0 8px 0 4px}:is(.vp-scope,.vp-portal) .menubar-btn{background:none;border:none;padding:0 9px;border-radius:4px;margin:3px 0;color:var(--text);font-size:12.5px}:is(.vp-scope,.vp-portal) .menubar-btn:hover,:is(.vp-scope,.vp-portal) .menubar-btn.open{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .menu-list{position:fixed;z-index:1000;min-width:230px;max-height:calc(100vh - 16px);overflow-y:auto;background:var(--menu-bg);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow);padding:4px;outline:none;animation:pop .08s ease-out}@keyframes pop{0%{opacity:0;transform:translateY(-2px)}}:is(.vp-scope,.vp-portal) .menu-item{display:flex;align-items:center;height:24px;padding:0 10px 0 4px;border-radius:4px;white-space:nowrap;color:var(--text);gap:4px}:is(.vp-scope,.vp-portal) .menu-item.active:not(.disabled){background:var(--menu-hover);color:#fff}:is(.vp-scope,.vp-portal) .menu-item.active:not(.disabled) .menu-shortcut,:is(.vp-scope,.vp-portal) .menu-item.active:not(.disabled) .menu-arrow{color:#ffffffd9}:is(.vp-scope,.vp-portal) .menu-item.disabled{color:var(--text-faint)}:is(.vp-scope,.vp-portal) .menu-check{width:16px;text-align:center;font-size:11px}:is(.vp-scope,.vp-portal) .menu-label{flex:1}:is(.vp-scope,.vp-portal) .menu-shortcut{color:var(--text-faint);margin-left:24px;font-size:11.5px;font-variant-numeric:tabular-nums}:is(.vp-scope,.vp-portal) .menu-arrow{color:var(--text-dim);margin-left:12px;font-size:14px}:is(.vp-scope,.vp-portal) .menu-sep{height:1px;background:var(--border-soft);margin:4px 6px}:is(.vp-scope,.vp-portal) .doc-tabs-wrap{background:var(--chrome);border-bottom:1px solid var(--border)}:is(.vp-scope,.vp-portal) .doc-tabs{display:flex;height:28px;overflow-x:auto;scrollbar-width:none}:is(.vp-scope,.vp-portal) .doc-tabs::-webkit-scrollbar{display:none}:is(.vp-scope,.vp-portal) .doc-tab{display:flex;align-items:center;gap:6px;padding:0 6px 0 12px;max-width:340px;min-width:120px;border-right:1px solid var(--border);color:var(--text-dim);background:var(--chrome);white-space:nowrap}:is(.vp-scope,.vp-portal) .doc-tab.active{background:var(--chrome-2);color:var(--text);box-shadow:inset 0 2px 0 var(--accent)}:is(.vp-scope,.vp-portal) .doc-tab:hover:not(.active){background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .doc-tab-title{overflow:hidden;text-overflow:ellipsis;flex:1}:is(.vp-scope,.vp-portal) .doc-tab-meta{color:var(--text-faint)}:is(.vp-scope,.vp-portal) .doc-tab-close{width:18px;height:18px;border:none;background:none;border-radius:3px;color:var(--text-dim);font-size:15px;line-height:1;opacity:.6}:is(.vp-scope,.vp-portal) .doc-tab:hover .doc-tab-close,:is(.vp-scope,.vp-portal) .doc-tab.active .doc-tab-close{opacity:1}:is(.vp-scope,.vp-portal) .doc-tab-close:hover{background:var(--chrome-active);color:var(--text)}:is(.vp-scope,.vp-portal) .isolation-bar{display:flex;align-items:center;gap:4px;height:26px;padding:0 8px;background:var(--chrome-3);border-top:1px solid var(--border);font-size:11.5px}:is(.vp-scope,.vp-portal) .isolation-back{border:none;background:var(--accent);color:#fff;border-radius:3px;width:22px;height:18px}:is(.vp-scope,.vp-portal) .isolation-crumb{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .isolation-crumb+.isolation-crumb:before{content:"›";margin-right:4px}:is(.vp-scope,.vp-portal) .isolation-crumb:last-child{color:var(--text)}:is(.vp-scope,.vp-portal) .toolbar{width:44px;flex:none;background:var(--chrome);border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:6px 0;overflow-y:auto;overflow-x:visible;scrollbar-width:none;z-index:10}:is(.vp-scope,.vp-portal) .toolbar::-webkit-scrollbar{display:none}:is(.vp-scope,.vp-portal) .tool-group{display:flex;flex-direction:column;align-items:center;gap:1px;padding:4px 0;border-bottom:1px solid var(--divider);width:34px}:is(.vp-scope,.vp-portal) .tool-group:last-of-type{border-bottom:none}:is(.vp-scope,.vp-portal) .tool-slot{position:relative}:is(.vp-scope,.vp-portal) .tool-btn{position:relative;width:32px;height:30px;display:grid;place-items:center;border:none;background:none;border-radius:5px;color:var(--text);opacity:.88}:is(.vp-scope,.vp-portal) .tool-btn:hover{background:var(--chrome-hover);opacity:1}:is(.vp-scope,.vp-portal) .tool-btn.active{background:var(--tool-active);opacity:1;box-shadow:inset 0 0 0 1px var(--border-soft)}:is(.vp-scope,.vp-portal) .tool-flyout-mark{position:absolute;right:2px;bottom:2px;width:0;height:0;border-left:4px solid transparent;border-bottom:4px solid var(--text-dim)}:is(.vp-scope,.vp-portal) .tool-flyout{position:absolute;left:38px;top:-4px;background:var(--menu-bg);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow);padding:4px;z-index:200;min-width:230px;animation:pop .08s ease-out}:is(.vp-scope,.vp-portal) .tool-flyout-item{display:flex;align-items:center;gap:10px;width:100%;height:28px;padding:0 8px;border:none;background:none;border-radius:4px;color:var(--text);text-align:left}:is(.vp-scope,.vp-portal) .tool-flyout-item:hover{background:var(--menu-hover);color:#fff}:is(.vp-scope,.vp-portal) .tool-flyout-item.active .label{font-weight:600}:is(.vp-scope,.vp-portal) .tool-flyout-item .label{flex:1}:is(.vp-scope,.vp-portal) .tool-flyout-item .shortcut{color:var(--text-faint);font-size:11px}:is(.vp-scope,.vp-portal) .tool-flyout-item:hover .shortcut{color:#fffc}:is(.vp-scope,.vp-portal) .fill-stroke{margin-top:8px;display:flex;flex-direction:column;align-items:center;gap:8px}:is(.vp-scope,.vp-portal) .fs-stack{position:relative;width:36px;height:36px}:is(.vp-scope,.vp-portal) .fs-stack button{position:absolute;border:none;background:none;padding:0}:is(.vp-scope,.vp-portal) .fs-fill{left:0;top:0;z-index:2}:is(.vp-scope,.vp-portal) .fs-stroke{left:11px;top:11px;z-index:1}:is(.vp-scope,.vp-portal) .stroke-front .fs-stroke{z-index:3}:is(.vp-scope,.vp-portal) .fs-swatch{width:22px;height:22px;border-radius:2px;background:var(--paint, transparent);box-shadow:0 0 0 1px #0000008c,0 0 0 2px #ffffff2e;display:grid;place-items:center;font-weight:700;font-size:11px}:is(.vp-scope,.vp-portal) .fs-swatch.stroke{background:transparent;border:6px solid;border-image:none;border-color:transparent;position:relative}:is(.vp-scope,.vp-portal) .fs-swatch.stroke:before{content:"";position:absolute;inset:-6px;border-radius:2px;padding:6px;background:var(--paint, transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}:is(.vp-scope,.vp-portal) .fs-swatch.stroke:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000008c}:is(.vp-scope,.vp-portal) .fs-swatch.none{background:#fff linear-gradient(to top right,transparent calc(50% - 1px),#e1251b calc(50% - 1px),#e1251b calc(50% + 1px),transparent calc(50% + 1px))}:is(.vp-scope,.vp-portal) .fs-swatch.none.stroke{background:transparent}:is(.vp-scope,.vp-portal) .fs-swatch.none.stroke:before{background:#fff linear-gradient(to top right,transparent calc(50% - 1px),#e1251b calc(50% - 1px),#e1251b calc(50% + 1px),transparent calc(50% + 1px))}:is(.vp-scope,.vp-portal) .fs-swatch.mixed{background:var(--chrome-3);color:var(--text)}:is(.vp-scope,.vp-portal) .fill-front .fs-fill{z-index:3}:is(.vp-scope,.vp-portal) .fs-swap{right:-6px;top:-4px;color:var(--text-dim);width:14px;height:14px}:is(.vp-scope,.vp-portal) .fs-swap:hover,:is(.vp-scope,.vp-portal) .fs-default:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .fs-default{left:-4px;bottom:-6px;width:12px;height:12px}:is(.vp-scope,.vp-portal) .fs-default .d-fill,:is(.vp-scope,.vp-portal) .fs-default .d-stroke{position:absolute;width:7px;height:7px;border:1px solid var(--text-dim)}:is(.vp-scope,.vp-portal) .fs-default .d-fill{left:0;top:0;background:#fff;z-index:1}:is(.vp-scope,.vp-portal) .fs-default .d-stroke{left:3px;top:3px;background:#000;border-color:#000;box-shadow:0 0 0 1px var(--text-dim)}:is(.vp-scope,.vp-portal) .fs-modes{display:flex;gap:2px}:is(.vp-scope,.vp-portal) .fs-modes button{width:12px;height:12px;border:none;padding:0;background:none}:is(.vp-scope,.vp-portal) .fs-modes span{display:block;width:11px;height:11px;box-shadow:0 0 0 1px #00000080}:is(.vp-scope,.vp-portal) .mode-color{background:var(--text)}:is(.vp-scope,.vp-portal) .mode-gradient{background:linear-gradient(90deg,#fff,#000)}:is(.vp-scope,.vp-portal) .mode-none{background:#fff linear-gradient(to top right,transparent 45%,#e1251b 45%,#e1251b 58%,transparent 58%)}:is(.vp-scope,.vp-portal) .dock{flex:none;position:relative;background:var(--chrome);border-left:1px solid var(--border);display:flex;flex-direction:column;min-height:0}:is(.vp-scope,.vp-portal) .dock-resizer{position:absolute;left:-3px;top:0;bottom:0;width:6px;cursor:col-resize;z-index:5}:is(.vp-scope,.vp-portal) .dock-resizer:hover{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .dock-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column}:is(.vp-scope,.vp-portal) .panel-group{border-bottom:1px solid var(--border);background:var(--chrome-2);display:flex;flex-direction:column;flex:none}:is(.vp-scope,.vp-portal) .panel-group.grow:not(.collapsed){flex:1 0 260px}:is(.vp-scope,.vp-portal) .panel-tabs{display:flex;align-items:stretch;background:var(--chrome);border-bottom:1px solid var(--border);height:28px;flex:none}:is(.vp-scope,.vp-portal) .panel-group.collapsed .panel-tabs{border-bottom:none}:is(.vp-scope,.vp-portal) .panel-tablist{display:flex;overflow:hidden;flex:1;min-width:0}:is(.vp-scope,.vp-portal) .panel-tab{border:none;background:none;padding:0 8px;color:var(--text-dim);font-size:11.5px;font-weight:500;white-space:nowrap;position:relative;flex:0 1 auto;min-width:28px;overflow:hidden;text-overflow:ellipsis}:is(.vp-scope,.vp-portal) .panel-tab.active{flex-shrink:0}:is(.vp-scope,.vp-portal) .panel-tab:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .panel-tab.active{color:var(--text);background:var(--chrome-2)}:is(.vp-scope,.vp-portal) .panel-group.collapsed .panel-tab.active{background:none}:is(.vp-scope,.vp-portal) .panel-tab.active:after{content:"";position:absolute;left:8px;right:8px;bottom:0;height:2px;border-radius:2px;background:var(--accent)}:is(.vp-scope,.vp-portal) .panel-group.collapsed .panel-tab.active:after{display:none}:is(.vp-scope,.vp-portal) .panel-collapse{border:none;background:none;color:var(--text-dim);width:26px}:is(.vp-scope,.vp-portal) .panel-collapse:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .panel-body{overflow-y:auto;min-height:0;flex:1}:is(.vp-scope,.vp-portal) .panel-group:not(.grow) .panel-body{max-height:420px}:is(.vp-scope,.vp-portal) .panel{padding:8px 10px 10px;display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .panel-empty{padding:18px 14px;color:var(--text-dim);text-align:center;line-height:1.5}:is(.vp-scope,.vp-portal) .panel-loading{height:60px}:is(.vp-scope,.vp-portal) .panel-footer{display:flex;align-items:center;gap:2px;border-top:1px solid var(--border-soft);margin:0 -10px -10px;padding:4px 8px;background:var(--chrome);position:sticky;bottom:0}:is(.vp-scope,.vp-portal) .footer-btns{display:flex;align-items:center;gap:2px;flex:1}:is(.vp-scope,.vp-portal) .foot-btn{width:26px;height:24px;border:none;background:none;border-radius:4px;display:grid;place-items:center;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .foot-btn:hover:not(:disabled){background:var(--chrome-hover);color:var(--text)}:is(.vp-scope,.vp-portal) .foot-btn[aria-pressed=true]{color:var(--text);background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .foot-btn:disabled{opacity:.35}:is(.vp-scope,.vp-portal) .props-kind{font-weight:600;font-size:12.5px;padding:2px 0}:is(.vp-scope,.vp-portal) .section{border-top:1px solid var(--border-soft);margin:0 -10px;padding:0 10px}:is(.vp-scope,.vp-portal) .section:first-child{border-top:none}:is(.vp-scope,.vp-portal) .section-head{display:flex;align-items:center;height:30px}:is(.vp-scope,.vp-portal) .section-toggle{display:flex;align-items:center;gap:7px;border:none;background:none;padding:0;font-weight:600;font-size:11.5px;color:var(--text);flex:1;text-align:left}:is(.vp-scope,.vp-portal) .section-toggle svg{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .section-actions{display:flex;align-items:center}:is(.vp-scope,.vp-portal) .section-body{display:flex;flex-direction:column;gap:8px;padding-bottom:12px}:is(.vp-scope,.vp-portal) .row{display:flex;align-items:center;gap:6px;min-height:26px}:is(.vp-scope,.vp-portal) .col{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .label-row{min-height:22px}:is(.vp-scope,.vp-portal) .label-w{width:76px;flex:none}:is(.vp-scope,.vp-portal) .btn-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap}:is(.vp-scope,.vp-portal) .btn-row.stretch>*{flex:1}:is(.vp-scope,.vp-portal) .toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}:is(.vp-scope,.vp-portal) .toggle-grid.one{grid-template-columns:1fr}:is(.vp-scope,.vp-portal) .input,:is(.vp-scope,.vp-portal) .select,:is(.vp-scope,.vp-portal) .num-field input{height:24px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;padding:0 7px;outline:none;min-width:0;transition:border-color .1s}:is(.vp-scope,.vp-portal) .input:hover,:is(.vp-scope,.vp-portal) .select:hover,:is(.vp-scope,.vp-portal) .num-field input:hover{border-color:var(--input-border-hover)}:is(.vp-scope,.vp-portal) .input:focus,:is(.vp-scope,.vp-portal) .select:focus,:is(.vp-scope,.vp-portal) .num-field input:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .input{width:100%;user-select:text}:is(.vp-scope,.vp-portal) .select{padding-right:4px;appearance:auto;text-overflow:ellipsis}:is(.vp-scope,.vp-portal) .select option,:is(.vp-scope,.vp-portal) .select optgroup{background:var(--menu-bg);color:var(--text)}:is(.vp-scope,.vp-portal) .num-field{display:flex;align-items:center;min-width:0;position:relative;flex:1}:is(.vp-scope,.vp-portal) .num-field input{width:100%;font-variant-numeric:tabular-nums;user-select:text;padding:0 5px;font-size:11.5px;letter-spacing:-.1px}:is(.vp-scope,.vp-portal) .num-label{flex:none;min-width:18px;padding:0 6px 0 0;color:var(--text-dim);cursor:ew-resize;white-space:nowrap;display:flex;align-items:center}:is(.vp-scope,.vp-portal) .num-field.disabled{opacity:.45}:is(.vp-scope,.vp-portal) .num-spin{display:flex;flex-direction:column;margin-left:2px}:is(.vp-scope,.vp-portal) .num-spin button{border:none;background:none;height:12px;width:14px;display:grid;place-items:center;color:var(--text-dim);padding:0}:is(.vp-scope,.vp-portal) .num-spin button:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .icon-btn{width:28px;height:26px;border:none;background:none;border-radius:4px;display:grid;place-items:center;color:var(--text);opacity:.88;flex:none}:is(.vp-scope,.vp-portal) .icon-btn:hover:not(:disabled){background:var(--chrome-hover);opacity:1}:is(.vp-scope,.vp-portal) .icon-btn.active{background:var(--chrome-active);opacity:1;box-shadow:inset 0 0 0 1px var(--border-soft)}:is(.vp-scope,.vp-portal) .icon-btn:disabled{opacity:.3}:is(.vp-scope,.vp-portal) .icon-btn.text-btn{font-weight:600;font-size:13px}:is(.vp-scope,.vp-portal) .segmented{display:flex;background:var(--input-bg);border:1px solid var(--input-border);border-radius:5px;padding:1px;gap:1px}:is(.vp-scope,.vp-portal) .segmented .icon-btn{height:22px;width:30px}:is(.vp-scope,.vp-portal) .btn{height:26px;padding:0 12px;border-radius:5px;border:1px solid var(--input-border);background:var(--chrome-3);color:var(--text);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:500}:is(.vp-scope,.vp-portal) .btn:hover:not(:disabled){background:var(--chrome-hover);border-color:var(--input-border-hover)}:is(.vp-scope,.vp-portal) .btn:active:not(:disabled){background:var(--chrome-active)}:is(.vp-scope,.vp-portal) .btn:disabled{opacity:.45}:is(.vp-scope,.vp-portal) .btn.primary{background:var(--accent-strong);border-color:var(--accent-strong);color:#fff}:is(.vp-scope,.vp-portal) .btn.primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}:is(.vp-scope,.vp-portal) .btn.danger{color:var(--danger)}:is(.vp-scope,.vp-portal) .btn.small{height:22px;padding:0 8px;font-size:11px}:is(.vp-scope,.vp-portal) .btn.big{height:38px;padding:0 18px;font-size:13px;border-radius:7px}:is(.vp-scope,.vp-portal) .btn kbd{background:#0000002e;border-color:transparent;color:inherit;opacity:.8}:is(.vp-scope,.vp-portal) .link{border:none;background:none;padding:0;color:var(--accent);cursor:pointer}:is(.vp-scope,.vp-portal) .link:hover{text-decoration:underline}:is(.vp-scope,.vp-portal) .checkbox{display:flex;align-items:center;gap:7px;cursor:default;min-height:20px}:is(.vp-scope,.vp-portal) .checkbox input{position:absolute;opacity:0;pointer-events:none}:is(.vp-scope,.vp-portal) .checkbox-box{width:14px;height:14px;border-radius:3px;border:1px solid var(--input-border-hover);background:var(--input-bg);flex:none;display:grid;place-items:center}:is(.vp-scope,.vp-portal) .checkbox input:checked+.checkbox-box{background:var(--accent-strong);border-color:var(--accent-strong)}:is(.vp-scope,.vp-portal) .checkbox input:checked+.checkbox-box:after{content:"";width:7px;height:4px;border-left:1.6px solid #fff;border-bottom:1.6px solid #fff;transform:rotate(-45deg) translate(1px,-1px)}:is(.vp-scope,.vp-portal) .checkbox input:focus-visible+.checkbox-box{box-shadow:0 0 0 2px var(--accent-soft)}:is(.vp-scope,.vp-portal) .checkbox.disabled{opacity:.5}:is(.vp-scope,.vp-portal) .radio-list{display:flex;flex-direction:column;gap:4px;margin:2px 0 4px}:is(.vp-scope,.vp-portal) .radio{display:flex;align-items:center;gap:7px}:is(.vp-scope,.vp-portal) .radio input{accent-color:var(--accent-strong);margin:0}:is(.vp-scope,.vp-portal) .slider{flex:1;appearance:none;height:4px;border-radius:2px;background:var(--track, var(--chrome-active));outline:none}:is(.vp-scope,.vp-portal) .slider::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.4);box-shadow:0 1px 2px #0006}:is(.vp-scope,.vp-portal) .slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:1px solid rgba(0,0,0,.4)}:is(.vp-scope,.vp-portal) .refpoint{display:grid;grid-template-columns:repeat(3,9px);grid-template-rows:repeat(3,9px);gap:3px;padding:3px;border:1px solid var(--border-soft);border-radius:4px;flex:none;position:relative;background:linear-gradient(var(--border-soft),var(--border-soft)) center / 1px 70% no-repeat,linear-gradient(var(--border-soft),var(--border-soft)) center / 70% 1px no-repeat}:is(.vp-scope,.vp-portal) .refpoint-dot{width:9px;height:9px;border-radius:1px;border:1px solid var(--text-dim);background:var(--chrome-2);padding:0;z-index:1}:is(.vp-scope,.vp-portal) .refpoint-dot.active{background:var(--text);border-color:var(--text)}:is(.vp-scope,.vp-portal) .transform-grid{display:flex;align-items:center;gap:6px}:is(.vp-scope,.vp-portal) .transform-fields{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:6px 8px;min-width:0}:is(.vp-scope,.vp-portal) .link-btn{width:18px;height:46px}:is(.vp-scope,.vp-portal) .radius-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:6px 8px;align-items:center}:is(.vp-scope,.vp-portal) .radius-grid .link-btn{grid-row:1 / span 2;grid-column:3}:is(.vp-scope,.vp-portal) .radius-grid .num-field:nth-of-type(3){grid-column:2;grid-row:2}:is(.vp-scope,.vp-portal) .radius-grid .num-field:nth-of-type(4){grid-column:1;grid-row:2}:is(.vp-scope,.vp-portal) .live-shape{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .appearance-row{display:flex;align-items:center;gap:8px;min-height:28px}:is(.vp-scope,.vp-portal) .appearance-label{flex:1;color:var(--text)}:is(.vp-scope,.vp-portal) .opacity-glyph{width:30px;height:22px;display:grid;place-items:center}:is(.vp-scope,.vp-portal) .opacity-glyph:before{content:"";width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,var(--text) 50%,transparent 50%);border:1px solid var(--text)}:is(.vp-scope,.vp-portal) .paint-btn{display:flex;align-items:center;gap:3px;border:1px solid transparent;border-radius:4px;padding:2px 3px;background:none;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .paint-btn:hover{border-color:var(--input-border);background:var(--input-bg)}:is(.vp-scope,.vp-portal) .paint-chip{display:inline-grid;place-items:center;border-radius:3px;background:var(--paint, transparent);box-shadow:inset 0 0 0 1px #00000073,0 0 0 1px #ffffff1a;position:relative;flex:none;font-weight:700;font-size:11px}:is(.vp-scope,.vp-portal) .paint-chip.stroke{background:transparent}:is(.vp-scope,.vp-portal) .paint-chip.stroke:before{content:"";position:absolute;inset:0;border-radius:3px;padding:5px;background:var(--paint, transparent);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}:is(.vp-scope,.vp-portal) .paint-chip.none,:is(.vp-scope,.vp-portal) .paint-chip.none.stroke:before{background:#fff linear-gradient(to top right,transparent calc(50% - 1px),#e1251b calc(50% - 1px),#e1251b calc(50% + 1px),transparent calc(50% + 1px))}:is(.vp-scope,.vp-portal) .paint-chip.none.stroke{background:transparent}:is(.vp-scope,.vp-portal) .paint-chip.mixed{background:var(--chrome-3);color:var(--text)}:is(.vp-scope,.vp-portal) .quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}:is(.vp-scope,.vp-portal) .quick-actions .btn{height:auto;min-height:26px;padding:4px 6px;font-size:11.5px;line-height:1.2;white-space:normal;text-align:center}:is(.vp-scope,.vp-portal) .align-buttons{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .char-controls{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .char-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 8px}:is(.vp-scope,.vp-portal) .popover{position:fixed;z-index:900;background:var(--menu-bg);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:8px;animation:pop .08s ease-out}:is(.vp-scope,.vp-portal) .paint-popover{width:268px}:is(.vp-scope,.vp-portal) .popover-tabs{display:flex;align-items:center;gap:2px;margin-bottom:8px}:is(.vp-scope,.vp-portal) .popover-tabs button{border:none;background:none;padding:4px 8px;border-radius:4px;color:var(--text-dim);font-weight:500}:is(.vp-scope,.vp-portal) .popover-tabs button.active{color:var(--text);background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .none-btn{padding:2px!important}:is(.vp-scope,.vp-portal) .swatch-grid-wrap{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20px,1fr));gap:3px}:is(.vp-scope,.vp-portal) .swatch{aspect-ratio:1;border:none;border-radius:3px;background:var(--paint, transparent);box-shadow:inset 0 0 0 1px #00000059;padding:0;position:relative;min-width:18px}:is(.vp-scope,.vp-portal) .swatch:hover{transform:scale(1.12);z-index:1;box-shadow:0 0 0 1px var(--text),0 2px 6px #0006}:is(.vp-scope,.vp-portal) .swatch.current{box-shadow:0 0 0 2px var(--accent),inset 0 0 0 1px #fff9}:is(.vp-scope,.vp-portal) .swatch.none{background:#fff linear-gradient(to top right,transparent calc(50% - 1px),#e1251b calc(50% - 1px),#e1251b calc(50% + 1px),transparent calc(50% + 1px))}:is(.vp-scope,.vp-portal) .swatch-group-name{display:flex;align-items:center;gap:6px;color:var(--text-dim);font-size:11px;margin-bottom:4px}:is(.vp-scope,.vp-portal) .swatch-list{display:flex;flex-direction:column}:is(.vp-scope,.vp-portal) .swatch-row{display:flex;align-items:center;gap:8px;height:26px;border:none;background:none;padding:0 4px;border-radius:4px;text-align:left}:is(.vp-scope,.vp-portal) .swatch-row .swatch{width:18px;min-width:18px;height:18px}:is(.vp-scope,.vp-portal) .swatch-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .swatch-row.selected{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .swatch-row .dim{margin-left:auto;font-size:11px}:is(.vp-scope,.vp-portal) .color-picker{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .cp-sv{position:relative;height:150px;border-radius:5px;overflow:hidden;cursor:crosshair;box-shadow:inset 0 0 0 1px #0000004d}:is(.vp-scope,.vp-portal) .color-picker.compact .cp-sv{height:120px}:is(.vp-scope,.vp-portal) .cp-sv-white{position:absolute;inset:0;background:linear-gradient(90deg,#fff,#fff0)}:is(.vp-scope,.vp-portal) .cp-sv-black{position:absolute;inset:0;background:linear-gradient(0deg,#000,#0000)}:is(.vp-scope,.vp-portal) .cp-sv-thumb{position:absolute;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000080,0 1px 4px #0006;pointer-events:none}:is(.vp-scope,.vp-portal) .cp-sliders{display:flex;align-items:center;gap:8px}:is(.vp-scope,.vp-portal) .cp-preview{width:30px;height:30px;border-radius:50%;flex:none;background:linear-gradient(var(--c),var(--c)),repeating-conic-gradient(#ccc 0 25%,#fff 0 50%) 0 0 / 8px 8px;box-shadow:inset 0 0 0 1px #00000040}:is(.vp-scope,.vp-portal) .cp-bars{flex:1;display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .cp-hue,:is(.vp-scope,.vp-portal) .cp-alpha{position:relative;height:11px;border-radius:6px;cursor:pointer;box-shadow:inset 0 0 0 1px #00000040}:is(.vp-scope,.vp-portal) .cp-hue{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}:is(.vp-scope,.vp-portal) .cp-alpha{background:linear-gradient(90deg,transparent,var(--c)),repeating-conic-gradient(#ccc 0 25%,#fff 0 50%) 0 0 / 8px 8px}:is(.vp-scope,.vp-portal) .cp-bar-thumb{position:absolute;top:50%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #00000080,0 1px 3px #0006;pointer-events:none}:is(.vp-scope,.vp-portal) .cp-fields{display:flex;align-items:center;gap:6px}:is(.vp-scope,.vp-portal) .cp-hex{display:flex;align-items:center;gap:3px;flex:1;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .cp-hex input{width:100%;height:24px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;padding:0 6px;outline:none;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;text-transform:uppercase;user-select:text}:is(.vp-scope,.vp-portal) .cp-hex input:focus{border-color:var(--accent)}:is(.vp-scope,.vp-portal) .cp-mode{width:68px}:is(.vp-scope,.vp-portal) .cp-channels{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:6px}:is(.vp-scope,.vp-portal) .cp-compare{display:flex;height:22px;margin-top:10px;border-radius:4px;overflow:hidden;box-shadow:inset 0 0 0 1px #00000040}:is(.vp-scope,.vp-portal) .cp-compare span{flex:1}:is(.vp-scope,.vp-portal) .color-targets{gap:4px}:is(.vp-scope,.vp-portal) .target-btn{display:flex;align-items:center;gap:6px;border:1px solid transparent;background:none;padding:3px 8px 3px 4px;border-radius:5px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .target-btn.active{border-color:var(--input-border);background:var(--chrome-3);color:var(--text)}:is(.vp-scope,.vp-portal) .gradient-ramp{position:relative;height:24px;border-radius:4px;margin:6px 6px 16px;background:var(--grad),repeating-conic-gradient(#ccc 0 25%,#fff 0 50%) 0 0 / 8px 8px;box-shadow:inset 0 0 0 1px #0000004d;cursor:copy}:is(.vp-scope,.vp-portal) .grad-stop{position:absolute;bottom:-14px;width:14px;height:14px;margin-left:-7px;border-radius:3px;background:var(--c);border:2px solid #fff;box-shadow:0 0 0 1px #0000008c,0 1px 3px #0006;cursor:ew-resize}:is(.vp-scope,.vp-portal) .grad-stop:before{content:"";position:absolute;left:50%;top:-7px;margin-left:-1px;width:2px;height:5px;background:#fff}:is(.vp-scope,.vp-portal) .grad-stop.active{box-shadow:0 0 0 2px var(--accent),0 1px 3px #0006}:is(.vp-scope,.vp-portal) .dash-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}:is(.vp-scope,.vp-portal) .dash-cell{display:flex;flex-direction:column;align-items:center;gap:2px}:is(.vp-scope,.vp-portal) .dash-cell .num-field input{padding:0 3px;text-align:center;font-size:11px}:is(.vp-scope,.vp-portal) .layers-panel{padding:0 0 10px;gap:0;min-height:100%}:is(.vp-scope,.vp-portal) .layers-panel .panel-footer{margin:auto 0 -10px}:is(.vp-scope,.vp-portal) .layers-list{display:flex;flex-direction:column}:is(.vp-scope,.vp-portal) .layer-row{display:flex;align-items:center;height:32px;padding-right:6px;border-bottom:1px solid var(--divider);position:relative;gap:2px}:is(.vp-scope,.vp-portal) .layer-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .layer-row.layer{background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .layer-row.layer.active{background:var(--chrome-active)}:is(.vp-scope,.vp-portal) .layer-row.selected{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .layer-row.is-hidden .thumb,:is(.vp-scope,.vp-portal) .layer-row.is-hidden .layer-name{opacity:.45}:is(.vp-scope,.vp-portal) .layer-row.drop-before:before,:is(.vp-scope,.vp-portal) .layer-row.drop-after:after{content:"";position:absolute;left:50px;right:0;height:2px;background:var(--accent);z-index:2}:is(.vp-scope,.vp-portal) .layer-row.drop-before:before{top:-1px}:is(.vp-scope,.vp-portal) .layer-row.drop-after:after{bottom:-1px}:is(.vp-scope,.vp-portal) .layer-row.drop-inside{box-shadow:inset 0 0 0 2px var(--accent)}:is(.vp-scope,.vp-portal) .layer-eye,:is(.vp-scope,.vp-portal) .layer-lock,:is(.vp-scope,.vp-portal) .layer-caret{border:none;background:none;width:22px;height:22px;display:grid;place-items:center;color:var(--text-dim);padding:0;flex:none}:is(.vp-scope,.vp-portal) .layer-eye:hover,:is(.vp-scope,.vp-portal) .layer-lock:hover,:is(.vp-scope,.vp-portal) .layer-caret:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .layer-lock{opacity:0}:is(.vp-scope,.vp-portal) .layer-row:hover .layer-lock,:is(.vp-scope,.vp-portal) .layer-lock.on{opacity:1}:is(.vp-scope,.vp-portal) .layer-indent{width:calc(var(--depth, 0) * 14px);flex:none}:is(.vp-scope,.vp-portal) .layer-colorbar{width:3px;height:22px;border-radius:2px;background:var(--layer-color);flex:none}:is(.vp-scope,.vp-portal) .thumb{flex:none;border-radius:2px;background:repeating-conic-gradient(var(--checker-a) 0 25%,var(--checker-b) 0 50%) 0 0 / 8px 8px;box-shadow:inset 0 0 0 1px var(--border-soft);margin:0 4px 0 2px}:is(.vp-scope,.vp-portal) .layer-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .layer-name.strong{font-weight:600}:is(.vp-scope,.vp-portal) .layer-rename{flex:1;height:22px;min-width:0;background:var(--input-bg);border:1px solid var(--accent);border-radius:3px;padding:0 5px;outline:none;user-select:text}:is(.vp-scope,.vp-portal) .layer-sel{width:9px;height:9px;flex:none;margin-left:4px}:is(.vp-scope,.vp-portal) .layer-sel.on{background:var(--layer-color);box-shadow:0 0 0 1px #0006}:is(.vp-scope,.vp-portal) .layer-sel.on.small{width:6px;height:6px;margin:0 1.5px 0 5.5px}:is(.vp-scope,.vp-portal) .layer-color-input{width:16px;height:16px;border:none;padding:0;background:none;opacity:0;flex:none}:is(.vp-scope,.vp-portal) .layer-row:hover .layer-color-input{opacity:1}:is(.vp-scope,.vp-portal) .artboard-list,:is(.vp-scope,.vp-portal) .history-panel{display:flex;flex-direction:column}:is(.vp-scope,.vp-portal) .artboard-row{display:flex;align-items:center;gap:8px;height:28px;padding:0 6px;border-radius:4px}:is(.vp-scope,.vp-portal) .artboard-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .artboard-row.active{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .artboard-index{width:18px;color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums}:is(.vp-scope,.vp-portal) .artboard-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .history-panel{gap:0;padding:4px}:is(.vp-scope,.vp-portal) .history-row{text-align:left;border:none;background:none;height:24px;padding:0 10px;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(.vp-scope,.vp-portal) .history-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .history-row.current{background:var(--accent-soft);font-weight:600}:is(.vp-scope,.vp-portal) .history-row.undone{color:var(--text-faint);font-style:italic}:is(.vp-scope,.vp-portal) .info-grid{display:grid;grid-template-columns:auto 1fr auto 1fr;gap:4px 8px;font-variant-numeric:tabular-nums}:is(.vp-scope,.vp-portal) .statusbar{display:flex;align-items:center;gap:12px;background:var(--chrome);border-top:1px solid var(--border);padding:0 8px;font-size:11px;color:var(--text-dim);min-width:0;overflow:hidden}:is(.vp-scope,.vp-portal) .status-zoom{display:flex;align-items:center}:is(.vp-scope,.vp-portal) .status-zoom-input{width:64px;height:18px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:3px 0 0 3px;padding:0 5px;font-size:11px;outline:none;user-select:text}:is(.vp-scope,.vp-portal) .status-zoom-select{width:18px;height:18px;border:1px solid var(--input-border);border-left:none;border-radius:0 3px 3px 0;background:var(--input-bg);font-size:11px;padding:0}:is(.vp-scope,.vp-portal) .status-artboard{display:flex;align-items:center;gap:1px}:is(.vp-scope,.vp-portal) .status-artboard button{border:none;background:none;font-size:8px;color:var(--text-dim);width:16px;height:18px;padding:0}:is(.vp-scope,.vp-portal) .status-artboard button:disabled{opacity:.35}:is(.vp-scope,.vp-portal) .status-artboard select{height:18px;font-size:11px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:3px;max-width:160px}:is(.vp-scope,.vp-portal) .status-coords{font-variant-numeric:tabular-nums;min-width:200px}:is(.vp-scope,.vp-portal) .status-brand{color:var(--text-faint);font-weight:600;letter-spacing:.02em}:is(.vp-scope,.vp-portal) .text-edit{position:absolute;left:0;top:0;transform-origin:0 0;background:transparent;border:none;outline:none;padding:0;margin:0;resize:none;overflow:hidden;user-select:text;-webkit-user-select:text;z-index:5;font-kerning:normal}:is(.vp-scope,.vp-portal) .text-edit::selection{background:#3b8bff59}:is(.vp-scope,.vp-portal) .taskbar{position:absolute;z-index:15;display:flex;align-items:center;gap:2px;padding:3px;background:var(--menu-bg);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm);animation:pop .1s ease-out}:is(.vp-scope,.vp-portal) .taskbar-btn,:is(.vp-scope,.vp-portal) .taskbar-text{border:none;background:none;height:28px;border-radius:5px;color:var(--text);display:grid;place-items:center}:is(.vp-scope,.vp-portal) .taskbar-btn{width:30px}:is(.vp-scope,.vp-portal) .taskbar-text{padding:0 10px;font-weight:500;background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .taskbar-btn:hover,:is(.vp-scope,.vp-portal) .taskbar-text:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .taskbar-sep{width:1px;height:18px;background:var(--border-soft);margin:0 2px}:is(.vp-scope,.vp-portal) .taskbar-more{position:absolute;top:calc(100% + 4px);right:0;background:var(--menu-bg);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow);padding:4px;display:flex;flex-direction:column;min-width:190px}:is(.vp-scope,.vp-portal) .taskbar-more button{border:none;background:none;text-align:left;padding:0 10px;height:26px;border-radius:4px}:is(.vp-scope,.vp-portal) .taskbar-more button:hover{background:var(--menu-hover);color:#fff}:is(.vp-scope,.vp-portal) .tool-widget{flex-direction:column}:is(.vp-scope,.vp-portal) .tool-widget .taskbar-sep{width:18px;height:1px;margin:2px 0}:is(.vp-scope,.vp-portal) .taskbar-btn.active{background:var(--chrome-active);color:var(--accent)}:is(.vp-scope,.vp-portal) .taskbar-btn:disabled{opacity:.4}:is(.vp-scope,.vp-portal) .puppet-bar{padding:3px 8px;gap:6px;white-space:nowrap}:is(.vp-scope,.vp-portal) .drop-overlay{position:absolute;inset:12px;border:2px dashed var(--accent);border-radius:12px;background:#3b8bff14;display:grid;place-items:center;font-size:16px;font-weight:600;color:var(--text);pointer-events:none;z-index:50}:is(.vp-scope,.vp-portal) .home{flex:1;overflow:auto;background:var(--app-bg);display:flex;justify-content:center}:is(.vp-scope,.vp-portal) .home-inner{width:min(880px,100%);padding:56px 32px}:is(.vp-scope,.vp-portal) .home-header{display:flex;align-items:center;gap:18px;margin-bottom:28px}:is(.vp-scope,.vp-portal) .home-header h1{margin:0;font-size:28px;font-weight:700;letter-spacing:-.01em}:is(.vp-scope,.vp-portal) .home-header p{margin:4px 0 0;color:var(--text-dim);font-size:14px}:is(.vp-scope,.vp-portal) .home-actions{display:flex;gap:10px;margin-bottom:36px}:is(.vp-scope,.vp-portal) .home h2{font-size:13px;font-weight:600;color:var(--text-dim);margin:0 0 12px;text-transform:uppercase;letter-spacing:.05em}:is(.vp-scope,.vp-portal) .home-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-bottom:32px}:is(.vp-scope,.vp-portal) .preset-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px 12px;border-radius:10px;border:1px solid var(--border-soft);background:var(--chrome-2);color:var(--text)}:is(.vp-scope,.vp-portal) .preset-card:hover{border-color:var(--input-border-hover);background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .preset-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .preset-thumb{width:76px;height:76px;display:grid;place-items:center}:is(.vp-scope,.vp-portal) .preset-thumb span{display:block;background:#fff;border-radius:2px;box-shadow:0 1px 4px #00000059}:is(.vp-scope,.vp-portal) .preset-name{font-weight:600}:is(.vp-scope,.vp-portal) .preset-size{color:var(--text-dim);font-size:11px}:is(.vp-scope,.vp-portal) .home-recent{list-style:none;padding:0;margin:0 0 24px}:is(.vp-scope,.vp-portal) .home-recent li{padding:4px 0}:is(.vp-scope,.vp-portal) .home-hint{color:var(--text-faint)}:is(.vp-scope,.vp-portal) .dialog-backdrop{position:fixed;inset:0;background:#00000059;display:grid;place-items:center;z-index:800;animation:fade .12s ease-out}@keyframes fade{0%{opacity:0}}:is(.vp-scope,.vp-portal) .dialog:focus{outline:none}:is(.vp-scope,.vp-portal) .dialog{max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);display:flex;flex-direction:column;background:var(--chrome-2);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);animation:pop .12s ease-out}:is(.vp-scope,.vp-portal) .dialog-title{display:flex;align-items:center;justify-content:space-between;padding:12px 14px 8px 18px;font-weight:600;font-size:13.5px;cursor:move}:is(.vp-scope,.vp-portal) .dialog-close{border:none;background:none;width:26px;height:26px;border-radius:5px;font-size:18px;color:var(--text-dim);cursor:pointer}:is(.vp-scope,.vp-portal) .dialog-close:hover{background:var(--chrome-hover);color:var(--text)}:is(.vp-scope,.vp-portal) .dialog-body{padding:6px 18px 12px;overflow:auto;display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .dialog-body h4{margin:8px 0 2px;font-size:11.5px;color:var(--text-dim);font-weight:600}:is(.vp-scope,.vp-portal) .dialog-body p{margin:4px 0;line-height:1.5}:is(.vp-scope,.vp-portal) .dialog-buttons{display:flex;align-items:center;gap:8px;padding:12px 18px 16px}:is(.vp-scope,.vp-portal) .dialog-buttons .btn{min-width:80px}:is(.vp-scope,.vp-portal) .dialog-body>.dialog-buttons{padding:12px 0 4px}:is(.vp-scope,.vp-portal) .dialog-options{display:flex;flex-direction:column;gap:8px;padding-top:8px;margin-top:4px;border-top:1px solid var(--border-soft)}:is(.vp-scope,.vp-portal) .field{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:4px 10px}:is(.vp-scope,.vp-portal) .field-label{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .field-control{display:flex;align-items:center;min-width:0}:is(.vp-scope,.vp-portal) .field-hint{grid-column:2;color:var(--text-faint);font-size:11px}:is(.vp-scope,.vp-portal) .newdoc-layout{display:grid;grid-template-columns:1fr 240px;gap:18px;min-height:360px}:is(.vp-scope,.vp-portal) .newdoc-cats{display:flex;gap:4px;margin-bottom:12px;flex-wrap:wrap}:is(.vp-scope,.vp-portal) .newdoc-cats button{border:none;background:none;padding:6px 10px;border-radius:6px;font-weight:600;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .newdoc-cats button.active{color:var(--text);background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .newdoc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px}:is(.vp-scope,.vp-portal) .newdoc-details{border-left:1px solid var(--border-soft);padding-left:18px;display:flex;flex-direction:column;gap:10px}:is(.vp-scope,.vp-portal) .newdoc-details h3{margin:0;font-size:11.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}:is(.vp-scope,.vp-portal) .newdoc-details .field{grid-template-columns:82px 1fr}:is(.vp-scope,.vp-portal) .title-input{height:30px;font-size:14px;font-weight:600}:is(.vp-scope,.vp-portal) .export-layout{display:grid;grid-template-columns:1fr 280px;gap:18px}:is(.vp-scope,.vp-portal) .export-preview{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .export-preview-img{aspect-ratio:4 / 3;border-radius:8px;display:grid;place-items:center;background:repeating-conic-gradient(var(--checker-a) 0 25%,var(--checker-b) 0 50%) 0 0 / 14px 14px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--border-soft)}:is(.vp-scope,.vp-portal) .export-preview-img img{max-width:92%;max-height:92%;box-shadow:0 2px 10px #00000059}:is(.vp-scope,.vp-portal) .export-options{display:flex;flex-direction:column;gap:10px}:is(.vp-scope,.vp-portal) .export-options .field{grid-template-columns:70px 1fr}:is(.vp-scope,.vp-portal) .artboard-checks{display:flex;flex-direction:column;gap:4px;padding-left:22px;max-height:150px;overflow:auto}:is(.vp-scope,.vp-portal) .prefs-layout{display:grid;grid-template-columns:180px 1fr;gap:16px;min-height:300px}:is(.vp-scope,.vp-portal) .prefs-tabs{display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--border-soft);padding-right:10px}:is(.vp-scope,.vp-portal) .prefs-tabs button{text-align:left;border:none;background:none;padding:6px 10px;border-radius:5px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .prefs-tabs button.active{background:var(--chrome-3);color:var(--text);font-weight:600}:is(.vp-scope,.vp-portal) .prefs-body{display:flex;flex-direction:column;gap:10px}:is(.vp-scope,.vp-portal) .shortcuts-dialog .dialog-body{max-height:70vh}:is(.vp-scope,.vp-portal) .shortcut-groups{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .shortcut-table{width:100%;border-collapse:collapse}:is(.vp-scope,.vp-portal) .shortcut-table td{padding:4px 6px;border-bottom:1px solid var(--divider)}:is(.vp-scope,.vp-portal) .shortcut-table td:last-child{text-align:right}:is(.vp-scope,.vp-portal) .search{margin-bottom:8px}:is(.vp-scope,.vp-portal) .about{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:12px 6px 18px}:is(.vp-scope,.vp-portal) .about h2{margin:6px 0 0}:is(.vp-scope,.vp-portal) .welcome-tips{display:grid;grid-template-columns:1fr 1fr;gap:12px}:is(.vp-scope,.vp-portal) .tip{background:var(--chrome-3);border-radius:8px;padding:12px}:is(.vp-scope,.vp-portal) .tip h4{margin:0 0 6px!important;color:var(--text)!important}:is(.vp-scope,.vp-portal) .color-input{width:36px;height:24px;border:1px solid var(--input-border);border-radius:4px;padding:0;background:none}:is(.vp-scope,.vp-portal) .color-swatch-inline{width:24px;height:24px;border-radius:4px;box-shadow:inset 0 0 0 1px #0000004d}:is(.vp-scope,.vp-portal) .palette-backdrop{position:fixed;inset:0;z-index:950;background:#0003;display:flex;justify-content:center;padding-top:12vh}:is(.vp-scope,.vp-portal) .palette{width:min(560px,calc(100vw - 32px));max-height:60vh;display:flex;flex-direction:column;background:var(--menu-bg);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);overflow:hidden;animation:pop .1s ease-out}:is(.vp-scope,.vp-portal) .palette-input{flex:none;height:44px;border:none;border-bottom:1px solid var(--border-soft);background:transparent;padding:0 16px;font-size:15px;outline:none;user-select:text}:is(.vp-scope,.vp-portal) .palette-list{overflow-y:auto;padding:4px}:is(.vp-scope,.vp-portal) .palette-item{display:flex;align-items:center;justify-content:space-between;height:30px;padding:0 12px;border-radius:6px}:is(.vp-scope,.vp-portal) .palette-item.active{background:var(--menu-hover);color:#fff}:is(.vp-scope,.vp-portal) .palette-item.active kbd{color:#fff;background:#ffffff2e;border-color:transparent}:is(.vp-scope,.vp-portal) .palette-item.disabled{opacity:.45}:is(.vp-scope,.vp-portal) .palette-empty{padding:18px;text-align:center;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .tooltip{position:fixed;z-index:2000;pointer-events:none;background:#111;color:#f2f2f2;font-size:11.5px;padding:5px 8px;border-radius:5px;white-space:nowrap;box-shadow:0 2px 8px #00000059;animation:fade .1s ease-out}:is(.vp-scope,.vp-portal) .tooltip-bottom{transform:translate(-50%)}:is(.vp-scope,.vp-portal) .tooltip-top{transform:translate(-50%,-100%)}:is(.vp-scope,.vp-portal) .tooltip-right{transform:translateY(-50%)}:is(.vp-scope,.vp-portal) .tooltip-left{transform:translate(-100%,-50%)}:is(.vp-scope,.vp-portal) .toast{position:fixed;left:50%;bottom:40px;transform:translate(-50%);z-index:3000;background:#1c1c1c;color:#f2f2f2;padding:10px 16px;border-radius:8px;box-shadow:var(--shadow);font-size:12.5px;max-width:min(560px,calc(100vw - 32px));animation:toast .18s ease-out;border-left:3px solid var(--accent)}:is(.vp-scope,.vp-portal) .toast-error{border-left-color:var(--danger)}@keyframes toast{0%{opacity:0;transform:translate(-50%,8px)}}:is(.vp-scope,.vp-portal) .app.panels-hidden .toolbar,:is(.vp-scope,.vp-portal) .app.panels-hidden .dock{display:none}@media(max-width:760px){:is(.vp-scope,.vp-portal) .dock{width:240px!important}:is(.vp-scope,.vp-portal) .newdoc-layout,:is(.vp-scope,.vp-portal) .export-layout,:is(.vp-scope,.vp-portal) .prefs-layout{grid-template-columns:1fr}:is(.vp-scope,.vp-portal) .newdoc-details{border-left:none;padding-left:0}}@media(prefers-reduced-motion:reduce){.vp-scope,:is(.vp-scope,.vp-portal) *{animation:none!important;transition:none!important}}:is(.vp-scope,.vp-portal) .grad-stop-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end}:is(.vp-scope,.vp-portal) .grad-field{display:flex;flex-direction:column;gap:3px;min-width:0}:is(.vp-scope,.vp-portal) .appearance-panel{display:flex;flex-direction:column;gap:4px}:is(.vp-scope,.vp-portal) .ap-header{display:flex;align-items:baseline;gap:8px;padding:0 0 4px}:is(.vp-scope,.vp-portal) .ap-title{font-weight:600;font-size:12.5px}:is(.vp-scope,.vp-portal) .ap-list{display:flex;flex-direction:column;border:1px solid var(--border-soft);border-radius:6px;overflow:hidden}:is(.vp-scope,.vp-portal) .ap-row{display:flex;align-items:center;gap:6px;min-height:30px;padding:2px 6px 2px 2px;border-bottom:1px solid var(--border-soft);position:relative;cursor:default}:is(.vp-scope,.vp-portal) .ap-row:last-child{border-bottom:none}:is(.vp-scope,.vp-portal) .ap-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .ap-row.selected{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .ap-row.nested{padding-left:22px;min-height:24px}:is(.vp-scope,.vp-portal) .ap-row.dragging{opacity:.45}:is(.vp-scope,.vp-portal) .ap-item{cursor:grab}:is(.vp-scope,.vp-portal) .ap-label{min-width:46px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .ap-eye,:is(.vp-scope,.vp-portal) .ap-eye-spacer{width:22px;height:22px;flex:none}:is(.vp-scope,.vp-portal) .ap-eye{border:none;background:none;color:var(--text-dim);border-radius:4px;display:grid;place-items:center}:is(.vp-scope,.vp-portal) .ap-eye:hover{color:var(--text);background:var(--chrome-3)}:is(.vp-scope,.vp-portal) .ap-width{margin-left:auto}:is(.vp-scope,.vp-portal) .ap-fx-name{text-align:left}:is(.vp-scope,.vp-portal) .ap-fx-badge{font-family:Georgia,Times New Roman,serif;font-style:italic;font-weight:700;font-size:12px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .ap-opacity .link{color:var(--text)}:is(.vp-scope,.vp-portal) .ap-opacity-editor{position:absolute;z-index:5;right:6px;top:calc(100% - 2px);display:flex;flex-direction:column;gap:6px;width:190px;padding:8px;background:var(--menu-bg);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow)}:is(.vp-scope,.vp-portal) .ap-add-stroke,:is(.vp-scope,.vp-portal) .ap-add-fill{width:13px;height:13px;border-radius:2px;display:inline-block}:is(.vp-scope,.vp-portal) .ap-add-fill{background:var(--text-dim)}:is(.vp-scope,.vp-portal) .ap-add-stroke{border:3px solid var(--text-dim)}:is(.vp-scope,.vp-portal) .gs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:6px;padding-bottom:6px}:is(.vp-scope,.vp-portal) .gs-swatch{aspect-ratio:1;display:grid;place-items:center;border:1px solid var(--border-soft);border-radius:6px;background:var(--checker-a);padding:0}:is(.vp-scope,.vp-portal) .gs-swatch:hover{border-color:var(--input-border-hover)}:is(.vp-scope,.vp-portal) .gs-swatch.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .effect-dialog{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}:is(.vp-scope,.vp-portal) .effect-slider-row{display:flex;align-items:center;gap:8px;width:100%}:is(.vp-scope,.vp-portal) .effect-slider-row .slider{flex:1;min-width:0}:is(.vp-scope,.vp-portal) .effect-slider-field{width:92px;flex:none}:is(.vp-scope,.vp-portal) .radio-row{display:flex;gap:16px}:is(.vp-scope,.vp-portal) .fx-gallery{display:grid;grid-template-columns:422px minmax(0,1fr) 268px;gap:14px;min-height:440px}:is(.vp-scope,.vp-portal) .fxg-preview{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .fxg-preview canvas,:is(.vp-scope,.vp-portal) .fxg-thumb canvas{border:1px solid var(--border-soft);border-radius:3px;background:#fff}:is(.vp-scope,.vp-portal) .fxg-browser{max-height:460px;overflow:auto;padding-right:4px}:is(.vp-scope,.vp-portal) .fxg-folder{display:flex;align-items:center;gap:6px;width:100%;padding:4px 2px;border:0;background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}:is(.vp-scope,.vp-portal) .fxg-caret{width:12px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .fxg-thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:6px;padding:2px 0 10px 16px}:is(.vp-scope,.vp-portal) .fxg-thumb{display:flex;flex-direction:column;align-items:center;gap:3px;padding:3px;border:1px solid transparent;border-radius:4px;background:none;color:var(--text-dim);font:inherit;font-size:11px;cursor:pointer}:is(.vp-scope,.vp-portal) .fxg-thumb:hover{border-color:var(--input-border-hover)}:is(.vp-scope,.vp-portal) .fxg-thumb.active{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}:is(.vp-scope,.vp-portal) .fxg-side{display:flex;flex-direction:column;gap:8px;min-width:0}:is(.vp-scope,.vp-portal) .fxg-params{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .fxg-param{display:flex;flex-direction:column;gap:2px}:is(.vp-scope,.vp-portal) .fxg-param-head{display:flex;align-items:center;justify-content:space-between;gap:8px}:is(.vp-scope,.vp-portal) .fxg-param-field{width:96px;flex:none}:is(.vp-scope,.vp-portal) .fxg-layers{margin-top:auto;max-height:128px;overflow:auto;border:1px solid var(--border-soft);border-radius:4px}:is(.vp-scope,.vp-portal) .fxg-layer{display:flex;align-items:center;gap:6px;padding:1px 6px;cursor:pointer}:is(.vp-scope,.vp-portal) .fxg-layer.selected{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .fxg-layer-buttons{display:flex;justify-content:flex-end;gap:4px}:is(.vp-scope,.vp-portal) .free-distort{display:flex;flex-direction:column;align-items:center;gap:8px}:is(.vp-scope,.vp-portal) .free-distort-canvas{background:var(--input-bg);border:1px solid var(--border-soft);border-radius:6px;touch-action:none}:is(.vp-scope,.vp-portal) .fd-original{fill:none;stroke:var(--text-faint);stroke-dasharray:3 3}:is(.vp-scope,.vp-portal) .fd-art{fill:none;stroke:var(--text);stroke-width:1}:is(.vp-scope,.vp-portal) .fd-frame{fill:none;stroke:var(--accent);stroke-width:1.2}:is(.vp-scope,.vp-portal) .fd-handle{fill:var(--chrome-2);stroke:var(--accent);stroke-width:1.5;cursor:move}:is(.vp-scope,.vp-portal) .pattern-options{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:16px;align-items:start}:is(.vp-scope,.vp-portal) .pattern-fields{display:flex;flex-direction:column;gap:8px;min-width:0}:is(.vp-scope,.vp-portal) .pattern-preview{border:1px solid var(--border);border-radius:4px;background:#fff}@media(max-width:520px){:is(.vp-scope,.vp-portal) .pattern-options{grid-template-columns:1fr}}:is(.vp-scope,.vp-portal) .radio.disabled{opacity:.45}:is(.vp-scope,.vp-portal) .corner-type-name{margin-left:8px}:is(.vp-scope,.vp-portal) .corner-controls{display:flex;align-items:center;gap:6px}:is(.vp-scope,.vp-portal) .corner-controls .segmented{flex:none}:is(.vp-scope,.vp-portal) .color-strip{display:inline-flex;flex:none;width:64px;height:14px;border-radius:3px;overflow:hidden;box-shadow:inset 0 0 0 1px #0000004d}:is(.vp-scope,.vp-portal) .color-strip>span{flex:1}:is(.vp-scope,.vp-portal) .harmony-btn{display:flex;align-items:center;gap:7px;flex:1;min-width:0;height:24px;padding:0 7px 0 5px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;color:var(--text);text-align:left}:is(.vp-scope,.vp-portal) .harmony-btn:hover,:is(.vp-scope,.vp-portal) .harmony-btn.open{border-color:var(--input-border-hover)}:is(.vp-scope,.vp-portal) .harmony-btn:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);outline:none}:is(.vp-scope,.vp-portal) .harmony-btn-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .harmony-btn svg{color:var(--text-dim);flex:none}:is(.vp-scope,.vp-portal) .harmony-pop{padding:4px}:is(.vp-scope,.vp-portal) .harmony-list{max-height:min(380px,60vh);overflow-y:auto;outline:none}:is(.vp-scope,.vp-portal) .harmony-item{display:flex;align-items:center;gap:9px;height:26px;padding:0 8px 0 5px;border-radius:4px;white-space:nowrap}:is(.vp-scope,.vp-portal) .harmony-item.current{font-weight:600}:is(.vp-scope,.vp-portal) .harmony-item.active{background:var(--menu-hover);color:#fff}:is(.vp-scope,.vp-portal) .menu-pop{padding:4px}:is(.vp-scope,.vp-portal) .menu-pop-list{min-width:210px;max-height:min(460px,70vh);overflow-y:auto;outline:none}:is(.vp-scope,.vp-portal) .menu-heading{padding:6px 10px 3px 24px;font-size:10.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint)}:is(.vp-scope,.vp-portal) .icon-btn.small{width:22px;height:22px}:is(.vp-scope,.vp-portal) .cg-head{gap:6px}:is(.vp-scope,.vp-portal) .cg-base{width:26px;height:26px;flex:none;border:none;border-radius:4px;padding:0;background:var(--c);box-shadow:inset 0 0 0 1px #00000059,0 0 0 1px var(--border-soft)}:is(.vp-scope,.vp-portal) .cg-base:hover{box-shadow:inset 0 0 0 1px #00000059,0 0 0 1px var(--text-dim)}:is(.vp-scope,.vp-portal) .cg-strip{display:flex;height:22px;border-radius:4px;overflow:hidden;box-shadow:inset 0 0 0 1px #00000040}:is(.vp-scope,.vp-portal) .cg-strip .cg-cell{flex:1;height:100%}:is(.vp-scope,.vp-portal) .cg-cell{border:none;padding:0;border-radius:0;min-width:0;cursor:pointer}:is(.vp-scope,.vp-portal) .cg-cell:hover{position:relative;z-index:1;box-shadow:0 0 0 1px var(--chrome-2),0 0 0 2px var(--text)}:is(.vp-scope,.vp-portal) .cg-grid{display:grid;gap:1px}:is(.vp-scope,.vp-portal) .cg-grid .cg-cell{height:18px}:is(.vp-scope,.vp-portal) .cg-grid .cg-cell.centre{box-shadow:inset 0 0 0 1px #ffffffd9,inset 0 0 0 2px #00000059}:is(.vp-scope,.vp-portal) .cg-sides{display:flex;align-items:center;gap:8px;margin-top:-2px;font-size:11px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .cg-limit{flex:1;min-width:0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-faint)}:is(.vp-scope,.vp-portal) .cg-variation{height:22px;max-width:180px;font-size:11.5px;margin-left:4px}:is(.vp-scope,.vp-portal) .cg-options{width:250px;display:flex;flex-direction:column;gap:8px;padding:10px 12px}:is(.vp-scope,.vp-portal) .cg-options-title{font-weight:600;font-size:12px}:is(.vp-scope,.vp-portal) .cg-options .label-w{width:70px}:is(.vp-scope,.vp-portal) .cg-less-more{display:flex;justify-content:space-between;margin:-6px 0 0 76px;font-size:10.5px}:is(.vp-scope,.vp-portal) .library-window{position:fixed;z-index:700;width:296px;display:flex;flex-direction:column;background:var(--chrome-2);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);animation:pop .1s ease-out;outline:none}:is(.vp-scope,.vp-portal) .library-head{display:flex;align-items:center;gap:4px;height:32px;padding:0 4px 0 10px;border-bottom:1px solid var(--border-soft);background:var(--chrome);border-radius:8px 8px 0 0;cursor:move;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .library-title{flex:1;min-width:0;margin-left:3px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .library-body{max-height:min(460px,60vh);overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:10px}:is(.vp-scope,.vp-portal) .library-body .swatch-group-name{margin-bottom:4px}:is(.vp-scope,.vp-portal) .library-group-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .library-foot .dim{white-space:nowrap}:is(.vp-scope,.vp-portal) .library-foot{display:flex;align-items:center;gap:6px;padding:6px 8px 6px 10px;border-top:1px solid var(--border-soft);background:var(--chrome);border-radius:0 0 8px 8px;font-size:11px}:is(.vp-scope,.vp-portal) .pct-rows{display:flex;flex-direction:column;gap:10px;padding:4px 0 6px}:is(.vp-scope,.vp-portal) .pct-row{display:grid;grid-template-columns:82px 1fr 76px;align-items:center;gap:10px}:is(.vp-scope,.vp-portal) .pct-label{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .pct-row .slider{height:6px;border-radius:3px;box-shadow:inset 0 0 0 1px #0003}:is(.vp-scope,.vp-portal) .balance-mode{gap:10px;margin-bottom:2px}:is(.vp-scope,.vp-portal) .balance-options{gap:14px;padding-top:8px;border-top:1px solid var(--border-soft)}:is(.vp-scope,.vp-portal) .rc-top{display:flex;align-items:center;gap:18px;padding-bottom:10px;border-bottom:1px solid var(--border-soft);margin-bottom:4px}:is(.vp-scope,.vp-portal) .rc-inline{display:flex;align-items:center;gap:8px}:is(.vp-scope,.vp-portal) .rc-summary{font-size:11.5px}:is(.vp-scope,.vp-portal) .rc-layout{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:20px}:is(.vp-scope,.vp-portal) .rc-left{display:flex;flex-direction:column;min-width:0}:is(.vp-scope,.vp-portal) .rc-table-head{display:grid;grid-template-columns:minmax(0,1fr) 42px 72px;gap:6px;padding:2px 15px 5px 8px;font-size:11px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .rc-table-head span:last-child{grid-column:3}:is(.vp-scope,.vp-portal) .rc-rows{flex:1 1 0;min-height:300px;overflow-y:auto;padding:4px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;display:flex;flex-direction:column;gap:2px}:is(.vp-scope,.vp-portal) .rc-rows:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .rc-row{display:grid;grid-template-columns:minmax(0,1fr) 42px 72px;gap:6px;align-items:center;flex:none;height:30px;padding:0 6px 0 4px;border-radius:4px;cursor:default}:is(.vp-scope,.vp-portal) .rc-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .rc-row.selected{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .rc-current{display:flex;gap:2px;height:20px;min-width:0}:is(.vp-scope,.vp-portal) .rc-current>span{flex:1 1 0;min-width:3px;border-radius:2px;box-shadow:inset 0 0 0 1px #0000004d}:is(.vp-scope,.vp-portal) .rc-arrow{display:grid;place-items:center;height:22px;border:none;background:none;border-radius:4px;padding:0;color:var(--text)}:is(.vp-scope,.vp-portal) .rc-arrow:hover{background:var(--chrome-active)}:is(.vp-scope,.vp-portal) .rc-row.excluded .rc-arrow{color:var(--text-faint)}:is(.vp-scope,.vp-portal) .rc-new{height:20px;border-radius:3px;background:var(--c);box-shadow:inset 0 0 0 1px #0000004d}:is(.vp-scope,.vp-portal) .rc-row.excluded .rc-new{background:linear-gradient(to top right,transparent calc(50% - 1px),var(--danger) calc(50% - 1px),var(--danger) calc(50% + 1px),transparent calc(50% + 1px)),var(--chrome-3);opacity:.6}:is(.vp-scope,.vp-portal) .rc-empty{margin:auto;padding:20px;max-width:280px;text-align:center;color:var(--text-dim);line-height:1.5}:is(.vp-scope,.vp-portal) .rc-preserved{display:flex;align-items:center;gap:4px;margin-top:8px;font-size:11px}:is(.vp-scope,.vp-portal) .rc-preserved .dim{margin-right:4px}:is(.vp-scope,.vp-portal) .rc-chip{width:14px;height:14px;border-radius:2px;box-shadow:inset 0 0 0 1px #00000059}:is(.vp-scope,.vp-portal) .rc-tools{display:flex;align-items:center;gap:2px;margin-top:6px}:is(.vp-scope,.vp-portal) .rc-tool{width:30px;height:28px}:is(.vp-scope,.vp-portal) .rc-right{display:flex;flex-direction:column;gap:8px;min-width:0}:is(.vp-scope,.vp-portal) .rc-subhead{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:12px;height:18px}:is(.vp-scope,.vp-portal) .rc-subhead .dim{font-weight:400;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px}:is(.vp-scope,.vp-portal) .rc-hint{height:196px;display:grid;place-items:center;text-align:center;padding:16px;border:1px dashed var(--border-soft);border-radius:6px;line-height:1.5}:is(.vp-scope,.vp-portal) .rc-fields{display:flex;flex-direction:column;gap:10px;margin-top:6px;padding-top:12px;border-top:1px solid var(--border-soft)}:is(.vp-scope,.vp-portal) .rc-field{display:flex;flex-direction:column;gap:5px}:is(.vp-scope,.vp-portal) .rc-field .select{width:100%}:is(.vp-scope,.vp-portal) .rc-adjust-label{width:84px;flex:none}:is(.vp-scope,.vp-portal) .rc-checks{display:flex;flex-wrap:wrap;gap:4px 14px}:is(.vp-scope,.vp-portal) .skew-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:8px;margin:2px 0 8px}:is(.vp-scope,.vp-portal) .flare-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}:is(.vp-scope,.vp-portal) .flare-options section{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .radio-row{display:flex;flex-wrap:wrap;gap:4px 14px}@media(max-width:560px){:is(.vp-scope,.vp-portal) .flare-options{grid-template-columns:1fr}}:is(.vp-scope,.vp-portal) .shortcut-keys{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px}:is(.vp-scope,.vp-portal) .shortcut-chip{display:inline-flex;align-items:center}:is(.vp-scope,.vp-portal) .kbd-btn{border:none;background:none;padding:0;cursor:pointer}:is(.vp-scope,.vp-portal) .kbd-btn:hover kbd,:is(.vp-scope,.vp-portal) .kbd-btn:focus-visible kbd{border-color:var(--accent)}:is(.vp-scope,.vp-portal) .kbd-btn.capturing kbd{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}:is(.vp-scope,.vp-portal) .icon-btn.tiny{width:20px;height:20px}:is(.vp-scope,.vp-portal) .shortcut-table tr.changed td:first-child{font-weight:600}:is(.vp-scope,.vp-portal) .shortcut-notice{color:var(--accent);margin:0 0 6px}:is(.vp-scope,.vp-portal) .trace-quick{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}:is(.vp-scope,.vp-portal) .trace-quick-btn{height:30px;border:1px solid transparent;border-radius:5px;background:none;color:var(--text);display:grid;place-items:center}:is(.vp-scope,.vp-portal) .trace-quick-btn:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .trace-quick-btn.active{background:var(--chrome-active);border-color:var(--accent)}:is(.vp-scope,.vp-portal) .trace-row{display:flex;align-items:center;gap:8px;min-height:26px}:is(.vp-scope,.vp-portal) .trace-row.top{align-items:flex-start}:is(.vp-scope,.vp-portal) .trace-row.top .trace-label{padding-top:3px}:is(.vp-scope,.vp-portal) .trace-label{width:86px;flex:none;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:is(.vp-scope,.vp-portal) .trace-control{flex:1;min-width:0;display:flex;align-items:center;gap:6px}:is(.vp-scope,.vp-portal) .trace-control>.select{flex:1;min-width:0}:is(.vp-scope,.vp-portal) .trace-control>.num-field{flex:none}:is(.vp-scope,.vp-portal) .trace-control .slider{min-width:0}:is(.vp-scope,.vp-portal) .trace-hints{display:flex;justify-content:space-between;margin:-5px 68px 0 94px;font-size:10.5px;color:var(--text-faint)}:is(.vp-scope,.vp-portal) .trace-checks{display:flex;gap:14px;flex-wrap:wrap}:is(.vp-scope,.vp-portal) .trace-checks.col{flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .trace-panel .section-body{gap:6px}:is(.vp-scope,.vp-portal) .trace-stats{display:flex;align-items:center;gap:14px;min-height:22px;font-variant-numeric:tabular-nums}:is(.vp-scope,.vp-portal) .trace-footer .checkbox{flex:none}:is(.vp-scope,.vp-portal) .trace-spinner{width:12px;height:12px;flex:none;border-radius:50%;border:2px solid var(--border-soft);border-top-color:var(--accent);animation:trace-spin .75s linear infinite}@keyframes trace-spin{to{transform:rotate(360deg)}}:is(.vp-scope,.vp-portal) .trace-menu-btn{padding:0 10px}:is(.vp-scope,.vp-portal) .trace-progress{position:absolute;top:32px;left:0;right:0;width:max-content;margin:0 auto;z-index:16;display:flex;align-items:center;gap:10px;padding:6px 8px 6px 12px;background:var(--menu-bg);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-sm);animation:pop .1s ease-out}:is(.vp-scope,.vp-portal) .text-style-list{list-style:none;margin:0;padding:4px 0;max-height:260px;overflow-y:auto}:is(.vp-scope,.vp-portal) .text-style-row{display:flex;align-items:center;justify-content:space-between;padding:4px 10px;cursor:default;border-radius:3px;user-select:none}:is(.vp-scope,.vp-portal) .text-style-row:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .text-style-row.active{background:var(--accent-soft)}:is(.vp-scope,.vp-portal) .override-mark{font-weight:700;color:var(--accent);padding:0 4px}:is(.vp-scope,.vp-portal) .style-attr-grid{display:grid;gap:6px;margin-top:10px}:is(.vp-scope,.vp-portal) .style-attr-row{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:10px}:is(.vp-scope,.vp-portal) .layer-color-row{display:flex;gap:8px;align-items:center}:is(.vp-scope,.vp-portal) .layer-color-swatch{width:34px;height:24px;padding:0;border:1px solid var(--border);border-radius:4px;background:none}:is(.vp-scope,.vp-portal) .dim-images-row{display:flex;align-items:center;gap:10px;margin-top:8px}:is(.vp-scope,.vp-portal) .layer-eye.outline-view svg{opacity:.45;stroke-dasharray:2 2}:is(.vp-scope,.vp-portal) .layer-name.nonprinting{font-style:italic}:is(.vp-scope,.vp-portal) .tr-mask-row{display:flex;align-items:flex-start;gap:12px;margin-top:8px}:is(.vp-scope,.vp-portal) .tr-thumbs{display:flex;align-items:center;gap:2px}:is(.vp-scope,.vp-portal) .tr-thumb{width:44px;height:44px;padding:1px;display:grid;place-items:center;border:1px solid var(--border-soft);border-radius:3px;background:var(--chrome-3);position:relative}:is(.vp-scope,.vp-portal) .tr-thumb .thumb{margin:0}:is(.vp-scope,.vp-portal) .tr-thumb.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}:is(.vp-scope,.vp-portal) .tr-mask .thumb{background:none;box-shadow:none}:is(.vp-scope,.vp-portal) .tr-mask.inverted .thumb{filter:invert(1)}:is(.vp-scope,.vp-portal) .tr-mask.empty{border-style:dashed;background:none}:is(.vp-scope,.vp-portal) .tr-mask.disabled-mask:after{content:"";position:absolute;inset:4px;background:linear-gradient(45deg,transparent 46%,#e5322d 46% 54%,transparent 54%),linear-gradient(-45deg,transparent 46%,#e5322d 46% 54%,transparent 54%)}:is(.vp-scope,.vp-portal) .tr-link{width:18px;height:22px;padding:0;border:0;background:none;display:grid;place-items:center;color:var(--text-dim);border-radius:3px}:is(.vp-scope,.vp-portal) .tr-menu{margin-left:auto}:is(.vp-scope,.vp-portal) .tr-link.on{color:var(--text)}:is(.vp-scope,.vp-portal) .tr-mask-controls{display:flex;flex-direction:column;align-items:flex-start;gap:4px}:is(.vp-scope,.vp-portal) .wand-panel .wand-sep{border-top:1px solid var(--border-soft);margin:2px 0}:is(.vp-scope,.vp-portal) .wand-panel .wand-check{width:118px;flex:none}:is(.vp-scope,.vp-portal) .wand-panel .wand-row{padding-right:28px}:is(.vp-scope,.vp-portal) .wand-panel .wand-row:first-child{padding-right:0}:is(.vp-scope,.vp-portal) .layer-name.has-mask{text-decoration:underline dashed;text-underline-offset:3px}:is(.vp-scope,.vp-portal) .saved-selection-list{display:flex;flex-direction:column;max-height:180px;overflow:auto;border:1px solid var(--border-soft);border-radius:4px;padding:2px}:is(.vp-scope,.vp-portal) .saved-selection-item{text-align:left;padding:4px 8px;border:0;border-radius:3px;background:none;color:var(--text);cursor:pointer}:is(.vp-scope,.vp-portal) .saved-selection-item:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .saved-selection-item.active{background:var(--accent);color:var(--accent-text)}:is(.vp-scope,.vp-portal) .saved-selection-item.deleted{text-decoration:line-through;opacity:.6}:is(.vp-scope,.vp-portal) .split-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}:is(.vp-scope,.vp-portal) .split-grid .field,:is(.vp-scope,.vp-portal) .two-fields .field{grid-template-columns:70px 1fr}:is(.vp-scope,.vp-portal) .grid-axis{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .two-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}:is(.vp-scope,.vp-portal) .layout-buttons{display:flex;gap:4px}:is(.vp-scope,.vp-portal) .row.grow>.slider{flex:1;min-width:60px}:is(.vp-scope,.vp-portal) .flatten-balance{flex:1;min-width:0}:is(.vp-scope,.vp-portal) .flatten-balance .num-field{flex:none}:is(.vp-scope,.vp-portal) .flatten-custom{margin-left:8px;white-space:nowrap}:is(.vp-scope,.vp-portal) .flatten-report{margin:0}:is(.vp-scope,.vp-portal) .dialog-body .field:has(.flatten-balance){grid-template-columns:150px 1fr}:is(.vp-scope,.vp-portal) .presets-layout{display:grid;grid-template-columns:180px 1fr;gap:14px;min-height:300px}:is(.vp-scope,.vp-portal) .presets-list{max-height:none}:is(.vp-scope,.vp-portal) .presets-options{display:flex;flex-direction:column;gap:8px}:is(.vp-scope,.vp-portal) .presets-options .field{grid-template-columns:140px 1fr}:is(.vp-scope,.vp-portal) .crop-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px}@media(max-width:560px){:is(.vp-scope,.vp-portal) .split-grid,:is(.vp-scope,.vp-portal) .two-fields,:is(.vp-scope,.vp-portal) .presets-layout{grid-template-columns:1fr}}:root{--pv-font: "Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--pv-bg: #1b1b1d;--pv-panel: #262629;--pv-panel-2: #2d2d31;--pv-panel-3: #36363b;--pv-panel-4: #414147;--pv-menubar: #1f1f22;--pv-input: #1e1e21;--pv-border: #3a3a40;--pv-border-soft: #313136;--pv-text: #e4e4e8;--pv-dim: #a3a3ad;--pv-faint: #71717b;--pv-accent: #4f8cff;--pv-accent-hover: #6a9dff;--pv-accent-soft: rgba(79, 140, 255, .18);--pv-pasteboard: #232326;--pv-ruler-bg: #222225;--pv-ruler-tick: #5f5f68;--pv-ruler-text: #8f8f99;--pv-photo: #4f8cff;--pv-photo-2: #a35bff;--pv-vector: #ff7a1a;--pv-shadow: 0 10px 30px rgba(0, 0, 0, .45), 0 2px 6px rgba(0, 0, 0, .35);color-scheme:dark}:root[data-theme=medium]{--pv-bg: #3c3c3e;--pv-panel: #4a4a4c;--pv-panel-2: #525255;--pv-panel-3: #5c5c60;--pv-panel-4: #69696d;--pv-menubar: #444446;--pv-input: #3a3a3c;--pv-border: #5f5f63;--pv-border-soft: #545458;--pv-text: #f0f0f2;--pv-dim: #c6c6cc;--pv-faint: #9c9ca4;--pv-pasteboard: #6b6b6f;--pv-ruler-bg: #47474a;--pv-ruler-tick: #9a9aa2;--pv-ruler-text: #dcdce0}:root[data-theme=light]{--pv-bg: #e9e9ec;--pv-panel: #f0f0f2;--pv-panel-2: #e6e6ea;--pv-panel-3: #dadade;--pv-panel-4: #cdcdd2;--pv-menubar: #f3f3f5;--pv-input: #ffffff;--pv-border: #c9c9cf;--pv-border-soft: #d9d9de;--pv-text: #1f1f24;--pv-dim: #55555f;--pv-faint: #8a8a94;--pv-accent: #2f6fe8;--pv-accent-hover: #4b84f0;--pv-accent-soft: rgba(47, 111, 232, .14);--pv-pasteboard: #c9c9ce;--pv-ruler-bg: #ececef;--pv-ruler-tick: #9a9aa3;--pv-ruler-text: #666670;--pv-photo: #2f6fe8;--pv-vector: #e8640a;--pv-shadow: 0 10px 30px rgba(0, 0, 0, .18), 0 2px 6px rgba(0, 0, 0, .12);color-scheme:light}html,body,#root{height:100%;margin:0;overflow:hidden}body{font-family:var(--pv-font);font-size:12px;color:var(--pv-text);background:var(--pv-bg);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;touch-action:none;overscroll-behavior:none}.pv-shell{display:flex;height:100%;width:100%}.pv-stage{position:relative;flex:1;min-width:0;height:100%;overflow:hidden}.pv-ws{position:absolute;inset:0;z-index:0;visibility:hidden;pointer-events:none}.pv-ws.active{z-index:1;visibility:visible;pointer-events:auto}.pv-assistant{flex:none;display:flex;height:100%;min-height:0;position:relative;z-index:2}.pv-assistant>*{flex:1;min-height:0}.pv-layer{position:fixed;left:0;top:0;width:0;height:0;overflow:visible}.pp-portal{z-index:50;font-family:var(--font);font-size:var(--fs);color:var(--text);-webkit-font-smoothing:antialiased}.vp-portal{z-index:40;color:var(--text);font:12px/1.35 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}.pv-shell .pv-switch{display:flex;align-items:center;gap:2px;padding:0 8px 0 4px;margin-right:4px;height:100%;border-right:1px solid var(--pv-border-soft);flex:none}.pv-shell .pv-switch-logo{display:flex;margin-right:6px}.pv-shell .pv-switch-item{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--pv-dim);font:inherit;font-size:11.5px;font-weight:600;cursor:default;white-space:nowrap}.pv-shell .pv-switch-item:hover{color:var(--pv-text);background:var(--pv-panel-3)}.pv-shell .pv-switch-item.active{color:#fff}.pv-shell .pv-switch-photo.active{background:linear-gradient(135deg,var(--pv-photo),var(--pv-photo-2))}.pv-shell .pv-switch-vector.active{background:var(--pv-vector)}.pv-shell .pv-switch-count{min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:#7f7f7f47;font-size:10px;line-height:15px;text-align:center}.pv-shell .pv-switch-item.active .pv-switch-count{background:#ffffff40}.pv-shell .pv-tabs{display:flex;align-items:flex-end;flex:none;height:30px;padding:0 6px;gap:2px;background:var(--pv-panel);border-bottom:1px solid var(--pv-border-soft);overflow-x:auto;scrollbar-width:none}.pv-shell .pv-tabs::-webkit-scrollbar{display:none}.pv-shell .pv-tab{position:relative;display:flex;align-items:center;gap:6px;height:26px;max-width:280px;min-width:90px;padding:0 5px 0 9px;border:1px solid transparent;border-bottom:none;border-radius:6px 6px 0 0;color:var(--pv-dim);white-space:nowrap;flex:none}.pv-shell .pv-tab:hover{color:var(--pv-text);background:var(--pv-panel-2)}.pv-shell .pv-tab.active{color:var(--pv-text);background:var(--pv-bg);border-color:var(--pv-border-soft)}.pv-shell .pv-tab.active:before{content:"";position:absolute;left:6px;right:6px;top:-1px;height:2px;border-radius:2px}.pv-shell .pv-tab-photo.active:before{background:linear-gradient(90deg,var(--pv-photo),var(--pv-photo-2))}.pv-shell .pv-tab-vector.active:before{background:var(--pv-vector)}.pv-shell .pv-tab.drop-before{box-shadow:inset 2px 0 0 var(--pv-accent)}.pv-shell .pv-tab.drop-after{box-shadow:inset -2px 0 0 var(--pv-accent)}.pv-shell .pv-tab-kind{display:flex;flex:none}.pv-shell .pv-kind-photo{color:var(--pv-photo);display:inline-flex}.pv-shell .pv-kind-vector{color:var(--pv-vector);display:inline-flex}.pv-shell .pv-tab-name{overflow:hidden;text-overflow:ellipsis;min-width:0}.pv-shell .pv-tab-meta{color:var(--pv-faint);font-variant-numeric:tabular-nums}.pv-shell .pv-tab-dirty{flex:none;width:6px;height:6px;border-radius:50%;background:var(--pv-dim)}.pv-shell .pv-tab-close{display:flex;flex:none;border:none;background:transparent;padding:2px;border-radius:3px;color:var(--pv-faint);opacity:.7}.pv-shell .pv-tab:hover .pv-tab-close,.pv-shell .pv-tab.active .pv-tab-close{opacity:1}.pv-shell .pv-tab-close:hover{background:var(--pv-panel-3);color:var(--pv-text)}.pv-shell .pv-tab-new{align-self:center;display:flex;flex:none;margin-left:2px;padding:4px;border:none;border-radius:4px;background:transparent;color:var(--pv-dim)}.pv-shell .pv-tab-new:hover{background:var(--pv-panel-3);color:var(--pv-text)}.pv-popup{position:fixed;z-index:2000;min-width:210px;padding:4px;border:1px solid var(--pv-border);border-radius:7px;background:var(--pv-panel-2);box-shadow:var(--pv-shadow);font-family:var(--pv-font);font-size:12px;color:var(--pv-text)}.pv-popup button{display:flex;align-items:center;gap:8px;width:100%;height:28px;padding:0 10px;border:none;border-radius:4px;background:transparent;color:inherit;font:inherit;text-align:left}.pv-popup button:hover{background:var(--pv-accent);color:#fff}.pv-popup button:hover span{color:#fff}.pv-home{position:absolute;inset:0;z-index:3;overflow-y:auto;background:radial-gradient(1200px 600px at 15% -10%,rgba(91,140,255,.16),transparent 60%),radial-gradient(1000px 600px at 95% 110%,rgba(255,122,26,.13),transparent 60%),var(--pv-bg);color:var(--pv-text);user-select:none}.pv-home-top{position:sticky;top:0;display:flex;justify-content:flex-end;gap:6px;padding:10px 14px;z-index:1}.pv-home-inner{max-width:1040px;margin:0 auto;padding:10px 32px 48px}.pv-home-head{display:flex;align-items:center;gap:18px;margin:8px 0 28px}.pv-home-head h1{margin:0;font-size:30px;font-weight:750;letter-spacing:-.3px;background:linear-gradient(90deg,var(--pv-photo),var(--pv-photo-2) 55%,var(--pv-vector));-webkit-background-clip:text;background-clip:text;color:transparent}.pv-home-head p{margin:4px 0 0;color:var(--pv-dim);font-size:14px}.pv-home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:18px}.pv-home-card{display:flex;flex-direction:column;gap:14px;padding:20px;border:1px solid var(--pv-border-soft);border-radius:12px;background:var(--pv-panel);box-shadow:0 1px #ffffff08 inset}.pv-card-photo{border-top:3px solid var(--pv-photo)}.pv-card-vector{border-top:3px solid var(--pv-vector)}.pv-card-head{display:flex;gap:12px;align-items:flex-start}.pv-card-head h2{margin:0;font-size:17px}.pv-card-head p{margin:3px 0 0;color:var(--pv-dim);font-size:12.5px;line-height:1.4}.pv-card-icon{display:flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;border-radius:10px;color:#fff}.pv-card-photo .pv-card-icon{background:linear-gradient(135deg,var(--pv-photo),var(--pv-photo-2))}.pv-card-vector .pv-card-icon{background:var(--pv-vector)}.pv-card-actions,.pv-home-actions{display:flex;flex-wrap:wrap;gap:8px}.pv-home-actions{margin:22px 0 8px}.pv-btn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 14px;border:1px solid var(--pv-border);border-radius:7px;background:var(--pv-panel-2);color:var(--pv-text);font:inherit;font-size:12.5px;font-weight:550}.pv-btn:hover{background:var(--pv-panel-3)}.pv-btn.big{height:38px;padding:0 18px;font-size:13px}.pv-btn.ghost{background:transparent}.pv-card-photo .pv-btn.primary{border-color:transparent;color:#fff;background:linear-gradient(135deg,var(--pv-photo),var(--pv-photo-2))}.pv-card-vector .pv-btn.primary{border-color:transparent;color:#fff;background:var(--pv-vector)}.pv-btn.primary:hover{filter:brightness(1.08)}.pv-presets{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:8px}.pv-preset{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px 8px;border:1px solid var(--pv-border-soft);border-radius:8px;background:var(--pv-panel-2);color:var(--pv-text);font:inherit}.pv-preset:hover{border-color:var(--pv-accent)}.pv-card-vector .pv-preset:hover{border-color:var(--pv-vector)}.pv-preset-thumb{display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-bottom:3px}.pv-preset-thumb span{display:block;border:1.5px solid var(--pv-dim);border-radius:2px;background:#ffffff0f}.pv-preset-name{font-size:11.5px;font-weight:600;text-align:center}.pv-preset-size{font-size:10.5px;color:var(--pv-faint)}.pv-link{align-self:flex-start;border:none;background:transparent;color:var(--pv-dim);font:inherit;padding:0}.pv-link:hover{color:var(--pv-text);text-decoration:underline}.pv-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border:1px solid var(--pv-border-soft);border-radius:13px;background:var(--pv-panel);color:var(--pv-dim);font:inherit}.pv-chip:hover{color:var(--pv-text)}.pv-chip-ai.on{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--pv-photo-2),var(--pv-vector))}.pv-home-tips{margin:18px 0 0;padding:0 0 0 18px;color:var(--pv-dim);line-height:1.6;font-size:12.5px}.pv-shell .pv-contextbar{display:flex;align-items:center;gap:10px;height:32px;padding:0 8px 0 12px;background:color-mix(in srgb,var(--pv-vector) 16%,var(--pv-panel));border-bottom:1px solid color-mix(in srgb,var(--pv-vector) 45%,var(--pv-border));color:var(--pv-text);font:12px var(--pv-font);white-space:nowrap}.pv-shell .pv-contextbar-icon{color:var(--pv-vector);flex:none}.pv-shell .pv-contextbar-title{font-weight:600;overflow:hidden;text-overflow:ellipsis}.pv-shell .pv-contextbar-hint{color:var(--pv-dim);overflow:hidden;text-overflow:ellipsis}.pv-shell .pv-contextbar-spacer{flex:1}.pv-shell .pv-contextbar-toggle{display:inline-flex;align-items:center;gap:5px;color:var(--pv-dim);cursor:pointer}.pv-shell .pv-contextbar-toggle input{margin:0;accent-color:var(--pv-vector)}.pv-shell .pv-contextbar-done{height:24px;padding:0 14px;border:none;border-radius:5px;background:var(--pv-vector);color:#fff;font:600 12px var(--pv-font);cursor:pointer}.pv-shell .pv-contextbar-done:hover{filter:brightness(1.08)}html[data-theme] :is(.vp-scope,.vp-portal){--app-bg: var(--pv-bg);--chrome: var(--pv-panel);--chrome-2: var(--pv-panel-2);--chrome-3: var(--pv-panel-3);--chrome-hover: var(--pv-panel-3);--chrome-active: var(--pv-panel-4);--border: var(--pv-border);--border-soft: var(--pv-border-soft);--divider: var(--pv-border-soft);--text: var(--pv-text);--text-dim: var(--pv-dim);--text-faint: var(--pv-faint);--input-bg: var(--pv-input);--input-border: var(--pv-border);--input-border-hover: var(--pv-panel-4);--accent: var(--pv-accent);--accent-strong: var(--pv-accent-hover);--accent-soft: var(--pv-accent-soft);--menu-bg: var(--pv-panel-2);--menu-hover: var(--pv-accent);--shadow: var(--pv-shadow);--ruler-bg: var(--pv-ruler-bg);--ruler-tick: var(--pv-ruler-tick);--ruler-text: var(--pv-ruler-text);--pasteboard: var(--pv-pasteboard);--tool-active: var(--pv-accent);--scroll-thumb: var(--pv-panel-4)}.pv-shell .vp-scope .app{grid-template-rows:32px 1fr 26px}.pv-shell .vp-scope .menubar{background:var(--pv-menubar);border-bottom-color:var(--pv-border-soft)}.pv-shell .vp-scope .statusbar{border-top-color:var(--pv-border-soft)}.pv-shell .vp-scope .tool-btn.active{color:#fff;box-shadow:none}.pv-shell .vp-scope .tool-btn.active .tool-flyout-mark{border-bottom-color:#fffc}.pv-shell .pv-cross{margin:4px 0 22px;padding:14px 16px;border:1px solid var(--pv-border);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--pv-photo) 12%,var(--pv-panel)),color-mix(in srgb,var(--pv-vector) 12%,var(--pv-panel)));font-family:var(--pv-font);color:var(--pv-text)}.pv-shell .pv-cross-head{display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;margin-bottom:10px}.pv-shell .pv-cross-actions{display:flex;flex-wrap:wrap;gap:8px}.pv-shell .pv-cross-btn{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 14px;border:1px solid var(--pv-border);border-radius:7px;background:var(--pv-panel-2);color:var(--pv-text);font:500 12.5px var(--pv-font);cursor:pointer}.pv-shell .pv-cross-btn:hover{background:var(--pv-panel-3)}.pv-shell .pv-cross-btn.primary{border-color:transparent;background:var(--pv-accent);color:#fff}.pv-shell .pv-cross-btn.primary:hover{background:var(--pv-accent-hover)}.pv-shell .pv-contextbar.linked{background:color-mix(in srgb,var(--pv-photo) 14%,var(--pv-panel));border-bottom-color:color-mix(in srgb,var(--pv-photo) 45%,var(--pv-border))}.pv-shell .pv-contextbar.linked .pv-contextbar-icon{color:var(--pv-photo)}.pv-shell .pv-contextbar.linked .pv-contextbar-done{background:var(--pv-photo)}:is(.vp-scope,.vp-portal) .dialog-backdrop:has(>.dialog.type-search){background:transparent}:is(.vp-scope,.vp-portal) .type-form{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px 10px}:is(.vp-scope,.vp-portal) .type-form-label{color:var(--text-dim);white-space:nowrap}:is(.vp-scope,.vp-portal) .search-field{display:flex;gap:4px;min-width:0}:is(.vp-scope,.vp-portal) .search-field .input{flex:1}:is(.vp-scope,.vp-portal) .search-field .special-pick{width:52px;flex:none}:is(.vp-scope,.vp-portal) .type-options{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;padding:4px 0}:is(.vp-scope,.vp-portal) .type-radios{display:flex;gap:18px}:is(.vp-scope,.vp-portal) .type-status{min-height:18px;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .type-buttons{flex-wrap:wrap;padding:8px 0 4px}:is(.vp-scope,.vp-portal) .type-buttons .btn{min-width:0}:is(.vp-scope,.vp-portal) .type-dim{color:var(--text-dim);font-size:11.5px}:is(.vp-scope,.vp-portal) .type-empty{padding:8px}:is(.vp-scope,.vp-portal) .type-list-head{display:flex;justify-content:space-between;color:var(--text-dim)}:is(.vp-scope,.vp-portal) .type-list{display:flex;flex-direction:column;min-height:90px;max-height:150px;overflow:auto;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;padding:2px}:is(.vp-scope,.vp-portal) .type-list-item{display:flex;align-items:center;gap:8px;border:none;background:none;color:var(--text);text-align:left;padding:3px 7px;border-radius:3px;cursor:default;font:inherit;white-space:nowrap}:is(.vp-scope,.vp-portal) .type-list-item>:first-child{flex:1;overflow:hidden;text-overflow:ellipsis}:is(.vp-scope,.vp-portal) .type-list-item:hover{background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .type-list-item.active{background:var(--accent);color:var(--accent-text)}:is(.vp-scope,.vp-portal) .type-list-item.active .type-dim{color:inherit}:is(.vp-scope,.vp-portal) .type-missing{color:#f0b429;flex:none}:is(.vp-scope,.vp-portal) .type-report{border-collapse:collapse;width:100%}:is(.vp-scope,.vp-portal) .type-report td{padding:3px 4px;border-bottom:1px solid var(--border-soft)}:is(.vp-scope,.vp-portal) .type-report td:last-child{text-align:right;font-variant-numeric:tabular-nums}:is(.vp-scope,.vp-portal) .spell-layout,:is(.vp-scope,.vp-portal) .dict-layout{display:grid;grid-template-columns:1fr auto;gap:14px}:is(.vp-scope,.vp-portal) .spell-main{display:flex;flex-direction:column;gap:6px;min-width:0}:is(.vp-scope,.vp-portal) .spell-word{font-weight:600}:is(.vp-scope,.vp-portal) .spell-suggestions,:is(.vp-scope,.vp-portal) .dict-list{min-height:120px;max-height:160px}:is(.vp-scope,.vp-portal) .spell-buttons{display:flex;flex-direction:column;gap:6px;min-width:118px}:is(.vp-scope,.vp-portal) .spell-buttons .btn{width:100%}:is(.vp-scope,.vp-portal) .type-disclosure{align-self:flex-start;border:none;background:none;color:var(--text-dim);padding:2px 0;cursor:pointer;font:inherit}:is(.vp-scope,.vp-portal) .type-disclosure:hover{color:var(--text)}:is(.vp-scope,.vp-portal) .spell-options{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}:is(.vp-scope,.vp-portal) .spell-options>div{display:flex;flex-direction:column;gap:5px}:is(.vp-scope,.vp-portal) .glyphs-panel{display:flex;flex-direction:column;gap:6px}:is(.vp-scope,.vp-portal) .glyph-recent,:is(.vp-scope,.vp-portal) .glyph-toolbar,:is(.vp-scope,.vp-portal) .glyph-footer{display:flex;align-items:center;gap:4px;min-width:0}:is(.vp-scope,.vp-portal) .glyph-recent{min-height:26px;overflow:hidden}:is(.vp-scope,.vp-portal) .glyph-recent-cell{width:24px;height:24px;flex:none;border:1px solid var(--border-soft);border-radius:3px;background:var(--input-bg);color:var(--text);font-size:15px;line-height:1;padding:0;cursor:default}:is(.vp-scope,.vp-portal) .glyph-toolbar .select{flex:1;min-width:0}:is(.vp-scope,.vp-portal) .glyph-footer .select{flex:1;min-width:0}:is(.vp-scope,.vp-portal) .glyph-grid{display:grid;gap:0;max-height:260px;min-height:120px;overflow:auto;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;align-content:start}:is(.vp-scope,.vp-portal) .glyph-grid .type-empty{grid-column:1 / -1}:is(.vp-scope,.vp-portal) .glyph-cell{display:grid;place-items:center;border:none;border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:none;color:var(--text);padding:0;cursor:default}:is(.vp-scope,.vp-portal) .glyph-cell:hover{background:var(--accent);color:var(--accent-text)}:is(.vp-scope,.vp-portal) .glyph-status{min-height:16px}:is(.vp-scope,.vp-portal) .tabs-window{position:fixed;z-index:19;display:flex;flex-direction:column;background:var(--chrome-2);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow);max-width:calc(100vw - 8px);overflow:hidden}:is(.vp-scope,.vp-portal) .tabs-head{display:flex;align-items:center;gap:6px;padding:4px 6px;cursor:move;flex-wrap:wrap}:is(.vp-scope,.vp-portal) .tabs-title{font-weight:600;margin-right:4px}:is(.vp-scope,.vp-portal) .tabs-aligns{display:flex;gap:1px}:is(.vp-scope,.vp-portal) .tab-align.active{background:var(--accent-soft);color:var(--accent)}:is(.vp-scope,.vp-portal) .tabs-field{display:flex;align-items:center;gap:4px;color:var(--text-dim);white-space:nowrap}:is(.vp-scope,.vp-portal) .tabs-ruler{position:relative;height:34px;background:var(--input-bg);border-top:1px solid var(--border-soft);cursor:copy;overflow:hidden;touch-action:none}:is(.vp-scope,.vp-portal) .tabs-tick{position:absolute;bottom:0;width:1px;height:5px;background:var(--ruler-tick)}:is(.vp-scope,.vp-portal) .tabs-tick.major{height:10px}:is(.vp-scope,.vp-portal) .tabs-tick em{position:absolute;left:3px;bottom:9px;font-style:normal;font-size:9px;color:var(--ruler-text);white-space:nowrap}:is(.vp-scope,.vp-portal) .tabs-frame-end{position:absolute;top:0;bottom:0;width:0;border-left:1px dashed var(--text-faint)}:is(.vp-scope,.vp-portal) .tabs-stop{position:absolute;top:2px;width:12px;height:14px;margin-left:-6px;color:var(--text);cursor:ew-resize}:is(.vp-scope,.vp-portal) .tabs-stop.active{color:var(--accent)}:is(.vp-scope,.vp-portal) .tabs-empty{padding:10px 12px}:is(.vp-scope,.vp-portal) .para-extras{display:flex;flex-direction:column;gap:6px;margin-top:6px}:is(.vp-scope,.vp-portal) .navigator-panel,:is(.vp-scope,.vp-portal) .attributes-panel,:is(.vp-scope,.vp-portal) .docinfo-panel{position:relative}:is(.vp-scope,.vp-portal) .navigator-thumb{position:relative;background:var(--pasteboard);border:1px solid var(--border);border-radius:3px;overflow:hidden}:is(.vp-scope,.vp-portal) .navigator-thumb canvas{position:absolute;left:0;top:0}:is(.vp-scope,.vp-portal) .navigator-box{cursor:move;touch-action:none}:is(.vp-scope,.vp-portal) .navigator-zoom{display:flex;align-items:center;gap:4px}:is(.vp-scope,.vp-portal) .navigator-zoom .navigator-field{width:64px;flex:none;height:22px}:is(.vp-scope,.vp-portal) .navigator-slider{flex:1;min-width:40px;accent-color:var(--accent)}:is(.vp-scope,.vp-portal) .docinfo-rows{display:flex;flex-direction:column;gap:2px;min-height:80px;max-height:260px;overflow-y:auto;padding:6px 8px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px;font-variant-numeric:tabular-nums;user-select:text}:is(.vp-scope,.vp-portal) .docinfo-row{display:flex;gap:8px;justify-content:space-between;line-height:1.45}:is(.vp-scope,.vp-portal) .docinfo-row>span:first-child{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis}:is(.vp-scope,.vp-portal) .docinfo-row.item>span:first-child{color:var(--text)}:is(.vp-scope,.vp-portal) .docinfo-row>span+span{text-align:right;word-break:break-word}:is(.vp-scope,.vp-portal) .docinfo-count{flex:1}:is(.vp-scope,.vp-portal) .attr-overprint{display:flex;flex-wrap:wrap;gap:4px 14px}:is(.vp-scope,.vp-portal) .attr-buttons{display:flex;align-items:center;gap:2px}:is(.vp-scope,.vp-portal) .attr-btn{width:28px;height:26px}:is(.vp-scope,.vp-portal) .attr-sep{width:1px;height:18px;margin:0 5px;background:var(--border-soft)}:is(.vp-scope,.vp-portal) .attr-field{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:6px}:is(.vp-scope,.vp-portal) .attr-field>:nth-child(2):last-child{grid-column:2 / 4}:is(.vp-scope,.vp-portal) .attr-note-label{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .attributes-panel .attr-note{resize:vertical;min-height:48px;font:inherit;padding:4px 6px;height:auto}:is(.vp-scope,.vp-portal) .status-rotate{display:flex;align-items:center;gap:2px}:is(.vp-scope,.vp-portal) .status-rotate svg{color:var(--text-dim)}:is(.vp-scope,.vp-portal) .status-rotate .status-rotate-input{width:44px}:is(.vp-scope,.vp-portal) .presentation{position:fixed;inset:0;z-index:3000;background:#000;cursor:none}:is(.vp-scope,.vp-portal) .presentation canvas{position:absolute;inset:0;width:100%;height:100%}:is(.vp-scope,.vp-portal) .presentation-hint{position:absolute;left:50%;bottom:18px;transform:translate(-50%);padding:6px 12px;border-radius:6px;background:#1e1e1ed1;color:#eee;font-size:12px;pointer-events:none;transition:opacity .6s}:is(.vp-scope,.vp-portal) .presentation-hint.hidden{opacity:0}:is(.vp-scope,.vp-portal) .name-list{display:flex;flex-direction:column;min-height:140px;max-height:220px;overflow-y:auto;padding:3px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:4px}:is(.vp-scope,.vp-portal) .dialog .name-list button{text-align:left;padding:3px 8px;border:0;border-radius:3px;background:none;color:var(--text);height:auto}:is(.vp-scope,.vp-portal) .dialog .name-list button:hover:not(:disabled){background:var(--chrome-hover)}:is(.vp-scope,.vp-portal) .dialog .name-list button[aria-selected=true]{background:var(--accent);color:var(--accent-text)}:is(.vp-scope,.vp-portal) .dialog .name-list button:disabled{color:var(--text-faint)}:is(.vp-scope,.vp-portal) .menubar-ai{margin:3px 0 3px auto;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border-soft);background:none;border-radius:12px;padding:0 10px;color:var(--text);font-size:12px}:is(.vp-scope,.vp-portal) .menubar-ai:hover,:is(.vp-scope,.vp-portal) .menubar-ai.active{background:var(--accent-soft);border-color:var(--accent)}:is(.vp-scope,.vp-portal) .menubar-ai svg{color:var(--accent)}:is(.vp-scope,.vp-portal) .menubar-ai+.account-area{margin-left:6px}:is(.vp-scope,.vp-portal) .dock .panel-group.ai-group:not(.collapsed){flex:3 0 max(440px,min(680px,calc(100vh - 280px)));min-height:0}:is(.vp-scope,.vp-portal) .dock .panel-group.ai-group .panel-body{display:flex;flex-direction:column;overflow:hidden}:is(.vp-scope,.vp-portal) .dock .panel-group.ai-group .panel-body>*{flex:1;min-height:0}
