.blog-page:where(.astro-5tznm7mj){max-width:860px;margin:0 auto;padding:100px 24px 80px;min-height:70vh}.blog-header:where(.astro-5tznm7mj){margin-bottom:var(--r-space-10)}.blog-header:where(.astro-5tznm7mj) h1:where(.astro-5tznm7mj){font-size:2.2rem;font-weight:550;letter-spacing:-.03em;margin:0 0 12px;color:var(--text)}.blog-lead:where(.astro-5tznm7mj){font-size:1.05rem;color:var(--text-3);margin:0 0 16px;line-height:var(--r-leading-normal)}.rss-link:where(.astro-5tznm7mj){display:inline-flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-3);border:1px solid var(--border);border-radius:var(--r-radius-xs);padding:4px 10px;transition:all var(--r-duration-fast)}.rss-link:where(.astro-5tznm7mj):hover{color:var(--text-2);border-color:var(--text-3)}.featured-section:where(.astro-5tznm7mj){margin-bottom:var(--r-space-10)}.featured-grid:where(.astro-5tznm7mj){display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.featured-card:where(.astro-5tznm7mj){display:flex;flex-direction:column;border-radius:var(--r-radius-md);overflow:hidden}.featured-cover:where(.astro-5tznm7mj){position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--surface);border-bottom:1px solid var(--border)}.featured-cover-structured:where(.astro-5tznm7mj){aspect-ratio:auto;min-height:8.5rem}.featured-cover-structured:where(.astro-5tznm7mj) .blog-cover-board{min-height:7.5rem;border:none;border-radius:0}.featured-cover:where(.astro-5tznm7mj) img:where(.astro-5tznm7mj){width:100%;height:100%;object-fit:cover}.featured-cover:where(.astro-5tznm7mj) .cat:where(.astro-5tznm7mj){position:absolute;top:10px;left:10px}.featured-placeholder:where(.astro-5tznm7mj){width:100%;height:100%;background:#111113;display:flex;align-items:center;justify-content:center;padding:20px}.fp-title:where(.astro-5tznm7mj){font-size:1.1rem;font-weight:700;color:#d4d4d8;line-height:var(--r-leading-snug);text-transform:uppercase;letter-spacing:-.02em;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.featured-card:where(.astro-5tznm7mj) h3:where(.astro-5tznm7mj){font-size:var(--r-text-base);font-weight:500;line-height:var(--r-leading-snug);padding:14px 16px;color:var(--text-1);letter-spacing:-.02em;margin:0}.start-here:where(.astro-5tznm7mj){margin-bottom:var(--r-space-10)}.section-label:where(.astro-5tznm7mj){display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:500;color:var(--text-3);margin:0 0 14px;letter-spacing:.02em}.section-icon:where(.astro-5tznm7mj){flex-shrink:0;color:var(--text-3)}.path-row:where(.astro-5tznm7mj){display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.path-card:where(.astro-5tznm7mj){display:flex;flex-direction:column;gap:4px;padding:var(--r-space-4);border:1px solid var(--border);border-radius:var(--r-radius-md);background:var(--surface);transition:border-color var(--r-duration-fast),background var(--r-duration-fast)}.path-card:where(.astro-5tznm7mj):hover{border-color:var(--border-hover);background:var(--surface-hover)}.path-step:where(.astro-5tznm7mj){font-size:.7rem;font-weight:500;color:var(--r-accent-high);font-family:var(--mono)}.path-label:where(.astro-5tznm7mj){font-size:.72rem;color:var(--text-3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em}.path-title:where(.astro-5tznm7mj){font-size:.85rem;font-weight:500;color:var(--text);line-height:var(--r-leading-snug)}.toolbar:where(.astro-5tznm7mj){display:flex;align-items:center;gap:12px;margin-bottom:var(--r-space-6);padding:12px 0;position:sticky;top:56px;z-index:50;background:var(--bg);border-bottom:1px solid transparent;transition:border-color var(--r-duration-fast)}.toolbar:where(.astro-5tznm7mj).stuck{border-color:var(--border)}.filter-bar:where(.astro-5tznm7mj){display:flex;gap:6px;flex-wrap:nowrap;flex-shrink:0;overflow-x:auto}.filter-bar:where(.astro-5tznm7mj)::-webkit-scrollbar{display:none}.toolbar-right:where(.astro-5tznm7mj){display:flex;gap:8px;flex:1;min-width:0;justify-content:flex-end}.search-bar:where(.astro-5tznm7mj){position:relative;flex:1;min-width:0;max-width:200px}.search-icon:where(.astro-5tznm7mj){position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}.search-input:where(.astro-5tznm7mj){width:100%;padding:7px 12px 7px 32px;font-size:.85rem;font-family:var(--mono);border:1px solid var(--border);border-radius:var(--r-radius-sm);background:var(--surface);color:var(--text);outline:none;transition:border-color var(--r-duration-fast)}.search-input:where(.astro-5tznm7mj)::placeholder{color:var(--text-3)}.search-input:where(.astro-5tznm7mj):focus{border-color:var(--text-3)}.search-clear:where(.astro-5tznm7mj){position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--r-radius-xs);background:transparent;color:var(--text-3);cursor:pointer;transition:color var(--r-duration-micro),background var(--r-duration-micro)}.search-clear:where(.astro-5tznm7mj):hover{color:var(--text);background:var(--border)}.search-clear:where(.astro-5tznm7mj)[hidden]{display:none}.sort-wrap:where(.astro-5tznm7mj){position:relative}.sort-btn:where(.astro-5tznm7mj){display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:500;padding:7px 12px;white-space:nowrap;border:1px solid var(--border);border-radius:var(--r-radius-sm);background:var(--surface);color:var(--text-3);cursor:pointer;transition:all var(--r-duration-fast);font-family:var(--mono)}.sort-btn:where(.astro-5tznm7mj):hover{border-color:var(--border-hover);color:var(--text-2)}.sort-dropdown:where(.astro-5tznm7mj){position:absolute;top:calc(100% + 4px);right:0;z-index:60;min-width:100%;border:1px solid var(--border);border-radius:var(--r-radius-sm);background:var(--surface);box-shadow:var(--r-shadow-sm);overflow:hidden}.sort-dropdown:where(.astro-5tznm7mj)[hidden]{display:none}.sort-option:where(.astro-5tznm7mj){display:block;width:100%;padding:8px 14px;text-align:left;font-size:.78rem;font-family:var(--mono);border:none;background:transparent;color:var(--text-3);cursor:pointer;transition:background var(--r-duration-micro),color var(--r-duration-micro)}.sort-option:where(.astro-5tznm7mj):hover{background:var(--border);color:var(--text)}.sort-option:where(.astro-5tznm7mj).active{color:var(--text);font-weight:500}.filter-btn:where(.astro-5tznm7mj){font-size:.78rem;font-weight:500;padding:7px 12px;white-space:nowrap;border:1px solid var(--border);border-radius:var(--r-radius-sm);background:var(--surface);color:var(--text-3);cursor:pointer;transition:all var(--r-duration-fast);font-family:var(--mono)}.filter-btn:where(.astro-5tznm7mj):hover{border-color:var(--border-hover);color:var(--text-2)}.filter-btn:where(.astro-5tznm7mj).active{background:var(--text);color:var(--bg);border-color:var(--text)}.release-timeline:where(.astro-5tznm7mj){margin-bottom:var(--r-space-6);border:1px solid var(--border);border-radius:var(--r-radius-lg);background:var(--surface);overflow:hidden}.timeline-header:where(.astro-5tznm7mj){display:flex;align-items:center;gap:8px;padding:14px 20px;font-size:.88rem;font-weight:500;color:var(--text)}.timeline-icon:where(.astro-5tznm7mj){flex-shrink:0;color:var(--color-success)}.timeline-count:where(.astro-5tznm7mj){font-size:.7rem;font-weight:500;color:var(--text-3);background:var(--border);border-radius:var(--r-radius-lg);padding:2px 8px;font-family:var(--mono);margin-left:auto}.timeline-list:where(.astro-5tznm7mj){padding:0 20px 4px;display:flex;flex-direction:column;gap:2px}.timeline-list:where(.astro-5tznm7mj).expanded{display:grid;grid-template-columns:1fr 1fr;gap:2px 16px}.timeline-item:where(.astro-5tznm7mj){display:grid;grid-template-columns:72px 1fr auto;gap:10px;padding:7px 10px;border-radius:var(--r-radius-sm);align-items:center;transition:background var(--r-duration-fast)}.timeline-item:where(.astro-5tznm7mj):hover{background:var(--border)}.timeline-item:where(.astro-5tznm7mj).tl-hidden{display:none}.tl-version:where(.astro-5tznm7mj){font-size:.78rem;font-weight:500;color:var(--color-success);font-family:var(--mono)}.tl-title:where(.astro-5tznm7mj){font-size:.82rem;color:var(--text);line-height:var(--r-leading-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.timeline-item:where(.astro-5tznm7mj) time:where(.astro-5tznm7mj){font-size:.72rem;color:var(--text-3);font-family:var(--mono);white-space:nowrap}.tl-expand:where(.astro-5tznm7mj){display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border:none;border-top:1px solid var(--border);background:transparent;color:var(--text-3);font-size:.78rem;font-family:var(--mono);cursor:pointer;transition:color var(--r-duration-fast),background var(--r-duration-fast)}.tl-expand:where(.astro-5tznm7mj):hover{color:var(--text);background:var(--border)}.tl-expand-count:where(.astro-5tznm7mj){color:var(--color-success)}.blog-grid:where(.astro-5tznm7mj){display:flex;flex-direction:column;gap:16px}.blog-card:where(.astro-5tznm7mj){display:flex;align-items:flex-start;gap:20px;padding:var(--r-space-5) var(--r-space-6);border-radius:var(--r-radius-md)}.blog-card:where(.astro-5tznm7mj).page-hidden{display:none}.blog-card:where(.astro-5tznm7mj)[hidden]{display:none}.card-text:where(.astro-5tznm7mj){flex:1;min-width:0}.card-cover:where(.astro-5tznm7mj){flex-shrink:0;width:200px;height:120px;border-radius:var(--r-radius-md);overflow:hidden;border:1px solid var(--border)}.card-cover-structured:where(.astro-5tznm7mj){border:none;overflow:visible}.card-cover-structured:where(.astro-5tznm7mj) .blog-cover-board{height:100%;min-height:120px}.card-cover:where(.astro-5tznm7mj) img:where(.astro-5tznm7mj){width:100%;height:100%;object-fit:cover;object-position:left center}.card-placeholder:where(.astro-5tznm7mj){width:100%;height:100%;background:var(--border);display:flex;align-items:center;justify-content:center}.card-placeholder:where(.astro-5tznm7mj) span:where(.astro-5tznm7mj){font-size:1.6rem;font-weight:500;color:var(--text-3);opacity:.3;font-family:var(--mono)}.card-meta:where(.astro-5tznm7mj){display:flex;align-items:center;gap:10px;margin-bottom:10px}.cat:where(.astro-5tznm7mj){font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:var(--r-radius-xs);background:var(--r-accent-low);color:var(--r-accent-high)}.cat-deep-dive:where(.astro-5tznm7mj){background:color-mix(in srgb,#06b6d4 12%,transparent);color:#06b6d4}.cat-education:where(.astro-5tznm7mj){background:color-mix(in srgb,#f59e0b 12%,transparent);color:#f59e0b}.cat-release:where(.astro-5tznm7mj){background:var(--color-success-dim);color:var(--color-success)}.cat-research:where(.astro-5tznm7mj){background:color-mix(in srgb,#3b82f6 12%,transparent);color:#3b82f6}.cat-security:where(.astro-5tznm7mj){background:color-mix(in srgb,#ef4444 12%,transparent);color:#ef4444}.cat-tutorial:where(.astro-5tznm7mj){background:color-mix(in srgb,#a855f7 12%,transparent);color:#a855f7}time:where(.astro-5tznm7mj){font-size:.75rem;color:var(--text-3);font-family:var(--mono)}.reading-time:where(.astro-5tznm7mj){font-size:.72rem;color:var(--text-3);font-family:var(--mono)}.blog-card:where(.astro-5tznm7mj) h2:where(.astro-5tznm7mj){font-size:var(--r-text-lg);font-weight:500;letter-spacing:-.02em;margin:0 0 6px;color:var(--text-1);line-height:var(--r-leading-snug)}.card-desc:where(.astro-5tznm7mj){font-size:.85rem;color:var(--text-3);line-height:var(--r-leading-normal);margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-tags:where(.astro-5tznm7mj){display:flex;gap:8px;flex-wrap:wrap}.tag:where(.astro-5tznm7mj){font-size:.7rem;color:var(--text-3);font-family:var(--mono)}.load-more-wrap:where(.astro-5tznm7mj){text-align:center;padding:32px 0 0}.load-more-btn:where(.astro-5tznm7mj){font-size:.88rem;font-weight:500;padding:10px 32px;border:1px solid var(--border);border-radius:var(--r-radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-family:var(--mono);transition:all var(--r-duration-fast)}.load-more-btn:where(.astro-5tznm7mj):hover{border-color:var(--text-3);background:var(--surface-hover, var(--surface))}.load-more-count:where(.astro-5tznm7mj){display:block;margin-top:var(--r-space-2);font-size:.72rem;color:var(--text-3);font-family:var(--mono)}.filter-empty:where(.astro-5tznm7mj){text-align:center;color:var(--text-3);padding:60px 0;font-size:.9rem}.filter-empty:where(.astro-5tznm7mj)[hidden]{display:none}@media(max-width:768px){.blog-page:where(.astro-5tznm7mj){padding:80px 16px 60px}.blog-header:where(.astro-5tznm7mj) h1:where(.astro-5tznm7mj){font-size:1.6rem}.featured-grid:where(.astro-5tznm7mj){grid-template-columns:1fr;gap:12px}.featured-card:where(.astro-5tznm7mj) h3:where(.astro-5tznm7mj){font-size:var(--r-text-sm);padding:12px 14px}.path-row:where(.astro-5tznm7mj){grid-template-columns:repeat(2,1fr);gap:8px}.path-card:where(.astro-5tznm7mj){padding:var(--r-space-3)}.toolbar:where(.astro-5tznm7mj){flex-direction:column;align-items:stretch;gap:10px;top:52px}.filter-bar:where(.astro-5tznm7mj){overflow-x:auto;padding-bottom:2px}.toolbar-right:where(.astro-5tznm7mj){flex-direction:row}.search-bar:where(.astro-5tznm7mj){max-width:none}.blog-card:where(.astro-5tznm7mj){padding:var(--r-space-4);gap:14px}.blog-card:where(.astro-5tznm7mj) h2:where(.astro-5tznm7mj){font-size:var(--r-text-base)}.card-cover:where(.astro-5tznm7mj){width:100px;height:64px}.card-placeholder:where(.astro-5tznm7mj) span:where(.astro-5tznm7mj){font-size:1.2rem}.timeline-list:where(.astro-5tznm7mj).expanded{grid-template-columns:1fr}.timeline-item:where(.astro-5tznm7mj){grid-template-columns:56px 1fr}.timeline-item:where(.astro-5tznm7mj) time:where(.astro-5tznm7mj){display:none}}
