:root{--glass-tint:255 255 255;--glass-bg:#ffffff12;--glass-bg-strong:#ffffff1c;--glass-bg-hover:#ffffff24;--glass-blur:28px;--glass-sat:180%;--rim:#ffffff4d;--rim-soft:#ffffff24;--rim-bottom:#ffffff0f;--shadow-lg:0 18px 50px -12px #0000009e;--shadow-md:0 10px 28px -10px #0000008c;--shadow-sm:0 4px 14px -6px #00000080;--text:#fffffff0;--text-dim:#ffffff9e;--text-faint:#fff6;--accent:#5ac8fa;--accent-2:#a78bfa;--accent-glow:#5ac8fa8c;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:22px;--r-xl:30px;--ease:cubic-bezier(.32, .9, .28, 1);--ease-liquid:cubic-bezier(.18, 1.2, .36, 1)}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));border-radius:var(--r-lg);box-shadow:var(--shadow-lg), inset 0 1px 0 0 var(--rim), inset 0 -1px 0 0 var(--rim-bottom), inset 1px 0 0 0 var(--rim-soft), inset -1px 0 0 0 var(--rim-soft);isolation:isolate;position:relative}.glass:before{content:"";border-radius:inherit;pointer-events:none;mix-blend-mode:screen;opacity:.9;z-index:-1;background:linear-gradient(160deg,#ffffff29 0%,#ffffff0d 22%,#fff0 45%,#ffffff08 78%,#ffffff17 100%);position:absolute;inset:0}.glass:after{content:"";border-radius:inherit;pointer-events:none;z-index:-1;background:radial-gradient(120% 90% at 12% -20%,#7abeff24,#0000 60%),radial-gradient(120% 90% at 92% 120%,#b482ff21,#0000 62%);position:absolute;inset:0}.glass-dark{background:#0e1119c7}.glass-dark:before{opacity:.5}.glass-thin{-webkit-backdrop-filter:blur(18px)saturate(150%);box-shadow:var(--shadow-sm), inset 0 1px 0 0 var(--rim-soft), inset 0 0 0 1px #ffffff12;background:#ffffff0d}.gbtn{--btn-bg:#ffffff14;border-radius:var(--r-sm);background:var(--btn-bg);min-height:32px;color:var(--text);font:inherit;letter-spacing:.01em;cursor:pointer;transition:background .22s var(--ease), transform .22s var(--ease-liquid), box-shadow .22s var(--ease), color .2s var(--ease);-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;gap:7px;padding:7px 12px;font-size:12.5px;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff38,inset 0 -1px #ffffff0d,inset 0 0 0 1px #ffffff0f,0 2px 8px -4px #0009}.gbtn:after{content:"";border-radius:inherit;opacity:.85;pointer-events:none;background:linear-gradient(150deg,#ffffff2e,#fff0 55%);position:absolute;inset:0}.gbtn:hover{background:var(--glass-bg-hover);transform:translateY(-1px);box-shadow:inset 0 1px #ffffff4d,inset 0 0 0 1px #ffffff17,0 8px 20px -8px #000000b3}.gbtn:active{background:#ffffff2e;transition-duration:80ms;transform:translateY(0)scale(.97)}.gbtn:focus-visible{outline:none;box-shadow:inset 0 0 0 1px #ffffff40,0 0 0 2px #5ac8fa99,0 8px 20px -8px #000000b3}.gbtn[disabled]{opacity:.32;pointer-events:none}.gbtn.icon-only{width:34px;padding:0}.gbtn.active,.gbtn[aria-pressed=true]{color:#fff;box-shadow:inset 0 1px 0 0 #fff6, inset 0 0 0 1px #ffffff2e, 0 0 18px -4px var(--accent-glow), 0 4px 14px -6px #0009;background:linear-gradient(150deg,#5ac8fa66,#a78bfa52)}.gbtn.primary{color:#fff;background:linear-gradient(150deg,#5ac8fa8c,#a78bfa73);font-weight:560}.gbtn.primary:hover{background:linear-gradient(150deg,#5ac8fab3,#a78bfa94)}.ginput,.gselect{appearance:none;border-radius:var(--r-xs);min-height:30px;color:var(--text);font:inherit;transition:box-shadow .2s var(--ease), background .2s var(--ease);background:#00000042;border:none;padding:5px 10px;font-size:12.5px;box-shadow:inset 0 0 0 1px #ffffff1a,inset 0 1px 3px #0006}.ginput:focus,.gselect:focus{background:#00000057;outline:none;box-shadow:inset 0 0 0 1px #5ac8fabf,0 0 0 3px #5ac8fa2e}.gselect{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' fill='none' stroke='rgba(255,255,255,0.65)' stroke-width='1.4' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:12px;padding-right:26px}.gselect option{color:#fff;background:#171b24}input[type=range].grange{appearance:none;cursor:pointer;background:0 0;height:22px}input[type=range].grange::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) 0%, var(--accent) var(--fill,50%), #ffffff24 var(--fill,50%));border-radius:999px;height:5px;box-shadow:inset 0 0 0 1px #ffffff1f,inset 0 1px 2px #0006}input[type=range].grange::-webkit-slider-thumb{appearance:none;width:15px;height:15px;transition:transform .18s var(--ease-liquid), box-shadow .2s var(--ease);background:linear-gradient(160deg,#fff,#dfe8f5);border-radius:50%;margin-top:-5px;box-shadow:0 1px 4px #0000008c,0 0 0 1px #ffffff59,inset 0 -2px 3px #0000001f}input[type=range].grange:hover::-webkit-slider-thumb{transform:scale(1.18);box-shadow:0 2px 8px #0009,0 0 0 4px #5ac8fa38}input[type=range].grange::-moz-range-track{background:#ffffff24;border-radius:999px;height:5px}input[type=range].grange::-moz-range-progress{background:var(--accent);border-radius:999px;height:5px}input[type=range].grange::-moz-range-thumb{background:#fff;border:none;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #00000080}.gtoggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:inline-flex;position:relative}.gtoggle input{opacity:0;width:0;height:0;position:absolute}.gtoggle .track{width:34px;height:19px;transition:background .26s var(--ease), box-shadow .26s var(--ease);background:#00000057;border-radius:999px;flex:none;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f,inset 0 1px 3px #00000073}.gtoggle .track:after{content:"";width:14px;height:14px;transition:transform .3s var(--ease-liquid), width .2s var(--ease);background:linear-gradient(160deg,#fff,#d8e2f0);border-radius:50%;position:absolute;top:2.5px;left:2.5px;box-shadow:0 1px 4px #00000080}.gtoggle input:checked+.track{box-shadow:inset 0 0 0 1px #ffffff40, 0 0 14px -3px var(--accent-glow);background:linear-gradient(120deg,#5ac8fad9,#a78bfacc)}.gtoggle input:checked+.track:after{transform:translate(15px)}.gtoggle:active .track:after{width:18px}.gtoggle input:focus-visible+.track{box-shadow:0 0 0 3px #5ac8fa59,inset 0 0 0 1px #fff3}.gdivider{background:linear-gradient(#0000,#ffffff29 25% 75%,#0000);flex:none;align-self:stretch;width:1px;margin:5px 3px}.gdivider.h{background:linear-gradient(90deg,#0000,#ffffff24,#0000);width:auto;height:1px;margin:4px 6px}.glabel{letter-spacing:.04em;color:var(--text-dim);text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:500}.gchip{font-variant-numeric:tabular-nums;color:var(--text-dim);background:#ffffff17;border-radius:999px;padding:3px 9px;font-size:11px;box-shadow:inset 0 0 0 1px #ffffff1a}.icon{flex:none;width:18px;height:18px;display:inline-flex}.icon svg{width:100%;height:100%}.gscroll{scrollbar-width:thin;scrollbar-color:#ffffff38 transparent}.gscroll::-webkit-scrollbar{width:9px;height:9px}.gscroll::-webkit-scrollbar-track{background:0 0}.gscroll::-webkit-scrollbar-thumb{background:#fff3 padding-box content-box;border:2.5px solid #0000;border-radius:999px}.gscroll::-webkit-scrollbar-thumb:hover{background:#ffffff57 padding-box content-box}@media (prefers-reduced-transparency:reduce){.glass,.glass-thin{-webkit-backdrop-filter:none;background:#181c26f5}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}body{color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:#05070c;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,system-ui,sans-serif;font-size:13px}#backdrop{z-index:0;pointer-events:none;filter:saturate(125%);background:radial-gradient(46% 42% at 18% 22%,#3884ff4d,#0000 62%),radial-gradient(40% 40% at 82% 18%,#a855f742,#0000 62%),radial-gradient(52% 48% at 72% 84%,#14b8a638,#0000 64%),radial-gradient(38% 38% at 28% 88%,#f472b629,#0000 62%),linear-gradient(155deg,#070a12,#0a0d18 45%,#06080f);animation:46s ease-in-out infinite alternate drift;position:fixed;inset:-12%}@keyframes drift{0%{transform:translate(0,0)scale(1)}50%{transform:translate(2.2%,-1.6%)scale(1.06)}to{transform:translate(-1.8%,2%)scale(1.03)}}#app{z-index:1;grid-template-rows:auto auto 1fr auto;gap:10px;height:100%;padding:10px;display:grid;position:relative}#topbar{z-index:50;border-radius:var(--r-md);align-items:center;gap:8px;min-height:50px;padding:8px 12px;display:flex;position:relative}.brand{letter-spacing:.015em;white-space:nowrap;align-items:center;gap:9px;padding-right:4px;font-weight:600;display:flex}.brand .mark{filter:drop-shadow(0 0 10px #5ac8fa73);border-radius:7px;width:24px;height:24px;display:block}.brand .name{letter-spacing:.005em;font-size:14px}.doc-title{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin-left:2px;font-size:12px;overflow:hidden}.spacer{flex:1}.menu-root{position:relative}.menu-pop{z-index:90;border-radius:var(--r-md);transform-origin:0 0;min-width:234px;max-height:calc(100vh - 90px);animation:popIn .2s var(--ease-liquid);padding:6px;position:absolute;top:calc(100% + 8px);left:0;overflow-y:auto}.menu-pop.right{transform-origin:100% 0;left:auto;right:0}@keyframes popIn{0%{opacity:0;transform:translateY(-6px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.menu-item{border-radius:var(--r-xs);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background .15s var(--ease);background:0 0;border:none;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;display:flex}.menu-item:hover:not([disabled]){background:#ffffff21}.menu-item[disabled]{opacity:.34;cursor:default}.menu-item .key{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;padding-left:16px;font-size:11px}.menu-item .icon{opacity:.8;width:16px;height:16px}.menu-title{color:var(--text-faint);letter-spacing:.07em;text-transform:uppercase;padding:8px 10px 4px;font-size:10.5px;font-weight:600}#optionsbar{border-radius:var(--r-md);white-space:nowrap;align-items:center;gap:10px;min-height:44px;padding:6px 12px;display:flex;overflow:auto hidden}#optionsbar .tool-name{align-items:center;gap:8px;padding-right:2px;font-size:12.5px;font-weight:560;display:flex}.opt{flex:none;align-items:center;gap:7px;display:inline-flex}.opt .glabel{text-transform:none;letter-spacing:0;font-size:11.5px}.opt input[type=range]{width:108px}.opt .num{text-align:center;font-variant-numeric:tabular-nums;width:52px}.opt .val{text-align:right;min-width:34px;color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11.5px}#main{grid-template-columns:auto 1fr auto;gap:10px;min-height:0;display:grid}#toolrail{border-radius:var(--r-lg);flex-direction:column;align-items:center;gap:3px;padding:7px 6px;display:flex;overflow:visible auto}#toolrail .gbtn{border-radius:12px;flex:none;width:34px;height:34px;min-height:0;padding:0}#toolrail .gbtn .icon{width:19px;height:19px}#toolrail .gdivider.h{flex:none;margin:3px 0}.tooltip{z-index:500;-webkit-backdrop-filter:blur(16px)saturate(170%);max-width:264px;color:var(--text);pointer-events:none;opacity:0;transition:opacity .14s var(--ease), transform .2s var(--ease-liquid);background:#10141eeb;border-radius:11px;padding:7px 11px;position:fixed;top:0;left:0;transform:scale(.96);box-shadow:0 12px 30px -10px #000000d9,inset 0 0 0 1px #ffffff21,inset 0 1px #ffffff29}.tooltip.visible{opacity:1;transform:scale(1)}.tooltip[data-side=right]:not(.visible){transform:translate(-4px)scale(.96)}.tooltip[data-side=left]:not(.visible){transform:translate(4px)scale(.96)}.tooltip[data-side=below]:not(.visible){transform:translateY(-4px)scale(.96)}.tooltip[data-side=above]:not(.visible){transform:translateY(4px)scale(.96)}.tip-head{align-items:center;gap:10px;display:flex}.tip-title{white-space:nowrap;font-size:12px;font-weight:560}.tip-key{color:var(--text-dim);white-space:nowrap;background:#ffffff1f;border-radius:5px;margin-left:auto;padding:1px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10.5px;box-shadow:inset 0 0 0 1px #ffffff1f}.tip-desc{max-width:240px;color:var(--text-dim);margin-top:3px;font-size:11.5px;line-height:1.45}#stage{border-radius:var(--r-lg);-webkit-backdrop-filter:blur(10px);background:#04060b8c;min-width:0;min-height:0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14,0 20px 60px -22px #000000d9}#viewcanvas{touch-action:none;width:100%;height:100%;display:block}.lang-btn{gap:5px;padding:0 10px;font-size:12px;font-weight:560}.lang-btn .icon{opacity:.8;width:15px;height:15px}#lang-label{text-align:center;letter-spacing:.02em;min-width:17px}:root[data-locale=zh] body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans CJK SC,Source Han Sans SC,system-ui,sans-serif}:root[data-locale=zh] .glabel,:root[data-locale=zh] .panel-head,:root[data-locale=zh] .help-section h3{letter-spacing:.01em;text-transform:none}#zoomgroup{align-items:center;gap:2px;display:flex}#zoomgroup .gbtn{font-size:15px;line-height:1}#zoomgroup .zval{font-variant-numeric:tabular-nums;min-width:58px;color:var(--text-dim);padding:0 6px;font-size:12px}#zoomgroup .zval:hover{color:var(--text)}#navigator{z-index:5;border-radius:var(--r-md);transition:border-radius .25s var(--ease);padding:6px;position:absolute;bottom:14px;right:14px}.nav-head{width:100%;color:var(--text-dim);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;align-items:center;gap:7px;padding:3px 5px 5px;font-size:10.5px;font-weight:600;display:flex}.nav-head:hover{color:var(--text)}.nav-head .icon{opacity:.8;width:14px;height:14px}.nav-head .chev{transition:transform .28s var(--ease-liquid);opacity:.65;margin-left:auto}#navigator.collapsed{border-radius:var(--r-sm)}#navigator.collapsed .nav-head{padding-bottom:3px}#navigator.collapsed .chev{transform:rotate(-90deg)}#navigator.collapsed .nav-body{display:none}.nav-view{border-radius:var(--r-xs);cursor:crosshair;touch-action:none;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff24}.nav-view.dragging{cursor:grabbing}.nav-view canvas{image-rendering:pixelated;display:block}.nav-rect{pointer-events:none;box-shadow:0 0 0 1px #00000073, 0 0 12px -2px var(--accent-glow);background:#78c8ff1f;border:1.5px solid #78c8fff2;border-radius:2px;position:absolute}#dock{flex-direction:column;gap:10px;width:268px;min-height:0;display:flex;overflow:hidden auto}.panel{border-radius:var(--r-md);flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;padding:9px 12px;font-size:11px;font-weight:600;display:flex}.panel-head .icon{opacity:.75;width:15px;height:15px}.panel-head .chev{transition:transform .28s var(--ease-liquid);opacity:.6;margin-left:auto}.panel.collapsed .chev{transform:rotate(-90deg)}.panel.collapsed .panel-body{display:none}.panel-body{min-height:0;padding:4px 12px 12px;overflow-y:auto}.panel.flex{flex:1 0 auto;min-height:208px}.panel:not(.flex){flex:none}.color-top{align-items:flex-start;gap:12px;display:flex}#sv-area{border-radius:var(--r-sm);cursor:crosshair;touch-action:none;width:100%;height:116px;position:relative;box-shadow:inset 0 0 0 1px #ffffff24,0 3px 12px -6px #000000b3}#sv-area .thumb,#hue-strip .thumb,#alpha-strip .thumb{pointer-events:none;border-radius:50%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;position:absolute;box-shadow:0 0 0 2px #fff,0 0 0 3.5px #00000073,0 2px 6px #00000080}.strip{cursor:pointer;touch-action:none;border-radius:999px;height:13px;margin-top:10px;position:relative;box-shadow:inset 0 0 0 1px #ffffff24}.strip .thumb{z-index:2;margin-top:-6.5px;top:50%}.fill{border-radius:inherit;z-index:1;pointer-events:none;position:absolute;inset:0}#hue-strip{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.checker{background-color:#00000059;background-image:linear-gradient(45deg,#ffffff29 25%,#0000 25%),linear-gradient(-45deg,#ffffff29 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff29 75%),linear-gradient(-45deg,#0000 75%,#ffffff29 75%);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px}.swatch-pair{flex:none;width:58px;height:58px;position:relative}.swatch-pair .sw{cursor:pointer;width:38px;height:38px;transition:transform .2s var(--ease-liquid);border-radius:11px;position:absolute;box-shadow:inset 0 0 0 1.5px #ffffff59,0 4px 12px -4px #000000bf}.swatch-pair .sw .fill{box-shadow:inset 0 0 0 1.5px #ffffff59}.swatch-pair .sw:hover{transform:scale(1.06)}.swatch-pair .sw.primary{z-index:2;top:0;left:0}.swatch-pair .sw.secondary{z-index:1;bottom:0;right:0}.swatch-pair .swap{z-index:3;border-radius:7px;width:19px;height:19px;min-height:0;padding:0;position:absolute;top:-3px;right:-3px}.swatch-pair .swap .icon{width:13px;height:13px}.color-fields{align-items:center;gap:6px;margin-top:10px;display:flex}.color-fields .ginput{text-transform:uppercase;flex:1;min-width:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px}.palette{grid-template-columns:repeat(auto-fill,minmax(19px,1fr));gap:4px;margin-top:11px;display:grid}.palette .pc{aspect-ratio:1;cursor:pointer;transition:transform .18s var(--ease-liquid), box-shadow .18s var(--ease);border:none;border-radius:6px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #ffffff2e}.palette .pc:hover{z-index:2;transform:scale(1.22);box-shadow:inset 0 0 0 1px #ffffff80,0 3px 10px -2px #000000b3}.palette-head{align-items:center;gap:6px;margin-top:12px;display:flex}.palette-head .gselect{flex:1;min-width:0;min-height:26px;font-size:11.5px}.layer-tools{gap:4px;margin-bottom:8px;display:flex}.layer-tools .gbtn{flex:1;min-height:28px;padding:0}.layer-tools .gbtn .icon{width:15px;height:15px}.layer-props{align-items:center;gap:7px;margin-bottom:9px;display:flex}.layer-props .gselect{flex:1;min-width:0;min-height:26px;font-size:11.5px}.layer-props input[type=range]{flex:1;min-width:0}.layer-list{flex-direction:column-reverse;gap:4px;min-height:40px;max-height:340px;display:flex;overflow-y:auto}.layer-row{border-radius:var(--r-xs);cursor:pointer;transition:background .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease-liquid);background:#ffffff09;align-items:center;gap:8px;padding:5px 7px;display:flex;box-shadow:inset 0 0 0 1px #ffffff0d}.layer-row:hover{background:#ffffff17}.layer-row.active{box-shadow:inset 0 0 0 1px #78c8ff73, 0 0 16px -6px var(--accent-glow);background:linear-gradient(120deg,#5ac8fa3d,#a78bfa2e)}.layer-row.dragover{box-shadow:inset 0 0 0 1px var(--accent), 0 0 14px -4px var(--accent-glow);transform:translateY(-2px)}.layer-row .vis{width:22px;height:22px;min-height:0;color:var(--text-dim);cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.layer-row .vis:hover{color:var(--text);background:#ffffff1f}.layer-row .vis .icon{width:15px;height:15px}.layer-row .thumb{width:34px;height:30px;image-rendering:pixelated;object-fit:contain;border-radius:6px;flex:none;box-shadow:inset 0 0 0 1px #ffffff29}.layer-row .meta{flex:1;min-width:0}.layer-row .lname{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.layer-row .lsub{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:10px}.layer-row .lname-input{width:100%;min-height:0;padding:1px 4px;font-size:12px}.history-list{flex-direction:column;gap:2px;max-height:190px;display:flex;overflow-y:auto}.history-item{color:var(--text-dim);font:inherit;text-align:left;cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:none;border-radius:7px;align-items:center;gap:8px;padding:5px 9px;font-size:11.5px;display:flex}.history-item:hover{color:var(--text);background:#ffffff17}.history-item.current{color:var(--text);background:#5ac8fa2e;box-shadow:inset 0 0 0 1px #78c8ff4d}.history-item.future{opacity:.42}.history-item .dot{opacity:.7;background:currentColor;border-radius:50%;flex:none;width:5px;height:5px}#statusbar{border-radius:var(--r-md);min-height:32px;color:var(--text-dim);align-items:center;gap:10px;padding:5px 14px;font-size:11.5px;display:flex}#statusbar .mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,monospace}#statusbar .hint{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}#modal-layer{z-index:300;-webkit-backdrop-filter:blur(8px);animation:fadeIn .22s var(--ease);background:#03050a8c;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}#modal-layer.open{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{border-radius:var(--r-xl);width:min(440px,100%);max-height:100%;animation:modalIn .34s var(--ease-liquid);flex-direction:column;padding:20px 22px;display:flex}@keyframes modalIn{0%{opacity:0;transform:translateY(14px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal h2{margin:0 0 4px;font-size:16px;font-weight:600}.modal .sub{color:var(--text-dim);margin-bottom:16px;font-size:12px}.modal-body{min-height:0;overflow-y:auto}.field{align-items:center;gap:10px;margin-bottom:11px;display:flex}.field>.glabel{text-transform:none;letter-spacing:0;flex:none;width:96px;font-size:12px}.field .ginput,.field .gselect,.field input[type=range]{flex:1;min-width:0}.field .val{text-align:right;width:46px;color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11.5px}.modal-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.preset-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin:4px 0 16px;display:grid}.preset-grid .gbtn{flex-direction:column;gap:1px;padding:8px 4px;font-size:11.5px}.preset-grid .gbtn small{color:var(--text-faint);font-size:10px}.modal-export{width:min(600px,100%)}.modal-help{width:min(760px,100%)}.export-preview-wrap{border-radius:var(--r-sm);background:#00000042;justify-content:center;align-items:center;min-height:150px;max-height:210px;margin-bottom:12px;padding:10px;display:flex;box-shadow:inset 0 0 0 1px #ffffff14}.export-preview{max-width:100%;max-height:186px;image-rendering:pixelated;border-radius:4px;box-shadow:0 4px 16px -6px #000c}.export-stats{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.export-stats>div{border-radius:var(--r-xs);background:#ffffff0d;flex-direction:column;gap:2px;padding:8px 11px;display:flex;box-shadow:inset 0 0 0 1px #ffffff12}.export-stats strong{font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.export-note{color:var(--text-faint);margin-bottom:14px;font-size:11.5px;display:block}.seg{border-radius:var(--r-sm);background:#0000003d;gap:3px;padding:3px;display:flex;box-shadow:inset 0 0 0 1px #ffffff12}.seg-btn{min-height:26px;box-shadow:none;background:0 0;border-radius:9px;flex:1;padding:4px 10px;font-size:12px}.seg-btn:after{display:none}.seg-btn:hover{box-shadow:none;background:#ffffff17;transform:none}.help-lead{color:var(--text-dim);margin:0 0 16px;font-size:12.5px;line-height:1.6}.help-section{margin-bottom:18px}.help-section h3{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:10.5px;font-weight:600}.help-rows{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2px 20px;display:grid}.help-row{border-radius:7px;align-items:center;gap:10px;padding:4px 8px;display:flex}.help-row:hover{background:#ffffff0d}.kbd-cell{flex:none;justify-content:flex-end;align-items:center;gap:4px;width:152px;display:flex}.kbd{white-space:nowrap;color:var(--text);background:#ffffff1a;border-radius:6px;padding:2px 7px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;box-shadow:inset 0 1px #ffffff38,inset 0 0 0 1px #ffffff1a,0 1px 2px #0006}.kbd-sep{color:var(--text-faint);font-size:10px}.help-desc{color:var(--text-dim);font-size:12px}#filter-preview{border-radius:var(--r-sm);width:100%;max-height:190px;image-rendering:pixelated;object-fit:contain;margin-bottom:14px;box-shadow:inset 0 0 0 1px #ffffff1f}#toasts{z-index:400;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:58px;left:50%;transform:translate(-50%)}.toast{animation:toastIn .34s var(--ease-liquid);border-radius:999px;padding:9px 18px;font-size:12.5px}.toast.out{animation:toastOut .3s var(--ease) forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(14px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toastOut{to{opacity:0;transform:translateY(-8px)scale(.96)}}@media (max-width:1080px){#dock{width:230px}}@media (max-width:860px){#dock,.doc-title{display:none}}
