.sstep{position:fixed;right:20px;bottom:24px;z-index:70;width:54px;height:54px;padding:0;border:0;border-radius:50%;cursor:pointer;
  display:grid;place-items:center;color:var(--navy-800);
  background:rgba(255,255,255,.74);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);
  box-shadow:inset 0 0 0 1px rgba(17,43,74,.10),inset 0 1px 0 rgba(255,255,255,.9),0 14px 30px -14px rgba(17,43,74,.5);
  opacity:0;transform:translateY(14px) scale(.88);pointer-events:none;
  transition:opacity .35s ease,transform .35s cubic-bezier(.2,.8,.25,1),box-shadow .25s ease}
.sstep.is-on{opacity:1;transform:none;pointer-events:auto}
.sstep:hover{box-shadow:inset 0 0 0 1px rgba(17,43,74,.14),inset 0 1px 0 rgba(255,255,255,.9),0 18px 36px -14px rgba(0,105,180,.55)}
.sstep:focus-visible{outline:3px solid var(--blue-lt);outline-offset:3px}
.sstep-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none}
.sstep-ring circle{fill:none;stroke-width:3}
.sstep-track{stroke:rgba(17,43,74,.10)}
.sstep-fill{stroke:#0a86d6;stroke-linecap:round;transition:stroke-dashoffset .15s linear}
.sstep-arrow{position:relative;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;
  transition:transform .3s cubic-bezier(.2,.8,.25,1)}
.sstep-arrow2{opacity:.35;transition:opacity .3s ease}
.sstep:hover .sstep-arrow{transform:translateY(-2px)}
.sstep:hover .sstep-arrow2{opacity:.8}
.sstep.is-tap .sstep-arrow{animation:sstep-up .45s cubic-bezier(.2,.8,.25,1)}
@keyframes sstep-up{0%{transform:translateY(0)}40%{transform:translateY(-6px)}100%{transform:translateY(0)}}
.sstep-tip{position:absolute;right:calc(100% + 10px);top:50%;translate:0 -50%;white-space:nowrap;padding:6px 12px;border-radius:999px;
  font-size:13px;font-weight:700;color:#fff;background:var(--navy-800);box-shadow:0 8px 18px -10px rgba(17,43,74,.6);
  opacity:0;transform:translateX(6px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.sstep:hover .sstep-tip,.sstep:focus-visible .sstep-tip{opacity:1;transform:none}
:root[data-theme="dark"] .sstep{color:#ece9e1;background:rgba(38,38,36,.78);
  box-shadow:inset 0 0 0 1px rgba(222,220,209,.12),inset 0 1px 0 rgba(250,249,245,.07),0 14px 30px -14px rgba(0,0,0,.75)}
:root[data-theme="dark"] .sstep:hover{box-shadow:inset 0 0 0 1px rgba(222,220,209,.16),inset 0 1px 0 rgba(250,249,245,.08),0 18px 36px -14px rgba(217,119,87,.5)}
:root[data-theme="dark"] .sstep-track{stroke:rgba(250,249,245,.10)}
:root[data-theme="dark"] .sstep-fill{stroke:#d97757}
:root[data-theme="dark"] .sstep-tip{background:#ece9e1;color:#1f1e1d}
@media (max-width:560px){.sstep{right:12px;bottom:16px;width:48px;height:48px}.sstep-tip{display:none}}
@media (max-width:860px){.is-reading .sstep.is-on{opacity:0;transform:translateY(14px) scale(.88);pointer-events:none}}
@media (prefers-reduced-motion:reduce){.sstep,.sstep-arrow,.sstep-fill{transition:none}.sstep.is-tap .sstep-arrow{animation:none}}
@media print{.sstep{display:none}}
