.releases-header{text-align:left;padding:120px 0 40px;position:relative}.releases-header .container{max-width:880px}@media (width>=1180px){.releases-header .container{padding-left:91px}}.releases-title{letter-spacing:-.05em;color:#c4c9d8;margin:12px 0 14px;font-size:clamp(48px,7.5vw,84px);font-weight:500;line-height:1.05}.releases-subtitle{color:var(--ink-subtle);max-width:560px;font-size:15px}.releases-list-section{padding:40px 0 100px}.releases-list{flex-direction:column;gap:28px;min-width:0;max-width:880px;margin:0 auto;display:flex}.releases-layout{position:relative}.releases-aside{display:none}@media (width>=1180px){.releases-layout{justify-content:center;gap:32px;display:flex}.releases-aside{flex-shrink:0;align-self:flex-start;width:150px;display:block;position:sticky;top:80px}.releases-list{flex:1 1 0;min-width:0;max-width:880px}}.releases-toc{-webkit-backdrop-filter:none;background:0 0;border:0;max-height:none;padding:0;display:block;overflow:visible}.releases-toc-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid var(--hairline);margin-bottom:18px;padding-bottom:10px;padding-left:20px;font-size:12px;font-weight:600}.releases-toc ul{margin:0;padding:0;list-style:none;position:relative}.releases-toc ul:before{content:"";background:linear-gradient(to bottom, #60a5fa40, var(--hairline) 15%, var(--hairline) 85%, #60a5fa14);border-radius:1px;width:2px;position:absolute;top:0;bottom:0;left:7px}.releases-toc-item{color:var(--ink-muted);transition:color var(--t-fast) var(--ease);align-items:center;gap:14px;padding:12px 0;font-size:13px;font-weight:500;text-decoration:none;display:flex;position:relative}.releases-toc-dot{background:var(--canvas);border:2px solid var(--ink-faint);width:12px;height:12px;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);border-radius:50%;flex-shrink:0;margin-left:1px;position:relative}.releases-toc-item.is-latest .releases-toc-dot{background:#60a5fa;border-color:#60a5fa;box-shadow:0 0 0 4px #60a5fa26,0 0 12px #60a5fa33}.releases-toc-item.is-active .releases-toc-dot{background:0 0;border-color:#5eead4;box-shadow:0 0 0 4px #5eead41f,0 0 8px #5eead426}.releases-toc-item.is-latest.is-active .releases-toc-dot{background:#60a5fa;border-color:#60a5fa;box-shadow:0 0 0 4px #60a5fa2e,0 0 12px #60a5fa38}.releases-toc-item:hover,.releases-toc-item.is-active{color:var(--ink)}.releases-toc-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.releases-empty{text-align:left;color:var(--ink-subtle);padding:60px 20px;font-size:15px}.releases-empty a{color:var(--accent);margin-left:6px;text-decoration:none}.releases-empty a:hover{text-decoration:underline}.release-card{border-radius:var(--r-xl);border:1px solid var(--hairline);transition:border-color var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease), transform var(--t-base) var(--ease);background:linear-gradient(#ffffff06 0%,#ffffff03 100%);padding:28px 32px 24px;position:relative}.release-card:hover{border-color:#60a5fa73;transform:translateY(-1px);box-shadow:inset 0 0 0 1px #60a5fa1a,0 8px 32px -10px #60a5fa47}.release-card--latest{border-color:#60a5fa2e;box-shadow:inset 0 0 0 1px #60a5fa0a}.release-card--latest:hover{border-color:#60a5fa73;box-shadow:inset 0 0 0 1px #60a5fa1a,0 8px 32px -10px #60a5fa47}.release-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.release-head-left{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.release-head-right{color:var(--ink-subtle);flex-shrink:0;align-items:center;gap:12px;font-size:13px;display:flex}.release-name{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600;line-height:1.3}.release-latest-tag{letter-spacing:.06em;color:#34d399;border-radius:var(--r-pill);text-transform:uppercase;background:#34d39914;border:1px solid #34d39940;align-items:center;gap:4px;padding:3px 10px 3px 8px;font-size:11px;font-weight:600;display:inline-flex}.release-date{color:var(--ink-subtle)}.release-author{color:var(--ink-faint);font-size:12px}.release-github-link{color:var(--ink-muted);border-radius:var(--r-pill);border:1px solid var(--hairline);transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);align-items:center;gap:6px;padding:4px 10px;font-size:12px;text-decoration:none;display:inline-flex}.release-github-link:hover{color:var(--ink);border-color:var(--hairline-strong)}.markdown-body{color:var(--ink-muted);font-size:15px;line-height:1.7}.markdown-body p{margin:0 0 12px}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--ink);letter-spacing:-.01em;margin:22px 0 10px;line-height:1.3}.markdown-body h1{font-size:26px;font-weight:600}.markdown-body h2{font-size:20px;font-weight:600}.markdown-body h3{font-size:17px;font-weight:600}.markdown-body h4{font-size:15px;font-weight:600}.markdown-body ul,.markdown-body ol{margin:0 0 14px;padding-left:22px}.markdown-body li{margin:4px 0}.markdown-body li::marker{color:var(--ink-faint)}.markdown-body code{color:var(--ink);background:#ffffff0d;border-radius:4px;padding:2px 6px;font-family:Source Code Pro,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.markdown-body pre{border:1px solid var(--hairline);border-radius:var(--r-md);background:#0006;margin:12px 0;padding:14px 16px;overflow-x:auto}.markdown-body pre code{color:var(--ink-muted);background:0 0;padding:0;font-size:13px}.markdown-body blockquote{border-left:2px solid var(--hairline-strong);color:var(--ink-subtle);border-radius:0 var(--r-sm) var(--r-sm) 0;background:#ffffff04;margin:12px 0;padding:8px 14px}.markdown-body a{color:#93c5fd;border-bottom:1px dashed #93c5fd4d;text-decoration:none}.markdown-body a:hover{border-bottom-style:solid}.markdown-body hr{border:0;border-top:1px solid var(--hairline);margin:22px 0}.release-assets{margin-top:18px;padding-top:16px}.release-assets-label{color:var(--ink-subtle);letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:600;display:block}.release-assets ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.release-asset-item{list-style:none}.release-asset-link{border:1px solid var(--hairline);border-radius:var(--r-pill);color:var(--ink);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:#ffffff06;align-items:center;gap:8px;padding:6px 12px;font-size:13px;text-decoration:none;display:inline-flex}.release-asset-link:hover{color:#93c5fd;background:#60a5fa0f;border-color:#60a5fa66}.release-asset-name{font-family:Source Code Pro,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.release-asset-size{color:var(--ink-faint);font-size:12px}.release-asset-dl{opacity:0;width:0;transition:opacity var(--t-fast) var(--ease), width var(--t-fast) var(--ease);align-items:center;display:inline-flex;overflow:hidden}.release-asset-link:hover .release-asset-dl{opacity:1;width:14px}.release-card--loading{flex-direction:column;gap:14px;min-height:200px;padding:28px 32px;display:flex}.release-skel-bar{background:linear-gradient(90deg,#ffffff0a,#ffffff1a,#ffffff0a) 0 0/200% 100%;border-radius:6px;height:14px;animation:1.4s ease-in-out infinite skel-shimmer}@keyframes skel-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media (width<=640px){.releases-header{padding:96px 0 24px}.release-card{padding:20px 18px 18px}.release-head{flex-direction:column;align-items:flex-start}.release-head-right{flex-wrap:wrap;width:100%}.release-name{font-size:18px}}
