@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-cyrillic-ext-500-normal.Yta7XZ9C.woff2)format("woff2"),url(/_astro/cormorant-garamond-cyrillic-ext-500-normal.lsPpqi9g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-cyrillic-500-normal.CyAY5ZLS.woff2)format("woff2"),url(/_astro/cormorant-garamond-cyrillic-500-normal.DkJXBcIH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-vietnamese-500-normal.BZGLGj12.woff2)format("woff2"),url(/_astro/cormorant-garamond-vietnamese-500-normal.DqXqCC0q.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-ext-500-normal.CH1kM7og.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-ext-500-normal.DYeaGGzO.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:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-500-normal.BsRWmXhO.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-500-normal.zIXX3Q-H.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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-sans-latin-ext-400-normal.BtiwyxMk.woff2)format("woff2"),url(/_astro/dm-sans-latin-ext-400-normal.BjWJ59Pq.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:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/dm-sans-latin-400-normal.CW0RaeGs.woff2)format("woff2"),url(/_astro/dm-sans-latin-400-normal.BwCSEQnW.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}:root{color-scheme:dark;--bg:#1c2126;--panel:#252b31;--canvas:#0f1215;--text:#e9eef2;--muted:#a8b3bc;--line:#363f46;--accent:#a9d4ea;--well:var(--canvas);--rim-lit:#94a3af;--rim-shade:#73808b;--soft-light:#c8e1f014;--soft-dark:#0009;--well-dark:#0009;--well-light:#c8e1f00f;--hover:#323a41;--lock:#a2aeb7;--placeholder:#a2aeb7;--count-bg:#323a41;--dot:#a8b3bc;--guide:#2d353b;--scrollbar:#5d6973;--primary:#a9d4ea;--primary-hover:#c3e3f3;--on-primary:#12181c;--r-control:8px;--r-tile:10px;--r-slab:16px;--ease:cubic-bezier(.22,.8,.24,1);--paper-accent:#3f5a6e;--paper-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8 .35' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .25 0 0 0 0 .3 0 0 0 0 .36 0 0 0 .06 0'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23f)'/%3E%3C/svg%3E");font-synthesis:none;scroll-behavior:smooth;scrollbar-color:var(--scrollbar) var(--bg);font-family:DM Sans,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--text);margin:0}::selection{background:var(--text);color:var(--bg)}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button,a,input,select,textarea,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--text)}button{transition:background .28s var(--ease),color .28s var(--ease),box-shadow .28s var(--ease);box-shadow:var(--raised);color:var(--text);border-radius:var(--r-control);background:0 0;border:0;min-height:40px;padding:8px 12px;font-size:12px}@media (hover:hover){button:hover:not(:disabled){background:var(--hover)}}button svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}svg{display:block}h1,h2,h3,p{margin:0}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1500px;margin:auto;padding:23px 4%;display:flex}.wordmark{align-items:center;text-decoration:none;display:flex}.wordmark img{width:auto;height:30px;display:block}:root[data-theme=light] .logo-dark,:root:not([data-theme=light]) .logo-light{display:none}.site-header nav{align-items:center;gap:35px;font-size:12px;display:flex}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline}.local-indicator{color:var(--muted);align-items:center;gap:8px;display:flex}i{background:var(--dot);border-radius:50%;width:5px;height:5px;display:inline-block}main{max-width:1400px;margin:auto;padding:0 36px}h1{letter-spacing:-.03em;font-family:Cormorant Garamond,serif;font-size:49px;font-weight:500;line-height:1}h1 em,h2 em{font-weight:500}.workshop{box-shadow:var(--slab);border-radius:var(--r-slab);background:var(--panel);grid-template-columns:minmax(0,1fr) 350px;align-items:start;scroll-margin-top:15px;display:grid}.history-actions{gap:4px;display:flex}.history-actions button{width:38px;min-height:38px;color:var(--muted);padding:9px}@media (hover:hover){.history-actions button:hover{color:var(--text)}}#guide-layer{fill:none;stroke:var(--guide);stroke-width:.8px}#guide-layer path{stroke-dasharray:3 7}#selection-layer,#stave{position:relative}.view-actions{gap:6px;display:flex}.view-actions button{min-height:34px;color:inherit;padding:5px 9px;font-size:11px}.canvas-exports button{flex:1;justify-content:center;align-items:center;gap:7px;display:flex}.canvas-exports button svg{width:15px;height:15px}.comparison-preview{text-align:center;flex:1;min-width:0}.comparison-label{text-align:center;color:var(--muted);margin-top:6px;font-size:11px;display:block}.comparison-preview .text-button{margin-top:3px;font-size:11px}.controls{padding:22px}.control-heading,.section-label{justify-content:space-between;align-items:center;gap:12px;display:flex}.control-heading h2{letter-spacing:-.02em;font-size:17px;font-weight:500}.text-button{color:var(--muted);background:0 0;min-height:34px;padding:6px;font-size:11px}@media (hover:hover){.text-button:hover:not(:disabled){color:var(--text);text-underline-offset:3px;background:0 0;text-decoration:underline}}.presets{grid-template-columns:repeat(3,1fr);gap:9px;margin:17px 0 14px;display:grid}.presets button{color:var(--muted);padding:4px 8px 8px;font-size:11px}.presets svg{stroke:none;width:100%;height:48px}.primary{background:var(--primary);color:var(--on-primary);justify-content:center;align-items:center;gap:10px;min-height:46px;padding:13px 15px;font-size:12px;font-weight:500;display:flex}@media (hover:hover){.primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:var(--raised-soft)}}#shuffle{width:100%}.control-help{color:var(--muted);margin-top:9px;font-size:11px;line-height:1.6}.section-label{border-top:1px solid var(--line);margin:21px 0 13px;padding-top:13px}.section-label h3{font-size:13px;font-weight:500}.layout-row,.tip-row,.variety-row{align-items:center;gap:9px;margin:12px 0;font-size:12px;display:flex}.layout-row label,.tip-row label{margin-right:auto}.layout-row select,.tip-row select{width:128px}.lock-button{width:32px;height:32px;min-height:32px;color:var(--lock);flex-shrink:0;justify-content:center;align-items:center;padding:7px;display:inline-flex}.lock-button svg{width:15px;height:15px}.sliders{gap:14px;margin-top:20px;display:grid}.slider-label{justify-content:space-between;align-items:center;min-height:32px;margin-bottom:0;font-size:12px;display:flex}.slider-label>div{align-items:center;gap:3px;display:flex}.number-input{background:var(--well);width:51px;height:30px;box-shadow:var(--pressed);color:var(--muted);border-radius:var(--r-control);text-align:center;font-variant-numeric:tabular-nums;appearance:textfield;border:0;padding:4px 2px;font-size:11px}.number-input::-webkit-inner-spin-button{appearance:none}input[type=range]{--range-fill:50%;-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;width:100%;height:26px;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--accent) var(--range-fill),var(--well) var(--range-fill));height:6px;box-shadow:var(--groove);border-radius:3px}input[type=range]::-moz-range-track{background:linear-gradient(to right,var(--accent) var(--range-fill),var(--well) var(--range-fill));height:6px;box-shadow:var(--groove);border-radius:3px}input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);width:16px;height:16px;box-shadow:var(--thumb);border:0;border-radius:50%;margin-top:-5px}input[type=range]::-moz-range-thumb{background:var(--accent);width:16px;height:16px;box-shadow:var(--thumb);border:0;border-radius:50%}select{background:var(--well);box-shadow:var(--pressed);border-radius:var(--r-control);color:var(--text);border:0;max-width:100%;min-height:38px;padding:8px;font-size:12px}label{font-size:12px}.control-section{border-top:1px solid var(--line);margin-top:20px;padding:18px 0 0}.control-section summary{cursor:pointer;min-height:26px;font-size:13px;font-weight:500}.section-content{padding-top:5px}.section-content>label{margin:16px 0 8px;display:block}.section-content>select{width:100%}.variety-row{justify-content:space-between;margin:4px 0}.varieties{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.varieties button{color:var(--muted);min-height:66px;padding:8px 5px;font-size:11px}.varieties svg{width:35px;height:27px;margin:0 auto 5px}.ending-picker{grid-template-columns:repeat(4,1fr);gap:6px;margin-top:10px;display:grid}.ending-picker button{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:63px;padding:7px 2px;font-size:11px;display:flex}.ending-picker svg{width:18px;height:28px}.ink-row{align-items:center;gap:12px;padding:10px 0;display:flex}.ink-row>div{gap:4px;margin-left:auto;display:flex}.swatch{place-items:center;width:38px;height:38px;min-height:38px;padding:10px;display:grid}.swatch span{background:var(--swatch);border-radius:50%;width:16px;height:16px;display:block}#ink-name{color:var(--muted);min-width:35px;font-size:11px}#arm-fields .slider-field{margin-top:16px}#arm-fields output{color:var(--muted);font-size:11px}.arm-actions{gap:7px;margin-top:13px;display:grid}.arm-actions button{font-size:11px}#arm-lock-count{color:var(--muted);margin-left:5px;font-size:11px;font-weight:400}.section-heading{justify-content:space-between;align-items:center;gap:25px;margin-bottom:20px;display:flex}.section-heading h2{letter-spacing:-.02em;font-family:Cormorant Garamond,serif;font-size:31px;font-weight:500}.section-heading p{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.7}.recent-section{border-bottom:1px solid var(--line);padding:36px 0}.recent-list{scrollbar-width:thin;gap:12px;margin-inline:-8px;padding:8px 10px 16px;display:flex;overflow-x:auto}.recent-list>button{background:var(--canvas);flex:0 0 95px;min-width:0;padding:4px 5px 8px}.recent-list svg{stroke:none;width:83px;height:83px}.recent-list span{color:var(--muted);font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:11px}.collection-actions{gap:8px;display:flex}.collection-actions button{font-size:11px}.save-form{align-items:end;gap:12px;max-width:600px;display:flex}.save-form .primary{flex-shrink:0}.note-details{max-width:600px;margin-top:14px}.note-details summary{color:var(--muted);cursor:pointer;font-size:11px}.note-details textarea{background:var(--well);width:100%;box-shadow:var(--pressed);color:var(--text);border-radius:var(--r-control);resize:vertical;border:0;margin-top:10px;padding:12px;font-size:12px;display:block}.note-details textarea::placeholder{color:var(--placeholder)}#collection-status{color:var(--text);min-height:28px;padding-top:10px;font-size:12px;line-height:1.6}.favorite-list{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:20px;margin-top:15px;display:grid}.saved-design{min-width:0}.saved-preview{background:var(--canvas);border-radius:var(--r-tile);width:100%;padding:8px;display:block}.saved-preview svg{stroke:none;width:100%;height:170px}.saved-design h3{overflow-wrap:anywhere;margin:12px 0 7px;font-size:13px;font-weight:500}.saved-note{color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;max-height:72px;font-size:11px;line-height:1.6;overflow:auto}.saved-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.saved-actions button{min-height:34px;padding:6px 9px;font-size:11px}.empty-state{color:var(--muted);grid-column:1/-1;max-width:65ch;padding:28px 0;font-size:13px;line-height:1.8}.about{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:70px;padding:40px 0 55px;display:grid}.about h2{letter-spacing:-.02em;font-family:Cormorant Garamond,serif;font-size:37px;font-weight:500;line-height:1.1}.about p{color:var(--muted);text-wrap:pretty;max-width:62ch;font-size:13px;line-height:1.75}.about details{border-bottom:1px solid var(--line);padding:16px 0}.about summary{cursor:pointer;font-size:12px}.about details p{padding-top:12px}footer{border-top:1px solid var(--line);max-width:1500px;color:var(--muted);justify-content:space-between;gap:15px;margin:auto;padding:24px 4%;font-size:11px;display:flex}footer>span:first-child{letter-spacing:.15em;color:var(--text)}footer a{text-decoration:none}.skip{background:var(--text);color:var(--bg);z-index:30;padding:12px;position:absolute;top:-100px}.skip:focus{top:10px;left:10px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.noscript,.notice{padding:15px;font-size:12px;line-height:1.6}.notice{border:1px solid var(--line);color:var(--text);margin-bottom:15px}#restore-removed{color:var(--text);margin:5px 0 10px}@media (width<=1050px){main{padding:0 24px}.workshop{grid-template-columns:minmax(0,1fr) 320px}.controls{padding:18px}.about{gap:35px}}@media (width<=740px){main{padding:0 16px}.site-header{padding:18px 16px}.wordmark img{height:24px}.site-header nav{font-size:11px}.local-indicator{display:none}h1{max-width:330px;font-size:41px;line-height:1.03}h1 em{display:block}.workshop{scroll-margin-top:0;display:block}.history-actions{gap:2px}.history-actions button{width:34px;height:32px;min-height:32px;padding:7px}.controls{padding:20px}.control-heading h2{font-size:17px}.presets{margin-top:12px}.presets svg{height:53px}.primary{min-height:46px}.slider-label{font-size:11px}.slider-label>div{gap:0}.layout-row select{margin-left:auto}.layout-row{font-size:12px}.tip-row select{flex:1;max-width:145px}.varieties button{min-height:70px;font-size:11px}.ending-picker{grid-template-columns:repeat(4,1fr);gap:7px}.ending-picker button{min-height:68px;font-size:11px}.ending-picker svg{height:30px}.swatch{width:42px;height:42px;min-height:42px}.swatch span{width:19px;height:19px}.recent-section{padding:28px 0 22px}.section-heading{gap:15px;margin-bottom:15px;display:block}.section-heading h2{font-size:29px}.section-heading p{font-size:11px}.collection-actions{flex-wrap:wrap;margin-top:15px}.save-form{gap:9px}.save-form .primary{padding:12px;font-size:11px}.favorite-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.saved-preview svg{height:130px}.saved-actions{gap:5px}.saved-actions button{flex:1;min-height:34px;padding:5px;font-size:11px}.about{grid-template-columns:1fr;gap:24px;padding:30px 0 40px}.about h2{font-size:33px}.comparison-label{margin-top:0;font-size:11px}.comparison-preview .text-button{min-height:25px;padding:4px;font-size:11px}footer{flex-wrap:wrap;padding:22px 16px}footer>span:nth-child(2){display:none}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}#arm-editor{scroll-margin-top:25px}@media (width<=740px){#arm-editor{scroll-margin-top:0}.view-actions{gap:4px}.view-actions button{padding:4px 6px}}.workshop{margin-top:14px}.canvas-wrap{--canvas-w:calc(min(100vw,1400px) - 422px);transition:background-color .42s var(--ease);--stage:max(280px,min(calc(100svh - 204px),calc(var(--canvas-w) - 270px)));background:var(--canvas);min-width:0;color:var(--text);border-radius:var(--r-slab) 0 0 var(--r-slab);grid-template:"title art""hist art"1fr"meta art""save art""view art""exp exp""note stat"/230px minmax(0,1fr);align-items:center;display:grid;position:sticky;top:14px}.hero-title{grid-area:title;align-self:start;min-width:0;padding:24px 0 0 20px}.hero-title h1{letter-spacing:-.025em;text-wrap:balance;font-size:44px;line-height:1.02}.hero-lede{color:var(--muted);max-width:24ch;margin-top:10px;font-size:12px;line-height:1.6}.history-actions{grid-area:hist;align-self:start;padding:14px 0 0 12px}.hero-meta{min-width:0;color:var(--muted);letter-spacing:.04em;font-variant-numeric:tabular-nums;grid-area:meta;gap:3px;padding:0 0 10px 20px;font-size:11px;display:grid}.view-actions{flex-wrap:wrap;grid-area:view;padding:0 0 16px 20px}.preview-area{grid-area:art;justify-content:center;align-items:center;min-width:0;padding:8px 20px 8px 0;display:flex}.current-preview{flex:none;min-width:0}.artboard{width:var(--stage);height:var(--stage);place-items:center;display:grid;position:relative}.artboard>svg{grid-area:1/1;width:100%;height:100%}.canvas-tools{display:contents}.thumb-bar{display:none}.name-input{background:var(--well);width:100%;min-width:0;box-shadow:var(--pressed);border-radius:var(--r-control);color:var(--text);text-overflow:ellipsis;border:0;margin:0 0 3px;padding:5px 8px;font-size:12px;font-weight:500}.name-input::placeholder{color:var(--text)}.save-line{min-width:0;color:var(--muted);flex-wrap:wrap;grid-area:save;align-items:center;gap:2px 8px;padding:0 8px 10px 20px;font-size:11px;display:flex}.save-line:has(#save-state:empty){display:none}.save-line .text-button{min-height:20px;color:var(--text);text-underline-offset:3px;padding:0 2px;text-decoration:underline}#save-name{display:none}.export-options{gap:0;display:grid}.export-options label{margin:16px 0 8px;display:block}.export-options select{width:100%}.save-toggle.is-saved{color:var(--text)}.save-toggle.is-saved svg{fill:currentColor}.canvas-exports{border-top:1px solid var(--line);grid-area:exp;align-items:center;gap:8px;padding:12px 20px;display:flex}.appearance-note{color:var(--muted);grid-area:note;align-self:start;padding:0 20px 10px;font-size:11px}.canvas-wrap #status{max-width:65ch;color:var(--text);text-align:right;grid-area:stat;place-self:start end;padding:0 20px 10px;font-size:11px;line-height:1.5}.preview-area.is-comparing{min-height:var(--stage);align-items:flex-start;gap:16px}.is-comparing .current-preview{flex:1}.is-comparing .artboard,.comparison-preview>svg{aspect-ratio:1;width:100%;height:auto}.count{background:var(--count-bg);letter-spacing:0;vertical-align:middle;border-radius:50%;justify-content:center;align-items:center;min-width:22px;height:22px;margin-left:6px;font-family:DM Sans,sans-serif;font-size:11px;display:inline-flex}.collection{scroll-margin-top:25px}.collection>summary{cursor:pointer;padding:26px 0}.collection>summary:hover h2{text-underline-offset:5px;text-decoration:underline 1px}.collection>summary h2{vertical-align:top;letter-spacing:-.02em;transition:color .28s var(--ease);font-family:Cormorant Garamond,serif;font-size:31px;font-weight:500;display:inline-block}.collection-hint{color:var(--muted);letter-spacing:0;margin-top:4px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:400;line-height:1.6;display:block}.collection-body{padding-bottom:40px}@media (width<=1180px){.canvas-wrap{--stage:min(calc(var(--canvas-w) - 30px),max(280px,calc(100svh - 300px)));grid-template:"title hist""art art""meta meta""save save""exp exp""note note"/minmax(0,1fr) auto}.hero-title{padding:14px 0 6px 14px}.hero-title h1{font-size:32px}.hero-lede{display:none}.history-actions{padding:10px 10px 0 0}.preview-area{padding:0}.save-line{padding:0 14px 8px}.hero-meta{justify-self:start;padding:6px 0 8px 14px}.view-actions{grid-area:meta;justify-self:end;padding:6px 14px 8px 0}.canvas-exports{padding:10px 14px}.appearance-note,.canvas-wrap #status{padding:0 14px 8px}.canvas-wrap #status{text-align:left;grid-area:note;justify-self:start}.canvas-wrap:has(#status:not(:empty)) .appearance-note{display:none}.preview-area.is-comparing{min-height:0;padding:0 14px}}@media (width<=1050px){.canvas-wrap{--canvas-w:calc(100vw - 368px)}}@media (height<=560px){.canvas-wrap{position:static}}@media (width<=740px),(pointer:coarse){.lock-button,.history-actions button,.swatch{width:44px;min-width:44px;height:44px;min-height:44px}.history-actions button{padding:13px}.lock-button{padding:14px}.swatch{padding:13px}.text-button{min-width:44px}.text-button,.view-actions button,.canvas-exports button,.saved-actions button,.arm-actions button,.collection-actions button,#restore-removed,.save-line .text-button{min-height:44px}.number-input{width:54px;height:44px;font-size:16px}select,.name-input,.note-details textarea{font-size:16px}select,.name-input{min-height:44px}input[type=range]{height:44px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px;margin-top:-9px}input[type=range]::-moz-range-thumb{width:24px;height:24px}.control-section summary,.about summary,.note-details summary{box-sizing:border-box;min-height:44px;padding:13px 0;display:list-item}.control-section{padding-top:6px}.site-header a,footer a{align-items:center;min-height:44px;display:inline-flex}.site-header{padding-block:12px}}@media (width<=740px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.workshop{margin-top:6px}.canvas-wrap{--stage:min(calc(100vw - 56px),36svh);z-index:5;border-radius:var(--r-slab) var(--r-slab) 0 0;grid-template:"title hist""art art""stat stat"/minmax(0,1fr) auto;top:0;box-shadow:0 7px 12px -9px #000}.hero-title{align-self:center;padding:0 0 0 12px}.hero-title h1{font-size:19px}.history-actions{justify-self:end;padding:0}#undo,#quick-save{display:none}.preview-area{padding:0}.canvas-wrap #status{text-align:center;grid-area:stat;justify-self:stretch;min-height:22px;max-height:40px;padding:2px 12px 4px;overflow:auto}.canvas-tools{left:0;right:0;bottom:calc(60px + env(safe-area-inset-bottom));z-index:19;background:var(--panel);box-shadow:var(--lift);visibility:hidden;transition:transform .42s var(--ease),visibility .42s;gap:10px;padding:12px;display:grid;position:fixed;transform:translateY(calc(100% + 72px))}.canvas-tools.is-open{visibility:visible;transition:transform .42s var(--ease),visibility 0s;transform:none}.canvas-tools>*{grid-area:auto}.hero-meta{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;padding:0}.view-actions{flex-wrap:nowrap;justify-self:stretch;gap:6px;padding:0}.view-actions button{flex:1;padding:4px}.canvas-exports{border-top:0;gap:6px;padding:0}.canvas-exports button{min-width:0;padding:7px 5px}.canvas-wrap .appearance-note,.canvas-wrap:has(#status:not(:empty)) .appearance-note{padding:0;display:block}#shuffle{display:none}.save-line{white-space:nowrap;flex-wrap:nowrap;grid-area:title;align-self:center;gap:6px;padding:0 0 0 12px}.save-line .text-button{flex:none}#save-name{text-overflow:ellipsis;min-width:0;color:var(--text);text-align:left;flex:0 auto;font-size:12px;font-weight:500;text-decoration:none;display:block;overflow:hidden}.canvas-wrap:has(#save-state:not(:empty)) .hero-title{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.export-options{grid-template-columns:1fr 1fr;gap:8px}.export-options label{color:var(--muted);margin:0 0 4px;font-size:11px}.control-help:has(+.section-label){margin-top:14px}.sliders{grid-template-columns:1fr;gap:6px}.thumb-bar{z-index:20;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--canvas);box-shadow:var(--lift);align-items:center;gap:6px;display:flex;position:fixed;bottom:0;left:0;right:0}.thumb-bar button{flex:none;min-height:44px}.thumb-bar>button:not(.primary):not(#bar-tools){width:44px;padding:12px}.thumb-bar .primary{white-space:nowrap;flex:1;gap:6px;min-width:0;padding:8px 6px}#bar-tools{align-items:center;gap:5px;padding:8px;display:flex}#bar-tools svg{width:15px;height:15px}.preview-area.is-comparing{gap:6px;min-height:0;padding:0 8px}.is-comparing .artboard{height:auto}.comparison-label{margin-top:2px}.comparison-preview .text-button{min-height:44px;padding:0 6px}.collection>summary{padding:20px 0}.collection>summary h2{font-size:29px}}@media (width<=740px) and (height<=700px){.canvas-wrap:has(.canvas-tools.is-open){--stage:max(96px,calc(100svh - 520px))}.canvas-tools{gap:6px;padding:8px 12px}}:root[data-theme=light]{color-scheme:light;--bg:#e4e9ec;--panel:#eff2f4;--canvas:#f5f7f8;--text:#262c31;--muted:#56616a;--line:#cdd4d9;--accent:#3f5a6e;--well:#dfe4e8;--rim-lit:#727d87;--rim-shade:#5f6a73;--soft-light:#ffffffd9;--soft-dark:#32414e3d;--well-dark:#32414e42;--well-light:#ffffffb3;--hover:#dfe4e8;--lock:#5f6a73;--placeholder:#56616a;--count-bg:#d3d9dd;--dot:#56616a;--guide:#cfd6da;--scrollbar:#9aa5ad;--primary:#3f5a6e;--primary-hover:#324859;--on-primary:#f5f7f8}:root[data-theme=light] body{background:linear-gradient(180deg,#e8edf0,#dfe5e9) fixed var(--bg)}[data-canvas=board] .canvas-wrap{color-scheme:dark;--bg:#1c2126;--panel:#252b31;--canvas:#0f1215;--text:#e9eef2;--muted:#a8b3bc;--line:#363f46;--accent:#a9d4ea;--well:#090b0d;--rim-lit:#94a3af;--rim-shade:#73808b;--soft-light:#c8e1f014;--soft-dark:#0009;--well-dark:#0009;--well-light:#c8e1f00f;--hover:#323a41;--lock:#a2aeb7;--placeholder:#a2aeb7;--count-bg:#323a41;--dot:#a8b3bc;--guide:#2d353b;--scrollbar:#5d6973}[data-canvas=paper] .canvas-wrap{color-scheme:light;--text:#262c31;--muted:#56616a;--line:#cdd4d9;--accent:var(--paper-accent);--panel:#f5f7f8;--canvas:#f5f7f8;--well:transparent;--rim-lit:#727d87;--rim-shade:#5f6a73;--soft-light:#ffffffd9;--soft-dark:#32414e3d;--well-dark:#32414e42;--well-light:#ffffffb3;--hover:#e4e9ec;--guide:#cfd6da;background:var(--paper-grain),#f5f7f8}:root:not([data-ready])[data-canvas=paper] #stave>g{stroke:#2a3640}:root,.canvas-wrap{--raised-soft:-4px -4px 9px var(--soft-light),4px 4px 10px var(--soft-dark);--raised:inset 1px 1px 0 var(--rim-lit),inset -1px -1px 0 var(--rim-shade),var(--raised-soft);--pressed-soft:inset 3px 3px 6px var(--well-dark),inset -1px -1px 4px var(--well-light);--groove:inset 1px 1px 0 var(--rim-shade),inset -1px -1px 0 var(--rim-lit);--pressed:var(--groove),var(--pressed-soft);--selected:inset 0 0 0 1px var(--accent),inset 0 -3px 0 var(--accent),var(--pressed-soft);--thumb:2px 2px 4px var(--soft-dark),-1px -1px 2px var(--soft-light);--slab:-6px -6px 18px var(--soft-light),9px 9px 25px var(--soft-dark);--lift:0 -3px 6px var(--soft-light),0 -8px 20px var(--soft-dark)}button:active:not(:disabled),[data-canvas=paper] .canvas-wrap button:active:not(:disabled){background:var(--well);box-shadow:var(--pressed)}button:disabled{opacity:.35;cursor:default;box-shadow:none}.text-button,.lock-button,.swatch,.text-button:active:not(:disabled){box-shadow:none}.primary{box-shadow:var(--raised-soft)}.primary:active:not(:disabled){box-shadow:var(--pressed-soft)}button[aria-pressed=true],button[aria-expanded=true]{background:var(--well);box-shadow:var(--selected);color:var(--accent);font-weight:500}button[aria-pressed=true]:hover:not(:disabled),button[aria-expanded=true]:hover:not(:disabled){background:var(--well)}button[aria-pressed=true]:active:not(:disabled){box-shadow:var(--selected)}.swatch[aria-pressed=true],.swatch[aria-pressed=true]:active:not(:disabled){box-shadow:inset 0 0 0 1px var(--swatch),inset 0 -3px 0 var(--swatch),var(--pressed-soft)}@media (width<=740px){[data-canvas=paper] .canvas-wrap:has(.canvas-tools.is-open)~.thumb-bar{box-shadow:none}[data-canvas=paper] .canvas-wrap .canvas-tools{box-shadow:0 -8px 20px var(--soft-dark)}}:root[data-theme=light] :is(.presets,.recent-list,.saved-preview) svg>g{stroke:var(--text)}:root[data-theme=light] .swatch[aria-pressed=true],#ink-dark[aria-pressed=true]{box-shadow:var(--selected)}.swatch span{box-shadow:inset 0 0 0 1px var(--rim-shade)}.ink-warning{border-radius:var(--r-control);background:var(--well);color:var(--text);flex-wrap:wrap;align-items:center;gap:2px 8px;margin-top:9px;padding:9px 11px;font-size:11px;line-height:1.6;display:flex}.ink-warning .text-button{min-height:24px;color:var(--text);text-underline-offset:3px;padding:0;text-decoration:underline}.theme-choice{gap:6px;display:inline-flex}.theme-choice button{min-height:34px;padding:5px 10px;font-size:11px}@media (width<=740px),(pointer:coarse){.theme-choice button,.ink-warning .text-button{min-height:44px}}@media (width<=740px){.theme-choice button:not(.is-current){display:none}.theme-choice button{min-width:44px;padding:5px 8px}.site-header nav{gap:12px}}@media (prefers-reduced-motion:no-preference){.theme-shift,.theme-shift *{transition:background-color .6s var(--ease),color .6s var(--ease),box-shadow .6s var(--ease)!important}}.library,.panel-column,.library-panel{display:contents}.library-bar{display:none}.recent-empty{color:var(--muted);font-size:12px;line-height:1.6}@media (width>=1024px){:root[data-js],:root[data-js] body{height:100dvh;overflow:hidden}:root[data-js] body{flex-direction:column;display:flex}:root[data-js] .site-header{flex:none;width:100%}:root[data-js] main{flex-direction:column;flex:1;width:100%;min-height:0;margin:0 auto;padding-bottom:14px;display:flex;position:relative}:root[data-js] .workshop{flex:1;grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0}:root[data-js] .canvas-wrap{scrollbar-width:thin;grid-template-rows:auto minmax(0,1fr) auto auto auto auto auto;height:100%;min-height:0;position:relative;top:auto;overflow-y:auto}:root[data-js] .preview-area{align-self:stretch;min-height:0;container-type:size}:root[data-js] .current-preview{place-items:center;display:grid}:root[data-js] .artboard{width:min(100cqw,100cqh);height:min(100cqw,100cqh)}:root[data-js] .preview-area.is-comparing{align-items:center;min-height:0}:root[data-js] .is-comparing .current-preview{display:block}:root[data-js] .is-comparing .artboard{width:min(100%,100cqh);height:auto;margin:auto}:root[data-js] .comparison-preview>svg{width:min(100%,100cqh);margin:auto}:root[data-js] .comparison-preview,:root[data-js] .is-comparing .current-preview{flex:1 1 0}:root[data-js] .panel-column{overscroll-behavior:contain;scrollbar-width:thin;border-radius:0 var(--r-slab) var(--r-slab) 0;min-height:0;display:block;overflow-y:auto}:root[data-js] .panel-column .about{border-top:1px solid var(--line);padding:24px 22px;display:block}:root[data-js] .panel-column .about h2{margin-bottom:14px;font-size:29px}:root[data-js] .panel-column footer{gap:4px;margin:0;padding:16px 22px 22px;display:grid}:root[data-js] .panel-column footer a{display:none}:root[data-js] .library{z-index:10;border-radius:var(--r-slab);background:var(--panel);width:350px;box-shadow:var(--slab);opacity:0;visibility:hidden;transition:opacity .42s var(--ease),transform .42s var(--ease),visibility .42s;flex-direction:column;display:flex;position:absolute;top:14px;bottom:14px;right:36px;transform:translate(18px)}:root[data-js] .library.is-open{opacity:1;visibility:visible;transition:opacity .42s var(--ease),transform .42s var(--ease),visibility 0s;transform:none}:root[data-js] .library-bar{flex:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px 12px;display:flex}:root[data-js] .library-tabs{gap:6px;display:flex}:root[data-js] .library-tabs button{min-height:34px;padding:5px 12px;font-size:12px}:root[data-js] .library-tabs button[aria-selected=true]{background:var(--well);box-shadow:var(--selected);color:var(--accent);font-weight:500}:root[data-js] .library-panel{overscroll-behavior:contain;scrollbar-width:thin;flex:1;min-height:0;padding:6px 18px 18px;display:block;overflow-y:auto}:root[data-js] .library[data-tab=collection] #panel-recent,:root[data-js] .library[data-tab=recent] #panel-collection{display:none}:root[data-js] .recent-section{border:0;padding:0}:root[data-js] .recent-section .section-heading{display:none}:root[data-js] .recent-list{grid-template-columns:repeat(4,1fr);gap:10px;margin:0;padding:4px;display:grid;overflow:visible}:root[data-js] .recent-list>button{min-width:0;padding:4px 4px 6px}:root[data-js] .recent-list svg{aspect-ratio:1;width:100%;height:auto}:root[data-js] .collection>summary{display:none}:root[data-js] .collection-body{padding-bottom:0}:root[data-js] .collection-body .section-heading{margin-bottom:14px;display:block}:root[data-js] .collection-actions{flex-wrap:wrap;margin-top:12px}:root[data-js] .favorite-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}:root[data-js] .saved-preview svg{aspect-ratio:1;height:auto}.number-input{transition:background .28s var(--ease),box-shadow .28s var(--ease)}.number-input:not(:focus){box-shadow:none;color:var(--text);text-align:right;cursor:text;background:0 0;width:auto;max-width:48px;padding-inline:4px}.number-input:not(:focus):hover{text-underline-offset:3px;text-decoration:underline dotted}.number-input:focus{width:48px}}@media (width>=1024px) and (width<=1050px){:root[data-js] .library{width:320px;right:24px}}.canvas-wrap:focus{outline:none}.arm-halo{fill:var(--accent);fill-opacity:.16;stroke:var(--accent);stroke-width:1.5px;pointer-events:none}.arm-hover{fill:var(--text);fill-opacity:.07;stroke:var(--text);stroke-opacity:.55;stroke-width:1px;stroke-dasharray:4 4;pointer-events:none}.arm-bar{z-index:2;border-radius:var(--r-control);background:var(--panel);box-shadow:var(--raised);color:var(--text);white-space:nowrap;align-items:center;gap:6px;padding:0 6px 0 14px;font-size:12px;display:flex;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.arm-bar .text-button{color:var(--text);text-underline-offset:3px;text-decoration:underline}.is-comparing .arm-bar{display:none}.is-comparing #selection-layer,.is-comparing #guide-layer{visibility:hidden!important}:root:not([data-arm-hint-done]) .canvas-wrap:not(:has(.is-comparing)) #status:empty:before{content:"Select an arm to change just that one.";color:var(--muted)}[aria-pressed=true]>svg>.lock-open,[aria-pressed=false]>svg>.lock-shut,#export-toggle{display:none}.collection-files{border-top:1px solid var(--line);margin:28px 0 0;padding-top:16px;display:block}.collection-files .text-button{color:var(--text);text-underline-offset:3px;text-decoration:underline}@media (width>=741px){#arm-bar-edit{display:none}}@media (pointer:coarse){input[type=range]{pointer-events:none}input[type=range]::-webkit-slider-thumb{pointer-events:auto;box-sizing:content-box;width:24px;height:24px;box-shadow:none;background-clip:padding-box;border:10px solid #0000;margin-top:-19px}input[type=range]::-moz-range-thumb{pointer-events:auto}}@media (width<=740px){html{scroll-padding-top:calc(36svh + 76px);scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom))}.canvas-tools{max-height:calc(100svh - 76px - env(safe-area-inset-bottom));overflow-y:auto}}@media (width<=740px) and (height<=560px){html{scroll-padding-top:0}}@media (width>=1024px){:root[data-js] .current-preview{justify-items:center}:root[data-js] .preview-area.is-comparing{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;align-items:start;gap:16px;display:grid}:root[data-js] .is-comparing .current-preview{display:grid}:root[data-js] .comparison-preview{justify-items:center;display:grid}#export-toggle{white-space:nowrap;flex:none;display:flex}.export-popover{z-index:6;border-radius:var(--r-tile);background:var(--panel);width:340px;box-shadow:var(--slab);padding:4px 16px 16px;position:absolute;bottom:96px;left:20px}}@media (width>=1024px) and (width<=1180px){:root[data-js] .canvas-wrap{grid-template-rows:auto minmax(0,1fr) auto auto auto auto auto;grid-template-areas:"title hist""art art""meta meta""save save""exp exp""note note""stat stat"}:root[data-js] .canvas-wrap .appearance-note,:root[data-js] .canvas-wrap:has(#status:not(:empty)) .appearance-note{display:block}:root[data-js] .canvas-wrap #status{text-align:left;grid-area:stat;justify-self:start}}
