.reading-progress[data-astro-cid-tvswdo7k]{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;pointer-events:none;background:transparent}.reading-progress-bar[data-astro-cid-tvswdo7k]{height:100%;width:0;background:linear-gradient(90deg,#4b009b,#6d00e0,#2563eb);transition:width 80ms ease-out;box-shadow:0 0 12px #4b009b73}.article-hero-image[data-astro-cid-tvswdo7k]{display:block}.article-hero-image[data-astro-cid-tvswdo7k] img{width:100%;height:auto;max-height:560px;object-fit:cover;display:block}.article-content[data-astro-cid-tvswdo7k] h2,.article-content[data-astro-cid-tvswdo7k] h3{position:relative;scroll-margin-top:7rem}.article-content[data-astro-cid-tvswdo7k] h2[id]:before,.article-content[data-astro-cid-tvswdo7k] h3[id]:before{content:"#";position:absolute;left:-1.1em;top:.05em;color:#4b009b;opacity:0;font-weight:700;font-size:.7em;transition:opacity .18s ease;pointer-events:none}.article-content[data-astro-cid-tvswdo7k] h2[id]:hover:before,.article-content[data-astro-cid-tvswdo7k] h3[id]:hover:before{opacity:.7}@media(max-width:1024px){.article-content[data-astro-cid-tvswdo7k] h2[id]:before,.article-content[data-astro-cid-tvswdo7k] h3[id]:before{display:none}}.toc-content[data-astro-cid-tvswdo7k] .toc-list{list-style:none;padding:0;margin:0;border-left:1px solid #e2e8f0}.toc-content[data-astro-cid-tvswdo7k] .toc-item{margin:0}.toc-content[data-astro-cid-tvswdo7k] .toc-item--nested{padding-left:.75rem}.toc-content[data-astro-cid-tvswdo7k] .toc-link{display:block;font-size:.825rem;color:#64748b;text-decoration:none;padding:.375rem 0 .375rem .875rem;margin-left:-1px;border-left:1px solid transparent;line-height:1.4;transition:color .18s ease,border-color .18s ease}.toc-content[data-astro-cid-tvswdo7k] .toc-link:hover{color:#4b009b}.toc-content[data-astro-cid-tvswdo7k] .toc-link.active{color:#4b009b;font-weight:700;border-left-color:#4b009b}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-area{display:flex;flex-direction:column;gap:1.75rem}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget__title{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.22em;color:#4b009b;margin:0 0 .75rem}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget__content{color:#475569;font-size:.875rem;line-height:1.55}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-search{display:flex;flex-direction:column;gap:.5rem}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-search__input{width:100%;padding:.55rem .875rem;font-family:var(--font-sans);font-size:.875rem;border:1px solid #e2e8f0;border-radius:9999px;background:#ffffffd9;color:#0f172a;transition:border-color .18s ease,box-shadow .18s ease}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-search__input::placeholder{color:#94a3b8}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-search__input:focus{outline:none;border-color:#4b009b;box-shadow:0 0 0 3px #4b009b24}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-search__button{display:none}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-recent-posts{list-style:none;padding:0;margin:0}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories li,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives li{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories li:last-child,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives li:last-child{border-bottom:none}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories__link,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives__link,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-recent-posts a{color:#475569;text-decoration:none;font-size:.875rem;transition:color .18s ease}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories__link:hover,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives__link:hover,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-recent-posts a:hover{color:#4b009b}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-categories__count,.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-archives__count{font-size:.7rem;font-weight:700;color:#4b009b;background:#4b009b14;padding:.125rem .5rem;border-radius:9999px}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-recent-posts li{padding:.5rem 0;border-bottom:1px solid #f1f5f9}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-recent-posts li:last-child{border-bottom:none}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-tags__cloud{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.375rem}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-tags__cloud li{margin:0}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-tags__link{display:inline-block;padding:.2rem .6rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#4b009b;background:#4b009b0f;border:1px solid rgba(75,0,155,.18);border-radius:9999px;text-decoration:none;transition:color .18s ease,background .18s ease,border-color .18s ease}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-tags__link:hover{color:#fff;background:#4b009b;border-color:#4b009b}.sidebar-widgets[data-astro-cid-tvswdo7k] .widget-tags__count{display:none}.share-btn[data-astro-cid-tvswdo7k]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-family:inherit;font-size:.8rem;font-weight:600;color:#475569;background:#ffffffd9;backdrop-filter:blur(8px);border:1px solid #e2e8f0;border-radius:10px;text-decoration:none;cursor:pointer;transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease}.share-btn[data-astro-cid-tvswdo7k]:hover{color:#4b009b;background:#fff;border-color:#4b009b59;transform:translateY(-1px)}.share-btn[data-astro-cid-tvswdo7k]:active{transform:translateY(0)}.share-btn--copied[data-astro-cid-tvswdo7k]{color:#4b009b;border-color:#4b009b73;background:#4b009b0f}.share-btn-label[data-astro-cid-tvswdo7k]{flex:1;text-align:left}@media(max-width:1024px){.article-grid[data-astro-cid-tvswdo7k]{max-width:44rem;margin-left:auto;margin-right:auto}}
