/* Loading state on buttons + refill menu */
/* ---------- Loading state (simulated server latency) ---------- */
.bigbtn.loading{color:transparent!important;position:relative;opacity:1!important}
.bigbtn.loading::after{
  content:"";position:absolute;inset:0;margin:auto;width:18px;height:18px;border-radius:50%;
  border:3px solid rgba(5,8,10,.25);border-top-color:#05080a;animation:spin .6s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
.tile.pending{animation:pending .44s ease-in-out infinite}

/* ---------- Refill menu ---------- */
.walletwrap{position:relative}
.refill-menu{
  position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);width:240px;background:var(--panel);
  border-radius:8px;padding:12px;box-shadow:0 8px 24px rgba(0,0,0,.45);z-index:30;display:flex;flex-direction:column;gap:10px;
}
.refill-menu .rm-title{color:var(--muted);font-weight:600;font-size:13px}
.rm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.rm-grid button{background:var(--tile);padding:10px 4px;border-radius:4px;font-weight:700;font-variant-numeric:tabular-nums;transition:background .15s}
.rm-grid button:hover:not(:disabled){background:var(--tile-hover)}
.rm-grid button:disabled{opacity:.35}
.rm-left{font-size:12px;font-weight:600;color:var(--text);background:var(--bg-dark);padding:8px 10px;border-radius:4px;line-height:1.5}
.rm-left small{display:block;color:var(--muted);font-weight:500}
.rm-promo{display:flex;gap:6px}
.rm-promo input{flex:1;min-width:0;background:var(--bg-dark);border:1px solid var(--tile);color:var(--text);padding:8px 10px;border-radius:4px;font:inherit;font-size:13px;text-transform:uppercase}
.rm-promo input:focus{outline:none;border-color:var(--tile-hover)}
.rm-promo button{background:var(--tile);padding:8px 12px;border-radius:4px;font-weight:700;font-size:13px}
.rm-promo button:hover:not(:disabled){background:var(--tile-hover)}
