:root{--code-bg:#0e1210;--tok-k:#4ade8f;--tok-s:#e8c468;--tok-c:#5c6660;--tok-f:#67d4e8}[data-theme=light]{--code-bg:#f1f1ec;--tok-k:#0b7a48;--tok-s:#8f6a06;--tok-c:#8a938b;--tok-f:#0b6b88}:root{--astro-code-foreground:var(--body);--astro-code-background:var(--code-bg);--astro-code-token-constant:var(--tok-s);--astro-code-token-string:var(--tok-s);--astro-code-token-string-expression:var(--tok-s);--astro-code-token-comment:var(--tok-c);--astro-code-token-keyword:var(--tok-k);--astro-code-token-parameter:var(--body);--astro-code-token-function:var(--tok-f);--astro-code-token-punctuation:var(--body);--astro-code-token-link:var(--tok-f)}.post-list{flex-direction:column;gap:24px;margin-top:30px;display:flex}.post-list .card{max-width:720px;margin:0}.post-list .card h3{margin-top:4px}.post-list .card h3 a{color:inherit;text-decoration:none}.post-list .card h3 a:hover{color:var(--accent)}.post-header-wrap{padding:88px 64px 0}.post-header-inner,.post-body-wrap{max-width:720px;margin:0 auto}.post-body-wrap{padding:48px 64px 80px}.post-crumb{color:var(--mut);font-size:.75rem;text-decoration:none}.post-crumb:hover{opacity:.75}.post-tags{flex-wrap:wrap;align-items:center;gap:10px;margin-top:34px;display:flex}.tag-fill,.tag-outline{white-space:nowrap;padding:5px 12px;font-size:.6875rem}.tag-fill{color:var(--bg);background:var(--accent)}.tag-outline{color:var(--dim);border:1px solid var(--hair2)}.post-hero-title{letter-spacing:-.015em;color:var(--head);text-wrap:pretty;margin:26px 0 0;font-size:clamp(1.7rem,4.4vw,2.375rem);font-weight:700;line-height:1.25}.post-meta-row{color:var(--mut);white-space:nowrap;flex-wrap:wrap;align-items:center;gap:24px;margin-top:26px;font-size:.75rem;display:flex}.meta-dot{background:var(--hair2);border-radius:50%;width:3px;height:3px}.post-divider{background:var(--accent);width:56px;height:2px;margin-top:32px}.prose{max-width:720px;margin-top:0;font-size:.906rem}.prose>*+*{margin-top:1.25em}.prose h2,.prose h3{color:var(--head);margin-top:3.2em;font-weight:500;line-height:1.5}.prose h2{font-size:1.25rem}.prose h3{font-size:1.05rem}.prose h2 .prose-hdr-mark,.prose h3 .prose-hdr-mark{color:var(--accent)}.prose p{line-height:2}.prose em{color:var(--head);font-style:italic}.prose a{color:var(--accent);border-bottom:1px solid var(--hair2);text-decoration:none}.prose a:hover{opacity:.75}.prose ul,.prose ol{padding-left:1.4em;line-height:1.8}.prose li+li{margin-top:.4em}.prose blockquote{border-left:3px solid var(--accent);color:var(--dim);margin-top:2.2em;padding:6px 0 6px 24px;font-size:.94rem;font-style:italic;line-height:1.9}.prose hr{border:none;border-top:1px solid var(--hair);margin-top:2em}.code-card{border:1px solid var(--hair);background:var(--code-bg);margin-top:2em}.code-card-bar{border-bottom:1px solid var(--hair);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.code-card-name{color:var(--mut);font-size:.6875rem}.code-card-copy{font-size:.6875rem;font-family:var(--mono);color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0}.code-card-copy:hover{opacity:.75}.code-card pre.astro-code{margin:0;padding:24px 24px 26px;font-size:.78rem;line-height:1.8;overflow-x:auto}.prose :not(pre)>code{font-family:var(--mono);background:var(--card);color:var(--head);border:1px solid var(--hair);padding:2px 6px;font-size:.86em}.post-footer-row{border-top:1px solid var(--hair);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:64px;padding-top:28px;display:flex}.post-footer-tags{align-items:center;gap:10px;display:flex}.post-footer-tags-label{color:var(--mut);font-size:.72rem}.post-share{font-family:var(--mono);color:var(--accent);white-space:nowrap;cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;text-decoration:none}.post-share:hover{opacity:.75}.post-nav-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:40px;display:grid}.post-nav-card,.post-nav-empty{padding:24px 28px}.post-nav-card{border:1px solid var(--hair);background:var(--card);text-decoration:none;display:block}.post-nav-empty{border:1px dashed var(--hair2);text-align:right}.post-nav-label{color:var(--mut);font-size:.6875rem}.post-nav-title{color:var(--head);margin-top:10px;font-size:.844rem;font-weight:500;line-height:1.55}.post-nav-empty .post-nav-title{color:var(--mut);font-style:italic;font-weight:400}@media (width<=760px){.post-header-wrap{padding:56px 22px 0}.post-body-wrap{padding:32px 22px 56px}.post-nav-grid{grid-template-columns:1fr}.post-nav-empty{text-align:left}}
