@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/align-sprites/assets/pixelify-sans-cyrillic-600-normal-B3EuUOZG.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/align-sprites/assets/pixelify-sans-latin-ext-600-normal-Dha6RiOG.woff2)format("woff2"),url(/align-sprites/assets/pixelify-sans-latin-ext-600-normal-CDaIumwU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/align-sprites/assets/pixelify-sans-latin-600-normal-Dd_Dy7u5.woff2)format("woff2"),url(/align-sprites/assets/pixelify-sans-latin-600-normal-BNlgYbDL.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/align-sprites/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/align-sprites/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--paper:var(--lightningcss-light,#f1f0f6)var(--lightningcss-dark,#15131f);--panel:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1e1b2b);--panel-2:var(--lightningcss-light,#f7f6fb)var(--lightningcss-dark,#252236);--ink:var(--lightningcss-light,#1e1a33)var(--lightningcss-dark,#eceaf6);--ink-soft:var(--lightningcss-light,#5f5a78)var(--lightningcss-dark,#a7a2c2);--line:var(--lightningcss-light,#dcd9e8)var(--lightningcss-dark,#322e45);--stage:var(--lightningcss-light,#2a2640)var(--lightningcss-dark,#100e19);--stage-check-a:var(--lightningcss-light,#34304c)var(--lightningcss-dark,#1b1828);--stage-check-b:var(--lightningcss-light,#2c2842)var(--lightningcss-dark,#15131f);--stage-ink:#eceaf6;--stage-soft:#b3aed0;--action:var(--lightningcss-light,#3346d3)var(--lightningcss-dark,#8c9bff);--action-ink:var(--lightningcss-light,#fff)var(--lightningcss-dark,#10122e);--key:var(--lightningcss-light,#e01bd6)var(--lightningcss-dark,#ff5cf4);--ground:#ffc531;--ok:var(--lightningcss-light,#1f8a4c)var(--lightningcss-dark,#5bd48c);--warn:var(--lightningcss-light,#9a5b00)var(--lightningcss-dark,#ffb547);--danger:var(--lightningcss-light,#c0362c)var(--lightningcss-dark,#ff8a7a);--check-a:var(--lightningcss-light,#fff)var(--lightningcss-dark,#2b2840);--check-b:var(--lightningcss-light,#e6e4f0)var(--lightningcss-dark,#211e32);--r-region:14px;--r-control:8px;--r-chip:4px;--sans:"Atkinson Hyperlegible Next Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--pixel:"Pixelify Sans", var(--sans);font:15px/1.5 var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-variant-numeric:tabular-nums}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}body{min-height:100svh;margin:0}#root{min-height:100svh}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--action);text-underline-offset:3px}:focus-visible{outline:2px solid var(--action);outline-offset:2px;border-radius:var(--r-chip)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--ink-soft)}.row{align-items:end;gap:12px;display:flex}.row.wrap{flex-wrap:wrap;align-items:center}.row.center{justify-content:center}.pixelated{image-rendering:pixelated}.app{flex-direction:column;min-height:100svh;display:flex}.topbar{background:var(--panel);border-bottom:1px solid var(--line)}.topbar-in{flex-wrap:wrap;align-items:center;gap:12px 28px;max-width:1440px;margin:0 auto;padding:10px 24px;display:flex}.wordmark{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:inline-flex}.wordmark-text{font:600 22px/1 var(--pixel);letter-spacing:.01em}.logo{align-items:flex-end;gap:3px;height:24px;display:inline-flex}.logo i{background:var(--ink);border-radius:1px;width:7px;display:block}.logo i:first-child{height:13px}.logo i:nth-child(2){background:var(--action);height:20px}.logo i:nth-child(3){height:16px}.nav{flex:1;gap:4px;min-width:0;display:flex;overflow-x:auto}.nav-link{border-radius:var(--r-control);color:var(--ink-soft);white-space:nowrap;padding:8px 14px;font-weight:600;text-decoration:none}.nav-link:hover{color:var(--ink);background:var(--panel-2)}.nav-link.is-on{color:var(--action);background:color-mix(in srgb, var(--action) 12%, transparent)}.topbar-tools{align-items:center;gap:8px;margin-left:auto;display:flex}.lang{border:1px solid var(--line);border-radius:var(--r-control);display:inline-flex;overflow:hidden}.lang-btn{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:13px;font-weight:700}.lang-btn.is-on{background:var(--action);color:var(--action-ink)}.icon-btn{border:1px solid var(--line);border-radius:var(--r-control);width:36px;height:36px;color:var(--ink-soft);cursor:pointer;background:0 0;place-items:center;display:grid}.icon-btn:hover{color:var(--ink);border-color:var(--ink-soft)}.icon-btn-sm{border-color:#0000;width:26px;height:26px}.page{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:20px 24px 32px}.app-footer{width:100%;max-width:1440px;color:var(--ink-soft);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;margin:0 auto;padding:16px 24px 24px;font-size:13px;display:flex}.footer-links{flex-wrap:wrap;gap:8px 20px;display:flex}.workbench-page{flex-direction:column;gap:16px;display:flex}.workbench{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;display:grid}.main-col{display:contents}.main-col>*{order:1;min-width:0}.main-col>.export-card{order:3}.settings{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-region);order:2;min-width:0}.settings-in{padding:6px 18px 18px}@media (width>=1000px){.workbench{grid-template-columns:360px minmax(0,1fr)}.settings{overscroll-behavior:contain;order:0;max-height:calc(100svh - 32px);position:sticky;top:16px;overflow-y:auto}.main-col{flex-direction:column;order:0;gap:16px;min-width:0;display:flex}.main-col>*,.main-col>.export-card{order:0}}.subnav{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.set{border-bottom:1px solid var(--line);flex-direction:column;gap:10px;padding:16px 0;display:flex}.set:last-child,.set-item:last-child>.set{border-bottom:0}.settings-top{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:14px 0 12px;display:flex}.settings-top-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.settings-top .seg{align-self:auto}.settings-top .field-label{font-size:15px;font-weight:700}.scope-group+.scope-group{margin-top:10px}.scope-title{color:var(--ink);background:var(--panel-2);border-block:1px solid var(--line);text-overflow:ellipsis;white-space:nowrap;margin:12px -18px 0;padding:7px 18px;font-size:13px;font-weight:700;overflow:hidden}.scope-group:first-child .scope-title{border-radius:var(--r-region) var(--r-region) 0 0;border-top:0;margin-top:0}.scope-group>.settings-top{border-bottom:1px solid var(--line)}.notice{background:var(--panel-2);border-left:3px solid var(--warn);border-radius:0 var(--r-control) var(--r-control) 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 12px;padding:8px 12px;font-size:14px;display:flex}.notice .btn{flex:none}.link-btn{color:var(--action);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.card-title{font-size:17px;font-weight:700}.slider-head{justify-content:space-between;gap:8px;display:flex}.slider-head output{font-variant-numeric:tabular-nums;font-weight:700}.pal{flex-wrap:wrap;gap:4px;display:flex}.pal li{border:1px solid color-mix(in srgb, var(--ink) 25%, transparent);border-radius:3px;width:20px;height:20px}.pal-edit{gap:6px}.pal-edit li{border:0;width:30px;height:30px;padding:0}.pal-edit input[type=color]{border:1px solid color-mix(in srgb, var(--ink) 30%, transparent);cursor:pointer;background:0 0;border-radius:4px;width:30px;height:30px;padding:0}.pal-edit input[type=color]::-webkit-color-swatch-wrapper{padding:0}.pal-edit input[type=color]::-webkit-color-swatch{border:0;border-radius:3px}.pal-edit input[type=color]::-moz-color-swatch{border:0;border-radius:3px}.pal-custom li{position:relative}.pal-custom .pal-x{border:1px solid var(--line);background:var(--panel);width:16px;height:16px;color:var(--ink);cursor:pointer;opacity:0;border-radius:50%;padding:0;font-size:12px;line-height:1;position:absolute;top:-6px;right:-6px}.pal-custom li:hover .pal-x,.pal-custom li:focus-within .pal-x,.pal-custom .pal-x:focus-visible{opacity:1}@media (hover:none){.pal-custom .pal-x{opacity:1}}.pal-custom .pal-add{width:30px;height:30px;padding:0}.btn-icon{min-width:32px;padding:4px 9px;font-size:16px;line-height:1.2}.set-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.set h3{font-size:15px;font-weight:700;line-height:1.3}.scope{color:var(--ink-soft);background:var(--panel-2);border-radius:var(--r-chip);padding:1px 8px;font-size:13px}.sub{flex-direction:column;gap:8px;display:flex}.hint{color:var(--ink-soft);font-size:13px;line-height:1.45}.fold>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;font-weight:700;list-style:none;display:flex}.fold>summary::-webkit-details-marker{display:none}.fold>summary:before{content:"";border-right:2px solid var(--ink-soft);border-bottom:2px solid var(--ink-soft);flex:none;width:7px;height:7px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.fold[open]>summary:before{transform:rotate(45deg)}.fold-title{flex:1}.fold-summary{color:var(--ink-soft);font-size:13px;font-weight:400}.fold-body{flex-direction:column;gap:10px;padding-top:12px;display:flex}.bg-summary{align-items:center;gap:8px;display:inline-flex}.swatch{border-radius:var(--r-chip);border:1px solid var(--line);flex:none;width:18px;height:18px;display:inline-block;position:relative;overflow:hidden}.swatch i{position:absolute;inset:0}.checker{background-color:var(--check-a);background-image:conic-gradient(var(--check-b) 25%, transparent 25% 50%, var(--check-b) 50% 75%, transparent 75%);background-size:12px 12px}.fold-inline{margin-top:4px}.fold-inline summary{cursor:pointer;margin-bottom:8px;font-weight:600}.field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.field-label,.group legend{color:var(--ink);font-size:13px;font-weight:600}.field-inline{flex-direction:row;flex:none;align-items:center;gap:8px}input[type=text],input[type=number],select,textarea{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-control);width:100%;min-width:0;padding:7px 10px}input[type=number]{font-variant-numeric:tabular-nums}input[type=number].num-sm{width:76px}input[aria-invalid=true]{border-color:var(--danger)}input[type=range]{width:100%;accent-color:var(--action)}input[type=color]{border:1px solid var(--line);border-radius:var(--r-control);background:var(--panel-2);width:56px;height:34px;padding:2px}textarea{resize:vertical;line-height:1.5}input:disabled,select:disabled{opacity:.5}.field-inline select{width:auto}.check{cursor:pointer;align-items:center;gap:8px;display:flex}.check.is-disabled{opacity:.5;cursor:default}.check input{accent-color:var(--action);width:16px;height:16px;margin:0}.btn{border-radius:var(--r-control);border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--action);color:var(--action)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--action);color:var(--action-ink);border-color:var(--action)}.btn-primary:hover:not(:disabled){color:var(--action-ink);filter:brightness(1.08)}.btn-ghost{color:var(--ink-soft);background:0 0;border-color:#0000}.btn-sm{padding:4px 10px;font-size:13px}.btn-stage{color:var(--stage-ink);background:0 0;border-color:#fff3}.btn-stage:hover:not(:disabled){color:var(--stage-ink);border-color:var(--action)}.link{font-weight:600}.seg{border:1px solid var(--line);border-radius:var(--r-control);background:var(--panel-2);flex-wrap:wrap;align-self:flex-start;gap:2px;max-width:100%;padding:2px;display:inline-flex}.seg-opt{cursor:pointer;color:var(--ink-soft);white-space:nowrap;border-radius:6px;padding:5px 12px;font-weight:600;position:relative}.seg-opt input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg-opt:hover{color:var(--ink)}.seg-opt.is-on{background:var(--action);color:var(--action-ink)}.seg-opt:focus-within{outline:2px solid var(--action);outline-offset:2px}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border-radius:var(--r-chip);border:1px solid var(--line);background:var(--panel-2);color:var(--ink-soft);cursor:pointer;padding:3px 9px;font-size:13px;font-weight:600}.chip.is-32{color:var(--ink);border-color:color-mix(in srgb, var(--action) 55%, var(--line))}.chip.is-on{background:var(--action);border-color:var(--action);color:var(--action-ink)}.cell-axis{flex-direction:column;gap:6px;display:flex}.alert{border-radius:var(--r-control);color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent);border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);padding:8px 12px}.alert-text{color:var(--danger);grid-column:1/-1}.ok{color:var(--ok)}.assetbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.assetbar ul{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.asset{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-control);cursor:pointer;align-items:center;gap:8px;padding:6px 8px 6px 6px;display:flex}.asset:not(.is-selected):hover{border-color:var(--ink-soft)}.asset.is-selected{border-color:var(--action);box-shadow:0 0 0 1px var(--action)}.asset-thumb{border:1px solid var(--line);border-radius:var(--r-chip);background:var(--panel-2);cursor:pointer;flex:none;place-items:center;width:44px;height:44px;padding:0;display:grid;overflow:hidden}.asset-thumb .rgba-canvas{width:auto;max-width:100%;height:auto;max-height:100%}.asset-meta{flex-direction:column;gap:2px;min-width:0;display:flex}input.asset-name[type=text]{background:0 0;border-color:#0000;width:150px;padding:2px 6px;font-weight:600}input.asset-name[type=text]:hover{border-color:var(--line)}.asset-kind{color:var(--ink-soft);padding:0 6px;font-size:13px}.source-card{flex-direction:row;align-items:center;gap:10px}.source-card .asset-meta{flex:1}input.asset-name[type=text]{text-overflow:ellipsis}.source-card input.asset-name[type=text]{width:100%}.stage-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-region);flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}.stage-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stage-body{background-color:var(--stage);background-image:conic-gradient(var(--stage-check-a) 25%, transparent 25% 50%, var(--stage-check-a) 50% 75%, transparent 75%);color:var(--stage-ink);background-size:20px 20px;border-radius:10px;min-width:0;position:relative;box-shadow:inset 0 2px 12px #0006}.stage-body .checker{background-color:var(--stage-check-b);background-image:conic-gradient(var(--stage-check-a) 25%, transparent 25% 50%, var(--stage-check-a) 50% 75%, transparent 75%);background-size:16px 16px}.on-stage-soft{color:var(--stage-soft)}.waiting{text-align:center;place-items:center;min-height:280px;padding:24px;display:grid}.is-stale{opacity:.55;transition:opacity .2s}.spinner-label{color:var(--ink-soft);align-items:center;gap:8px;font-size:13px;display:inline-flex}.spinner{border:2px solid var(--line);border-top-color:var(--action);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.anim{flex-direction:column;gap:12px;display:flex}.anim-tabs{flex-wrap:wrap;gap:6px;display:flex}.anim-stage{outline-offset:2px;min-height:280px;overflow:auto}.anim-inner{width:100%;position:relative}.anim-canvas{position:absolute;left:50%;transform:translate(-50%)}.ground{border-top:2px dashed var(--ground);opacity:.9;pointer-events:none;height:0;position:absolute;left:0;right:0}.cellbox{pointer-events:none;outline:1px dashed #ffffff40;position:absolute;left:50%;transform:translate(-50%)}.counter{font:600 28px/1 var(--pixel);color:var(--stage-ink);pointer-events:none;position:absolute;top:10px;left:16px}.counter span{color:var(--stage-soft);font-size:17px}.keys-hint{color:var(--ink-soft);margin-left:auto;font-size:13px;display:none}@media (width>=1000px){.keys-hint{display:block}}.controls{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.controls .play{min-width:96px}.strip{scroll-snap-type:x proximity;gap:8px;padding:2px 2px 8px;display:flex;position:relative;overflow-x:auto}.strip li{scroll-snap-align:center;flex:none}.strip-btn{border-radius:var(--r-control);cursor:pointer;background-color:var(--stage);background-image:conic-gradient(var(--stage-check-a) 25%, transparent 25% 50%, var(--stage-check-a) 50% 75%, transparent 75%);background-size:16px 16px;border:2px solid #0000;padding:4px;line-height:0;display:block;position:relative}.strip-btn canvas{background:0 0;display:block}.strip-btn:hover{border-color:color-mix(in srgb, var(--action) 50%, transparent)}.strip-btn.is-on{border-color:var(--action)}.strip-btn.is-dup{border-style:dashed;border-color:var(--warn)}.strip-btn.is-dup.is-on{border-color:var(--action)}.strip-n{color:#fff;text-align:center;background:#000000b3;border-radius:3px;min-width:18px;padding:0 4px;font-size:12px;font-weight:700;line-height:18px;position:absolute;top:6px;left:6px}.fed{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-control);flex-direction:column;gap:8px;padding:12px;display:flex}.fed-title{font-size:15px}.fed-groups{flex-wrap:wrap;align-items:center;gap:10px 24px;display:flex}.fed-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fed-off{color:var(--ink-soft);font-variant-numeric:tabular-nums;min-width:92px;font-size:13px}.rbox{border:2px solid var(--key);background:color-mix(in srgb, var(--key) 12%, transparent);cursor:move;touch-action:none;line-height:1;position:absolute}.rbox.is-sel{background:color-mix(in srgb, var(--key) 22%, transparent);border-width:3px}.rbox-n{color:#fff;pointer-events:none;background:#000000b3;border-radius:3px;padding:0 4px;font-size:12px;font-weight:700;line-height:16px;position:absolute;top:2px;left:2px}.rh{border:2px solid var(--key);touch-action:none;background:#fff;border-radius:3px;width:14px;height:14px;position:absolute}.rh-nw{cursor:nwse-resize;top:-8px;left:-8px}.rh-ne{cursor:nesw-resize;top:-8px;right:-8px}.rh-sw{cursor:nesw-resize;bottom:-8px;left:-8px}.rh-se{cursor:nwse-resize;bottom:-8px;right:-8px}.together{flex-direction:column;gap:12px;display:flex}.together-stage{flex-direction:column;justify-content:space-between;gap:14px;min-height:280px;padding:24px 12px 12px;display:flex;overflow:auto}.together-row{justify-content:safe center;align-items:flex-end;gap:0;width:max-content;min-width:100%;display:flex}.together-item{flex-direction:column;align-items:center;gap:8px;padding:0 12px;display:flex}.together-canvas{margin:0 -12px;padding:0 12px;line-height:0;position:relative}.together-canvas canvas{display:block}.together-item figcaption{color:var(--stage-soft);text-align:center;flex-direction:column;align-items:center;max-width:160px;font-size:13px;line-height:1.3;display:flex}.together-item figcaption strong{color:var(--stage-ink);overflow-wrap:anywhere;font-size:15px}.together-item figcaption span{font-variant-numeric:tabular-nums;font-weight:700}.together-key{color:var(--stage-soft);align-items:center;gap:8px;font-size:13px;display:flex}.swatch-ground{border-top:2px dashed var(--ground);width:22px}.kit-summary{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.kit-block{flex-direction:column;gap:6px;min-width:0;display:flex}.kit-block h3{font-size:15px;font-weight:700}.kit-block ul{flex-direction:column;gap:6px;display:flex}.kit-block li{flex-direction:column;display:flex}.kit-block li span{color:var(--ink-soft);font-size:14px}.kit-stage{padding:16px}.kit-stage canvas{max-width:none;margin:0 auto;display:block}.kit-preview,.sheetview{flex-direction:column;gap:10px;display:flex}.scroll-stage{max-height:72svh;padding:14px;overflow:auto}.sheet-wrap{width:100%;margin:0 auto;line-height:0;position:relative}.sheet-wrap .rgba-canvas{width:100%;height:auto}.overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.frame-rect{fill:none;stroke:var(--key);stroke-width:2px}.frame-label{fill:var(--key);paint-order:stroke;stroke:#000a;stroke-width:3px;font-weight:700}.grid-line{stroke:#fff;stroke-width:1px;opacity:.35}.ground-line{stroke:var(--ground);stroke-width:1px;stroke-dasharray:4 3;opacity:.85}.cut-line{stroke:var(--key);stroke-width:2px;stroke-dasharray:6 4}.empty-tile{fill:var(--danger);opacity:.25}.empty-x{stroke:var(--danger);stroke-width:1px;opacity:.9}.legend{color:var(--ink-soft);flex-direction:column;gap:2px;font-size:13px;display:flex}.status{flex-wrap:wrap;gap:6px 28px;margin:0;display:flex}.status-item{flex-direction:column;display:flex}.status dt{color:var(--ink-soft);font-size:13px}.status dd{font-size:17px;font-weight:700}.status dd.is-ok{color:var(--ok)}.status dd.is-bad{color:var(--danger)}.warnings{flex-direction:column;gap:8px;display:flex}.warnings li{background:var(--panel-2);border-left:3px solid var(--warn);border-radius:0 var(--r-control) var(--r-control) 0;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.warnings li .btn{flex:none}@media (width<=560px){.warnings li{flex-direction:column;align-items:flex-start}}.empty-body{flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:380px;padding:28px;display:flex}.empty-drop{text-align:center;border-radius:var(--r-region);width:min(100%,560px);color:var(--stage-ink);cursor:pointer;background:0 0;border:2px dashed #ffffff40;flex-direction:column;align-items:center;gap:6px;padding:32px 20px;display:flex}.empty-drop strong{font-size:21px;font-weight:700}.empty-drop span{color:var(--stage-soft)}.empty-drop:hover{border-color:var(--action);background:#ffffff0a}.how{flex-wrap:wrap;align-items:center;gap:8px 24px;padding:2px 4px;display:flex}.how li{align-items:center;gap:8px;display:flex}.how-n{background:var(--panel-2);border:1px solid var(--line);border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:700;display:grid}.how-link{margin-left:auto}.drop-overlay{z-index:50;background:color-mix(in srgb, var(--stage) 88%, transparent);pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.drop-overlay p{color:var(--stage-ink);border:3px dashed var(--action);border-radius:var(--r-region);padding:36px 56px;font-size:28px;font-weight:700}.export-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-region);flex-direction:column;gap:14px;padding:16px;display:flex}.export-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.export-head h3{font-size:17px;font-weight:700}.steps{counter-reset:st;flex-direction:column;gap:6px;display:flex}.steps li{counter-increment:st;gap:10px;display:flex}.steps li:before{content:counter(st);background:var(--panel-2);border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;margin-top:1px;font-size:13px;font-weight:700;display:grid}.export-choices{margin:0 0 12px}.export-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.anims{flex-direction:column;gap:10px;display:flex}.anims ul{flex-direction:column;gap:8px;display:flex}.anim-row{background:var(--panel-2);border:1px solid var(--line);border-radius:var(--r-control);grid-template-columns:minmax(0,1fr) minmax(0,1fr) 70px;align-items:end;gap:8px;padding:10px;display:grid}.anim-row .field{flex:initial}.anim-actions{grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;display:flex}.slot{flex-direction:column;gap:6px;display:flex}.slot-row{align-items:center;gap:10px;display:flex}.slot-row .asset-meta{flex:1}.slot-drop{text-align:center;border:2px dashed var(--line);border-radius:var(--r-control);color:var(--ink-soft);cursor:pointer;padding:14px;font-weight:600;display:block}.slot-drop:hover,.slot-drop:focus-within{border-color:var(--action);color:var(--action)}.tile-fig{color:var(--ink-soft);flex-direction:column;gap:4px;font-size:13px;display:flex}.tiled-preview{border:1px solid var(--line);border-radius:var(--r-control);width:144px;height:144px;display:block}.kind-groups{flex-wrap:wrap;gap:10px 20px;display:flex}.kind-group{flex-direction:column;gap:4px;display:flex}.kind-group-title{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.flow{flex-direction:column;order:1;gap:14px;min-width:0;display:flex}@media (width>=1000px){.flow{order:0}}.flow-step{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-region);grid-template-columns:34px minmax(0,1fr);gap:12px;padding:16px;display:grid}.flow-n{background:var(--panel-2);border:1px solid var(--line);border-radius:50%;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.flow-body{flex-direction:column;gap:10px;min-width:0;display:flex}.flow-body h3{padding-top:3px;font-size:17px;font-weight:700}.copybox{flex-direction:column;gap:8px;display:flex}.guide-canvas{border:1px solid var(--line);border-radius:var(--r-control);max-width:min(100%,420px);height:auto}@media (width<=960px){.nav{flex-basis:100%;order:3}}@media (width<=640px){:root{font-size:15px}.topbar-in{gap:8px 12px;padding:10px 14px}.page,.app-footer{padding:14px}.stage-card{padding:10px}.scroll-stage{padding:8px}input.asset-name[type=text]{width:110px}.row{flex-wrap:wrap}.empty-body{min-height:300px;padding:16px}.empty-drop strong{font-size:17px}.how-link{margin-left:0}.flow-step{grid-template-columns:1fr}}@media (width<=560px){.nav{grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:visible}.nav-link{text-align:center;padding:7px 6px}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}*{transition:none!important}}.video-dialog{border:1px solid var(--line);border-radius:var(--r-region);background:var(--panel);width:min(860px,100vw - 32px);max-height:calc(100svh - 32px);color:var(--ink);padding:20px 24px;overflow:auto}.video-dialog::backdrop{background:color-mix(in srgb, var(--stage) 80%, transparent)}.video-dialog[open]{flex-direction:column;gap:12px;display:flex}.video-dialog h2{font-size:20px}.video-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.video-body[hidden]{display:none}.video-player-host{background:var(--stage);border-radius:var(--r-control);overflow:hidden}.video-player{width:100%;max-height:320px;display:block}.video-controls{flex-direction:column;gap:12px;display:flex}.video-time{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.video-time .field{width:100%}.video-time .row{align-items:center}.field-narrow{flex:none}.video-thumbs-title{margin-bottom:6px;font-size:13px;font-weight:600}.video-thumbs{flex-wrap:wrap;gap:6px;display:flex}.video-thumbs li{color:var(--ink-soft);flex-direction:column;align-items:center;gap:2px;font-size:12px;display:flex}.video-thumbs canvas{border-radius:var(--r-chip);width:auto;max-width:128px;height:72px;display:block}.video-actions{justify-content:flex-end;gap:8px;display:flex}@media (width<=720px){.video-body{grid-template-columns:1fr}}.item-hit{pointer-events:all;cursor:pointer}.item-hit:hover rect,.item-hit:focus-visible rect{stroke-width:3px}.item-hit:focus{outline:none}.items-list{flex-direction:column;gap:8px;padding:0 14px 14px;display:flex}.items-list ul{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.item-card{border:1px solid var(--line);border-radius:var(--r-control);background:var(--panel);align-items:center;gap:8px;min-width:0;padding:6px;display:flex}.item-card.is-out{opacity:.55}.item-thumb{border-radius:var(--r-chip);flex:none;place-items:center;width:48px;height:48px;display:grid;overflow:hidden}.item-thumb canvas{width:auto;max-width:100%;height:auto;max-height:100%}.item-meta{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.item-meta input[type=text]{width:100%;min-width:0}.item-num{font-variant-numeric:tabular-nums;font-weight:700}.layer-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.layer-row{border:1px solid var(--line);border-radius:var(--r-control);background:var(--panel);align-items:flex-start;gap:10px;padding:8px;display:flex}.layer-body{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.layer-head{align-items:baseline;gap:8px;min-width:0;display:flex}.layer-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-actions{flex-direction:column;flex:none;gap:4px;display:flex}.parallax-stage{padding:14px}.parallax-stage.waiting{place-items:center;min-height:200px;display:grid}.parallax-player{flex-direction:column;align-items:center;gap:10px;display:flex}.parallax-box{justify-content:center;width:100%;display:flex;overflow:auto}.parallax-box canvas{flex:none;display:block}.parallax-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.parallax-speed{width:240px}.wrap-canvas{flex:none;line-height:0;position:relative}.seam-mark{border-left:2px dashed var(--action);pointer-events:none;width:0;position:absolute;top:0;bottom:0}.parallax-speed .field-label,.parallax-speed output{color:var(--stage-ink)}.guide{--g-offset:24px;max-width:1120px;color:var(--ink,#1e1a33);grid-template-columns:210px minmax(0,1fr);gap:56px;margin:0 auto;padding:8px 0 80px;font-size:17px;line-height:1.6;display:grid}.guide-index{top:var(--guide-top,16px);align-self:start;max-height:calc(100svh - 32px);position:sticky;overflow-y:auto}.guide-index-list ol{border-left:2px solid var(--line,#dcd9e8);gap:2px;margin:0;padding:0;list-style:none;display:grid}.guide .guide-index-list a{color:var(--ink-soft,#5f5a78);border-left:2px solid #0000;margin-left:-2px;padding:6px 12px;font-size:15px;line-height:1.4;text-decoration:none;display:block}.guide .guide-index-list a:hover{color:var(--ink,#1e1a33)}.guide .guide-index-list a[aria-current=location]{border-left-color:var(--action,#3346d3);color:var(--ink,#1e1a33);font-weight:600}.guide a:focus-visible,.guide select:focus-visible,.guide button:focus-visible,.guide pre:focus-visible{outline:2px solid var(--action,#3346d3);outline-offset:2px}.guide-index-select{border:1px solid var(--line,#dcd9e8);background:var(--panel,#fff);width:100%;color:var(--ink,#1e1a33);font:inherit;border-radius:8px;padding:10px 12px;font-size:15px;display:none}.guide-body{min-width:0;max-width:860px;padding-bottom:35svh}.guide-lede{max-width:52ch;color:var(--ink-soft,#5f5a78);margin:0 0 48px;font-size:21px;line-height:1.45}.guide-section{border-top:1px solid var(--line,#dcd9e8);scroll-margin-top:var(--g-offset);margin-bottom:64px;padding-top:40px}.guide-section:first-of-type{border-top:0;padding-top:0}.guide h2{margin:0 0 20px;font-size:28px;font-weight:700;line-height:1.2}.guide h3{scroll-margin-top:var(--g-offset);margin:40px 0 12px;font-size:21px;font-weight:700;line-height:1.3}.guide h4{margin:0 0 8px;font-size:17px;font-weight:700;line-height:1.3}.guide p{max-width:68ch;margin:0 0 16px}.guide a{color:var(--action,#3346d3);text-underline-offset:3px}.guide code{border:1px solid var(--line,#dcd9e8);background:var(--panel-2,#f7f6fb);overflow-wrap:anywhere;border-radius:4px;padding:1px 5px;font:.88em/1.4 ui-monospace,SF Mono,Menlo,Consolas,monospace}.g-list{max-width:68ch;margin:0 0 20px;padding-left:1.3em;list-style:outside}.g-list li{margin:8px 0;padding-left:4px}.g-list li::marker{color:var(--ink-soft,#5f5a78)}.g-steps{counter-reset:step;max-width:68ch;margin:0 0 20px;padding:0;list-style:none}.g-steps li{counter-increment:step;margin:14px 0;padding-left:44px;position:relative}.g-steps li:before{content:counter(step);background:var(--action,#3346d3);width:28px;height:28px;color:var(--action-ink,#fff);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:14px;font-weight:700;line-height:1;display:grid;position:absolute;top:1px;left:0}.g-callout{border:1px solid var(--line,#dcd9e8);border-left:3px solid var(--warn,#9a5b00);background:var(--panel,#fff);border-radius:8px;max-width:68ch;margin:0 0 20px;padding:12px 16px}.g-callout strong{color:var(--warn,#9a5b00)}.g-callout p{margin:2px 0 0}.g-code{background:var(--stage,#2a2640);color:#eceaf6;border-radius:8px;margin:0 0 24px;overflow:hidden}.g-code-bar{color:#a7a2c2;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:12px;padding:8px 8px 8px 16px;font-size:13px;display:flex}.g-code-copy{color:#eceaf6;min-width:72px;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:8px;padding:4px 12px;font-size:13px}.g-code-copy:hover{background:#ffffff1a}.g-code pre{tab-size:4;margin:0;padding:14px 16px;font:14px/1.6 ui-monospace,SF Mono,Menlo,Consolas,monospace;overflow-x:auto}.g-code code{font:inherit;overflow-wrap:normal;background:0 0;border:0;padding:0}.g-code-comment{color:#9b96bb}.guide .g-code button:focus-visible,.guide .g-code pre:focus-visible{outline-color:#8c9bff}.g-table{border:1px solid var(--line,#dcd9e8);background:var(--panel,#fff);border-radius:8px;margin:0 0 24px;overflow-x:auto}.g-table table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.5}.g-table th,.g-table td{border-bottom:1px solid var(--line,#dcd9e8);text-align:left;vertical-align:top;padding:10px 14px}.g-table tbody tr:last-child>*{border-bottom:0}.g-table thead th{background:var(--panel-2,#f7f6fb);color:var(--ink-soft,#5f5a78);font-weight:600}.g-table tbody th{width:28%;font-weight:600}.g-dl{max-width:68ch;margin:0}.g-dl>div{border-bottom:1px solid var(--line,#dcd9e8);padding:12px 0}.g-dl>div:last-child{border-bottom:0}.g-dl dt{font-weight:700}.g-dl dd{margin:2px 0 0}.g-figures{flex-wrap:wrap;align-items:flex-start;gap:20px;margin:8px 0 24px;display:flex}.g-figure{flex:320px;min-width:0;margin:0}.g-figure img{border:1px solid var(--line,#dcd9e8);border-radius:8px;width:100%;height:auto;display:block}.g-figure img.is-pixel{image-rendering:pixelated}.g-figure img.on-checker,.g-compare-after{background:repeating-conic-gradient(var(--line,#dcd9e8) 0% 25%, var(--panel-2,#f7f6fb) 0% 50%) 0 0 / 16px 16px}.g-figure figcaption,.g-compare figcaption,.g-height figcaption{max-width:68ch;color:var(--ink-soft,#5f5a78);margin-top:8px;font-size:15px;line-height:1.5}.g-example{border:1px solid var(--line,#dcd9e8);background:var(--panel,#fff);border-radius:14px;grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:20px;margin:0 0 24px;padding:16px;display:grid}.g-example .g-figure{flex:none;max-width:none!important}.g-example .g-list{margin-bottom:0}.g-diagram{margin:8px 0 28px}.g-diagram ol{counter-reset:flow;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.g-diagram ol>li{border:1px solid var(--line,#dcd9e8);background:var(--panel,#fff);counter-increment:flow;border-radius:14px;position:relative;overflow:hidden}.g-diagram ol>li:before{content:counter(flow);z-index:1;background:var(--ink,#1e1a33);width:24px;height:24px;color:var(--paper,#f1f0f6);font-variant-numeric:tabular-nums;text-align:center;border-radius:50%;font-size:13px;font-weight:700;line-height:24px;position:absolute;top:8px;left:8px}.g-diagram svg{width:100%;height:auto;display:block}.g-diagram ol>li>div{padding:12px 14px 14px}.g-diagram strong{margin-bottom:4px;display:block}.g-diagram p{color:var(--ink-soft,#5f5a78);margin:0;font-size:15px;line-height:1.5}.g-legend{flex-wrap:wrap;gap:8px 24px;margin:14px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.g-legend li{align-items:center;gap:8px;display:flex}.g-swatch{border-radius:4px;flex:none;width:14px;height:14px}.g-swatch-key{background:var(--key,#e01bd6)}.g-swatch-ground{background:var(--ground,#ffc531)}.g-compare{margin:8px 0 28px}.g-compare-box{--pos:50%;aspect-ratio:1;border:1px solid var(--line,#dcd9e8);-webkit-user-select:none;user-select:none;border-radius:14px;width:min(100%,448px);position:relative;overflow:hidden}.g-compare-box>img{object-fit:cover;width:100%;height:100%;display:block}.g-compare-after{clip-path:inset(0 0 0 var(--pos));padding:6%;position:absolute;inset:0}.g-compare-after img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.g-compare-tag{color:#fff;background:#15131fcc;border-radius:4px;padding:3px 10px;font-size:13px;line-height:1.4;position:absolute;top:10px}.g-compare-tag-before{left:10px}.g-compare-tag-after{right:10px}.g-compare-handle{top:0;bottom:0;left:var(--pos);pointer-events:none;background:#fff;width:2px;margin-left:-1px;position:absolute;box-shadow:0 0 0 1px #0000004d}.g-compare-handle:after{content:"‹›";border:2px solid var(--action-ink,#fff);background:var(--action,#3346d3);width:40px;height:40px;color:var(--action-ink,#fff);letter-spacing:2px;border-radius:50%;place-items:center;font-size:20px;font-weight:700;line-height:1;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.g-compare-box>input{opacity:0;cursor:ew-resize;touch-action:pan-y;width:100%;height:100%;margin:0;position:absolute;inset:0}.g-compare-box:has(input:focus-visible) .g-compare-handle:after{outline:3px solid var(--action,#3346d3);outline-offset:3px}.g-height{margin:8px 0 28px}.g-seg{border:1px solid var(--line,#dcd9e8);border-radius:8px;margin-bottom:12px;display:inline-flex;overflow:hidden}.g-seg button{background:var(--panel,#fff);color:var(--ink,#1e1a33);font:inherit;cursor:pointer;border:0;padding:8px 16px;font-size:15px}.g-seg button+button{border-left:1px solid var(--line,#dcd9e8)}.g-seg button[aria-pressed=true]{background:var(--action,#3346d3);color:var(--action-ink,#fff);font-weight:600}.g-seg button:focus-visible{outline-offset:-3px}.g-stage{background:var(--stage,#2a2640);color:#eceaf6;border-radius:14px;max-width:560px;padding:24px 24px 14px;box-shadow:inset 0 2px 14px #00000059}.g-stage-ground{border-bottom:3px solid var(--ground,#ffc531);justify-content:center;align-items:flex-end;gap:48px;height:285px;display:flex}.g-stage-char{min-width:0;max-width:100%;height:auto;image-rendering:pixelated;flex:0 auto}.g-stage-names{justify-content:center;gap:48px;margin-top:10px;font-size:15px;display:flex}.g-stage-names b{font-variant-numeric:tabular-nums;font-weight:700}.g-stage-key{color:#a7a2c2;align-items:center;gap:8px;max-width:none;margin:10px 0 0;font-size:13px;display:flex}.g-actions{flex-wrap:wrap;gap:10px;margin:20px 0 8px;display:flex}.guide .g-btn{border:1px solid var(--action,#3346d3);min-height:40px;color:var(--action,#3346d3);border-radius:8px;align-items:center;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.guide .g-btn:first-child{background:var(--action,#3346d3);color:var(--action-ink,#fff)}.guide .g-btn:not(:first-child):hover{background:color-mix(in srgb, var(--action,#3346d3) 12%, transparent)}.guide .g-btn:first-child:hover{filter:brightness(1.08)}.guide-reference{border-top:1px solid var(--line,#dcd9e8);color:var(--ink-soft,#5f5a78);margin:48px 0 0;padding-top:20px;font-size:15px}.guide-credits{margin-top:32px}.guide .guide-credits h2{margin-bottom:8px;font-size:21px}.guide-credits p{color:var(--ink-soft,#5f5a78);margin-bottom:8px;font-size:15px}@media (width<=900px){.guide{--g-offset:76px;padding-top:0;display:block}.guide-index{top:var(--guide-top,0px);z-index:5;background:var(--paper,#f1f0f6);max-height:none;margin-bottom:20px;padding:8px 0;position:sticky;overflow:visible}.guide-index-list{display:none}.guide-index-select{display:block}.guide-lede{margin-bottom:36px;font-size:17px}.g-example{grid-template-columns:minmax(0,1fr)}.g-stage-ground{gap:24px}.g-stage{padding:16px 16px 12px}}@media (prefers-reduced-motion:reduce){.guide *,.guide :before,.guide :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.res-table{border-collapse:collapse;width:100%;margin-top:8px;font-size:13px}.res-table th,.res-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:4px 6px}.res-table thead th{color:var(--ink-soft);font-weight:700}.res-table tbody th{font-weight:600}.res-table tr.is-on{background:color-mix(in srgb, var(--action) 14%, transparent)}.level-setup{flex-direction:column;gap:12px;display:flex}.level-anims{border:0;min-width:0;margin:0;padding:0}.level-anim-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px 12px;margin-top:4px;display:grid}.level-tiles{flex-wrap:wrap;gap:6px;display:flex}.level-tile{border:2px solid var(--line);border-radius:var(--r-control);background:var(--panel-2);cursor:pointer;place-items:center;width:48px;height:48px;padding:3px;display:grid}.level-tile canvas{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.level-tile.is-on{border-color:var(--action);box-shadow:0 0 0 1px var(--action)}.level-tile:disabled{opacity:.6;cursor:default}.level-stage{max-height:80svh;padding:14px;overflow:auto}.level-stage[hidden]{display:none}.level-host{width:max-content;margin:0 auto}.level-host canvas{outline-offset:4px;display:block}
