:root{--background:#faf9f5;--text:#2e2e2e;--text-muted:#666;--border-color:rgba(0,0,0,.1);--code-bg:#f6f6f4;--code-text:#333;--card-bg:#fff;--timeline-line:#d0d0d0;--selection-bg:rgba(216,119,86,.2)}@media (prefers-color-scheme:dark){:root{--background:#2e2e2e;--text:#faf9f5;--text-muted:#b0b0b0;--border-color:hsla(0,0%,100%,.1);--code-bg:#333;--code-text:#e0e0e0;--card-bg:#3a3a3a;--timeline-line:#464646;--selection-bg:rgba(216,119,86,.3)}}*,:after,:before{box-sizing:border-box}body{margin:0;padding:48px 24px;font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;line-height:1.5;background-color:var(--background);min-height:100vh;color:var(--text)}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto;max-width:1200px}.blog-title{font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif}.subtitle{color:var(--text-muted)}.blog-post{max-width:728px;padding:2rem 24px;background:var(--background);color:var(--text);font-family:charter,Georgia,Cambria,Times New Roman,Times,serif}.blog-post h1{font-size:42px;margin-bottom:1.5rem}.blog-post h1,.blog-post h2{font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.25;color:var(--text);letter-spacing:-.015em}.blog-post h2{font-size:34px;margin-top:2rem}.blog-post h3{font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:28px;line-height:1.25;margin-top:1.5rem;margin-bottom:1rem;color:var(--text);letter-spacing:-.012em}.blog-post p{font-family:charter,Georgia,Cambria,Times New Roman,Times,serif;font-size:21px;line-height:1.8;color:var(--text);letter-spacing:-.003em}.blog-post img{border-radius:8px}.blog-post .diagram img,.blog-post pre img{margin:0;border-radius:0}.card{height:100%;background:var(--card-bg);border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform .2s ease,box-shadow .2s ease;margin:12px;border:none;display:flex;flex-direction:column}.card:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.card-img-container{position:relative;width:100%;padding-top:56.25%}.card-body{padding:1.5rem;background:var(--card-bg);display:flex;flex-direction:column;height:100%}.card-title{margin:0;font-size:20px;font-weight:700;color:var(--text);line-height:1.4;font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;letter-spacing:-.015em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;height:2.8em}.tags-container{min-height:5rem;overflow:hidden}.tags-container .d-flex{gap:.5rem}.badge{display:inline-block;padding:6px 12px;font-size:14px;font-weight:500;line-height:1.2;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:100px;text-decoration:none;transition:all .15s ease-in-out}.badge-placeholder{width:80px;height:29px;visibility:hidden}.bg-primary{background-color:var(--primary);color:#fff}.bg-secondary{background-color:#6c757d;color:#fff}.badge:hover{opacity:.9}.blog-post ol,.blog-post ul{font-family:charter,Georgia,Cambria,Times New Roman,Times,serif;font-size:20px;line-height:1.7;margin:1rem 0 1.5rem;padding-left:24px;color:var(--text)}.blog-post li{margin-bottom:.75rem}.blog-post li:last-child{margin-bottom:0}.blog-post pre{background:var(--code-bg);padding:20px;border-radius:8px;font-size:16px;line-height:1.45;margin:32px 0;max-width:100%;position:relative}.code-copy-btn{position:absolute;top:8px;right:8px;background:hsla(0,0%,100%,.1);color:var(--text-muted);padding:4px 8px;font-size:12px;border-radius:4px;cursor:pointer;font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;z-index:10;transition:background-color .2s,color .2s;border:none}.code-copy-btn:hover{background:var(--primary);color:#fff}.blog-post code{font-family:SF Mono,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;-moz-user-select:text;user-select:text;-webkit-user-select:text;color:var(--code-text)!important;background:transparent!important}.blog-post .hljs,.blog-post pre code,.blog-post pre code span{color:var(--code-text)!important;background:transparent!important;text-shadow:none!important;border:none!important;box-shadow:none!important}.blog-post pre code .hljs-doctag,.blog-post pre code .hljs-keyword,.blog-post pre code .hljs-name,.blog-post pre code .hljs-section,.blog-post pre code .hljs-selector-tag,.blog-post pre code .hljs-strong,.blog-post pre code .hljs-title{color:#6f42c1!important}.blog-post pre code .hljs-regexp,.blog-post pre code .hljs-string{color:#22863a!important}.blog-post pre code .hljs-literal,.blog-post pre code .hljs-number{color:#005cc5!important}.blog-post pre code .hljs-comment{color:#6a737d!important}@media (prefers-color-scheme:dark){.blog-post pre code .hljs-doctag,.blog-post pre code .hljs-keyword,.blog-post pre code .hljs-name,.blog-post pre code .hljs-section,.blog-post pre code .hljs-selector-tag,.blog-post pre code .hljs-strong,.blog-post pre code .hljs-title{color:#c792ea!important}.blog-post pre code .hljs-regexp,.blog-post pre code .hljs-string{color:#a5d6a7!important}.blog-post pre code .hljs-literal,.blog-post pre code .hljs-number{color:#82aaff!important}.blog-post pre code .hljs-comment{color:#aab0b6!important}}.blog-post code::-moz-selection,.blog-post code::selection,.blog-post pre::-moz-selection,.blog-post pre::selection{background:hsla(0,0%,50%,.3);text-shadow:none}.blog-post table{margin:32px 0;font-size:18px;line-height:1.6}.blog-post td,.blog-post th{border:1px solid var(--border-color);padding:12px 16px;text-align:left}.blog-post th{background:hsla(0,0%,50%,.05)}.timeline-item:after{background-color:var(--primary)}.timeline-title{color:var(--text)}.timeline-summary{color:var(--text-muted)}.search-container{max-width:800px}.search-input{padding:16px 24px;font-size:20px;line-height:1.5;border-radius:999px;background:var(--card-bg);box-shadow:0 2px 6px rgba(0,0,0,.05);font-family:sohne,Helvetica Neue,Helvetica,Arial,sans-serif;color:var(--text)}.search-input:focus{box-shadow:0 4px 12px rgba(0,0,0,.1)}.search-input::placeholder{color:var(--text-muted)}.search-btn{right:16px;background:var(--primary);color:#fff;padding:8px 24px;border-radius:999px;font-size:16px;transition:background-color .2s ease}.search-btn:hover{background:#c56545}.btn{display:inline-block;padding:7px 16px;font-size:14px;font-weight:500;line-height:1.5;text-align:center;border-radius:100px;transition:all .15s ease-in-out;cursor:pointer}.btn,.btn-primary{text-decoration:none}.btn-primary{background-color:var(--primary);color:#fff;border:none;padding:8px 16px;border-radius:100px;transition:background-color .2s ease;margin-top:auto}.btn-primary:hover{background-color:#c56545;color:#fff;text-decoration:none}.video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;margin:2rem 0;border-radius:8px}.video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.row{display:flex;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.col-md-4{width:100%;padding:0 15px}.text-muted{color:var(--text-muted)}.small{font-size:14px}.text-center{text-align:center}.mb-2{margin-bottom:.5rem}.mt-auto{margin-top:auto}.d-flex{display:flex}.flex-wrap{flex-wrap:wrap}.gap-2{gap:.5rem}@media (min-width:768px){.col-md-4{flex:0 0 33.333333%;max-width:33.333333%}}@media (max-width:768px){body{padding:24px 16px}.container{padding-right:0;padding-left:0}.blog-post{padding:1.5rem}.blog-post h1{font-size:32px}.blog-post p{font-size:18px}.card{margin:8px}.card-body{padding:1.25rem}.search-container{margin:1rem auto}.search-input{padding:12px 20px;font-size:16px}.search-btn{padding:6px 16px;font-size:14px}.timeline:after{left:20px}.timeline-item{padding-left:50px}.timeline-item:after{left:20px}.timeline-date{position:relative;left:-40px;top:-10px;width:auto;text-align:left;margin-bottom:.5rem}}:root{--primary:#d87756;--accent:#d87756;--highlight:#d87756;--light-bg:#faf9f5;--dark-bg:#2e2e2e;--light-text:#2e2e2e;--dark-text:#faf9f5;--timeline-line:#464646;--timeline-dot:#d87756;--code-bg-light:#f6f6f4;--code-bg-dark:#333}body{background-color:var(--dark-bg);color:var(--dark-text);transition:background-color .3s ease,color .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}@media (prefers-color-scheme:light){body{background-color:var(--light-bg);color:var(--light-text)}}.container{max-width:1100px;padding:0 1.5rem}.blog-title{color:var(--primary);font-weight:700;font-size:2.5rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;letter-spacing:-.015em;margin-bottom:.5rem;text-decoration:none}.subtitle{color:#999;font-size:1rem;margin-bottom:2rem}@media (prefers-color-scheme:light){.subtitle{color:#666}}.timeline{position:relative;max-width:900px;margin:0 auto;padding:2rem 0}.timeline:after{content:"";position:absolute;width:1px;background-color:var(--timeline-line);top:0;bottom:0;left:80px;margin-left:-1px}.timeline-items{margin-top:2rem}.timeline-item{position:relative;margin-bottom:4rem;padding-left:120px}.timeline-item:after{content:"";position:absolute;width:12px;height:12px;background-color:var(--timeline-dot);border-radius:50%;top:6px;left:80px;margin-left:-6px;z-index:1}.timeline-date{position:absolute;left:0;top:4px;width:65px;text-align:right;font-size:14px;color:var(--primary);font-weight:500}.timeline-content{margin-bottom:1.5rem}.timeline-title{margin:0 0 .8rem;font-size:1.5rem;font-weight:600;color:var(--dark-text)}@media (prefers-color-scheme:light){.timeline-title{color:var(--light-text)}}.timeline-title a{color:inherit;text-decoration:none}.timeline-title a:hover{text-decoration:underline;color:var(--primary)}.timeline-summary{margin-bottom:1rem;font-size:1rem;line-height:1.5;color:#b0b0b0}@media (prefers-color-scheme:light){.timeline-summary{color:#666}}.timeline-categories{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.timeline-category{color:var(--primary);font-size:.85rem;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.timeline-category:hover{border-bottom-color:var(--primary)}.read-more{display:inline-block;color:var(--primary);font-size:.875rem;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease;margin-top:.5rem}.read-more:hover{border-bottom-color:var(--primary)}.search-container{position:relative;max-width:500px;margin:2rem auto}.search-input{width:100%;padding:8px 40px 8px 12px;font-size:1rem;border:none;border-bottom:1px solid hsla(0,0%,100%,.2);background-color:transparent;color:var(--dark-text);transition:all .2s ease}@media (prefers-color-scheme:light){.search-input{color:var(--light-text);border-bottom-color:rgba(0,0,0,.2)}}.search-input:focus{outline:none;border-bottom-color:var(--primary)}.search-input::placeholder{color:#777}.search-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);background:transparent;color:var(--primary);border:none;padding:4px;display:flex;align-items:center;justify-content:center;cursor:pointer}.search-icon{width:16px;height:16px}.categories-container{margin:0 auto 2rem;max-width:700px}.category-list{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.blog-post{max-width:740px;margin:0 auto;padding:2rem 1rem}.blog-post-header{border-bottom:1px solid hsla(0,0%,100%,.1);padding-bottom:1.5rem;margin-bottom:2rem}@media (prefers-color-scheme:light){.blog-post-header{border-color:rgba(0,0,0,.1)}}.blog-post h1{font-size:2.5rem;line-height:1.2}.blog-post h1,.blog-post h2{font-weight:700;margin-bottom:1rem;color:var(--dark-text)}.blog-post h2{font-size:1.8rem;margin-top:2.5rem}.blog-post h3{font-size:1.4rem;font-weight:600;margin-top:2rem;margin-bottom:.75rem;color:var(--dark-text)}@media (prefers-color-scheme:light){.blog-post h1,.blog-post h2,.blog-post h3{color:var(--light-text)}}.blog-post-content{font-size:1.1rem;line-height:1.7}.blog-post p{font-size:1.125rem;line-height:1.7;margin-bottom:1.5rem}.blog-post pre{background-color:var(--code-bg-dark);padding:1.25rem;border-radius:4px;overflow-x:auto;margin:1.5rem 0;font-size:.9rem;line-height:1.5}@media (prefers-color-scheme:light){.blog-post pre{background-color:var(--code-bg-light)}}.blog-post code{font-family:SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.9em;background-color:hsla(0,0%,100%,.1);padding:2px 4px;border-radius:3px}@media (prefers-color-scheme:light){.blog-post code{background-color:rgba(0,0,0,.05)}}.blog-post ol,.blog-post ul{padding-left:1.5rem;margin-bottom:1.5rem}.blog-post li{margin-bottom:.5rem;font-size:1.125rem;line-height:1.7}.blog-post blockquote{border-left:4px solid var(--highlight);padding-left:1rem;margin-left:0;margin-right:0;margin-bottom:1.5rem;font-style:italic}.blog-post a{color:var(--highlight);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.blog-post a:hover{border-bottom-color:var(--highlight)}.blog-post img{max-width:100%;height:auto;display:block;margin:2rem auto}.blog-post .video-container{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;max-width:100%;margin:2rem 0}.blog-post .video-container iframe{position:absolute;top:0;left:0;width:100%;height:100%}.back-link{display:inline-block;margin-top:3rem;color:var(--highlight);text-decoration:none;font-size:1rem;border-bottom:1px solid transparent;transition:border-color .2s ease}.back-link:hover{border-bottom-color:var(--highlight)}.blog-post table{width:100%;margin:2rem 0;border-collapse:collapse}.blog-post td,.blog-post th{padding:.75rem;border:1px solid #444}.blog-post th{background-color:#333;font-weight:600}@media (prefers-color-scheme:light){.blog-post th{background-color:#f5f5f5}.blog-post td,.blog-post th{border-color:#ddd}}.text-muted{color:#888}@media (prefers-color-scheme:light){.text-muted{color:#666}}.mb-4{margin-bottom:1.5rem}.mt-5{margin-top:2.5rem}.pt-4{padding-top:1.5rem}.border-top{border-top:1px solid hsla(0,0%,100%,.1)}@media (prefers-color-scheme:light){.border-top{border-color:rgba(0,0,0,.1)}}@media (max-width:768px){.timeline:after{left:20px}.timeline-item{padding-left:50px}.timeline-item:after{left:20px}.timeline-date{position:relative;left:-40px;top:-10px;width:auto;text-align:left;margin-bottom:.5rem}.blog-post h1{font-size:2rem}.blog-post h2{font-size:1.5rem}.blog-post h3{font-size:1.25rem}}