code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.ExpandableImage_image__lfzww{cursor:zoom-in;transition:opacity .2s ease}.ExpandableImage_image__lfzww:hover{opacity:.9}.ExpandableImage_overlay__09AZ7{position:fixed;inset:0;background:rgba(0,0,0,.95);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.ExpandableImage_controls__Kw_CN{position:absolute;top:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 16px;border-radius:8px;z-index:10}.ExpandableImage_controls__Kw_CN button{background:rgba(255,255,255,.15);border:none;color:white;width:36px;height:36px;border-radius:6px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.ExpandableImage_controls__Kw_CN button:hover{background:rgba(255,255,255,.25)}.ExpandableImage_controls__Kw_CN button:nth-child(4){width:auto;padding:0 12px;font-size:14px}.ExpandableImage_zoomLevel__EiZwI{color:white;font-size:14px;min-width:50px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ExpandableImage_closeButton__tDcgj{margin-left:8px;font-size:24px!important}.ExpandableImage_transformWrapper__A72Ds{width:100%;height:100%}.ExpandableImage_transformContent__BILc6,.ExpandableImage_transformWrapper__A72Ds{display:flex;align-items:center;justify-content:center}.ExpandableImage_expandedImage__ThRG2{max-width:90vw;max-height:85vh;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.ExpandableImage_hint__E9UoI{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.5);font-size:13px;pointer-events:none}@media (max-width:768px){.ExpandableImage_controls__Kw_CN{top:auto;bottom:60px;padding:6px 12px;gap:6px}.ExpandableImage_controls__Kw_CN button{width:40px;height:40px}.ExpandableImage_hint__E9UoI{bottom:16px;font-size:12px}}.FileAttachment_attachment__xnfgU{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:var(--color-accent-blue,#3b82f6);margin:.5em 0}.FileAttachment_attachment__xnfgU:hover{text-decoration:underline}.FileAttachment_icon__3IVuU{flex-shrink:0}.FileAttachment_filename__MijpA{font-weight:500}.FileAttachment_meta__HFkcQ{color:var(--color-text-muted,#666);font-size:.9em}.blog-content{font-size:18px;line-height:1.8;color:#333}.blog-content>:first-child{margin-top:0!important}.blog-content p{margin:0 0 1.5em}.blog-content p:last-child{margin-bottom:0}.blog-content h1,.blog-content h2,.blog-content h3,.blog-content h4,.blog-content h5,.blog-content h6{font-family:var(--font-primary);font-weight:700;color:var(--color-heading);line-height:1.3}.blog-content h1:first-child,.blog-content h2:first-child,.blog-content h3:first-child,.blog-content h4:first-child,.blog-content h5:first-child,.blog-content h6:first-child,.blog-content>h1:first-of-type,.blog-content>h2:first-of-type,.blog-content>h3:first-of-type,.blog-content>h4:first-of-type,.blog-content>h5:first-of-type,.blog-content>h6:first-of-type{margin-top:0!important}.blog-content h1{font-size:2em;margin:1.2em 0 .6em}.blog-content h2{font-size:1.75em;margin:1.1em 0 .55em}.blog-content h3{font-size:1.5em;margin:1em 0 .5em}.blog-content h4{font-size:1.25em;margin:.9em 0 .45em}.blog-content h5{font-size:1.125em;margin:.8em 0 .4em}.blog-content h6{font-size:1em;margin:.7em 0 .35em}.blog-content ol,.blog-content ul{margin:0 0 1.5em;padding-left:2em}.blog-content li{margin-bottom:.5em}.blog-content li:last-child{margin-bottom:0}.blog-content a{color:var(--color-accent-blue);text-decoration:underline;transition:color .2s ease}.blog-content a:hover{color:#2563eb}.blog-content code{background:#f4f4f4;padding:2px 8px;border-radius:4px;font-family:Monaco,Courier New,monospace;font-size:.9em;color:#e83e8c}.blog-content pre{background:#2d2d2d;color:#f8f8f2;padding:1.5em;border-radius:8px;overflow-x:auto;margin:0 0 1.5em}.blog-content pre code{background:none;padding:0;border-radius:0;color:inherit;font-size:.85em}.blog-content .code-block-wrapper{margin:0 0 1.5em;border-radius:8px;overflow:hidden}.blog-content .code-block-header{background:#1e1e1e;padding:8px 16px;border-bottom:1px solid #3d3d3d}.blog-content .code-block-language{font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px}.blog-content .code-block-wrapper pre{margin:0;border-radius:0;background:#2d2d2d}.blog-content .code-block-wrapper pre code{display:block}.blog-content .code-block-wrapper pre.code-block-wrap,.blog-content .code-block-wrapper pre.code-block-wrap code{white-space:pre-wrap!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.blog-content blockquote{margin:0 0 1.5em;padding:1em 1.5em;border-left:4px solid var(--color-accent-blue);background:#f8f9fa;color:#555;font-style:italic}.blog-content blockquote p:last-child{margin-bottom:0}.blog-content strong{font-weight:700;color:var(--color-heading)}.blog-content em{font-style:italic}.blog-content img{max-width:100%;height:auto;border-radius:8px;margin:1.5em 0}.blog-content hr{border:none;border-top:3px solid #ddd;margin:1.5em 0}.blog-content .table-container{overflow-x:auto;margin:1.5em 0}.blog-content table{width:100%;border-collapse:collapse;background:white;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.blog-content td,.blog-content th{padding:12px 16px;text-align:left;border:1px solid #e0e0e0}.blog-content th{background:#6b7280;color:white;font-weight:600;font-size:.95em}.blog-content tr:nth-child(2n){background:#f8f9fa}.blog-content tr:hover{background:#f0f0f0}.blog-post-title{font-family:var(--font-display);font-size:48px;font-weight:600;color:var(--color-heading);margin:0 0 16px;line-height:1.2}.blog-post-article{background:rgba(255,255,255,.7);padding:48px;border-radius:16px;border:3px solid var(--color-shadow-accent);box-shadow:6px 6px 0 var(--color-shadow-accent)}.back-button{transition:all .2s ease}.back-button:hover{color:var(--color-accent-blue)!important;transform:translateX(-4px)}.back-button svg{width:24px;height:24px}.back-button:focus-visible,.blog-content a:focus-visible{outline:3px solid var(--color-accent-blue);outline-offset:4px;border-radius:4px}@media (max-width:768px){.blog-page-container{padding:24px 16px 16px}.blog-page-content{gap:24px}.blog-post-title{font-size:32px}.blog-post-article{padding:24px;border-width:2px;box-shadow:4px 4px 0 var(--color-shadow-accent)}.blog-content{font-size:16px}.blog-content h1{font-size:1.75em}.blog-content h2{font-size:1.5em}.blog-content h3{font-size:1.25em}.blog-content pre{padding:1em;font-size:14px}.blog-content blockquote{padding:.75em 1em}}@media (max-width:480px){.blog-page-container{padding:16px 12px 12px}.blog-post-title{font-size:28px}.blog-post-article{padding:20px}.blog-content{font-size:15px}.blog-content pre{padding:.75em;font-size:13px}}@media (prefers-reduced-motion:reduce){.back-button,.blog-content a{transition:none}.back-button:hover{transform:none}}