@charset "UTF-8";.series-navigation.svelte-13nln49{margin:3rem 0;border:4px solid var(--foreground);background-color:#fff;position:relative;box-shadow:6px 6px #0000001a;overflow:hidden}.series-navigation.svelte-13nln49: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-13nln49{padding:1.5rem;border-bottom:2px dashed var(--foreground)}.series-link.svelte-13nln49{display:block}.series-info.svelte-13nln49{position:relative}.series-badge.svelte-13nln49{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-13nln49{font-size:1.5rem;font-weight:900;font-family:var(--font-heading);margin-bottom:1rem}.progress-container.svelte-13nln49{display:flex;align-items:center;gap:1rem}.progress-bar.svelte-13nln49{flex:1;height:8px;background-color:#0000001a;border-radius:0;overflow:hidden}.progress-fill.svelte-13nln49{height:100%;background-color:var(--primary);transition:width .5s ease}.progress-text.svelte-13nln49{font-size:.875rem;font-weight:700;white-space:nowrap}.series-nav-controls.svelte-13nln49{display:flex;flex-direction:column;gap:1px}@media (min-width: 640px){.series-nav-controls.svelte-13nln49{flex-direction:row}}.nav-button.svelte-13nln49{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-13nln49.prev-button{border-right:2px dashed var(--foreground)}}.nav-button.svelte-13nln49:hover:not(.disabled){background-color:rgba(var(--primary-rgb),.1)}.nav-button.svelte-13nln49.disabled{opacity:.5;cursor:not-allowed}.nav-button.svelte-13nln49.next-button{justify-content:flex-end;text-align:right}.nav-content.svelte-13nln49{display:flex;flex-direction:column;flex:1}.nav-label.svelte-13nln49{font-size:.75rem;text-transform:uppercase;font-weight:700;letter-spacing:.05em;color:#0009;font-family:var(--font-heading)}.nav-title.svelte-13nln49{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-v8fg36{max-width:800px;margin:0 auto;padding-bottom:var(--space-xl);position:relative}.post-header.svelte-v8fg36{margin-bottom:var(--space-xl);position:relative;padding-bottom:var(--space-lg);border-bottom:4px solid var(--foreground)}.post-header.svelte-v8fg36:after{content:"";position:absolute;bottom:-8px;left:0;width:100px;height:4px;background-color:var(--primary)}.post-header.svelte-v8fg36 .series-indicator:where(.svelte-v8fg36){margin-bottom:var(--space-md);font-family:var(--font-heading);font-weight:700}.post-header.svelte-v8fg36 .series-indicator:where(.svelte-v8fg36) .series-link:where(.svelte-v8fg36){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-v8fg36 .series-indicator:where(.svelte-v8fg36) .series-link:where(.svelte-v8fg36):hover{transform:rotate(0) translateY(-2px)}.post-header.svelte-v8fg36 h1:where(.svelte-v8fg36){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-v8fg36 h1:where(.svelte-v8fg36):after{content:"";position:absolute;top:6px;left:6px;width:100%;height:100%;background-color:var(--primary);z-index:-1}.post-header.svelte-v8fg36 .post-meta:where(.svelte-v8fg36){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-v8fg36 .post-meta:where(.svelte-v8fg36) time:where(.svelte-v8fg36){display:inline-block;background-color:var(--foreground);color:#fff;padding:4px 8px;font-size:var(--text-sm);position:relative}.post-header.svelte-v8fg36 .post-meta:where(.svelte-v8fg36) .author:where(.svelte-v8fg36),.post-header.svelte-v8fg36 .post-meta:where(.svelte-v8fg36) .reading-time:where(.svelte-v8fg36){font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em}.post-header.svelte-v8fg36 .categories:where(.svelte-v8fg36){display:flex;flex-wrap:wrap;gap:var(--space-xs)}.post-header.svelte-v8fg36 .categories:where(.svelte-v8fg36) .category:where(.svelte-v8fg36){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-v8fg36{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-v8fg36 h2,.post-content.svelte-v8fg36 h3,.post-content.svelte-v8fg36 h4{margin-top:2em;margin-bottom:.8em;scroll-margin-top:200px;position:relative;font-family:var(--font-heading);letter-spacing:-.02em}.post-content.svelte-v8fg36 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-v8fg36 h2:before{display:none}.post-content.svelte-v8fg36 h3{font-size:1.5rem;font-weight:700;border-left:8px solid var(--primary);padding-left:15px;margin-left:-15px}.post-content.svelte-v8fg36 h3:before{display:none}.post-content.svelte-v8fg36 h3:after{content:"";position:absolute;left:0;bottom:-5px;height:3px;width:60px;background-color:var(--primary);opacity:.6}.post-content.svelte-v8fg36 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-v8fg36 h4:before{content:"//";color:var(--foreground);margin-right:8px;font-weight:400;opacity:.5}@media (max-width: 1200px){.post-content.svelte-v8fg36{margin-right:var(--space-xl)}}@media (max-width: 1023px){.post-content.svelte-v8fg36{margin-right:var(--space-lg);padding-right:var(--space-md)}.post-content.svelte-v8fg36 h2:before,.post-content.svelte-v8fg36 h3:before{left:-24px}}@media (max-width: 767px){.post-content.svelte-v8fg36{margin-right:0;padding-left:var(--space-md);padding-right:var(--space-sm)}.post-content.svelte-v8fg36 h2:before{left:-20px;width:10px;height:10px}.post-content.svelte-v8fg36 h3:before{left:-18px;width:6px;height:6px}}.post-content.svelte-v8fg36 img{max-width:100%;height:auto;display:block;margin:var(--space-lg) auto;border:2px solid var(--foreground)}.post-content.svelte-v8fg36 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-v8fg36 .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-v8fg36 ul,.post-content.svelte-v8fg36 ol{margin:var(--space-lg) 0;padding-left:2.5rem}.post-content.svelte-v8fg36 ul li,.post-content.svelte-v8fg36 ol li{margin-bottom:.7em;position:relative;padding-left:.5rem}.post-content.svelte-v8fg36 ol{counter-reset:level1;list-style:none}.post-content.svelte-v8fg36 ol>li{counter-increment:level1;position:relative}.post-content.svelte-v8fg36 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-v8fg36 ol ol{counter-reset:level2;margin-top:.8em}.post-content.svelte-v8fg36 ol ol>li{counter-increment:level2}.post-content.svelte-v8fg36 ol ol>li:before{content:counter(level2,lower-alpha);background-color:var(--foreground);transform:rotate(2deg);border-color:var(--primary)}.post-content.svelte-v8fg36 ol ol ol{counter-reset:level3}.post-content.svelte-v8fg36 ol ol ol>li{counter-increment:level3}.post-content.svelte-v8fg36 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-v8fg36 ol ol ol ol{counter-reset:level4}.post-content.svelte-v8fg36 ol ol ol ol>li{counter-increment:level4}.post-content.svelte-v8fg36 ol ol ol ol>li:before{content:counter(level4,decimal);background-color:var(--accent);color:#fff}.post-content.svelte-v8fg36 ol ol ol ol ol{counter-reset:level5}.post-content.svelte-v8fg36 ol ol ol ol ol>li{counter-increment:level5}.post-content.svelte-v8fg36 ol ol ol ol ol>li:before{content:counter(level5,lower-alpha);background-color:var(--muted);color:#fff}.post-content.svelte-v8fg36 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-v8fg36 ul ul li:before{content:"▶";color:var(--foreground);font-size:.8rem;left:-1.4rem;font-weight:700}.post-content.svelte-v8fg36 ul ul ul li:before{content:"●";color:var(--primary);font-size:.8rem;font-weight:700}.post-content.svelte-v8fg36 ul ul ul ul li:before{content:"◆";color:var(--accent);font-size:.7rem;font-weight:700}.post-content.svelte-v8fg36 ul ul ul ul ul li:before{content:"◇";color:var(--muted);font-size:.7rem;font-weight:700}.post-content.svelte-v8fg36 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-v8fg36 .token.comment,.post-content.svelte-v8fg36 .token.prolog,.post-content.svelte-v8fg36 .token.doctype,.post-content.svelte-v8fg36 .token.cdata{color:#6a9955!important}.post-content.svelte-v8fg36 .token.punctuation{color:#d4d4d4!important}.post-content.svelte-v8fg36 .token.property,.post-content.svelte-v8fg36 .token.tag,.post-content.svelte-v8fg36 .token.boolean,.post-content.svelte-v8fg36 .token.number,.post-content.svelte-v8fg36 .token.constant,.post-content.svelte-v8fg36 .token.symbol{color:#b5cea8!important}.post-content.svelte-v8fg36 .token.selector,.post-content.svelte-v8fg36 .token.attr-name,.post-content.svelte-v8fg36 .token.string,.post-content.svelte-v8fg36 .token.char,.post-content.svelte-v8fg36 .token.builtin{color:#ce9178!important}.post-content.svelte-v8fg36 .token.operator,.post-content.svelte-v8fg36 .token.entity,.post-content.svelte-v8fg36 .token.url,.post-content.svelte-v8fg36 .language-css .token.string,.post-content.svelte-v8fg36 .style .token.string{color:#d4d4d4!important}.post-content.svelte-v8fg36 .token.atrule,.post-content.svelte-v8fg36 .token.attr-value,.post-content.svelte-v8fg36 .token.keyword{color:#569cd6!important}.post-content.svelte-v8fg36 .token.function,.post-content.svelte-v8fg36 .token.class-name{color:#4ec9b0!important}.post-content.svelte-v8fg36 .token.regex,.post-content.svelte-v8fg36 .token.important{color:#d16969!important}.post-content.svelte-v8fg36 .token.important,.post-content.svelte-v8fg36 .token.bold{font-weight:700}.post-content.svelte-v8fg36 .token.italic{font-style:italic}.post-content.svelte-v8fg36 p code,.post-content.svelte-v8fg36 li code,.post-content.svelte-v8fg36 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-v8fg36 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-v8fg36 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-v8fg36 blockquote:after{content:"";position:absolute;bottom:-8px;right:20px;width:40px;height:8px;background-color:var(--primary);transform:skew(-20deg)}.post-content.svelte-v8fg36 blockquote p{position:relative;z-index:1;margin-bottom:.5em;font-style:italic;line-height:1.6}.post-content.svelte-v8fg36 blockquote p:last-child{margin-bottom:0}.post-content.svelte-v8fg36 blockquote cite{display:block;margin-top:var(--space-sm);font-size:.9rem;font-style:normal;font-weight:700;text-align:right}.post-content.svelte-v8fg36 blockquote cite:before{content:"— "}.post-content.svelte-v8fg36 table{width:100%;margin:var(--space-lg) 0;border-collapse:collapse;border:2px solid var(--foreground);background-color:#fff}.post-content.svelte-v8fg36 thead{background-color:var(--foreground);color:#fff}.post-content.svelte-v8fg36 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-v8fg36 tbody tr{border-bottom:1px solid rgba(0,0,0,.1)}.post-content.svelte-v8fg36 tbody tr:nth-child(2n){background-color:#00000008}.post-content.svelte-v8fg36 tbody tr:last-child{border-bottom:none}.post-content.svelte-v8fg36 tbody tr:hover{background-color:rgba(var(--primary-rgb),.05)}.post-content.svelte-v8fg36 td{padding:var(--space-sm) var(--space-md);border-right:1px solid rgba(0,0,0,.1)}.post-content.svelte-v8fg36 td:last-child{border-right:none}@media (max-width: 767px){.post-content.svelte-v8fg36 table{display:block;overflow-x:auto}.post-content.svelte-v8fg36 thead th,.post-content.svelte-v8fg36 tbody td{white-space:nowrap}}.hero-excerpt.svelte-v8fg36{font-size:var(--text-lg);line-height:1.5;margin-top:var(--space-md);max-width:550px}.ai-attribution-wrapper.svelte-v8fg36{display:flex;justify-content:center;margin:var(--space-xl) 0}.sharing-section.svelte-v8fg36{margin:var(--space-xl) 0}.post-footer.svelte-v8fg36{border-top:4px solid var(--foreground);padding-top:var(--space-xl)}.related-posts.svelte-v8fg36{margin-top:var(--space-xl)}.related-posts.svelte-v8fg36 h3:where(.svelte-v8fg36){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-v8fg36 .related-posts-grid:where(.svelte-v8fg36){display:grid;grid-template-columns:1fr;gap:var(--space-md)}@media (min-width: 640px){.related-posts.svelte-v8fg36 .related-posts-grid:where(.svelte-v8fg36){grid-template-columns:repeat(2,1fr)}}.related-posts.svelte-v8fg36 .related-post:where(.svelte-v8fg36){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-v8fg36 .related-post:where(.svelte-v8fg36):hover{transform:rotate(0) translateY(-5px);box-shadow:5px 5px #0000001a;border-color:var(--primary)}.related-posts.svelte-v8fg36 .related-post:where(.svelte-v8fg36):hover h4:where(.svelte-v8fg36){color:var(--primary)}.related-posts.svelte-v8fg36 .related-post:where(.svelte-v8fg36) h4:where(.svelte-v8fg36){margin-bottom:var(--space-sm);font-size:var(--text-md);line-height:1.3;transition:color .2s ease}.related-posts.svelte-v8fg36 .related-post:where(.svelte-v8fg36) .related-categories:where(.svelte-v8fg36){margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}.related-posts.svelte-v8fg36 .related-post:where(.svelte-v8fg36) .related-categories:where(.svelte-v8fg36) .category-tag:where(.svelte-v8fg36){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-v8fg36{margin-top:var(--space-xl);display:flex;justify-content:center}.post-navigation.svelte-v8fg36 .back-to-blog:where(.svelte-v8fg36){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-v8fg36 .back-to-blog:where(.svelte-v8fg36):hover{background-color:var(--primary);transform:translateY(-2px)}.loading-spinner.svelte-v8fg36{padding:var(--space-xl);text-align:center;border:2px dashed var(--foreground)}
