@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:#dbe2dc;--surface:#fbfcf7;--surface-muted:#edf1ed;--ink:#14201f;--ink-soft:#35433f;--muted:#66736f;--line:#aeb9b4;--line-strong:#14201f;--signal:#eef24c;--orange:#e97838;--blue:#315fc4;--teal:#8dbeb8;--plum:#724f74;--font-body:"Atkinson Hyperlegible", system-ui, sans-serif;--font-meta:"IBM Plex Mono", "Cascadia Mono", ui-monospace, monospace;font-family:var(--font-body);color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:linear-gradient(#14201f0a 1px, transparent 1px), linear-gradient(90deg, #14201f0a 1px, transparent 1px), var(--canvas);background-size:24px 24px;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}a{color:inherit}svg{display:block}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}::selection{color:var(--ink);background:var(--signal)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:var(--surface);background:var(--ink);font-family:var(--font-meta);padding:.8rem 1rem;font-size:.72rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-shell{border-inline:1px solid var(--line-strong);background:var(--surface);width:min(100%,1480px);min-height:100vh;margin-inline:auto}.site-header{border-bottom:1px solid var(--line-strong);min-height:72px;color:var(--surface);background:var(--ink);grid-template-columns:1fr auto;align-items:center;padding:.65rem clamp(1rem,3vw,2.5rem);display:grid}.brand{width:fit-content;color:inherit;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand__mark{aspect-ratio:1;width:40px;font-family:var(--font-meta);border:1px solid;place-items:center;font-size:.64rem;display:grid}.brand>span:last-child{gap:.06rem;display:grid}.brand b{letter-spacing:.09em;font-size:.92rem}.brand small{color:#aebdb8;font-family:var(--font-meta);letter-spacing:.08em;text-transform:uppercase;font-size:.5rem}.header-note{color:#aebdb8;font-family:var(--font-meta);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.59rem;display:none}.github-link{min-height:44px;font-family:var(--font-meta);text-transform:uppercase;align-items:center;gap:.45rem;font-size:.67rem;text-decoration:none;display:inline-flex}.github-link svg{fill:currentColor;width:18px}.intro{border-bottom:1px solid var(--line-strong);align-items:end;gap:2.5rem;padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,5rem) clamp(2.75rem,6vw,5rem);display:grid}.eyebrow,.browser-heading span,.browser-heading>p,.category-label,.popular-label,.supporting-label,.tag-list,.card-facts,.inspect-tooltip,.working-note>span,.index-stats,.sort-field,.filter-list,.site-footer{font-family:var(--font-meta)}.eyebrow{color:var(--muted);letter-spacing:.065em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.64rem}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance}h1{letter-spacing:-.065em;max-width:13ch;margin-bottom:1.25rem;font-size:clamp(3rem,7vw,6.6rem);line-height:.92}.intro__lede{max-width:62ch;color:var(--ink-soft);margin-bottom:0;font-size:clamp(1.05rem,1.8vw,1.25rem);line-height:1.6}.index-stats{border:1px solid var(--line-strong);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.index-stats div{min-width:0;padding:.8rem}.index-stats div+div{border-left:1px solid var(--line-strong)}.index-stats dt{min-height:2.4em;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.5rem}.index-stats dd{margin:.35rem 0 0;font-size:clamp(1.2rem,3vw,1.8rem);font-weight:600}.index-stats dd.is-live{color:#0b6e69}.index-stats dd.is-live:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;margin:0 .45rem .18rem 0;display:inline-block}.project-browser{padding:clamp(2.75rem,6vw,5rem) clamp(1rem,5vw,5rem) clamp(3.5rem,7vw,6rem)}.browser-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem;display:flex}.browser-heading span{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:.6rem;display:block}.browser-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.1rem,4vw,3.8rem);line-height:.95}.browser-heading>p{color:var(--muted);text-transform:uppercase;margin-bottom:0;font-size:.62rem}.browser-controls{gap:.75rem;margin-bottom:.85rem;display:grid}.search-field{border:1px solid var(--line-strong);background:#fff;align-items:center;min-height:54px;display:flex}.search-field>svg{fill:none;stroke:currentColor;stroke-width:1.5px;flex:0 0 20px;width:20px;height:20px;margin-left:1rem}.search-field input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:.9rem 1rem;font-size:1rem}.search-field input::placeholder{color:var(--muted)}.search-field button{min-height:40px;color:var(--muted);font-family:var(--font-meta);cursor:pointer;text-transform:uppercase;background:0 0;border:0;margin-right:.4rem;padding-inline:.7rem;font-size:.62rem}.sort-field{border:1px solid var(--line-strong);background:var(--surface-muted);grid-template-columns:auto 1fr;align-items:center;min-height:54px;display:grid}.sort-field span{color:var(--muted);text-transform:uppercase;padding-left:.9rem;font-size:.58rem}.sort-field select{min-width:0;height:100%;color:var(--ink);font-family:var(--font-meta);cursor:pointer;background:0 0;border:0;outline:0;padding:.8rem 2.2rem .8rem .7rem;font-size:.65rem;font-weight:600}.filter-list{scrollbar-width:thin;gap:.45rem;padding:.15rem 0 1.5rem;display:flex;overflow-x:auto}.filter-list button{border:1px solid var(--line);min-height:42px;color:var(--ink);white-space:nowrap;cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:.55rem;padding:.6rem .75rem;font-size:.62rem;font-weight:600;display:inline-flex}.filter-list button span{min-width:20px;height:20px;color:var(--muted);background:var(--surface-muted);border-radius:50%;place-items:center;padding-inline:.25rem;font-size:.52rem;display:grid}.filter-list button.is-active{border-color:var(--line-strong);background:var(--signal)}.filter-list button.is-active span{color:var(--surface);background:var(--ink)}.project-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:1rem;display:grid}.project-card{--card-accent:var(--teal);border:1px solid var(--line-strong);border-top:6px solid var(--card-accent);background:#fff;flex-direction:column;min-width:0;min-height:330px;padding:1.1rem;display:flex;position:relative}.project-card[data-category=Hardware]{--card-accent:var(--orange)}.project-card[data-category="AI + ML"]{--card-accent:var(--blue)}.project-card[data-category=Tools]{--card-accent:var(--teal)}.project-card[data-category=Experiments]{--card-accent:var(--plum)}.project-card--popular:after{content:"";z-index:0;clip-path:polygon(100% 0,100% 100%,0 100%);background:var(--signal);width:42px;height:42px;position:absolute;bottom:0;right:0}.project-card--supporting{background:#f4f5f1}.project-card--supporting h2{font-size:clamp(1.28rem,2.3vw,1.65rem)}.project-card__topline{z-index:4;justify-content:space-between;align-items:center;gap:1rem;display:flex;position:relative}.category-label,.popular-label,.supporting-label{letter-spacing:.06em;text-transform:uppercase;font-size:.56rem;font-weight:600}.category-label{color:var(--muted)}.inspect-wrap{position:relative}.inspect-button{border:1px solid var(--line-strong);width:32px;height:32px;color:var(--ink);background:var(--surface);font-family:var(--font-meta);cursor:help;border-radius:50%;place-items:center;padding:0;font-size:.66rem;font-weight:600;display:grid}.inspect-tooltip{z-index:20;border:1px solid var(--signal);width:min(270px,100vw - 3rem);color:var(--surface);background:var(--ink);opacity:0;visibility:hidden;pointer-events:none;padding:.85rem;transition:all .14s;position:absolute;top:calc(100% + .65rem);right:0;transform:translateY(-5px);box-shadow:6px 6px #315fc440}.inspect-tooltip:before{content:"";border:6px solid #0000;border-bottom-color:var(--signal);position:absolute;bottom:100%;right:9px}.inspect-wrap:hover .inspect-tooltip,.inspect-wrap:focus-within .inspect-tooltip,.project-card[data-inspect=true] .inspect-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.tooltip-heading{color:var(--signal);letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid #fbfcf752;justify-content:space-between;align-items:center;padding-bottom:.65rem;font-size:.55rem;display:flex}.tooltip-heading i{background:var(--signal);border-radius:50%;width:7px;height:7px}.inspect-tooltip dl{margin:.6rem 0}.inspect-tooltip dl div{justify-content:space-between;gap:1rem;padding-block:.3rem;font-size:.55rem;display:flex}.inspect-tooltip dt{color:#aebdb8}.inspect-tooltip dd{text-align:right;margin:0}.inspect-tooltip p{color:#aebdb8;margin:0;font-size:.52rem;line-height:1.55}.project-card__title{flex-wrap:wrap;align-items:center;gap:.55rem;margin:1.15rem 0 .8rem;display:flex}.project-card h2{letter-spacing:-.045em;overflow-wrap:anywhere;min-width:0;margin:0;font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1}.project-card h2 a{text-decoration:none}.popular-label{color:var(--ink);background:var(--signal);padding:.25rem .38rem}.supporting-label{border:1px solid var(--line);color:var(--muted);background:var(--surface-muted);padding:.25rem .38rem}.project-card__description{color:var(--ink-soft);margin-bottom:1.1rem;line-height:1.5}.tag-list{flex-wrap:wrap;gap:.35rem;margin-bottom:1.25rem;display:flex}.tag-list span{color:var(--muted);background:var(--surface-muted);padding:.28rem .42rem;font-size:.53rem}.project-card__footer{z-index:2;border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.9rem;display:flex;position:relative}.card-facts{color:var(--muted);flex-wrap:wrap;gap:.75rem;font-size:.55rem;display:flex}.card-facts span{align-items:center;gap:.35rem;display:inline-flex}.card-facts i{border-radius:50%;width:7px;height:7px}.card-facts svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:12px;height:12px}.card-actions a,.working-note a{font-family:var(--font-meta);text-underline-offset:.25em;text-transform:uppercase;flex:none;align-items:center;gap:.4rem;font-size:.56rem;font-weight:600;display:inline-flex}.card-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem .7rem;display:flex}.collection-card{--collection-accent:var(--orange);border:1px solid var(--line-strong);border-top:6px solid var(--collection-accent);background:#fff8f2;min-width:0;padding:clamp(1.25rem,3vw,2rem);position:relative}.collection-card[data-accent=blue]{--collection-accent:var(--blue)}.collection-card[data-accent=teal]{--collection-accent:var(--teal)}.collection-card[data-accent=plum]{--collection-accent:var(--plum)}.collection-card__header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.collection-card__header span,.collection-card__header>p,.collection-project>span,.collection-project footer{font-family:var(--font-meta);letter-spacing:.05em;text-transform:uppercase;font-size:.56rem}.collection-card__header span{color:var(--collection-accent);font-weight:600}.collection-card__header h2{letter-spacing:-.05em;margin:.45rem 0 0;font-size:clamp(1.8rem,4vw,2.8rem);line-height:.95}.collection-card__header>p{color:var(--muted);text-align:right;margin:0}.collection-card__intro{max-width:66ch;color:var(--ink-soft);margin:1rem 0 1.5rem;line-height:1.5}.collection-projects{border:1px solid var(--line-strong);background:#fff;display:grid}.collection-project{flex-direction:column;min-width:0;padding:1rem;display:flex}.collection-project+.collection-project{border-top:1px solid var(--line-strong)}.collection-project>span{color:var(--collection-accent)}.collection-project h3{letter-spacing:-.035em;overflow-wrap:anywhere;margin:.75rem 0 .55rem;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.02}.collection-project h3 a{text-decoration:none}.collection-project>p{color:var(--ink-soft);margin-bottom:1rem;font-size:.9rem;line-height:1.45}.collection-project footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.75rem;display:flex}.collection-project footer span,.collection-project footer a{align-items:center;gap:.35rem;display:inline-flex}.collection-project footer i{background:var(--collection-accent);border-radius:50%;width:7px;height:7px}.collection-project footer a{text-underline-offset:.2em;font-weight:600}.collection-project footer svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:14px}.card-actions a svg,.working-note a svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:16px}.empty-state{border:1px dashed var(--line-strong);text-align:center;grid-column:1/-1;padding:clamp(3rem,8vw,6rem) 1rem}.empty-state>span{border:1px solid var(--line-strong);background:var(--signal);width:56px;height:56px;font-family:var(--font-meta);border-radius:50%;place-items:center;margin:0 auto 1rem;display:grid}.empty-state h3{margin-bottom:.4rem;font-size:1.6rem}.empty-state p{color:var(--muted)}.empty-state button{border:1px solid var(--line-strong);min-height:44px;color:var(--surface);background:var(--ink);font-family:var(--font-meta);cursor:pointer;text-transform:uppercase;padding:.7rem .9rem;font-size:.62rem}.owned-sites{border-top:1px solid var(--line-strong);color:var(--surface);background:var(--ink);padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,5rem)}.owned-sites__heading{align-items:end;gap:1.25rem;margin-bottom:clamp(2rem,5vw,3.5rem);display:grid}.owned-sites__heading span,.owned-site>span{font-family:var(--font-meta);letter-spacing:.07em;text-transform:uppercase;font-size:.58rem}.owned-sites__heading span{color:var(--signal);margin-bottom:.5rem;display:block}.owned-sites__heading h2{letter-spacing:-.06em;max-width:12ch;margin:0;font-size:clamp(2.1rem,5vw,4.2rem);line-height:.95}.owned-sites__heading>p{color:#b7c4c0;max-width:36ch;margin:0;line-height:1.5}.owned-sites__grid{gap:.8rem;display:grid}.owned-site{--site-accent:var(--teal);border:1px solid #fbfcf773;border-top:6px solid var(--site-accent);min-height:250px;color:var(--ink);background:var(--surface);flex-direction:column;padding:1.25rem;display:flex}.owned-site[data-accent=orange]{--site-accent:var(--orange)}.owned-site[data-accent=blue]{--site-accent:var(--blue)}.owned-site[data-accent=plum]{--site-accent:var(--plum)}.owned-site>span{color:var(--muted)}.owned-site h3{letter-spacing:-.045em;margin:1.2rem 0 .7rem;font-size:clamp(1.65rem,3vw,2.3rem);line-height:.98}.owned-site p{color:var(--ink-soft);margin-bottom:1.5rem;line-height:1.5}.owned-site a{width:fit-content;font-family:var(--font-meta);text-underline-offset:.24em;text-transform:uppercase;align-items:center;gap:.5rem;margin-top:auto;font-size:.58rem;font-weight:600;display:inline-flex}.owned-site a svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:16px}.contributions{border-top:1px solid var(--line-strong);background:var(--surface-muted);padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,5rem)}.contributions__intro{align-items:end;gap:1.5rem;margin-bottom:clamp(2rem,5vw,3.5rem);display:grid}.contributions__intro>div:first-child>span,.contribution-summary span,.contribution-row,.contribution-row__number span{font-family:var(--font-meta)}.contributions__intro>div:first-child>span{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.55rem;font-size:.6rem;display:block}.contributions__intro h2{letter-spacing:-.06em;max-width:13ch;margin:0;font-size:clamp(2.1rem,5vw,4.3rem);line-height:.95}.contribution-summary{border:1px solid var(--line-strong);border-left:6px solid var(--blue);background:#fff;padding:1.25rem}.contribution-summary strong,.contribution-summary span{display:block}.contribution-summary strong{letter-spacing:-.04em;font-size:clamp(1.7rem,3vw,2.5rem)}.contribution-summary span{color:var(--blue);text-transform:uppercase;margin:.15rem 0 .9rem;font-size:.6rem}.contribution-summary p{max-width:54ch;color:var(--ink-soft);margin:0;line-height:1.5}.contribution-list{border-top:1px solid var(--line-strong);display:grid}.contribution-row{border-bottom:1px solid var(--line-strong);background:var(--surface-muted);grid-template-columns:4.5rem minmax(0,1fr) 2.75rem;align-items:center;gap:1rem;min-width:0;padding:1.15rem 0;display:grid}.contribution-row__number span,.contribution-row>div:nth-child(2)>p{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;margin:0 0 .2rem;font-size:.5rem;display:block}.contribution-row__number b{font-size:.8rem}.contribution-row h3{font-family:var(--font-body);letter-spacing:-.02em;margin:0 0 .35rem;font-size:1.04rem;line-height:1.15}.contribution-row>div:nth-child(2)>span{color:var(--ink-soft);font-family:var(--font-body);font-size:.88rem;line-height:1.35}.contribution-row>a{border:1px solid var(--line-strong);background:#fff;place-items:center;width:42px;height:42px;display:grid}.contribution-row>a svg{fill:none;stroke:currentColor;stroke-width:1.6px;width:18px}.working-note{border-top:1px solid var(--line-strong);background:var(--teal);gap:.65rem;padding:1.5rem clamp(1rem,5vw,5rem);display:grid}.working-note>span{letter-spacing:.06em;text-transform:uppercase;font-size:.58rem;font-weight:600}.working-note p{max-width:62ch;margin:0;line-height:1.5}.working-note a{width:fit-content}.working-note__actions{flex-wrap:wrap;gap:.7rem 1.2rem;display:flex}.site-footer{color:var(--surface);background:var(--ink);text-transform:uppercase;gap:1.25rem;padding:1.5rem clamp(1rem,3vw,2.5rem);font-size:.58rem;display:grid}.site-footer>div:first-child{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.site-footer p,.site-footer small{color:#aebdb8;margin:0}.site-footer nav{gap:1rem;display:flex}.site-footer a{text-underline-offset:.25em}@media (hover:hover){.project-card,.collection-project,.contribution-row,.filter-list button,.inspect-button,.card-actions a svg,.owned-site a svg{transition:all .15s}.project-card:hover{transform:translateY(-4px);box-shadow:7px 7px #14201f1f}.collection-project:hover,.contribution-row:hover{background:#fff}.collection-project h3 a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--collection-accent);text-decoration-color:var(--collection-accent);text-underline-offset:.12em;text-decoration-thickness:.12em}.project-card h2 a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--card-accent);text-decoration-color:var(--card-accent);text-underline-offset:.12em;text-decoration-thickness:.14em}.filter-list button:hover,.inspect-button:hover{border-color:var(--line-strong);background:var(--signal)}.card-actions a:hover svg,.owned-site a:hover svg{transform:translate(3px)}}@media (width>=44rem){.site-header{grid-template-columns:1fr auto 1fr}.header-note{display:block}.github-link{justify-self:end}.intro{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}.collection-projects{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-card[data-project-count="2"] .collection-projects{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-card{grid-column:1/-1}.collection-project+.collection-project{border-top:0;border-left:1px solid var(--line-strong)}.contributions__intro{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.owned-sites__heading{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)}.owned-sites__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contribution-list{grid-template-columns:repeat(2,minmax(0,1fr))}.contribution-row:nth-child(odd){padding-right:1.25rem}.contribution-row:nth-child(2n){border-left:1px solid var(--line-strong);padding-left:1.25rem}.browser-controls{grid-template-columns:minmax(0,1fr) minmax(250px,.3fr)}.working-note{grid-template-columns:.35fr minmax(0,1.2fr) auto;align-items:center}.site-footer{grid-template-columns:1fr auto auto;align-items:center}}@media (width>=76rem){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.collection-card{grid-column:span 3}.collection-card[data-project-count="2"]{grid-column:span 2}.owned-sites__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=30rem){.github-link span{display:none}.intro,.project-browser{padding-inline:1rem}.browser-heading{flex-direction:column;align-items:start}.index-stats dd{font-size:1.12rem}.project-card{min-height:300px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
