.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--c-bg:#101214;--c-surface:#171a1d;--c-surface-alt:#22272f;--c-border:#3a414a;--c-brand:#d14715;--c-on-brand:#fff;--c-text:#f8fafc;--c-text-dim:#c6ced8;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-10:64px;--max-width:900px;--touch-target:44px;--border-width:1px;--border-width-thick:4px;--fs-xs:.75rem;--fs-sm:.875rem;--fs-base:1rem;--fs-md:1.25rem;--fs-lg:clamp(1.35rem, 3vw, 1.65rem);--fs-xl:clamp(1.85rem, 5vw, 2.4rem);--fs-2xl:clamp(2.6rem, 9vw, 4.9rem);--font-mono:ui-monospace, "Cascadia Code", "Source Code Pro", menlo, monospace;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--transition-fast:.15s var(--ease-out);--transition-normal:.2s var(--ease-out);--transition-hover:.18s ease}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}html{scroll-behavior:smooth}img,video,iframe{max-width:100%;height:auto}body{font:400 16px/1.6 var(--font-mono);background:var(--c-bg);color:var(--c-text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;flex-direction:column;min-height:100vh;display:flex;position:relative}body:before{content:"";z-index:-1;pointer-events:none;opacity:.62;background-image:url("data:image/svg+xml,%3Csvg width='56' height='56' viewBox='0 0 56 56' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 55.5H56M55.5 0V56' stroke='%2322272F' stroke-width='1'/%3E%3C/svg%3E");background-size:56px 56px;position:fixed;inset:0}::selection{background:var(--c-text);color:var(--c-bg)}@media (width>=700px){body{font-size:17px}}@media (width>=1100px){body{font-size:18px}}h1,h2,h3,h4,h5,h6{font:inherit;color:var(--c-text);margin:0 0 var(--space-5);padding-top:var(--space-5);text-wrap:balance;font-weight:600;line-height:1.2}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-md)}p{margin:0 0 var(--space-5);color:var(--c-text-dim);font-size:var(--fs-base);overflow-wrap:break-word}p+p{margin-top:var(--space-4)}strong{color:var(--c-text);font-weight:600}a *{color:inherit}a{color:var(--c-on-brand);background-color:var(--c-brand);box-shadow:inset 0 -2px 0 color-mix(in srgb, #000 28%, var(--c-brand));background-image:none;margin:0 -4px;padding:2px 4px;text-decoration:none}:where(a[href^=\/]:not(:has(img)):not(.comparison-card)){transition:transform .16s var(--ease-out), box-shadow .18s ease, background-color .18s ease, color .18s ease;vertical-align:baseline;display:inline-block;transform:translate(0)scale(1)}p a:not(:has(img)),li a:not(:has(img)),dd a:not(:has(img)){text-underline-offset:.18em;text-decoration-thickness:.08em}a:has(img){background-color:#0000;background-image:none;margin:0;padding:0}a[href^=\/]:not(:has(img)):not(.comparison-card):focus-visible{outline-offset:4px}:where(a[href^=\/]:not(:has(img)):not(.comparison-card)):active{transform:translate(-2px)scale(.98)}@media (hover:hover) and (pointer:fine){a:has(img):hover{background-color:#0000}}:focus-visible{outline:var(--border-width-thick) solid var(--c-brand);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-link{align-items:center;gap:var(--space-3);width:fit-content;color:var(--c-on-brand);background-color:var(--c-brand);box-shadow:inset 0 -2px 0 color-mix(in srgb, #000 28%, var(--c-brand));margin:0 0 var(--space-6);background-image:none;padding:2px 4px;font-weight:700;display:inline-flex}.home-link__title{color:inherit;view-transition-name:site-title;background:0 0;margin:0;padding:0;font-size:clamp(1.15rem,4vw,1.6rem);line-height:1;text-decoration:none}@media (hover:hover) and (pointer:fine){.home-link:hover{box-shadow:inset 0 -3px 0 color-mix(in srgb, #000 36%, var(--c-brand))}}.container{width:100%;max-width:var(--max-width);padding:clamp(var(--space-4), 4vw, var(--space-6));flex:1;margin:0 auto}ul,ol{margin-bottom:var(--space-5);padding-left:var(--space-5);color:var(--c-text-dim)}li{margin-bottom:var(--space-2);padding-left:var(--space-2)}code,pre{font-family:inherit;font-size:.95em}pre{background:var(--c-surface-alt);padding:var(--space-5);margin:0 0 var(--space-5);border:var(--border-width) solid var(--c-border);border-left:4px solid var(--c-brand);color:var(--c-text);overflow-x:auto}pre code{color:var(--c-text);background:0 0;padding:0}pre.astro-code span[style*="6A737D" i]{color:#ffad75!important}p code,li code{background:var(--c-surface-alt);color:var(--c-text);border:var(--border-width) solid var(--c-border);padding:.2em .4em}table{border-collapse:collapse;width:100%;margin:var(--space-5) 0;border:var(--border-width) solid var(--c-border);background:var(--c-surface)}.table-scroll{margin:var(--space-5) 0;border:var(--border-width) solid var(--c-border);background:var(--c-surface);overflow-x:auto}.table-scroll table{border:0;min-width:44rem;margin:0}th,td{padding:var(--space-3) var(--space-5);text-align:left;border-bottom:var(--border-width) solid var(--c-border)}th{background:var(--c-surface-alt);color:var(--c-text);text-transform:uppercase;font-weight:600;font-size:var(--fs-xs);letter-spacing:.05em}tbody th{font-size:var(--fs-base);letter-spacing:0;text-transform:none;background:0 0}tr:last-child th,tr:last-child td{border-bottom:none}hr{height:var(--border-width);background:var(--c-border);margin:var(--space-10) 0;border:0}.content-page .container{padding-top:var(--space-5)}blockquote{padding:var(--space-3) var(--space-4);margin:var(--space-4) 0;background:color-mix(in srgb, var(--c-brand) 8%, var(--c-surface))}blockquote p{margin-bottom:var(--space-2)}blockquote p:last-child{margin-bottom:0}.site-footer{border-top:var(--border-width) solid var(--c-border);background:0 0;margin-top:auto}.site-footer .container{justify-content:space-between;align-items:center;gap:var(--space-2) clamp(var(--space-4), 4vw, var(--space-6));padding-top:var(--space-6);padding-bottom:var(--space-6);flex-wrap:wrap;display:flex}.footer-links{justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.footer-link{font-size:var(--fs-sm);text-align:center;justify-content:center;align-items:center;line-height:1.35;display:inline-flex}.footer-link--internal{color:var(--c-on-brand);background-color:var(--c-brand);background-image:none;margin:0 -4px;padding:2px 4px;text-decoration:none}.footer-link--external{color:var(--c-text-dim);padding:0 var(--space-1);text-decoration-line:underline;text-decoration-thickness:calc(var(--border-width) * 1.5);text-decoration-color:color-mix(in srgb, var(--c-brand) 55%, transparent);text-underline-offset:.4em;overflow-wrap:anywhere;background:0 0;margin:0}@media (hover:hover) and (pointer:fine){.footer-link--internal:hover{color:var(--c-on-brand);background-color:var(--c-brand);background-image:none}.footer-link--external:hover{color:var(--c-text-dim);text-decoration-color:color-mix(in srgb, var(--c-brand) 55%, transparent);background:0 0}}.footer-link--internal:focus-visible{color:var(--c-on-brand);background-color:var(--c-brand);background-image:none}.footer-link--external:focus-visible{color:var(--c-text);text-decoration-color:var(--c-brand);background:0 0}@media (width<=768px){h1{font-size:var(--fs-xl)}pre{margin-left:calc(-1 * var(--space-5));margin-right:calc(-1 * var(--space-5));border-left:0;border-right:0}table{display:block;overflow-x:auto}.table-scroll table{display:table;overflow-x:visible}}@media (width<=600px){.site-footer .container{flex-direction:column;justify-content:flex-start;align-items:stretch}.footer-links{text-align:left;justify-content:flex-start;gap:var(--space-2) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.footer-link{text-align:left;justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}:where(a[href^=\/]:not(:has(img)):not(.comparison-card)):active{transform:none}}
