.publication[data-astro-cid-yda2cnew]{display:flex;gap:2rem;padding-bottom:2.5rem;margin-bottom:2.5rem;border-bottom:1px solid var(--color-border)}.publication[data-astro-cid-yda2cnew]:last-of-type{border-bottom:none}.publication-content[data-astro-cid-yda2cnew]{flex:1}.publication-title[data-astro-cid-yda2cnew]{margin:0 0 1rem;font-size:1.5rem;color:var(--color-text);line-height:1.3}.publication-meta[data-astro-cid-yda2cnew]{margin-bottom:1.25rem}.authors[data-astro-cid-yda2cnew]{font-size:.95rem;margin-bottom:.5rem;color:var(--color-text)}.venue[data-astro-cid-yda2cnew]{font-size:.9rem;color:var(--color-text-light);margin:0}.journal[data-astro-cid-yda2cnew]{font-style:italic}.year[data-astro-cid-yda2cnew]{margin-left:.5rem}.publication-summary[data-astro-cid-yda2cnew]{background-color:var(--color-bg-alt);margin-bottom:1.25rem;position:relative;padding:0 1rem}.summary-border[data-astro-cid-yda2cnew]{position:absolute;left:0;width:100%;height:2px;background-color:var(--color-border)}.summary-border[data-astro-cid-yda2cnew].top{top:0}.summary-border[data-astro-cid-yda2cnew].bottom{bottom:0}.description[data-astro-cid-yda2cnew]{margin:0;padding:1.25rem 0;line-height:1.5;color:var(--color-text)}.publication-actions[data-astro-cid-yda2cnew]{display:flex;gap:1.5rem}.action-link[data-astro-cid-yda2cnew]{color:var(--color-primary);font-weight:500;text-decoration:none;position:relative;background:none;border:none;padding:0;cursor:pointer;font-size:1rem;font-family:inherit;display:inline;margin:0;outline:none;text-align:left}.action-link[data-astro-cid-yda2cnew]:after{content:"";position:absolute;width:100%;height:1px;bottom:-2px;left:0;background-color:var(--color-primary);transform:scaleX(0);transform-origin:bottom right;transition:transform .3s ease}.action-link[data-astro-cid-yda2cnew]:hover{text-decoration:none}.action-link[data-astro-cid-yda2cnew]:hover:after{transform:scaleX(1);transform-origin:bottom left}.bib-content[data-astro-cid-yda2cnew]{position:relative;margin-top:1rem;padding:1rem;background-color:var(--color-bg-alt);border-radius:4px;font-family:monospace;font-size:.9rem;max-width:100%;overflow-x:auto}.bib-copy[data-astro-cid-yda2cnew]{position:absolute;top:.5rem;right:.5rem;display:flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;padding:0;color:var(--color-text-light);cursor:pointer;transition:color .2s ease,border-color .2s ease}.bib-copy[data-astro-cid-yda2cnew]:hover{color:var(--color-text);border-color:var(--color-text-light)}.bib-copy[data-astro-cid-yda2cnew] .icon-check[data-astro-cid-yda2cnew],.bib-copy[data-astro-cid-yda2cnew].copied .icon-copy[data-astro-cid-yda2cnew]{display:none}.bib-copy[data-astro-cid-yda2cnew].copied .icon-check[data-astro-cid-yda2cnew]{display:block;color:#22c55e}.bib-content[data-astro-cid-yda2cnew] pre[data-astro-cid-yda2cnew]{margin:0;white-space:pre-wrap}.publication-image[data-astro-cid-yda2cnew]{flex:0 1 35%;height:200px;display:flex;align-items:center;justify-content:center;overflow:hidden}.publication-image[data-astro-cid-yda2cnew] img[data-astro-cid-yda2cnew]{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:6px;opacity:0;transition:transform .2s ease,opacity .4s ease}.publication-image[data-astro-cid-yda2cnew] img[data-astro-cid-yda2cnew].loaded{opacity:1}.publication-image[data-astro-cid-yda2cnew] img[data-astro-cid-yda2cnew]:hover{transform:scale(1.03)}@media(max-width:768px){.publication[data-astro-cid-yda2cnew]{flex-direction:column-reverse;gap:1.5rem}.publication-image[data-astro-cid-yda2cnew]{flex:0 0 auto;width:100%;height:200px;justify-content:center}.publication-image[data-astro-cid-yda2cnew] img[data-astro-cid-yda2cnew]{max-height:200px;max-width:100%;width:auto;object-fit:contain}}.publications-page[data-astro-cid-f3fmnth3]{max-width:900px;margin:0 auto;animation:fadeIn .8s ease-out}h1[data-astro-cid-f3fmnth3]{margin-bottom:1.5rem;font-size:2.25rem}.publications-intro[data-astro-cid-f3fmnth3]{margin-bottom:2.5rem;color:var(--color-text-light);font-size:1.1rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
