@font-face{font-family:Departure Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/departure-mono/DepartureMono-Regular.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-deep:#6aaed3;--panel:#c8e6f6;--panel-raised:color-mix(in srgb, var(--panel) 62%, white);--panel-deep:color-mix(in srgb, var(--panel) 68%, #216fb3);--line:#5f7f7e;--line-bright:#164b52;--text:#173f46;--text-strong:#0b2f36;--muted:#42666a;--accent:#b94333;--accent-bright:#953629;--danger:#b7443f;--control-bg:#fffef8;--control-border:#2f6266;--control-accent:#b94333;--dropdown-control-bg:var(--control-bg);--dropdown-control-border:var(--control-border);--menu-bar-bg:#79cee0;--menu-popup-bg:#b9ddf1;--menu-hover-bg:#d2ebf8;--menu-bar-edge:#39859a;--menu-trigger-hover-bg:#a1e3df;--modal-backdrop:#0b2f3694;--secondary-button-start:#fff9e8;--secondary-button-end:#f4d7ad;--primary-button-start:#c24838;--primary-button-end:#a9342c;--primary-button-text:#fffaf0;--active-surface:#ffd0b8;--active-surface-strong:#ffad89;--workspace-bg:#bce8cf;--workspace-grid-line:#1444491a;--spriteforge-pink:#f06b55;--spriteforge-yellow:#ffd95f;--spriteforge-mint:#43a77d;--spriteforge-sky:#56b7c9;--spriteforge-outline:#164b52;--spriteforge-active-text:#17353a;--spriteforge-highlight:#ffffff9e;--spriteforge-shadow:#0e33386b;--spriteforge-control-shadow:inset 2px 2px 0 var(--spriteforge-highlight), inset -2px -2px 0 #164b5238, 2px 2px 0 var(--spriteforge-shadow);--tooltip-bg:#174b55;--tooltip-border:#f06b55;--tooltip-text:#fffaf0;--range-track-bg:#f4d7ad;--range-track-border:#164b52;--range-track-tick:#164b5252;--range-thumb-bg:#f06b55;--range-thumb-border:#fffaf0;--range-thumb-mark:#fffaf0;--range-thumb-shadow:#164b52;--range-focus-ring:#164b5247;--checker-light-a:#fff;--checker-light-b:#d9d9d9;--focus-ring:#164b5247;--success-text:#176d50;--warning-text:#67480a;--error-text:#8f3045;--destructive-text:var(--danger);--selection-highlight:#8c6312;--workspace-canvas-accent:var(--spriteforge-sky);--workspace-tools-accent:var(--spriteforge-yellow);--workspace-inspect-accent:var(--spriteforge-mint);--diagnostic-mesh:var(--spriteforge-pink);--diagnostic-partial-alpha:var(--spriteforge-pink);--diagnostic-transparent-rgb:var(--spriteforge-sky);--diagnostic-isolated-pixel:#9b6900;--diagnostic-antialiasing:var(--accent-bright);--diagnostic-color-island:var(--spriteforge-yellow);--diagnostic-palette-deviation:var(--spriteforge-mint);--diagnostic-grid-jump:var(--accent);--diagnostic-alpha-jump:var(--spriteforge-pink);--diagnostic-palette-jump:var(--spriteforge-mint);--diagnostic-single-pixel-jump:var(--selection-highlight);--opacity-disabled:.45;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:16px;--space-8:20px;--control-height-sm:34px;--control-radius:4px;--surface-radius:4px;--popover-radius:4px;--motion-fast:.1s;--motion-standard:.16s;--motion-easing:ease-out;--inspector-width:312px;--history-panel-width:300px;--font-ui:"Departure Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;font-family:var(--font-ui);font-synthesis:none;font-feature-settings:"calt" 0, "clig" 0, "kern" 0, "liga" 0;font-kerning:none;font-optical-sizing:none;font-variant-ligatures:none;text-rendering:optimizespeed}*,:before,:after{box-sizing:border-box}html,body{min-width:900px;height:100%;min-height:720px;margin:0;overflow:hidden}.button-tooltip{z-index:100;border:2px solid var(--tooltip-border);border-radius:var(--surface-radius);background:var(--tooltip-bg);max-width:290px;color:var(--tooltip-text);box-shadow:3px 3px 0 var(--spriteforge-shadow);pointer-events:none;margin:0;padding:6px 8px;font-size:10px;line-height:1.35;position:fixed;inset:auto}.button-tooltip[hidden]{display:none}body{background:var(--bg-deep);color:var(--text);-webkit-font-smoothing:none;grid-template-rows:39px minmax(0,1fr);font-size:11px;display:grid}.mobile-workspace-tabs{display:none}button,input,select,output{font:inherit}button:not(:disabled),select:not(:disabled),input[type=range]:not(:disabled),.drop-zone,.tool-button,.inspector-resizer{cursor:pointer}:where(:root[data-interface-style=spriteforge]) button:not(.ameva-scrollbar__track),:where(:root[data-interface-style=spriteforge]) input[type=text],:where(:root[data-interface-style=spriteforge]) input[type=number],:where(:root[data-interface-style=spriteforge]) select,:where(:root[data-interface-style=spriteforge]) input[type=color]{border-radius:var(--control-radius);border-width:2px}:where(:root[data-interface-style=spriteforge]) button:not(:where(.menu-trigger,.menu-popup button,.ameva-scrollbar__track)),:where(:root[data-interface-style=spriteforge]) select{box-shadow:var(--spriteforge-control-shadow)}:root[data-interface-style=spriteforge] select:not([multiple]):not([size]){min-height:var(--control-height-sm);border-color:var(--dropdown-control-border);background:var(--dropdown-control-bg);transition:border-color var(--motion-fast) var(--motion-easing), filter var(--motion-fast) var(--motion-easing), translate var(--motion-fast) var(--motion-easing)}:root[data-interface-style=spriteforge] select:not([multiple]):not([size]):not(:disabled):hover{border-color:var(--accent-bright);filter:brightness(1.08)}:root[data-interface-style=spriteforge] select:not([multiple]):not([size]):disabled{cursor:not-allowed;filter:grayscale();opacity:var(--opacity-disabled)}.menu-bar{z-index:20;border-bottom:2px solid var(--spriteforge-outline);background:var(--menu-bar-bg);min-height:39px;box-shadow:inset 0 2px 0 var(--spriteforge-highlight);justify-content:space-between;align-items:center;gap:14px;padding:2px 8px 5px;display:flex;position:relative}.menu-bar:after{background:var(--menu-bar-edge);content:"";pointer-events:none;height:3px;position:absolute;bottom:0;left:0;right:0}.desktop-menu,.project-state{align-items:center;min-width:0;display:flex}.desktop-menu{align-self:stretch;gap:2px}.menu-group{align-items:stretch;display:flex;position:relative}.menu-trigger{border-radius:var(--control-radius);min-height:30px;color:var(--text);background:0 0;border:2px solid #0000;align-items:center;padding:4px 11px;font-size:16px;font-weight:800;text-decoration:none;display:inline-flex}.menu-trigger:hover,.menu-trigger:focus-visible,.menu-trigger.is-open{border-color:var(--line-bright);background:var(--menu-trigger-hover-bg);filter:none;outline:none}.menu-popup{z-index:30;border:2px solid var(--line-bright);border-radius:var(--popover-radius);background:var(--menu-popup-bg);width:max-content;min-width:238px;box-shadow:4px 4px 0 var(--spriteforge-shadow);padding:4px;position:absolute;top:calc(100% + 1px);left:0}.menu-popup[hidden]{display:none}.menu-popup button{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:29px;color:var(--text);text-align:left;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:2px;padding:5px 9px;font-size:16px;display:flex}.menu-popup button:hover:not(:disabled),.menu-popup button:focus-visible:not(:disabled){background:var(--menu-hover-bg);box-shadow:inset 4px 0 0 var(--spriteforge-pink);filter:none;border-color:#0000;outline:none}.menu-popup button:disabled{cursor:not-allowed;opacity:var(--opacity-disabled)}.menu-item__label{color:inherit;flex:auto}.menu-item__meta{color:var(--muted);flex:none;margin-left:18px;font-size:9px}.menu-popup button>.menu-check{width:13px;color:var(--spriteforge-pink);opacity:0;flex:0 0 13px;margin-right:2px;font-weight:900}[role=menuitemcheckbox][aria-checked=true] .menu-check,[role=menuitemradio][aria-checked=true] .menu-check{opacity:1}.menu-separator{background:var(--line);height:1px;margin:4px 5px;display:block}.menu-section-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;padding:5px 9px 2px;font-size:8px;font-weight:700;line-height:1.2;display:block}.project-state{gap:14px;padding-right:4px;font-size:11px}.project-state__status,.project-state__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-state__status{max-width:300px;color:var(--muted);font-size:10px}.project-state__status[data-state=busy]{color:var(--warning-text)}.project-state__status[data-state=error]{color:var(--error-text)}.project-state__name{max-width:280px;color:var(--text)}.project-state__save{color:var(--success-text);align-items:center;gap:6px;line-height:1;display:inline-flex}.project-state__dot{width:8px;height:8px;box-shadow:0 0 0 2px color-mix(in srgb, currentColor 18%, transparent);background:currentColor;border-radius:50%;flex:0 0 8px;display:block}.project-state__status,.project-state__name,.project-state__save>span:last-child{transform:translateY(2px)}dialog{border:3px solid var(--spriteforge-outline);border-radius:var(--surface-radius);background:var(--panel);width:min(520px,100vw - 40px);box-shadow:7px 7px 0 var(--spriteforge-shadow), inset 3px 3px 0 var(--spriteforge-highlight);color:var(--text);opacity:0;transform:translateY(var(--space-3)) scale(.98);transition:opacity var(--motion-standard) var(--motion-easing), transform var(--motion-standard) var(--motion-easing), display var(--motion-standard) allow-discrete, overlay var(--motion-standard) allow-discrete;padding:0}dialog[open]{opacity:1;transform:translateY(0)scale(1)}dialog::backdrop{background:var(--modal-backdrop)}.editor-busy-dialog{border-color:var(--spriteforge-outline);cursor:wait;width:min(360px,100vw - 40px);box-shadow:0 0 0 2px var(--line-bright), 8px 8px 0 var(--spriteforge-shadow), inset 3px 3px 0 var(--spriteforge-highlight);border-radius:0}.editor-busy-dialog__content{align-items:center;gap:var(--space-6);padding:var(--space-8);background-image:linear-gradient(135deg, color-mix(in srgb, var(--spriteforge-pink) 10%, transparent), transparent 42%);grid-template-columns:56px minmax(0,1fr);display:grid}.editor-busy-dialog__content :is(.eyebrow,h2,.hint){margin:0}.editor-busy-dialog__content>div{gap:var(--space-3);min-width:0;display:grid}.editor-busy-dialog__content .eyebrow{color:var(--spriteforge-pink)}.editor-busy-dialog__content h2{color:var(--text-strong);font-size:17px;line-height:1.15}.editor-busy-dialog__content .hint{padding-left:var(--space-3);border-left:2px solid var(--spriteforge-mint);color:var(--muted);line-height:1.45}.editor-busy-indicator{border:2px solid var(--spriteforge-outline);background:var(--panel-deep);width:52px;height:52px;box-shadow:inset 2px 2px 0 var(--spriteforge-highlight), 3px 3px 0 var(--spriteforge-shadow);place-items:center;display:grid}.editor-busy-indicator__studio{display:none}.editor-busy-indicator__sprite-frame{width:48px;height:48px;filter:drop-shadow(2px 2px 0 var(--spriteforge-shadow));display:block;overflow:hidden}.editor-busy-indicator__sprite{width:96px;max-width:none;height:48px;image-rendering:pixelated;will-change:transform;animation:1.12s step-end infinite spriteforge-busy-frames;display:block}@keyframes spriteforge-busy-frames{0%,58%{transform:translate(0)}58.01%,to{transform:translate(-48px)}}@media (prefers-reduced-motion:reduce){.editor-busy-indicator__sprite{animation:none;transform:translate(-48px)}}.app-shell,.workspace{width:100%;min-width:0;height:100%;min-height:0}.workspace{grid-template-columns:58px var(--inspector-width) 7px minmax(320px, 1fr) 7px var(--history-panel-width);background:var(--bg-deep);display:grid}.workspace.is-options-collapsed{grid-template-columns:58px 0 0 minmax(320px, 1fr) 7px var(--history-panel-width)}.workspace.is-options-collapsed :is(.control-panel,.inspector-resizer){display:none}.workspace.is-options-edge-collapsed .control-panel,.workspace.is-history-edge-collapsed .history-panel{visibility:hidden;pointer-events:none;overflow:hidden}.tool-rail{border-right:2px solid var(--spriteforge-outline);background:var(--spriteforge-sky);min-height:0;box-shadow:inset -2px 0 0 var(--spriteforge-outline);flex-direction:column;grid-column:1;display:flex}.tool-grid{gap:5px;padding:6px;display:grid}.tool-button{isolation:isolate;border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);background:var(--panel-raised);width:44px;height:44px;min-height:44px;box-shadow:inset 2px 2px 0 var(--spriteforge-highlight), 2px 2px 0 var(--spriteforge-shadow);color:var(--text);touch-action:manipulation;-webkit-user-select:none;user-select:none;place-items:center;gap:1px;padding:4px 2px;display:grid;position:relative;overflow:hidden}.tool-button:nth-child(2){background:color-mix(in srgb, var(--spriteforge-pink) 38%, var(--panel-raised))}.tool-button:nth-child(3){background:color-mix(in srgb, var(--spriteforge-yellow) 42%, var(--panel-raised))}.tool-button:is(:hover,:focus-visible){border-color:var(--accent-bright);outline:none}.tool-button.is-active{border-color:var(--spriteforge-outline);background:var(--spriteforge-yellow);box-shadow:inset 3px 0 0 var(--spriteforge-pink), inset 2px 2px 0 var(--spriteforge-highlight), 2px 2px 0 var(--spriteforge-shadow);color:var(--spriteforge-active-text)}.tool-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;pointer-events:none;width:19px;height:19px}.tool-button small{pointer-events:none;font-size:8px;line-height:1}.control-panel{border-right:1px solid var(--line);background-color:var(--panel);background-image:linear-gradient(135deg, color-mix(in srgb, var(--spriteforge-pink) 7%, transparent), transparent 38%);scrollbar-color:var(--line-bright) var(--panel-deep);scrollbar-width:thin;flex-direction:column;grid-column:2;min-width:0;min-height:0;padding:10px;display:flex;overflow:auto}.panel-heading{border-bottom:1px solid var(--line);margin-bottom:8px;padding-bottom:8px}.panel-heading h1{color:var(--text-strong);margin:0;font-size:14px;line-height:1.1}.panel-heading>p:last-child{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.4}.operation-guide{border:1px solid var(--line);border-radius:var(--surface-radius);background:var(--panel-raised);gap:8px;padding:9px;display:grid}.operation-guide--report{margin-top:10px}.operation-guide__header{justify-content:space-between;align-items:center;gap:8px;display:flex}.operation-guide__header .eyebrow{margin:0}.operation-maturity{background:color-mix(in srgb, var(--success-text) 10%, var(--panel-raised));color:var(--success-text);text-align:right;text-transform:uppercase;border:1px solid;border-radius:2px;padding:3px 5px;font-size:7px;line-height:1.2}.operation-maturity[data-level=baseline]{background:color-mix(in srgb, var(--warning-text) 10%, var(--panel-raised));color:var(--warning-text)}.operation-guide__facts{gap:6px;margin:0;display:grid}.operation-guide__facts div{gap:2px;display:grid}.operation-guide__facts dt,.operation-guide__limit strong,.settings-heading strong{color:var(--text-strong);text-transform:uppercase;font-size:8px;font-weight:800}.operation-guide__facts dd,.operation-guide__limit{color:var(--muted);margin:0;font-size:8px;line-height:1.4}.operation-guide__limit{border-top:1px solid var(--line);padding-top:7px}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 3px;font-size:9px;font-weight:900}.eyebrow:before{color:var(--selection-highlight);content:"◆ "}.drop-zone{border:2px dashed var(--line);border-radius:var(--surface-radius);background:var(--panel-raised);text-align:center;min-height:66px;transition:border-color var(--motion-fast) ease-out, filter var(--motion-fast) ease-out;place-content:center;gap:3px;padding:8px;display:grid}.drop-zone:hover,.drop-zone:focus-within,.drop-zone.is-dragging{border-color:var(--accent-bright);filter:brightness(1.04)}.drop-zone input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.drop-zone strong{color:var(--text-strong);font-size:11px}.drop-zone small{color:var(--muted);font-size:9px;line-height:1.35}.history-panel{border-left:1px solid var(--line);background-color:var(--panel);background-image:linear-gradient(135deg, color-mix(in srgb, var(--spriteforge-pink) 7%, transparent), transparent 38%);scrollbar-color:var(--line-bright) var(--panel-deep);scrollbar-width:thin;grid-column:6;min-width:0;min-height:0;overflow:hidden auto}.history-panel__content{min-width:160px;padding:6px 13px 13px}.processing-history{gap:10px;display:grid}.processing-history>.eyebrow{margin-top:2px}.processing-history__header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.processing-history__header h2{color:var(--text-strong);text-transform:uppercase;margin:0;font-size:10px}.processing-history__header output,.processing-history__empty{color:var(--muted);font-size:8px}.processing-history__empty{margin:0;line-height:1.4}.processing-history__list{gap:5px;margin:0;padding:0;list-style:none;display:grid}.processing-history__step{text-align:left;grid-template-columns:27px minmax(0,1fr) auto;align-items:start;gap:6px;width:100%;min-height:0;padding:6px;display:grid}.processing-history__step[aria-current=step]{border-color:var(--spriteforge-outline);background:var(--spriteforge-yellow);box-shadow:inset 3px 0 0 var(--spriteforge-pink), inset 2px 2px 0 var(--spriteforge-highlight), 2px 2px 0 var(--spriteforge-shadow)}.processing-history__index{border:1px solid var(--line-bright);border-radius:var(--control-radius);background:var(--panel-raised);width:24px;height:24px;color:var(--text-strong);place-items:center;font-size:9px;display:grid}.processing-history__copy{gap:2px;min-width:0;display:grid}.processing-history__copy strong{color:var(--text-strong);font-size:9px}.processing-history__copy small{overflow-wrap:anywhere;color:var(--muted);font-size:7px;font-weight:400;line-height:1.35}.processing-history__state{color:var(--accent-bright);text-transform:uppercase;font-size:7px;line-height:24px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.field-group{display:contents}.field-group[hidden]{display:none}.settings-heading{border-bottom:1px solid var(--line);gap:2px;padding:7px 0 4px;display:grid}.settings-heading small{color:var(--muted);font-size:8px;line-height:1.35}.field{align-content:start;gap:3px;display:grid}.field-wide{grid-column:1/-1}.field>span{color:var(--text-strong);font-size:9px;font-weight:700}.field input,.field select{border:2px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);width:100%;min-width:0;min-height:34px;color:var(--text);padding:6px 7px;font-size:11px}.field select{box-shadow:var(--spriteforge-control-shadow)}.field input:hover,.field select:hover,.field input:focus-visible,.field select:focus-visible{border-color:var(--accent-bright)}.field input:focus-visible,.field select:focus-visible,.drop-zone:focus-within,.button:focus-visible,.tool-button:focus-visible,.project-state__status:focus-visible,.inspector-resizer:focus-visible,.history-resizer:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.field small{min-height:1.4em;color:var(--muted);font-size:8px;line-height:1.3}.actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:12px;display:grid}.export-format{margin-top:8px}.button{border:2px solid var(--line-bright);border-radius:var(--control-radius);background:linear-gradient(var(--primary-button-start), var(--primary-button-end));min-height:34px;box-shadow:var(--spriteforge-control-shadow);color:var(--primary-button-text);transition:border-color var(--motion-fast) ease-out, filter var(--motion-fast) ease-out;padding:6px 10px;font-size:11px;font-weight:700}.button:hover:not(:disabled){border-color:var(--accent-bright);filter:brightness(1.08)}.button:active:not(:disabled){filter:brightness(.94);box-shadow:inset 2px 2px 0 #164b523d, 2px 2px 0 var(--spriteforge-shadow)}.button:disabled{cursor:not-allowed;filter:grayscale();opacity:var(--opacity-disabled)}.button-secondary{background:linear-gradient(var(--secondary-button-start), var(--secondary-button-end));color:var(--text)}.button-quiet{min-height:30px;box-shadow:none;color:var(--muted);background:0 0;border-color:#0000;align-self:center;margin-top:8px;font-size:10px}.button-quiet:hover:not(:disabled){border-color:var(--line);background:var(--panel-deep)}.button-compact{min-width:30px;min-height:28px;padding:3px 7px}:root[data-interface-style=spriteforge] :is(button,select:not([multiple]):not([size])):not(:disabled):active{box-shadow:inset 2px 2px 0 color-mix(in srgb, var(--spriteforge-outline) 24%, transparent);translate:2px 2px}@supports selector(select:open){:root[data-interface-style=spriteforge] select:not([multiple]):not([size]):not(:disabled):open{box-shadow:inset 2px 2px 0 color-mix(in srgb, var(--spriteforge-outline) 24%, transparent);filter:none;translate:2px 2px}}:is(.inspector-resizer,.history-resizer){z-index:6;border-right:1px solid var(--line-bright);border-left:1px solid var(--line);background:var(--panel-deep);cursor:col-resize;touch-action:none;place-items:center;min-width:7px;display:grid;position:relative}.inspector-resizer{grid-column:3}.history-resizer{grid-column:5}:is(.inspector-resizer,.history-resizer):before{content:"";position:absolute;inset:0 -5px}:is(.inspector-resizer,.history-resizer) i{background:var(--spriteforge-pink);width:3px;height:42px;box-shadow:none;border:0;border-radius:0}:is(.inspector-resizer,.history-resizer):hover,:is(.inspector-resizer,.history-resizer):focus-visible,:is(.inspector-resizer,.history-resizer).is-dragging{background:var(--active-surface)}.workspace.is-resizing,.workspace.is-resizing *{-webkit-user-select:none;user-select:none;cursor:col-resize!important}.preview-panel{background:var(--workspace-bg);grid-column:4;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.canvas-toolbar{border-bottom:1px solid var(--line);background-color:var(--panel);background-image:linear-gradient(135deg, color-mix(in srgb, var(--spriteforge-pink) 7%, transparent), transparent 38%);flex-wrap:wrap;align-items:stretch;gap:7px;min-width:0;min-height:54px;padding:6px 9px;display:flex}.canvas-toolbar-group{flex:none;grid-template-rows:auto 30px;align-content:center;gap:3px;display:grid}.canvas-toolbar-group--view{flex-basis:151px}.canvas-toolbar-group--compare{flex-basis:154px}.canvas-toolbar-group--zoom{flex-basis:174px}.canvas-toolbar-group--background{flex-basis:170px}.canvas-toolbar-group--overlays{flex-basis:98px}.canvas-toolbar-group--animation{flex-basis:210px}.canvas-toolbar-group--metrics{flex-basis:252px;margin-left:auto}.canvas-toolbar-heading{margin-bottom:0}.toolbar-separator{background:var(--line);align-self:stretch;width:1px;margin:0 3px}.canvas-toolbar-controls{align-items:center;gap:5px;display:flex}.canvas-toolbar-controls--zoom{gap:12px}.view-switch{min-height:30px;color:var(--muted);align-items:center;gap:6px;font-size:9px;font-weight:700;display:flex}.view-switch input,.toggle-field input{accent-color:var(--control-accent)}.zoom-control output{color:var(--text);text-align:right;white-space:nowrap}.comparison-control{grid-template-columns:112px 36px;align-items:center;gap:6px;display:grid}.comparison-control output{color:var(--text);text-align:right;white-space:nowrap}.zoom-control{grid-template-columns:100px 30px;align-items:center;gap:6px;display:grid}.toolbar-button{justify-content:center;align-items:center;width:30px;min-height:30px;padding:0;display:inline-flex}.toolbar-button[aria-pressed=true]{background:var(--active-surface)}.toolbar-button svg,.toolbar-menu__trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:16px;height:16px}.canvas-background-controls{align-items:end;gap:5px;display:flex}.canvas-background-controls select{border:2px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);width:126px;min-height:30px;box-shadow:var(--spriteforge-control-shadow);color:var(--text);padding:4px 6px;font-size:10px}.canvas-background-controls input[type=color]{border:2px solid var(--control-border);border-radius:var(--control-radius);background:var(--control-bg);width:34px;height:30px;padding:2px}.canvas-background-controls :is(select,input):hover,.canvas-background-controls :is(select,input):focus-visible{border-color:var(--accent-bright);outline:none}.toolbar-menu{position:relative}.toolbar-menu__trigger{justify-content:center;align-items:center;gap:5px;width:100%;min-height:30px;padding:4px 8px;display:inline-flex}.toolbar-menu__trigger[aria-expanded=true]{border-color:var(--accent-bright);background:var(--active-surface)}.toolbar-menu__popup{z-index:100;border:2px solid var(--line-bright);border-radius:var(--popover-radius);background:var(--menu-popup-bg);width:min(292px,100vw - 32px);min-width:0;box-shadow:4px 4px 0 var(--spriteforge-shadow);margin:0;padding:6px;position:fixed;inset:auto;overflow:auto}.toolbar-menu__popup:not(:popover-open){pointer-events:none;display:none}.toolbar-menu__popup fieldset{border:1px solid var(--line);min-width:0;margin:0;padding:7px}.toolbar-menu__popup legend{color:var(--text-strong);text-transform:uppercase;padding:0 4px;font-size:9px;font-weight:800}.toolbar-overlay-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;display:grid}.toggle-field{min-height:28px;color:var(--muted);align-items:center;gap:5px;font-size:10px;font-weight:700;display:flex}.toggle-field input:disabled+span{opacity:.45}.animation-control{grid-template-columns:30px minmax(68px,auto) 30px minmax(44px,auto);align-items:center;gap:5px;display:grid}.animation-control output{color:var(--text-strong);text-align:right;white-space:nowrap}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:22px;margin:0}input[type=range]::-webkit-slider-runnable-track{box-sizing:border-box;border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);background:repeating-linear-gradient(90deg, transparent 0 7px, var(--range-track-tick) 7px 8px), var(--range-track-bg);height:10px;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--panel-raised) 55%, transparent)}input[type=range]::-webkit-slider-thumb{border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);appearance:none;background:linear-gradient(90deg, var(--range-thumb-bg) 0 5px, var(--range-thumb-mark) 5px 8px, var(--range-thumb-bg) 8px);width:14px;height:20px;box-shadow:2px 2px 0 var(--range-thumb-shadow);margin-top:-5px}input[type=range]::-moz-range-track{box-sizing:border-box;border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);background:repeating-linear-gradient(90deg, transparent 0 7px, var(--range-track-tick) 7px 8px), var(--range-track-bg);height:10px;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--panel-raised) 55%, transparent)}input[type=range]::-moz-range-thumb{box-sizing:border-box;border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);background:linear-gradient(90deg, var(--range-thumb-bg) 0 5px, var(--range-thumb-mark) 5px 8px, var(--range-thumb-bg) 8px);width:14px;height:20px;box-shadow:2px 2px 0 var(--range-thumb-shadow)}input[type=range]:hover::-webkit-slider-runnable-track{border-color:var(--control-accent)}input[type=range]:focus-visible::-webkit-slider-runnable-track{border-color:var(--control-accent)}input[type=range]:hover::-moz-range-track{border-color:var(--control-accent)}input[type=range]:focus-visible::-moz-range-track{border-color:var(--control-accent)}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-runnable-track{box-shadow:0 0 0 2px var(--range-focus-ring), inset 0 1px 0 color-mix(in srgb, var(--panel-raised) 55%, transparent)}input[type=range]:focus-visible::-moz-range-track{box-shadow:0 0 0 2px var(--range-focus-ring), inset 0 1px 0 color-mix(in srgb, var(--panel-raised) 55%, transparent)}input[type=range]:active::-webkit-slider-thumb{transform:scaleY(.78)}input[type=range]:active::-moz-range-thumb{transform:scaleY(.78)}input[type=range]:disabled{cursor:not-allowed;opacity:.45}.image-metadata{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.image-metadata>span{border:1px solid var(--line);border-radius:var(--control-radius);background:var(--panel-deep);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:4px 6px;display:grid}.image-metadata strong{color:var(--muted);text-transform:uppercase;font-size:8px}.image-metadata output{color:var(--text-strong);text-align:right;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.canvas-viewport{background:linear-gradient(45deg, #164b521a 25%, transparent 25%), linear-gradient(-45deg, #164b521a 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #164b521a 75%), linear-gradient(-45deg, transparent 75%, #164b521a 75%), var(--workspace-bg);scrollbar-color:var(--line-bright) var(--panel-deep);scrollbar-width:thin;background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;place-items:center;min-width:0;min-height:0;padding:24px;display:grid;position:relative;overflow:auto}:root[data-interface-style=spriteforge] .ameva-scrollbar--element{--ameva-scrollbar-radius:3px}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track{filter:none;min-width:0;min-height:0}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track:hover{filter:none}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track:before{border-color:color-mix(in srgb, var(--line-bright) 45%, transparent);background:color-mix(in srgb, var(--panel-deep) 94%, transparent);box-shadow:inset 0 0 0 1px var(--workspace-grid-line);opacity:1}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track--vertical:before{width:7px}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track--horizontal:before{height:7px}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__thumb{border:1px solid color-mix(in srgb, var(--accent-bright) 42%, transparent);background:linear-gradient(180deg, var(--accent-bright), var(--accent));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-bright) 8%, transparent)}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__thumb:after{--ameva-scrollbar-thumb-glow-opacity:0;box-shadow:none}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__thumb--vertical{width:7px}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__thumb--horizontal{height:7px}:root[data-interface-style=spriteforge] .ameva-scrollbar--element .ameva-scrollbar__track:is(.ameva-scrollbar__track--hovering,.ameva-scrollbar__track--dragging,.ameva-scrollbar__track--pressing) .ameva-scrollbar__thumb{border-color:var(--accent-bright);background:linear-gradient(180deg, var(--spriteforge-pink), var(--accent));box-shadow:0 0 0 2px color-mix(in srgb, var(--accent-bright) 14%, transparent)}.preview-stage{border:2px solid var(--spriteforge-outline);box-shadow:4px 4px 0 var(--spriteforge-shadow);isolation:isolate;-webkit-user-select:none;user-select:none;flex:none;position:relative;overflow:hidden}.preview-stage[data-background-mode=checkerboard]{background:linear-gradient(45deg, var(--checker-light-a) 25%, transparent 25%, transparent 75%, var(--checker-light-a) 75%), linear-gradient(45deg, var(--checker-light-a) 25%, var(--checker-light-b) 25%, var(--checker-light-b) 75%, var(--checker-light-a) 75%);background-position:0 0,8px 8px;background-size:16px 16px}.preview-stage[data-background-mode=solid]{background:var(--preview-background-color,#fffaf0)}.preview-stage.has-comparison{cursor:ew-resize;touch-action:none}.preview-stage canvas{opacity:0;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.preview-image.is-main{z-index:2;opacity:1}.preview-image.is-main.is-split-main{clip-path:inset(0 0 0 var(--comparison-position,50%))}.preview-image.is-onion{z-index:3;opacity:.5}.preview-image.is-comparison{z-index:3;opacity:1;clip-path:inset(0 calc(100% - var(--comparison-position,50%)) 0 0)}.pixel-canvas{image-rendering:pixelated}.preview-pixel-grid{z-index:4;pointer-events:none;background-image:linear-gradient(to right, color-mix(in srgb, var(--spriteforge-outline) 38%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in srgb, var(--spriteforge-outline) 38%, transparent) 1px, transparent 1px);background-size:var(--preview-grid-size,4px) var(--preview-grid-size,4px);position:absolute;inset:0}.preview-diagnostics{z-index:5;image-rendering:pixelated}.preview-diagnostics[hidden]{display:none}.preview-diagnostics:not([hidden]){opacity:1}.preview-divider{z-index:6;top:0;bottom:0;left:var(--comparison-position,50%);pointer-events:none;width:2px;box-shadow:0 0 0 1px var(--spriteforge-outline), 0 0 8px #0b2f3661;background:#fffef8;position:absolute;transform:translate(-1px)}.preview-divider i{border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);background:linear-gradient(var(--primary-button-start), var(--primary-button-end));width:24px;height:34px;box-shadow:var(--spriteforge-control-shadow);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-divider i:before,.preview-divider i:after{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;position:absolute;top:9px}.preview-divider i:before{border-right:5px solid #fffef8;left:3px}.preview-divider i:after{border-left:5px solid #fffef8;right:3px}.preview-badge{z-index:7;border:2px solid var(--spriteforge-outline);border-radius:var(--control-radius);box-shadow:var(--spriteforge-control-shadow);color:var(--text-strong);pointer-events:none;background:#fffaf0f0;padding:5px 7px;font-size:10px;font-weight:800;display:grid;position:absolute;top:8px;left:8px}.empty-workspace{border:2px dashed var(--line);border-radius:var(--surface-radius);background:color-mix(in srgb, var(--panel-raised) 92%, transparent);width:min(90%,400px);color:var(--text-strong);text-align:center;place-items:center;gap:8px;padding:24px;display:grid}.empty-workspace strong{font-size:14px}.empty-workspace p{color:var(--muted);margin:0;font-size:9px;line-height:1.5}.empty-workspace__robot{object-fit:contain;width:112px;height:112px;image-rendering:pixelated}.result-notice,.wheel-hint{z-index:8;border:1px solid var(--line-bright);border-radius:var(--control-radius);box-shadow:2px 2px 0 var(--spriteforge-shadow);color:var(--muted);background:#fffaf0f0;margin:0;padding:5px 7px;font-size:8px;position:absolute;bottom:9px}.result-notice{right:10px}.wheel-hint{left:10px}[hidden]{display:none!important}:root.is-tablet-layout,:root.is-tablet-layout body{min-width:0;min-height:0}:root.is-tablet-layout body{grid-template-rows:39px 56px minmax(0,1fr)}:root.is-tablet-layout .project-state__name{display:none}:root.is-tablet-layout .project-state{justify-content:flex-end;gap:var(--space-3);flex:1 1 0;overflow:hidden}:root.is-tablet-layout .project-state__status{flex:auto;min-width:0;max-width:min(34vw,280px)}:root.is-tablet-layout .mobile-workspace-tabs{z-index:19;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);background:var(--panel-deep);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}:root.is-tablet-layout .mobile-workspace-tabs button{--workspace-section-accent:var(--workspace-tools-accent);justify-content:center;align-items:center;gap:var(--space-3);min-width:0;min-height:44px;padding:var(--space-3) var(--space-7);border:2px solid var(--line-bright);border-radius:var(--control-radius);background:color-mix(in srgb, var(--workspace-section-accent) 12%, var(--panel-raised));box-shadow:var(--spriteforge-control-shadow);color:color-mix(in srgb, var(--workspace-section-accent) 72%, var(--text));font-weight:800;display:inline-flex}:root.is-tablet-layout .mobile-workspace-tabs button[data-mobile-workspace-section=canvas]{--workspace-section-accent:var(--workspace-canvas-accent)}:root.is-tablet-layout .mobile-workspace-tabs button[data-mobile-workspace-section=history]{--workspace-section-accent:var(--workspace-inspect-accent)}:root.is-tablet-layout .mobile-workspace-tabs button:is(:hover,:focus-visible){border-color:var(--accent-bright);color:var(--text-strong);outline:none}:root.is-tablet-layout .mobile-workspace-tabs button.is-active{background:color-mix(in srgb, var(--workspace-section-accent) 26%, var(--panel-raised));box-shadow:inset 0 -4px 0 var(--workspace-section-accent), inset 2px 2px 0 color-mix(in srgb, var(--spriteforge-outline) 24%, transparent), 2px 2px 0 var(--spriteforge-shadow);color:var(--text-strong)}:root.is-tablet-layout .mobile-workspace-tabs svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px}:root.is-tablet-layout .workspace,:root.is-tablet-layout .workspace.is-options-collapsed{grid-template-columns:58px minmax(0,1fr)}:root.is-tablet-layout .workspace>:is(.tool-rail,.control-panel,.preview-panel,.history-panel),:root.is-tablet-layout .workspace>:is(.inspector-resizer,.history-resizer){display:none}:root.is-tablet-layout .workspace[data-mobile-section=tools] .tool-rail{grid-column:1;display:flex}:root.is-tablet-layout .workspace[data-mobile-section=tools]:not(.is-options-collapsed) .control-panel{visibility:visible;pointer-events:auto;grid-column:2;display:flex}:root.is-tablet-layout .workspace[data-mobile-section=canvas] .preview-panel{grid-column:1/-1;display:grid}:root.is-tablet-layout .workspace[data-mobile-section=history] .history-panel{visibility:visible;pointer-events:auto;grid-column:1/-1;display:block}:root.is-tablet-layout .canvas-toolbar-group--metrics{flex-basis:220px}@media (width<=720px){:root.is-tablet-layout .mobile-workspace-tabs button{padding-inline:var(--space-3)}:root.is-tablet-layout .mobile-workspace-tabs button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:root.is-tablet-layout .project-state__save>span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.001ms!important}}.ameva-scrollbar,.ameva-scrollbar *,.ameva-scrollbar :before,.ameva-scrollbar :after{box-sizing:border-box}.ameva-scrollbar-host{scrollbar-width:none;-ms-overflow-style:none}.ameva-scrollbar-host::-webkit-scrollbar{width:0;height:0}.ameva-scrollbar{opacity:0;pointer-events:none;transition:opacity .22s,transform .22s}.ameva-scrollbar--active{opacity:1}.ameva-scrollbar--hidden,.ameva-scrollbar--initializing{opacity:0;pointer-events:none}.ameva-scrollbar--viewport{right:var(--ameva-scrollbar-viewport-right,1px);top:var(--ameva-scrollbar-viewport-top,16px);bottom:var(--ameva-scrollbar-viewport-bottom,16px);width:var(--ameva-scrollbar-hit-size,16px);z-index:var(--ameva-scrollbar-viewport-z-index,60);position:fixed}.ameva-scrollbar--element{z-index:var(--ameva-scrollbar-element-z-index,4);position:fixed}.ameva-scrollbar--element .ameva-scrollbar__track--vertical{bottom:var(--ameva-scrollbar-element-vertical-inset,0px);right:var(--ameva-scrollbar-element-inline-end-inset,0px);top:var(--ameva-scrollbar-element-vertical-inset,0px)}.ameva-scrollbar--element .ameva-scrollbar__track--horizontal{bottom:var(--ameva-scrollbar-element-horizontal-offset,0px);left:var(--ameva-scrollbar-element-horizontal-inset,0px);right:var(--ameva-scrollbar-element-horizontal-inset,0px)}.ameva-scrollbar--element[data-amevascrollbar-x-position=top] .ameva-scrollbar__track--horizontal{bottom:auto;top:var(--ameva-scrollbar-element-horizontal-offset,0px)}.ameva-scrollbar__track{appearance:none;border-radius:var(--ameva-scrollbar-radius,999px);box-shadow:none;cursor:pointer;font:inherit;opacity:0;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;margin:0;padding:0;transition:opacity .22s,transform .18s;display:block;position:absolute}.ameva-scrollbar--active .ameva-scrollbar__track{opacity:1}.ameva-scrollbar--active .ameva-scrollbar__track--hidden,.ameva-scrollbar__track--hidden{opacity:0;pointer-events:none}.ameva-scrollbar__track:before{border-radius:var(--ameva-scrollbar-radius,999px);content:"";opacity:0;pointer-events:none;background:linear-gradient(#08101dd1,#0c1425eb);border:1px solid #74f1ff24;transition:border-color .18s,box-shadow .18s,transform .18s,opacity .18s,width .18s,height .18s;position:absolute;box-shadow:inset 0 0 0 1px #ffffff05,0 0 20px #5cf2ff14}.ameva-scrollbar__track--vertical{width:var(--ameva-scrollbar-track-size,12px);top:0;bottom:0;right:0}.ameva-scrollbar__track--vertical:before{width:20px;top:0;bottom:0;left:50%;transform:translate(-50%)}.ameva-scrollbar__track--horizontal{height:var(--ameva-scrollbar-track-size,12px);bottom:0;left:0;right:0}.ameva-scrollbar__track--horizontal:before{height:20px;top:50%;left:0;right:0;transform:translateY(-50%)}.ameva-scrollbar__thumb{border-radius:var(--ameva-scrollbar-radius,999px);pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform, width, height;background:#84f6fff5;transition:box-shadow .18s,opacity .18s;display:block;position:absolute;box-shadow:0 0 6px #5cf2ff24}.ameva-scrollbar__thumb:after{border-radius:inherit;content:"";opacity:var(--ameva-scrollbar-thumb-glow-opacity,.16);pointer-events:none;background:0 0;transition:opacity .22s,box-shadow .22s,transform .22s;position:absolute;inset:-2px;box-shadow:0 0 8px #5cf2ff1f,0 0 16px #5cf2ff14}.ameva-scrollbar__thumb--vertical{min-height:var(--ameva-scrollbar-thumb-min-size,56px);transform:translateX(-50%) translateY(var(--ameva-scrollbar-thumb-offset-y,0));width:1px;transition:box-shadow .22s cubic-bezier(.4,0,.2,1),width .22s cubic-bezier(.4,0,.2,1),opacity .18s;top:0;left:50%}.ameva-scrollbar__thumb--horizontal{height:1px;min-width:var(--ameva-scrollbar-thumb-min-size,56px);transform:translateX(var(--ameva-scrollbar-thumb-offset-x,0)) translateY(-50%);transition:box-shadow .22s cubic-bezier(.4,0,.2,1),height .22s cubic-bezier(.4,0,.2,1),opacity .18s;top:50%;left:0}.ameva-scrollbar__track--hovering,.ameva-scrollbar__track--dragging{z-index:1}.ameva-scrollbar__track--hovering:before,.ameva-scrollbar__track--dragging:before,.ameva-scrollbar__track--pressing:before{opacity:.9;border-color:#90f7ff3d;box-shadow:inset 0 0 0 1px #ffffff08,0 0 24px #5cf2ff1f}.ameva-scrollbar__track--vertical.ameva-scrollbar__track--hovering:before,.ameva-scrollbar__track--vertical.ameva-scrollbar__track--dragging:before,.ameva-scrollbar__track--vertical.ameva-scrollbar__track--pressing:before{width:6px}.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--hovering:before,.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--dragging:before,.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--pressing:before{height:6px}.ameva-scrollbar__track--hovering .ameva-scrollbar__thumb,.ameva-scrollbar__track--dragging .ameva-scrollbar__thumb,.ameva-scrollbar__track--pressing .ameva-scrollbar__thumb{box-shadow:0 0 8px #5cf2ff33,0 0 14px #5cf2ff1f}.ameva-scrollbar__track--hovering .ameva-scrollbar__thumb:after,.ameva-scrollbar__track--dragging .ameva-scrollbar__thumb:after,.ameva-scrollbar__track--pressing .ameva-scrollbar__thumb:after{--ameva-scrollbar-thumb-glow-opacity:.34;box-shadow:0 0 10px #5cf2ff2e,0 0 20px #5cf2ff1a}.ameva-scrollbar__track--vertical.ameva-scrollbar__track--hovering .ameva-scrollbar__thumb,.ameva-scrollbar__track--vertical.ameva-scrollbar__track--dragging .ameva-scrollbar__thumb,.ameva-scrollbar__track--vertical.ameva-scrollbar__track--pressing .ameva-scrollbar__thumb{width:4px}.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--hovering .ameva-scrollbar__thumb,.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--dragging .ameva-scrollbar__thumb,.ameva-scrollbar__track--horizontal.ameva-scrollbar__track--pressing .ameva-scrollbar__thumb{height:4px}@media (width<=860px),(pointer:coarse){.ameva-scrollbar-host--viewport{scrollbar-width:auto;-ms-overflow-style:auto}.ameva-scrollbar-host--viewport::-webkit-scrollbar{height:initial;width:initial}.ameva-scrollbar--viewport{display:none}}@media (prefers-reduced-motion:reduce){.ameva-scrollbar,.ameva-scrollbar *,.ameva-scrollbar :before,.ameva-scrollbar :after{transition:none;animation:none}}
