.lab-cat{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;padding:.3rem .65rem;border-radius:9999px;border:1px solid var(--color-border);color:var(--color-ink);background:var(--color-canvas-2);line-height:1}.lab-cat:before{content:"";display:inline-block;width:6px;height:6px;border-radius:9999px;background:var(--color-ink-subtle)}.lab-cat--ai:before{background:var(--color-accent);box-shadow:0 0 8px color-mix(in srgb,var(--color-accent) 60%,transparent)}.lab-cat--local:before{background:#e8c46b;box-shadow:0 0 8px color-mix(in srgb,#e8c46b 60%,transparent)}.lab-cat--dev:before{background:#7aa8ff;box-shadow:0 0 8px color-mix(in srgb,#7aa8ff 60%,transparent)}.lab-toc-link[data-active=true]{color:var(--color-ink)}.lab-toc-link[data-active=true] span:first-child{color:var(--color-accent)}.lab-faq[open] .lab-faq__icon svg path:last-child{display:none}.lab-faq summary::-webkit-details-marker{display:none}.lab-faq summary{outline:none}.lab-faq summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:4px}.lab-faq[open] .lab-faq__icon{color:var(--color-accent);border-color:var(--color-accent)}.lab-prose{color:var(--color-ink-muted);font-size:1.0625rem;line-height:1.75;max-width:68ch}@media(min-width:768px){.lab-prose{font-size:1.15rem}}.lab-prose>p:first-of-type{font-size:1.25rem;line-height:1.55;color:var(--color-ink);margin-bottom:2rem}@media(min-width:768px){.lab-prose>p:first-of-type{font-size:1.4rem}}.lab-prose p{margin-top:0;margin-bottom:1.5em}.lab-prose p:last-child{margin-bottom:0}.lab-prose h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.028em;font-size:1.625rem;line-height:1.2;margin-top:3rem;margin-bottom:1rem;color:var(--color-ink);scroll-margin-top:6rem}@media(min-width:768px){.lab-prose h2{font-size:1.875rem;margin-top:3.5rem;margin-bottom:1.25rem}}.lab-prose h3{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;font-size:1.25rem;line-height:1.3;margin-top:2.25rem;margin-bottom:.6rem;color:var(--color-ink);scroll-margin-top:6rem}@media(min-width:768px){.lab-prose h3{font-size:1.375rem;margin-top:2.5rem;margin-bottom:.75rem}}.lab-prose h4{font-family:var(--font-display);font-weight:600;font-size:1.05rem;line-height:1.35;margin-top:1.75rem;margin-bottom:.5rem;color:var(--color-ink)}.lab-prose strong{color:var(--color-ink);font-weight:600}.lab-prose em{color:var(--color-ink)}.lab-prose a{color:var(--color-ink);background-image:linear-gradient(var(--color-ink-subtle),var(--color-ink-subtle)),linear-gradient(var(--color-accent),var(--color-accent));background-size:100% 1px,0% 1px;background-repeat:no-repeat,no-repeat;background-position:0 100%,0 100%;transition:background-size .38s cubic-bezier(.65,0,.35,1),color .28s ease}.lab-prose a:hover,.lab-prose a:focus-visible{color:var(--color-accent);background-size:0% 1px,100% 1px}.lab-prose ul,.lab-prose ol{margin:1.25rem 0 1.75rem;padding-left:1.5rem}.lab-prose ul{list-style:disc}.lab-prose ol{list-style:decimal}.lab-prose li{margin-bottom:.55rem;padding-left:.35rem;line-height:1.7}.lab-prose li::marker{color:var(--color-accent)}.lab-prose ol li::marker{font-family:var(--font-mono);font-size:.9em;font-weight:500}.lab-prose li>p{margin-bottom:.5rem}.lab-prose li>ul,.lab-prose li>ol{margin:.5rem 0 .75rem}.lab-prose li strong:first-child{color:var(--color-ink)}.lab-prose blockquote{margin:2.5rem 0;padding:1.5rem 0 1.5rem 1.75rem;border-left:2px solid var(--color-accent);font-family:var(--font-display);font-size:1.45rem;line-height:1.4;letter-spacing:-.018em;color:var(--color-ink);font-style:normal}@media(min-width:768px){.lab-prose blockquote{font-size:1.65rem;padding-left:2rem}}.lab-prose blockquote p{color:inherit;margin-bottom:.5em}.lab-prose blockquote p:last-child{margin-bottom:0}.lab-prose code{font-family:var(--font-mono);font-size:.88em;background:var(--color-canvas-2);padding:.18em .42em;border-radius:.3rem;border:1px solid var(--color-border);color:var(--color-ink)}.lab-prose pre{background:var(--color-canvas-2);border:1px solid var(--color-border);padding:1.25rem 1.5rem;border-radius:.6rem;overflow-x:auto;margin:1.75rem 0;font-size:.9rem;line-height:1.6}.lab-prose pre code{background:none;padding:0;border:none;border-radius:0;font-size:inherit}.lab-prose hr{border:none;border-top:1px solid var(--color-border);margin:3rem 0}.lab-prose table{width:100%;border-collapse:collapse;margin:1.75rem 0;font-size:.95em}.lab-prose th,.lab-prose td{text-align:left;padding:.7rem 1rem;border-bottom:1px solid var(--color-border)}.lab-prose th{font-family:var(--font-display);font-weight:600;color:var(--color-ink);border-bottom-color:var(--color-border-strong)}.lab-prose td{color:var(--color-ink-muted)}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
