@font-face{font-family:Big Shoulders Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_x/B-JM5mJH.woff2)format("woff2-variations");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:Big Shoulders Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_x/EP2r9iG4.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Big Shoulders Display Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_x/Bn_gnr7w.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_x/CDDApCn2.woff2)format("woff2"),url(/_x/CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_x/CuJfVYMP.woff2)format("woff2"),url(/_x/Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_x/DMJ8VG8y.woff2)format("woff2"),url(/_x/CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_x/DSY6xOcd.woff2)format("woff2"),url(/_x/CB9ihrfo.woff)format("woff")}:root{--paper:#f3f3ef;--ink:#0f0f10;--ink-2:#4b4b50;--rule:#0f0f10;--hair:#0f0f1026;--blue:#0b3bff;--blue-dark:#062bc7;--warn:#c21d00;--tile:#e4e4e0;--f-display:"Big Shoulders Display Variable", "Arial Narrow", sans-serif;--f-text:"IBM Plex Sans", system-ui, sans-serif;--f-mono:"IBM Plex Mono", ui-monospace, monospace;--gut:clamp(16px, 3vw, 36px);color-scheme:light}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font:400 1rem/1.5 var(--f-text);margin:0;overflow-x:hidden}img,canvas{max-width:100%;display:block}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.jump{left:var(--gut);background:var(--ink);color:var(--paper);z-index:20;padding:8px 12px;position:absolute;top:-80px}.jump:focus{top:8px}.mono,.label{font-family:var(--f-mono)}.label{letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.wrap{width:min(1240px,100%);padding-inline:var(--gut);margin-inline:auto}.cols{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;display:grid}.mast{border-bottom:2px solid var(--rule);font:500 .8rem/1.2 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;align-items:center;padding-block:14px}.mast .home{grid-column:span 5;font-weight:600;text-decoration:none}.mast nav{grid-column:span 7}.mast ul{flex-wrap:wrap;justify-content:flex-end;gap:6px 22px;margin:0;padding:0;list-style:none;display:flex}.mast nav a{border-bottom:2px solid #0000;padding-block:4px;text-decoration:none}.mast nav a:hover,.mast nav a[aria-current=page]{border-bottom-color:var(--blue)}.lead{border-bottom:2px solid var(--rule);row-gap:18px;padding-block:26px 22px}.lead h1{font:900 clamp(3rem, 10vw, 8rem) / .84 var(--f-display);text-transform:uppercase;letter-spacing:-.01em;grid-column:span 7;margin:0}.lead h1 span{color:var(--blue);display:block}.lead .aside{grid-column:span 5;align-content:space-between;gap:18px;display:grid}.lead .aside p{max-width:38ch;margin:0;font-size:1.06rem}.spec{font:400 .85rem/1.35 var(--f-mono);grid-template-columns:auto 1fr;gap:6px 16px;margin:0;display:grid}.spec dt{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2)}.spec dd{margin:0}.cmd{appearance:none;border:2px solid var(--ink);background:var(--paper);color:var(--ink);font:600 .95rem/1 var(--f-text);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 16px;text-decoration:none;display:inline-flex}.cmd:hover:not(:disabled){background:var(--ink);color:var(--paper)}.cmd:disabled{opacity:.4;cursor:not-allowed}.cmd-blue{background:var(--blue);border-color:var(--blue);color:#fff}.cmd-blue:hover:not(:disabled){background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}.cmd-line{border-width:1px;min-height:36px;padding:8px 12px;font-size:.88rem}.cmd[data-busy]{pointer-events:none;opacity:.6}.cmd[data-busy]:after{content:attr(data-busy);font:400 .8rem/1 var(--f-mono)}input[type=number],input[type=text],select{font:400 .9rem/1.2 var(--f-mono);color:var(--ink);border:1px solid var(--ink);background:#fff;border-radius:0;width:100%;min-width:0;min-height:36px;padding:7px 8px}input[type=range]{width:100%;accent-color:var(--blue);margin:0}.toggle{border:1px solid var(--ink);flex-wrap:wrap;display:inline-flex}.toggle label,.toggle button{font:500 .8rem/1 var(--f-mono);letter-spacing:.04em;text-transform:uppercase;min-height:36px;color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;padding:10px 11px;display:inline-flex}.toggle>*+*{border-left:1px solid var(--ink)}.toggle label:has(input:checked),.toggle button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.toggle input{opacity:0;pointer-events:none;position:absolute}.toggle label:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:2px}.toggle label:has(input:disabled){opacity:.35;cursor:not-allowed}.wb{padding-block:22px 0}.intake{border:2px solid var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:18px 20px;transition:background-color .12s;display:grid}.intake b{font:700 clamp(1.4rem, 3vw, 2rem) / 1 var(--f-display);text-transform:uppercase}.intake small{font:400 .8rem/1.4 var(--f-mono);color:var(--ink-2);grid-column:1}.intake .cmd{grid-area:span 2/2;min-height:52px;padding-inline:22px;font-size:1rem}:root[data-drag] .intake{background:#dfe5ff}.wb[data-open] .intake{padding-block:10px}.wb[data-open] .intake b{font-size:1.15rem}.wb[data-open] .intake .cmd{min-height:40px}.privacy{font:400 .78rem/1.4 var(--f-mono);color:var(--ink-2);margin:10px 0 0}.desk{gap:18px;margin-top:22px;display:grid}.notice{border-left:4px solid var(--blue);font:400 .85rem/1.4 var(--f-mono);background:#fff;margin:0;padding:6px 10px}.files{border-top:2px solid var(--rule);overflow-x:auto}.files table{border-collapse:collapse;width:100%;font:400 .85rem/1.3 var(--f-mono)}.files th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);padding:8px 10px 6px 0;font-size:.72rem;font-weight:500}.files td{border-top:1px solid var(--hair);vertical-align:middle;padding:6px 10px 6px 0}.files tr[aria-selected=true] td{background:#fff}.files tr[aria-selected=true] td:first-child{box-shadow:inset 4px 0 0 var(--blue)}.files .pick-row{all:unset;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:34ch;display:block;overflow:hidden}.files .pick-row:focus-visible{outline:3px solid var(--blue)}.files td.n{width:3ch;color:var(--ink-2);padding-left:8px}.files td.st[data-s=error]{color:var(--warn)}.files td.st[data-s=done]{color:var(--blue)}.files .row-acts{justify-content:flex-end;gap:6px;display:flex}.del{appearance:none;border:1px solid var(--ink);cursor:pointer;width:32px;height:32px;font:400 1rem/1 var(--f-mono);background:0 0}.del:disabled{opacity:.3}.bench{grid-template-columns:minmax(0,7fr) minmax(300px,5fr);align-items:start;gap:20px;display:grid}.viewbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.plate{border:2px solid var(--ink);touch-action:none;place-items:center;min-height:280px;padding:12px;display:grid;position:relative;overflow:hidden}.plate[data-bg=checker]{background-color:#fff;background-image:conic-gradient(var(--tile) 25%, transparent 0 50%, var(--tile) 0 75%, transparent 0);background-size:20px 20px}.plate[data-bg=white]{background:#fff}.plate[data-bg=black],.plate[data-bg=mask]{background:#000}.plate canvas{grid-area:1/1;width:auto;max-width:100%;height:auto;max-height:min(70vh,720px)}.plate[data-tool=brush] canvas,.plate[data-tool=pick] canvas{cursor:crosshair}.plate[data-tool=brush] canvas{cursor:none}.ring{pointer-events:none;border:1px solid #fff;border-radius:50%;position:absolute;top:0;left:0;box-shadow:0 0 0 1px #000}.plate-msg{pointer-events:none;background:var(--paper);border:2px solid var(--ink);font:500 .85rem/1.4 var(--f-mono);text-align:center;grid-area:1/1;align-self:center;max-width:40ch;padding:10px 14px}.plate-msg[data-s=hint]{align-self:start}.plate-msg[data-s=error]{border-color:var(--warn);color:var(--warn)}.readout{font:400 .8rem/1.4 var(--f-mono);flex-wrap:wrap;gap:4px 16px;margin:8px 0 0;display:flex}.readout b{font-weight:500}.insp{border-top:2px solid var(--rule)}.insp section{border-bottom:1px solid var(--ink);gap:10px;padding:12px 0 14px;display:grid}.insp h2{font:700 1.25rem/1 var(--f-display);text-transform:uppercase;align-items:baseline;gap:10px;margin:0;display:flex}.insp h2 i{font:400 .75rem/1 var(--f-mono);color:var(--ink-2);font-style:normal}.row{grid-template-columns:9ch minmax(0,1fr);align-items:center;gap:10px;display:grid}.row>.label{color:var(--ink-2)}.pair{grid-template-columns:minmax(0,1fr) 7ch;align-items:center;gap:8px;display:grid}.two{font:400 .85rem/1 var(--f-mono);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;display:grid}.swatch{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.tone{border:1px solid var(--ink);width:36px;height:36px}.acts{flex-wrap:wrap;gap:8px;display:flex}.facts{font:400 .82rem/1.35 var(--f-mono);grid-template-columns:auto 1fr;gap:4px 14px;margin:0;display:grid}.facts dt{color:var(--ink-2);text-transform:uppercase;letter-spacing:.05em;padding-top:2px;font-size:.72rem}.facts dd{margin:0}.hint{color:var(--ink-2);margin:0;font-size:.82rem}.verify-slot:empty{display:none}.demo{border-bottom:2px solid var(--rule);row-gap:18px;padding-block:22px}.demo figure{grid-column:span 4;gap:8px;margin:0;display:grid}.demo figure img{aspect-ratio:4/5;object-fit:contain;width:100%;height:auto}.demo .tiles{background-color:#fff;background-image:conic-gradient(var(--tile) 25%, transparent 0 50%, var(--tile) 0 75%, transparent 0);background-size:18px 18px}.demo figcaption{font:400 .75rem/1.3 var(--f-mono);letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;gap:8px;display:flex}.demo .note{grid-column:span 4;align-self:end;margin:0}.block{border-bottom:2px solid var(--rule);row-gap:14px;padding-block:28px}.block>h2{font:800 clamp(1.9rem, 4vw, 3rem) / .95 var(--f-display);text-transform:uppercase;grid-column:span 4;margin:0}.block>.body{grid-column:span 8;max-width:70ch}.body p,.body li{margin-top:0}.body h3{font:600 1.05rem/1.3 var(--f-text);margin:22px 0 6px}.body ol,.body ul{padding-left:1.2em}.body li+li{margin-top:6px}.seq{counter-reset:s;margin:0;padding:0;list-style:none}.seq li{counter-increment:s;border-top:1px solid var(--hair);grid-template-columns:4ch 1fr;gap:4px 12px;padding-block:10px;display:grid}.seq li:before{content:counter(s, decimal-leading-zero);font:500 .85rem/1.5 var(--f-mono);color:var(--blue)}.scroll-x{overflow-x:auto}.body table{border-collapse:collapse;width:100%;min-width:460px;font-size:.92rem}.body th,.body td{text-align:left;border-top:1px solid var(--hair);vertical-align:top;padding:8px 12px 8px 0}.body thead th{font:500 .72rem/1.3 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);border-top:0}.qa details{border-top:1px solid var(--hair);padding-block:12px}.qa summary{cursor:pointer;font-weight:600}.qa details p{margin:8px 0 0}.index{border-bottom:2px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));padding-block:14px 8px}.index a{border-bottom:1px solid var(--hair);justify-content:space-between;gap:8px;padding:9px 0;text-decoration:none;display:flex}.index a:hover{color:var(--blue)}.index em{font:400 .75rem/1.6 var(--f-mono);text-transform:uppercase;color:var(--ink-2);font-style:normal}.colophon{font:400 .8rem/1.5 var(--f-mono);row-gap:12px;padding-block:22px 40px}.colophon .mark{text-transform:uppercase;letter-spacing:.06em;grid-column:span 4;font-weight:600}.colophon ul{flex-wrap:wrap;grid-column:span 8;gap:4px 20px;margin:0;padding:0;list-style:none;display:flex}.colophon p{color:var(--ink-2);grid-column:1/-1;margin:0}.doc{max-width:72ch;padding-block:28px 40px}.doc h1{font:900 clamp(2.6rem, 7vw, 5rem) / .9 var(--f-display);text-transform:uppercase;margin:0 0 18px}.doc h2{font:700 1.5rem/1.1 var(--f-display);text-transform:uppercase;margin:26px 0 8px}@media (width<=900px){.bench{grid-template-columns:minmax(0,1fr)}}@media (width<=760px){.mast .home,.mast nav,.lead h1,.lead .aside,.block>h2,.block>.body,.colophon .mark,.colophon ul{grid-column:1/-1}.mast ul{justify-content:flex-start;margin-top:8px}.demo figure,.demo .note{grid-column:span 6}.demo .note{grid-column:1/-1}.index,.intake{grid-template-columns:minmax(0,1fr)}.intake .cmd{grid-area:auto/1;width:100%}.files .pick-row{max-width:16ch}.files th.px,.files td.px{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
