@import"https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap";.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--accent: #d8510e;--accent-light: #ffa200;--accent-dark: #ae3b02;--black: #131821;--white: #fff;--gray: #d9d7d7;--gray-light: #f5f5f5;--gray-dark: rgb(34, 41, 57);--podcast-color: #0b59c7;--meetup-color: #9037a4;--conference-color: #118f17;--quote-info: #ece2d0;--heading-color: var(--black);--link: var(--accent);--link-hover: var(--accent-dark);--code-highlight: #1a1919;--twitter: #1da1f2;--linkedin: #0077b5;--reddit: #ff4500;--whatsapp: #128c7e}.dark{--accent: #d8510e;--accent-light: #ffa200;--accent-dark: #9d3c0b;--black: #fff;--white: #131821;--gray: rgb(53, 54, 56);--gray-light: #0d1118;--gray-dark: rgb(169, 170, 172);--podcast-color: #1a6fca;--meetup-color: #9023a8;--conference-color: #128218;--quote-info: #352b18;--heading-color: var(--accent-light);--link: var(--accent);--link-hover: var(--accent-light);--code-highlight: #1a1919}html{scroll-behavior:smooth}body{margin:0;padding:0;text-align:left;font-family:Roboto,sans-serif;font-size:1.25rem;line-height:1.75rem;font-weight:300;line-height:2;background:var(--gray-light);background-size:100% 600px;overflow-wrap:break-word;color:var(--gray-dark)}body *::-moz-selection{background:var(--accent);color:var(--white)}body *::selection{background:var(--accent);color:var(--white)}main{margin-left:auto;margin-right:auto;width:720px;max-width:calc(100% - 3em);padding:3rem 1rem}@media (max-width: 1020px){main{max-width:calc(100% - 4em)}}@media (max-width: 720px){body{font-size:1.125rem;line-height:1.75rem}main{max-width:calc(100% - 2em);padding:1rem}}h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;line-height:2rem;color:var(--black)}h1{font-size:3.052em}h2{font-size:2.441em}h3{font-size:1.953em}h4{font-size:1.563em}h5{font-size:1.25em}strong,b{font-weight:700}a{border-bottom-width:2px;border-color:transparent;color:var(--link)}a:hover,a:focus-within{border-bottom-width:2px;border-color:currentColor;color:var(--link-hover)}a::-moz-selection{color:var(--link-hover);background:var(--black)}a::selection{color:var(--link-hover);background:var(--black)}p{margin-bottom:1rem}textarea{width:100%;font-size:1rem;line-height:1.5rem}input{font-size:1rem;line-height:1.5rem}table{margin-bottom:2rem;width:100%}img{height:auto;max-width:100%;border-radius:.5rem}code{border-radius:.125rem;padding:.125rem .375rem;background-color:var(--gray-light)}hr{border-width:0px;border-top:1px solid var(--gray-light)}th,td{border-width:1px;--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding:.25rem .5rem}.prose h1{margin-top:3rem;margin-bottom:1.5rem;scroll-margin-top:5rem;font-size:3rem;line-height:1;color:var(--heading-color)}.prose h2{margin-top:2.5rem;margin-bottom:1.5rem;scroll-margin-top:5rem;font-size:2.25rem;font-weight:700;line-height:3rem;color:var(--heading-color)}@media (max-width: 760px){.prose h2{font-size:1.875rem;line-height:2.5rem}}.prose h3{margin-top:2rem;margin-bottom:1.5rem;scroll-margin-top:5rem;font-size:2rem;font-weight:700;line-height:1.25;color:var(--heading-color)}.prose h4{margin-top:1rem;margin-bottom:1rem;scroll-margin-top:5rem;font-size:1.75rem;font-weight:700;color:var(--heading-color)}@media (max-width: 760px){.prose h4{font-size:1.5rem;line-height:1.75rem}}.prose p{margin-bottom:1rem;max-width:600px;font-size:1.3rem;line-height:1.75}.prose ol{margin-bottom:1.5rem;list-style-type:decimal;padding-left:1.5rem;font-size:1.3rem}.prose ul{margin-top:.75rem;padding-left:1.5rem;font-size:1.3rem;list-style-type:square}.prose li ul{list-style-type:circle}.prose li ul li ul{list-style-type:disc}.prose ul li,.prose ol li{padding-left:0;padding-bottom:.75rem;font-size:inherit}.prose pre{margin-bottom:2rem}.prose p>code,.prose li>code{font-size:1.1rem;font-weight:100;font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;background:var(--gray);color:var(--gray-dark)}.prose img{margin-left:auto;margin-right:auto;height:auto;max-width:100%}.quote,blockquote{position:relative;margin-top:1.25rem;margin-bottom:1.25rem;border-radius:.375rem;padding:1.25rem 1.5rem;font-weight:300;line-height:1.75;background:var(--quote-info);color:var(--gray-dark);border-left:4px solid var(--heading-color)}.quote ul,blockquote ul{font-size:1rem;line-height:1.5rem}.prose .quote strong,.prose blockquote strong{font-size:1.25rem;line-height:1.75rem;color:var(--black)}.prose .quote em,.prose blockquote em{font-size:1em;color:var(--gray-dark)}.quote:after,blockquote:after{content:"";position:absolute;top:-.125rem;left:-13px;height:22px;width:22px;border-radius:9999px;text-align:center;font-size:1.25rem;line-height:1.75rem;font-weight:900;font-family:Verdana,Geneva,Tahoma,sans-serif;background:var(--heading-color);color:var(--quote-info)}@media (max-width: 768px){.quote:after,blockquote:after{display:none}}.prose .quote ol,.prose .quote ul,.prose blockquote ol,.prose blockquote ul{margin:0;margin-top:1rem}.prose .quote a,.prose blockquote a{border-bottom-width:2px;border-style:solid;font-weight:400}.prose .quote li,.prose blockquote li{padding:0}@media (max-width: 1024px){.quote,blockquote{margin-top:1.25rem;margin-bottom:1.25rem;padding:1.5rem}}.quote+.quote,blockquote+blockquote{margin-top:1rem}.red{color:#bf2c2c}.red:before{content:"❌";margin-right:.625rem;font-size:70%}.green{color:#21a855}.green:before{content:"✅";margin-right:.625rem;font-size:70%}s{color:var(--accent)}s *{color:var(--gray-dark)}.sr-only{position:absolute;margin:0;height:1px;width:1px;overflow:hidden;white-space:nowrap;border-width:0px;padding:0;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.banner-container{z-index:2;height:30px;width:100%}.banner-container .content{position:absolute;top:-50px;width:100%;padding:.125rem 1rem;text-align:center;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));background:linear-gradient(137deg,#ffa200,#8800e2)}.banner-container .content a{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1));text-decoration-line:underline}.banner-container .content a:hover{color:#fad115}.banner-container .show-content{top:0}applause-button .count-container{top:-40px!important;color:var(--accent)!important}applause-button.clap-limit-exceeded div{fill:var(--accent-dark)!important;stroke:var(--accent-dark)!important;color:var(--accent-dark)!important}applause-button .style-root,applause-button .style-root .count-container .count{color:var(--gray-dark)!important;stroke:var(--gray-dark)!important;fill:var(--gray-dark)!important}.clap-limit-exceeded .style-root{height:58px;width:58px}.clap-limit-exceeded .style-root,applause-button.clap-limit-exceeded .count-container .count{fill:var(--accent)!important;stroke:var(--accent)!important;color:var(--accent)!important}.social-share-btn{margin:0!important;border:none!important;color:var(--gray-dark)}.social-share-btn .icon.whatsapp:hover svg{fill:var(--whatsapp)}.social-share-btn .icon.twitter:hover svg{fill:var(--black)}.social-share-btn .icon.reddit:hover svg{fill:var(--reddit)}.social-share-btn .icon.linkedin:hover svg{fill:var(--linkedin)}div[data-rehype-pretty-code-fragment]{--tw-bg-opacity: 1;background-color:rgb(17 17 17 / var(--tw-bg-opacity, 1))}pre{overflow-x:auto;border-radius:.5rem;padding-top:1rem;padding-bottom:1rem}pre>code{all:unset;display:grid;font-size:1rem;line-height:1.5rem}pre>code>.line,pre>code>[data-line]{padding:.25rem 1.5rem}.highlighted{border-left-width:3px;border-left-color:var(--accent);background-color:var(--code-highlight)}li:has(input){margin-left:-1.5rem;list-style-type:none}input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;margin-right:.375rem;display:inline-grid;place-content:center;font:inherit;color:var(--accent);width:1.15em;height:1.15em;border:.15em solid var(--accent);border-radius:.15em;transform:translateY(-.075em)}input[type=checkbox]:before{content:"";height:.5rem;width:.5rem;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);transform:scale(0);transform-origin:bottom left;transition:.12s transform ease-in-out;box-shadow:inset 1em 1em var(--accent);background-color:CanvasText}input[type=checkbox]:checked:before{transform:scale(1)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .5s ease-out,transform .5s ease-out}.fade-in.visible{opacity:1;transform:translateY(0)}
