.blog-post-container{animation:.5s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.prose p{margin-top:1.25em;margin-bottom:1.25em}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose h1{margin-top:2rem;margin-bottom:1.5rem;font-size:2.25rem;font-weight:800;line-height:1.2;color:#f9fafb!important}.dark .prose h1{color:#f9fafb!important}.prose h2{margin-top:2.5rem;margin-bottom:1rem;font-size:1.875rem;font-weight:700;line-height:1.3;color:#f3f4f6!important}.dark .prose h2{color:#f3f4f6!important}.prose h3{margin-top:2rem;margin-bottom:.75rem;font-size:1.5rem;font-weight:600;line-height:1.4;color:#e5e7eb!important}.dark .prose h3{color:#e5e7eb!important}.prose h4{margin-top:1.5rem;margin-bottom:.5rem;font-size:1.25rem;font-weight:600;line-height:1.5;color:#d1d5db!important}.dark .prose h4{color:#d1d5db!important}.prose pre{background:#111827;border:1px solid #374151;margin:1rem 0;padding:1rem;position:relative;overflow-x:auto}.prose pre::-webkit-scrollbar{height:8px}.prose pre::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.prose pre::-webkit-scrollbar-thumb{background:#3b82f6;border-radius:4px}.prose pre::-webkit-scrollbar-thumb:hover{background:#2563eb}.prose code:not(pre code){background:#a855f71a;border:1px solid #a855f733;border-radius:.375rem;padding:.125rem .375rem;font-size:.875rem;font-weight:500;transition:all .2s}.dark .prose code:not(pre code){background:#a855f726;border:1px solid #a855f74d}.prose code:not(pre code):hover{background:#a855f733;border-color:#a855f766}.prose blockquote{position:relative;overflow:hidden}.prose blockquote:before{content:"\"";color:#3b82f626;font-family:system-ui,-apple-system,sans-serif;font-size:100px;line-height:1;position:absolute;top:-20px;left:-10px}.prose table{border-collapse:separate;border-spacing:0;background:#fff;border-radius:.75rem;width:100%;margin:2rem 0;overflow:hidden;box-shadow:0 1px 3px #0000001a}.dark .prose table{background:#1f2937;box-shadow:0 1px 3px #00000080}.prose th{color:#fff;text-align:left;background:#3b82f6;padding:.75rem 1rem;font-weight:600}.prose td{border-bottom:1px solid #e5e7eb80;padding:.75rem 1rem}.dark .prose td{border-bottom:1px solid #37415180}.prose tbody tr:hover{background:#3b82f60d}.dark .prose tbody tr:hover{background:#3b82f61a}.prose h1,.prose h2,.prose h3{scroll-margin-top:5rem;position:relative}.prose h1:hover:before,.prose h2:hover:before,.prose h3:hover:before{content:"#";color:#3b82f6;font-weight:400;position:absolute;left:-1.5rem}.prose ul li:before{content:"▸";color:#3b82f6;width:1em;margin-left:-1em;font-weight:700;display:inline-block}.prose ol{counter-reset:list-counter;padding-left:0;list-style:none}.prose ol li{counter-increment:list-counter;margin-bottom:1.5rem;padding-left:3rem;position:relative}.prose ol li:before{content:counter(list-counter);color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#2563eb 100%);border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:700;display:flex;position:absolute;top:0;left:0;box-shadow:0 2px 8px #3b82f64d}.prose ol li strong:first-of-type{color:#60a5fa;font-size:1.05rem}.prose ol li code{color:#60a5fa;background:#1e293b;border-radius:.25rem;padding:.2rem .5rem;font-size:.875rem}.prose a{color:#3b82f6;text-decoration:none;transition:color .2s;position:relative}.prose a:after{content:"";background:linear-gradient(90deg,#3b82f6 0%,#8b5cf6 100%);width:0;height:2px;transition:width .3s;position:absolute;bottom:-2px;left:0}.prose a:hover:after{width:100%}.prose img{cursor:zoom-in;transition:transform .3s,box-shadow .3s}.prose img:hover{transform:scale(1.02);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.timeline-flow{background:#0f172a;border:1px solid #1e293b;border-radius:.5rem;align-items:center;gap:1rem;margin:2rem 0;padding:2rem;display:flex;overflow:auto hidden}.timeline-flow-vertical{background:#0f172a;border:1px solid #1e293b;border-radius:.5rem;flex-direction:column;align-items:center;gap:.5rem;max-width:400px;margin:2rem auto;padding:2rem;display:flex}.timeline-box{text-align:center;border:2px solid;border-radius:.5rem;flex-shrink:0;min-width:180px;padding:1.25rem 1rem;transition:transform .2s,box-shadow .2s}.timeline-box:hover{transform:translateY(-4px);box-shadow:0 8px 16px #3b82f64d}.timeline-box-1{color:#fff;background:#1e3a8a;border-color:#3b82f6}.timeline-box-2{color:#fff;background:#1e40af;border-color:#3b82f6}.timeline-box-3{color:#fff;background:#2563eb;border-color:#60a5fa}.timeline-box-4{color:#fff;background:#3b82f6;border-color:#60a5fa}.timeline-box-5{color:#000;background:#60a5fa;border-color:#93c5fd}.timeline-title{white-space:nowrap;margin-bottom:.5rem;font-size:1rem;font-weight:700}.timeline-content{opacity:.95;font-size:.875rem;line-height:1.5}.timeline-arrow{color:#60a5fa;flex-shrink:0;font-size:2rem;font-weight:300}.timeline-arrow-vertical{color:#60a5fa;flex-shrink:0;font-size:2rem;font-weight:300;line-height:.5}.mermaid-diagram{background:#0f172a;border:1px solid #1e293b;border-radius:.5rem;justify-content:center;align-items:center;min-height:250px;margin:2rem 0;padding:2rem;transition:all .3s;display:flex;overflow:auto hidden}.dark .mermaid-diagram{background:#0f172a;border-color:#1e293b}.mermaid-diagram svg{width:auto!important;max-width:100%!important;height:auto!important;min-height:200px!important;font-size:14px!important}.mermaid-diagram text,.mermaid-diagram .nodeLabel,.mermaid-diagram .edgeLabel,.mermaid-diagram tspan{fill:#fff!important;color:#fff!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important;font-size:15px!important;font-weight:500!important;line-height:1.4!important}.mermaid-diagram .node rect{rx:8px!important;ry:8px!important;min-width:180px!important;padding:12px!important}.mermaid-diagram .node rect+text,.mermaid-diagram .node polygon+text,.mermaid-diagram .node circle+text{fill:currentColor!important}.mermaid-diagram:hover{transform:translateY(-2px);box-shadow:0 10px 25px -5px #3b82f633!important}.prose pre:not(:has(code)){color:#e5e7eb;background:#1f2937;border:1px solid #374151;border-radius:.5rem;max-width:100%;margin:2rem 0;padding:1.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.7;overflow-x:auto}.dark .prose pre:not(:has(code)){background:#111827;border-color:#1f2937}.reading-progress{transform-origin:0;z-index:100;background:linear-gradient(90deg,#3b82f6 0%,#8b5cf6 50%,#ec4899 100%);height:3px;transition:transform .2s;position:fixed;top:0;left:0;right:0}.prose ::selection{color:inherit;background:#3b82f633}html{scroll-behavior:smooth}
