.share-buttons-container[data-astro-cid-yksylofv]{--share-text-color: var(--text-primary);--share-bg-color: transparent;--share-border-color: var(--border-light);--share-hover-bg: var(--bg-secondary);--share-primary-color: var(--primary-brand);--share-dropdown-bg: var(--bg-primary);--share-dropdown-shadow: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06)}[data-astro-cid-yksylofv][x-cloak]{display:none!important}.share-desktop[data-astro-cid-yksylofv]{display:flex;align-items:center;gap:.5rem}.share-btn[data-astro-cid-yksylofv]{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;color:var(--share-text-color);background-color:var(--share-bg-color);border:1px solid var(--share-border-color);border-radius:.375rem;cursor:pointer;transition:all .15s ease;text-decoration:none;line-height:1.25rem}.share-btn[data-astro-cid-yksylofv]:hover{background-color:var(--share-hover-bg)}.share-btn[data-astro-cid-yksylofv]:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 2px var(--share-primary-color)}.share-icon[data-astro-cid-yksylofv]{width:1rem;height:1rem;flex-shrink:0}.share-dropdown-container[data-astro-cid-yksylofv]{position:relative}.share-dropdown[data-astro-cid-yksylofv]{position:absolute;top:100%;right:0;margin-top:.5rem;min-width:200px;background-color:var(--share-dropdown-bg);border:1px solid var(--share-border-color);border-radius:.5rem;box-shadow:var(--share-dropdown-shadow);z-index:10}.share-dropdown-item[data-astro-cid-yksylofv]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-size:.875rem;color:var(--share-text-color);background:none;border:none;cursor:pointer;transition:background-color .15s ease;text-align:left}.share-dropdown-item[data-astro-cid-yksylofv]:hover{background-color:var(--share-hover-bg)}.share-dropdown-item[data-astro-cid-yksylofv]:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.share-dropdown-item[data-astro-cid-yksylofv]:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.share-btn-mobile[data-astro-cid-yksylofv]{font-weight:600}.share-modal-backdrop[data-astro-cid-yksylofv]{position:fixed;inset:0;background-color:#00000080;z-index:50;display:flex;align-items:flex-end;justify-content:center;padding:0}.share-modal[data-astro-cid-yksylofv]{width:100%;max-width:24rem;background-color:var(--share-dropdown-bg);border-top-left-radius:1rem;border-top-right-radius:1rem;box-shadow:0 -4px 6px -1px #0000001a}.share-modal-header[data-astro-cid-yksylofv]{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--share-border-color)}.share-modal-title[data-astro-cid-yksylofv]{font-size:1.125rem;font-weight:600;margin:0;color:var(--share-text-color)}.share-modal-close[data-astro-cid-yksylofv]{padding:.25rem;background:none;border:none;border-radius:.25rem;cursor:pointer;color:var(--share-text-color);transition:background-color .15s ease}.share-modal-close[data-astro-cid-yksylofv]:hover{background-color:var(--share-hover-bg)}.share-modal-content[data-astro-cid-yksylofv]{padding:.5rem;max-height:60vh;overflow-y:auto}.share-modal-item[data-astro-cid-yksylofv]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;font-size:.9375rem;color:var(--share-text-color);background:none;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .15s ease;text-align:left;text-decoration:none}.share-modal-item[data-astro-cid-yksylofv]:hover{background-color:var(--share-hover-bg)}.share-btn[data-astro-cid-yksylofv]:hover .share-icon[data-astro-cid-yksylofv],.share-dropdown-item[data-astro-cid-yksylofv]:hover .share-icon[data-astro-cid-yksylofv],.share-modal-item[data-astro-cid-yksylofv]:hover .share-icon[data-astro-cid-yksylofv]{color:inherit}@media (min-width: 640px){.share-modal-backdrop[data-astro-cid-yksylofv]{align-items:center;padding:1rem}.share-modal[data-astro-cid-yksylofv]{border-radius:.75rem}}@media print{.share-buttons-container[data-astro-cid-yksylofv]{display:none}}.copy-feedback[data-astro-cid-yksylofv]{position:fixed;bottom:var(--space-6, 2rem);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--space-2, .5rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);background:var(--text-primary);color:var(--bg-primary);border-radius:var(--radius-md, .375rem);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500);z-index:200;box-shadow:var(--share-dropdown-shadow)}.feedback-enter[data-astro-cid-yksylofv]{transition:opacity .2s ease,transform .2s ease}.feedback-enter-start[data-astro-cid-yksylofv]{opacity:0;transform:translate(-50%) translateY(20px)}.feedback-enter-end[data-astro-cid-yksylofv]{opacity:1;transform:translate(-50%) translateY(0)}.feedback-leave[data-astro-cid-yksylofv]{transition:opacity .2s ease,transform .2s ease}.feedback-leave-start[data-astro-cid-yksylofv]{opacity:1;transform:translate(-50%) translateY(0)}.feedback-leave-end[data-astro-cid-yksylofv]{opacity:0;transform:translate(-50%) translateY(20px)}img[data-astro-cid-nwoie2mz]{display:block}img[data-astro-cid-nwoie2mz][loading=lazy]{background-color:#f5f5f5}img[data-astro-cid-nwoie2mz]{transition:opacity .3s ease}@media print{[data-header],[data-mobile-banner],[data-footer],.left-sidebar,.social-sharing-section,.newsletter-form{display:none!important}.layout-container{display:block!important;max-width:none!important;padding:0!important}.main-content{padding:0!important}*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}body{font-size:12pt;line-height:1.4}h1,h2,h3{page-break-after:avoid}a{text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";font-size:10pt}}[data-article-content] p,[data-article-content] span:not(pre span):not(code span),[data-article-content] li,[data-article-content] td,[data-article-content] th,[data-article-content] div:not(.code-header):not(pre div),[data-article-content] blockquote{font-family:var(--font-family-serif);font-size:var(--font-size-xl)!important;line-height:var(--line-height-relaxed)!important}[data-article-content] h1,[data-article-content] h2,[data-article-content] h3,[data-article-content] h4,[data-article-content] h5,[data-article-content] h6{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important}[data-article-content] h2{font-size:1.875rem!important}[data-article-content] h3{font-size:1.5rem!important}[data-article-content] h4{font-size:1.25rem!important}[data-article-content] h5{font-size:1rem!important}[data-article-content] .code-header .language-label,[data-article-content] .code-header .copy-btn{font-size:16px!important}@media (min-width: 769px){[data-article-content] pre,[data-article-content] pre code,[data-article-content] pre code *,[data-article-content] code{font-size:16px!important}}.sidebar-section{margin-right:100px}@media (max-width: 1500px){.layout-container{grid-template-columns:300px 1fr;max-width:1200px}.right-sidebar{display:none}}@media (max-width: 1249px){.layout-container{display:block!important;padding:0 20px}.left-sidebar,.right-sidebar{display:none}.blog-main-content{width:100%;max-width:none}}@media (max-width: 768px){.layout-container{display:block!important;padding:0 20px}.left-sidebar,.right-sidebar{display:none}}[data-blog-content] h1,[data-blog-content] h2,[data-blog-content] h3,[data-blog-content] h4,[data-blog-content] h5,[data-blog-content] h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--text-primary);margin-bottom:var(--space-6);letter-spacing:-.025em}[data-blog-content] h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);margin-bottom:var(--space-8);line-height:var(--line-height-tight)}[data-blog-content] h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-top:var(--space-16);margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:2px solid var(--border-light)}[data-blog-content] h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin-top:var(--space-12);margin-bottom:var(--space-4)}[data-blog-content] h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-top:var(--space-10);margin-bottom:var(--space-3)}[data-blog-content] h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-top:var(--space-8);margin-bottom:var(--space-3)}[data-blog-content] h6{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-top:var(--space-6);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.05em}[data-blog-content] p{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-primary);margin-bottom:var(--space-8)}[data-blog-content] strong,[data-blog-content] b{font-weight:var(--font-weight-semibold);color:var(--text-primary)}[data-blog-content] em,[data-blog-content] i{font-style:italic;color:var(--text-primary)}[data-blog-content] a{color:var(--primary-brand);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast);border-bottom:1px solid transparent}[data-blog-content] a:hover,[data-blog-content] a:focus{color:var(--primary-brand-hover);border-bottom-color:var(--primary-brand-hover);outline:none}[data-blog-content] a:focus-visible{outline:2px solid var(--primary-brand);outline-offset:2px;border-radius:var(--radius-sm)}[data-blog-content] ul,[data-blog-content] ol{margin-bottom:var(--space-6);padding-left:var(--space-6)}[data-blog-content] ul ul,[data-blog-content] ol ol,[data-blog-content] ul ol,[data-blog-content] ol ul{margin-bottom:var(--space-3);margin-top:var(--space-3)}[data-blog-content] li{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--text-primary);margin-bottom:var(--space-3)}[data-blog-content] li strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}[data-blog-content] ul{list-style:none}[data-blog-content] ul li{position:relative;padding-left:var(--space-2)}[data-blog-content] ul li:before{content:"•";color:var(--primary-brand);font-weight:var(--font-weight-bold);position:absolute;left:calc(-1 * var(--space-4));font-size:var(--font-size-lg)}[data-blog-content] ol{list-style:none;counter-reset:list-counter}[data-blog-content] ol li{counter-increment:list-counter;position:relative;padding-left:var(--space-2)}[data-blog-content] ol li:before{content:counter(list-counter) ".";color:var(--primary-brand);font-weight:var(--font-weight-semibold);position:absolute;left:calc(-1 * var(--space-8));width:var(--space-6);text-align:right}[data-blog-content] p+ul,[data-blog-content] p+ol{margin-top:calc(-1 * var(--space-5))}[data-blog-content] p:has(strong)+ul,[data-blog-content] p:has(strong)+ol{margin-top:calc(-1 * var(--space-5))}[data-blog-content] table{width:100%;border-collapse:collapse;margin:var(--space-8) 0;font-size:var(--font-size-sm);background-color:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md)}[data-blog-content] th,[data-blog-content] td{padding:var(--space-4) var(--space-5);text-align:left;border-bottom:1px solid var(--border-light)}[data-blog-content] th{background-color:var(--bg-secondary);font-weight:var(--font-weight-semibold);color:var(--text-primary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}[data-blog-content] tr:nth-child(2n){background-color:var(--bg-accent)}[data-blog-content] tr:hover{background-color:var(--primary-brand-light);transition:background-color var(--transition-fast)}[data-blog-content] td{color:var(--text-secondary);vertical-align:top}[data-blog-content] td strong{color:var(--text-primary)}[data-blog-content] pre{background-color:var(--bg-code);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);overflow-x:auto;margin:var(--space-8) 0;box-shadow:var(--shadow-lg)}[data-blog-content] pre code{font-family:var(--font-family-mono);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);font-weight:var(--font-weight-normal);display:block;padding:var(--space-6);color:#e2e8f0;background:transparent;white-space:pre;word-wrap:normal}[data-blog-content] code:not(pre code){font-family:var(--font-family-mono);font-size:.9em;background-color:var(--bg-inline-code);color:var(--text-accent);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-light);font-weight:var(--font-weight-medium)}[data-blog-content] blockquote{border-left:4px solid var(--primary-brand);margin:var(--space-8) 0;padding:var(--space-4) 0 var(--space-4) var(--space-6);background-color:var(--bg-secondary);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;color:var(--text-muted);position:relative}[data-blog-content] blockquote:before{content:'"';font-size:var(--font-size-5xl);color:var(--primary-brand);position:absolute;left:var(--space-4);top:0;line-height:1;opacity:.3}[data-blog-content] blockquote p{margin-bottom:var(--space-4);padding-left:var(--space-6)}[data-blog-content] blockquote p:last-child{margin-bottom:0}[data-blog-content] hr{border:none;height:2px;background:linear-gradient(90deg,transparent,var(--border-medium),transparent);margin:var(--space-12) 0}[data-blog-content] img{max-width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:var(--space-8) 0}[data-blog-content] ::selection{background-color:var(--primary-brand-light);color:var(--primary-brand-hover)}@media (max-width: 768px){[data-blog-content] h1{font-size:var(--font-size-3xl);margin-bottom:var(--space-6)}[data-blog-content] h2{font-size:var(--font-size-2xl);margin-top:var(--space-12)}[data-blog-content] h3{font-size:var(--font-size-xl);margin-top:var(--space-10)}[data-blog-content] h4{font-size:var(--font-size-lg);margin-top:var(--space-8)}[data-blog-content] p{margin-bottom:var(--space-6)}[data-blog-content] li{margin-bottom:var(--space-2)}[data-blog-content] img{margin:var(--space-6) 0}[data-blog-content] pre code,[data-article-content] pre code,[data-article-content] pre code *,[data-article-content] code{font-size:var(--font-size-sm)!important}[data-blog-content] table{font-size:var(--font-size-xs)}[data-blog-content] th,[data-blog-content] td{padding:var(--space-2) var(--space-3)}[data-blog-content] ul,[data-blog-content] ol{padding-left:var(--space-5)}}@media (max-width: 480px){[data-blog-content] h1{font-size:var(--font-size-2xl)}[data-blog-content] h2{font-size:var(--font-size-xl);margin-top:var(--space-10)}[data-blog-content] table{display:block;overflow-x:auto;white-space:nowrap}}@media print{[data-blog-content] *{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}[data-blog-content]{font-size:12pt;line-height:1.4;padding:0;max-width:none}[data-blog-content] h1,[data-blog-content] h2,[data-blog-content] h3{page-break-after:avoid}[data-blog-content] pre,[data-blog-content] blockquote{page-break-inside:avoid}[data-blog-content] img{max-width:100%!important}[data-blog-content] pre,[data-blog-content] code{background:#f5f5f5!important;border:1px solid #ccc!important}[data-blog-content] a[href^=http]:after{content:" (" attr(href) ")";font-size:10pt}}[data-blog-content] *:focus-visible{outline:2px solid var(--primary-brand);outline-offset:2px}@media (prefers-contrast: high){[data-blog-content] table,[data-blog-content] pre,[data-blog-content] blockquote{border:2px solid var(--text-primary)}[data-blog-content] code:not(pre code){border:2px solid var(--text-primary)}}[data-theme=dark] [data-blog-content] pre code{color:#f1f5f9}[data-theme=dark] [data-blog-content] blockquote:before{color:var(--primary-brand);opacity:.5}[data-blog-content]:focus-within{outline:none}[data-blog-content] p+p{text-indent:0}[data-blog-content] h2+h3,[data-blog-content] h3+h4,[data-blog-content] h4+h5,[data-blog-content] h5+h6{margin-top:var(--space-6)}[data-blog-content] li>p{margin-bottom:var(--space-2)}[data-blog-content] dt{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-top:var(--space-4);margin-bottom:var(--space-1)}[data-blog-content] dd{margin-left:var(--space-4);margin-bottom:var(--space-4);color:var(--text-secondary)}[data-blog-content] figure{margin:var(--space-8) 0;text-align:center}[data-blog-content] figcaption{font-size:var(--font-size-sm);color:var(--text-muted);font-style:italic;margin-top:var(--space-2);text-align:center}[data-blog-content] kbd{background-color:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--text-primary);box-shadow:var(--shadow-sm)}[data-blog-content] mark{background-color:var(--primary-brand-light);color:var(--text-primary);padding:var(--space-1);border-radius:var(--radius-sm)}[data-blog-content] sub,[data-blog-content] sup{font-size:var(--font-size-xs);line-height:0;position:relative;vertical-align:baseline}[data-blog-content] sup{top:-.5em}[data-blog-content] sub{bottom:-.25em}.image-attribution{font-size:.875rem;color:var(--text-muted);margin-top:.5rem;text-align:center;font-style:italic}.image-attribution a{color:var(--text-muted);text-decoration:underline;transition:color .2s ease}.image-attribution a:hover{color:var(--primary-brand)}[data-blog-content] .dashed-teaser{color:var(--primary-brand);text-decoration:none;border-bottom:2px dashed var(--primary-brand-light);position:relative;cursor:help;font-weight:var(--font-weight-medium)}[data-blog-content] .dashed-teaser:hover{color:var(--primary-brand-hover);border-bottom-color:var(--primary-brand)}[data-blog-content] .dashed-teaser .tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--bg-secondary);color:var(--text-primary);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);margin-bottom:var(--space-1);z-index:10;font-weight:var(--font-weight-normal);border:1px solid var(--border-light);box-shadow:var(--shadow-md)}[data-blog-content] .dashed-teaser .tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--bg-secondary)}[data-blog-content] .dashed-teaser:hover .tooltip{opacity:1}[data-theme=dark] [data-blog-content] .dashed-teaser{color:var(--primary-brand);border-bottom-color:var(--primary-brand-light)}[data-theme=dark] [data-blog-content] .dashed-teaser:hover{color:var(--primary-brand-hover);border-bottom-color:var(--primary-brand)}[data-theme=dark] [data-blog-content] .dashed-teaser .tooltip{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-light)}[data-theme=dark] [data-blog-content] .dashed-teaser .tooltip:after{border-top-color:var(--bg-secondary)}@media (max-width: 768px){[data-blog-content] .dashed-teaser .tooltip{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);bottom:auto;top:100%;left:50%;transform:translate(-50%);margin-bottom:0;margin-top:var(--space-1)}[data-blog-content] .dashed-teaser .tooltip:after{top:auto;bottom:100%;left:50%;transform:translate(-50%);border-top-color:transparent;border-bottom-color:var(--bg-secondary)}[data-theme=dark] [data-blog-content] .dashed-teaser .tooltip:after{border-bottom-color:var(--bg-secondary);border-top-color:transparent}}.code-header{background:#1e293b;color:#adbbcc;border:1px solid var(--border-dark);box-sizing:border-box!important;padding:5px 8px;display:flex;justify-content:space-between;align-items:center;font-size:14px;border-top-left-radius:10px;border-top-right-radius:10px}.copy-btn:hover{background:#4a5568;color:#fff}.code-container{position:relative;margin:20px 0;border-radius:8px;overflow:hidden}.language-label{font-weight:500;margin-left:20px}.copy-btn{background:transparent;padding:4px 8px;border-radius:4px;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:6px;transition:all .2s ease;color:#adbbcc;min-height:30px!important}.copy-icon{width:14px;height:14px;fill:currentColor}.code-container pre{margin:0;padding:16px;font-family:Fira Code,Monaco,Consolas,monospace;font-size:14px;line-height:1.5;overflow-x:auto;border-bottom:1px solid var(--border-dark);border-left:1px solid var(--border-dark);border-right:1px solid var(--border-dark)}.code-container code{background:transparent;padding:0}
