.zap{--size:152px;--gold-a:var(--zw-gold-200,#ffd978);--gold-b:var(--zw-gold-400,#f2b53f);--gold-c:var(--zw-gold-700,#99661e);--neon-hi:var(--zw-neon-100,#c2ffdc);--neon-a:var(--zw-neon-300,#5cffa8);--neon-b:var(--zw-neon-500,#00e676);--neon-c:var(--zw-neon-600,#00b85e);--neon-side:var(--zw-neon-800,#005c2f);--ink:var(--zw-on-accent,#0b0e14);--depth:7px;width:var(--size);height:var(--size);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:50%;outline:none;flex:none;padding:0;position:relative}.zap__pulse{border:2px solid var(--gold-a);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:0}.zap[data-urgency=warn] .zap__pulse{animation:zap-pulse 1.8s var(--zw-ease-out,ease-out) infinite}.zap[data-urgency=warn] .zap__pulse:nth-child(2){animation-delay:.6s}.zap[data-urgency=warn] .zap__pulse:nth-child(3){animation-delay:1.2s}.zap[data-urgency=critical] .zap__pulse{animation:zap-pulse 1s var(--zw-ease-out,ease-out) infinite;border-color:var(--neon-a)}.zap[data-urgency=critical] .zap__pulse:nth-child(2){animation-delay:.33s}.zap[data-urgency=critical] .zap__pulse:nth-child(3){animation-delay:.66s}@keyframes zap-pulse{0%{opacity:.75;transform:scale(.94)}to{opacity:0;transform:scale(1.6)}}.zap__ring{background:conic-gradient(from 200deg, var(--gold-a), var(--gold-b), var(--gold-c), var(--gold-b), var(--gold-a));opacity:.5;border-radius:50%;transition:opacity .3s,box-shadow .3s;position:absolute;inset:0;box-shadow:0 14px 30px -12px #000000e6}.zap[data-urgency=warn] .zap__ring,.zap[data-urgency=critical] .zap__ring{opacity:1;box-shadow:0 0 0 1px #ffd97880,0 0 26px #f2b53f8c,0 14px 30px -12px #000000e6}.zap[data-urgency=critical] .zap__ring{animation:1s ease-in-out infinite zap-ring-flash}@keyframes zap-ring-flash{50%{filter:brightness(1.35)}}.zap__well{inset:calc(var(--size) * .035);background:radial-gradient(circle at 50% 35%,#1a1f2b 0%,#05070a 70%);border-radius:50%;position:absolute;box-shadow:inset 0 4px 10px #000000f2,inset 0 -1px #ffffff0f}.zap__cap{inset:calc(var(--size) * .085);justify-content:center;align-items:center;gap:calc(var(--size) * .012);color:var(--ink);background:radial-gradient(circle at 34% 26%, var(--neon-hi) 0%, var(--neon-a) 20%, var(--neon-b) 55%, var(--neon-c) 100%);box-shadow:0 var(--depth) 0 var(--neon-side), 0 var(--depth) 18px #00e67673, inset 0 3px 2px #ffffff8c, inset 0 -6px 12px #005c2f8c;transform:translateY(calc(var(--depth) * -1));border-radius:50%;flex-direction:column;transition:transform 90ms ease-out,box-shadow 90ms ease-out,filter .2s;display:flex;position:absolute}.zap[data-state=ready] .zap__cap{animation:2.4s ease-in-out infinite zap-breathe}@keyframes zap-breathe{50%{box-shadow:0 var(--depth) 0 var(--neon-side), 0 var(--depth) 30px #00e676b3, inset 0 3px 2px #ffffff8c, inset 0 -6px 12px #005c2f8c}}.zap[data-pressed] .zap__cap,.zap:not(:disabled):active .zap__cap{box-shadow:0 1px 0 var(--neon-side), 0 0 10px #00e67659, inset 0 3px 6px #003c1e59, inset 0 -2px 6px #005c2f66;filter:brightness(.96);animation:none;transform:translateY(-1px)scale(.985)}.zap__icon{width:calc(var(--size) * .2);height:calc(var(--size) * .2);display:block}.zap__label{font:800 calc(var(--size) * .108) / 1 var(--zw-font-display,"Unbounded", system-ui, sans-serif);letter-spacing:.01em}.zap__stake{font:800 calc(var(--size) * .086) / 1 var(--zw-font-mono,"JetBrains Mono", monospace);font-variant-numeric:tabular-nums;opacity:.72}.zap__spin{inset:calc(var(--size) * .045);border:3px solid #0000;border-top-color:var(--neon-a);pointer-events:none;border-right-color:#5cffa859;border-radius:50%;display:none;position:absolute}.zap[data-state=processing]{cursor:progress}.zap[data-state=processing] .zap__spin{animation:.8s linear infinite zap-spin;display:block}.zap[data-state=processing] .zap__cap{animation:none;transform:translateY(-2px)}@keyframes zap-spin{to{transform:rotate(360deg)}}.zap[data-state=success] .zap__cap{animation:zap-success .7s var(--zw-ease-spring,ease-out) both;background:radial-gradient(circle at 34% 26%, #fff3cc 0%, var(--gold-a) 25%, var(--gold-b) 60%, var(--zw-gold-600,#c4862a) 100%);box-shadow:0 var(--depth) 0 var(--zw-gold-800,#6b4613), 0 0 34px #f2b53fb3, inset 0 3px 2px #fff9, inset 0 -6px 12px #6b461373}.zap[data-state=success] .zap__ring{opacity:1}@keyframes zap-success{0%{transform:translateY(-1px)scale(.97)}55%{transform:translateY(calc(var(--depth) * -1)) scale(1.05)}to{transform:translateY(calc(var(--depth) * -1)) scale(1)}}.zap[data-state=insufficient] .zap__cap{color:var(--zw-gold-200,#ffd978);box-shadow:0 var(--depth) 0 #0b0e14, 0 0 0 2px #f2b53f8c inset, inset 0 3px 2px #ffffff1a;background:radial-gradient(circle at 34% 26%,#2a3142 0%,#1f2533 55%,#151a24 100%);animation:none}.zap[data-state=insufficient] .zap__ring{opacity:.8}.zap[data-state=insufficient] .zap__label{font-size:calc(var(--size) * .088)}.zap[data-state=insufficient] .zap__stake{font-family:var(--zw-font-sans,"Manrope", sans-serif);font-weight:700;font-size:calc(var(--size) * .07);opacity:.85}.zap[data-state=insufficient][data-pressed] .zap__cap,.zap[data-state=insufficient]:active .zap__cap{transform:translateY(-1px)scale(.985);box-shadow:0 1px #0b0e14,inset 0 0 0 2px #f2b53f8c}.zap[data-state=locked]{cursor:not-allowed}.zap[data-state=locked] .zap__ring{opacity:.2;filter:grayscale()}.zap[data-state=locked] .zap__cap{color:var(--zw-text-2,#a3acbd);background:radial-gradient(circle at 34% 26%,#3a4254 0%,#262d3d 55%,#1a1f2b 100%);transform:translateY(-2px);box-shadow:0 2px #0b0e14,inset 0 2px 2px #ffffff1f}.zap[data-state=locked] .zap__stake{font-family:var(--zw-font-sans,"Manrope", sans-serif);font-weight:700;font-size:calc(var(--size) * .075)}.zap[data-state=cooldown]{cursor:not-allowed}.zap[data-state=cooldown] .zap__ring{opacity:.35;filter:grayscale(.6)}.zap[data-state=cooldown] .zap__cap{color:var(--zw-text-2,#a3acbd);background:radial-gradient(circle at 34% 26%,#343c4e 0%,#232a3a 55%,#171c27 100%);animation:none;transform:translateY(-2px);box-shadow:0 2px #0b0e14,inset 0 2px 2px #ffffff1a}.zap[data-state=cooldown] .zap__stake{font-size:calc(var(--size) * .1);opacity:1;color:var(--zw-text,#f4f6fa)}.zap:focus-visible .zap__ring{outline:3px solid var(--zw-neon-300,#5cffa8);outline-offset:4px}@media (prefers-reduced-motion:reduce){.zap__pulse{display:none}.zap .zap__cap,.zap .zap__ring{animation:none!important}.zap[data-state=processing] .zap__spin{animation-duration:3s}.zap[data-state=success] .zap__cap{animation:none!important}}
