.blog-index.svelte-qkqz3k.svelte-qkqz3k{max-width:var(--max-width);margin:0 auto;padding:4rem 1.5rem 6rem}.blog-header.svelte-qkqz3k h1.svelte-qkqz3k{font-family:var(--font-heading);font-size:clamp(2rem,5vw,3rem);font-weight:400;color:var(--fg);margin:0 0 1rem}.rule.svelte-qkqz3k.svelte-qkqz3k{width:100%;height:1px;background:var(--border);margin-bottom:3rem}.year-section.svelte-qkqz3k.svelte-qkqz3k{margin-bottom:2.5rem}.year-label.svelte-qkqz3k.svelte-qkqz3k{font-family:var(--font-body);font-size:.7rem;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.12em;margin:0 0 1rem}.post-list.svelte-qkqz3k.svelte-qkqz3k{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.post-link.svelte-qkqz3k.svelte-qkqz3k{display:grid;grid-template-columns:4rem 1fr;gap:1rem;text-decoration:none;align-items:start}.post-date.svelte-qkqz3k.svelte-qkqz3k{font-family:var(--font-body);font-size:.7rem;color:var(--fg-muted);padding-top:.25rem;white-space:nowrap}.post-info.svelte-qkqz3k.svelte-qkqz3k{display:flex;flex-direction:column;gap:.25rem}.post-title.svelte-qkqz3k.svelte-qkqz3k{font-family:var(--font-heading);font-size:1.1rem;color:var(--fg);transition:color .2s}.post-link.svelte-qkqz3k:hover .post-title.svelte-qkqz3k{color:var(--accent)}.post-excerpt.svelte-qkqz3k.svelte-qkqz3k{font-family:var(--font-heading);font-style:italic;font-size:.9rem;color:var(--fg-muted)}.empty-state.svelte-qkqz3k.svelte-qkqz3k{font-family:var(--font-body);font-size:.8rem;color:var(--fg-muted)}.blog-index.svelte-qkqz3k.svelte-qkqz3k:not(.ff-mode){max-width:var(--page-width);padding:5rem 1.25rem 8rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .blog-header.svelte-qkqz3k{margin-bottom:3rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .blog-header h1.svelte-qkqz3k{font-family:var(--font-body);font-size:clamp(1.875rem,5vw,2.375rem);font-weight:var(--weight-title);line-height:1.15;letter-spacing:-.028em;margin:0}.blog-index.svelte-qkqz3k:not(.ff-mode) .rule.svelte-qkqz3k{display:none}.blog-index.svelte-qkqz3k:not(.ff-mode) .year-section.svelte-qkqz3k{margin-bottom:3rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .year-label.svelte-qkqz3k{font-family:var(--font-mono);font-size:.8125rem;font-weight:400;text-transform:none;letter-spacing:0;margin:0 0 1.25rem;font-variant-numeric:tabular-nums}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-list.svelte-qkqz3k{gap:1.75rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-link.svelte-qkqz3k{grid-template-columns:4.5rem 1fr;gap:1.25rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-date.svelte-qkqz3k{font-family:var(--font-mono);font-size:.8125rem;padding-top:.3rem;font-variant-numeric:tabular-nums}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-info.svelte-qkqz3k{gap:.35rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-title.svelte-qkqz3k{font-family:var(--font-body);font-size:1.0625rem;font-weight:var(--weight-item);line-height:1.4;letter-spacing:-.01em;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px;transition:text-decoration-color .15s}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-link:hover .post-title.svelte-qkqz3k{color:var(--fg);text-decoration-color:var(--fg-muted)}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-excerpt.svelte-qkqz3k{font-family:var(--font-body);font-style:normal;font-size:.9375rem;line-height:1.5}.blog-index.svelte-qkqz3k:not(.ff-mode) .empty-state.svelte-qkqz3k{font-family:var(--font-body);font-size:1rem}@media (min-width: 1024px){.blog-index.svelte-qkqz3k:not(.ff-mode) .post-title.svelte-qkqz3k{font-size:1.125rem}}@media (max-width: 480px){.blog-index.svelte-qkqz3k:not(.ff-mode) .post-link.svelte-qkqz3k{gap:.35rem}.blog-index.svelte-qkqz3k:not(.ff-mode) .post-date.svelte-qkqz3k{padding-top:0}}.blog-index.ff-mode.svelte-qkqz3k .blog-header h1.svelte-qkqz3k{font-family:Minecraftia,sans-serif;font-size:1.5rem;color:var(--fg);text-shadow:0 2px 0 rgba(0,0,0,.6)}.blog-index.ff-mode.svelte-qkqz3k .year-label.svelte-qkqz3k{font-family:Minecraftia,sans-serif;color:var(--accent)}.blog-index.ff-mode.svelte-qkqz3k .post-title.svelte-qkqz3k{font-family:Pixeloid,sans-serif;font-size:.9rem}.blog-index.ff-mode.svelte-qkqz3k .post-date.svelte-qkqz3k{font-family:Minecraftia,sans-serif}.header-row.svelte-qkqz3k.svelte-qkqz3k{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}@media (max-width: 480px){.post-link.svelte-qkqz3k.svelte-qkqz3k{grid-template-columns:1fr}}
