:root{--ink:#1a1a1a;--ink-soft:#5c5c5c;--bg:#fff;--bg-soft:#f6f6f4;--rule:#e3e3df;--link:#1f5fa9;--measure:42rem;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--ink:#e8e6e1;--ink-soft:#a3a099;--bg:#15171a;--bg-soft:#1e2126;--rule:#31353b;--link:#7db2ec}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:1.0625rem;line-height:1.7}.wrap{width:100%;max-width:var(--measure);margin-inline:auto;padding-inline:1.25rem}a{color:var(--link);text-underline-offset:2px;text-decoration-thickness:1px}.site-header{border-bottom:1px solid var(--rule);padding-block:1.5rem}.site-header .wrap{flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;display:flex}.site-title{color:var(--ink);letter-spacing:-.01em;font-size:1.25rem;font-weight:700;text-decoration:none}.site-nav{gap:1.25rem;margin-left:auto;font-size:.9375rem;display:flex}.site-nav a{color:var(--ink-soft);text-decoration:none}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink);text-decoration:underline}main{padding-block:2.5rem 4rem}.site-footer{border-top:1px solid var(--rule);color:var(--ink-soft);padding-block:1.5rem 2.5rem;font-size:.875rem}.site-footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.25rem;display:flex}.site-footer a{color:inherit}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;margin-block:2rem .75rem;line-height:1.25}h1{margin-block-start:0;font-size:2rem}h2{font-size:1.375rem}h3{font-size:1.125rem}.page-intro{color:var(--ink-soft);margin-block:-.25rem 2rem}.post-list{margin:0;padding:0;list-style:none}.post-list li+li{border-block-start:1px solid var(--rule);margin-block-start:1.75rem;padding-block-start:1.75rem}.post-list h2{margin:0 0 .25rem;font-size:1.1875rem}.post-list h2 a{color:var(--ink);text-decoration:none}.post-list h2 a:hover{text-decoration:underline}.post-meta{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.post-list p{color:var(--ink-soft);margin:.375rem 0 0}.tag{border:1px solid var(--rule);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:.05rem .5rem;font-size:.75rem}.breadcrumbs{color:var(--ink-soft);margin-block-end:1.25rem;font-size:.875rem}.breadcrumbs a{color:var(--ink-soft)}.translations{color:var(--ink-soft);margin-block:.75rem 0;font-size:.875rem}.translations a+a:before{content:" · ";color:var(--ink-soft)}.takeaways{background:var(--bg-soft);border:1px solid var(--rule);border-radius:6px;margin-block-end:2rem;padding:1.25rem 1.5rem}.takeaways h2{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 .5rem;font-size:.8125rem}.takeaways ul{margin:0;padding-inline-start:1.1rem}.takeaways li+li{margin-block-start:.375rem}.related{border-block-start:1px solid var(--rule);margin-block-start:3.5rem;padding-block-start:1.5rem}.related h2{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin-block-start:0;font-size:.8125rem}.related ul{margin:0;padding:0;list-style:none}.related li+li{margin-block-start:1rem}.related a{font-weight:600}.related p{color:var(--ink-soft);margin:.125rem 0 0;font-size:.9375rem}.post-header{margin-block-end:2rem}.post-header .post-meta{margin-block-start:.5rem}.prose>:first-child{margin-block-start:0}.prose img{border-radius:4px;max-width:100%;height:auto;margin-inline:auto;display:block}.prose blockquote{border-inline-start:3px solid var(--rule);color:var(--ink-soft);margin-inline:0;padding-inline-start:1rem}.prose code{background:var(--bg-soft);border-radius:3px;padding:.1em .35em;font-size:.9em}.prose pre{background:var(--bg-soft);border:1px solid var(--rule);border-radius:6px;padding:1rem;overflow-x:auto}.prose pre code{background:0 0;padding:0;font-size:.875rem}@media (prefers-color-scheme:dark){.astro-code,.astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}}.prose table{border-collapse:collapse;width:100%;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--rule);text-align:start;padding:.5rem .75rem}hr{border:0;border-block-start:1px solid var(--rule);margin-block:2.5rem}
