:root{--ground:#0c1220;--panel:#131c2e;--line:#25324a;--chip:#33d67a;--chip-deep:#1d8f4f;--pin:#f2c94c;--ink:#e8eef6;--mute:#9aa7bc;--pix:'Pixelify Sans','Silkscreen','Courier New',monospace;--tag:'Silkscreen','Courier New',monospace;--body:'Atkinson Hyperlegible',system-ui,sans-serif;}*{box-sizing:border-box}html{overflow-x:clip;scroll-behavior:smooth}body{margin:0;background:var(--ground);color:var(--ink);font:400 clamp(1rem,0.96rem + 0.2vw,1.08rem)/1.65 var(--body);overflow-x:clip;-webkit-font-smoothing:antialiased}a{color:var(--chip)}svg.px{shape-rendering:crispEdges;image-rendering:pixelated;display:block}.wrap{width:min(100% - 2.5rem,1080px);margin-inline:auto}.hero{min-height:100dvh;display:grid;align-content:center;padding:max(1.6rem,env(safe-area-inset-top)) 0 3rem}.hero .wrap{display:grid;gap:2.2rem}.brand{display:flex;align-items:center;gap:.8rem}.brand img{width:clamp(56px,14vw,96px);height:auto;aspect-ratio:1;display:block;image-rendering:pixelated}.brand span{font:400 clamp(.8rem,.75rem + .2vw,.9rem)/1 var(--tag);color:var(--mute);letter-spacing:.04em}h1{font:700 clamp(2rem,1.4rem + 3.4vw,3.9rem)/1.08 var(--pix);margin:0;max-width:13ch;letter-spacing:-.005em}h1 em{font-style:normal;color:var(--chip)}.lede{margin:0;max-width:40ch;color:var(--mute);font-size:clamp(1.02rem,.98rem + .3vw,1.2rem)}.lede strong{color:var(--ink);font-weight:400}.go{display:inline-flex;align-items:center;gap:.7rem;min-height:52px;padding:.85rem 1.5rem;background:var(--chip);color:#08140d;text-decoration:none;font:700 clamp(1.05rem,1rem + .3vw,1.2rem)/1 var(--pix);clip-path:polygon(0 6px,6px 6px,6px 0,calc(100% - 6px) 0,calc(100% - 6px) 6px,100% 6px,100% calc(100% - 6px),calc(100% - 6px) calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,6px calc(100% - 6px),0 calc(100% - 6px));-webkit-tap-highlight-color:transparent}.go svg{width:18px;height:18px}.go:focus-visible{outline:3px solid var(--pin);outline-offset:4px}@media (hover: hover){.go:hover{background:#4be78d}}.under{margin:.9rem 0 0;font:400 .82rem/1.5 var(--tag);color:var(--mute)}.copy{display:grid;gap:1.4rem;align-content:start}.board{justify-self:center;width:min(100%,420px)}.board svg{width:100%;height:auto}.led{animation:blink 2.4s steps(1) infinite}@keyframes blink{50%{opacity:.25}}.board figcaption{font:400 .78rem/1.4 var(--tag);color:var(--mute);text-align:center;margin-top:1rem}section.s{padding:clamp(5rem,4rem + 6vw,9rem) 0}.k{font:400 .78rem/1 var(--tag);color:var(--pin);letter-spacing:.06em;margin:0 0 1rem}h2{font:700 clamp(1.6rem,1.3rem + 1.6vw,2.5rem)/1.12 var(--pix);margin:0 0 1.2rem;max-width:20ch}.s p.in{color:var(--mute);max-width:46ch;margin:0 0 2.4rem}.toc{padding:1rem 0 0}.toc ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.7rem}.toc a{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;padding:.55rem .9rem;border:2px solid var(--line);color:var(--ink);text-decoration:none;font:700 .95rem/1 var(--pix);-webkit-tap-highlight-color:transparent}.toc a b{font:400 .72rem/1 var(--tag);color:#08140d;background:var(--pin);padding:.3rem .4rem}.toc a:focus-visible{outline:3px solid var(--chip);outline-offset:2px}@media (hover: hover){.toc a:hover{border-color:var(--chip)}}.q{display:grid;gap:3rem;max-width:760px}.q h3{font:700 clamp(1.15rem,1.05rem + .5vw,1.4rem)/1.3 var(--pix);margin:0 0 1.1rem}.q h3 span{font:400 .75rem/1 var(--tag);color:var(--mute);margin-right:.6rem}.opts{display:flex;flex-wrap:wrap;gap:.7rem}.opts button{min-height:48px;padding:.6rem 1.05rem;background:var(--panel);color:var(--ink);border:2px solid var(--line);font:700 1rem/1 var(--pix);cursor:pointer;-webkit-tap-highlight-color:transparent;box-shadow:3px 3px 0 #070b14}.opts button[aria-pressed="true"]{background:var(--chip);color:#08140d;border-color:var(--chip)}.opts button:focus-visible{outline:3px solid var(--pin);outline-offset:2px}@media (hover: hover){.opts button:hover{border-color:var(--chip)}}.res{border:2px solid var(--chip);padding:1.6rem;background:var(--panel);display:none;gap:1.2rem;grid-template-columns:72px 1fr;align-items:start;box-shadow:5px 5px 0 #070b14}.res.on{display:grid}.res svg{width:72px;height:auto}.res h3{margin:0 0 .5rem}.res p{margin:0 0 .8rem;color:var(--mute)}.res .row{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.res a{font:700 1rem/1 var(--pix)}.res button{background:none;border:0;color:var(--mute);font:400 .78rem/1 var(--tag);cursor:pointer;min-height:44px;padding:0 .2rem;text-decoration:underline}.hint{font:400 .78rem/1.5 var(--tag);color:var(--mute);margin:0}.grp{margin:0 0 2.6rem}.grp h3{font:400 .82rem/1 var(--tag);color:var(--mute);margin:0 0 1rem;letter-spacing:.04em}.tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:1rem;max-width:760px}.tiles li{aspect-ratio:1;background:var(--panel);border:2px solid var(--line);display:grid;place-items:center;align-content:center;gap:.9rem;padding:.8rem;text-align:center;box-shadow:4px 4px 0 #070b14}.tiles svg{width:40px;height:40px}.tiles span{font:700 1rem/1.15 var(--pix)}.tree{max-width:620px;font:400 .92rem/1.5 var(--tag)}.tree details{border-left:2px solid var(--line);padding-left:1rem;margin:.2rem 0 .2rem .4rem}.tree > details{margin-left:0}.tree summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.6rem;color:var(--ink);list-style:none;-webkit-tap-highlight-color:transparent}.tree summary::-webkit-details-marker{display:none}.tree summary::before{content:"+";color:var(--pin);width:1ch}.tree details[open] > summary::before{content:"-"}.tree summary:focus-visible{outline:2px solid var(--chip);outline-offset:2px}.tree ul{list-style:none;margin:0 0 .4rem;padding:0 0 0 1.6rem}.tree li{padding:.35rem 0;color:var(--mute)}.tree li i{font-style:normal;color:var(--chip)}.tree .note{display:block;font:400 .9rem/1.45 var(--body);color:var(--mute);margin-top:.15rem}.cmp{max-width:720px}.cmp .hd,.cmp .r{display:grid;grid-template-columns:1fr 76px 76px;gap:.6rem;align-items:center}.cmp .hd{font:400 .72rem/1.3 var(--tag);color:var(--mute);padding-bottom:.9rem;border-bottom:2px solid var(--line)}.cmp .hd span:nth-child(2){color:var(--chip)}.cmp .hd span:not(:first-child),.cmp .r span:not(:first-child){text-align:center;justify-self:center}.cmp .r{padding:1.1rem 0;border-bottom:2px solid var(--line)}.cmp .r span:first-child{font-size:1rem}.mk{width:28px;height:28px}.key{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:1.4rem;font:400 .75rem/1 var(--tag);color:var(--mute)}.key span{display:inline-flex;align-items:center;gap:.5rem}.key svg{width:18px;height:18px}.warn{display:grid;grid-template-columns:96px 1fr;gap:1.6rem;align-items:center;max-width:720px}.warn svg{width:96px;height:auto}.warn h2{margin-bottom:.7rem}.warn p{margin:0;color:var(--mute)}.mast{max-width:720px;margin-inline:auto;border-top:6px solid var(--ink);border-bottom:2px solid var(--ink);padding:1.4rem 0 1.8rem;text-align:center}.mast .nm{font:700 clamp(1.3rem,1.1rem + 1vw,1.8rem)/1 var(--pix);letter-spacing:.06em;margin:0}.mast .ed{display:flex;justify-content:space-between;gap:1rem;font:400 .7rem/1.2 var(--tag);color:var(--mute);border-top:2px solid var(--line);border-bottom:2px solid var(--line);padding:.55rem 0;margin:1rem 0 1.6rem}.mast h2{max-width:none;margin:0 auto 1rem;font-size:clamp(1.5rem,1.2rem + 1.6vw,2.3rem)}.mast p{color:var(--mute);margin:0 auto 1.8rem;max-width:44ch}footer{margin-top:clamp(3rem,2rem + 3vw,4.5rem);border-top:2px solid var(--line);padding:3rem 0 max(2.4rem,env(safe-area-inset-bottom));text-align:center}.ini{width:56px;height:56px;border-radius:50%;border:2px solid var(--chip);display:grid;place-items:center;margin:0 auto 1.4rem;font:700 1.4rem/1 var(--pix);color:var(--chip)}footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.2rem;margin-bottom:1.4rem}footer nav a{color:var(--ink);font:400 .78rem/1 var(--tag);min-height:44px;display:inline-flex;align-items:center;text-decoration:none}@media (hover: hover){footer nav a:hover{color:var(--chip)}}footer small{font:400 .72rem/1 var(--tag);color:var(--mute)}@media (min-width: 900px){.hero .wrap{grid-template-columns:1.1fr .9fr;align-items:center;gap:4rem}.board{justify-self:end}}@media (max-width: 480px){.hero{align-content:start;padding-top:max(1.4rem,env(safe-area-inset-top))}.hero .wrap{gap:1.6rem}.copy{gap:1.1rem}.warn{grid-template-columns:64px 1fr;gap:1rem}.warn svg{width:64px}.res{grid-template-columns:1fr}.cmp .hd,.cmp .r{grid-template-columns:1fr 62px 62px}}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.led{animation:none}}