.gm-en-topup {
  appearance: none;
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 56px;
  padding: 10px 16px;
  overflow: hidden;
  border: 0;
  border-radius: 24px;
  background: linear-gradient(90deg,#8f4e1a 0%,#9a531b 68%,#c58d43 100%);
  color: #fff;
  font: inherit;
  text-align: left;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  transition: transform 160ms ease-out;
}
.gm-en-topup::before { content: ""; position: absolute; z-index: 0; inset: 0; background: linear-gradient(180deg,#ffffff1a,transparent); pointer-events: none; }
.gm-en-topup::after { content: ""; position: absolute; z-index: 0; inset: 0 0 auto; height: 1px; background: linear-gradient(90deg,transparent,#ffd68c80,transparent); pointer-events: none; }
.gm-en-topup-halo { display: none; position: absolute; z-index: 0; left: -16px; top: 50%; width: 80px; height: 80px; transform: translateY(-50%); border-radius: 50%; opacity: .6; filter: blur(24px); background: radial-gradient(circle,#fbbf2473 0%,transparent 70%); pointer-events: none; }
.gm-en-topup-icon { position: relative; z-index: 1; display: block; width: 36px; height: 36px; flex: 0 0 36px; object-fit: contain; filter: drop-shadow(0 2px 6px #fbbf2466); }
.gm-en-topup-copy { position: relative; z-index: 1; flex: 1 1 auto; min-width: 0; }
.gm-en-topup-title { display: block; font-size: 14px; font-weight: 700; line-height: 20px; color: #fff; }
.gm-en-topup-description { display: block; font-size: 12px; font-weight: 400; line-height: 16px; color: #fffaf2; }
.gm-en-topup-plus { position: relative; z-index: 1; display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 28px; border: 1px solid #ffd68c4d; border-radius: 50%; background: #ffc65e22; color: #fff; }
.gm-en-topup-plus svg { width: 16px; height: 16px; }
.gm-en-topup:hover::before { background: linear-gradient(180deg,#ffffff1a,transparent); }
.gm-en-topup:hover .gm-en-topup-plus { background: #ffc65e33; }
.gm-en-topup:active { transform: scale(.98); }
.gm-en-topup:focus-visible { outline: 2px solid #fff0c3; outline-offset: 3px; }
@media(prefers-reduced-motion:reduce) { .gm-en-topup { transition: none; } }
