/* Bonus Pay — Gold reward channel */
body.gw-bonus-pay {
  background: linear-gradient(165deg, #fffbeb 0%, #fef3c7 35%, #fff7ed 100%);
  color: #78350f;
  min-height: 100dvh;
}

.gw-bonus-pay .container {
  max-width: 430px;
  margin: 0 auto;
  min-height: 100dvh;
  padding: calc(14px + env(safe-area-inset-top, 0)) 14px calc(18px + env(safe-area-inset-bottom, 0));
}

.gw-bonus-pay .header {
  background: linear-gradient(135deg, #fff 0%, #fffbeb 100%);
  border-radius: 22px;
  padding: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 10px 30px rgba(180, 83, 9, 0.12);
  border: 1px solid #fde68a;
}

.gw-bonus-pay .left h1 {
  font-size: 2rem;
  font-weight: 800;
  background: linear-gradient(135deg, #b45309, #d97706);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gw-bonus-pay .left p {
  margin-top: 4px;
  color: #92400e;
  font-size: 0.88rem;
  font-weight: 600;
}

.gw-bonus-pay .timer {
  background: linear-gradient(135deg, #fef3c7, #fde68a);
  color: #b45309;
  padding: 12px 14px;
  border-radius: 14px;
  font-size: 1.15rem;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  border: 1px solid #fcd34d;
}

.gw-bonus-pay .main-card {
  background: #fff;
  border-radius: 26px;
  margin-top: 14px;
  padding: 22px;
  box-shadow: 0 14px 36px rgba(180, 83, 9, 0.1);
  border: 1px solid #fde68a;
  position: relative;
  overflow: hidden;
}

.gw-bonus-pay .main-card::before {
  content: "BONUS CHANNEL";
  position: absolute;
  top: 12px;
  right: -28px;
  transform: rotate(45deg);
  background: linear-gradient(135deg, #f59e0b, #d97706);
  color: #fff;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  padding: 4px 32px;
}

.gw-bonus-pay .gw-step {
  background: #fffbeb;
  border-color: #fde68a;
  color: #92400e;
}

.gw-bonus-pay .badge {
  background: linear-gradient(135deg, #fef3c7, #fde68a);
  color: #b45309;
  width: max-content;
  padding: 8px 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
}

.gw-bonus-pay .qr-area {
  margin-top: 18px;
  text-align: center;
}

.gw-bonus-pay .qr-frame {
  background: linear-gradient(180deg, #fffbeb, #fff);
  border: 2px dashed #fbbf24;
  border-radius: 22px;
  padding: 16px;
  display: inline-block;
}

.gw-bonus-pay .qr-frame img {
  width: min(210px, 60vw);
}

.gw-bonus-pay .scan-text {
  margin-top: 12px;
  color: #b45309;
  font-weight: 700;
  font-size: 0.95rem;
}

.gw-bonus-pay .upi-box {
  margin-top: 18px;
  background: #fffbeb;
  border-radius: 18px;
  padding: 16px;
  border: 1px solid #fde68a;
}

.gw-bonus-pay .upi-box small {
  color: #92400e;
  font-weight: 600;
}

.gw-bonus-pay .upi-id {
  margin-top: 8px;
  font-size: 1.1rem;
  font-weight: 800;
  word-break: break-all;
  color: #78350f;
}

.gw-bonus-pay .actions {
  margin-top: 16px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.gw-bonus-pay .btn {
  height: 50px;
  border: none;
  border-radius: 14px;
  font-weight: 700;
  cursor: pointer;
}

.gw-bonus-pay .save-btn {
  background: #fef3c7;
  color: #b45309;
  border: 1px solid #fcd34d;
}

.gw-bonus-pay .copy-btn {
  background: linear-gradient(135deg, #d97706, #f59e0b);
  color: #fff;
  box-shadow: 0 8px 20px rgba(217, 119, 6, 0.3);
}

.gw-bonus-pay .utr-section {
  margin-top: 22px;
}

.gw-bonus-pay .utr-section h3 {
  font-size: 1.25rem;
  font-weight: 800;
  color: #b45309;
}

.gw-bonus-pay .utr-section p {
  margin-top: 6px;
  color: #92400e;
  font-size: 0.88rem;
  line-height: 1.5;
}

.gw-bonus-pay .utr-input {
  width: 100%;
  height: 52px;
  margin-top: 12px;
  border-radius: 14px;
  border: 1px solid #fcd34d;
  padding: 0 14px;
  font-size: 16px;
  outline: none;
  background: #fff;
}

.gw-bonus-pay .submit-btn {
  width: 100%;
  height: 54px;
  border: none;
  border-radius: 14px;
  margin-top: 14px;
  background: linear-gradient(135deg, #d97706, #f59e0b);
  color: #fff;
  font-size: 1.05rem;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(217, 119, 6, 0.28);
}

.gw-bonus-pay .info {
  margin-top: 18px;
  background: #fffbeb;
  border-radius: 16px;
  padding: 16px;
  line-height: 1.65;
  color: #92400e;
  font-size: 0.85rem;
  border: 1px solid #fde68a;
}

.gw-bonus-pay .wait-screen,
.gw-bonus-pay .success-screen,
.gw-bonus-pay .error-screen {
  display: none;
}

.gw-bonus-pay .wait-card {
  margin-top: 60px;
  background: #fff;
  border-radius: 26px;
  padding: 42px 22px;
  text-align: center;
  box-shadow: 0 14px 36px rgba(180, 83, 9, 0.12);
  border: 1px solid #fde68a;
}

.gw-bonus-pay .loader {
  width: 72px;
  height: 72px;
  border: 4px solid #fef3c7;
  border-top-color: #d97706;
  border-radius: 50%;
  margin: 0 auto 18px;
  animation: gw-spin 0.9s linear infinite;
}

.gw-bonus-pay .wait-card h2 {
  font-size: 1.75rem;
  font-weight: 800;
  color: #b45309;
}

.gw-bonus-pay .success-card {
  margin-top: 50px;
  background: #fff;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: 0 14px 36px rgba(180, 83, 9, 0.12);
  border: 1px solid #fde68a;
}

.gw-bonus-pay .success-top {
  background: linear-gradient(135deg, #d97706, #f59e0b);
  padding: 40px 22px;
  color: #fff;
  text-align: center;
}

.gw-bonus-pay .error-top {
  background: linear-gradient(135deg, #dc2626, #ef4444);
  padding: 40px 22px;
  color: #fff;
  text-align: center;
}

.gw-bonus-pay .check,
.gw-bonus-pay .error-check {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
  font-size: 2.4rem;
  font-weight: 800;
}

.gw-bonus-pay .check {
  color: #d97706;
}

.gw-bonus-pay .error-check {
  color: #dc2626;
}

.gw-bonus-pay .success-body {
  padding: 22px;
  text-align: center;
}

.gw-bonus-pay .return-btn,
.gw-bonus-pay .retry-btn {
  display: block;
  width: 100%;
  background: linear-gradient(135deg, #d97706, #f59e0b);
  color: #fff;
  text-decoration: none;
  padding: 15px;
  border-radius: 14px;
  margin-top: 18px;
  font-weight: 800;
  border: none;
  cursor: pointer;
  text-align: center;
}

.gw-bonus-pay .retry-btn {
  background: #78350f;
}

.gw-bonus-pay .redirect {
  margin-top: 12px;
  color: #92400e;
  font-size: 0.88rem;
}
