:root{--bg:#18191b;--work:#141517;--bar:#202124;--panel:#242528;--line:#34353a;--line-2:#3a3b3f;--line-3:#4a4b50;--text:#e8e8ea;--text-2:#c4c5c9;--muted:#a3a4a8;--dim:#7d7e83;--accent:#5ccfb8;--accent-bg:#1f3b36;--danger:#f08a80;--top:env(safe-area-inset-top,0px);--left:env(safe-area-inset-left,0px);--right:env(safe-area-inset-right,0px);--bottom:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:none;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:13px;overflow:hidden}#app{position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0}button:disabled,button[aria-disabled=true]{color:var(--dim);cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input{font:inherit;color:inherit}input[type=text],input[type=number]{-webkit-user-select:text;user-select:text;touch-action:manipulation;background:var(--bg);border:1px solid var(--line-2);border-radius:8px;height:44px;padding:0 10px;font-size:15px}input[type=range]{accent-color:var(--accent);touch-action:none}.i{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.btn{border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.btn[aria-pressed=true],.btn.open{background:var(--accent-bg);color:var(--accent)}.text-btn{border:1px solid var(--line-2);border-radius:8px;height:44px;padding:0 16px;font-weight:500}.text-btn.primary{background:var(--accent);border-color:var(--accent);color:#0f2a25}.text-btn.danger{color:var(--danger)}.sep{background:var(--line-2);width:1px;height:24px;margin:0 6px}select.select{background:var(--bg);min-width:150px;height:44px;color:var(--text);border:1px solid var(--line-2);font:inherit;touch-action:manipulation;border-radius:8px;padding:0 10px}.file-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}.srow,.qrow{align-items:center;gap:12px;min-height:44px;display:flex}.srow>label,.srow>.slabel{width:96px;color:var(--text-2);flex:none}.qrow>label{width:62px;color:var(--muted);flex:none}.srow input[type=range],.qrow input[type=range]{flex:1;min-width:0;height:44px;margin:0}.sval{text-align:right;width:48px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.qrow .sval{width:40px}.seg{border:1px solid var(--line-2);border-radius:8px;gap:0;display:flex;overflow:hidden}.seg button{height:44px;color:var(--text-2);padding:0 14px}.seg button+button{border-left:1px solid var(--line-2)}.seg button[aria-checked=true]{background:var(--accent-bg);color:var(--accent);font-weight:500}.switch{flex:none;width:52px;height:44px;position:relative}.switch:before{content:"";background:var(--line-2);border-radius:12px;height:24px;position:absolute;top:10px;left:2px;right:2px}.switch .knob{background:var(--text-2);border-radius:50%;width:18px;height:18px;transition:left .12s;position:absolute;top:13px;left:5px}.switch[aria-checked=true]:before{background:var(--accent-bg);outline:1px solid var(--accent)}.switch[aria-checked=true] .knob{background:var(--accent);left:29px}.topbar{height:calc(48px + var(--top));padding:var(--top) calc(4px + var(--right)) 0 calc(4px + var(--left));background:var(--bar);border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;display:flex;position:absolute;top:0;left:0;right:0}.group{align-items:center;gap:2px;display:flex}.title{padding:0 10px;font-size:15px;font-weight:600}.editor{background:var(--work);position:absolute;inset:0}.editor>canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.swatch{width:26px;height:26px;box-shadow:0 0 0 2px var(--bar), 0 0 0 3px var(--text);border-radius:50%}.side{left:calc(4px + var(--left));top:calc(180px + var(--top));background:var(--bar);border:1px solid var(--line);z-index:5;border-radius:12px;flex-direction:column;align-items:center;gap:6px;width:48px;padding:10px 0;display:flex;position:absolute}.side label{color:var(--muted);font-size:11px}.side input[type=range]{writing-mode:vertical-lr;direction:rtl;width:28px;height:150px;margin:0}.popover{z-index:20;background:var(--panel);border:1px solid var(--line-2);border-radius:12px;width:320px;position:absolute;overflow:hidden}.popover-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:52px;padding:0 4px 0 14px;font-size:15px;font-weight:600;display:flex}.popover-body{min-height:120px;padding:10px 14px}.brush-list{touch-action:pan-y;flex-direction:column;gap:2px;max-height:min(560px,62vh);margin:-4px -8px;display:flex;overflow-y:auto}.brush-group{color:var(--muted);padding:10px 10px 4px;font-size:11px}.brush-item{text-align:left;height:44px;color:var(--text-2);border-radius:8px;flex:none;padding:0 10px}.brush-item[aria-pressed=true]{background:var(--accent-bg);color:var(--accent);font-weight:500}.popover-head .group{gap:2px}.popover.library{width:380px}.popover.library .popover-body{min-height:0;padding:0}.lib-main{height:min(400px,100vh - 330px);min-height:180px;display:flex}.lib-groups{border-right:1px solid var(--line);touch-action:pan-y;flex-direction:column;flex:none;gap:2px;width:112px;padding:6px;display:flex;overflow-y:auto}.lib-group{text-align:left;min-height:44px;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;flex:none;padding:0 10px;overflow:hidden}.lib-group[aria-selected=true]{background:var(--accent-bg);color:var(--accent);font-weight:500}.lib-group.add{color:var(--muted);border:1px dashed var(--line-3);justify-content:center;align-items:center;margin-top:4px;display:flex}.lib-brushes{touch-action:pan-y;flex-direction:column;flex:1;gap:2px;min-width:0;padding:6px;display:flex;overflow-y:auto}.lib-brush{text-align:left;height:48px;color:var(--text-2);border:1px solid #0000;border-radius:8px;flex:none;align-items:center;gap:10px;padding:0 8px;display:flex}.lib-brush span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lib-brush[aria-pressed=true]{border-color:var(--accent);background:var(--accent-bg);color:var(--accent);font-weight:500}canvas.thumb{flex:none;width:116px;height:30px;display:block}.lib-quick{border-top:1px solid var(--line);flex-direction:column;padding:4px 14px 10px;display:flex}.lib-settings{justify-content:center;align-items:center;gap:8px;margin-top:4px;display:flex}.popover.library:has(.lib.with-shape){width:700px}.lib.with-shape{display:flex}.lib.with-shape .lib-main{flex:0 0 379px;height:auto;min-height:min(400px,100vh - 330px)}.lib.with-shape .qrow>label{width:96px;color:var(--text-2)}.lib-quick .qrow>.seg{flex:1}.lib-quick .qrow>.seg button{flex:1;padding:0}.lib.with-shape .lib-side{border-left:1px solid var(--line);min-width:0;max-height:calc(100vh - 140px - var(--top) - var(--bottom));touch-action:pan-y;flex:1;overflow-y:auto}.shape-ctl{display:grid}.shape-top{display:contents}.shape-title{height:30px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;grid-area:title;align-items:flex-end;padding-bottom:4px;font-size:11px;font-weight:600;display:flex}.shape-reset{grid-area:reset;padding:0 12px}.shape-reset:disabled{color:var(--dim)}.shape-pic{grid-area:pic;justify-content:center;display:flex}.shape-canvas{background:var(--work);border:1px solid var(--line);border-radius:8px;width:104px;height:104px;display:block}.shape-rows{grid-area:rows;min-width:0}.shape-ctl .srow>label,.shape-ctl .srow>.slabel{width:96px}.lib-side .shape-ctl{grid-template-columns:1fr auto 1fr;grid-template-areas:"title pic reset""rows rows rows";padding:6px 14px 4px}.lib-side .shape-title{align-self:start;align-items:flex-start;height:20px;padding:0}.lib-side .shape-reset{place-self:start end}.lib-side .shape-pic{padding-bottom:6px}.be-picks .shape-ctl{grid-template:"pic rows""reset rows"1fr/120px minmax(0,1fr);column-gap:16px;padding-top:8px}.be-picks .shape-canvas{width:112px;height:112px}.be-picks .shape-pic{justify-content:flex-start}.be-picks .shape-reset{place-self:start;width:112px;margin-top:8px}.be-picks .shape-rows{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;column-gap:16px;display:grid}.be-picks .shape-ctl .srow{gap:8px}.be-picks .shape-ctl .srow>label,.be-picks .shape-ctl .srow>.slabel{width:84px}.be-picks .shape-ctl .sval{width:40px}.menu button:disabled,.row-off>label,.row-off>.slabel,.row-off>.sval{color:var(--dim)}.row-off input[type=range],.row-off .switch{opacity:.4}.be-grain{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;padding-top:4px;display:grid}.be-grain .srow{gap:8px}.be-grain .srow>label,.be-grain .srow>.slabel{width:84px}.be-grain .sval{width:40px}.brush-editor{z-index:45;background:var(--bg);flex-direction:column;display:flex;position:absolute;inset:0}.be-bar{height:calc(56px + var(--top));padding:var(--top) calc(12px + var(--right)) 0 calc(4px + var(--left));background:var(--bar);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;display:flex}.be-bar .group{gap:8px}.be-name{text-overflow:ellipsis;white-space:nowrap;border-radius:8px;max-width:360px;height:44px;padding:0 8px;font-size:16px;font-weight:600;overflow:hidden}.be-group{color:var(--muted)}.be-main{flex:1;grid-template:"preview settings"minmax(0,1fr)"picks settings"/minmax(0,1fr) 440px;min-height:0;display:grid}.be-preview{border:1px solid var(--line);border-radius:12px;grid-area:preview;min-height:200px;margin:16px 16px 0;position:relative;overflow:hidden}.be-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.be-tools{gap:4px;display:flex;position:absolute;top:8px;right:8px}.be-tool{background:var(--bar);border:1px solid var(--line-2);border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.be-tool[aria-pressed=true]{border-color:var(--accent)}.be-bg{border:1px solid var(--line-3);border-radius:50%;width:18px;height:18px}.be-bg.dark{background:var(--work);border-color:var(--text)}.be-bg.light{background:#f4f3ee}.be-picks{grid-area:picks;min-width:0;padding:4px 16px 12px}.be-head{height:30px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:flex-end;padding-bottom:4px;font-size:11px;font-weight:600;display:flex}.be-strip{touch-action:pan-x;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.be-tile{border:1px solid var(--line);background:var(--bar);width:76px;height:80px;color:var(--text-2);border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.be-tile.action span{white-space:normal;text-align:center;line-height:1.2}.be-tile span{text-overflow:ellipsis;white-space:nowrap;max-width:70px;overflow:hidden}.be-tile[aria-checked=true]{border-color:var(--accent);background:var(--accent-bg);color:var(--accent);font-weight:500}.be-tile.action{border-style:dashed;border-color:var(--line-3);background:0 0}.be-tile.action[aria-disabled=true]{color:var(--dim)}.be-none{color:var(--muted);display:flex}canvas.mask-icon{width:36px;height:36px;display:block}.be-settings{background:var(--bar);border-left:1px solid var(--line);padding:4px 18px calc(16px + var(--bottom));touch-action:pan-y;grid-area:settings;overflow-y:auto}.dial{touch-action:none;flex:none;width:44px;height:44px}.dial svg{width:44px;height:44px;display:block}.dial circle{fill:var(--work);stroke:var(--line-3);stroke-width:1.5px}.dial line{stroke:var(--accent);stroke-width:2px;stroke-linecap:round}.dial .hub{fill:var(--accent);stroke:none}.curve{border:1px solid var(--line-2);background:var(--work);touch-action:none;border-radius:6px;height:150px;margin:6px 12px 10px;position:relative}.curve svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.curve .grid{stroke:var(--line);stroke-width:1px;vector-effect:non-scaling-stroke;fill:none}.curve .line{stroke:var(--accent);stroke-width:2px;vector-effect:non-scaling-stroke;fill:none}.curve .dot{background:var(--accent);border:2px solid var(--work);pointer-events:none;border-radius:50%;width:16px;height:16px;margin:-8px 0 0 -8px;position:absolute}.curve .dot.removing{background:var(--danger);opacity:.5}.mask-view{justify-content:center;padding:6px 0 10px;display:flex}canvas.mask-big{background:var(--work);border:1px solid var(--line);border-radius:8px;width:192px;height:192px}@media (width<=1000px){.be-main{grid-template:"preview"300px"picks""settings"minmax(0,1fr)/minmax(0,1fr)}.be-settings{border-left:0;border-top:1px solid var(--line)}}.toast{left:50%;bottom:calc(24px + var(--bottom));background:var(--panel);border:1px solid var(--line-2);z-index:60;border-radius:8px;padding:12px 16px;position:absolute;transform:translate(-50%)}.gallery{background:var(--bg);position:absolute;inset:0}.grid{bottom:0;left:0;right:0;top:calc(48px + var(--top));touch-action:pan-y;padding:20px calc(20px + var(--right)) calc(20px + var(--bottom)) calc(20px + var(--left));grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-content:start;gap:20px;display:grid;position:absolute;overflow-y:auto}.card{flex-direction:column;gap:6px;min-width:0;display:flex}.card-art{aspect-ratio:4/3;background:var(--bar);border:1px solid var(--line);border-radius:10px;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.card-art img{max-width:100%;max-height:100%;display:block}.card-new{border:1px dashed var(--line-3);color:var(--text-2);flex-direction:column;gap:6px}.card-row{align-items:center;gap:4px;min-width:0;display:flex}.card-name{flex:1;min-width:0}.card-name div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.card-name .meta{color:var(--muted);font-size:11px}.menu{z-index:30;background:var(--panel);border:1px solid var(--line-2);border-radius:10px;flex-direction:column;min-width:180px;padding:4px;display:flex;position:absolute}.menu button{text-align:left;border-radius:6px;height:44px;padding:0 12px}.menu button.danger{color:var(--danger)}.scrim{z-index:50;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.dialog{background:var(--panel);border:1px solid var(--line-2);border-radius:12px;width:440px;max-width:100%;max-height:100%;overflow-y:auto}.dialog-body{flex-direction:column;gap:4px;padding:12px 14px;display:flex}.dialog-foot{justify-content:flex-end;gap:8px;padding:10px 14px 14px;display:flex}.preset{text-align:left;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;height:48px;padding:0 12px;display:flex}.preset[aria-checked=true]{border-color:var(--accent);background:var(--accent-bg);color:var(--accent)}.preset .meta{color:var(--muted);font-size:12px}.preset[aria-checked=true] .meta{color:var(--accent)}.row{align-items:center;gap:10px;min-height:48px;display:flex}.row label{color:var(--muted);min-width:72px}.row input[type=number]{width:100px}.row .x{color:var(--muted)}.stat{margin-left:auto;font-size:15px;font-weight:600}.color-input{border:1px solid var(--line-2);background:0 0;border-radius:8px;width:44px;height:44px;padding:0}.error{color:var(--danger);padding:4px 0}.firstrun{z-index:60;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;display:flex;position:absolute;inset:0}.firstrun svg{width:min(640px,100%);height:auto}.firstrun p{color:var(--text-2);margin:0;font-size:17px}.popover.layers{width:340px}.popover.layers .popover-body{min-height:0;padding:0}.layer-count{color:var(--muted);font-variant-numeric:tabular-nums;padding:0 6px;font-size:12px;font-weight:400}.layer-list{touch-action:none;flex-direction:column;gap:2px;min-height:120px;max-height:min(430px,100vh - 330px);padding:6px;display:flex;position:relative;overflow-y:auto}.layer-row{background:var(--panel);border:1px solid #0000;border-radius:8px;flex:none;align-items:center;gap:6px;height:48px;display:flex}.layer-row[data-depth="1"]{margin-left:20px}.layer-row.active{border-color:var(--accent);background:var(--accent-bg)}.layer-row.picked{border-color:var(--text-2)}.layer-row.picked.active{border-color:var(--accent)}.layer-row.hidden .layer-name,.layer-row.hidden .thumb{opacity:.5}.layer-row .eye,.layer-row .eye[aria-pressed]{color:var(--text-2);background:0 0;flex:none}.layer-row .eye[aria-pressed=false]{color:var(--dim)}.layer-row .fold{color:var(--muted);margin:0 -6px}.layer-row .fold .i{width:18px;height:18px}.layer-row .folder{color:var(--muted);display:flex}.layer-row .clip-mark{color:var(--muted);margin-right:-4px;display:flex}.layer-row .clip-mark .i{width:16px;height:16px}.thumb{border:1px solid var(--line-3);background:var(--line-2);border-radius:4px;flex:none;justify-content:center;align-items:center;width:44px;height:32px;display:flex;overflow:hidden}.thumb canvas{background-color:#f2f2f2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Crect width='4' height='4' fill='%23d4d4d6'/%3E%3Crect x='4' y='4' width='4' height='4' fill='%23d4d4d6'/%3E%3C/svg%3E");max-width:100%;max-height:100%;display:block}.thumb.mask canvas{background:#000}.thumb.current{border-color:var(--accent)}.mask-thumb{align-items:center;height:44px;display:flex}.layer-name{text-align:left;flex-direction:column;flex:1;justify-content:center;min-width:0;height:44px;display:flex}.layer-name .n{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.layer-name .s{color:var(--muted);font-size:11px}.layer-name.static{padding-left:2px}.layer-row .flags{color:var(--accent);gap:4px;margin-right:4px;display:flex}.layer-row .flags .i{width:16px;height:16px}.layer-row.dragging{z-index:2;border-color:var(--text-2);background:var(--line);position:relative}.layer-row.drop-into{border-color:var(--accent)}.drop-marker{background:var(--accent);pointer-events:none;height:2px;display:none;position:absolute;right:6px}.bg-color{touch-action:manipulation;background:0 0;border:0;border-radius:4px;flex:none;width:44px;height:44px;padding:6px 0}.bg-color::-webkit-color-swatch-wrapper{padding:0}.bg-color::-webkit-color-swatch{border:1px solid var(--line-3);border-radius:4px}.layer-foot{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding:8px 10px 6px;display:flex}.foot-line{align-items:center;gap:10px;min-height:44px;display:flex}.foot-line .select.blend{width:128px;min-width:0;height:44px}.foot-line input[type=range]{flex:1;min-width:0;height:44px;margin:0}.picked-count{color:var(--text-2)}.layer-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:grid}.layer-actions.n4{grid-template-columns:repeat(4,minmax(0,1fr))}.layer-actions.n6{grid-template-columns:repeat(6,minmax(0,1fr))}.layer-act{height:48px;color:var(--text-2);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.layer-act .i{width:18px;height:18px}.layer-act .t{font-size:11px}.layer-act[aria-pressed=true]{color:var(--accent);background:var(--accent-bg)}.color-btn,.hold-btn,.cur-swatch{touch-action:none}.popover.color{width:360px}.popover.color .popover-body{min-height:0;padding:12px 14px 14px}.color-panel{flex-direction:column;gap:10px;display:flex}.color-top{align-items:center;gap:10px;display:flex}.color-pair{border:1px solid var(--line-3);border-radius:8px;flex:none;display:flex;overflow:hidden}.cur-swatch,.prev-swatch{width:64px;height:44px}.prev-swatch{border-left:1px solid var(--line-3)}.hex-input{font-variant-numeric:tabular-nums;text-transform:lowercase;flex:1;min-width:0}.color-tabs{width:100%}.color-tabs button{flex:1;padding:0 4px}.color-view{justify-content:center;min-height:292px;display:flex}.color-field canvas{touch-action:none;display:block}.color-field.square{flex-direction:column;gap:12px;display:flex}.color-field.square canvas{border-radius:6px}.color-recents{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;min-height:44px;display:grid}.recent{border:1px solid var(--line-3);border-radius:8px;height:44px}.color-values{flex-direction:column;gap:0;width:100%;display:flex}.cv-row{align-items:center;gap:8px;height:44px;display:flex}.cv-label{width:76px;color:var(--muted);flex:none}.cv-track{touch-action:none;flex:1;height:44px;position:relative}.cv-track:before{content:"";border:1px solid var(--line-3);background:var(--track);border-radius:16px;position:absolute;inset:6px 0}.cv-knob{pointer-events:none;border:2px solid #fff;border-radius:50%;outline:1px solid #000;width:24px;height:24px;margin:-12px 0 0 -12px;position:absolute;top:50%}.cv-num{text-align:right;flex:none;width:58px;padding:0 8px}.color-palettes{flex-direction:column;gap:8px;width:100%;display:flex}.pal-head{align-items:center;gap:4px;display:flex}.pal-picker{border:1px solid var(--line-2);border-radius:8px;flex:1;justify-content:space-between;align-items:center;gap:6px;min-width:0;height:44px;padding:0 8px 0 12px;display:flex}.pal-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.pal-grid{touch-action:none;grid-template-columns:repeat(7,minmax(0,1fr));align-content:start;gap:3px;max-height:240px;display:grid;overflow-y:auto}.pal-swatch,.pal-add{border:1px solid var(--line-3);border-radius:8px;height:44px}.pal-add{color:var(--text-2);border-style:dashed;justify-content:center;align-items:center;display:flex}.pal-swatch.lifted{outline:2px solid var(--accent);outline-offset:2px}.pal-preview{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.pal-chip{border:1px solid var(--line-3);border-radius:6px;width:32px;height:32px}.menu button[role=menuitemradio]{padding-left:34px;position:relative}.menu button[aria-checked=true]:before{content:"";border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);width:9px;height:5px;position:absolute;top:17px;left:13px;transform:rotate(-45deg)}.loupe{z-index:40;pointer-events:none;width:124px;height:124px;position:absolute}.loupe svg{display:block}.fill-dot{z-index:40;border:2px solid var(--text);pointer-events:none;border-radius:50%;outline:1px solid #000;width:36px;height:36px;position:absolute}.fill-label{z-index:41;background:var(--panel);border:1px solid var(--line-2);white-space:nowrap;pointer-events:none;border-radius:8px;padding:6px 10px;font-size:13px;position:absolute;transform:translate(-50%)}.view-pill{right:calc(12px + var(--right));bottom:calc(12px + var(--bottom));background:var(--bar);border:1px solid var(--line);height:44px;color:var(--text-2);font-variant-numeric:tabular-nums;z-index:5;border-radius:22px;align-items:center;gap:6px;padding:0 14px 0 10px;display:flex;position:absolute}.view-pill[hidden]{display:none}.step-count{left:50%;top:calc(64px + var(--top));background:var(--panel);border:1px solid var(--line-2);font-variant-numeric:tabular-nums;pointer-events:none;z-index:15;border-radius:20px;align-items:center;gap:6px;height:40px;padding:0 14px 0 10px;font-size:15px;font-weight:600;display:flex;position:absolute;transform:translate(-50%)}.step-count[hidden]{display:none}.step-count.none{color:var(--dim);padding:0 10px}.full-exit{top:calc(8px + var(--top));right:calc(8px + var(--right));background:var(--bar);border:1px solid var(--line);opacity:.7;z-index:10;display:none;position:absolute}.editor.full .full-exit{display:flex}.editor.full .topbar,.editor.full .side,.editor.full .view-pill,.editor.full .popover,.editor.full .tool-bar,.editor.full .adjust-panel,.editor.full .amount-readout:not(.stamp-readout),.editor.full .timeline{display:none}.editor.full .stamp-readout,.editor.full .step-count{top:calc(16px + var(--top))}.popover.settings .srow>.slabel{flex:1;width:auto}.srow.stack{flex-direction:column;align-items:stretch;gap:6px;padding:6px 0}.srow.stack .seg button{flex:1;padding:0}.tool-bar{bottom:calc(12px + var(--bottom));z-index:8;background:var(--bar);border:1px solid var(--line-2);border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px;width:max-content;max-width:calc(100% - 24px);margin:0 auto;padding:4px 6px;display:flex;position:absolute;left:0;right:0}.tool-bar .sep{margin:0 4px}.icon-seg{gap:2px;display:flex}.icon-seg .btn[aria-checked=true]{background:var(--accent-bg);color:var(--accent)}.tool-bar .text-btn{height:44px;padding:0 10px}.tool-bar .text-btn.toggle[aria-pressed=true]{background:var(--accent-bg);color:var(--accent);border-color:var(--accent-bg)}.tool-bar .seg button{height:44px;padding:0 10px}.editor.has-bar .view-pill{bottom:calc(76px + var(--bottom))}.sel-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ol-under{fill:none;stroke:#111214;stroke-width:3px}.ol-dash{fill:none;stroke:#f4f4f4;stroke-width:1.25px;stroke-dasharray:5 4}.ol-line{fill:none;stroke:var(--accent);stroke-width:1.5px}.ol-start{fill:#5ccfb840;stroke:var(--accent);stroke-width:1.5px}.ol-handle{fill:#f4f4f4;stroke:#111214;stroke-width:1.5px}.ol-handle.small{r:5px}.ol-handle.rot{fill:var(--accent)}.popover.adjust{width:480px}.popover.adjust .popover-body{min-height:0;max-height:calc(100vh - 120px - var(--top) - var(--bottom));padding:6px;overflow-y:auto}.adjust-cols-list{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:6px;display:grid}.adjust-list>.adjust-head{padding:6px 10px 4px}.adjust-list{flex-direction:column;gap:2px;display:flex}.adjust-head{color:var(--muted);padding:10px 10px 4px;font-size:11px}.adjust-item{text-align:left;height:44px;color:var(--text-2);border-radius:8px;padding:0 10px}.adjust-item:active{background:var(--accent-bg);color:var(--accent)}.adjust-panel{bottom:calc(12px + var(--bottom));z-index:8;width:min(560px,100% - 24px);max-height:calc(100% - 140px - var(--top) - var(--bottom));background:var(--bar);border:1px solid var(--line-2);touch-action:pan-y;border-radius:10px;margin:0 auto;position:absolute;left:0;right:0;overflow-y:auto}.adjust-top{justify-content:space-between;align-items:center;gap:8px;padding:4px 6px 4px 14px;display:flex}.adjust-top .group{gap:4px}.adjust-top .text-btn{padding:0 12px}.adjust-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.adjust-body{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding:2px 14px 10px;display:flex}.adjust-body>.srow:first-child,.adjust-body>div>.seg:first-child{margin-top:6px}.adjust-body .seg{align-self:flex-start}.adjust-curves,.adjust-levels,.adjust-balance,.adjust-gradient{flex-direction:column;gap:8px;display:flex}.adjust-curve.curve{height:200px;margin:0}.hist{opacity:.8;width:100%;height:100%;position:absolute;inset:0}.level-hist{border:1px solid var(--line-2);background:var(--work);border-radius:6px;height:72px;position:relative;overflow:hidden}.level-marks span{background:var(--accent);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.adjust-cols{grid-template-rows:repeat(3,auto);grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-flow:column;column-gap:20px;display:grid}.adjust-cols>.srow{gap:8px;min-width:0}.adjust-cols .srow>label{width:68px}.adjust-cols .sval{width:36px}.adjust-balance .srow>label{width:110px}.adjust-choice{margin-top:6px}.adjust-body .adjust-choice .seg{background:var(--line-2);grid-template-columns:repeat(4,minmax(0,1fr));align-self:stretch;gap:1px;display:grid}.adjust-choice .seg button{background:var(--bar);white-space:nowrap;height:44px;padding:0 6px}.adjust-choice .seg button+button{border-left:none}.adjust-choice .seg button:last-child:nth-child(4n+1):nth-child(n+5){grid-column:span 4}.adjust-choice .seg button:last-child:nth-child(4n+2):nth-child(n+5){grid-column:span 3}.adjust-choice .seg button:last-child:nth-child(4n+3):nth-child(n+5){grid-column:span 2}.adjust-choice .seg button[aria-checked=true]{background:var(--accent-bg)}.amount-readout{z-index:8;left:0;right:0;top:calc(64px + var(--top));background:var(--bar);border:1px solid var(--line-2);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:8px;width:max-content;margin:0 auto;padding:8px 14px;position:absolute}.grad-presets{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.grad-preset{border:1px solid var(--line-2);border-radius:8px;width:64px;height:44px}.grad-edit{touch-action:none;height:72px;margin:0 10px;position:relative}.grad-bar{border:1px solid var(--line-2);border-radius:6px;height:40px;position:absolute;top:0;left:0;right:0}.grad-handles{height:32px;position:absolute;top:40px;left:0;right:0}.grad-stop{border:2px solid var(--line-3);background:var(--bar);border-radius:6px;width:22px;height:28px;margin-left:-11px;padding:2px;position:absolute;top:2px}.grad-stop span{border-radius:3px;width:100%;height:100%;display:block}.grad-stop.on{border-color:var(--accent)}.grad-stop.removing{opacity:.4}.grad-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.grad-hex{width:96px;height:44px;padding:0 10px}.popover.import{width:240px}.popover.import .popover-body{min-height:0;padding:6px}.import-list{flex-direction:column;gap:2px;display:flex}.import-list .adjust-head{padding:12px 10px 4px}.import-item{height:44px;color:var(--text-2);text-align:left;border-radius:8px;align-items:center;gap:10px;padding:0 10px;display:flex}.import-item .i{flex:none;width:20px;height:20px}.import-item:active{background:var(--accent-bg);color:var(--accent)}.popover.export{width:340px}.popover.export .popover-body{min-height:0}.export-panel{flex-direction:column;gap:10px;display:flex}.export-panel>.seg{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.export-panel>.seg button{padding:0 4px}.export-options:empty{display:none}.export-go{height:44px}.export-bar{background:var(--line-2);border-radius:3px;height:6px;overflow:hidden}.export-bar[hidden],.export-result[hidden]{display:none}.export-fill{background:var(--accent);width:0;height:100%}.export-result{flex-direction:column;gap:8px;display:flex}.export-file{color:var(--text-2);justify-content:space-between;gap:8px;font-size:13px;display:flex}.export-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.export-size{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.export-actions{gap:8px;display:flex}.export-actions .text-btn{flex:1;height:44px}.ref-window{z-index:6;border:1px solid var(--line-2);background:0 0;border-radius:10px;flex-direction:column;display:flex;position:absolute;overflow:hidden}.ref-head{background:var(--panel);height:44px;color:var(--text-2);cursor:move;flex:none;justify-content:space-between;align-items:center;padding-left:12px;font-size:12px;display:flex}.ref-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ref-tools{display:flex}.ref-tools .btn{width:44px;height:44px}.ref-tools .btn .i{width:16px;height:16px}.ref-tools .btn[aria-checked=true]{color:var(--accent);background:var(--accent-bg)}.ref-opacity{background:var(--panel);border-top:1px solid var(--line);flex:none;padding:0 10px}.ref-opacity[hidden]{display:none}.ref-opacity input{width:100%;height:44px;margin:0}.ref-body{touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.ref-window[data-mode=image] .ref-body{background:#1c1d20}.ref-picture{width:100%;height:100%;display:block;position:absolute;inset:0}.ref-picture[hidden],.ref-empty[hidden]{display:none}.ref-empty{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ref-grip{width:44px;height:44px;color:var(--muted);cursor:nwse-resize;justify-content:flex-end;align-items:flex-end;padding:4px;display:flex;position:absolute;bottom:0;right:0}.ref-grip .i{width:16px;height:16px}.drop-target{outline:2px solid var(--accent);outline-offset:-2px}.popover.guides{width:440px}.popover.guides .popover-body{min-height:0}.guides-panel .srow.stack .seg button{font-size:13px}.guides-panel .seg,.guides-panel .text-btn.wide{flex:1}.guide-colors{flex:1;gap:4px;display:flex}.guide-color{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.guide-color span{border:1px solid var(--line-2);border-radius:50%;width:24px;height:24px}.guide-color[aria-checked=true]{border-color:var(--accent);background:var(--accent-bg)}.guide-bar .bar-label{color:var(--text-2);padding:0 10px 0 6px}.ol-under.thin{stroke-width:2.5px}.editor.full .shape-overlay,.editor.full .guide-overlay{display:none}.timeline{left:calc(8px + var(--left));right:calc(8px + var(--right));bottom:calc(8px + var(--bottom));z-index:7;background:var(--bar);border:1px solid var(--line-2);border-radius:10px;flex-direction:column;gap:4px;padding:4px 8px 6px;display:flex;position:absolute}.editor.has-timeline .side{top:clamp(calc(56px + var(--top)), calc(100% - var(--timeline-h,150px) - 8px - var(--bottom) - 480px), calc(180px + var(--top)))}.editor.has-timeline .tool-bar,.editor.has-timeline .adjust-panel,.editor.has-timeline .view-pill{bottom:calc(var(--timeline-h,150px) + 16px + var(--bottom))}.editor.has-timeline.has-bar .view-pill{bottom:calc(var(--timeline-h,150px) + 80px + var(--bottom))}.editor.has-timeline .adjust-panel{max-height:calc(100% - 156px - var(--timeline-h,150px) - var(--top) - var(--bottom))}.editor.full.has-timeline .view-pill{bottom:calc(12px + var(--bottom))}.tl-controls{flex-wrap:wrap;align-items:center;gap:2px 8px;display:flex}.tl-controls .sep{margin:0}.tl-gap{flex:1}.tl-play{background:var(--accent);color:#10201d;width:52px}.tl-play[aria-pressed=true]{background:var(--accent);color:#10201d}.tl-count{font-variant-numeric:tabular-nums;min-width:60px;color:var(--text-2);padding-left:6px}.tl-stepper{align-items:center;gap:2px;display:flex}.tl-stepper .btn{border:1px solid var(--line-2)}.tl-value{text-align:center;font-variant-numeric:tabular-nums;min-width:28px}.tl-fps{min-width:52px}.tl-label{color:var(--muted);padding:0 4px}.tl-toggle{color:var(--text-2);border-color:#0000;align-items:center;gap:6px;padding:0 12px 0 8px;display:flex}.tl-toggle[aria-pressed=true]{background:var(--accent-bg);color:var(--accent)}.tl-toggle svg{width:20px;height:20px}.tl-controls .seg button{padding:0 12px}.tl-strip{touch-action:none;scrollbar-width:none;align-items:flex-start;gap:6px;padding:2px 0;display:flex;position:relative;overflow:auto hidden}.tl-strip::-webkit-scrollbar{display:none}.tl-tile{border-radius:6px;flex-direction:column;flex:none;align-items:flex-start;gap:3px;min-width:44px;display:flex}.tl-pic{border:1px solid var(--line-2);background:#e4e4e6;border-radius:5px;display:flex;overflow:hidden}.tl-pic canvas{display:block}.tl-hold{border-left:1px dashed var(--accent);background:var(--accent-bg)}.tl-tile[aria-pressed=true] .tl-pic{border:2px solid var(--accent);margin:-1px}.tl-num{color:var(--muted);white-space:pre;font-variant-numeric:tabular-nums;padding-left:2px;font-size:11px}.tl-tile[aria-pressed=true] .tl-num{color:var(--accent);font-weight:500}.tl-tile.dragging{z-index:2;opacity:.85;position:relative}.tl-add{border:1px dashed var(--line-3);width:52px;height:46px;color:var(--text-2);border-radius:6px;flex:none}.tl-marker{background:var(--accent);pointer-events:none;width:2px;height:46px;position:absolute;top:0}.tl-marker[hidden]{display:none}.tl-options{background:var(--panel);border:1px solid var(--line-2);z-index:21;border-radius:12px;width:410px;max-width:calc(100vw - 32px);max-height:calc(100vh - 220px);padding:0;position:absolute;bottom:calc(100% + 8px);right:0;overflow-y:auto}.tl-head{color:var(--muted);padding:10px 0 2px;font-size:11px}.tl-colors{gap:2px;display:flex}.tl-color{border-radius:8px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.tl-color:before{content:"";background:var(--c);border-radius:50%;width:24px;height:24px}.tl-color[aria-checked=true]{background:var(--accent-bg);outline:2px solid var(--accent);outline-offset:-2px}.tl-options-body{padding:6px 14px 10px}.tl-options .srow>label,.tl-options .srow>.slabel{width:92px}
