.progress-wrapper{--progress-bg-color:#1e293b;--progress-fill-color-1:#6366f1;--progress-fill-color-2:#a78bfa;--progress-fill-color-3:#6366f1;--progress-fill-color-4:#a78bfa;--progress-text-color:white;--progress-title-color:#8b949e;--circle-bg-color:#1e293b;--circle-fill-color-1:#a78bfa;--circle-fill-color-2:#a78bfa;--circle-text-color:white;margin:16px 0;position:relative}.progress-wrapper.with-title .title{font-size:.96rem;font-weight:500;margin-bottom:6px;color:var(--progress-title-color)}.progress-wrapper .progress-bar{height:12px;background:#1e293b;border-radius:999px;overflow:hidden;position:relative}.progress-wrapper .progress-fill{height:100%;width:0%;transition:width 1.2s ease-out;background:linear-gradient(90deg,#6366f1,#a78bfa)}.progress-wrapper .progress-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:600;mix-blend-mode:difference;pointer-events:none}.progress-wrapper .rainbow .progress-fill{background:linear-gradient(90deg,var(--progress-fill-color-1),var(--progress-fill-color-2),var(--progress-fill-color-3),var(--progress-fill-color-4),#22d3ee,#c084fc);background-size:300% 100%;animation:rainbow 6s linear infinite}@keyframes rainbow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.progress-wrapper .striped .progress-fill{background:linear-gradient(45deg,rgb(255 255 255 / .18) 25%,transparent 25%,transparent 50%,rgb(255 255 255 / .18) 50%,rgb(255 255 255 / .18) 75%,transparent 75%,transparent);background-size:24px 24px;animation:stripe-move 1.8s linear infinite}@keyframes stripe-move{to{background-position:-24px 0}}.progress-wrapper .thin .progress-bar{height:6px}.progress-wrapper .thick .progress-bar{height:24px;font-size:1.1rem}.progress-wrapper .glass .progress-bar{background:rgb(30 41 59 / .6);backdrop-filter:blur(4px);border:1px solid rgb(255 255 255 / .08)}.progress-wrapper .neon .progress-fill{background:#00f0ff;box-shadow:0 0 16px rgb(0 240 255 / .5333333333),0 0 32px rgb(0 240 255 / .2666666667)}.progress-wrapper .segmented .progress-bar{background:repeating-linear-gradient(90deg,#1e293b 0,#1e293b 12px,#334155 12px,#334155 24px)}.progress-wrapper .candy .progress-fill{background:repeating-linear-gradient(45deg,#ec4899,#ec4899 10px,#f472b6 10px,#f472b6 20px)}.progress-wrapper .metallic .progress-fill{background:linear-gradient(90deg,#d1d5db,#f3f4f6,#d1d5db);background-size:200% 100%;animation:shine 3s linear infinite}@keyframes shine{to{background-position:-200% 0}}.progress-wrapper .fire .progress-fill{background:linear-gradient(90deg,var(--progress-fill-color-1),var(--progress-fill-color-2),var(--progress-fill-color-3));box-shadow:0 0 12px var(--progress-fill-color-1,#f97316) 88}.progress-wrapper .pulse .progress-fill{animation:pulse 2s infinite ease-in-out}@keyframes pulse{0%,100%{opacity:.85}50%{opacity:1}}.progress-wrapper .liquid .progress-fill{background:linear-gradient(90deg,#06b6d4,#7c3aed);position:relative;overflow:hidden}.progress-wrapper .liquid .progress-fill::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgb(255 255 255 / .3),transparent);animation:wave 4s linear infinite}@keyframes wave{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.progress-wrapper .number-only{height:2.8rem;font-size:2.2rem;font-weight:700;color:#c084fc}.progress-wrapper .circle-wrapper{width:120px;height:120px;margin:20px auto;position:relative}.progress-wrapper .circle-bg{width:100%;height:100%;border-radius:50%;background:conic-gradient(var(--circle-bg-color) 0deg 360deg);position:relative}.progress-wrapper .circle-fill{position:absolute;inset:8px;border-radius:50%;background:conic-gradient(var(--circle-fill-color-1) 0deg,var(--circle-fill-color-1) var(--progress,0%),transparent var(--progress,0%));transition:all 1.4s ease-out}.progress-wrapper .circle-text{position:absolute;inset:0;display:grid;place-items:center;font-size:1.8rem;font-weight:700;color:var(--bodyColor)}.progress-wrapper .percent-center .progress-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:.86rem;font-weight:600;color:#fff;mix-blend-mode:difference;pointer-events:none}.progress-wrapper .percent-slide .progress-label{position:absolute;left:0;top:50%;transform:translateY(-50%);font-size:.84rem;font-weight:700;color:#fff;padding:0 10px;transition:left 1.4s cubic-bezier(.16,1,.3,1);text-shadow:0 0 4px rgb(0 0 0 / .7)}.progress-wrapper .percent-slide .progress-fill~.progress-label{left:calc(var(--progress, 0%) - 60px)}.progress-wrapper .percent-end{display:flex;align-items:center;gap:12px}.progress-wrapper .percent-end .progress-bar{flex:1}.progress-wrapper .percent-end .progress-label{font-weight:700;min-width:54px;text-align:right;color:#79c0ff}.progress-wrapper .percent-bg .progress-label{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:rgb(13 17 23 / .75);padding:2px 8px;border-radius:6px;font-size:.82rem;font-weight:600;color:#e6edf3;backdrop-filter:blur(4px)}.progress-wrapper .percent-float{padding-top:28px}.progress-wrapper .percent-float .progress-label{position:absolute;top:-6px;left:calc(var(--progress, 0%) - 28px);background:#388bfd;color:#fff;padding:4px 9px;border-radius:6px;font-size:.84rem;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px rgb(0 0 0 / .4);transition:left 1.4s cubic-bezier(.16,1,.3,1);pointer-events:none}.progress-wrapper .percent-float .progress-label::after{content:"";position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);border:6px solid #fff0;border-top-color:#388bfd}.progress-wrapper .percent-tooltip .progress-wrapper{position:relative}.progress-wrapper .percent-tooltip .progress-label{opacity:0;position:absolute;top:-38px;left:50%;transform:translateX(-50%);background:#1f6feb;color:#fff;padding:6px 12px;border-radius:6px;font-size:.9rem;font-weight:700;white-space:nowrap;pointer-events:none;transition:opacity 0.2s,top 0.2s;box-shadow:0 4px 12px rgb(0 0 0 / .5)}.progress-wrapper .percent-tooltip .progress-wrapper:hover .progress-label{opacity:1;top:-46px}.progress-wrapper .pulse-label .progress-label{animation:pulse-label 2s infinite}@keyframes pulse-label{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}