.detail-page.svelte-32tyrh{padding-top:5rem;min-height:100vh}.detail-content.svelte-32tyrh{max-width:var(--max-width);margin:0 auto;padding:var(--spacing-2xl) var(--spacing-xl) var(--spacing-section)}.hero-image.svelte-32tyrh{max-width:75ch;overflow:hidden;margin-bottom:var(--spacing-lg)}.hero-image.svelte-32tyrh img:where(.svelte-32tyrh){width:100%;height:auto;display:block}.body.svelte-32tyrh{max-width:75ch}.meta.svelte-32tyrh{display:flex;align-items:baseline;gap:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.type.svelte-32tyrh{font-size:var(--font-size-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark)}.date.svelte-32tyrh{font-size:var(--font-size-xs);color:var(--color-gray-500)}.title.svelte-32tyrh{font-size:var(--font-size-section-title);font-weight:700;color:var(--color-dark);line-height:1.15;letter-spacing:-.02em;margin-bottom:var(--spacing-md)}.tags.svelte-32tyrh{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:var(--spacing-xl)}.prose.svelte-32tyrh{font-size:var(--font-size-base);color:var(--color-dark);line-height:1.8}.prose.svelte-32tyrh p:where(.svelte-32tyrh){margin-bottom:var(--spacing-lg)}.prose.svelte-32tyrh h2{font-size:var(--font-size-lg);font-weight:700;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-sm)}.prose.svelte-32tyrh blockquote{font-size:var(--font-size-xl);font-weight:600;color:var(--color-blue);line-height:1.4;margin:var(--spacing-xl) 0;padding:0;border:none}.prose.svelte-32tyrh .code-block{position:relative;margin:var(--spacing-lg) 0}.prose.svelte-32tyrh .copy-btn{position:absolute;top:.75rem;right:.75rem;z-index:2;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:#ffffff14;color:#ffffff80;cursor:pointer;transition:background .2s,color .2s}.prose.svelte-32tyrh .copy-btn:hover{background:#ffffff26;color:#ffffffe6}.prose.svelte-32tyrh .copy-btn.copied{color:#98c379}.prose.svelte-32tyrh pre{background:var(--color-dark);color:#e6e6e6;border-radius:var(--border-radius);padding:var(--spacing-lg);overflow-x:auto;margin:0;font-size:.875rem;line-height:1.7}.prose.svelte-32tyrh code{font-family:JetBrains Mono,Fira Code,SF Mono,Consolas,monospace}.prose.svelte-32tyrh :not(pre)>code{background:var(--color-gray-200);padding:.15em .4em;border-radius:4px;font-size:.9em;color:var(--color-dark)}.prose.svelte-32tyrh .hljs-keyword,.prose.svelte-32tyrh .hljs-selector-tag,.prose.svelte-32tyrh .hljs-built_in{color:#c678dd}.prose.svelte-32tyrh .hljs-string,.prose.svelte-32tyrh .hljs-attr{color:#98c379}.prose.svelte-32tyrh .hljs-number,.prose.svelte-32tyrh .hljs-literal{color:#d19a66}.prose.svelte-32tyrh .hljs-comment{color:#5c6370;font-style:italic}.prose.svelte-32tyrh .hljs-function,.prose.svelte-32tyrh .hljs-title{color:#61afef}.prose.svelte-32tyrh .hljs-variable,.prose.svelte-32tyrh .hljs-params{color:#e06c75}.prose.svelte-32tyrh .hljs-type,.prose.svelte-32tyrh .hljs-class .hljs-title{color:#e5c07b}.prose.svelte-32tyrh .hljs-meta{color:#56b6c2}.prose.svelte-32tyrh .hljs-punctuation{color:#abb2bf}.not-found.svelte-32tyrh{padding:calc(5rem + var(--spacing-section)) var(--spacing-xl);text-align:center;font-size:var(--font-size-lg);color:var(--color-gray-500);min-height:50vh}.detail-research.svelte-32tyrh{background:#f7f7f7}.detail-research.svelte-32tyrh .title:where(.svelte-32tyrh){color:var(--color-blue)}.detail-research.svelte-32tyrh .type:where(.svelte-32tyrh){color:var(--color-blue)}.browse-all.svelte-32tyrh{display:inline-block;margin-top:var(--spacing-2xl);font-size:var(--font-size-sm);font-weight:600;letter-spacing:.05em;color:var(--color-dark);text-decoration:underline;text-underline-offset:4px;transition:color .2s}.browse-all.svelte-32tyrh:hover{color:var(--color-blue)}.related-section.svelte-32tyrh{position:relative;padding:var(--spacing-section) 0;background:#f7f7f7}.related-inner.svelte-32tyrh{max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-xl)}.related-grid.svelte-32tyrh{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(400px,auto);gap:var(--spacing-2xl)}@media(max-width:768px){.detail-content.svelte-32tyrh{padding:var(--spacing-xl) var(--spacing-md) var(--spacing-2xl)}.title.svelte-32tyrh{font-size:clamp(2rem,8vw,3.5rem)}.related-inner.svelte-32tyrh{padding:0 var(--spacing-md)}.related-grid.svelte-32tyrh{grid-template-columns:1fr;grid-auto-rows:auto}}
