.tf-frameworks:where(.astro-wukcwq6k){flex-direction:column;align-items:center;gap:.9rem;padding-block:1.5rem 2.5rem;display:flex}p:where(.astro-wukcwq6k){color:var(--sl-color-gray-3);font-size:var(--sl-text-sm);margin:0}ul:where(.astro-wukcwq6k){flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}li:where(.astro-wukcwq6k){border:1px solid var(--tf-border);background:var(--tf-surface);color:var(--sl-color-gray-1);font-size:var(--sl-text-sm);border-radius:999px;margin:0;padding:.35rem .85rem;transition:border-color .16s,color .16s}li:where(.astro-wukcwq6k):hover{border-color:var(--sl-color-accent);color:var(--sl-color-white)}li:where(.astro-wukcwq6k):last-child{color:var(--sl-color-gray-2);font-style:italic}.tf-features:where(.astro-nikkmkia){grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr));gap:1rem;padding-bottom:clamp(2.5rem,2rem + 4vw,5rem);display:grid}.card:where(.astro-nikkmkia){border:1px solid var(--tf-border);background:var(--tf-surface);color:inherit;border-radius:.9rem;flex-direction:column;gap:.55rem;padding:1.25rem;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.card:where(.astro-nikkmkia):hover,.card:where(.astro-nikkmkia):focus-visible{border-color:color-mix(in srgb, var(--sl-color-accent) 55%, transparent);box-shadow:0 14px 30px -18px var(--tf-glow);transform:translateY(-2px)}.icon:where(.astro-nikkmkia){background:var(--sl-color-accent-low);width:2.4rem;height:2.4rem;color:var(--sl-color-accent-high);border-radius:.65rem;place-items:center;transition:transform .18s;display:grid}:root[data-theme=light] .icon:where(.astro-nikkmkia){color:var(--sl-color-accent)}.card:where(.astro-nikkmkia):hover .icon:where(.astro-nikkmkia){transform:rotate(-6deg)}.icon:where(.astro-nikkmkia) svg{width:1.35rem;height:1.35rem}h3:where(.astro-nikkmkia){font-size:var(--sl-text-lg);color:var(--sl-color-white);margin:.35rem 0 0}p:where(.astro-nikkmkia){color:var(--sl-color-gray-2);font-size:var(--sl-text-sm);margin:0;line-height:1.6}@media (prefers-reduced-motion:reduce){.card:where(.astro-nikkmkia),.icon:where(.astro-nikkmkia){transition:none}}.tf-section:where(.astro-jord2stv){border-top:1px solid var(--tf-border);grid-template-columns:minmax(0,1fr);align-items:center;gap:2rem;padding-block:clamp(2.5rem,2rem + 4vw,5rem);display:grid}.text:where(.astro-jord2stv),.visual:where(.astro-jord2stv){min-width:0}.eyebrow:where(.astro-jord2stv){color:var(--sl-color-accent-high);font-size:var(--sl-text-sm);letter-spacing:.08em;text-transform:uppercase;margin:0;font-weight:600}:root[data-theme=light] .eyebrow:where(.astro-jord2stv){color:var(--sl-color-accent)}h2:where(.astro-jord2stv){letter-spacing:-.02em;color:var(--sl-color-white);text-wrap:balance;margin:.6rem 0 0;font-size:clamp(1.6rem,1.1rem + 1.8vw,2.4rem);line-height:1.15}.body:where(.astro-jord2stv){color:var(--sl-color-gray-2);margin-top:1rem;line-height:1.65}.body:where(.astro-jord2stv) p+p,.body:where(.astro-jord2stv) p+ul,.body:where(.astro-jord2stv) ul+p{margin-top:.85rem}.body:where(.astro-jord2stv) ul{padding-inline-start:1.1rem}.body:where(.astro-jord2stv) li+li{margin-top:.35rem}.visual:where(.astro-jord2stv) .expressive-code{margin:0}.visual:where(.astro-jord2stv) *+.expressive-code{margin-top:.85rem}@media (width>=60rem){.tf-section:where(.astro-jord2stv){grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:4rem}.tf-section:where(.astro-jord2stv).flip .text:where(.astro-jord2stv){order:2}}.tf-pipeline:where(.astro-gt2h73lm){border:1px solid var(--tf-border);background:var(--tf-surface);border-radius:.9rem;gap:1rem;padding:1.25rem;display:grid}.triggers:where(.astro-gt2h73lm){flex-wrap:wrap;gap:.5rem;display:flex}.trigger:where(.astro-gt2h73lm){border:1px dashed color-mix(in srgb, var(--sl-color-accent) 60%, transparent);color:var(--sl-color-gray-1);font-size:var(--sl-text-sm);border-radius:.5rem;padding:.25rem .7rem}ol:where(.astro-gt2h73lm){gap:.6rem;margin:0;padding:0;list-style:none;display:grid}li:where(.astro-gt2h73lm){background:var(--tf-surface-raised);border:1px solid var(--tf-border);border-radius:.7rem;grid-template-columns:auto 1fr;align-items:start;gap:.8rem;margin:0;padding:.8rem .9rem;display:grid;position:relative}.num:where(.astro-gt2h73lm){background:var(--sl-color-accent);color:#fff;width:1.6rem;height:1.6rem;font-size:var(--sl-text-xs);border-radius:50%;place-items:center;font-weight:700;display:grid}li:where(.astro-gt2h73lm) div:where(.astro-gt2h73lm){font-size:var(--sl-text-sm);flex-direction:column;gap:.15rem;display:flex}strong:where(.astro-gt2h73lm){color:var(--sl-color-white)}li:where(.astro-gt2h73lm) div:where(.astro-gt2h73lm) span:where(.astro-gt2h73lm){color:var(--sl-color-gray-2)}.tf-statuses:where(.astro-tf7u4att){border:1px solid var(--tf-border);background:var(--tf-surface);border-radius:.9rem;gap:1rem;padding:1.25rem;display:grid}.label:where(.astro-tf7u4att){color:var(--sl-color-gray-3);font-size:var(--sl-text-xs);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-weight:600}ul:where(.astro-tf7u4att){gap:.45rem;margin:0;padding:0;list-style:none;display:grid}li:where(.astro-tf7u4att){font-size:var(--sl-text-sm);grid-template-columns:6.5rem 1fr;align-items:center;gap:.75rem;margin:0;display:grid}.text:where(.astro-tf7u4att){color:var(--sl-color-gray-2)}.pill:where(.astro-tf7u4att){font-family:var(--__sl-font-mono);color:var(--tone);background:color-mix(in srgb, var(--tone) 14%, transparent);border-radius:999px;justify-self:start;padding:.1rem .6rem;font-size:.78rem;font-weight:600}.passed:where(.astro-tf7u4att){--tone:var(--tf-passed)}.failed:where(.astro-tf7u4att){--tone:var(--tf-failed)}.error:where(.astro-tf7u4att){--tone:var(--tf-error)}.active:where(.astro-tf7u4att){--tone:var(--tf-active)}.neutral:where(.astro-tf7u4att){--tone:var(--tf-neutral)}.tf-cta:where(.astro-3ztqjale){border:1px solid var(--tf-border);text-align:center;background:radial-gradient(60% 120% at 50% 0%, var(--tf-glow), transparent 70%), var(--tf-surface);border-radius:1.2rem;flex-direction:column;align-items:center;gap:1rem;margin-block:2rem 1rem;padding:clamp(2rem,1.5rem + 3vw,3.5rem) 1.5rem;display:flex}h2:where(.astro-3ztqjale){letter-spacing:-.02em;color:var(--sl-color-white);margin:0;font-size:clamp(1.6rem,1.1rem + 1.8vw,2.4rem)}p:where(.astro-3ztqjale){max-width:34rem;color:var(--sl-color-gray-2);margin:0}.actions:where(.astro-3ztqjale){flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;margin-top:.5rem;display:flex}
