.article-meta__copy-btn{all:unset;align-items:center;color:var(--sd-color-text-subtle);cursor:pointer;display:inline-flex;font-size:var(--sd-font-size-small);font-weight:var(--sd-font-weight-normal);gap:6px;line-height:22px;transition:color .15s ease}.article-meta__copy-btn svg{flex-shrink:0}.article-meta__copy-btn:hover{color:var(--sd-color-primary)}.author-profile{align-items:center;color:var(--sd-color-text-muted);display:flex;font-size:var(--sd-font-size-caption);font-style:normal;font-weight:var(--sd-font-weight-medium);gap:6px;line-height:var(--sd-line-height-small);overflow:hidden;text-overflow:ellipsis}.author-profile__image{border-radius:var(--sd-radius-full);height:32px;object-fit:cover;width:32px}.author-profile__name{color:var(--sd-color-text-light);font-size:var(--sd-font-size-caption);line-height:var(--sd-line-height-small)}.author-profile__date,.author-profile__name{font-style:normal;font-weight:var(--sd-font-weight-medium);overflow:hidden;text-overflow:ellipsis}.author-profile__date{color:var(--sd-color-text-subtle);font-size:var(--sd-font-size-micro);line-height:var(--sd-line-height-xs)}.article-meta{align-items:center;display:flex;gap:12px}.article-meta__divider{background-color:#c9c9c9;flex-shrink:0;height:16px;width:1px}.article-meta__read-time{align-items:center;color:var(--sd-color-text-subtle);display:inline-flex;font-size:var(--sd-font-size-small);font-weight:var(--sd-font-weight-normal);gap:6px;line-height:22px}.article-meta__read-time svg{flex-shrink:0}.article-meta__author{gap:6px}.article-meta__author,.article-meta__author-avatar{align-items:center;display:flex;justify-content:center}.article-meta__author-avatar{border:1px solid #fff;border-radius:var(--sd-radius-full);flex-shrink:0;height:20px;object-fit:cover;width:20px}.article-meta__author-avatar .avatar{height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;width:20px}.article-meta__author-avatar .avatar span{margin-bottom:0}.article-meta__author-name{color:var(--sd-color-text-subtle);font-size:var(--sd-font-size-small);font-weight:var(--sd-font-weight-medium);line-height:22px;white-space:nowrap}.table-of-contents{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - var(--sd-header-height) - 63px);max-width:280px;min-width:280px;overflow-y:auto;padding:64px 72px 0 0;position:fixed;right:0;z-index:100}.table-of-contents__header{align-items:center;display:flex;gap:8px;height:24px}.table-of-contents__icon{flex-shrink:0;height:12px;width:12px}.table-of-contents__title{color:var(--sd-color-text-primary);font-size:14px;font-weight:500;line-height:22px}.table-of-contents__list{border-left:1px solid var(--sd-color-border-slate-light);display:flex;flex-direction:column;gap:2px;padding-left:0}.table-of-contents .toc-link{align-items:center;background:none;border:none;border-left:3px solid transparent;cursor:pointer;display:flex;padding:4px 16px;position:relative;text-align:left;text-decoration:none;transition:all .2s ease}.table-of-contents .toc-link__text{color:var(--sd-color-text-subtle);flex:1;font-size:12px;font-weight:300;line-height:20px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-of-contents .toc-link:hover:not(.active){background-color:var(--sd-color-bg-slate-4)}.table-of-contents .toc-link:hover:not(.active) .toc-link__indicator-dot{background-color:var(--sd-color-text-darkest);height:100%;left:-5px;position:absolute;top:0;width:2px}.table-of-contents .toc-link:hover:not(.active) .toc-link__text{color:var(--sd-color-text-darkest)}.table-of-contents .toc-link.active .toc-link__indicator-dot{background-color:var(--sd-color-primary);height:100%;left:-5px;position:absolute;top:0;width:2px}.table-of-contents .toc-link.active .toc-link__text{color:var(--sd-color-primary);font-weight:500}@media(max-width:1024px){.table-of-contents{display:none}}@keyframes sd-lightbox-fade-in{0%{opacity:0}to{opacity:1}}@keyframes sd-lightbox-fade-out{0%{opacity:1}to{opacity:0}}@keyframes sd-lightbox-zoom-in{0%{transform:translate(var(--sd-lightbox-dx,0),var(--sd-lightbox-dy,0)) scale(var(--sd-lightbox-scale,.92))}to{transform:translate(0) scale(1)}}@keyframes sd-lightbox-zoom-out{0%{transform:translate(0) scale(1)}to{transform:translate(var(--sd-lightbox-dx,0),var(--sd-lightbox-dy,0)) scale(var(--sd-lightbox-scale,.92))}}:root{--sd-lightbox-pad:32px}@media(max-width:1024px){:root{--sd-lightbox-pad:20px}}@media(max-width:768px){:root{--sd-lightbox-pad:12px}}@layer components{.image-figure{align-items:center;display:flex;flex-direction:column;margin:0}.image-figure .thumbnail{border-radius:var(--sd-radius-sm);cursor:zoom-in;height:auto;max-width:100%;transition:transform .2s ease}.image-figure .thumbnail:hover{transform:scale(1.01)}.image-caption{color:var(--sd-color-text-slate);font-size:var(--sd-font-size-small);line-height:var(--sd-line-height-small);margin-top:var(--sd-space-1);text-align:center}.modal-overlay{align-items:center;animation:sd-lightbox-fade-in .3s cubic-bezier(.25,.1,.35,1) both;background:var(--sd-color-lightbox-overlay);display:flex;inset:0;justify-content:center;padding:var(--sd-lightbox-pad);position:fixed;z-index:var(--sd-lightbox-z-index)}.modal-overlay .modal-image{animation:sd-lightbox-zoom-in .3s cubic-bezier(.2,.8,.3,1) both}.modal-overlay--closing{animation-duration:.2s;animation-name:sd-lightbox-fade-out;animation-timing-function:cubic-bezier(.4,0,1,1)}.modal-overlay--closing .modal-image{animation-duration:.2s;animation-name:sd-lightbox-zoom-out;animation-timing-function:cubic-bezier(.4,0,1,1)}.modal-content{all:unset;align-items:center;box-sizing:border-box;cursor:zoom-out;display:flex;height:100%;justify-content:center;position:relative;width:100%}.modal-image{border-radius:var(--sd-radius-md);box-shadow:var(--sd-shadow-lightbox);height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.modal-close{align-items:center;background:var(--sd-color-lightbox-close-bg);border:1px solid var(--sd-color-lightbox-close-border);border-radius:var(--sd-radius-full);color:var(--sd-color-lightbox-close-text);cursor:pointer;display:flex;height:54px;justify-content:center;padding:0;position:absolute;right:var(--sd-space-5);top:var(--sd-space-5);transition:background .15s ease;width:54px}.modal-close:hover{background:hsla(0,0%,100%,.2)}@media(max-width:768px){.modal-close{right:var(--sd-space-3);top:var(--sd-space-3)}}@media(prefers-reduced-motion:reduce){.image-figure .thumbnail{transition:none}.image-figure .thumbnail:hover{transform:none}.modal-overlay,.modal-overlay .modal-image{animation-duration:.01ms}.modal-close{transition:none}}}