.topup-bonus-equation { display:grid; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); align-items:center; gap:14px; color:#f5f7ef; font-variant-numeric:tabular-nums; }
.topup-bonus-equation > span { display:grid; gap:5px; min-width:0; }
.topup-bonus-equation strong { display:block; font-size:36px; line-height:1.1; letter-spacing:0; }
.topup-bonus-equation small { font-size:13px; color:#aab0a2; }
.topup-bonus-equation > svg { width:22px; height:22px; color:#89917f; }
.topup-bonus-equation .is-gift { padding:12px 16px; background:#c7ff3d12; border:1px solid #c7ff3d55; border-radius:8px; }
.topup-bonus-equation .is-gift strong,.topup-bonus-equation .is-gift small { color:#c7ff3d; }
.double-topup-presets,.billing-dialog .topup-builder > .topup-double-presets { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.double-topup-presets button,.billing-dialog .topup-double-presets button { position:relative; display:grid; align-content:center; gap:7px; min-width:0; min-height:112px; height:auto; padding:13px; border:1px solid #41463a; border-radius:8px; background:#1b1e18; color:#f0f3eb; text-align:left; cursor:pointer; transition:background .2s,border-color .2s,transform .2s; }
.double-topup-presets button>span,.billing-dialog .topup-double-presets button>span { display:flex; justify-content:space-between; gap:8px; color:#8f9887; font-size:10px; font-weight:700; text-transform:uppercase; }
.double-topup-presets button>span b,.billing-dialog .topup-double-presets button>span b { color:inherit; font-size:12px; }
.double-topup-presets strong,.billing-dialog .topup-double-presets strong { font-size:17px; font-style:normal; line-height:1.3; }
.double-topup-presets small,.billing-dialog .topup-double-presets small { display:flex; align-items:baseline; gap:8px; font-size:14px; color:#b6bead; }
.double-topup-presets small del,.billing-dialog .topup-double-presets small del { color:#747b6e; font-size:11px; }
.double-topup-presets small b,.billing-dialog .topup-double-presets small b { color:#f4f7ef; font-size:16px; }
.double-topup-presets small del,.double-topup-presets small b,.billing-dialog .topup-double-presets small del,.billing-dialog .topup-double-presets small b { white-space:nowrap; }
.double-topup-presets em,.billing-dialog .topup-double-presets em { display:block; color:#c7ff3d; font-size:11px; font-style:normal; }
.double-topup-presets button[aria-pressed="true"],.billing-dialog .topup-double-presets button.is-selected { border-color:#c7ff3d; background:#c7ff3d12; box-shadow:inset 0 0 0 1px #c7ff3d40; }
.double-topup-presets button:hover,.billing-dialog .topup-double-presets button:hover { border-color:#c7ff3d; transform:translateY(-2px); }
.billing-dialog .topup-double-presets button:disabled { opacity:.4; cursor:not-allowed; }
.double-topup-presets button:focus-visible,.billing-dialog button:focus-visible,.topup-success-dialog button:focus-visible { outline:2px solid #c7ff3d; outline-offset:3px; }
.balance-calculator .topup-bonus-equation { margin:20px 0; }
.balance-calculator .topup-bonus-equation { color:#171d12; }
.balance-calculator .topup-bonus-equation small { color:#526044; }
.balance-calculator .topup-bonus-equation .is-gift { background:#c7ff3d; border-color:#a6d52f; }
.balance-calculator .topup-bonus-equation .is-gift strong,.balance-calculator .topup-bonus-equation .is-gift small { color:#1c260c; }
.balance-calculator .double-topup-presets button[aria-pressed="true"] { background:#c7ff3d; color:#17210a; border-color:#a6d52f; }
.balance-calculator .double-topup-presets button[aria-pressed="true"] small { color:#324318; }
.balance-calculator .double-topup-presets button { background:#20241c; }
.balance-calculator .double-topup-presets button[aria-pressed="true"] em,.balance-calculator .double-topup-presets button[aria-pressed="true"] small b,.balance-calculator .double-topup-presets button[aria-pressed="true"]>span { color:#17210a; }
.balance-calculator .balance-quantity { font-size:18px; }
.balance-calculator .balance-quantity > span:first-child { font-size:38px; }
.balance-calculator .balance-custom summary { cursor:pointer; color:#435039; font-size:14px; padding:12px 0; }
.balance-calculator .balance-custom > label { margin-top:8px; }
.balance-calculator .balance-conditions { font-size:12px; line-height:1.65; }
.balance-calculator .balance-offer-label { gap:10px; flex-wrap:wrap; }
.billing-dialog > .topup-bonus-equation { margin:20px 24px 0; grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) minmax(0,1fr); }
.billing-dialog .topup-equation-total { border-left:1px solid #383e30; padding-left:16px; }
.billing-dialog .topup-equation-total strong { font-size:20px; }
.billing-dialog .topup-builder { grid-template-columns:1fr; padding:20px 24px; gap:14px; }
.billing-dialog .topup-package-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.billing-dialog .topup-package-heading>span { display:grid; gap:3px; }
.billing-dialog .topup-package-heading small { color:#8f9787; font-size:11px; text-transform:uppercase; }
.billing-dialog .topup-package-heading strong { font-size:17px; }
.billing-dialog .topup-package-heading del { color:#747b6e; font-weight:600; }
.billing-dialog .topup-package-heading>b { padding:7px 9px; border:1px solid #c7ff3d55; border-radius:5px; background:#c7ff3d12; color:#c7ff3d; font-size:11px; }
.billing-dialog .topup-builder > label { grid-row:auto; gap:8px; font-size:13px; }
.billing-dialog .topup-builder > small { grid-column:1; font-size:12px; }
.billing-dialog .topup-amount-control { display:flex; align-items:center; min-width:0; gap:8px; }
.billing-dialog .topup-amount-control input { min-width:0; width:112px; flex:0 1 112px; font-size:24px; }
.billing-dialog .topup-amount-control > b { font-size:13px; line-height:1.4; color:#adb79d; white-space:normal; }
.billing-dialog .revision-price-note { margin-inline:24px; }
.billing-dialog .revision-price-note strong { font-size:15px; }
.billing-dialog .revision-price-note small { font-size:12px; line-height:1.6; }
.billing-dialog .payment-methods { padding-inline:24px; }
.billing-dialog .payment-option strong { font-size:14px; }
.billing-dialog .payment-option small,.billing-dialog .payment-methods > span { font-size:12px; }
.billing-dialog .payment-submit { width:calc(100% - 48px); margin-inline:24px; font-size:16px; }
.billing-dialog .payment-submit > strong { font-size:23px; white-space:nowrap; }
.billing-dialog .payment-submit > strong { display:grid; justify-items:end; line-height:1.05; }
.billing-dialog .payment-submit > strong del { color:#4b5a32; font-size:11px; }
.billing-dialog .payment-submit > strong b { font-size:23px; }
.billing-dialog .payment-submit > span b { font:inherit; }
.billing-dialog .payment-submit:disabled { box-shadow:none; transform:none; opacity:.5; }
.billing-dialog .secure-caption { font-size:11px; line-height:1.5; }
.billing-checkout-footer { position:sticky; bottom:0; z-index:3; background:#141512; border-top:1px solid #373d2e; padding-top:12px; }
.launch-offer-band strong { font-size:22px; }
.launch-offer-band small { font-size:12px; }
.launch-offer-band b { font-size:12px; opacity:.8; text-decoration:none; }
.topup-success-dialog { position:fixed; width:min(460px,calc(100% - 24px)); max-height:calc(100dvh - 24px); overflow:auto; margin:auto; padding:30px; border:1px solid #4e6031; border-radius:8px; background:#151812; color:#f5f7ef; text-align:center; }
.topup-success-dialog::backdrop { background:#000b; backdrop-filter:blur(6px); }
.topup-success-dialog > button { position:absolute; top:12px; right:12px; display:grid; place-items:center; width:40px; height:40px; border:1px solid #3e4734; border-radius:8px; background:#20261a; color:#fff; cursor:pointer; }
.topup-success-dialog > img { width:96px; height:96px; object-fit:contain; }
.topup-success-dialog > small { display:block; margin:12px 0; color:#c7ff3d; font-size:13px; }
.topup-success-dialog h2 { margin:0 0 24px; font-size:27px; line-height:1.15; }
.topup-success-dialog p { margin:24px 0 0; font-size:15px; line-height:1.6; color:#b9c3ae; }
.topup-success-dialog[open] .is-gift { animation:topup-gift-arrive .65s .3s both; }
.topup-success-dialog[open] > img { animation:topup-coin-arrive .8s ease-out both; }
@keyframes topup-gift-arrive { from { opacity:0; transform:translateX(-18px) scale(.85); } to { opacity:1; transform:none; } }
@keyframes topup-coin-arrive { from { opacity:0; transform:perspective(400px) rotateY(-100deg) scale(.7); } to { opacity:1; transform:perspective(400px) rotateY(0deg) scale(1); } }
@media(max-width:600px) {
  .billing-dialog > .topup-bonus-equation { margin:16px; grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr); gap:10px; }
  .billing-dialog .topup-equation-total { grid-column:1/-1; border-left:0; border-top:1px solid #383e30; padding:12px 0 0; display:flex; align-items:center; justify-content:space-between; }
  .billing-dialog .topup-builder { padding:16px; }
  .billing-dialog .topup-package-heading { align-items:flex-end; }
  .billing-dialog .revision-price-note,.billing-dialog .payment-submit { margin-inline:16px; }
  .billing-dialog .payment-methods { padding-inline:16px; }
  .billing-dialog .payment-submit { width:calc(100% - 32px); padding:12px; gap:10px; min-height:60px; }
  .billing-dialog .payment-submit > span { font-size:12px; white-space:nowrap; }
  .billing-dialog .payment-submit > span > svg { display:none; }
  .billing-dialog .payment-submit > strong b { font-size:19px; }
  .billing-dialog .payment-submit > strong del { font-size:9px; }
  .billing-dialog .payment-submit > span { min-width:0; }
  .billing-dialog .topup-double-presets strong,.double-topup-presets strong { font-size:15px; }
  .double-topup-presets button,.billing-dialog .topup-double-presets button { min-height:108px; padding:11px; }
  .double-topup-presets button>span,.billing-dialog .topup-double-presets button>span { display:grid; justify-content:start; }
  .topup-bonus-equation strong { font-size:29px; }
  .topup-bonus-equation .is-gift { padding:12px; }
  .topup-success-dialog { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .topup-success-dialog[open] .is-gift,.topup-success-dialog[open] > img { animation:none; } }
