:root{color-scheme:light;--color-background: #fff;--color-text: #252525;--color-secondary: #595959;--color-muted: #707070;--color-border: #dedede;--color-link: var(--color-text);--color-focus: #252525;--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace;--text-small: 1rem;--text-body: 1.125rem;--text-heading: clamp(2.125rem, 1.625rem + 1.5vw, 3rem);--leading-body: 1.65;--leading-heading: 1.25;--text-section-heading: clamp(1.75rem, 1.5rem + .75vw, 2.25rem);--text-project-heading: 1.25rem;--section-spacing: clamp(2rem, 3vw, 3rem);--weight-normal: 400;--weight-medium: 500;--weight-heading: 650;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--content-width: 90rem;--page-gutter: clamp(1.25rem, 4vw, 4.5rem);font-family:var(--font-body);font-weight:var(--weight-normal);line-height:var(--leading-body);color:var(--color-text);background:var(--color-background)}@media(min-width:80rem){:root{font-size:80%}}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-size:var(--text-body)}a{color:var(--color-link);text-underline-offset:.3em;text-decoration-thickness:1px}a:hover{text-decoration-line:underline}:focus-visible{outline:2px solid var(--color-focus);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:var(--weight-heading);line-height:var(--leading-heading)}h1{font-size:var(--text-heading);letter-spacing:-.025em}p{max-width:65ch;color:var(--color-secondary)}h1+p{margin-top:var(--space-4)}.eyebrow,.metadata{font-size:var(--text-small);color:var(--color-muted)}.eyebrow{margin-bottom:var(--space-3)}hr{border:0;border-top:1px solid var(--color-border);margin-block:var(--space-8)}.status-dot{width:.5rem;height:.5rem;flex:0 0 .5rem;border-radius:50%;background:#737373}.status-dot[data-status=live]{background:#15803d}.status-dot[data-status=in-development]{background:#dc2626}app-article .prose{overflow-wrap:anywhere}app-article .prose>*+*{margin-top:var(--space-6)}app-article .prose h2{font-size:var(--text-section-heading)}app-article .prose h3{font-size:var(--text-project-heading)}app-article .prose h4,app-article .prose h5,app-article .prose h6{font-size:var(--text-body)}app-article .prose h2,app-article .prose h3{margin-top:var(--space-8)}app-article .prose ul,app-article .prose ol{padding-left:var(--space-6)}app-article .prose li+li{margin-top:var(--space-2)}app-article .prose blockquote{margin-inline:0;padding-left:var(--space-6);border-left:2px solid var(--color-border);color:var(--color-secondary)}app-article .prose code{font-family:var(--font-mono);font-size:.95em}app-article .prose pre{max-width:100%;overflow-x:auto;white-space:pre;padding:var(--space-4);border:1px solid var(--color-border);font-size:var(--text-small)}app-article .prose pre code{overflow-wrap:normal}app-article .prose img{display:block;max-width:100%;height:auto}app-article .prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}app-article .prose th,app-article .prose td{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);text-align:left}kbd{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border:1px solid #c9c9c9;border-radius:.55rem;background:#f7f7f7;box-shadow:0 3px #c9c9c9;font-family:var(--font-body);font-size:var(--text-small);line-height:1.5}
