.sf-launch{position:fixed;inset:0;z-index:10000;min-height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f3f7f6;color:#152f35;font-family:'Plus Jakarta Sans',system-ui,sans-serif;text-align:center;padding:24px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));isolation:isolate}
.sf-launch-halo{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 43%,#bde3d76b,transparent 50%),radial-gradient(circle at 82% 12%,#c7eb7520,transparent 40%)}
.sf-launch-halo:after{content:'';position:absolute;inset:12%;background-image:radial-gradient(color-mix(in srgb,var(--sf-accent,#087568) 12%,transparent) 1px,transparent 1px);background-size:24px 24px;mask-image:radial-gradient(ellipse,#000,transparent 65%)}
.sf-launch-content{width:min(100%,360px)}
.sf-launch-mark{position:relative;width:80px;height:80px;margin:0 auto 28px;isolation:isolate}
.sf-launch-mark img{display:block;width:80px;height:80px;border-radius:20px;box-shadow:0 12px 32px color-mix(in srgb,var(--sf-accent,#087568) 15%,transparent)}
.sf-launch-mark span{position:absolute;inset:-12px;border:1px solid color-mix(in srgb,var(--sf-accent,#087568) 19%,transparent);border-radius:26px;z-index:-1}
.sf-launch .sf-launch-eyebrow{font-size:10px;font-weight:650;letter-spacing:.18em;line-height:1.5;margin:0 0 10px;color:#52676d}
.sf-launch h1{font-size:clamp(24px,6vw,32px);font-weight:700;letter-spacing:-.04em;line-height:1.2;margin:0;overflow-wrap:anywhere}
.sf-launch-track{position:relative;display:flex;justify-content:space-between;align-items:center;width:156px;height:24px;margin:28px auto 12px;isolation:isolate}
.sf-launch-track:before{content:'';position:absolute;left:4px;right:4px;height:1px;background:color-mix(in srgb,var(--sf-accent,#087568) 19%,transparent);z-index:-1}
.sf-launch-track i{width:7px;height:7px;border:2px solid var(--sf-accent,#087568);border-radius:50%;background:#f3f7f6}
.sf-launch-track span{position:absolute;left:0;width:12px;height:12px;background:var(--sf-accent,#087568);border:3px solid #f3f7f6;border-radius:50%;box-shadow:0 0 0 4px color-mix(in srgb,var(--sf-accent,#087568) 7%,transparent)}
.sf-launch .sf-launch-status{font-size:13px;line-height:1.6;min-height:21px;color:#52676d;margin:0 auto;max-width:280px}
.sf-launch .sf-launch-signature{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:24px;right:24px;margin:0;font-size:12px;font-weight:600;letter-spacing:.04em;color:#52676d}
.sf-launch-retry{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;padding:0 20px;border:1px solid currentColor;border-radius:8px;color:inherit;text-decoration:none;font-size:14px;font-weight:600}
.sf-launch-retry[hidden]{display:none}.sf-launch-retry:focus-visible{outline:3px solid var(--sf-accent,#087568);outline-offset:4px}
.sf-launch[data-closing=true]{opacity:0;pointer-events:none;transition:opacity 180ms ease-out}
.sf-launch[data-state=slow] .sf-launch-track span{animation:none}
html[data-theme=dark] .sf-launch{background:#10191f;color:#edf4f7}
html[data-theme=dark] .sf-launch-halo{background:radial-gradient(ellipse at 50% 43%,#214c4450,transparent 60%)}
html[data-theme=dark] .sf-launch :is(.sf-launch-eyebrow,.sf-launch-status,.sf-launch-signature){color:#b0c2ca}
html[data-theme=dark] .sf-launch-track :is(span,i){border-color:#10191f;background:#8ce0ce}
html[data-theme=dark] .sf-launch-track:before{background:#8ce0ce50}
@keyframes sf-launch-travel{0%,12%{transform:translateX(0)}88%,100%{transform:translateX(144px)}}
@keyframes sf-launch-breathe{0%,100%{opacity:.4;transform:scale(.98)}50%{opacity:1;transform:scale(1.04)}}
@media(prefers-reduced-motion:no-preference){html:not([data-motion=reduced]) .sf-launch-track span{animation:sf-launch-travel 1600ms cubic-bezier(.45,0,.25,1) infinite alternate}html:not([data-motion=reduced]) .sf-launch-mark span{animation:sf-launch-breathe 2400ms ease-in-out infinite}}
@media(prefers-reduced-motion:reduce){.sf-launch[data-closing=true]{transition:none}}
html[data-motion=reduced] .sf-launch *,html[data-page-hidden=true] .sf-launch *{animation:none!important}
html[data-motion=reduced] .sf-launch[data-closing=true]{transition:none}
@media(forced-colors:active){.sf-launch{background:Canvas;color:CanvasText}.sf-launch-track span{background:Highlight}.sf-launch-halo{display:none}}
#sf-launch{z-index:10001}
