:root{color-scheme:light;--page: oklch(.988 .005 165);--page-2: oklch(.968 .012 165);--mint: oklch(.945 .04 165);--line: oklch(.9 .012 170);--line-strong: oklch(.84 .016 172);--ink: oklch(.24 .03 178);--ink-2: oklch(.43 .025 178);--ink-3: oklch(.52 .02 178);--night: oklch(.265 .045 182);--night-2: oklch(.31 .05 180);--night-line: oklch(.4 .045 180);--on-night: oklch(.97 .01 165);--on-night-2: oklch(.82 .03 168);--on-night-3: oklch(.7 .03 170);--emerald: oklch(.696 .149 162.5);--emerald-deep: oklch(.508 .118 165.6);--emerald-ink: oklch(.49 .11 165);--avocado: oklch(.92 .17 118);--step--1: .875rem;--step-0: 1.0625rem;--step-1: 1.25rem;--step-2: clamp(1.4rem, 1.2rem + .8vw, 1.75rem);--step-3: clamp(2.1rem, 1.4rem + 2.8vw, 3.5rem);--step-4: clamp(2.7rem, 1.5rem + 4.6vw, 5.5rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--space-10: 8rem;--section: clamp(4rem, 2.5rem + 5vw, 7.5rem);--gutter: clamp(1rem, .4rem + 2.6vw, 2.5rem);--wide: 76rem;--measure: 65ch;--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 22px;--radius-xl: 32px;--radius-pill: 999px;--shadow-window: 0 0 0 1px oklch(.3 .04 178 / .1), 0 24px 48px -28px oklch(.3 .05 178 / .28), 0 70px 120px -50px oklch(.32 .07 170 / .35);--shadow-float: 0 0 0 1px oklch(.3 .04 178 / .08), 0 14px 34px -14px oklch(.25 .05 178 / .38);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-expo: cubic-bezier(.16, 1, .3, 1);--z-raised: 10;--z-sticky: 100;--z-overlay: 200;--z-modal: 300;--z-toast: 400}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-optical-sizing:auto;font-weight:700;line-height:1.04;letter-spacing:-.03em;text-wrap:balance}h1{font-size:var(--step-4);font-weight:750}h2{font-size:var(--step-3)}h3{font-size:var(--step-2);line-height:1.15;letter-spacing:-.02em}p,li{text-wrap:pretty}p{margin:0}img,video{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--emerald-deep);outline-offset:3px;border-radius:4px}::-moz-selection{background:var(--avocado);color:var(--ink)}::selection{background:var(--avocado);color:var(--ink)}.container{width:min(100% - 2 * var(--gutter),var(--wide));margin-inline:auto}.section{padding-block:var(--section)}.lead{font-size:var(--step-1);line-height:1.5;color:var(--ink-2);max-width:44ch}.night{background:var(--night);color:var(--on-night);color-scheme:dark}.night .lead{color:var(--on-night-2)}.night :focus-visible{outline-color:var(--emerald)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;min-height:3rem;padding:.8em 1.4em;border:0;border-radius:var(--radius-pill);font:600 1rem/1.1 var(--font-body);letter-spacing:-.005em;text-decoration:none;cursor:pointer;transition:transform .16s var(--ease-out),background-color .2s ease,box-shadow .2s ease,color .2s ease}.btn:active{transform:scale(.97)}.btn svg{width:1.15em;height:1.15em;flex:none}.btn-primary{background:var(--emerald-deep);color:#fff;box-shadow:inset 0 1px #ffffff38,0 10px 24px -12px oklch(.45 .12 165 / .75)}.btn-quiet{background:#fff9;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-strong)}.btn-glow{background:var(--emerald);color:var(--night);box-shadow:0 0 0 1px #4bdba099,0 12px 40px -10px #15ba8199}.night .btn-quiet{background:transparent;color:var(--on-night);box-shadow:inset 0 0 0 1px var(--night-line)}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:oklch(.46 .11 165)}.btn-quiet:hover{box-shadow:inset 0 0 0 1px var(--ink-3)}.btn-glow:hover{background:#3ace93}.night .btn-quiet:hover{box-shadow:inset 0 0 0 1px var(--on-night-3)}}.link{color:var(--emerald-ink);font-weight:600;text-decoration:underline;text-decoration-color:oklch(.49 .11 165 / .35);transition:text-decoration-color .2s ease}.link:hover{text-decoration-color:currentColor}.night .link{color:var(--emerald);text-decoration-color:#15ba8166}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:var(--z-toast);padding:.7rem 1rem;border-radius:var(--radius-sm);background:var(--ink);color:var(--page);font-weight:600;transform:translateY(-160%);transition:transform .2s var(--ease-out)}.skip-link:focus{transform:none}.prose{max-width:68ch;font-size:1.125rem;line-height:1.72;color:var(--ink)}.prose>*+*{margin-top:1.25em}.prose h2{margin-top:2.2em;font-size:clamp(1.6rem,1.3rem + 1.2vw,2.1rem)}.prose h3{margin-top:1.8em;font-size:1.35rem}.prose h2+*,.prose h3+*{margin-top:.7em}.prose a{color:var(--emerald-ink);font-weight:500;overflow-wrap:anywhere}.prose ul,.prose ol{padding-left:1.25em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--emerald-ink)}.prose blockquote{margin-inline:0;padding:1.1em 1.3em;border-radius:var(--radius-md);background:var(--mint);color:var(--ink)}.prose blockquote>*+*{margin-top:.6em}.prose .cta{display:grid;gap:.6em;margin-block:2.2em;padding:1.4em 1.5em;border-radius:var(--radius-md);background:var(--night);color:var(--on-night)}.prose .cta>*{margin:0}.prose .cta-title{font:700 1.25rem/1.25 var(--font-display);letter-spacing:-.01em;color:var(--on-night)}.prose .cta a{color:var(--emerald)}.prose .cta-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.7em 1.3em;margin-top:.4em}.prose .cta-actions .btn{color:var(--night);font-weight:650}.prose code{font-family:var(--font-mono);font-size:.88em;padding:.12em .38em;border-radius:var(--radius-xs);background:var(--page-2)}.prose pre{overflow-x:auto;padding:1.1em 4.5em 1.1em 1.25em;border-radius:var(--radius-md);background:var(--night)!important;color:var(--on-night);font-size:.9rem;line-height:1.6;position:relative;white-space:pre-wrap;overflow-wrap:anywhere}.prose pre code{padding:0;background:none}.prose .copy-btn{position:absolute;top:.6em;right:.6em;padding:.3em .7em;border:1px solid rgb(255 255 255 / .2);border-radius:var(--radius-xs);background:#ffffff14;color:var(--on-night);font:600 .75rem/1.2 var(--font-body);cursor:pointer}.prose .copy-btn:hover,.prose .copy-btn:focus-visible{background:#ffffff2e}.prose img{border-radius:var(--radius-md);box-shadow:var(--shadow-float)}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.5em}.prose table{width:100%;border-collapse:collapse;font-size:.95rem;line-height:1.5;display:block;overflow-x:auto}.prose th,.prose td{padding:.7em .9em;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.prose thead th{font-weight:650;border-bottom:1.5px solid var(--ink)}.prose strong{font-weight:650}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
