:root{--bg:#fff;--bg-page:#eef0f4;--bg-soft:#f7f8fa;--fg:#0f172a;--fg-secondary:#334155;--muted:#64748b;--border:#e6e9ef;--border-soft:#eef1f5;--accent:#4f46e5;--accent-hover:#4338ca;--accent-soft:#eef2ff;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-xl:22px;--shadow-sm:0 1px 2px #0f172a0a;--shadow:0 1px 3px #0f172a0f, 0 8px 24px #0f172a0d;--shadow-shell:0 1px 2px #0f172a0a, 0 24px 48px -12px #0f172a24;--font-sans:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-page);color:var(--fg);min-height:100vh;margin:0;padding:2.5rem 2rem;font-size:15.5px;line-height:1.65}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}code{background:var(--bg-soft);border:1px solid var(--border-soft);border-radius:4px;padding:.1em .4em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.shell{background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-xl);max-width:1360px;box-shadow:var(--shadow-shell);margin:0 auto;overflow:hidden}.layout{grid-template-columns:280px 1fr;min-height:calc(100vh - 5rem);display:grid}.sidebar{background:var(--bg-soft);border-right:1px solid var(--border-soft);padding:2.25rem 1.75rem;overflow-y:auto}.sidebar .brand{letter-spacing:-.01em;color:var(--fg);align-items:center;gap:.6rem;margin-bottom:1.5rem;font-size:1.02rem;font-weight:650;display:flex}.search-box{--pagefind-ui-primary:var(--accent);--pagefind-ui-text:var(--fg-secondary);--pagefind-ui-background:var(--bg);--pagefind-ui-border:var(--border);--pagefind-ui-border-radius:8px;--pagefind-ui-border-width:1px;--pagefind-ui-font:var(--font-sans);margin-bottom:1.75rem}.search-box-dev-note{color:var(--muted);background:var(--bg);border:1px dashed var(--border);border-radius:var(--radius-sm);margin:0 0 1.75rem;padding:.6rem .7rem;font-size:.78rem;line-height:1.4}.sidebar .brand .dot{background:var(--accent);width:9px;height:9px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;flex-shrink:0}.sidebar .group{margin-bottom:1.75rem}.sidebar h3{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 .6rem;padding:0 .6rem;font-size:.68rem;font-weight:650}.sidebar ul{margin:0;padding:0;list-style:none}.sidebar li a{border-radius:var(--radius-sm);color:var(--fg-secondary);padding:.42rem .6rem;font-size:.87rem;line-height:1.4;transition:background .12s,color .12s;display:block}.sidebar li a:hover{background:var(--accent-soft);color:var(--accent)}.sidebar li a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar .empty{color:var(--muted);margin:0;padding:0 .6rem;font-size:.8rem}main{max-width:880px;padding:4rem 5rem 4.5rem 4.5rem}.kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);background:var(--accent-soft);border-radius:999px;align-items:center;margin-bottom:1.1rem;padding:.25rem .75rem;font-size:.72rem;font-weight:650;display:inline-flex}main h1{letter-spacing:-.02em;color:var(--fg);margin:0 0 .75rem;font-size:2rem;font-weight:650}.lead{color:var(--muted);max-width:58ch;margin:0 0 1.75rem;font-size:1.02rem}.meta{color:var(--muted);flex-wrap:wrap;gap:.4rem 1.1rem;margin-bottom:1rem;font-size:.85rem;display:flex}.tags{flex-wrap:wrap;gap:.4rem;margin-bottom:1.75rem;display:flex}.tag{background:var(--accent-soft);color:var(--accent);border-radius:999px;padding:.2rem .7rem;font-size:.78rem;font-weight:550;display:inline-block}.prose{color:var(--fg-secondary);margin-bottom:2.5rem;font-size:.98rem}.prose p:first-child{margin-top:0}.links{border-top:1px solid var(--border-soft);padding-top:1.75rem}.links h2{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .9rem;font-size:.75rem;font-weight:650}.links ul{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.links li a{border:1px solid var(--border);border-radius:var(--radius);color:var(--fg);background:var(--bg);justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1.1rem;font-size:.9rem;font-weight:500;transition:border-color .12s,background .12s,box-shadow .12s;display:flex}.links li a:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);box-shadow:var(--shadow-sm)}.count{color:var(--muted);margin:0 0 2.25rem;font-size:.85rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.1rem;display:grid}.card{background:var(--bg-soft);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:1.35rem 1.5rem;transition:box-shadow .15s,border-color .15s,transform .15s}.card:hover{box-shadow:var(--shadow);border-color:var(--border);background:var(--bg);transform:translateY(-2px)}.card h3{justify-content:space-between;align-items:center;margin:0 0 .85rem;font-size:.95rem;font-weight:650;display:flex}.card .badge{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.1rem .55rem;font-size:.72rem;font-weight:600}.card ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.card li a{color:var(--fg-secondary);font-size:.85rem}.card li a:hover{color:var(--accent)}.card .empty{color:var(--muted);margin:0;font-size:.82rem}.api-links{border-top:1px solid var(--border-soft);color:var(--muted);margin-top:2.75rem;padding-top:1.5rem;font-size:.85rem}.api-links a{color:var(--muted);font-weight:500}.api-links a:hover{color:var(--accent)}@media (width<=780px){body{padding:0}.shell{box-shadow:none;border:none;border-radius:0}.layout{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border-soft)}main{padding:2.25rem 1.5rem}}
