@font-face{font-family:Silkscreen;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/silkscreen-latin-400-normal.CtPo2yA5.woff2)format("woff2"),url(/_astro/silkscreen-latin-400-normal.D0DfPJut.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff)format("woff")}:root{--bg:#121110;--bg-raised:#1a1917;--line:#2d2b27;--line-strong:#45413b;--ink:#f1ece3;--ink-soft:#cfc8bc;--muted:#9d968a;--led:#ffa826;--led-ink:#1a1206;--led-soft:#ffa8261f;--font-pixel:"Silkscreen", ui-monospace, monospace;--font-body:"IBM Plex Sans", system-ui, sans-serif;--max:1160px;--gutter:clamp(20px, 4vw, 40px);--r:6px;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--font-body);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100vh;margin:0;display:flex}main{flex:1}a{color:inherit}img,video,canvas{max-width:100%;display:block}h1,h2,h3,p,ol,ul,figure{margin:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--led);outline-offset:3px;border-radius:2px}.wrap{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.skip{z-index:10;background:var(--led);color:var(--led-ink);padding:10px 14px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pixel{font-family:var(--font-pixel);letter-spacing:.02em;font-weight:400}.site-header{border-bottom:1px solid var(--line)}.site-header .wrap{justify-content:space-between;align-items:center;gap:24px;min-height:68px;display:flex}.wordmark{align-items:center;gap:10px;font-size:.95rem;text-decoration:none;display:inline-flex}.wordmark svg{width:22px;height:22px}.nav{align-items:center;gap:4px;display:flex}.nav a{border-radius:var(--r);color:var(--ink-soft);padding:10px 12px;font-size:.92rem;text-decoration:none}.nav a:hover{color:var(--ink);background:var(--bg-raised)}.nav .lang{border:1px solid var(--line-strong);font-family:var(--font-pixel);color:var(--ink);margin-left:8px;padding:8px 10px;font-size:.75rem}.nav .lang:hover{border-color:var(--led);color:var(--led);background:0 0}@media (width<=640px){.nav .hide-sm{display:none}}.hero{padding:clamp(48px,9vw,112px) 0 clamp(56px,8vw,96px);position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#ffffff0e 1.2px,#0000 1.6px);background-size:14px 14px;position:absolute;inset:0;mask-image:radial-gradient(80% 70% at 70% 40%,#000 20%,#0000 75%)}.hero .wrap{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(40px,6vw,88px);display:grid}.eyebrow{color:var(--led);margin-bottom:20px;font-size:.78rem}.hero h1{letter-spacing:-.01em;text-wrap:balance;font-size:clamp(2.1rem,4.6vw,3.6rem);line-height:1.08}.hero h1 em{color:var(--led);font-style:normal}.intro{max-width:34rem;color:var(--ink-soft);text-wrap:pretty;margin-top:24px;font-size:1.08rem}.actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.btn{border:1px solid var(--line-strong);border-radius:var(--r);align-items:center;gap:10px;min-height:46px;padding:0 18px;font-size:.95rem;font-weight:600;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover{border-color:var(--ink-soft)}.btn--led{background:var(--led);border-color:var(--led);color:var(--led-ink)}.btn--led:hover{background:#fb5;border-color:#fb5}@media (width<=900px){.hero .wrap{grid-template-columns:1fr}}.device-wrap{--turn:0}.device{background:linear-gradient(#ecebe7 0%,#d9d7d1 55%,#c6c3bc 100%);border-radius:clamp(10px,1.4vw,16px);padding:clamp(10px,1.6vw,16px);position:relative;box-shadow:inset 0 1px #ffffffe6,inset 0 -2px #0000001f,0 30px 60px -20px #000000b3,0 0 80px -10px #ffa8261a}.face{cursor:pointer;background:#0b0b0a;border:0;border-radius:6px;width:100%;padding:clamp(6px,1vw,10px);display:block;box-shadow:inset 0 2px 6px #000000e6,0 0 0 1px #00000059}.face canvas{aspect-ratio:52/16;width:100%}.knob{cursor:pointer;background:repeating-linear-gradient(90deg, #8f8c86 0 2px, #c9c6bf 2px 5px) calc(var(--turn) * 3px) 0 / auto, #b5b2ab;border:0;border-radius:4px 4px 0 0;width:clamp(38px,5vw,52px);height:clamp(9px,1.1vw,12px);padding:0;transition:background-position .25s ease-out;position:absolute;top:clamp(-11px,-1.1vw,-8px);right:16%;box-shadow:inset 0 1px #fff9}.knob:hover{filter:brightness(1.08)}.knob:after{content:"";position:absolute;inset:-14px -6px -4px}.pages{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.pages button{border-radius:var(--r);cursor:pointer;min-height:36px;color:var(--muted);font-family:var(--font-pixel);background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:0 10px;font-size:.72rem;display:inline-flex}.pages button:before{content:"";background:var(--line-strong);width:6px;height:6px}.pages button:hover{color:var(--ink)}.pages button[aria-current=true]{color:var(--ink);border-color:var(--line)}.pages button[aria-current=true]:before{background:var(--led);box-shadow:0 0 8px var(--led)}.apps{border-top:1px solid var(--line);padding:clamp(56px,8vw,96px) 0}.apps-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px 40px;margin-bottom:28px;display:flex}.apps-head h2,.howto h2{font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.1}.apps-head p{max-width:36rem;color:var(--muted);margin-top:10px}.filters{flex-wrap:wrap;gap:8px;display:flex}.filters button{border:1px solid var(--line-strong);cursor:pointer;min-height:40px;color:var(--ink-soft);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:.9rem;display:inline-flex}.filters button span{color:var(--muted);font-family:var(--font-pixel);font-size:.7rem}.filters button:hover{border-color:var(--ink-soft)}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.filters button[aria-pressed=true] span{color:#6d675e}.app-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:40px 28px;padding:0;list-style:none;display:grid}.app-list li[hidden]{display:none}.app a{flex-direction:column;height:100%;text-decoration:none;display:flex}.app-media{aspect-ratio:2;border:1px solid var(--line);border-radius:var(--r);background:#2a2018;transition:border-color .15s;position:relative;overflow:hidden}.app-media img,.app-media video{object-fit:cover;width:100%;height:100%}.app a:hover .app-media{border-color:var(--led)}.app-title{justify-content:space-between;align-items:baseline;gap:16px;margin-top:16px;display:flex}.app h3{font-size:1.12rem;font-weight:600;line-height:1.3}.app a:hover h3{text-decoration:underline;text-decoration-color:var(--led);text-underline-offset:4px}.app-installs{color:var(--led);white-space:nowrap;flex:none;font-size:.72rem}.app p{color:var(--ink-soft);text-wrap:pretty;margin-top:8px;font-size:.95rem}.app-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;padding-top:14px;display:flex}.chip{border:1px solid var(--line-strong);color:var(--muted);font-family:var(--font-pixel);border-radius:3px;padding:3px 7px;font-size:.66rem}.app-open{color:var(--muted);margin-left:auto;font-size:.85rem}.app a:hover .app-open{color:var(--ink)}.howto{border-top:1px solid var(--line);padding:clamp(48px,7vw,80px) 0}.howto .wrap{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:32px 64px;display:grid}.howto ol{counter-reset:step;gap:0;padding:0;list-style:none;display:grid}.howto li{border-bottom:1px solid var(--line);color:var(--ink-soft);counter-increment:step;grid-template-columns:44px 1fr;gap:12px;padding:16px 0;display:grid}.howto li:first-child{padding-top:4px}.howto li:before{content:"0" counter(step);color:var(--led);font-family:var(--font-pixel);font-size:.85rem;line-height:1.9}.howto .note{color:var(--muted);margin-top:14px;font-size:.9rem}@media (width<=800px){.howto .wrap{grid-template-columns:1fr}}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:32px 0 48px;font-size:.9rem}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px 32px;display:flex}.site-footer nav{flex-wrap:wrap;gap:8px 22px;display:flex}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.site-footer .credit{color:#7a746a;flex-basis:100%;font-size:.8rem}.prose{padding:clamp(48px,8vw,96px) 0}.prose>*{max-width:46rem}.prose h1{margin-bottom:32px;font-size:clamp(2rem,4vw,2.8rem);line-height:1.1}.prose h2{margin:36px 0 10px;font-size:1.15rem;font-weight:600}.prose p,.prose address{color:var(--ink-soft);margin:0 0 12px;font-style:normal}.prose a{color:var(--led);text-underline-offset:3px}.prose .stand{color:var(--muted);margin-top:40px;font-size:.9rem}.lost{flex-direction:column;justify-content:center;min-height:55vh;display:flex}.lost .code{color:var(--led);margin-bottom:16px;font-size:clamp(4rem,14vw,9rem);line-height:1}
