@font-face{font-family:Oxanium Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./oxanium-latin-ext-wght-normal-C7ptlTmX.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Oxanium Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./oxanium-latin-wght-normal-BwpvAp5U.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(./figtree-latin-ext-400-normal-CXAzuTZb.woff2) format("woff2"),url(./figtree-latin-ext-400-normal-Gbh-3PTk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(./figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2"),url(./figtree-latin-400-normal-BD4aNku5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(./figtree-latin-ext-500-normal-Du0rIuHj.woff2) format("woff2"),url(./figtree-latin-ext-500-normal-BOEJvrb_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(./figtree-latin-500-normal-BWnGEVsr.woff2) format("woff2"),url(./figtree-latin-500-normal-B_yy1phn.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(./figtree-latin-ext-600-normal-DJlfifZj.woff2) format("woff2"),url(./figtree-latin-ext-600-normal-CQqsimlV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(./figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2"),url(./figtree-latin-600-normal-BM_oTo4n.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.brand--tape{position:relative;padding-top:6px;padding-bottom:14px}.tape-logo{display:block}.tape-logo__mark{display:block;height:100%;width:auto;overflow:visible}.tape-logo__trail{max-width:none;position:absolute;left:0;top:0;width:100%;overflow:visible;pointer-events:none}.tape-logo__trail path{fill:none;stroke-linecap:round;stroke-linejoin:round}.tape-logo__glow{stroke:var(--accent);stroke-width:5;filter:blur(2px);transition:opacity .2s linear}.tape-logo__tape{stroke:#5a3c25;stroke-width:3.6}.tape-logo__line{stroke:var(--accent);stroke-width:1.5}.tape-logo__hl-glow{stroke:rgb(var(--wave-c));stroke-width:4;filter:blur(2px);stroke-opacity:.4}.tape-logo__hl-line{stroke:rgb(var(--wave-c));stroke-width:2}.menu-btn{display:none;place-items:center;width:44px;height:44px;margin-right:-4px;padding:0;border:1px solid var(--line-2);border-radius:12px;background:var(--panel);color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,background-color .15s ease}.menu-btn:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line-2))}.menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.menu-btn__bars{position:relative;width:20px;height:14px}.menu-btn__bars i{position:absolute;left:0;height:2px;border-radius:2px;background:currentColor;transform-origin:center;transition:transform .32s cubic-bezier(.2,.9,.25,1),width .32s cubic-bezier(.2,.9,.25,1),opacity .2s ease,top .32s cubic-bezier(.2,.9,.25,1)}.menu-btn__bars i:nth-child(1){top:0;width:20px}.menu-btn__bars i:nth-child(2){top:6px;width:13px;background:var(--accent)}.menu-btn__bars i:nth-child(3){top:12px;width:17px}@media (hover: hover){.menu-btn:hover .menu-btn__bars i:nth-child(1){width:15px}.menu-btn:hover .menu-btn__bars i:nth-child(2){width:20px}.menu-btn:hover .menu-btn__bars i:nth-child(3){width:11px}}.menu-btn[aria-expanded=true] .menu-btn__bars i:nth-child(1),.menu-btn[aria-expanded=true] .menu-btn__bars i:nth-child(3){top:6px;width:20px}.menu-btn[aria-expanded=true] .menu-btn__bars i:nth-child(1){transform:rotate(45deg)}.menu-btn[aria-expanded=true] .menu-btn__bars i:nth-child(3){transform:rotate(-45deg)}.menu-btn[aria-expanded=true] .menu-btn__bars i:nth-child(2){opacity:0;transform:scaleX(0)}.menu-open .nav{z-index:460}.menu-open{overflow:hidden}.menu{--menu-top: calc(env(safe-area-inset-top, 0px) + var(--nav-h) + 1px);--ease-out: cubic-bezier(.2, .9, .25, 1);position:fixed;inset:var(--menu-top) 0 0 0;z-index:450;background:#060e0a00;transition:background-color .32s ease}.menu[hidden]{display:none}.menu.is-open{background:#060e0a80}.menu__panel{position:absolute;inset:0 0 0 auto;width:min(440px,100%);display:flex;flex-direction:column;gap:26px;overflow-y:auto;overscroll-behavior:contain;padding:18px var(--gutter) max(22px,env(safe-area-inset-bottom));border-left:1px solid var(--hw-line);background:radial-gradient(120% 60% at 100% 0%,rgba(82,217,138,.1),transparent 60%),linear-gradient(var(--hw-ink),var(--hw-ink));color:var(--hw-text);clip-path:inset(0 0 100% 0);transition:clip-path .42s var(--ease-out)}.menu.is-open .menu__panel{clip-path:inset(0 0 0 0)}.menu [style*=--i]{opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .42s var(--ease-out)}.menu.is-open [style*=--i]{opacity:1;transform:none;transition-delay:calc(80ms + var(--i) * 28ms)}.menu__heading{margin:0 0 8px;color:var(--hw-faint);font:500 11px/1 var(--font-mono);letter-spacing:.16em;text-transform:uppercase}.menu__keys{display:grid;gap:6px;margin:0;padding:0;list-style:none}.menu__key{display:flex;align-items:center;gap:14px;width:100%;min-height:54px;padding:0 16px;border:1px solid var(--hw-line);border-radius:12px;background:linear-gradient(to bottom,var(--hw-panel-2),var(--hw-panel));box-shadow:inset 0 1px #ffffff0a,0 2px #00000040;color:var(--hw-text);font:600 19px/1 var(--font-display);letter-spacing:.01em;text-align:left;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.menu__key:hover{border-color:var(--hw-line-2)}.menu__key:active{transform:translateY(1px);box-shadow:inset 0 1px 3px #00000059}.menu__key:focus-visible,.menu__demo:focus-visible,.menu__links a:focus-visible,.menu__all:focus-visible,.menu__install:focus-visible{outline:2px solid var(--led);outline-offset:2px}.menu__led{flex:none;width:8px;height:8px;border-radius:50%;background:var(--led-off);box-shadow:inset 0 0 0 1px #ffffff0d;transition:background-color .2s ease,box-shadow .2s ease}.menu.is-open .menu__led{animation:menu-led .5s ease-out both;animation-delay:calc(.14s + var(--i, 0) * 40ms)}@keyframes menu-led{0%,to{background:var(--led-off);box-shadow:none}35%{background:var(--led);box-shadow:0 0 10px var(--led)}}.menu__key[data-current] .menu__led{background:var(--led);box-shadow:0 0 10px var(--led);animation:none}.menu__key[data-current]{border-color:color-mix(in srgb,var(--led) 45%,var(--hw-line))}.menu__count{padding:3px 7px;border-radius:999px;background:#52d98a1f;color:var(--led);font:500 11px/1 var(--font-mono)}.menu__chevron{width:20px;height:20px;margin-left:auto;fill:none;stroke:var(--hw-muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .32s var(--ease-out)}.menu__key--parent[aria-expanded=true] .menu__chevron{transform:rotate(180deg)}.menu__drawer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .36s var(--ease-out)}.menu__key--parent[aria-expanded=true]+.menu__drawer{grid-template-rows:1fr}.menu__drawer>div{overflow:hidden}.menu__demos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:8px 0 0;list-style:none}.menu__demo{display:flex;flex-direction:column;gap:3px;height:100%;padding:11px 12px 12px;border:1px solid var(--hw-line);border-radius:10px;color:var(--hw-text);text-decoration:none;-webkit-tap-highlight-color:transparent;transition:border-color .15s ease,background-color .15s ease}.menu__demo:hover,.menu__demo:active{border-color:var(--hw-line-2);background:#52d98a0d}.menu__demo b{font:600 15px/1.2 var(--font-body)}.menu__demo span{color:var(--hw-muted);font-size:12.5px;line-height:1.35}.menu__demo[aria-current]{border-color:color-mix(in srgb,var(--led) 55%,var(--hw-line));background:#52d98a14}.menu__demo[aria-current] b:after{content:"";display:inline-block;width:6px;height:6px;margin-left:7px;border-radius:50%;vertical-align:middle;background:var(--led);box-shadow:0 0 8px var(--led)}.menu__all{display:inline-block;margin:10px 2px 6px;color:var(--led);font:500 13px/1.4 var(--font-mono);text-decoration:none}.menu__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.menu__links a{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;border-bottom:1px solid var(--hw-line);color:var(--hw-text);font-size:15px;font-weight:500;text-decoration:none}.menu__links a span{color:var(--hw-faint);font-size:13px;transition:color .15s ease,transform .15s ease}.menu__links a:hover span{color:var(--led);transform:translate(2px,-2px)}.menu__foot{display:flex;gap:10px;margin-top:auto}.menu__install{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:46px;padding:0 8px 0 14px;border:1px solid var(--hw-line-2);border-radius:12px;background:#07110d;color:var(--hw-text);font:inherit;cursor:pointer}.menu__install code{overflow:hidden;font:500 13px/1 var(--font-mono);white-space:nowrap;text-overflow:ellipsis}.menu__install code span{color:var(--hw-faint)}.menu__copy{flex:none;padding:7px 10px;border-radius:8px;background:var(--hw-panel-2);color:var(--led);font:600 12px/1 var(--font-body)}.menu__donate{flex:none;min-height:46px;border-color:#52d98a59;background:#52d98a14;color:var(--hw-text)}.menu__donate svg{fill:var(--led)}.menu__sound{display:none;flex:none;width:46px;height:46px;border-color:#52d98a59;background:#52d98a14;color:var(--hw-text)}.menu__sound:hover{border-color:var(--led);color:var(--hw-text)}@media (max-width: 1240px){.menu-btn{display:inline-grid}}@media (max-width: 640px){.nav__actions>.donate,.nav__actions>.sound-switch{display:none}.menu__sound{display:inline-grid}.menu__panel{width:100%;border-left:0}.menu.is-open{background:#060e0a00}}@media (max-width: 360px){.menu__demos,.menu__links{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion: reduce){.menu__panel,.menu [style*=--i]{clip-path:none;transform:none}}.about{width:min(620px,calc(100vw - 32px));max-height:min(86vh,780px);padding:0;border:1px solid color-mix(in srgb,var(--hw-text) 16%,transparent);border-radius:18px;background:linear-gradient(180deg,var(--hw-panel-2) 0%,var(--hw-ink) 100%);color:var(--hw-text);box-shadow:inset 0 1px #ffffff0f,0 0 0 6px #52d98a0f,0 30px 80px -20px #000000bf;overflow:hidden}.about[open]{display:flex;flex-direction:column;animation:aboutIn .2s ease-out}.about::backdrop{background:#040a07a8}@keyframes aboutIn{0%{opacity:0;transform:translateY(10px) scale(.98)}}.about__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid color-mix(in srgb,var(--hw-text) 12%,transparent)}.about__label{display:block;margin-bottom:6px;color:var(--led);font:600 .68rem/1 var(--font-mono);letter-spacing:.18em;text-transform:uppercase}.about__title{margin:0;color:var(--hw-text);font:700 1.35rem/1.15 var(--font-display);text-wrap:balance}.about__close{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:1px solid color-mix(in srgb,var(--hw-text) 20%,transparent);border-radius:50%;background:transparent;color:var(--hw-text);cursor:pointer}.about__close svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.about__close:hover{border-color:var(--led);background:#52d98a24}.about__close:focus-visible,.about__link:focus-visible{outline:2px solid var(--led);outline-offset:2px}.about__body{display:grid;gap:18px;padding:18px 22px 24px;overflow-y:auto;overscroll-behavior:contain}.about__body section{display:grid;gap:6px}.about__body h3{margin:0;color:var(--led);font:600 .72rem/1.2 var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.about__body p{margin:0;color:color-mix(in srgb,var(--hw-text) 86%,transparent);font-size:.92rem;line-height:1.65}.about__foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--hw-text) 12%,transparent)}.about__link{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid var(--hw-line-2);border-radius:10px;color:var(--hw-text);font:600 .9rem/1 var(--font-body);text-decoration:none;transition:border-color .15s ease,background-color .15s ease}.about__link svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}.about__link .about__icon{width:16px;height:16px;stroke-width:1.8}.about__link:hover .about__icon{transform:none}.about__link:hover{border-color:var(--led);background:#52d98a1a}.about__link:hover svg{transform:translate(1px,-1px)}.about__link--primary{border-color:transparent;background:var(--led);color:#06140d}.about__link--primary:hover{background:#6ae39b}.about__sign{margin-left:auto;color:var(--hw-muted);font:500 .8rem/1 var(--font-mono)}@media (max-width: 520px){.about__sign{width:100%;margin-left:0}}@media (prefers-reduced-motion: reduce){.about[open]{animation:none}}.thanks__done{cursor:pointer}.thanks__done:focus-visible{outline:2px solid var(--led);outline-offset:2px}.analytics-notice{position:fixed;right:var(--gutter);bottom:16px;z-index:1000;display:flex;align-items:center;gap:14px;width:min(420px,calc(100vw - 2 * var(--gutter)));padding:14px 14px 14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow);color:var(--text);font-family:var(--font-body);transform:translateY(calc(100% + 32px));opacity:0;transition:transform .4s cubic-bezier(.34,1.3,.64,1),opacity .25s ease}.analytics-notice.is-visible{transform:none;opacity:1}.analytics-notice__text{flex:1;margin:0;font-size:.85rem;line-height:1.5;color:var(--muted)}.analytics-notice__ok{flex-shrink:0;min-width:56px;min-height:40px;padding:0 16px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font:600 .9rem var(--font-body);cursor:pointer}.analytics-notice__ok:hover{background:var(--accent-hover)}.analytics-notice__ok:focus-visible{outline:2px solid var(--led);outline-offset:2px}@media (max-width: 480px){.analytics-notice{left:var(--gutter);right:var(--gutter);width:auto}}@media (prefers-reduced-motion: reduce){.analytics-notice{transition:opacity .2s ease;transform:none}}
