.blog-surface{--blog-bg:#ffffff;--blog-muted:#f4f4f7;--blog-fg:#030712;--blog-fg-soft:#464c56;--blog-fg-muted:#6b6f79;--blog-border:#e8e8ed;--blog-border-strong:#d5d6dd;--blog-panel:#f4f4f7;--blog-accent:#c6502c;--blog-accent-deep:#933919;--blog-accent-surface:#f5e9e3;color:var(--blog-fg-soft);--foreground:225 71% 4%;--muted-foreground:218 10% 31%;--border:240 12% 92%;--input:240 12% 92%;--muted:240 16% 96%;--card:240 20% 99%;--card-foreground:225 71% 4%;--accent-foreground:17 72% 34%;--ring:14 64% 47%}.dark .blog-surface,:root[data-theme=dark] .blog-surface{--blog-bg:#0b0d12;--blog-muted:#1c202a;--blog-fg:#f3f4f7;--blog-fg-soft:#a9adb8;--blog-fg-muted:#7e828e;--blog-border:#262a34;--blog-border-strong:#363b47;--blog-panel:#1c202a;--blog-accent:#e58561;--blog-accent-deep:#eda88f;--blog-accent-surface:#3a2a22;--foreground:225 20% 96%;--muted-foreground:224 10% 69%;--border:223 16% 18%;--input:223 16% 18%;--muted:223 20% 14%;--card:222 20% 10%;--card-foreground:225 20% 96%;--accent-foreground:16 72% 75%;--ring:16 72% 75%}.blog-post-body{font-size:16px;line-height:1.65;color:var(--blog-fg-soft)}.blog-post-body h2,.blog-post-body h3,.blog-post-body h4{color:var(--blog-fg);text-wrap:balance;scroll-margin-top:88px}.blog-post-body h2{font-size:24px;font-weight:700;line-height:1.33;margin:56px 0 18px}.blog-post-body h3{font-size:20px;font-weight:600;line-height:1.4;margin:36px 0 12px}.blog-post-body h4{font-size:17px;font-weight:600;line-height:1.45;margin:28px 0 10px}.blog-post-body p{margin:0 0 1.35em}.blog-post-body b,.blog-post-body strong{color:var(--blog-fg);font-weight:600}.blog-post-body em{color:var(--blog-fg-muted)}.blog-post-body a{color:var(--blog-accent-deep);font-weight:500;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.blog-post-body a:hover{text-decoration-thickness:2px}.blog-post-body ol,.blog-post-body ul{margin:0 0 1.35em;padding:0;list-style:none;display:flex;flex-direction:column;gap:13px}.blog-post-body ul>li{position:relative;padding-left:26px}.blog-post-body ul>li:before{content:"";position:absolute;left:6px;top:.68em;width:6px;height:6px;border-radius:50%;background:var(--blog-accent)}.blog-post-body ol{counter-reset:blog-step}.blog-post-body ol>li{position:relative;padding-left:34px;counter-increment:blog-step}.blog-post-body ol>li:before{content:counter(blog-step);position:absolute;left:0;top:.12em;width:23px;height:23px;border-radius:50%;background:var(--blog-accent-surface);color:var(--blog-accent-deep);font-size:12.5px;font-weight:600;display:flex;align-items:center;justify-content:center}.blog-post-body li>ol,.blog-post-body li>ul{margin:10px 0 0}.blog-post-body table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:30px 0;font-size:15px}.blog-post-body td,.blog-post-body th{text-align:left;padding:13px 18px;vertical-align:top;line-height:1.55}.blog-post-body td:first-child,.blog-post-body th:first-child{padding-left:14px}.blog-post-body td:last-child,.blog-post-body th:last-child{padding-right:14px}.blog-post-body thead th{background:var(--blog-panel);white-space:nowrap;font-size:12.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--blog-fg-soft)}.blog-post-body tbody td{border-bottom:1px solid var(--blog-border)}.blog-post-body tbody tr:last-child td{border-bottom:none}.blog-post-body tbody td:first-child{font-weight:500;color:var(--blog-fg)}.blog-post-body td strong{color:var(--blog-fg)}.blog-post-body img{display:block;max-width:100%;height:auto;margin:32px 0;border-radius:12px;border:1px solid var(--blog-border)}.blog-post-body figure{margin:32px 0}.blog-post-body figcaption{margin-top:10px;font-size:13.5px;color:var(--blog-fg-muted);text-align:center}.blog-post-body blockquote{margin:32px 0;padding-left:20px;border-left:2px solid var(--blog-accent);font-style:italic;color:var(--blog-fg-soft)}.blog-post-body hr{border:none;border-top:1px solid var(--blog-border);margin:56px 0}.blog-post-body pre{margin:28px 0;padding:18px 20px;overflow-x:auto;border-radius:12px;background:var(--blog-muted);border:1px solid var(--blog-border);font-size:14px;line-height:1.6}.blog-post-body :not(pre)>code{padding:2px 6px;border-radius:5px;background:var(--blog-muted);font-size:.9em}@media (max-width:700px){.blog-post-body h2{font-size:22px;margin-top:44px}.blog-post-body h3{font-size:18.5px}}