.page-hero[data-astro-cid-p23wzl36]{background:var(--page-hero-overlay),linear-gradient(135deg,var(--hero-bg-from),var(--hero-bg-to));color:var(--color-on-dark);padding-block:var(--space-8) var(--space-7);box-shadow:inset 0 -1px #ffffff0f}.post-kicker-row[data-astro-cid-p23wzl36]{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2)}.page-hero-label[data-astro-cid-p23wzl36]{font-size:var(--font-size-xs);font-weight:500;letter-spacing:.06em;color:var(--color-on-dark-label)}.post-status[data-astro-cid-p23wzl36]{display:inline-flex;align-items:center;min-height:1.7rem;padding:.15rem .55rem;border-radius:999px;border:1px solid rgba(255,204,102,.34);background:#ffcc661a;color:var(--color-on-dark-warm);font-size:var(--font-size-xs);font-weight:600}.post-hero-inner[data-astro-cid-p23wzl36]{max-width:800px;margin-inline:auto}.post-back[data-astro-cid-p23wzl36]{font-size:var(--font-size-sm);color:var(--color-on-dark-link);display:inline-block;margin-bottom:var(--space-4)}.post-back[data-astro-cid-p23wzl36]:hover{color:var(--color-on-dark-link-hover)}.post-meta[data-astro-cid-p23wzl36]{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap}.post-meta[data-astro-cid-p23wzl36] time[data-astro-cid-p23wzl36]{font-size:var(--font-size-sm);color:var(--color-on-dark-muted)}.news-tag[data-astro-cid-p23wzl36]{display:inline-flex;align-items:center;min-height:1.9rem;padding:.2rem .65rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--color-on-dark-accent) 22%,transparent);background:#ffffff08;color:var(--color-on-dark-tag);font-size:var(--font-size-xs);font-weight:500;letter-spacing:.01em}.post-title[data-astro-cid-p23wzl36]{font-size:clamp(2.2rem,4vw,3.2rem);margin-bottom:var(--space-4);line-height:1.15}.post-description[data-astro-cid-p23wzl36]{font-size:var(--font-size-md);color:var(--color-on-dark-muted);max-width:56ch;line-height:1.8}.post-shell[data-astro-cid-p23wzl36]{max-width:78ch;margin-inline:auto}.post-prose[data-astro-cid-p23wzl36]{max-width:none;color:var(--color-text)}.post-prose[data-astro-cid-p23wzl36] p{line-height:1.85;color:var(--color-text-muted)}.post-prose[data-astro-cid-p23wzl36] h2,.post-prose[data-astro-cid-p23wzl36] h3{line-height:1.3;color:var(--color-text);margin-top:2rem}.post-prose[data-astro-cid-p23wzl36] h2{font-size:var(--font-size-2xl);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4)}.post-prose[data-astro-cid-p23wzl36] h3{font-size:var(--font-size-xl);margin-bottom:var(--space-3)}.post-prose[data-astro-cid-p23wzl36] ul,.post-prose[data-astro-cid-p23wzl36] ol{padding-left:var(--space-5);margin-bottom:var(--space-4);list-style:revert}.post-prose[data-astro-cid-p23wzl36] li{margin-bottom:var(--space-2);color:var(--color-text-muted);line-height:1.85}.post-prose[data-astro-cid-p23wzl36] table{color:var(--color-text-muted);border-collapse:collapse;margin:var(--space-5) 0;display:block;overflow-x:auto;max-width:100%;line-height:1.6}.post-prose[data-astro-cid-p23wzl36] th{color:var(--color-text);font-weight:600;text-align:left}.post-prose[data-astro-cid-p23wzl36] th,.post-prose[data-astro-cid-p23wzl36] td{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border)}.post-prose[data-astro-cid-p23wzl36] img{max-width:100%;height:auto;border-radius:var(--radius-md);margin:var(--space-5) 0}.post-prose[data-astro-cid-p23wzl36] code{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875em;background:var(--color-surface-2);padding:.1em .4em;border-radius:var(--radius-sm)}.post-prose[data-astro-cid-p23wzl36] pre{background:var(--color-surface-2);border:1px solid var(--color-border);padding:var(--space-5);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--space-5)}.post-prose[data-astro-cid-p23wzl36] pre code{background:none;padding:0}.post-prose[data-astro-cid-p23wzl36] blockquote{border-left:4px solid var(--color-primary);padding-left:var(--space-4);margin:var(--space-5) 0;color:var(--color-text-muted);font-style:italic}.post-prose[data-astro-cid-p23wzl36] a{text-decoration:underline}.post-prose[data-astro-cid-p23wzl36] .repo-card{display:flex;gap:var(--space-4);align-items:flex-start;margin:var(--space-5) 0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:.75rem;text-decoration:none;color:inherit;background:var(--color-surface, transparent);transition:border-color .15s ease,background .15s ease}.post-prose[data-astro-cid-p23wzl36] .repo-card:hover{border-color:var(--color-primary);background:var(--color-surface-hover, rgba(127, 127, 127, .06))}.post-prose[data-astro-cid-p23wzl36] .repo-card-icon{flex:none;width:1.5rem;height:1.5rem;color:var(--color-text-muted)}.post-prose[data-astro-cid-p23wzl36] .repo-card-icon svg{width:100%;height:100%}.post-prose[data-astro-cid-p23wzl36] .repo-card-body{display:flex;flex-direction:column;gap:.25rem;min-width:0}.post-prose[data-astro-cid-p23wzl36] .repo-card-title{font-weight:600;color:var(--color-primary);word-break:break-word}.post-prose[data-astro-cid-p23wzl36] .repo-card-desc{font-size:.9rem;color:var(--color-text-muted);line-height:1.5}.post-prose[data-astro-cid-p23wzl36] .repo-card-meta{font-size:.8rem;color:var(--color-text-muted);opacity:.8}.post-prose[data-astro-cid-p23wzl36] .repo-card-row{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:var(--space-5) 0}.post-prose[data-astro-cid-p23wzl36] .repo-card-row .repo-card{flex:1 1 220px;margin:0;flex-direction:column}.post-prose[data-astro-cid-p23wzl36] .repo-card-row .repo-card-icon{width:1.25rem;height:1.25rem}@font-face{font-family:"Fira Math";src:url(/fonts/FiraMath-Regular.subset.woff2) format("woff2"),url(/fonts/FiraMath-Regular.otf) format("opentype");font-weight:400;font-style:normal}.post-prose[data-astro-cid-p23wzl36] math{color:inherit;font-family:"Fira Math",math}.post-prose[data-astro-cid-p23wzl36] math.tml-display{display:block;overflow-x:auto;max-width:100%;padding:.25rem 0 .35rem;margin:var(--space-5) 0;color:var(--color-text-muted)}.post-footer[data-astro-cid-p23wzl36]{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}
