@layer starlight.components{.sl-link-card:where(.astro-ig3idz7e){border:1px solid var(--sl-color-gray-5);box-shadow:var(--sl-shadow-sm);border-radius:.5rem;grid-template-columns:1fr auto;gap:.5rem;padding:1rem;display:grid;position:relative}a:where(.astro-ig3idz7e){line-height:var(--sl-line-height-headings);text-decoration:none}a:where(.astro-ig3idz7e):before{content:"";position:absolute;inset:0}.stack:where(.astro-ig3idz7e){flex-direction:column;gap:.5rem}.title:where(.astro-ig3idz7e){color:var(--sl-color-white);font-weight:600;font-size:var(--sl-text-lg)}.description:where(.astro-ig3idz7e){color:var(--sl-color-gray-3);line-height:1.5}.icon:where(.astro-ig3idz7e){color:var(--sl-color-gray-3)}.sl-link-card:where(.astro-ig3idz7e):hover{background:var(--sl-color-gray-7,var(--sl-color-gray-6));border-color:var(--sl-color-gray-2)}.sl-link-card:where(.astro-ig3idz7e):hover .icon:where(.astro-ig3idz7e){color:var(--sl-color-white)}}.hero-backdrop{--hero-bg:light-dark(#fff,#000);--hero-fg:light-dark(#4c4f69,#cdd6f4);--hero-cyan:light-dark(#179299,#94e2d5);--hero-green:light-dark(#40a02b,#a6e3a1);--hero-yellow:light-dark(#df8e1d,#f9e2af);--hero-red:light-dark(#d20f39,#f38ba8);--hero-red-alt:light-dark(#e64553,#eba0ac);height:32rem;font-family:var(--__sl-font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);background:var(--hero-bg);color:var(--hero-fg);border-radius:.5rem;font-size:.8rem;line-height:1.2;position:relative;overflow:hidden}.hero-backdrop__tape{overflow-anchor:none;flex-direction:column;justify-content:flex-end;padding:1rem;display:flex;position:absolute;inset:0}.hero-backdrop__line{white-space:pre;overflow-anchor:none;min-height:1.2em}.hero-backdrop .t-plain{color:var(--hero-fg);opacity:.85}.hero-backdrop .t-pipe{color:var(--hero-cyan);opacity:.4}.hero-backdrop .t-label{color:var(--hero-cyan)}.hero-backdrop .t-heading{color:var(--hero-fg);font-weight:600}.hero-backdrop .t-processed{color:var(--hero-green);opacity:.85}.hero-backdrop .t-skipped{color:var(--hero-yellow)}.hero-backdrop .t-errStatus{color:var(--hero-red);font-weight:600}.hero-backdrop .t-errDetail{color:var(--hero-red-alt)}.hero-backdrop .t-info{color:var(--hero-cyan)}body:has(.gaffer-hero){--sl-color-bg-nav:transparent;--sl-color-hairline-shade:transparent;background:light-dark(#fff,#000)}body:has(.gaffer-hero) header.header,body:has(.gaffer-hero) .main-pane footer.sl-flex{display:none}body:has(.gaffer-hero) .gaffer-footer{margin-top:0}body:has(.gaffer-hero) .sl-markdown-content>p{text-wrap:pretty}html:has(.gaffer-hero){overflow-x:clip}.gaffer-hero{z-index:-1;margin-inline:calc(50% - 50vw);margin-top:calc(-1 * var(--sl-nav-height,3.5rem));clip-path:inset(0);width:100vw;height:50vh;min-height:20rem;margin-bottom:-15vh;position:relative;overflow:hidden}.gaffer-hero .hero-backdrop{perspective:700px;border-radius:0;width:1000px;height:100%;margin:auto;position:absolute;inset:-100vw;overflow:visible}.gaffer-hero .hero-backdrop__tape{transform-origin:50%;filter:blur(.8px);width:400px;transform:translate(71%,7%)scale(2.8)rotateX(42deg)rotate(-15deg)rotateY(14deg)}.gaffer-hero__overlay{padding-top:3rem;padding-inline:clamp(1.5rem,8vw,6rem);z-index:1;background:linear-gradient(#0000 40%,light-dark(#fff,#000) 97% 100%),radial-gradient(at 40% 60%,#0000 0% 20%,light-dark(#ffffff59,#00000059) 60%,light-dark(#ffffff80,#00000080) 100%);flex-direction:column;justify-content:flex-end;padding-bottom:calc(15vh + 3rem);display:flex;position:absolute;inset:0}.gaffer-hero__content{max-width:100%}.gaffer-hero__brand{--wordmark-width:clamp(11rem, 24vw, 18rem);--logomark-width:calc(var(--wordmark-width) * .34);--logomark-height:var(--logomark-width);--wordmark-height:calc(var(--wordmark-width) * 33 / 152);--centring-offset:calc((var(--logomark-height) - var(--wordmark-height)) / 2);--brand-gap:clamp(.5rem, 1.5vw, 1rem);color:light-dark(#000,#fff);flex-direction:column;display:flex}.gaffer-hero__brand-row{align-items:center;gap:var(--brand-gap);display:flex}.gaffer-hero__logomark{width:var(--logomark-width);flex-shrink:0;height:auto;display:block}.gaffer-hero__wordmark{width:var(--wordmark-width);height:auto;display:block}.gaffer-hero__subtitle{font-family:var(--__sl-font-mono,ui-monospace, SFMono-Regular, Menlo, monospace);letter-spacing:.02em;color:light-dark(#000000b3,#ffffffb3);margin:calc(1rem - var(--centring-offset)) 0 0 0;padding-left:calc(var(--logomark-width) + var(--brand-gap));font-size:clamp(.9rem,1.4vw,1.1rem)}.home-install,.home-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-block:2rem;display:grid}.home-cards>:first-child{grid-column:span 2}.home-install{margin-bottom:1rem}.home-cards{margin-top:0}.home-install__pane{border:1px solid var(--color-shade-30);min-width:0;box-shadow:var(--sl-shadow-sm);border-radius:.5rem;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.home-install__label{font-size:var(--sl-text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);margin:0;font-weight:600}.home-install__note{font-size:var(--sl-text-sm);color:var(--color-muted);margin:auto 0 0;line-height:1.5}.home-install__note a{color:var(--color-link);text-underline-offset:.15em;text-decoration:underline}.home-install .expressive-code{width:100%;margin:0}.home-install .expressive-code pre{scrollbar-width:none}.home-install .expressive-code pre::-webkit-scrollbar{display:none}.home-install__buttons{flex-wrap:wrap;gap:.5rem;margin:0;display:flex}.home-install__buttons a{border:1px solid var(--color-shade-30);padding:var(--ec-codePadBlk,.75rem) .75rem;font-size:var(--sl-text-sm);color:var(--color-foreground);border-radius:.375rem;align-items:center;gap:.4rem;font-weight:600;text-decoration:none;display:inline-flex}.home-install__buttons a:hover{background:var(--color-accent-10);border-color:var(--color-accent)}@media (width<=82rem){.home-install{grid-template-columns:repeat(2,minmax(0,1fr))}.home-install>:last-child{grid-column:span 2}}@media (width<=56rem){.home-install{grid-template-columns:1fr}.home-install>:last-child{grid-column:span 1}}@media (width<=50rem){.home-cards{grid-template-columns:1fr}.home-cards>:first-child{grid-column:span 1}}
