@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;700&display=swap";:root{--bg0:#0e0f11;--bg1:#16181c;--bg2:#1e2128;--bg3:#262b34;--bd:#2e3440;--bd2:#404859;--t0:#e8eaf0;--t1:#8acfd8;--t2:#fd88a0;--ac:#4f8ef7;--ac2:#3a6fd8;--acg:#4f8ef729}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{background:var(--bg0);color:var(--t0);-webkit-user-select:none;user-select:none;flex-direction:column;font-family:DM Sans,sans-serif;font-size:14px;transition:background .2s;display:flex}.ws{flex:1;height:100vh;min-height:0;display:flex;position:relative;overflow:hidden}.lrail{background:var(--bg1);border-right:1px solid var(--bd);flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:64px;padding:8px 0;display:flex;overflow:hidden auto}.lrail::-webkit-scrollbar{display:none}.lrail-logo{flex-direction:column;align-items:center;gap:2px;width:100%;padding:6px 0 10px;font-family:DM Mono,monospace;display:flex}.lrail-logo-txt{letter-spacing:-.5px;color:var(--t0);font-size:12px;font-weight:900}.lrail-logo-txt em{color:var(--ac);font-style:normal}.lrail-logo-ver{color:var(--t2);font-size:9px;font-weight:400}.lrail-section{flex-direction:column;align-items:center;gap:2px;width:100%;display:flex}.lrail-sep{background:var(--bd);flex-shrink:0;width:36px;height:1px;margin:6px 0}.lrail-spacer{flex:1;min-height:8px}.lrail-status{color:var(--t2);text-align:center;border-top:1px solid var(--bd);word-break:break-all;width:100%;min-height:28px;padding:8px 4px;font-family:DM Mono,monospace;font-size:11px}.tbtn{cursor:pointer;width:48px;height:48px;color:var(--t1);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;transition:all .1s;display:flex;position:relative}.tbtn:hover{background:var(--bg3);color:var(--t0)}.tbtn.on{background:var(--acg);border-color:var(--ac);color:var(--ac)}.tbtn i{pointer-events:none;width:22px;height:22px}.tip{background:var(--bg3);border:1px solid var(--bd2);color:var(--t0);white-space:nowrap;pointer-events:none;z-index:200;border-radius:6px;padding:4px 10px;font-size:12px;display:none;position:absolute;top:50%;left:56px;transform:translateY(-50%)}.tbtn:hover .tip{display:block}.main{background:var(--bd);flex:1;min-width:0;display:flex;overflow:hidden}.panegrid{flex:1;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:2px;min-width:0;min-height:0;display:grid;overflow:hidden}.panegrid.single{display:flex}.panegrid.single .pane{display:none}.panegrid.single .pane.single-active{flex:1;display:flex}.pane{background:var(--bg0);border:2px solid #0000;flex-direction:column;min-width:0;min-height:0;transition:border-color .1s,background .2s;display:flex;position:relative;overflow:hidden}.pane.focused{border-color:var(--ac);z-index:5}.phdr{background:var(--bg1);border-bottom:1px solid var(--bd);flex-shrink:0;align-items:center;gap:8px;height:30px;padding:0 10px;display:flex}.plbl{letter-spacing:.04em;color:var(--t0);pointer-events:none;flex:1;font-size:13px;font-weight:700}.pcyc{border:1px solid var(--bd);color:var(--t1);cursor:pointer;pointer-events:auto;background:0 0;border-radius:5px;padding:3px 6px;font-size:12px;transition:all .1s}.pcyc:hover{background:var(--bg3);color:var(--t0)}.pbody{cursor:crosshair;flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.pbody.is3d{cursor:crosshair;background:0 0}body[data-tool=brush] .pbody,body[data-tool=brush] .pbody.is3d,body[data-tool=voxel] .pbody,body[data-tool=voxel] .pbody.is3d,body[data-tool=rect] .pbody,body[data-tool=rect] .pbody.is3d,body[data-tool=circle] .pbody,body[data-tool=circle] .pbody.is3d,body[data-tool=line] .pbody,body[data-tool=line] .pbody.is3d,body[data-tool=fill] .pbody,body[data-tool=fill] .pbody.is3d{cursor:crosshair}body[data-tool=eraser] .pbody,body[data-tool=eraser] .pbody.is3d{cursor:cell}body[data-tool=eyedrop] .pbody,body[data-tool=eyedrop] .pbody.is3d{cursor:copy}body[data-tool=select] .pbody,body[data-tool=select] .pbody.is3d{cursor:default}body.panning .pbody,body.panning .pbody.is3d{cursor:grab!important}body.panning.dragging .pbody,body.panning.dragging .pbody.is3d{cursor:grabbing!important}.cvwrap{justify-content:center;align-items:center;display:flex;position:absolute;inset:50% auto auto 50%}.cvwrap canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block;position:absolute}.d3wrap{display:none;position:absolute;inset:0}.pbody.is3d .cvwrap{display:none}.pbody.is3d .d3wrap{display:block}.slice-panel{border-left:1px solid var(--bd);z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#16181ce6;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:44px;padding:12px 0;display:none;position:absolute;top:0;bottom:0;right:0}.slice-mode .slice-panel{display:flex}.sp-btn{background:var(--bg3);border:1px solid var(--bd2);color:var(--t0);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;transition:all .1s;display:flex}.sp-btn:hover{background:var(--bd2);border-color:var(--ac)}.sp-val{color:var(--ac);margin:4px 0;font-family:DM Mono,monospace;font-size:16px;font-weight:700}.sp-icon{opacity:.8;margin-bottom:4px;font-size:20px}.rpanel{background:var(--bg1);border-left:1px solid var(--bd);flex-direction:column;flex-shrink:0;width:252px;display:flex;overflow:hidden auto}.rpanel::-webkit-scrollbar{width:4px}.rpanel::-webkit-scrollbar-thumb{background:var(--bd2);border-radius:2px}.rsec{border-bottom:1px solid var(--bd);padding:14px}.rlbl{letter-spacing:.12em;color:var(--t2);text-transform:uppercase;margin-bottom:10px;font-size:11px;font-weight:700}.rsec-active{padding:14px}.active-color{align-items:stretch;gap:10px;display:flex}.active-color-swatch{border:2px solid var(--bd2);cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;width:96px;height:96px;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000004d}.ac-btn.ac-trans-overlay{color:#fff;z-index:2;background:#0000008c;border-color:#fff6;width:26px;height:26px;position:absolute;bottom:4px;right:4px}.ac-btn.ac-trans-overlay:hover{color:#fff;background:#000000d9;border-color:#fff}.ac-btn.ac-trans-overlay.on{background:var(--ac);border-color:var(--ac);color:#fff}.ac-btn.ac-trans-overlay i{width:14px;height:14px}.active-color-swatch.transparent{background-color:#2a2d33;background-image:linear-gradient(45deg,#555 25%,#0000 25% 75%,#555 75%,#555),linear-gradient(45deg,#555 25%,#0000 25% 75%,#555 75%,#555);background-position:0 0,8px 8px;background-size:16px 16px}.cp-side{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.cp-hex-row{align-items:center;gap:4px;display:flex}.cp-hex-input{background:var(--bg2);border:1px solid var(--bd2);min-width:0;color:var(--t0);text-transform:uppercase;text-align:center;border-radius:4px;flex:1;padding:5px 6px;font-family:DM Mono,monospace;font-size:12px}.cp-hex-input:focus{border-color:var(--ac);outline:none}.cp-tabs{gap:4px;display:flex}.cp-tab{letter-spacing:.06em;background:var(--bg2);border:1px solid var(--bd2);color:var(--t2);cursor:pointer;border-radius:4px;flex:1;padding:5px 0;font-family:inherit;font-size:11px;font-weight:700;transition:all .1s}.cp-tab:hover{background:var(--bg3);color:var(--t0)}.cp-tab.on{background:var(--acg);border-color:var(--ac);color:var(--ac)}.cp-panel{flex-direction:column;gap:8px;margin-top:10px;display:flex}.cp-hsliders{flex-direction:column;gap:10px;display:flex}.cp-hslider-row{align-items:center;gap:7px;display:flex}.cp-hslider-lbl{color:var(--t2);text-align:center;flex-shrink:0;width:10px;font-size:10px;font-weight:700}.cp-hslider-track{border:1px solid var(--bd2);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;flex:1;height:12px;position:relative;overflow:visible}.cp-hslider-track[data-ch=r]{background:linear-gradient(90deg,#000 0%,red 100%)}.cp-hslider-track[data-ch=g]{background:linear-gradient(90deg,#000 0%,#0f0 100%)}.cp-hslider-track[data-ch=b]{background:linear-gradient(90deg,#000 0%,#00f 100%)}.cp-hslider-thumb{pointer-events:none;background:#fff;border:1px solid #00000073;border-radius:3px;width:6px;height:20px;position:absolute;top:-4px;transform:translate(-50%);box-shadow:0 1px 3px #0006}.cp-hslider-val{color:var(--t1);text-align:right;flex-shrink:0;width:22px;font-family:DM Mono,monospace;font-size:11px}.ac-btn{background:var(--bg2);border:1px solid var(--bd);cursor:pointer;width:32px;height:32px;color:var(--t1);border-radius:6px;justify-content:center;align-items:center;transition:all .1s;display:flex}.ac-btn:hover{background:var(--bg3);color:var(--t0);border-color:var(--bd2)}.ac-btn.on{background:var(--acg);border-color:var(--ac);color:var(--ac)}.ac-btn i{width:16px;height:16px}.cp-wrap{flex-direction:column;gap:8px;display:flex}.cp-sv{aspect-ratio:16/9;cursor:crosshair;border:1px solid var(--bd2);-webkit-user-select:none;user-select:none;background:red;border-radius:6px;width:100%;position:relative;overflow:hidden}.cp-sv-white{background:linear-gradient(90deg,#fff 0%,#fff0 100%);position:absolute;inset:0}.cp-sv-black{background:linear-gradient(#0000 0%,#000 100%);position:absolute;inset:0}.cp-sv-cursor{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000080}.cp-hue{cursor:pointer;border:1px solid var(--bd2);-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%);border-radius:4px;width:100%;height:14px;position:relative}.cp-hue-cursor{pointer-events:none;border:2px solid #fff;border-radius:2px;width:4px;position:absolute;top:-2px;bottom:-2px;transform:translate(-50%);box-shadow:0 0 0 1px #00000080}.rsec.collapsible{padding:0}.rsec.collapsible .rsec-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin-bottom:0;padding:10px 14px;display:flex}.rsec.collapsible .rsec-toggle:hover{background:var(--bg2)}.rsec.collapsible .rsec-body{padding:0 14px 14px}.rsec.collapsible:not(.open) .rsec-body{display:none}.rsec-chevron{flex-shrink:0;transition:transform .2s}.rsec.collapsible:not(.open) .rsec-chevron{transform:rotate(-90deg)}#palette-list{flex-direction:column;gap:4px;display:flex}.lrow{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:flex-start;gap:6px;padding:6px;transition:all .1s;display:flex}.lrow:hover{background:var(--bg2)}.lrow.active{background:var(--acg);border-color:var(--ac);box-shadow:inset 0 0 0 1px #4f8ef766}.lrow-vis{width:22px;height:22px;color:var(--t2);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:all .1s;display:flex}.lrow-vis:hover{background:var(--bg3);color:var(--t0)}.lrow-vis.hidden{color:var(--bd2)}.lrow-vis svg{pointer-events:none;width:14px;height:14px}.lrow-pal{flex:1;grid-template-columns:repeat(auto-fill,18px);align-content:flex-start;gap:3px;min-height:22px;display:grid}.pal-cell{cursor:pointer;border:1px solid #ffffff14;border-radius:3px;width:18px;height:18px;transition:transform 80ms,box-shadow 80ms;position:relative}.pal-cell:hover{z-index:2;transform:scale(1.15)}.pal-cell.active{box-shadow:0 0 0 1px var(--ac), 0 0 6px var(--ac);z-index:2;border:2px solid #fff;transform:scale(1.15)}.pal-cell.transparent{background-color:#2a2d33;background-image:linear-gradient(45deg,#555 25%,#0000 25% 75%,#555 75%,#555),linear-gradient(45deg,#555 25%,#0000 25% 75%,#555 75%,#555);background-position:0 0,4px 4px;background-size:8px 8px}.lrow.hidden .lrow-pal{opacity:.35}.add-layer-btn{background:var(--bg2);border:1px dashed var(--bd2);width:100%;color:var(--t1);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:8px;font-family:inherit;font-size:12px;transition:all .1s;display:flex}.add-layer-btn:hover{background:var(--bg3);color:var(--t0);border-color:var(--ac)}.rsec-anim{padding:14px}.anim-bar{background:var(--bg2);border:1px solid var(--bd2);border-radius:6px;flex-direction:column;gap:6px;padding:6px;display:flex}.anim-row{align-items:center;gap:4px;display:flex}.anim-row-nav{justify-content:center}.anim-row-meta{justify-content:space-between}.anim-btn{background:var(--bg3);border:1px solid var(--bd2);width:28px;height:28px;color:var(--t0);cursor:pointer;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:14px;line-height:1;transition:all .1s;display:flex}.anim-btn:hover{background:var(--ac);border-color:var(--ac)}.anim-btn:disabled{opacity:.35;cursor:not-allowed}.anim-btn:disabled:hover{background:var(--bg3);border-color:var(--bd2)}.anim-btn.anim-play{width:36px;height:30px;font-size:16px}.anim-btn.anim-play.playing,.anim-btn.anim-trash:hover{background:#d65656;border-color:#d65656}.anim-btn.anim-trash i{color:var(--t1)}.anim-btn.anim-trash:hover i{color:#fff}.anim-counter{color:var(--t0);text-align:center;font-variant-numeric:tabular-nums;min-width:32px;font-size:12px;font-weight:600}#anim-ms{background:var(--bg1);border:1px solid var(--bd2);width:56px;height:24px;color:var(--t0);font-variant-numeric:tabular-nums;text-align:right;border-radius:4px;padding:0 4px;font-family:inherit;font-size:12px}#anim-ms:focus{border-color:var(--ac);outline:none}#anim-ms::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#anim-ms::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.anim-ms-suffix{color:var(--t2);margin-right:2px;font-size:10px}.ctxmenu{z-index:1000;background:var(--bg2);border:1px solid var(--bd2);border-radius:6px;min-width:160px;padding:4px;font-size:13px;display:none;position:fixed;box-shadow:0 8px 24px #00000080}.ctxmenu.open{display:block}.ctxmenu-item{cursor:pointer;color:var(--t0);border-radius:4px;align-items:center;gap:10px;padding:6px 10px;transition:background 50ms;display:flex}.ctxmenu-item:hover{background:var(--bg3)}.ctxmenu-item.disabled{opacity:.4;pointer-events:none}.ctxmenu-item i{width:14px;height:14px;color:var(--t1)}.ctxmenu-danger,.ctxmenu-danger i{color:#ff6b6b}.ctxmenu-sep{background:var(--bd);height:1px;margin:4px 0}.opt-row{justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;display:flex}.opt-slider{color:var(--t2);align-items:center;gap:8px;margin-bottom:10px;font-size:11px;display:flex}.opt-slider span:first-child{min-width:56px}.slival{text-align:right;min-width:32px;color:var(--t1);font-family:DM Mono,monospace}.tog{background:var(--bg3);border:1px solid var(--bd2);cursor:pointer;border-radius:10px;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.tog.on{background:var(--ac);border-color:var(--ac)}.tog:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s;position:absolute;top:2px;left:2px}.tog.on:after{transform:translate(16px)}input[type=range].slih{-webkit-appearance:none;background:var(--bg3);cursor:pointer;border-radius:4px;outline:none;flex:1;height:5px}input[type=range].slih::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ac);border:2px solid var(--bg1);cursor:pointer;border-radius:50%;width:14px;height:14px}.drag-overlay{border:4px dashed var(--ac);z-index:1000;pointer-events:none;background:#4f8ef733;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.drag-overlay.active{display:flex}.drag-overlay-msg{background:var(--bg1);color:var(--t0);border-radius:12px;padding:16px 32px;font-weight:700;box-shadow:0 8px 32px #00000080}@media (width<=800px){.rpanel{display:none}}canvas.main{background:0 0!important}.cvwrap.grid-on{background-image:linear-gradient(45deg,#0000001a 25%,#0000 25% 75%,#0000001a 75%),linear-gradient(45deg,#0000001a 25%,#0000 25% 75%,#0000001a 75%);background-position:0 0,8px 8px;background-size:16px 16px;border:1px solid #fff3}.pbody.is3d .slice-panel{display:none!important}.sp-btn svg{pointer-events:none}.pbody.checker-bg .d3wrap{background-image:linear-gradient(45deg,#0000001a 25%,#0000 25% 75%,#0000001a 75%,#0000001a),linear-gradient(45deg,#0000001a 25%,#0000 25% 75%,#0000001a 75%,#0000001a)}.file-dialog{z-index:600;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.file-dialog[hidden]{display:none}.file-dialog-inner{background:var(--bg1);border:1px solid var(--bd2);border-radius:12px;width:500px;max-width:96vw;overflow:hidden;box-shadow:0 24px 64px #00000080}.file-dialog-hdr{border-bottom:1px solid var(--bd2);color:var(--t0);justify-content:space-between;align-items:center;padding:13px 16px;font-size:13px;font-weight:700;display:flex}.file-dialog-close-btn{color:var(--t2);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 7px;font-size:15px;line-height:1}.file-dialog-close-btn:hover{background:var(--bg3);color:var(--t0)}.file-dialog-body{gap:0;padding:14px;display:flex}.file-dialog-col{flex-direction:column;flex:1;gap:7px;display:flex}.file-dialog-col-hdr{letter-spacing:.06em;text-transform:uppercase;color:var(--t2);border-bottom:1px solid var(--bd2);margin-bottom:1px;padding-bottom:6px;font-size:10px;font-weight:700}.file-dialog-sep{background:var(--bd2);align-self:stretch;width:1px;margin:0 12px}.fdlg-btn{background:var(--bg2);border:1px solid var(--bd2);cursor:pointer;color:var(--t0);text-align:left;border-radius:7px;align-items:center;gap:10px;width:100%;padding:9px 11px;transition:background .1s,border-color .1s;display:flex}.fdlg-btn:hover{background:var(--bg3);border-color:var(--ac)}.fdlg-btn i{width:18px;height:18px;color:var(--ac);flex-shrink:0}.fdlg-btn-text{flex-direction:column;gap:1px;display:flex}.fdlg-btn-text span{white-space:nowrap;font-size:12px;font-weight:600}.fdlg-btn-text small{color:var(--t2);font-family:DM Mono,monospace;font-size:10px}.fdlg-glb-wrap{flex-direction:column;gap:5px;display:flex}.fdlg-glb-opts{flex-direction:column;gap:5px;padding:4px 10px 2px;display:flex}.fdlg-chk{cursor:pointer;color:var(--t1);align-items:flex-start;gap:7px;font-size:11px;line-height:1.4;display:flex}.fdlg-chk input[type=checkbox]{accent-color:var(--ac);flex-shrink:0;margin-top:1px}.file-dialog-hint{color:var(--t2);border-top:1px solid var(--bd2);text-align:center;padding:8px 16px 11px;font-size:10px}
