@charset "UTF-8";.series-navigation.svelte-niya1d{margin:3rem 0;border:4px solid var(--foreground);background-color:#fff;position:relative;box-shadow:6px 6px #0000001a;overflow:hidden}.series-navigation.svelte-niya1d:before{content:"";position:absolute;top:0;left:0;width:100%;height:8px;background-color:var(--primary);transform:skew(-45deg) translate(-4rem)}.series-nav-header.svelte-niya1d{padding:1.5rem;border-bottom:2px dashed var(--foreground)}.series-link.svelte-niya1d{display:block}.series-info.svelte-niya1d{position:relative}.series-badge.svelte-niya1d{display:inline-block;background-color:var(--foreground);color:#fff;padding:.25rem .5rem;font-size:.7rem;font-weight:700;font-family:var(--font-heading);letter-spacing:.05em;margin-bottom:.5rem;transform:rotate(-1deg)}.series-title.svelte-niya1d{font-size:1.5rem;font-weight:900;font-family:var(--font-heading);margin-bottom:1rem}.progress-container.svelte-niya1d{display:flex;align-items:center;gap:1rem}.progress-bar.svelte-niya1d{flex:1;height:8px;background-color:#0000001a;border-radius:0;overflow:hidden}.progress-fill.svelte-niya1d{height:100%;background-color:var(--primary);transition:width .5s ease}.progress-text.svelte-niya1d{font-size:.875rem;font-weight:700;white-space:nowrap}.series-nav-controls.svelte-niya1d{display:flex;flex-direction:column;gap:1px}@media(min-width:640px){.series-nav-controls.svelte-niya1d{flex-direction:row}}.nav-button.svelte-niya1d{display:flex;align-items:center;gap:.75rem;padding:1.5rem;background-color:#fff;transition:all .3s ease;flex:1}@media(min-width:640px){.nav-button.svelte-niya1d.prev-button{border-right:2px dashed var(--foreground)}}.nav-button.svelte-niya1d:hover:not(.disabled){background-color:rgba(var(--primary-rgb),.1)}.nav-button.svelte-niya1d.disabled{opacity:.5;cursor:not-allowed}.nav-button.svelte-niya1d.next-button{justify-content:flex-end;text-align:right}.nav-content.svelte-niya1d{display:flex;flex-direction:column;flex:1}.nav-label.svelte-niya1d{font-size:.75rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em;color:#0009;font-family:var(--font-heading)}.nav-title.svelte-niya1d{font-weight:700;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;line-clamp:1}:root{--primary-rgb: 255, 87, 34}.toc-container.position-right{right:20px;z-index:1000}.toc-container.position-right .toc-toggle{position:fixed;top:50%;transform:translateY(-50%);right:0;left:auto;width:36px;height:45px;background-color:var(--foreground);color:#fff;border-radius:4px 0 0 4px;box-shadow:-2px 2px 5px #0003;z-index:1000}.toc-container.position-right.collapsed{right:0}.toc-container.position-right.collapsed .toc-panel{transform:translate(100%);opacity:0;pointer-events:none;visibility:hidden}.toc-container.position-right .toc-panel{position:fixed;top:50%;transform:translateY(-50%);right:20px;border-radius:4px;box-shadow:-2px 2px 10px #00000026;opacity:1;visibility:visible;transition:transform .3s ease,opacity .3s ease,visibility .3s ease}.blog-post.svelte-1teoznn{max-width:800px;margin:0 auto;padding-bottom:var(--space-xl);position:relative}.post-header.svelte-1teoznn{margin-bottom:var(--space-xl);position:relative;padding-bottom:var(--space-lg);border-bottom:4px solid var(--foreground)}.post-header.svelte-1teoznn:after{content:"";position:absolute;bottom:-8px;left:0;width:100px;height:4px;background-color:var(--primary)}.post-header.svelte-1teoznn .series-indicator:where(.svelte-1teoznn){margin-bottom:var(--space-md);font-family:var(--font-heading);font-weight:700}.post-header.svelte-1teoznn .series-indicator:where(.svelte-1teoznn) .series-link:where(.svelte-1teoznn){display:inline-block;background-color:var(--primary);color:#fff;padding:4px 10px;font-size:var(--text-sm);transform:rotate(-1deg);position:relative;box-shadow:3px 3px #0000001a}.post-header.svelte-1teoznn .series-indicator:where(.svelte-1teoznn) .series-link:where(.svelte-1teoznn):hover{transform:rotate(0) translateY(-2px)}.post-header.svelte-1teoznn h1:where(.svelte-1teoznn){margin-bottom:var(--space-lg);font-size:clamp(2rem,5vw,3.5rem);transform:rotate(-1deg);display:inline-block;background-color:var(--foreground);color:#fff;padding:.5rem 1rem;position:relative;line-height:1.2}.post-header.svelte-1teoznn h1:where(.svelte-1teoznn):after{content:"";position:absolute;top:6px;left:6px;width:100%;height:100%;background-color:var(--primary);z-index:-1}.post-header.svelte-1teoznn .post-meta:where(.svelte-1teoznn){display:flex;flex-wrap:wrap;gap:var(--space-md);margin-bottom:var(--space-md);font-family:var(--font-heading);font-weight:700}.post-header.svelte-1teoznn .post-meta:where(.svelte-1teoznn) time:where(.svelte-1teoznn){display:inline-block;background-color:var(--foreground);color:#fff;padding:4px 8px;font-size:var(--text-sm);position:relative}.post-header.svelte-1teoznn .post-meta:where(.svelte-1teoznn) .author:where(.svelte-1teoznn),.post-header.svelte-1teoznn .post-meta:where(.svelte-1teoznn) .reading-time:where(.svelte-1teoznn){font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.post-header.svelte-1teoznn .categories:where(.svelte-1teoznn){display:flex;flex-wrap:wrap;gap:var(--space-xs)}.post-header.svelte-1teoznn .categories:where(.svelte-1teoznn) .category:where(.svelte-1teoznn){display:inline-block;padding:4px 8px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--foreground);font-weight:700;font-family:var(--font-heading);transform:rotate(-1deg)}.post-content.svelte-1teoznn{margin-bottom:var(--space-xl);line-height:1.7;border-left:4px solid var(--primary);padding-left:var(--space-lg);padding-right:var(--space-lg);margin-right:calc(var(--space-xl) + 60px)}.post-content.svelte-1teoznn h2,.post-content.svelte-1teoznn h3,.post-content.svelte-1teoznn h4{margin-top:2em;margin-bottom:.8em;scroll-margin-top:200px;position:relative;font-family:var(--font-heading);letter-spacing:-.02em}.post-content.svelte-1teoznn h2{font-size:2rem;font-weight:800;margin-left:-5px;padding:.3em .6em;background-color:var(--foreground);color:#fff;display:inline-block;transform:rotate(-1deg);border-bottom:4px solid var(--primary);box-shadow:5px 5px #0000001a}.post-content.svelte-1teoznn h2:before{display:none}.post-content.svelte-1teoznn h3{font-size:1.5rem;font-weight:700;border-left:8px solid var(--primary);padding-left:15px;margin-left:-15px}.post-content.svelte-1teoznn h3:before{display:none}.post-content.svelte-1teoznn h3:after{content:"";position:absolute;left:0;bottom:-5px;height:3px;width:60px;background-color:var(--primary);opacity:.6}.post-content.svelte-1teoznn h4{font-size:1.25rem;font-weight:700;color:var(--primary);margin-left:-5px;padding-bottom:5px;border-bottom:2px dashed var(--foreground);display:inline-block}.post-content.svelte-1teoznn h4:before{content:"//";color:var(--foreground);margin-right:8px;font-weight:400;opacity:.5}@media(max-width:1200px){.post-content.svelte-1teoznn{margin-right:var(--space-xl)}}@media(max-width:1023px){.post-content.svelte-1teoznn{margin-right:var(--space-lg);padding-right:var(--space-md)}.post-content.svelte-1teoznn h2:before,.post-content.svelte-1teoznn h3:before{left:-24px}}@media(max-width:767px){.post-content.svelte-1teoznn{margin-right:0;padding-left:var(--space-md);padding-right:var(--space-sm)}.post-content.svelte-1teoznn h2:before{left:-20px;width:10px;height:10px}.post-content.svelte-1teoznn h3:before{left:-18px;width:6px;height:6px}}.post-content.svelte-1teoznn img{max-width:100%;height:auto;display:block;margin:var(--space-lg) auto;border:2px solid var(--foreground)}.post-content.svelte-1teoznn pre{position:relative;overflow-x:auto;max-width:100%;padding:var(--space-lg) var(--space-lg);margin:var(--space-lg) 0;background-color:#1e1e1e!important;color:#d4d4d4!important;border-radius:4px;border-left:4px solid var(--accent-color, var(--primary));font-family:Fira Code,Consolas,monospace!important;font-size:.95rem!important;font-weight:500!important;line-height:1.5!important;letter-spacing:-.025em;box-shadow:0 4px 6px #0000001a}.post-content.svelte-1teoznn .code-label{position:absolute;top:-2px;right:-2px;background-color:var(--accent-color, var(--primary));color:#fff;font-size:.8rem;font-weight:700;padding:4px 10px;text-transform:uppercase;letter-spacing:.05em;border-radius:0 0 0 6px;z-index:100;box-shadow:0 2px 4px #0003;min-width:70px;text-align:center}.post-content.svelte-1teoznn ul,.post-content.svelte-1teoznn ol{margin:var(--space-lg) 0;padding-left:2.5rem}.post-content.svelte-1teoznn ul li,.post-content.svelte-1teoznn ol li{margin-bottom:.7em;position:relative;padding-left:.5rem}.post-content.svelte-1teoznn ol{counter-reset:level1;list-style:none}.post-content.svelte-1teoznn ol>li{counter-increment:level1;position:relative}.post-content.svelte-1teoznn ol>li:before{content:counter(level1);position:absolute;left:-2.5rem;top:-.1rem;width:1.8rem;height:1.8rem;background-color:var(--primary);color:#fff;font-family:var(--font-heading);font-weight:700;font-size:.9rem;display:flex;align-items:center;justify-content:center;border:2px solid var(--foreground);transform:rotate(-2deg);box-shadow:2px 2px #0000001a}.post-content.svelte-1teoznn ol ol{counter-reset:level2;margin-top:.8em}.post-content.svelte-1teoznn ol ol>li{counter-increment:level2}.post-content.svelte-1teoznn ol ol>li:before{content:counter(level2,lower-alpha);background-color:var(--foreground);transform:rotate(2deg);border-color:var(--primary)}.post-content.svelte-1teoznn ol ol ol{counter-reset:level3}.post-content.svelte-1teoznn ol ol ol>li{counter-increment:level3}.post-content.svelte-1teoznn ol ol ol>li:before{content:counter(level3,lower-roman);background-color:#fff;color:var(--foreground);transform:rotate(-1deg);border-color:var(--primary)}.post-content.svelte-1teoznn ol ol ol ol{counter-reset:level4}.post-content.svelte-1teoznn ol ol ol ol>li{counter-increment:level4}.post-content.svelte-1teoznn ol ol ol ol>li:before{content:counter(level4,decimal);background-color:var(--accent);color:#fff}.post-content.svelte-1teoznn ol ol ol ol ol{counter-reset:level5}.post-content.svelte-1teoznn ol ol ol ol ol>li{counter-increment:level5}.post-content.svelte-1teoznn ol ol ol ol ol>li:before{content:counter(level5,lower-alpha);background-color:var(--muted);color:#fff}.post-content.svelte-1teoznn ul li:before{content:"■";color:var(--primary);position:absolute;left:-1.5rem;font-size:1rem;top:.2em;font-weight:900;text-shadow:1px 1px 0 rgba(0,0,0,.2)}.post-content.svelte-1teoznn ul ul li:before{content:"▶";color:var(--foreground);font-size:.8rem;left:-1.4rem;font-weight:700}.post-content.svelte-1teoznn ul ul ul li:before{content:"●";color:var(--primary);font-size:.8rem;font-weight:700}.post-content.svelte-1teoznn ul ul ul ul li:before{content:"◆";color:var(--accent);font-size:.7rem;font-weight:700}.post-content.svelte-1teoznn ul ul ul ul ul li:before{content:"◇";color:var(--muted);font-size:.7rem;font-weight:700}.post-content.svelte-1teoznn pre code{display:block;tab-size:2;-moz-tab-size:2;-webkit-hyphens:none;hyphens:none;white-space:pre;word-spacing:normal;word-break:normal;-webkit-font-smoothing:antialiased;background:transparent!important;color:inherit!important;font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;padding:0!important}.post-content.svelte-1teoznn .token.comment,.post-content.svelte-1teoznn .token.prolog,.post-content.svelte-1teoznn .token.doctype,.post-content.svelte-1teoznn .token.cdata{color:#6a9955!important}.post-content.svelte-1teoznn .token.punctuation{color:#d4d4d4!important}.post-content.svelte-1teoznn .token.property,.post-content.svelte-1teoznn .token.tag,.post-content.svelte-1teoznn .token.boolean,.post-content.svelte-1teoznn .token.number,.post-content.svelte-1teoznn .token.constant,.post-content.svelte-1teoznn .token.symbol{color:#b5cea8!important}.post-content.svelte-1teoznn .token.selector,.post-content.svelte-1teoznn .token.attr-name,.post-content.svelte-1teoznn .token.string,.post-content.svelte-1teoznn .token.char,.post-content.svelte-1teoznn .token.builtin{color:#ce9178!important}.post-content.svelte-1teoznn .token.operator,.post-content.svelte-1teoznn .token.entity,.post-content.svelte-1teoznn .token.url,.post-content.svelte-1teoznn .language-css .token.string,.post-content.svelte-1teoznn .style .token.string{color:#d4d4d4!important}.post-content.svelte-1teoznn .token.atrule,.post-content.svelte-1teoznn .token.attr-value,.post-content.svelte-1teoznn .token.keyword{color:#569cd6!important}.post-content.svelte-1teoznn .token.function,.post-content.svelte-1teoznn .token.class-name{color:#4ec9b0!important}.post-content.svelte-1teoznn .token.regex,.post-content.svelte-1teoznn .token.important{color:#d16969!important}.post-content.svelte-1teoznn .token.important,.post-content.svelte-1teoznn .token.bold{font-weight:700}.post-content.svelte-1teoznn .token.italic{font-style:italic}.post-content.svelte-1teoznn p code,.post-content.svelte-1teoznn li code,.post-content.svelte-1teoznn td code{background-color:rgba(var(--primary-rgb),.1);color:var(--primary);padding:2px 6px;border-radius:3px;font-family:Fira Code,Consolas,monospace;font-size:.85em;font-weight:500;letter-spacing:-.025em;white-space:nowrap}.post-content.svelte-1teoznn blockquote{margin:var(--space-lg) 0;padding:var(--space-md) var(--space-lg);border-left:8px solid var(--primary);background-color:#00000008;position:relative;font-family:var(--font-heading);font-size:1.1rem;transform:rotate(-.5deg);box-shadow:3px 3px #0000001a}.post-content.svelte-1teoznn blockquote:before{content:'"';position:absolute;top:-20px;left:10px;font-size:5rem;color:var(--primary);opacity:.2;font-family:serif;line-height:1}.post-content.svelte-1teoznn blockquote:after{content:"";position:absolute;bottom:-8px;right:20px;width:40px;height:8px;background-color:var(--primary);transform:skew(-20deg)}.post-content.svelte-1teoznn blockquote p{position:relative;z-index:1;margin-bottom:.5em;font-style:italic;line-height:1.6}.post-content.svelte-1teoznn blockquote p:last-child{margin-bottom:0}.post-content.svelte-1teoznn blockquote cite{display:block;margin-top:var(--space-sm);font-size:.9rem;font-style:normal;font-weight:700;text-align:right}.post-content.svelte-1teoznn blockquote cite:before{content:"— "}.post-content.svelte-1teoznn table{width:100%;margin:var(--space-lg) 0;border-collapse:collapse;border:2px solid var(--foreground);background-color:#fff}.post-content.svelte-1teoznn thead{background-color:var(--foreground);color:#fff}.post-content.svelte-1teoznn th{padding:var(--space-sm) var(--space-md);text-align:left;font-weight:700;text-transform:uppercase;font-size:.9rem;letter-spacing:.05em}.post-content.svelte-1teoznn tbody tr{border-bottom:1px solid rgba(0,0,0,.1)}.post-content.svelte-1teoznn tbody tr:nth-child(2n){background-color:#00000008}.post-content.svelte-1teoznn tbody tr:last-child{border-bottom:none}.post-content.svelte-1teoznn tbody tr:hover{background-color:rgba(var(--primary-rgb),.05)}.post-content.svelte-1teoznn td{padding:var(--space-sm) var(--space-md);border-right:1px solid rgba(0,0,0,.1)}.post-content.svelte-1teoznn td:last-child{border-right:none}@media(max-width:767px){.post-content.svelte-1teoznn table{display:block;overflow-x:auto}.post-content.svelte-1teoznn thead th,.post-content.svelte-1teoznn tbody td{white-space:nowrap}}.hero-excerpt.svelte-1teoznn{font-size:var(--text-lg);line-height:1.5;margin-top:var(--space-md);max-width:550px}.ai-attribution-wrapper.svelte-1teoznn{display:flex;justify-content:center;margin:var(--space-xl) 0}.sharing-section.svelte-1teoznn{margin:var(--space-xl) 0}.post-footer.svelte-1teoznn{border-top:4px solid var(--foreground);padding-top:var(--space-xl)}.related-posts.svelte-1teoznn{margin-top:var(--space-xl)}.related-posts.svelte-1teoznn h3:where(.svelte-1teoznn){margin-bottom:var(--space-lg);display:inline-block;background-color:var(--foreground);color:#fff;padding:6px 12px;font-size:var(--text-md);transform:rotate(-1deg)}.related-posts.svelte-1teoznn .related-posts-grid:where(.svelte-1teoznn){display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media(min-width:640px){.related-posts.svelte-1teoznn .related-posts-grid:where(.svelte-1teoznn){grid-template-columns:repeat(2,1fr)}}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn){padding:var(--space-md);border:3px solid var(--foreground);transform:rotate(-1deg);transition:all .2s ease;display:flex;flex-direction:column;background-color:#fff}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn):hover{transform:rotate(0) translateY(-5px);box-shadow:5px 5px #0000001a;border-color:var(--primary)}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn):hover h4:where(.svelte-1teoznn){color:var(--primary)}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn) h4:where(.svelte-1teoznn){margin-bottom:var(--space-sm);font-size:var(--text-md);line-height:1.3;transition:color .2s ease}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn) .related-categories:where(.svelte-1teoznn){margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}.related-posts.svelte-1teoznn .related-post:where(.svelte-1teoznn) .related-categories:where(.svelte-1teoznn) .category-tag:where(.svelte-1teoznn){font-size:.6rem;padding:2px 6px;background-color:#0000000d;text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-family:var(--font-heading)}.post-navigation.svelte-1teoznn{margin-top:var(--space-xl);display:flex;justify-content:center}.post-navigation.svelte-1teoznn .back-to-blog:where(.svelte-1teoznn){display:inline-flex;align-items:center;padding:8px 16px;background-color:var(--foreground);color:#fff;font-weight:700;font-family:var(--font-heading);transition:transform .2s ease,background-color .2s ease}.post-navigation.svelte-1teoznn .back-to-blog:where(.svelte-1teoznn):hover{background-color:var(--primary);transform:translateY(-2px)}.loading-spinner.svelte-1teoznn{padding:var(--space-xl);text-align:center;border:2px dashed var(--foreground)}
