.blog-post-main{padding:2.5rem 0 6rem}.blog-post-layout{width:min(1200px,calc(100% - 3rem));margin:0 auto;display:grid;grid-template-columns:220px 1fr;gap:3rem;align-items:start;position:relative}.blog-toc{position:sticky;top:calc(var(--navbar-height) + 1.5rem);align-self:start;max-height:calc(100vh - var(--navbar-height) - 3rem);overflow-y:auto;scrollbar-width:none}.blog-toc::-webkit-scrollbar{display:none}.toc-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted-soft);margin:0 0 .75rem}.toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.15rem}.toc-item{all:unset;display:block;width:100%;padding:.4rem .75rem;font-size:.875rem;font-weight:500;color:var(--muted);border-left:2px solid var(--border);cursor:pointer;transition:color .15s ease,border-color .15s ease;line-height:1.4}.toc-item:hover{color:var(--text);border-left-color:var(--frame-border)}.toc-active{color:var(--primary);border-left-color:var(--primary);font-weight:700}.blog-post-article{min-width:0}.blog-back-wrap{margin-bottom:1.5rem}.blog-post-hero{width:100%;aspect-ratio:16 / 7;border-radius:1.25rem;overflow:hidden;background:var(--border);margin-bottom:1.75rem}.blog-post-hero img{width:100%;height:100%;object-fit:cover;display:block}.blog-post-date{margin:0 0 .4rem;font-size:.8rem;font-weight:600;color:var(--muted-soft);text-transform:uppercase;letter-spacing:.06em}.blog-post-title{margin:0 0 .75rem;font-size:clamp(1.8rem,3vw,2.4rem);color:var(--text);line-height:1.15}.blog-post-excerpt{margin:0 0 2.5rem;font-size:1.05rem;color:var(--muted-soft);line-height:1.6;border-bottom:1px solid var(--border);padding-bottom:2rem}.blog-post-content section{margin-bottom:2.5rem}.blog-post-content h2{font-size:1.3rem;font-weight:800;color:var(--text);margin:0 0 .6rem;scroll-margin-top:calc(var(--navbar-height) + 1.5rem)}.blog-post-content p{margin:0;font-size:1rem;line-height:1.75;color:var(--text)}.cite-ref{display:inline;font-size:.7em;font-weight:700;color:var(--primary);vertical-align:super;text-decoration:none;line-height:0;margin-left:1px}.cite-ref:hover{text-decoration:underline}.citations-list{display:flex;flex-direction:column;gap:.875rem;margin-top:.5rem}.citation-card{display:flex;gap:1.25rem;align-items:stretch;background:var(--surface);border:1.5px solid var(--border);border-radius:1rem;padding:1rem 1.25rem 1rem 1rem;text-decoration:none;color:inherit;transition:border-color .15s ease,box-shadow .15s ease;overflow:hidden}.citation-card:hover{border-color:var(--primary);box-shadow:0 2px 16px #6fcaef2e}.citation-preview{flex-shrink:0;width:88px;background:var(--surface);border:1px solid var(--border);border-radius:.5rem;box-shadow:2px 3px 8px #0000001a,4px 6px 0 -1px var(--border);padding:.5rem .5rem .4rem;display:flex;flex-direction:column;gap:.25rem;position:relative;overflow:hidden}.citation-preview-header{height:5px;background:var(--primary);border-radius:2px;margin-bottom:.2rem}.citation-preview-title{margin:0;font-size:.38rem;font-weight:800;color:var(--text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.citation-preview-authors{margin:0;font-size:.32rem;color:var(--muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.citation-preview-lines{display:flex;flex-direction:column;gap:2px;margin-top:.15rem;flex:1}.citation-preview-lines span{display:block;height:2px;background:var(--border);border-radius:1px}.citation-preview-lines span:nth-child(3){width:70%}.citation-preview-lines span:nth-child(4){width:55%}.citation-preview-lines span:nth-child(5){width:80%}.citation-preview-badge{position:absolute;bottom:.3rem;right:.3rem;font-size:.3rem;font-weight:800;background:var(--primary);color:var(--white);padding:1px 3px;border-radius:2px;letter-spacing:.04em}.citation-body{display:flex;flex-direction:column;gap:.2rem;min-width:0;justify-content:center}.citation-index-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.1rem}.citation-index{font-size:.75rem;font-weight:800;color:var(--primary)}.citation-pdf-tag{font-size:.7rem;font-weight:600;color:var(--primary);background:#6fcaef1f;padding:.1rem .45rem;border-radius:999px}.citation-title{margin:0;font-size:.9rem;font-weight:700;color:var(--text);line-height:1.4}.citation-meta{margin:0;font-size:.78rem;color:var(--muted-soft);font-weight:500}.citation-journal{margin:0;font-size:.78rem;color:var(--muted-soft)}.citation-doi{margin:.1rem 0 0;font-size:.72rem;color:var(--primary);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toc-fab,.toc-overlay{display:none}@media(max-width:900px){.blog-post-layout{grid-template-columns:1fr}.blog-toc{display:none}.toc-fab{display:flex;align-items:center;gap:.4rem;position:fixed;bottom:1.25rem;left:1.25rem;z-index:50;background:var(--primary-light);color:var(--white);border:none;border-radius:2rem;padding:.65rem 1rem;font-family:inherit;font-size:.8rem;font-weight:700;cursor:pointer;box-shadow:0 4px 16px #0000002e,0 4px 0 0 var(--frame-shadow-deep);transition:transform .1s ease,box-shadow .1s ease}.toc-fab:active{transform:translateY(2px);box-shadow:0 2px 8px #00000026,0 2px 0 0 var(--frame-shadow-deep)}.toc-overlay{display:flex;position:fixed;inset:0;z-index:100;background:#0a234f66;backdrop-filter:blur(4px);align-items:flex-end;justify-content:center;padding:1rem}.toc-overlay-panel{background:var(--surface);border:1.5px solid var(--border);border-radius:1.25rem;padding:1.25rem;width:100%;max-width:400px;max-height:70vh;overflow-y:auto}.toc-overlay-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.toc-overlay-header .toc-label{margin:0}.toc-overlay-close{background:transparent;border:none;font-size:1.5rem;color:var(--muted-soft);cursor:pointer;padding:0 .25rem;line-height:1}}
