@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");*,:after,:before{box-sizing:border-box}:root{--bg:#ffffff;--bg-elevated:#fafafa;--bg-subtle:#f4f4f5;--bg-hover:#f4f4f5;--ink:#0a0a0a;--ink-2:#404040;--ink-3:#737373;--ink-4:#a3a3a3;--border:#e5e5e5;--border-strong:#d4d4d4;--accent:#5A9DD1;--accent-soft:rgba(90,157,209,0.08);--accent-strong:#3d7fb3;--radius:6px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-display:"Helvetica Neue",Helvetica,Arial,sans-serif}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-weight:400;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-strong)}.page{max-width:1080px;margin:0 auto;padding:5rem 2rem 4rem;display:flex;flex-direction:column;gap:4rem}.logo{font-family:var(--font-display);font-weight:100;letter-spacing:.04em;color:var(--ink);font-size:1.5rem;line-height:1;text-transform:uppercase;display:inline-block}.logo.small{font-size:1rem}.hero{display:flex;flex-direction:column;gap:1rem;max-width:640px}.hero .logo{margin-bottom:2rem}.hero h1{font-family:var(--font-sans);font-size:2.5rem;font-weight:600;letter-spacing:-.025em;line-height:1.1;margin:0;color:var(--ink)}.hero p{font-size:1.05rem;color:var(--ink-2);margin:0;line-height:1.5}section h2{font-family:var(--font-sans);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-3);margin:0 0 1.25rem}.card-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:1rem;gap:1rem}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.04)}.card a{display:flex;flex-direction:column;gap:.4rem;padding:1.25rem 1.25rem 1rem;color:var(--ink)}.card-project{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:600}.card-title{font-size:1.1rem;font-weight:600;color:var(--ink);letter-spacing:-.01em}.card-description{font-size:.875rem;color:var(--ink-2);line-height:1.5;margin-bottom:.5rem}.card-meta{display:flex;align-items:center;gap:.5rem;margin-top:auto;padding-top:.5rem;border-top:1px solid var(--border);font-size:.75rem;color:var(--ink-3)}.card-version{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.7rem;background:var(--bg-subtle);border:1px solid var(--border);border-radius:3px;padding:.1rem .4rem;color:var(--ink-2)}.card-language{text-transform:uppercase;letter-spacing:.08em;font-weight:500}.empty{border:1px dashed var(--border-strong);border-radius:var(--radius);padding:2rem;text-align:center;color:var(--ink-3);font-size:.9rem;background:var(--bg-subtle)}.page-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;color:var(--ink-3);flex-wrap:wrap;gap:1rem}@media (max-width:600px){.page{padding:3rem 1.25rem;gap:3rem}.hero h1{font-size:1.85rem}.card-grid{grid-template-columns:1fr}}