.dither-loader-spinner{width:140px;max-width:80%;height:auto;color:var(--color-text,#fff);shape-rendering:crispedges;display:block}@keyframes anim_frame_0{0%,4.348%{opacity:1;visibility:visible}4.349%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_1{0%,4.347%{opacity:0;visibility:hidden}4.348%,8.696%{opacity:1;visibility:visible}8.697%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_2{0%,8.695%{opacity:0;visibility:hidden}8.696%,13.043%{opacity:1;visibility:visible}13.044%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_3{0%,13.042%{opacity:0;visibility:hidden}13.043%,17.391%{opacity:1;visibility:visible}17.392%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_4{0%,17.39%{opacity:0;visibility:hidden}17.391%,21.739%{opacity:1;visibility:visible}21.74%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_5{0%,21.738%{opacity:0;visibility:hidden}21.739%,26.087%{opacity:1;visibility:visible}26.088%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_6{0%,26.086%{opacity:0;visibility:hidden}26.087%,30.435%{opacity:1;visibility:visible}30.436%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_7{0%,30.434%{opacity:0;visibility:hidden}30.435%,34.783%{opacity:1;visibility:visible}34.784%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_8{0%,34.782%{opacity:0;visibility:hidden}34.783%,39.13%{opacity:1;visibility:visible}39.131%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_9{0%,39.129%{opacity:0;visibility:hidden}39.13%,43.478%{opacity:1;visibility:visible}43.479%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_10{0%,43.477%{opacity:0;visibility:hidden}43.478%,47.826%{opacity:1;visibility:visible}47.827%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_11{0%,47.825%{opacity:0;visibility:hidden}47.826%,52.174%{opacity:1;visibility:visible}52.175%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_12{0%,52.173%{opacity:0;visibility:hidden}52.174%,56.522%{opacity:1;visibility:visible}56.523%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_13{0%,56.521%{opacity:0;visibility:hidden}56.522%,60.87%{opacity:1;visibility:visible}60.871%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_14{0%,60.869%{opacity:0;visibility:hidden}60.87%,65.217%{opacity:1;visibility:visible}65.218%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_15{0%,65.216%{opacity:0;visibility:hidden}65.217%,69.565%{opacity:1;visibility:visible}69.566%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_16{0%,69.564%{opacity:0;visibility:hidden}69.565%,73.913%{opacity:1;visibility:visible}73.914%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_17{0%,73.912%{opacity:0;visibility:hidden}73.913%,78.261%{opacity:1;visibility:visible}78.262%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_18{0%,78.26%{opacity:0;visibility:hidden}78.261%,82.609%{opacity:1;visibility:visible}82.61%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_19{0%,82.608%{opacity:0;visibility:hidden}82.609%,86.957%{opacity:1;visibility:visible}86.958%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_20{0%,86.956%{opacity:0;visibility:hidden}86.957%,91.304%{opacity:1;visibility:visible}91.305%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_21{0%,91.303%{opacity:0;visibility:hidden}91.304%,95.652%{opacity:1;visibility:visible}95.653%,to{opacity:0;visibility:hidden}}@keyframes anim_frame_22{0%,95.651%{opacity:0;visibility:hidden}95.652%,to{opacity:1;visibility:visible}}.dither-loader-spinner .gd-f-0{opacity:0;animation:1.917s step-end infinite anim_frame_0}.dither-loader-spinner .gd-f-1{opacity:0;animation:1.917s step-end infinite anim_frame_1}.dither-loader-spinner .gd-f-2{opacity:0;animation:1.917s step-end infinite anim_frame_2}.dither-loader-spinner .gd-f-3{opacity:0;animation:1.917s step-end infinite anim_frame_3}.dither-loader-spinner .gd-f-4{opacity:0;animation:1.917s step-end infinite anim_frame_4}.dither-loader-spinner .gd-f-5{opacity:0;animation:1.917s step-end infinite anim_frame_5}.dither-loader-spinner .gd-f-6{opacity:0;animation:1.917s step-end infinite anim_frame_6}.dither-loader-spinner .gd-f-7{opacity:0;animation:1.917s step-end infinite anim_frame_7}.dither-loader-spinner .gd-f-8{opacity:0;animation:1.917s step-end infinite anim_frame_8}.dither-loader-spinner .gd-f-9{opacity:0;animation:1.917s step-end infinite anim_frame_9}.dither-loader-spinner .gd-f-10{opacity:0;animation:1.917s step-end infinite anim_frame_10}.dither-loader-spinner .gd-f-11{opacity:0;animation:1.917s step-end infinite anim_frame_11}.dither-loader-spinner .gd-f-12{opacity:0;animation:1.917s step-end infinite anim_frame_12}.dither-loader-spinner .gd-f-13{opacity:0;animation:1.917s step-end infinite anim_frame_13}.dither-loader-spinner .gd-f-14{opacity:0;animation:1.917s step-end infinite anim_frame_14}.dither-loader-spinner .gd-f-15{opacity:0;animation:1.917s step-end infinite anim_frame_15}.dither-loader-spinner .gd-f-16{opacity:0;animation:1.917s step-end infinite anim_frame_16}.dither-loader-spinner .gd-f-17{opacity:0;animation:1.917s step-end infinite anim_frame_17}.dither-loader-spinner .gd-f-18{opacity:0;animation:1.917s step-end infinite anim_frame_18}.dither-loader-spinner .gd-f-19{opacity:0;animation:1.917s step-end infinite anim_frame_19}.dither-loader-spinner .gd-f-20{opacity:0;animation:1.917s step-end infinite anim_frame_20}.dither-loader-spinner .gd-f-21{opacity:0;animation:1.917s step-end infinite anim_frame_21}.dither-loader-spinner .gd-f-22{opacity:0;animation:1.917s step-end infinite anim_frame_22}@font-face{font-family:Sono;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/sono-latin-ext.woff2)format("woff2");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:Sono;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/sono-latin.woff2)format("woff2");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{--font-mono:"Sono", monospace;font-variation-settings:"MONO" 1;font-feature-settings:"mono" 1;--color-bg:#12120f;--color-text:#eeeedf;--color-hover:color-mix(in srgb, var(--color-text) 10%, transparent);--color-bg-subtle:color-mix(in srgb, var(--color-text) 4%, transparent);--color-bg-subtle-hover:var(--color-hover);--color-text-subtle:color-mix(in srgb, var(--color-text) 70%, transparent);--color-text-muted:color-mix(in srgb, var(--color-text) 56%, transparent);--btn-color-default:var(--color-text-subtle);--btn-border-default:var(--color-border-subtle);--btn-bg-default:var(--color-bg-subtle);--btn-color-hover:color-mix(in srgb, var(--color-text) 92%, transparent);--btn-border-hover:var(--color-border-hover);--btn-bg-hover:var(--color-hover);--btn-color-active:var(--color-bg);--btn-border-active:var(--color-text);--btn-bg-active:var(--color-text);--color-border:color-mix(in srgb, var(--color-text) 28%, transparent);--color-border-subtle:color-mix(in srgb, var(--color-text) 20%, transparent);--color-border-hover:color-mix(in srgb, var(--color-text) 45%, transparent);--color-border-focus:var(--color-text);--color-surface:color-mix(in srgb, var(--color-bg) 50%, black);--color-surface-hover:var(--color-hover);--color-surface-focus:var(--color-surface);--input-surface:var(--color-surface);--input-surface-hover:var(--color-hover);--input-surface-focus:var(--color-surface);--color-macro-section-bg:var(--color-surface);--color-slider-selected-bg:color-mix(in srgb, var(--color-text) 7%, var(--color-bg));--color-backdrop:#0009;--color-floating-bg:#000000d9;--color-floating-border:#ffffff1f;--shadow-floating:0 8px 24px #00000080;--shadow-floating-inset:inset 0 1px 0 #ffffff14;--filter-floating-blur:blur(4px);--color-danger:#b53636;--color-danger-text:#ffc8c8;--color-danger-hover:#e43b44;--color-danger-bg-hover:color-mix(in srgb, var(--color-danger) 15%, transparent);--color-success:#5cd56f;--color-pending:#56a8ff;--color-modified:#e43b44}.bv-option-btn,.header-modal-close,.fullscreen-blocker-btn,.gif-timeline-btn{border:1px solid var(--btn-border-default);background:var(--btn-bg-default);color:var(--btn-color-default);cursor:pointer;font-weight:400;transition:background-color .15s,color .15s,border-color .15s,transform .15s}.bv-option-btn:hover,.header-modal-close:hover,.fullscreen-blocker-btn:hover,.gif-timeline-btn:hover{background:var(--btn-bg-hover);border-color:var(--btn-border-hover);color:var(--btn-color-hover)}.bv-option-btn.active,.bv-option-btn[data-selected=true],.header-modal-close[aria-pressed=true],.gif-timeline-btn.active{background:var(--btn-bg-active);color:var(--btn-color-active);border-color:var(--btn-border-active);font-weight:600}.bv-option-btn:disabled,.header-modal-close:disabled,.fullscreen-blocker-btn:disabled,.gif-timeline-btn:disabled{opacity:.45;cursor:not-allowed}.palette-floating-editor,.histogram-floating-panel,.pipeline-timing-tooltip{background:var(--color-floating-bg);backdrop-filter:var(--filter-floating-blur);border:1px solid var(--color-floating-border);box-shadow:var(--shadow-floating), var(--shadow-floating-inset)}*{box-sizing:border-box;font-family:var(--font-mono);font-variation-settings:"MONO" 1;font-feature-settings:"mono" 1;margin:0;padding:0}h2,p{font-family:var(--font-mono);font-variation-settings:"MONO" 1;font-feature-settings:"mono" 1;font-size:1rem}h2{letter-spacing:normal;word-spacing:normal;text-transform:uppercase;font-weight:400}html,body,#root{background-color:var(--color-bg);width:100%;height:100%;color:var(--color-text);user-select:none}html{background-color:#000}#root{flex-direction:column;width:100vw;height:100dvh;display:flex;overflow:hidden}::selection{background-color:var(--color-text);color:var(--color-bg)}footer{padding:.6rem 1.2rem}.app-header{box-sizing:border-box;z-index:20;background-color:#000;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;width:100%;height:2rem;padding:0 .75rem 0 .65rem;display:flex}.app-header-title{white-space:nowrap;align-items:center;gap:.45rem;height:100%;margin:0;padding:0;display:inline-flex;position:relative}.header-logo-img{width:auto;height:1.3rem;image-rendering:pixelated;flex-shrink:0;margin:0;padding:0;display:block}.header-btn--mobile-only{display:none}.app-header-title-name{font-family:var(--font-mono,"Sono", monospace);font-weight:inherit;white-space:nowrap;letter-spacing:.08em;align-items:center;margin-left:0;font-size:.88rem;line-height:normal;display:inline-flex}.app-header-links{align-items:center;gap:.5rem;height:100%;display:flex}.header-link-btn{height:100%;color:var(--color-text);font-family:inherit;font-size:.76rem;line-height:normal;font-weight:inherit;letter-spacing:.06em;cursor:pointer;background:0 0;border:1px solid #0000;border-left:none;border-right:none;align-items:center;gap:.35rem;padding:0 .35rem;text-decoration:none;display:inline-flex}.header-link-label{align-items:center;line-height:normal;display:inline-flex}.header-link-btn svg{flex-shrink:0;width:14px;height:14px}.header-link-btn.header-btn--mobile-only{display:none!important}.header-link-btn:hover{border-bottom-color:var(--color-text)}.header-modal-backdrop{background:var(--color-backdrop);z-index:999;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.header-modal{border:1px solid var(--color-border);background:var(--color-floating-bg);gap:.8rem;width:min(36rem,100%);padding:1rem;display:grid}.header-modal-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.header-modal h2{letter-spacing:.1em;margin:0;font-size:1.15rem}.header-modal p{color:color-mix(in srgb, var(--color-text) 88%, transparent);font-size:1rem;line-height:1.45}.header-modal-list{color:color-mix(in srgb, var(--color-text) 88%, transparent);user-select:text;gap:.25rem;margin:0;padding-left:1.1rem;display:grid}.header-modal-list li{font-size:1rem;line-height:1.45}.header-modal a{color:var(--color-text)}.header-modal-support-block{user-select:text;gap:.45rem;display:grid}.header-modal-close{letter-spacing:.08em;padding:.35rem .65rem;font-size:.9rem}.header-modal-setting{border-top:1px solid color-mix(in srgb, var(--color-text) 28%, transparent);justify-content:space-between;align-items:center;gap:.75rem;margin-top:.2rem;padding-top:.8rem;display:flex}.header-modal-setting-label{letter-spacing:.11em;color:color-mix(in srgb, var(--color-text) 92%, transparent);font-size:.9rem}.header-modal-toggle{border:1px solid var(--color-text);min-width:3.8rem;color:var(--color-text);letter-spacing:.08em;cursor:pointer;background:0 0;padding:.35rem .65rem;font-size:.9rem}.header-modal-toggle-group{align-items:center;gap:.35rem;display:flex}.header-modal-toggle[aria-pressed=true]{background:var(--color-text);color:var(--color-bg)}main{flex:1;width:100%;min-height:0;overflow:hidden}input[type=text],input[type=number]{background-color:var(--input-surface);color:var(--color-text);border:none;padding:.3rem .9rem;transition:background-color .2s,border-color .2s}input[type=text]:hover,input[type=number]:hover{background-color:var(--input-surface-hover)}input[type=text]:focus,input[type=number]:focus,input[type=text]:focus-visible,input[type=number]:focus-visible{border:1px solid var(--color-border-focus);background-color:var(--input-surface-focus);outline:none}input[type=text][aria-invalid=true],input[type=number][aria-invalid=true]{border:1px solid var(--color-danger)}input[type=number]{text-align:right;appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.app-layout>main,main{border-top:1px solid var(--color-border);flex:1;min-width:0;height:100%;min-height:0;display:flex}.app-layout{flex:1;width:100%;min-height:0;display:flex;overflow:hidden}.app-nav{border-right:1px solid var(--color-border);z-index:10;background-color:#000;flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:center;width:3.2rem;height:100%;display:flex}.nav-logo-img{display:none}.nav-top-wrap{flex-direction:column;align-items:center;width:100%;margin-top:0;margin-bottom:auto;padding:0 0 .35rem;display:flex}.nav-links-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;row-gap:.5rem;width:100%;display:flex}.nav-export-wrap{flex-direction:column;align-items:center;width:100%;margin-top:auto;padding:.35rem 0;display:flex}.nav-icon-btn--mobile-only{display:none!important}.nav-icon-btn{box-sizing:content-box;width:100%;color:var(--color-text);background:0 0;border:none;place-items:center;padding:.8rem 0;transition:background-color .2s;display:grid;position:relative}.nav-icon-btn:after{content:attr(data-tooltip);color:var(--color-text);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;z-index:20;background:#000;padding:.6rem;font-size:1rem;transition:opacity .18s,transform .2s,visibility 0s linear .2s;position:absolute;top:50%;left:calc(100% + .7rem);transform:translateY(-50%)translate(-.35rem)}@media (hover:hover){.nav-icon-btn:hover:after,.nav-icon-btn:focus-visible:after,.nav-icon-btn:focus-visible:after{opacity:1;visibility:visible;transition-delay:0s}.nav-icon-btn:hover:after,.nav-icon-btn:focus-visible:after{transform:translateY(-50%)translate(0)}}.nav-icon-btn:hover{background-color:var(--color-hover);cursor:pointer}.nav-icon-btn:disabled,.nav-icon-btn.disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.nav-icon-btn.selected{background-color:var(--color-text);color:var(--color-bg)}.nav-icon-img{width:24px;height:24px}.aside-media-template-banner{background:var(--btn-bg-default);border:none;border-bottom:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;text-align:left;flex-shrink:0;justify-content:space-between;align-items:center;width:100%;padding:.75rem .85rem;font-size:.78rem;font-weight:700;transition:background-color .15s,color .15s;display:flex}.aside-media-template-banner:hover{background:var(--btn-bg-hover);color:var(--btn-color-hover)}.aside-media-template-banner-left{align-items:center;gap:.5rem;display:flex}.aside-media-template-banner-badge{background:var(--color-bg-subtle);border:1px solid var(--color-border-subtle);color:var(--color-text-subtle);padding:2px 6px;font-size:.68rem;font-weight:500}.flex-v{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex}.flex-h{display:flex}#render{width:min-content;height:min-content;display:block;position:relative}.render-underlay{object-fit:fill;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;position:absolute;inset:0}.render-canvas-layer{position:absolute;inset:0}.render-canvas-layer canvas,canvas{image-rendering:pixelated}h1,h3{letter-spacing:.2rem;margin-bottom:1rem}.fullscreen-blocker{text-align:center;align-content:center;justify-items:center;gap:.75rem;width:100%;height:100%;padding:2rem;display:grid}.fullscreen-blocker h1{letter-spacing:.12em;font-size:clamp(1.25rem,2vw,2rem)}.fullscreen-blocker p{max-width:42rem;color:color-mix(in srgb, var(--color-text) 85%, transparent)}.fullscreen-blocker-btn{letter-spacing:.08em;justify-content:center;align-items:center;gap:.4rem;margin-top:.5rem;padding:.45rem .7rem;font-size:.74rem;display:inline-flex}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--color-text) var(--color-surface)}}::-webkit-scrollbar{background-color:var(--color-surface);width:8px;height:8px}::-webkit-scrollbar-track{background-color:var(--color-surface)}::-webkit-scrollbar-thumb{background-color:var(--color-text);opacity:.2}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text);cursor:grab}::-webkit-scrollbar-corner{background:var(--color-surface)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){.app-layout{flex-direction:column;flex:1;height:calc(100dvh - 2rem);max-height:calc(100dvh - 2rem);overflow:hidden;padding-bottom:0!important}.app-header{height:2rem;padding:0 .5rem 0 .45rem}.app-header-title-name{font-size:.82rem;line-height:normal}.header-logo-img{height:1.3rem;margin:0;padding:0;display:block}.header-link-btn.header-btn--mobile-only{display:inline-flex!important}.header-link-label{display:none}.header-link-btn{place-items:center;min-width:2rem;height:2rem;padding:0;display:inline-grid}.app-nav{width:100%;height:calc(3.6rem + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border);z-index:100;padding:0;padding-bottom:env(safe-area-inset-bottom,0px);background-color:#000;flex-direction:row;position:fixed;bottom:0;left:0;right:0}.nav-logo-img{display:none}.nav-links-wrap{white-space:nowrap;scrollbar-width:none;flex-direction:row;flex:1;justify-content:flex-start;align-items:stretch;gap:0;height:100%;overflow-x:auto}.nav-links-wrap::-webkit-scrollbar{display:none}.nav-export-wrap{display:none!important}.nav-icon-btn--mobile-only{display:grid!important}.nav-icon-btn{box-sizing:border-box;border-radius:0;flex:1 0;width:auto;min-width:3.2rem;height:100%;padding:0}.nav-icon-btn:after{display:none}.nav-icon-btn[data-tooltip*=SETTINGS],.nav-icon-btn[aria-label*=SETTINGS]{display:none!important}main{flex-direction:column-reverse;flex:1;min-height:0;position:relative;overflow:hidden;margin-bottom:calc(3.6rem + env(safe-area-inset-bottom,0px))!important;height:calc(100% - 3.6rem - env(safe-area-inset-bottom,0px))!important}.flex-v{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden;height:100%!important}.zoomable-wrap{flex:1;width:100%;min-height:0;position:relative;height:100%!important}.zoomable-outer{touch-action:none;width:100%;height:100%;position:absolute;inset:0}}.bv-section{flex-direction:column;gap:.55rem;margin-bottom:.9rem;display:flex}.bv-section:last-child{margin-bottom:0}.bv-label{letter-spacing:.08em;color:var(--color-text-subtle);text-transform:uppercase;font-size:.875rem}.bv-controls-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.bv-controls-row>.bv-option-group{flex:0 1 max-content;min-width:0}.bv-option-group{flex-wrap:wrap;gap:.4rem;display:flex}.bv-option-btn{background:var(--input-surface);letter-spacing:.04em;white-space:nowrap;padding:.44rem .8rem;font-size:14px;font-weight:400;line-height:1.2}.bv-option-btn.icon-btn{align-items:center;gap:.4rem;display:inline-flex}.danger-btn{border-color:var(--color-danger);color:var(--color-danger-text,var(--color-danger))}.danger-btn:hover:not(:disabled){border-color:var(--color-danger-hover);color:var(--color-danger-hover)}.dither-toggle-btn[data-dither-enabled=true][data-selected=true]{outline:1px solid var(--color-success)}.size-controls-ratio-buttons{flex-wrap:nowrap}.slider-label-wrap{align-items:center;display:flex;position:relative}.crop-preview-container{justify-content:center;align-items:center;margin:.75rem 0 1.25rem;display:flex}.crop-preview-frame{border:1px solid #3c3c3c;box-shadow:0 6px 20px #000000b3}.palette-color-grid{grid-template-columns:repeat(auto-fill,minmax(7.25rem,1fr));gap:.45rem;display:grid}.palette-row-inline{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.palette-name-input{letter-spacing:.04em;width:100%;min-width:0;padding:.35rem .6rem;font-size:1rem}.palette-save-row{flex-wrap:nowrap;align-items:center}.palette-save-row .palette-name-input{flex:1;height:2.2rem}.palette-save-row .bv-option-btn{flex-shrink:0;align-items:center;height:2.2rem;display:inline-flex}.palette-color-grid--hidden{opacity:.58}.color-list-divider{letter-spacing:.08em;color:var(--color-text-muted);margin:.5rem 0 .35rem;font-size:.72rem}.palette-color-chip{border:1px solid var(--color-border-subtle);letter-spacing:.05em;text-transform:uppercase;align-content:start;min-height:2.15rem;padding:.4rem .5rem;font-size:.74rem;display:grid}.palette-floating-editor{z-index:30;align-content:start;gap:.38rem;width:9.5rem;padding:.48rem;display:grid;position:absolute;top:1rem;left:calc(100% + .65rem)}.palette-custom-swatch{border:1px solid var(--color-border-subtle);cursor:pointer;text-align:left;align-content:center;justify-items:start;min-height:2.25rem;padding:.35rem .42rem;display:grid;position:relative}.palette-custom-swatch--selected{border-color:var(--color-text);box-shadow:inset 0 0 0 1px var(--color-text-subtle)}.palette-custom-swatch--hidden{filter:saturate(.78)}.palette-custom-swatch-text{letter-spacing:.04em;text-transform:uppercase;font-size:.68rem}.palette-custom-swatch-hint{letter-spacing:.08em;opacity:.72;font-size:.54rem}.palette-custom-swatch-delete-wrap{opacity:0;transition:opacity .12s;position:absolute;top:.22rem;right:.22rem}.palette-custom-swatch:hover .palette-custom-swatch-delete-wrap,.palette-custom-swatch--selected .palette-custom-swatch-delete-wrap{opacity:1}.palette-custom-swatch-delete{border:1px solid var(--color-danger);background:var(--color-bg);width:1rem;height:1rem;color:var(--color-danger-text);cursor:pointer;place-items:center;padding:0;line-height:0;transition:border-color .12s,background-color .12s;display:grid}.palette-custom-swatch-delete:hover{border-color:var(--color-danger-hover);background:var(--color-danger-bg-hover);color:var(--color-text)}.palette-editor-preview{aspect-ratio:4/3;border:1px solid var(--color-border-subtle);cursor:pointer;width:100%;display:block}.palette-editor-preview input{opacity:0;cursor:pointer;width:100%;height:100%}.palette-color-chip--hidden{filter:saturate(.85)}.palette-library-list{gap:1rem;display:grid}.palette-library-group{gap:.65rem;display:grid}.palette-library-group-title{letter-spacing:.08em;color:var(--color-text-subtle);text-transform:uppercase;margin:0 0 .15rem;font-size:1rem}.palette-add-color-btn{background:var(--input-surface);color:var(--color-text);cursor:pointer;border:none;border-radius:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;padding:0;transition:background-color .15s,color .15s;display:inline-flex}.palette-add-color-btn:hover{background:var(--input-surface-hover)}.palette-library-card{position:relative;overflow:hidden}.palette-library-item{border:1px solid var(--color-border);background:var(--color-bg-subtle);width:100%;color:var(--color-text);text-align:left;cursor:pointer;flex-direction:column;padding:.65rem .75rem 1.45rem;transition:border-color .15s,background-color .15s;display:flex;position:relative;overflow:hidden}.palette-library-item:hover{border-color:var(--color-border-hover);background:var(--color-bg-subtle-hover)}.palette-library-delete{border:1px solid var(--color-danger);background:var(--color-bg);width:1.2rem;height:1.2rem;color:var(--color-danger-text);cursor:pointer;opacity:0;z-index:2;border-radius:0;place-items:center;padding:0;line-height:0;transition:opacity .12s,border-color .12s,background-color .12s;display:grid;position:absolute;top:.35rem;right:.35rem}.palette-library-card:hover .palette-library-delete{opacity:1}.palette-library-delete:hover{border-color:var(--color-danger-hover);background:var(--color-danger-bg-hover);color:var(--color-text)}.palette-library-head{align-items:baseline;gap:.45rem;padding-right:1.5rem;display:flex}.palette-library-name{letter-spacing:.04em;color:var(--color-text);text-transform:uppercase;font-size:.95rem;font-weight:500}.palette-library-count{letter-spacing:.03em;color:var(--color-text-muted);font-size:.78rem;font-weight:400}.palette-library-swatches{flex-direction:row;width:100%;height:16px;display:flex;position:absolute;bottom:0;left:0;right:0}.palette-library-swatches>span{flex:1;height:100%}.import-current-file{color:var(--color-text-subtle);overflow-wrap:anywhere;font-size:1rem}.import-dropzone{border:1px dashed var(--color-border-hover);background:var(--color-bg-subtle);letter-spacing:.04em;text-align:center;padding:.85rem .6rem;font-size:1rem;transition:background-color .15s,border-color .15s}.import-dropzone.active{background:var(--color-bg-subtle-hover);border-color:var(--color-border-focus)}.import-name-input{width:100%;height:2.2rem;font-family:var(--font-mono,"Sono", monospace);letter-spacing:.03em;outline:none;padding:.35rem .6rem;font-size:1rem}.export-name-input-row{align-items:center;gap:.55rem;display:flex}.export-name-input-row .import-name-input{flex:1;min-width:0}.export-name-format{letter-spacing:.08em;color:var(--color-text-muted);flex-shrink:0;font-size:1rem}.export-btn,.import-btn{align-items:center;gap:.4rem;display:flex}@media (width>=769px){.cam-facing-toggle-btn{display:none!important}}.import-export-status{color:var(--color-text-subtle);margin-top:.2rem;font-size:.76rem}.import-export-hint{color:var(--color-text-muted);letter-spacing:.03em;margin-top:.25rem;font-size:.76rem}.large-file-overlay{background:var(--color-backdrop);backdrop-filter:var(--filter-floating-blur);z-index:500;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.large-file-dialog{background:var(--color-bg);border:1px solid var(--color-border);width:100%;max-width:380px;box-shadow:var(--shadow-floating);padding:1.35rem 1.5rem 1.25rem}.large-file-dialog-title{letter-spacing:.09em;color:var(--color-text);margin-bottom:.7rem;font-size:1.1rem}.large-file-dialog-dims{letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.55rem;font-size:.95rem}.large-file-dialog-body{color:var(--color-text-subtle);margin-bottom:1.1rem;font-size:1rem;line-height:1.55}.large-file-dialog-actions{flex-direction:column;gap:.35rem;display:flex}.large-file-dialog-actions .bv-option-btn{text-align:center;justify-content:center;width:100%}.large-file-btn-reduce{border-color:var(--color-border-hover);color:var(--color-text)}.export-preview-floating{width:100%;max-width:100%;height:auto;image-rendering:pixelated;margin-top:.6rem;display:block}.export-preview-hint{color:var(--color-text-muted);text-align:center;letter-spacing:.03em;margin-top:.4rem;font-size:.74rem}.camera-shoots-section{margin-top:1.5rem}.camera-shoots-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.camera-shoots-vertical-list{flex-direction:column;gap:1.25rem;display:flex}.camera-shoot-card{border:1px solid var(--color-border);background:var(--input-surface);padding:.85rem}.camera-shoot-card-top{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.camera-shoot-label{color:var(--color-text-muted);font-size:.7rem}.camera-shoot-img{width:100%;margin-bottom:.75rem;display:block}@media (width<=768px){.import-dropzone-section,.pipeline-section,.force-cpu-section{display:none}}.gallery-grid{--gallery-thumb-size:9.4rem;grid-template-columns:repeat(auto-fill, minmax(var(--gallery-thumb-size), var(--gallery-thumb-size)));contain:layout paint;justify-content:start;gap:.4rem;display:grid}@container aside-panel (width<=34rem){.gallery-grid{--gallery-thumb-size:7.2rem}}@container aside-panel (width<=26rem){.gallery-grid{--gallery-thumb-size:5.8rem}}.gallery-thumb{border:1px solid var(--color-border-subtle);background:var(--color-bg-subtle);cursor:pointer;width:100%;height:100%;padding:0;transition:border-color .12s;position:relative;overflow:hidden}.gallery-thumb-wrap{width:var(--gallery-thumb-size);height:var(--gallery-thumb-size);position:relative}.gallery-thumb:hover{border-color:var(--color-border-hover)}.gallery-thumb img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;display:block}.gallery-thumb-label{background:var(--color-backdrop);color:var(--color-text-subtle);letter-spacing:.05em;text-align:center;opacity:0;white-space:nowrap;text-overflow:ellipsis;padding:.2rem .28rem;font-size:.72rem;transition:opacity .12s;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.gallery-thumb:hover .gallery-thumb-label,.gallery-thumb--active .gallery-thumb-label{opacity:1}.gallery-thumb--active{border-color:var(--color-text);border-width:2px}.gallery-thumb-delete{border:1px solid var(--color-border-subtle);background:var(--color-floating-bg,#000000d9);width:1.7rem;height:1.7rem;color:var(--color-text-subtle);cursor:pointer;opacity:0;place-items:center;padding:0;line-height:0;transition:opacity .12s,border-color .12s,background-color .12s;display:grid;position:absolute;top:.22rem;right:.22rem}.gallery-thumb-wrap:hover .gallery-thumb-delete,.gallery-thumb-wrap--active .gallery-thumb-delete,.gallery-thumb-delete:hover,.gallery-thumb-delete:focus,.gallery-thumb-delete:focus-visible{pointer-events:auto;opacity:1!important}.gallery-thumb-delete:hover{border-color:var(--color-border-hover);background:var(--color-bg,#12120f);color:var(--color-text,#eeeedf)}#root.is-resizing-aside .gallery-thumb,#root.is-resizing-aside .gallery-thumb-label,#root.is-resizing-aside .gallery-thumb-delete{transition:none!important}.gallery-thumb-anim-badge{background:color-mix(in srgb, var(--color-bg) 90%, transparent);color:var(--color-text);opacity:.85;pointer-events:none;border-radius:2px;place-items:center;padding:.22rem;line-height:0;display:grid;position:absolute;top:.2rem;left:.2rem}@media (width<=768px){.gallery-grid{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x proximity;contain:layout;gap:.5rem;width:100%;min-width:0;max-width:100%;padding-bottom:6px;flex-flow:row!important;display:flex!important;overflow:auto hidden!important}.gallery-thumb-wrap{scroll-snap-align:start;flex:0 0 6.5rem!important;width:6.5rem!important;min-width:6.5rem!important;height:6.5rem!important}}
