@font-face{font-family:B612;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/b612-latin-400-normal-CC98FVm_.woff2)format("woff2"),url(/assets/b612-latin-400-normal-JbZ7xwUX.woff)format("woff")}@font-face{font-family:B612;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/b612-latin-700-normal-BinQrnoB.woff2)format("woff2"),url(/assets/b612-latin-700-normal-B_Snq1wd.woff)format("woff")}@font-face{font-family:B612 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/b612-mono-latin-400-normal-BDgzQEaT.woff2)format("woff2"),url(/assets/b612-mono-latin-400-normal-BMQz8jIs.woff)format("woff")}@font-face{font-family:B612 Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/b612-mono-latin-700-normal-wbdMaN5I.woff2)format("woff2"),url(/assets/b612-mono-latin-700-normal-BhNP4QrW.woff)format("woff")}:root{--paper:#edf0ec;--paper-press:#dfe4df;--field:#fff;--ink:#10151c;--ink-2:#4a5560;--rule:#b4bdb8;--grid:#10151c0b;--signal:#ff4f00;--signal-ink:#c23400;--sans:"B612", system-ui, sans-serif;--mono:"B612 Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);color:var(--ink);font:400 1rem/1.55 var(--sans);background-size:8px 8px;margin:0}h1,h2,h3,p,dl,dd,ol{margin:0;padding:0}p{text-wrap:pretty}a{color:inherit;text-underline-offset:3px}:focus-visible{outline:2px solid var(--signal-ink);outline-offset:2px}.sheet{background:var(--paper);border:2px solid var(--ink);max-width:78rem;margin:clamp(0px,3vw,2.5rem) auto}.sheet-head{border-bottom:2px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:stretch;gap:1.5rem 3rem;padding:1.75rem clamp(1rem,3vw,2.5rem);display:flex}h1{font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1.1}.tagline{max-width:34rem;color:var(--ink-2);margin-top:.5rem;font-size:1.0625rem}.title-block{border:1.5px solid var(--ink);grid-template-columns:repeat(4,auto);align-self:flex-start;display:grid}.title-block>div{border-left:1.5px solid var(--ink);min-width:7rem;padding:.4rem .75rem .5rem}.title-block>div:first-child{border-left:0}.title-block dt{color:var(--ink-2);font-size:.8125rem}.title-block dd{font-family:var(--mono);font-weight:700}select{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.hero{border-bottom:2px solid var(--ink);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);display:grid}.live,.secret{padding:clamp(1.25rem,3vw,2.5rem)}.live{container-type:inline-size}.secret{border-left:1.5px solid var(--ink)}.code{font:700 min(7.5rem, calc(100cqi / (var(--digits) * .66 + .4))) / 1 var(--mono);white-space:nowrap}.code-gap{width:.35em;display:inline-block}.digit{animation:digit-in .24s var(--ease-out) both;display:inline-block}@keyframes digit-in{0%{opacity:0;filter:blur(3px);transform:translateY(.12em)}}.scale{margin-top:1.75rem}.scale input{--thumb:14px;cursor:ew-resize;appearance:none;background:0 0;width:100%;height:28px;margin:0;display:block}.scale input::-webkit-slider-runnable-track{background:linear-gradient(var(--ink), var(--ink)) 0 100% / 100% 2px no-repeat, repeating-linear-gradient(90deg, var(--ink) 0 1px, transparent 1px calc((100% - 1px) / var(--ticks))) calc(var(--thumb) / 2) 100% / calc(100% - var(--thumb) + 1px) 10px no-repeat;height:28px}.scale input::-moz-range-track{background:linear-gradient(var(--ink), var(--ink)) 0 100% / 100% 2px no-repeat, repeating-linear-gradient(90deg, var(--ink) 0 1px, transparent 1px calc((100% - 1px) / var(--ticks))) calc(var(--thumb) / 2) 100% / calc(100% - var(--thumb) + 1px) 10px no-repeat;height:28px}.scale input::-webkit-slider-thumb{width:var(--thumb);background:var(--signal);clip-path:polygon(0 0,100% 0,100% 45%,50% 100%,0 45%);appearance:none;border:0;height:28px}.scale input::-moz-range-thumb{width:var(--thumb);background:var(--signal);clip-path:polygon(0 0,100% 0,100% 45%,50% 100%,0 45%);border:0;border-radius:0;height:28px}.scale-labels{color:var(--ink-2);font:400 .875rem var(--mono);justify-content:space-between;margin-top:.35rem;display:flex}.scale-left{color:var(--ink);font-weight:700}.controls{flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;display:flex}button{border:1.5px solid var(--ink);background:var(--paper);color:var(--ink);font:400 .9375rem/1.3 var(--sans);cursor:pointer;transition:transform .14s var(--ease-out);padding:.5rem .85rem}button:active{transform:scale(.97)}button.primary{background:var(--ink);color:var(--paper)}@media (hover:hover) and (pointer:fine){button{transition:transform .14s var(--ease-out), background-color .14s ease}button:not(.primary):hover{background:var(--paper-press)}}.status{min-height:3em;color:var(--ink-2);margin-top:.85rem;font-size:.9375rem}.secret label{margin-bottom:.35rem;font-weight:700;display:block}.secret-input{border:1.5px solid var(--ink);background:var(--field);width:100%;color:var(--ink);font:400 .9375rem var(--mono);border-radius:0;padding:.6rem .7rem}.secret-input[aria-invalid=true]{border-color:var(--signal-ink)}.help{color:var(--ink-2);margin-top:.4rem;font-size:.9375rem}.help.is-error{color:var(--signal-ink)}.scan{color:var(--ink-2);align-items:flex-start;gap:1.25rem;margin-top:1.5rem;font-size:.9375rem;display:flex}.scan p{max-width:24ch}.qr{border:1.5px solid var(--ink);flex:none;width:12rem;height:12rem}.qr-empty{background:linear-gradient(to top right, transparent calc(50% - 1px), var(--rule) 50%, transparent calc(50% + 1px)), var(--field)}.qr-bg{fill:var(--field)}.qr-modules{fill:var(--ink)}.derivation{padding:clamp(1.25rem,3vw,2.5rem)}h2{margin-bottom:1.5rem;font-size:1.5rem;line-height:1.2}.derivation-empty{color:var(--ink-2)}.steps-host{position:relative}.steps{list-style:none;position:relative}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.steps:before{content:"";background:var(--ink);width:1.5px;position:absolute;top:1.25rem;bottom:3rem;left:calc(1.25rem - .75px)}.spine-clip{width:8px;position:absolute;top:1.25rem;bottom:3rem;left:calc(1.25rem - 4px);overflow:hidden}.spine-pulse{height:100%;animation:spine-run .9s var(--ease-in-out) both;display:block}.spine-pulse:before{content:"";background:var(--signal);width:8px;height:28px;display:block}@keyframes spine-run{0%{transform:translateY(-28px)}to{transform:translateY(100%)}}.step{z-index:1;grid-template-columns:2.5rem minmax(0,1fr) minmax(15rem,21rem);gap:0 1.75rem;padding-block:1.25rem;display:grid;position:relative}.step-slice{padding-top:3.5rem}.balloon{border:1.5px solid var(--ink);background:var(--paper);width:2.5rem;height:2.5rem;font:700 1rem var(--mono);border-radius:50%;place-items:center;display:grid}h3{font-size:1.0625rem;line-height:1.3}.step-note p{max-width:44ch;color:var(--ink-2);margin-top:.25rem;font-size:.9375rem}.figure{font:400 clamp(1.125rem, 2.2vw, 1.5rem) / 1.35 var(--mono);overflow-wrap:anywhere}.figure strong{font-weight:700}.figure-sub{color:var(--ink-2);font:400 .9375rem var(--mono);margin-top:.15rem}.figure-sub strong{color:var(--ink)}.figure mark,.byte mark{background:var(--signal);color:var(--ink)}.bytes{grid-template-columns:repeat(10,3rem);gap:.25rem;display:grid}.byte{text-align:center;display:block;position:relative}.byte-value{border:1.5px solid var(--ink);background:var(--paper);font:400 1.0625rem/1.3 var(--mono);padding-block:.35rem;display:block}.byte-index{background:var(--paper);color:var(--ink-2);font:400 .75rem/1.4 var(--mono);display:block}.byte.is-picked .byte-value{border-color:var(--signal);background:var(--signal);font-weight:700}.bits{font:400 clamp(.8125rem, 1.6vw, 1.0625rem) / 1.5 var(--mono);overflow-wrap:anywhere}.bits .dropped{background:var(--signal);font-weight:700}.traces{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.traces path{fill:none;stroke:var(--signal);stroke-width:2px;animation:trace-draw .38s var(--ease-out) backwards}.traces circle{fill:var(--signal)}@keyframes trace-draw{0%{stroke-dasharray:var(--length);stroke-dashoffset:var(--length)}to{stroke-dasharray:var(--length);stroke-dashoffset:0}}.checks{border-top:2px solid var(--ink);grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);display:grid}.verify,.vectors{padding:clamp(1.25rem,3vw,2.5rem)}.vectors{border-left:1.5px solid var(--ink)}.checks h2{margin-bottom:.5rem}.lede{max-width:60ch;color:var(--ink-2)}.window{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-block:1.25rem;display:grid}.window-cell{text-align:center;gap:.15rem;padding:.5rem .4rem;display:grid}.window-cell:disabled{cursor:default}.window-cell:not(:disabled).is-match,.window-cell:not(:disabled).is-match:hover{border-color:var(--signal);background:var(--signal)}.window-label{font-size:.8125rem}.window-code{font:700 clamp(.9375rem, 1.5vw, 1.0625rem) var(--mono)}.verify label{margin-bottom:.35rem;font-weight:700;display:block}.verify-input{border:1.5px solid var(--ink);background:var(--field);width:100%;color:var(--ink);font:700 1.25rem var(--mono);letter-spacing:.08em;border-radius:0;padding:.6rem .7rem}.verify-input.is-rejected{border-color:var(--signal-ink)}.verify-input:disabled{background:0 0}.result{min-height:3.2em;color:var(--ink-2);margin-top:.5rem;font-size:.9375rem}.result.is-accepted{color:var(--ink);font-weight:700}.aside{border-top:1px solid var(--rule);color:var(--ink-2);margin-top:.75rem;padding-top:.75rem;font-size:.9375rem}.tally{font:700 1.0625rem var(--mono);margin-top:1rem}.tally.is-fail{color:var(--signal-ink)}.table-scroll{margin-top:1rem;overflow-x:auto}table{border-collapse:collapse;width:100%;font:400 .875rem var(--mono);white-space:nowrap}caption{color:var(--ink-2);font:400 .875rem var(--sans);text-align:left;margin-bottom:.35rem}th,td{border:1px solid var(--rule);text-align:left;padding:.3rem .6rem}thead th{border-bottom:1.5px solid var(--ink);font-weight:700}tbody th{font-weight:400}td.is-fail{background:var(--signal)}.expected{font-size:.8125rem}.sheet-foot{border-top:2px solid var(--ink);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;gap:.75rem 3rem;padding:1.25rem clamp(1rem,3vw,2.5rem);font-size:.9375rem;display:flex}.sheet-foot p{max-width:62ch}@media (width<=62rem){.hero{grid-template-columns:minmax(0,1fr)}.secret{border-left:0;border-top:1.5px solid var(--ink)}.checks{grid-template-columns:minmax(0,1fr)}.vectors{border-left:0;border-top:1.5px solid var(--ink)}.step{grid-template-columns:2.5rem minmax(0,1fr);gap:.75rem 1rem}.step-note{grid-column:2}.step-slice{padding-top:1.25rem}.traces{display:none}.bytes{grid-template-columns:repeat(auto-fill,minmax(2.75rem,1fr))}.bytes-slice,.bytes-counter{max-width:26rem}}@media (width<=36rem){.title-block{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.title-block>div:nth-child(3){border-left:0}.title-block>div:nth-child(n+3){border-top:1.5px solid var(--ink)}.scan{flex-direction:column}.scan p{max-width:none}}@media (pointer:coarse){button,.secret-input,.verify-input,select{min-height:44px}.title-block>div{padding-bottom:.1rem}.scale input{--thumb:24px;height:44px}.scale input::-webkit-slider-runnable-track{height:44px}.scale input::-moz-range-track{height:44px}.scale input::-webkit-slider-thumb{height:44px}.scale input::-moz-range-thumb{height:44px}}@media (prefers-reduced-motion:reduce){.digit{animation:.16s both digit-fade}.traces path{animation:none}.spine-clip{display:none}button{transition:none}button:active{transform:none}}@keyframes digit-fade{0%{opacity:0}}
