.tech-blog-template[data-astro-cid-ba5rsbbd],.tech-blog-article[data-astro-cid-ba5rsbbd]{--tb-bg:var(--color-background,#0d1117);--tb-text:var(--color-text,#e6edf3);--tb-primary:var(--color-primary,#22c55e);--tb-secondary:var(--color-secondary,#16a34a);--tb-accent:var(--color-accent,var(--tb-primary));--tb-muted:color-mix(in srgb, var(--tb-text) 45%, var(--tb-bg) 55%);--tb-border:color-mix(in srgb, var(--tb-text) 12%, var(--tb-bg) 88%);--tb-card-bg:color-mix(in srgb, var(--tb-bg) 80%, var(--tb-text) 20%);--tb-code-bg:color-mix(in srgb, var(--tb-bg) 70%, var(--tb-text) 30%);--tb-glow:color-mix(in srgb, var(--tb-primary) 25%, transparent);--tb-font-mono:var(--font-body,ui-monospace, SFMono-Regular, Menlo, "Cascadia Code", monospace);--tb-font-heading:var(--font-heading,ui-monospace, SFMono-Regular, Menlo, monospace);background-color:var(--tb-bg);color:var(--tb-text);font-family:var(--tb-font-mono)}.tb-container[data-astro-cid-ba5rsbbd]{width:100%;max-width:960px;margin:0 auto;padding:1rem 1.25rem}.tb-site-desc[data-astro-cid-ba5rsbbd]{color:var(--tb-muted);border-bottom:1px solid var(--tb-border);font-size:.85rem;font-family:var(--tb-font-mono);padding-top:.75rem;padding-bottom:.75rem}.tb-prompt[data-astro-cid-ba5rsbbd]{color:var(--tb-primary);font-weight:700}.tb-section-heading[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-primary);letter-spacing:.03em;margin:0 0 1rem;font-size:.85rem}.tb-grid[data-astro-cid-ba5rsbbd]{grid-template-columns:1fr;gap:1rem;padding-bottom:2rem;display:grid}@media (width>=640px){.tb-grid[data-astro-cid-ba5rsbbd]{grid-template-columns:repeat(2,1fr)}}@media (width>=900px){.tb-grid[data-astro-cid-ba5rsbbd]{grid-template-columns:repeat(3,1fr)}}.tb-card[data-astro-cid-ba5rsbbd]{color:inherit;border:1px solid var(--tb-border);background:var(--tb-card-bg);border-radius:2px;flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.tb-card[data-astro-cid-ba5rsbbd]:hover{border-color:var(--tb-primary);box-shadow:0 0 0 1px var(--tb-primary), 0 0 16px var(--tb-glow)}.tb-card-chrome[data-astro-cid-ba5rsbbd]{border-bottom:1px solid var(--tb-border);background:color-mix(in srgb, var(--tb-bg) 60%, var(--tb-text) 40%);align-items:center;gap:.35rem;padding:.45rem .75rem;display:flex}.tb-dot-red[data-astro-cid-ba5rsbbd]{background:#ff5f56;border-radius:50%;width:10px;height:10px;display:inline-block}.tb-dot-yellow[data-astro-cid-ba5rsbbd]{background:#ffbd2e;border-radius:50%;width:10px;height:10px;display:inline-block}.tb-dot-green[data-astro-cid-ba5rsbbd]{background:#27c93f;border-radius:50%;width:10px;height:10px;display:inline-block}.tb-chrome-title[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-muted);text-overflow:ellipsis;white-space:nowrap;margin-left:.35rem;font-size:.65rem;overflow:hidden}.tb-card-body[data-astro-cid-ba5rsbbd]{flex-direction:column;flex:1;padding:.75rem;display:flex}.tb-card-meta[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-muted);white-space:nowrap;text-overflow:ellipsis;margin:0 0 .5rem;font-size:.7rem;overflow:hidden}.tb-card-title[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-heading);color:var(--tb-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.7em;max-height:2.7em;margin:0 0 .5rem;font-size:.95rem;font-weight:700;line-height:1.35;display:-webkit-box;overflow:hidden}.tb-tags-row[data-astro-cid-ba5rsbbd]{flex-wrap:wrap;align-content:flex-start;gap:.35rem;min-height:2.31rem;margin-bottom:.5rem;display:flex}.tb-tag[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-primary);letter-spacing:0;background:0 0;border:none;padding:0;font-size:.7rem}.tb-card-excerpt[data-astro-cid-ba5rsbbd]{color:var(--tb-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:4.65em;margin:0 0 auto;font-size:.8rem;line-height:1.55;display:-webkit-box;overflow:hidden}.tb-read-more[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-primary);margin:.75rem 0 0;font-size:.72rem}.tb-empty[data-astro-cid-ba5rsbbd]{font-family:var(--tb-font-mono);color:var(--tb-muted);padding:4rem 0}
